Pull to refresh
4
0
reki @reki

User

Send message

«Цифровое книгопечатание» или мой опыт в мобильной оцифровке книг

Reading time6 min
Views33K

Любите ли вы книги так, как люблю их я...


Детство и юность, проведенная в маленьком городе, где в районной библиотеке из энциклопедий был лишь "Большой энциклопедический словарь" приучила к бережному, практически благоговейному отношению к любой технической книге. Я понимаю, почему люди пережившие блокаду все время держали дома запас продуктов. Первое время, получив доступ к более или менее скоростному интернету все время хотелось скачивать новые книги и сохранять их на жестком диске, сохранять, сохранять :). Потом появился twirpx и я понял, что книги, как и знания, должны участвовать в постоянном круговороте, иначе они мертвы. Стоило один раз отсканировать монографию своего научного руководителя и услышать десятки отзывов скачавших, как лавину уже было не остановить. Я заметил, что сегодня поделившись редкой книгой, завтра я увижу две, а то и три не менее редких, которыми поделились другие.


image
Читать дальше →
Total votes 46: ↑45 and ↓1+44
Comments143

Манименеджмент для гика: откуда брать данные?

Reading time3 min
Views9.9K

image


Если вы всерьёз решили заняться учётом личных финансов, то одной из первых трудностей для вас, вероятно, будет сбор данных. В комментариях к предыдущей статье, где я неудачно пытался обосновать саму необходимость манименеджмента, отметились люди с высочайшим уровнем самодисциплины, для которых этот вопрос — не вопрос. Они дисциплинированно день за днём записывают свои траты в мобильный телефон на протяжении многих лет. Лично я за себя могу сказать, что мне никогда это не удавалось, и если быть честным с самим собой, вероятно, никогда не начнёт удаваться в будущем. Поэтому, этот путь явно не для меня.

Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments31

Подборка полезных материалов по Azure. Часть 1 — книги

Reading time3 min
Views8K
Привет, Хабр! Мы подготовили для вас подборку полезных материалов по нашей облачной платформе Azure, которая будет состоять из нескольких частей. В первой части мы собрали книги по нашему облаку и несколько обучающих видео. Кстати, все материалы бесплатны и доступны к скачиванию!



Вторая часть
Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments0

Перевод книги Эндрю Ына «Страсть к машинному обучению» Главы 15 — 19

Reading time11 min
Views11K

предыдущие главы


15. Одновременная оценка нескольких идей во время анализа ошибок


У вашей команды есть несколько идей, как улучшить определитель кошек в вашем приложении:


  • Решить проблему с тем, что ваш алгоритм относит собак к кошкам
  • Решить проблему с тем, что ваш алгоритм распознает больших диких кошек (львов, пантер, т. п.) как домашних
  • Улучшить работу системы на нечетких изображениях

Можно оценить все эти идеи одновременно. Обычно я создаю специальную таблицу и заполняю ее для примерно 100 случаев ошибочной классификации валидационной (dev) выборки. Так же я делаю краткие комментарии, которые могут помочь мне вспомнить конкретные примеры в последствие. Для иллюстрации этого процесса, давайте рассмотрим сводную таблицу, которую вы могли бы создать из небольшого набора примеров вашей валидационной (dev) выборки

Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments2

Теория счастья. Введение в мерфологию

Reading time12 min
Views33K
Продолжаю знакомить читателей Хабра с главами из своей книжки «Теория счастья» с подзаголовком «Математические основы законов подлости». Это ещё не изданная научно-популярная книжка, очень неформально рассказывающая о том, как математика позволяет с новой степенью осознанности взглянуть на мир и жизнь людей. Она для тех кому интересна наука и для тех, кому интересна жизнь. А поскольку жизнь наша сложна и, по большому счёту, непредсказуема, упор в книжке делается, в основном, на теорию вероятностей и математическую статистику. Здесь не доказываются теоремы и не даются основы науки, это ни в коем случае не учебник, а то, что называется recreational science. Но именно такой почти игровой подход позволяет развить интуицию, скрасить яркими примерами лекции для студентов и, наконец, объяснить нематематикам и нашим детям, что же такого интересного мы нашли в своей сухой науке.



