Search
Write a publication
Pull to refresh
27
0
Михаил Мельник @mike114

User

Send message

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

Reading time5 min
Views61K

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


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


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


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

Пугающая антиутопия интервью для программистов

Reading time14 min
Views57K

Эксперименты


У меня зазвонил телефон.

— Алло, это Джаред.

— Здравствуйте. Я звоню вам насчёт телефонного собеседования в Гигантской Поисковой и Рекламной Компании [очевидно, это Google — прим. пер].

— Да! С нетерпением ждал вашего звонка!

— Хорошо. Можете написать алгоритм для поиска K-го самого большого значения в двоичном дереве?

Я замолкаю. Полностью отключаюсь. Никогда не попадал в такую ситуацию. Пустой документ Google смотрит на меня, а курсор мигает как в замедленной съёмке. Я кое-что набрасываю в качестве первого прохода.

— Можете написать тестовый пример для этого алгоритма?
Читать дальше →

Гражданство за инвестиции: как купить паспорт? (часть 2 из 3)

Reading time7 min
Views23K
По мере того, как экономическое гражданство становится все более популярным, на рынок золотых паспортов выходят новые игроки. Это стимулирует конкуренцию и увеличивает ассортимент. Из чего можно выбирать прямо сейчас? Попробуем разобраться.



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

  • Что такое экономическое гражданство?
  • Как определить, что страна предлагает гражданство за инвестиции?
  • Что дает второй паспорт инвестору?
  • Гражданство за инвестиции не следует путать с этим…
  • Где можно получить гражданство за деньги?

На этот раз будут охвачены следующие задачи:

  • Где можно получить гражданство за деньги?
  • Как получить право на экономическое гражданство?

Где можно получить гражданство за деньги?


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

Всем остальным схемам меньше десяти лет. При этом в течение двух последних десятилетий многие государства приходили и уходили с рынка инвесторских паспортов, включая Коморские острова (предложение этой страны более недоступно) и Гренаду (перезапустила свою программу в 2013 году после более чем десятилетнего перерыва). Некоторые другие государства, например, Черногория и Турция, лишь недавно вышли на рассматриваемый рынок.

Другие, такие как Кипр, имеют ограничение на количество заявок, которые они обрабатывают каждый год. Есть программы, которые встречают политическое сопротивление, вроде молдавской схемы, прием заявок в рамках которой был временно приостановлен до второй половины 2020 года, а затем программа и вовсе была свернута.
Читать дальше →

Лекция с разбором правды и мифов об аварии на Чернобыльской АЭС

Reading time11 min
Views19K
Внимательные читатели и подписчики наверняка ждут от меня продолжения истории о ввозе урановых хвостов, прерванную почти полгода назад. И я планирую завершить ее на следующей неделе, благо событий за это время по теме было немало.

Но сейчас хочу выложить ссылку на запись своей лекции с разбором мифов и правды о Чернобыле на основе сериала от HBO, которую я прочитал почти год назад в Москве в рамках LiveJournal Meetup. Просто я тут решил заняться созданием и наполнением своего youtube-канала о ядерных технологиях и радиации, и пока я готовлю первые материалы, в том числе по теме урановых хвостов, выкладываю вот архивные записи. Думаю это будет тоже любопытно. Так что приглашаю подписываться, ставить лайки и комментарии, иначе это новое и нелегкое для меня дело может и загнуться.

Для ознакомления с содержанием лекции и удобства ориентирования, выкладываю под катом тайм-коды ролика с описанием рассматриваемых вопросов.

PS: Понимая, что одно видео без текста воспринимается на Хабре неоднозначно, я добавил под катом свой текст с описанием некоторых технических комментариев к сериалу, написанный перед лекцией. Это не дословная расшифровка лекции, но описанные тут факты в нее вошли. Хотя лекция содержит на порядок больше информации.


Расцвет, падение и возрождение AMD

Reading time25 min
Views46K
image

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

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

Поход за славой и богатством


Чтобы начать нашу историю, нужно вернуться назад во времени и отправиться в Америку конца 1950-х. Страна, расцветшая после тяжёлых лет Второй мировой, стала местом передовых технологических инноваций.

Такие компании, как Bell Laboratories, Texas Instruments и Fairchild Semiconductor, нанимали лучших инженеров и одна за другой выпускали продукты, становившиеся первыми в своей области: биполярный транзистор, интегральная схема, MOSFET (МОП-транзистор).


Инженеры Fairchild, примерно 1960 год: слева Гордон Мур, на переднем плане в центре Роберт Нойс

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

Ты добавил всего две строчки. Почему на это ушло два дня?

Reading time3 min
Views64K
На первый взгляд вопрос кажется разумным, но он делает некоторые ужасные предположения:

  • строки кода = усилие
  • строки кода = значение
  • все строки кода равны

Ничто из этого не является истинным.

Почему исправление, которое кажется таким простым, заняло два дня?
Читать дальше →

6 полезных привычек, которые, что удивительно, есть лишь у немногих программистов

