Pull to refresh
4
0

Пользователь

Send message

15 базовых советов по Git для эффективной работы каждый день

Reading time5 min
Views61K

Привет, меня зовут Сергеев Сергей aka gurugray. Сейчас я «Mentor FrontEnd Community» в компании ManyChat. Вы могли видеть мои лекции по релизному циклу и регламенту работ с системами контроля версий в Школе Разработки Интерфейсов Яндекса (ШРИ).


Меня часто спрашивают какие life-hacks или best-practices я использую при работе с Git'ом и репозиториями проекта.


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


Читать дальше →

Что такое опционы и кому это нужно. Ликбез для гика, ч. 6

Reading time17 min
Views58K
Меня зовут Михаил Андреев, я разработчик в нашем подразделении FX Derivatives Desk (на сленге отрасли позиция называется Quant Developer). В этом посте расскажу про опционы и все что с ними связано.

Эти инструменты не так близки простому обывателю, как, например, банковский вклад, но для современных финансовых рынков они важны. И их периодически обсуждают в неспециализированных СМИ, и я думаю, что составить общее представление об опционах и том, как с ними работают финансовые компании, полезно.


Кроме этого, эта тема связана с интересной математикой, вычислительными методами и разработкой программных систем — всё как мы любим.
Читать дальше →

Как слепой разработчик в одиночку создала синтезатор речи

Reading time11 min
Views18K

Мы все, так или иначе, сталкивались с пользователями, имеющими проблемы зрения. Отвечающие за UI, не важно сайта, мобильного приложения или любого другого софта, скорее всего, знают про необходимость учитывать потребности таких людей и поэтому делали режимы повышенной контрастности, увеличенные шрифты и так далее.

А что, если пользователь совсем слепой и все эти режимы никак не упрощают его жизнь? Здесь на арену выходят программы для чтения экрана и синтезаторы звука, без которых им не обойтись. И вот про один из них я бы хотел вам сегодня рассказать.

Называется от RhVoice и упоминался в нескольких публикациях на Хабре. Но знаете ли вы, что многие считают его лучшим бесплатным синтезатором русской (и не только) речи, а написан он в одиночку полностью слепым разработчиком — Ольгой Яковлевой?

Сегодня восстанавливаем историческую справедливость и немного узнаем про сам синтезатор вообще, и Ольгу в частности.

Наука о данных, искусственный интеллект, машинное обучение: путь самоучки

Reading time8 min
Views33K
Не каждый может найти время и деньги на то, чтобы получить очное образование в сферах Data Science (DS, наука о данных), AI (Artificial Intelligence, искусственный интеллект), ML (Machine Learning, машинное обучение). Недостаток времени и нехватка денег — это серьёзные препятствия. Преодолеть эти препятствия можно, занявшись самообучением. Но и тут не всё так просто. Для того чтобы успешно учиться самостоятельно, нужны дисциплина, сосредоточенность и правильный подбор учебных предметов. Самообучение в выбранной области, при правильном подходе, можно свободно совмещать с обычной жизнью или с учёбой в общеобразовательных учреждениях. Но в некоторых областях знаний, в таких, как DS, AI, ML, очень сложно начать учиться самостоятельно. Однако, прошу поверить мне на слово, сложности стоят того, что можно получить в результате. Ключ к успеху в самообучении лежит в том, чтобы учиться в собственном темпе.



В этом материале я хочу рассказать о том, как можно действовать тому, кто хочет самостоятельно обрести знания в областях DS, AI и ML. Применение предложенных здесь методов учёбы способно привести к хорошему прогрессу в изучении нового. Здесь, кроме того, я собираюсь поделиться ссылками на ресурсы, которыми я пользуюсь, и которые я без тени сомнения готов порекомендовать другим.
Читать дальше →

Двоичное‌ ‌кодирование‌ ‌вместо‌ ‌JSON

Reading time6 min
Views15K
Кодируйте‌ ‌одни‌ ‌и‌ ‌те‌ ‌же‌ ‌данные‌ ‌гораздо‌ ‌меньшим‌ ‌количеством‌ ‌байт.‌ ‌

image

Почему‌ ‌меня‌ ‌это‌ ‌должно‌ ‌волновать ‌


