Search
Write a publication
Pull to refresh
0
@MacInread⁠-⁠only

User

Send message

Исследование рынка тимлидов в России

Reading time2 min
Views47K


Две недели назад к нам в New.HR пришел Егор Толстой (YourDestiny) и попросил собрать данные для его доклада на TeamLeadConf.

Егора интересовало:

  • Сколько вакансий тимлидов есть на рынке.
  • Какое количество вакансий закрывается внешними кандидатами, а какое – внутренними.

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

Сверхсовременные иммутабельные структуры данных

Reading time22 min
Views31K
Годами эксперты в С++ рассуждают о семантике значений, иммутабельности и разделении ресурсов за счет коммуникации. О новом мире без мьютексов и гонок, без паттернов Command и Observer. На деле все не так просто. Главная проблема по-прежнему в наших структурах данных.



Иммутабельные структуры данных не меняют своих значений. Чтобы что-то с ними сделать, нужно создавать новые значения. Старые же значения остаются на прежнем месте, поэтому их можно без проблем и блокировок читать из разных потоков. В итоге ресурсы можно совместно использовать более рационально и упорядоченно, ведь старые и новые значения могут использовать общие данные. Благодаря этому их куда быстрей сравнить между собой и компактно хранить историю операций с возможностью отмены. Все это отлично ложится на многопоточные и интерактивные системы: такие структуры данных упрощают архитектуру десктопных приложений и позволяют сервисам лучше масштабироваться. Иммутабельные структуры — секрет успеха Clojure и Scala, и даже сообщество JavaScript теперь пользуется их преимуществами, ведь у них есть библиотека Immutable.js, написанная в недрах компании Facebook.

Под катом — видео и перевод доклада Juan Puente с конференции C++ Russia 2019 Moscow. Хуан рассказывает про Immer — библиотеку иммутабельных структур для C++. В посте:

  • архитектурные преимущества иммутабельности;
  • создание эффективного персистентного векторного типа на основе RRB-деревьев;
  • разбор архитектуры на примере простого текстового редактора.

Древности: беспощадный апгрейд 386-го компьютера

Reading time11 min
Views39K
Беспощадный и бессмысленный! В процессе строительства 386-го компьютера «на максималках» мне хотелось устроить что-то этакое, помимо вполне логичного исследования всякой периферии. Выбирал я между прикручиванием водяного охлаждения с подсветкой и апгрейдом процессора, хотя у меня и так установлен самый мощный процессор AMD с частотой 40 мегагерц. Но существовал способ сделать из 386-го компьютера «почти 486-й», и это было интересно.



Наборы для бюджетного апгрейда системы с использованием процессоров следующего поколения существовали с самого начала эпохи IBM PC-совместимых компьютеров. Железо в те времена было проще, и адаптировать, например, 386-й процессор для 286-й материнской платы не составляло особого труда. Конкуренция на рынке интегральных схем была выше: помимо нынешних Intel и AMD на процессорном рынке присутстовали компании Cyrix, Texas Instruments и IBM. Индустрия еще не до конца избавилась от наследия ранних времен, когда выпуск процессоров разными компаниями по общим спецификациям был обычным делом. Но и реверс-инжиниринг никто не отменял, из-за чего иногда получались совсем интересные экземпляры, вроде бы совместимые с «оригиналами», но имеющие массу собственных фич.

В 2020 году апгрейдить старую систему наверное вовсе не имеет смысла, только если из любопытства. Проще построить настоящий 486-й компьютер, если уж захотелось. Но в итоге я повторил путь владельца 386-го компьютера, который хочет сэкономить, повышая производительность малыми усилиями. Итак, представьте себя на месте обеспеченного фаната компьютеров году этак в 1994-м. Вы только что завершили удачную сделку, обменяв вагон зерна на гараж в Подмосковье, а его — на два подержанных «Запорожца». Продав их на авторынке, вы получаете небольшую сумму наличными, слишком мало для нового ПК на базе 80486 или даже на «Пентиуме». А хочется наконец нормально поиграть в Doom. Что делать? Сейчас расскажу.
Читать дальше →

Делаем универсальный RFID-ключ для домофонов

Reading time6 min
Views224K
Приветствую всех, кого интересует тема электронных ключей-вездеходов. Сам я, по правде сказать, давно не слежу за новостями в этой области. Но свою разработку трёхлетней давности хочу опубликовать, так как она проста в повторении и может быть кому-то интересна. Суть: вместо десятка ключей с кодами-вездеходами и просто кодами, все ключи можно носить в одном небольшом устройстве.


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

Анализ половозрастной пирамиды России с 1946 по 2036 гг

Reading time3 min
Views66K
Как изменилась структура российского (постсоветского) общества с середины XX века. Спойлер: она изменилась кардинально.

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

Независимые браузеры более не конкурентоспособны

Reading time6 min
Views76K
В 2017 году консорциум W3C принял стандарт Encrypted Media Extensions (EME), тем самым положив конец конкуренции со стороны независимых браузеров.