Reading time5 min
Views59K
Если поразмышлять о том, какие качества характерны для того, кого можно назвать «хорошим программистом», то на ум тут же придут некоторые привычки. Такие привычки, которые, с чем согласится большинство разработчиков, иметь весьма полезно. Но, на самом деле, большинство таких разработчиков сами подобных привычек не имеют.

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



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

Искусственный интеллект в области юриспруденции. Статья 2

Reading time43 min
Views9.1K

Введение


Анализ актуальной в настоящее время темы искусственного интеллекта и его применения в области юриспруденции мы начали с обзора инструментов синтаксического и семантического анализа текстов, которые применяются при разработке LegalTech-решений.


В комментариях к предыдущей статье красной нитью проходил очень непростой вопрос: а почему бы не извлекать из текста все имеющиеся в нем смыслы? В чем здесь сложность? Такой вопрос — крайне показателен, поэтому мы решили уделить ему более пристальное внимание и дать максимально развернутый ответ.


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

Пора обновить ваш монитор

Reading time16 min
Views186K

Иллюстрация: Юлия Прокопова

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

Поэтому я оптимизирую настройки, чтобы показывать действительно, действительно хорошие буквы. Для этого необходим хороший монитор. Не просто нужен, а ОБЯЗАТЕЛЕН. А под «хорошим» я имею в виду настолько хороший, насколько это возможно. Это мои мысли, основанные на моём собственном опыте того, какие мониторы лучше подходят для программирования.
Читать дальше →

Почему функциональное программирование такое сложное

Reading time15 min
Views93K

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


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


Попытки использовать как-то в работе изученные концепции разбивались о полное непонимание, как применить полученное глубокое знание. Ведь, напомню, что парадигму ФП (где-то удобнее, где-то не очень, но) можно использовать практически в любом ЯП, совсем необязательно для этого изучать условный Хаскель.

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

Подозрительные типы

Reading time8 min
Views14K

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


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

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

Клон Doom в 13 килобайтах JavaScript

Reading time14 min
Views41K
В прошлом году я участвовал в соревнованиях JS13K 2019, на которых людям предлагается разрабатывать игры в менее чем 13 КБ кода на JavaScript. Я участвовал с клоном Doom, который назвал… «Ещё один клон Doom» (Yet Another Doom Clone).


Поиграть в него можно здесь. Исходный код выложен сюда.

Зачем создавать клон Doom?


Зачем писать FPS на JavaScript всего в 13 КБ (с учётом сжатия)? По нескольким причинам. Но лучше всего на этот вопрос отвечает раздел FAQ соревнований JS13K «Можно ли использовать WebGL?»:

«Да, но может быть сложно уместить его в 13 килобайта, если вы планируете писать FPS».

Кроме того, в то время я как раз написал 3D-рендерер и хотел поработать над ним ещё. К тому же мне нравится создавать сильно сжатый код. (Например, много лет назад я создал язык и написал компилятор для нового языка, предназначенный специально для использования в код-гольфинге.)

Именно поэтому я выбрал FPS. Остаётся вопрос: «Почему Doom?» На него ответить проще: если вы хотите написать FPS, и чтобы он при этом был небольшим, то Doom — практически самый минималистичный вариант.

Почему мы в $ИЗВЕСТНОЙ_КОМПАНИИ перешли на $РАСКРУЧЕННУЮ_ТЕХНОЛОГИЮ

Reading time5 min
Views34K
Прим. перев.: эта шуточная статья, которую по праву охарактеризовали как иллюстрацию «SEO-driven development», нашла очень большой отклик на Reddit и других ресурсах. Соглашаясь с актуальностью той истории, что пародируется автором оригинала, мы рады поделиться её переводом с русскоговорящим сообществом.



Сразу после своего основания в 2010 году $ИЗВЕСТНАЯ_КОМПАНИЯ вполне помещалась в $ГАРАЖЕ_БРАТАНА_ОСНОВАТЕЛЯ. С тех пор мы росли как на дрожжах, чему способствовали постоянные вливания средств венчурными капиталистами. Сегодня сотни миллионов ежедневно активных пользователей (DAUs) изо всех уголков мира пользуются нашими продуктами в мобильных приложениях и на сайте $famouscompany.com.

За это время мы уже несколько раз в панике чинили бэкенд, чтобы уменьшить свой технический долг (как правило, сразу после очередного масштабного сбоя) и наши серверы не навернулись. Имевшийся технологический стек верой и правдой служил нам все эти годы. Но со временем стало очевидно, что, переписав приложение «с нуля», мы сможем выжать из пользователей дополнительные 2 млрд долларов в год.
Читать дальше →

Реверс-инжиниринг микросхем по фото

Reading time3 min
Views13K
Тем, кто любит гикпорн-фотографии от BarsMonster и его товарищей по цеху, наверняка интересно научиться расшифровывать логическую схему по её фотографии. Например, что делает вот этот кусочек Z80?


Яркие вертикальные полосы — это металлические проводники; горизонтальные полосы, от которых видны только тёмные границы — это проводники из поликремния; область неправильной формы с ярко-чёрной границей — это легированная часть кремниевой подложки; желтоватые круги — это соединения между слоями микросхемы.