Это, одна из первых глав, в которой на примере велосипедиста рассматриваются нужные нам инструменты для измерения несправедливости: кривая Лоренца и индекс Джини, а также упоминаются пресловутый Парето и грозный инспектор.

Читать дальше →
Total votes 37: ↑37 and ↓0+37
Comments44

Личный опыт: Data Engineering на Upwork

Reading time8 min
Views42K
Я много лет работал Data Engineer'ом и Data Scientist'ом, решал сложные бизнес-кейсы, строил большие системы, выводил это все в продакшен. В начале 2017го я бросил пить, курить и работать в офисе и ушел фрилансить, экспериментировать с альтернативными формами занятости. Довольно много времени я провел на Upwork. Судя по многочисленным комментариям, уважаемая аудитория не до конца представляет себе, что это такое. Вещаю.

Upwork это крупнейшая в мире биржа фриланса. Дата сатанисты и дата инженеры мало кому в этом мире нужны (по сравнению с переводчиками, веб-мастерами и переписывателями текстов), так что задач для нас относительно мало, так что они тяготеют к крупнейшей бирже в мире. Других фриланс-бирж с постоянным потоком задач для дата саентистов в мире нет — ни Guru, ни Toptal, ни отечественный fl.ru спросом похвастаться не могут. Что важно — для специалистов более массовых специальностей опыт фриланса может сильно отличаться.
Читать дальше →
Total votes 94: ↑89 and ↓5+84
Comments120

Запускаем LDA в реальном мире. Подробное руководство

Reading time12 min
Views35K

Предисловие


На просторах интернета имеется множество туториалов объясняющих принцип работы LDA(Latent Dirichlet Allocation — Латентное размещение Дирихле) и то, как применять его на практике. Примеры обучения LDA часто демонстрируются на "образцовых" датасетах, например "20 newsgroups dataset", который есть в sklearn.


Особенностью обучения на примере "образцовых" датасетов является то, что данные там всегда в порядке и удобно сложены в одном месте. При обучении продакшн моделей, на данных, полученных прямиком из реальных источников все обычно наоборот:


  • Много выбросов.
  • Неправильная разметка(если она есть).
  • Очень сильные дисбалансы классов и 'некрасивые' распределения каких-либо параметров датасета.
  • Для текстов, это: грамматические ошибки, огромное кол-во редких и уникальных слов, многоязычность.
  • Неудобный способ харнения данных(разные или редкие форматы, необходимость парсинга)

Исторически, я стараюсь учиться на примерах, максимально приближенных к реалиям продакшн-действительности потому, что именно таким образом можно наиболее полно прочувстовать проблемные места конкретного типа задач. Так было и с LDA и в этой статье я хочу поделиться своим опытом — как запускать LDA с нуля, на совершенно сырых данных. Некоторая часть статьи будет посвящена получению этих самых данных, для того, чтобы пример обрел вид полноценного 'инженерного кейса'.

Читать дальше →
Total votes 12: ↑11 and ↓1+10
Comments3

Как освоить иностранный язык без преподавателя. Часть 2. «Пошаговая стратегия»

Reading time12 min
Views69K

Languages are not taught, they are learnt!


Это статья для тех, кто хочет свободно разговаривать на иностранном языке. Неважно, начинаете вы с нуля или уже учите язык годами, но до сих пор испытываете сложности с восприятием беглой речи на слух или стресс при необходимости поговорить с носителем языка, здесь вы найдёте пошаговую стратегию освоения разговорного языка.


Примечание: Материалы статьи опираются на исследования Е.Д. Авериной, Д.Б. Никуличевой, Э.В. Гуннемарка и П.Нейшна, пропущенные через призму моего восприятия и опыт изучения 3 иностранных языков.