Данные‌ ‌хранятся‌ ‌в‌ ‌памяти‌ ‌в‌ ‌виде‌ ‌структур‌ ‌данных,‌ ‌таких‌ ‌как‌ ‌объекты,‌ ‌списки,‌ ‌массивы‌ ‌и‌ ‌т.д.‌ ‌Но‌ ‌если‌ ‌вы‌ ‌хотите‌ ‌отправить‌ ‌данные‌ ‌по‌ ‌сети‌ ‌или‌ ‌в‌ ‌файле,‌ ‌вам‌ ‌нужно‌ ‌закодировать‌ ‌их‌ ‌в‌ ‌виде‌ ‌последовательности‌ ‌байтов.‌ ‌Перевод‌ ‌из‌ ‌представления‌ ‌в‌ ‌памяти‌ ‌в‌ ‌последовательность‌ ‌байтов‌ ‌называется‌ ‌кодированием,‌ ‌а‌ ‌обратное‌ ‌преобразование‌ ‌–‌ ‌декодированием.‌ ‌Со‌ ‌временем‌ ‌схема‌ ‌данных,‌ ‌обрабатываемых‌ ‌приложением‌ ‌или‌ ‌хранящихся‌ ‌в‌ ‌памяти,‌ ‌может‌ ‌эволюционировать,‌ ‌туда‌ ‌могут‌ ‌добавляться‌ ‌новые‌ ‌поля‌ ‌или‌ ‌удаляться‌ ‌старые.‌ ‌Следовательно,‌ ‌используемая‌ ‌ кодировка‌ ‌должна‌ ‌иметь‌ ‌как‌ ‌обратную‌ ‌(новый‌ ‌код‌ ‌должен‌ ‌быть‌ ‌способен‌ ‌читать‌ ‌данные,‌ ‌написанные‌ ‌старым‌ ‌кодом),‌ ‌так‌ ‌и‌ ‌прямую‌ ‌(старый‌ ‌код‌ ‌должен‌ ‌быть‌ ‌способен‌ ‌читать‌ ‌данные,‌ ‌написанные‌ ‌новым‌ ‌кодом)‌ ‌совместимость.‌ ‌

В‌ ‌этой‌ ‌статье‌ ‌мы‌ ‌обсудим‌ ‌различные‌ ‌форматы‌ ‌кодирования,‌ ‌выясним‌ ‌почему‌ ‌двоичное‌ ‌кодирование‌ ‌лучше,‌ ‌чем‌ ‌JSON‌ ‌и‌ ‌XML,‌ ‌и‌ ‌как‌ ‌методы‌ ‌двоичного‌ ‌кодирования‌ ‌поддерживают‌ ‌изменения‌ ‌в‌ ‌схемах‌ ‌данных.‌ ‌

Типы‌ ‌форматов‌ ‌кодирования‌


Существует‌ ‌два‌ ‌типа‌ ‌форматов‌ ‌кодирования:‌ ‌

  • Текстовые‌ ‌форматы‌ ‌
  • Двоичные‌ ‌форматы‌
‌ ‌
Читать дальше →

Как стать Data Scientist без онлайн-курсов

Reading time4 min
Views25K
image

Это всего лишь мое мнение. Если у вас есть контраргументы, пожалуйста, напишите их в комментариях.

Хотите стать data scientists?

Я познакомился с более 50-ю data scientists и с еще парочкой поработал лично.

Здесь я расскажу, как эти люди пришли в Data Science. Без онлайн-курсов.

1. Решите задачу с помощью машинного обучения


Выберите реальную проблему, и решите ее с помощью машинного обучения.

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

Вот примеры задач, которые вы можете попробовать разрешить:

  • Распознавание фейковых новостей
  • Прогнозирование стоимости жилья в вашем районе
  • Подбор домашних питомцев в зависимости от образа жизни потенциальных хозяев

Если ваш решатель заработает (или даже почти сработает), создайте пользовательский интерфейс, которым можно будет пользоваться, и опубликуйте его на Hacker News или Product Hunt.

Добавьте строку с названием «Data Scientist» в резюме. Если получилось решить проблему машинного обучения, никому и дела не будет, что это было всего лишь шоу одного актера.