Каждый транзистор образован поликремниевым проводником, пересекающим область легированного кремния:



По традиции, такие транзисторы называют MOSFET («металл-оксид-полупроводник»), даже когда затвор не металлический, а поликремниевый. Автор вполушутку предположил, что ни один производитель поликремниевых транзисторов не хотел называть их POS.

Работа транзистора заключается в том, что когда к затвору приложено положительное напряжение, то легированная область, включающая исток и сток, становится проводящей; когда напряжение с затвора снято, то исток и сток размыкаются.

Вот та же самая фотография с размеченными транзисторами и проводниками: (я добавил в авторскую иллюстрацию обозначения соединений между слоями)

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

10 расширений для VS Code, без которых я не могу программировать

Reading time3 min
Views160K
VS Code — мой любимый редактор кода. Это — самый популярный из существующих редакторов, возможности которого можно расширять практически до бесконечности. И, что удивительно, разработала его компания Microsoft. Я полагаю, что ни один из других редакторов и ни одна из других IDE не может дать разработчику хотя бы половину того, что способен дать ему VS Code. Одна из сильных сторон VS Code — это система расширений. Она позволяет создавать расширения буквально на все случаи жизни. Хочу рассказать вам о моём топ-10 расширений для VS Code.


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

Мне надоело, что обычные продавцы выдают себя за разработчиков и позорят индустрию. Они делают мир хуже

Reading time5 min
Views123K


Когда Дудь выпустил ролик про долину, я очень сильно расстроился. Я ещё не знал, про что он конкретно, но мозг моментально нарисовал: манерные успешные успехи говорят про преодолевание, дух предпринимательства, поднятые миллионы баксов, и как сильно их говноприложенька влияет на мир.

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

Мои новостные ленты были завалены обсуждениями, восхищением и критикой выпуска. Каждый раз читая что-то об этом, я испытывал непонятную почти физическую боль. Ну хорошо, главный журналист страны рассказал про мою индустрию, но рассказал не так, как хочу я. С этим можно жить. Да, со всей своей преисполненностью и трушной технарскостью, я все ещё маленький завистливый чмошник. Я тоже хочу сидеть в кофейне в Пало-Альто и смотреть, как мне выписывают чек на пять миллионов долларов. Но смотрите, я вырос в России и давно научился не обращать внимания на свою патологическую зависть. Мне давно не бывает от нее больно.

Бомбанул я точно не от зависти — и я долго не знал, почему.
Читать дальше →

На корпусе вашего компьютера напряжение 110 Вольт

Reading time4 min
Views174K


— У меня ноутбук бьется током, чувствую легкое покалывание. Не знаешь в чем дело?

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

Короткий ответ: корпус вашего компьютера находится под напряжением ~110V (половина от напряжения в сети), но из-за маленькой силы тока вас не ударяет слишком сильно.

Для инженеров-электриков это банальность: по тем же причинам в домах со старой проводкой может бить током стиральная машина, когда касаешься ванны, корпус стационарного компьютера и т.д. Эта тема многократно поднималась в интернете, но до сих пор большинство людей не знает о причинах этого явления. Ситуация осложняется тем, что конструкция блока питания в европейских макбуках не позволяет избавиться от этого явления!

7 опасных ошибок, которые легко совершить в С#/.NET

Reading time8 min
Views11K
Перевод статьи подготовлен в преддверии старта курса «C# ASP.NET Core разработчик».




C# — великолепный язык, и .NET Framework также очень хорош. Строгая типизация в C# способствует уменьшению количества ошибок, которые вы способны спровоцировать, по сравнению с другими языками. Плюс его общая интуитивная конструкция тоже очень помогает, по сравнению с чем-то наподобие JavaScript (где true это false). Тем не менее, в каждом языке есть свои грабли, на которые легко наступить, наряду с ошибочными представлениями об ожидаемом поведении языка и инфраструктуры. Я попытаюсь подробно описать некоторые из этих ошибок.
Читать дальше →

68 непрошеных советов

Reading time6 min
Views77K
Это перевод самого недавнего поста Кевина Келли, со-основателя журнала Wired, писателя, фотографа, футуролога.


Сегодня мой день рождения. Мне 68. Хочется пододвинуть кресло-качалку и пораздавать советы юнцам. Вот 68 непрошеных советов, которые я предлагаю всем вам как подарок ко дню рождения.

  • Научитесь учиться у тех, с кем вы не согласны, или даже тех, кто вас раздражает. Нет ли истины в их убеждениях?
  • Энтузиазм эквивалентен 25 баллам IQ.
  • Всегда требуйте дедлайн. Дедлайн избавляет от лишнего и заурядного. Он останавливает попытки достичь совершенного, поэтому вам приходится делать необычное. Необычное лучше.

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

Да мой старый laptop в несколько раз мощнее, чем ваш production server

Reading time5 min
Views99K
Именно такие претензии я услышал от наших девелоперов. Самое интересное, что это оказалось правдой, дав начало длительному расследованию. Речь пойдет про SQL servers, которые крутятся у нас на VMware.


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

Information

Rating
Does not participate
Location
New South Wales, Австралия
Date of birth
Registered
Activity