Читать дальше →
Total votes 46: ↑44 and ↓2+42
Comments65

Контейнеры для взрослых (Часть 01): Практический гид по терминологии

Reading time16 min
Views26K
Вы можете спросить, зачем разбираться с терминологией, если концепция контейнеров выглядит вполне простой и понятной? Однако, довольно часто неверное использование терминов создает препятствия на пути к освоению контейнеров. Например, люди часто считают, что термины «контейнеры» и «образы» взаимозаменяемы, хотя на самом деле между ними есть важные концептуальные различия. Другой пример: в мире контейнеров «репозиторий» означает вовсе не то, что вы думаете. Кроме того, контейнерные технологии – это гораздо больше, чем только docker.



Так что, не владея терминологией, будет сложно понять, чем docker отличается от CRI-O, rkt или lxc/lxd; либо оценить роль Open Container Initiative в деле стандартизации контейнерных технологий.
Читать дальше: Практический гид по контейнерной терминологии
Total votes 13: ↑11 and ↓2+9
Comments0

PlantUML — все, что нужно бизнес-аналитику для создания диаграмм в программной документации

Reading time11 min
Views91K

Введение


Я — системный аналитик, и моя работа заключается в том, чтобы проектировать автоматизированные информационные системы. Впрочем, нет, она заключается в том, чтобы писать и писать документы. Третий раз слово «писать» повторять не буду — все-таки, не «Илиада». Но занудность формы чем-то определенно роднит проектную документацию с древнегреческой поэмой, особенно если речь идет о работе с государственным заказчиком.


Диаграммы — глоток творчества в этом море текста. О диаграммах и пойдет речь в данной статье. Если точнее — о PlantUML — с моей точки зрения, наиболее адекватном инструменте их создания на текущий момент.

Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments51

Где и как изучать машинное обучение?

Reading time2 min
Views76K

Всем привет!


Ни для кого не секрет, что интерес к машинному обучению и искусственному интеллекту растет в лучшем случае по экспоненте. Тем временем мой Яндекс Диск превратился в огромную свалку пейперс, а закладки в Google Chrome превратились в список, длина которого стремится к бесконечности с каждым днем. Таким образом, дабы упростить жизнь себе и вам, решил структурировать информацию и дать множество ссылок на интересные ресурсы, которые изучал я и которые рекомендую изучать вам, если вы только вначале пути (буду пополнять список постоянно).

Путь для развития новичка я вижу примерно так:

Untitled_presentation
Читать дальше →
Total votes 47: ↑44 and ↓3+41
Comments19

Облысение: Теория и практика лечения, ч.1 «Дигидротестостерон мой, враг мой»

Reading time8 min
Views103K

Судя по одной из недавно опубликованных статей, тема облысения довольно таки интересна для местной публики, в связи с чем я решил написать пару постов о самом заболевании и методах его лечения (если быть точнее то не совсем лечения, т.к средства для перманентного решения проблемы на рынке еще нет, речь идет о остановке развития и возврате утраченных волос).


image

В первом посте будет описание самой болезни (как бы странно это не звучало, но большинство людей, даже столкнувшихся с АГА, не понимают природу болезни), то с чего она начинается, и собственно методы лечения основанные на блокировке ДГТ и андрогенных рецепторов, несмотря на то что подобные подход довольно сильно устарел за последние 10 лет, он все еще является более чем эффективным.
Читать дальше →
Total votes 47: ↑40 and ↓7+33
Comments63

Как научиться чему угодно?

Reading time3 min
Views8.8K

Предисловие


Буквально на днях на Medium вышла статья "How to Learn Anything: The Sonmez 10-Step System", и она мне понравилась, потому что это первое место, где собрали лучшие советы, касающиеся процесса обучения. Оригинальная статья, разумеется, на английском, однако я решил, что не буду делать полный её перевод, а выделю только самое главное, по моему мнению.


Введение