Теперь невозможно выпустить свой браузер, который будет воспроизводить некоторые из самых популярных материалов в интернете. Сайты вроде Netflix, Hulu, HBO и др. требуют защиты лицензионного контента. Доступ к ним возможен только по лицензионному соглашению с крупными корпорациями.

Во время разработки своего браузера Metastream я упёрся в стену, когда Google отклонил мою заявку на использование их DRM-движка Widevine для воспроизведения зашифрованного медиа. Эта проблема затрагивает и других разработчиков, и обойти её невозможно.

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

ЭВМ «Таймыр» — эволюция наоборот

Reading time2 min
Views38K
Захотелось мне сделать что-нибудь, пусть бесполезное, но зато своё. И не под чью-то копирку, а свое — с нуля. Так и родилась идея собрать процессор из микросхем 155-й серии (и немного других серий). А там так завертелось, что процессор плавно перерос в ЭВМ. В ЭВМ с собственной микроархитектурой и своим компилятором.. И главная «фишка» проекта: все это собрано на гетинаксе и микросхемах времен СССР.


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

Мой опыт эффективной удалённой работы

Reading time7 min
Views47K
Мой друг, у которого уже много лет опыта удалённой работы, давно подначивал меня поехать на пару зимних месяцев в Таиланд поработать удалённо, а я в свою очередь каждый раз находил одну из сотен надуманных причин, и отказывался:

  • это дорого, я потрачу все деньги;
  • я там упаду с мопеда, меня укусит крокодил-змея-комар, я заболею и умру;
  • я там не смогу работать, всё будет отвлекать;
  • меня уволят из-за того, что будут думать, что я ничего не делаю;
  • меня не отпустит менеджмент.

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

После этого, я тут же пошёл пообщался со своим менеджментом насчёт перехода на постоянную удалённую работу и к моему удивлению меня отпустили для начала поработать из дома в Киеве. А затем — насовсем.

Так я стал удалённым сотрудником, работающим с января по апрель из Таиланда.

image
Если вы думаете, что удалённая работа это вот так — смею вас разочаровать. Так не будет.
Как минимум нужно будет включить компьютер.
Читать дальше →

Как я 12 лет создавал свой ЯП и компилятор к нему

Reading time22 min
Views50K


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

Здравствуй, читатель! Меня зовут Александр, родился я в небольшом городке (меньше 10000 человек) в Беларуси. Моя семья была бедной, игрушек крайне мало, про компьютер и какие либо приставки вообще можно не заикаться. Не смотря на то, что семья была бедной, у матери были не бедные родственники, которые иногда дарили нам какие либо не дешевые вещи. И вот однажды (где то в 2001 году) эти самые родственники, дарят нам компьютер «Байт»(советский аналог ZX Spectrum 48k). Радости моей не было предела! Сразу же я начал, запускать на нем игры. Игры на этом компьютере загружались с обычных аудиокассет с магнитной лентой. Загрузка одной игры длилась примерно 5 минут и с не малой вероятностью, могла прекратиться из-за некачественного сигнала. Чтобы увеличить вероятность успешной загрузки, мне приходилось протирать спиртом и регулировать положение считывающей головки магнитофона. Весь этот шаманизм при загрузке, длительность загрузки и невозможность сохраняться в играх, привели к тому, что постепенно я начал терять интерес к играм. Но вместе с «Байт»-ом мне также подарили книгу, по работе с этим компьютером. Я решил прочитать эту книгу, чтобы узнать больше о возможностях «Байт»-а. В книге оказался учебник по встроенному в «Байт» языку программирования «Бэйсик».
Читать дальше →

Я работаю программистом в компании, но свои 50 лет хочу встретить иначе

Reading time8 min
Views68K
У меня есть мечта – лет в 50 выйти на пенсию, сидеть на берегу моря и программировать для какого-нибудь проекта. Бесплатно и для души…



Сейчас я сижу на пляже и пишу код за деньги. Мне 34. Я во Вьетнаме. Передо мной столик с ноутбуком, надо мной — навес пляжного бара, слева – славный город Нячанг, а справа – волны Южно-Китайского моря. К этому столику в пляжном баре я шел последние пять лет.
Читать дальше →

Дейкстра: Величайшей победой Запада в холодной войне над СССР был переход на IBM — myth busted

Reading time3 min
Views80K
Начнем с этой всем известной фразы. Итак, были отечественные крутые теплые ламповые (часто в буквальном смысле) наработки, уникальные, созданные талантами. А потом руководство завело бульдозер, который срыл все это подчистую, и засадил все безликими IBM. Так меня учили. Но по мере того, как мне попадались старые книги по программированию (а отчасти я сам свидетель той эпохи — о СССР я знаю не по рассказам), эта картина стала рушиться. У меня сейчас под рукой три книги, и мы используем их. Итак:


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

Финансовая независимость, мой путь

Reading time5 min
Views114K

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


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

Коты в коробочках, или Компактные структуры данных

Reading time12 min
Views29K

image