Теперь вам есть, что рассказать на собеседовании, и такая история будет иметь гораздо больший вес, нежели сертификат об окончании онлайн курсов.
Читать дальше →

Как найти удаленную работу в США и Европе: списки ~1000 компаний, полезные инструменты для поиска + личный опыт инженера

Reading time6 min
Views167K


Изображение: Unsplash

Вопрос поиска удаленной работы в хороших компаниях из США и Европы актуален всегда – не все хотят переезжать в другую страну, а участвовать в интересных проектах хочется в любое время. В период пандемии, когда перемещение между странами и иммиграция серьезно усложнились, и экономического кризиса, который во многих странах только разгорается, желающих найти удаленку в американской или европейской компании станет еще больше.

Я решил разобраться в том, что для этого нужно сделать инженеру с постсоветского пространства. Для этого я изучил компании, которые предлагают remote-позиции для ИТ-специалистов, нашел несколько полезных сервисов и поговорил с Никитой Львовым, инженером, который как раз недавно нашел такую работу и согласился поделиться опытом. Надеюсь, получилось полезно. Поехали!
Читать дальше →

«Бесполезное» представление, преобразовавшее математику

Reading time7 min
Views19K

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




Когда в конце XIX века впервые появилась теория представлений, многие математики сомневались в ценности этого подхода. В 1897 году английский математик Уильям Бёрнсайд писал, что сомневается в том, что эта необычная перспектива даст какие-то полезные результаты.

«Бёрнсайд, по сути, говорил о том, что теория представлений бесполезна», — сказал Джорди Уильямсон из Сиднейского университета в лекции 2015 года.

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

«Не сразу становится понятно, что её стоит изучать», — сказала Эмили Нортон из Кайзерслаутернского технического университета в Германии.
Читать дальше →

ZX Spectrum из коронавируса и палок, часть 2 (работа над ошибками)

Reading time26 min
Views17K
Ссылка на первую часть

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



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

И еще одно. Я — художник. Будет много картинок, и даже видео. Трафик!

I see… hey, stop moving: как зрительная система компенсирует неточности саккад

Reading time12 min
Views11K


Одним из самых важных органов чувств считаются глаза. Благодаря им мы получаем львиную долю информации об окружающем мире. Когда мы рассматриваем что-то, наш взор не фиксированный, т.е. наши глаза совершают множество мелких движений, именуемых саккадами. Из-за этих движений смещается сетчатка, что в свою очередь снижает четкость изображения (вспомните не самые удачные фильмы в стиле «мокьюментари»). Чтобы компенсировать этот эффект, зрительная система снижает свою чувствительность к смещению зрительных стимулов во время саккад. Однако до сего времени механизмы, лежащие в основе этого тонкого процесса, оставались не изучены. Посему ученые из университета Тохоку (Япония) решили провести ряд практических опытов и моделирований. Что показали эксперименты, какие секреты таит в себе гашение саккадического смещения, и почему так важны визуальные стимулы до и после саккад? Ответы на эти вопросы мы найдем в докладе ученых. Поехали.

Самый легкий способ изучения английского с помощью видео TED

Reading time3 min
Views14K
Это немного адаптированный кросс-пост* статьи Самый легкий способ изучения английского с помощью видео TED с моего персонального сайта (сокращена небольшая часть в конце статьи, непосредственно не касающаяся TED).

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

Благодаря качеству и разнообразию контента TED (по сравнению с контентом учебных курсов, специально созданном для изучения английского), на нем сравнительно легко удерживать внимание, в том числе и при повторении просмотра одного и того же интересного видео (повторения работают для изучения языка лучше, чем просмотр каждого видео по одному разу) — потому что информация на TED подается в очень концентрированном виде и повторные просмотры видео представляют собой естественный процесс углубленного изучения вопроса, раскрывающегося в нем.

Ниже показаны настройка мобильного приложения TED (iOS или Android) и страницы Youtube с видео TED таким образом, чтобы отображались субтитры на двух языках. Вывод двойных субтитров в мобильном приложении TED настраивается в его опциях.



Теперь реализуем все это на десктопном компьютере в Youtube, например для этого видео (все видео TED также доступны на Youtube каналe TED).
Читать дальше →

Теория игр и её применение в жизни

Reading time18 min
Views124K
Привет, читатель!