ИТ-сфера развивается семимильными шагами: каждый день появляются новые библиотеки, фреймворки, статьи, обучающие видео, доклады и пр., и вместе с этим растут требования к ИТ-специалистам. В общем, кто уже более менее имеет опыт, знает, что учиться необходимо постоянно, иначе останешься за бортом. Однако есть вопрос: "Как научиться учиться?"


Если вы человек, которого волнует данный вопрос, то прошу любить и жаловать систему Сонмеза.


Система Сонмеза — это специальная система обучения, предложенная в книге "Путь программиста", Джона Сонмеза, которая позволит изучать всё, что угодно, и главное делать эффективно.


Вся система состоит из 10 шагов, разделённых на две фазы: фаза 1 (1-6) и фаза 2 (7-10). И чтобы лучше понять, как она работает, стоит начать с конца.

Читать дальше →
Total votes 14: ↑6 and ↓8-2
Comments6

Ричард Хэмминг: Глава 1. Ориентация

Reading time18 min
Views24K
«Цель этого курса — подготовить вас к вашему техническому будущему.»

imageПривет, Хабр. Помните офигенную статью «Вы и ваша работа» (+219, 2265 в закладки, 353k прочтений)?

Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Давайте ее переведем, ведь мужик дело говорит.

Это книга не просто про ИТ, это книга про стиль мышления невероятно крутых людей. «Это не просто заряд положительного мышления; в ней описаны условия, которые увеличивают шансы сделать великую работу.»

Мы уже перевели 10 (из 30) глав.

Глава 1. Ориентация


(За перевод спасибо Savva Sumin, который откликнулся на мой призыв в «предыдущей главе».) Кто хочет помочь с переводом — пишите в личку или на почту magisterludi2016@yandex.ru

Цель этого курса — подготовить вас к вашему техническому будущему. В нём практически отсутствует техническое содержание, хотя я и буду часто ссылаться на него, в надежде, что такая структура курса станет для вас полезным повторением фундаментальных основ ваших дисциплин. Только не думайте, что техническое содержание и есть сам курс — это лишь иллюстрационный материал. Предметом курса является стиль мышления. Моя цель — обучать, а не тренировать вас.

Я буду рассматривать, критиковать и демонстрировать различные стили мышления. Для иллюстрации стилевых особенностей я буду использовать технические знания, знакомые большинству из вас, что, опять же, надеюсь, станет для вас полезным повторением основ. Вам следует рассматривать этот курс в качестве дополнения к уже изученным вами техническим курсам. Многим вещам, о которых я буду говорить, не нашлось места в стандартных курсах, однако я глубоко убеждён, что вам необходимо о них знать. Этот курс существует потому, что Отдел Электрической и Компьютерной Разработки Аспирантуры Университета Морской Пехоты осознаёт необходимость общего, широкого образования, наряду со специализированным, технологическим обучением, которого потребует ваше будущее.
Читать дальше →
Total votes 34: ↑34 and ↓0+34
Comments5

20+ ресурсов, чтобы начать фрилансить

Reading time3 min
Views655K
Чувствуете, что готовы уйти с работы, самостоятельно контролировать свой день, биться за клиента и работать только над интересными задачами? Пришло время попробовать себя во фрилансе. Это совсем нелегко, а чаще труднее, чем офисная рутина. Чтобы не разочароваться в выборе формата работы, устройте себе тест-драйв — на праздниках или в выходные. Собрали площадки, где найдете задачи по душе.


Читать дальше →
Total votes 24: ↑16 and ↓8+8
Comments17

Использование R для «промышленной» разработки

Reading time8 min
Views14K

Является продолжением предыдущих публикаций. Не секрет, что при упоминании R в числе используемых инструментов вторым по популярности является вопрос о возможности его применения в «промышленной разработке». Пальму первенства в России неизменно держит вопрос «А что такое R?»


Попробуем разобраться в аспектах и возможности применения R в «промышленной» разработке.


Читать дальше →
Total votes 18: ↑17 and ↓1+16
Comments33

Объясняем современный JavaScript динозавру