Как быть, если дерево поиска разрослось на всю оперативку и вот-вот подопрет корнями соседние стойки в серверной? Что делать с инвертированным индексом, жадным до ресурсов? Завязывать ли с разработкой под Android, если пользователю прилетает «Память телефона заполнена», а приложение едва на половине загрузки важного контейнера?


В целом, можно ли сжать структуру данных, чтобы она занимала заметно меньше места, но не теряла присущих ей достоинств? Чтобы доступ к хэш-таблице оставался быстрым, а сбалансированное дерево сохраняло свои свойства. Да, можно! Для этого и появилось направление информатики «Succinct data structures», исследующее компактное представление структур данных. Оно развивается с конца 80-х годов и прямо сейчас переживает расцвет в лучах славы big data и highload.


А тем временем на Хабре найдется ли герой, способный пересковоговорить три раза подряд
[səkˈsɪŋkt]?

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

Конференция DEFCON 19. Начальство любит Excel, хакеры тоже

Reading time14 min
Views6.6K
Приветствую всех! Кто из присутствующих говорит на испанском? Замечательно! Мы завоевали этот приз, потому что утром наша команда, команда Испании, приняла участие в футбольном турнире и получила этот трофей, так что я извиняюсь перед Аргентиной и Южной Африкой за то, что этот приз выиграли мы. Благодарю всех, что пришли на нашу презентацию. Прежде всего, разрешите представить вам моего друга Хуана Корридо, а — я Чема Алонсо. Мы работаем в маленькой испанской компании Informatica64, и перед тем, как начать разговор по теме, я хочу представить нашу страну.

Arc — система контроля версий для монорепозитория. Доклад Яндекса

Reading time11 min
Views55K
Системы контроля версий уже давно стали повседневным инструментом разработчика. В больших монорепозиториях требования к ним оказываются весьма специфическими. Из-за этого компании либо адаптируют существующие решения, как это делает Facebook с Mercurial и Microsoft с Git, либо разрабатывают собственные системы: Piper и CitC в Google и Arc VCS в Яндексе.

В докладе разработчик Владимир Кихтенко kikht рассказывает, зачем Яндексу понадобилась собственная система контроля версий и как она работает. Рассмотрим её со стороны рядового разработчика: как получить доступ к исходному коду, отвести ветку для разработки и интегрировать изменения в общую кодовую базу. Заглянем под капот — узнаем про внутреннее представление данных и их отображение в виртуальной файловой системе с рабочей копией. Обсудим трудности при реализации функций VCS в виртуальной файловой системе и при ленивой загрузке данных. Поговорим о том, как обеспечивать надежность серверной инфраструктуры репозитория. В конце можно посмотреть неофициальную запись доклада.

— Всем добрый день, меня зовут Владимир. Вы все слышали выступления о том, что не стоит писать велосипеды. Мой доклад будет с другой стороны баррикад.
Читать дальше →

К чёрту мотивацию, вам нужна дисциплина

Reading time4 min
Views128K
Если вы желаете что-то сделать, то есть два способа этого достичь.

Первый, более распространённый и в значительной мере неправильный вариант — попытаться мотивировать себя.

Второй, весьма непопулярный, но абсолютно правильный выбор — воспитание дисциплины.

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

В чём же разница?
Читать дальше →

Советские «Эльбрусы» — обзор архитектуры

Reading time28 min
Views22K
image

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

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

Так что автор из свойственной ему любознательности попытался разобраться с доступной документацией и составить более — менее цельную картину. Если читателю это интересно — добро пожаловать под кат.
Читать дальше →

Пишем интерпретатор скрипта и стековую машину

Reading time15 min
Views70K

В этой статье речь пойдет о довольно необычном проекте. Однажды меня посетило желание написать свой интерпретатор какого-нибудь скриптового языка и исполняющую машину для него. Просто для того, чтобы посмотреть, как оно внутри работает. Такая цель звучит не очень благородно и я отложил затею в долгий ящик, т.к. мне хотелось более полезной формулировки.
Как-то раз, один мой знакомый посетовал, что нужно написать скрипт автоматизации на WSH, но ни VBScript, ни Javascript он не знает. Тут «благородная» формулировка возникла сама собой… нужно помочь товарищу. В результате был написан компилятор и исполняющая машина, позволяющая исполнять скрипты для Windows Script Host, не прибегая к VBScript и JS. Под катом — краткая предыстория проекта и его внутреннее устройство и сам язык программирования.
Читать дальше →

Российские ученые разработали инновационный томограф

Reading time9 min
Views47K


Вот и близятся новогодние праздники, а вместе с ними и сроки подачи отчётов по выделенным на исследования грантам. Именно в это время наступает пора чудес и неожиданных открытий. Так, пару дней назад в сети появились статьи с громкими заголовками: «Российские ученые сделали инновационный томограф!», «Российские инженеры создали новый МРТ-томограф для людей с лишним весом» со ссылками на сайт МИСиС. Давайте разберемся, так ли это, и почему в российских больницах стоят только зарубежные аппараты.
И правда, почему?

Information

Rating
Does not participate
Registered
Activity