Некоторые из вас видели набор букв“qwerty”. Qwerty — это раскладка клавиатуры. Посмотрите на вашу клавиатуру. Вы увидите в верхнем ряду буквы «q»«w»«e»«r»«t»«y». А по какой причине нам интересна раскладка клавиатуры?

Ещё давно, когда люди пользовались печатными машинками, печатали они довольно быстро. Это создавало проблемы: головки печатной машинки, бьющие по бумаге и печатающие на ней буквы, цеплялись друг за друга, что приводило к поломке. Была создана раскладка qwerty, в которой рядом стоящие в словах буквы были размещены на максимально большом расстоянии друг от друга. Таким образом была решена проблема.

Печатными машинками давно никто не пользуется, и проблема соприкосновения печатающих головок исчезла. Факт того, что мы перестали пользоваться неудобной раскладкой клавиатуры логичен. Но, есть загвоздка – такого факта не существует, люди привыкли печатать на раскладке «qwerty» и не хотят переучиваться.

Сейчас, зайдя в настройки, вы можете переключить раскладку клавиатуры на «dvorak». Печать ускорится в разы, в то время как обучение займёт лишь неделю. К сожалению, никому не выгодно быть единственным переучившимся, потому что за любым компьютером, кроме личного, работать будет неудобно. А также, к сожалению или к счастью, людям лень переучиваться. Хотя вместе, приложив усилия и переучившись, мы могли бы увеличить пропускную способность набора текста в разы.

Подводя итоги: при массовом использовании «qwerty», переход отдельного игрока на «dvorak» не эффективен, хотя переход общества на «dvorak» эффективен.
Читать дальше →

Qt на Android: как мы дали вторую жизнь приложению с авторскими медитациями

Reading time11 min
Views18K

Краткое лирическое вступление — в 2017 году мне случилось очень плотно заинтересоваться медитациями. Этому способствовала целая цепочка событий, благоприятных и не очень. Я долгие годы интересуюсь и практикую осознанные сновидения, однако конкретно медитациями в их каноническом виде до этого заниматься не приходилось. В эти дни многие истории начинаются в баре (с) увлечения начинаются с поиска в Google, вот и я начал именно так. Практически сразу нашлись топовые по популярности приложения для занятия медитацями — Calm и Headspace.


Первое послужило неплохое отправной точкой (отличные обучающие медитации для начинающих), второе я не нашел для себя полезным, не понравилась подача. Оба оттолкнули своими платными (и надо сказать весьма дорогостоящими для РФ) тарифными планами. Возможно я просто не отношусь к категории людей, которым нужно заплатить, чтобы подбадривать себя чем-то заниматься :) Продолжная изучать Google play, я наткнулся на два близких мне по духу бесплатных приложения. Первое это "Let's Meditate" — я пользуюсь им по сей день, о втором речь пойдет в теле статьи.

Читать дальше →

Древности: ZX Spectrum и древний игрожур

Reading time8 min
Views9.3K
Короткая, но яркая эпоха ZX Spectrum в моей жизни началась в 1993 году и закончилась в 1995-м, с появлением дома IBM PC. Самособранный АТМ Турбо со временем обзавелся звуковой микросхемой, двумя пятидюймовыми приводами для дискет, шикарной герконовой клавиатурой и корпусом от компьютера «Партнёр 01-01». Были собраны два десятка кассет с программами и играми, кое-что потом было перенесено на диски, и почти все потеряно за следующие двадцать пять лет. Но что-то осталось. В позапрошлом году я рассказывал про уцелевшие сборники на кассетах. Сегодня речь пойдет о литературе.

Книг и брошюр по спектруму тоже было куплено немало. Сейчас для по сути пользовательских задач это не требуется — вся информация есть в интернете. В начале девяностых интернет заменяли печатные издания. «Книги» — это громко сказано, зачастую это были тонкие тетрадки, сшитые из плохой бумаги, с машинописным шрифтом и строками на латинице от руки, но обязательно — с ламинированной обложкой. К ним обращались, когда надоедало «просто играть в игры», и хотелось либо понять, во что играешь, либо каким-то образом модифицировать игровой процесс. В крайнем случае — если играть совсем надоело — заняться программированием.