Reading time15 min
Views264K


Если вы не изучали JavaScript с самого начала, то осваивать его современную версию сложно. Экосистема быстро растёт и меняется, так что трудно разобраться с проблемами, для решения которых придуманы разные инструменты. Я начал программировать в 1998-м, но начал понимать JavaScript только в 2014-м. Помню, как просматривал Browserify и смотрел на его слоган:


Browserify позволяет делать require («модули») в браузере, объединяя все ваши зависимости


Я не понял ни слова из предложения и стал разбираться, как это может помочь мне как разработчику.


Цель статьи — рассказать о контексте, в котором инструменты в JavaScript развивались вплоть до 2017-го. Начнём с самого начала и будем делать сайт, как это делали бы динозавры — безо всяких инструментов, на чистом HTML и JavaScript. Постепенно станем вводить разные инструменты, поочерёдно рассматривая решаемые ими проблемы. Благодаря историческому контексту вы сможете адаптироваться к постоянно меняющемуся ландшафту JavaScript и понять его.

Total votes 174: ↑171 and ↓3+168
Comments505

Перевод и озвучка фильма дома — Indie Game: The Movie Special Edition

Reading time13 min
Views14K
В августе 2014 года мы с моим другом решили, что было бы круто попробовать озвучить какой-нибудь фильм, которого ещё нет на русском. Выбор пал на продолжение документального фильма про разработчиков очень популярных в своё время инди-игр (Super Meat Boy, FEZ, Braid) — «Indie Game: The Movie Special Edition». 19 роликов суммарной длиной 01:46:55. В наличии были только английские субтитры.

Воодушевившись уже имеющимися статьями на хабре (раз, два, три), мы принялись за работу. Единственное, меня не устроил результат ни в одной из статей, так что я решил пройти свой путь в создании закадровой озвучки. Ниже я постарался подробно расписать, как протекал весь процесс, чтобы мой опыт, возможно, смог пригодиться кому-то ещё. Текста будет много, так что готовьтесь.

image
Total votes 26: ↑26 and ↓0+26
Comments14

Существует ли идеальный планировщик личных задач? Разработка модульного планировщика

Reading time5 min
Views19K

Некоторое время назад, я, как активный пользователь планировщиков личных задач, открыл для себя один значительный недостаток – несмотря на их несчётное количество, невозможно найти «тот самый», который удовлетворял бы тебя по всем пунктам.


Нет, само по себе это абсолютно нормально, так как программу разрабатывал один или несколько разработчиков, которые в итоге пришли к своему пониманию того, “как пользователю будет лучше”. Да и к тому же, невозможно в одной программе уместить всё, что теоретически может захотеть сферический пользователь в вакууме. Или возможно?




Читать дальше →
Total votes 19: ↑18 and ↓1+17
Comments54

Создание языка программирования с использованием LLVM. Часть 6: Расширение языка: Операторы, определяемые пользователем

Reading time33 min
Views12K
Оглавление:
Часть 1: Введение и лексический анализ
Часть 2: Реализация парсера и AST
Часть 3: Генерация кода LLVM IR
Часть 4: Добавление JIT и поддержки оптимизатора
Часть 5: Расширение языка: Поток управления
Часть 6: Расширение языка: Операторы, определяемые пользователем
Часть 7: Расширение языка: Изменяемые переменные
Часть 8: Компиляция в объектный код
Часть 9: Добавляем отладочную информацию
Часть 10: Заключение и другие вкусности LLVM



6.1. Введение


Добро пожаловать в главу 6 руководства “Создание языка программирования с использованием LLVM”. К данному моменту у нас есть полнофункциональный язык, хотя и минимальный, но, тем не менее, полезный. Но по-прежнему осталась одна проблема. В нашем языке мало полезных операторов (нет, например, деления, логического отрицания, и даже сравнений, за исключением оператора сравнения «меньше»).
Читать дальше →
Total votes 47: ↑47 and ↓0+47
Comments5

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Registered
Activity