Одна из двух сохранившихся у меня книг тех времен — «Описание 500 игровых программ ZX Spectrum». Туда попали не лучшие игры, а просто те, до которых дотянулась рука автора. Она решала простую задачу: после того, как вы переписали пару кассет с софтом у знакомых, надо понять, как это вообще работает, и какие кнопки нажимать. Самостоятельно это сделать получалось не всегда. Был такой элемент интриги: то ли ты что-то не понял, то ли без джойстика игра не работает. То ли с твоим клоном «Спектрума» не совместима, то ли переписалась плохо. Я приведу несколько цитат из этой книги, а заодно покажу, как рецензировались игры «у них», на Западе, с развитой фанатской прессой.

Гомеостаз и почему мы откатываемся

Reading time8 min
Views15K
Все мы в то или иное время старались добиться больших перемен. И почти все из нас, составив грандиозные планы, обнаружили, что изменение какого-то аспекта нашей жизни или организации, будь то приобретение нового навыка или просто изменение старого процесса, привело к большому откату назад.

Откуда такое несоответствие?

Как Джордж Леонард говорит в своей классической книге «Мастерство», основанной на его многолетнем опыте практики айкидо, нет необходимости бичевать себя или выводить сложное психологическое объяснение.

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

Выращиваем ИИ — Генетические алгоритмы: введение

Reading time19 min
Views25K


(сгенерированое изображение)


Существует множество способов создать искусственную нейронную сеть или даже "искусственный интеллект". Но все эти способы обескураживают, от части сложностью которую я не до конца понимаю, отчасти от того, что все сводится к математическим формулам.


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

Исследователи передали данные с настольного ПК через вибрации по столу

Reading time2 min
Views6.4K


Группа учёных из университета имени Бен-Гуриона в Негеве (Израиль) изучает способы передачи информации с изолированных компьютеров (airgap). Они уже разработали методы передачи данных морганием светодиода HDD, маршуртизатора или клавиатуры, электромагнитным излучением с шины USB и с карты GPU, звуками кулера GPU и магнитной головки HDD, через тепловое излучение и аудиоколонки (в неслышимом диапазоне), по изменению энергопотребления ПК и яркости дисплея. Оказывается, этим список не ограничивается.

13 апреля 2020 года учёные опубликовали описание новой атаки AiR-ViBeR с эксфильтрацией данных через вибрации вентилятора. Скорость передачи ниже, чем у других способов: всего 0,5 бит в секунду при закрытой крышке системного блока.

Бережём зрение на удалёнке с помощью проектора вместо монитора — несколько неочевидных нюансов

Reading time3 min
Views40K

Моя история


Так получилось, что у меня с детства уставали глаза от продожительного сидения перед экраном. Полтора года назад я сделал SMILE и стал видеть очень далеко, тут же встал вопрос, как продлить это радостное состояние максимально долго. Интуиция и опыт походов в кинотеатр подсказали, что идея заменить привычный монитор проектором имеет право на жизнь, а предварительное гугление, хоть и содержало противоречивый контент форумов, эту идею не убило. К тому же, времена, когда ради проектора требовалось обвесить себя шторами со всех сторон, давно позади, яркость современных проекторов позволяет работать при дневном свете.

Тут же на computeruniverse был заказан Epson EH-TW650 (это не реклама Epson'ов, более того, возможно, для наших целей они и вовсе не являются оптимальным вариантом, но об этом ниже). Экран на первое время был сделан из 12ти аккуратно склеенных между собой ватманов, позже мне настолько понравился этот вариант, что я оставил его насовсем. К обоям прикрепил с помощью пинов. Далее был непростой период приручения проектора для использования в качестве постоянного экрана для повседневной работы.

image
Читать дальше →

QSerializer: решение для простой сериализации JSON/XML

Reading time9 min
Views6.6K
Привет, Хабр!

Подумалось мне, что как-то несправедливо получается — у Java, С#, Go, Python и т.д. есть библиотеки для комфортной сериализации объектных данных в модные нынче JSON и XML, а в С++ то ли забыли, то ли не захотели, то ли и не особо надо, то ли сложно все это, а может и все вместе. Так что я решил это дело исправить.

Все подробности, как обычно, под катом.


Читать дальше →

Information

Rating
7,225-th
Registered
Activity