Ненормальное программирование

  • ХабрахабрФото Программируем Arduino Uno на Rust: настраиваем среду и моргаем светодиодом

    Программируем Arduino Uno на Rust: настраиваем среду и моргаем светодиодом

    Кто-то из вас наверняка задавался вопросом: а нельзя ли программировать Arduino на чём-то более современном и удобном? Вот и я задавался. И нашёл Rust (не то, чтобы я о нём не знал). И на нём можно программировать микроконтроллеры AVR и платы Arduino, построенные на них. И здесь я расскажу о том, как настроить среду разработчика на Rust в Linux, GNU…

    Читать далее »
  • ХабрахабрФото ESM. Выходим за рамки

    ESM. Выходим за рамки

    Итак, работая над... ну не знаю... каким-нибудь замечательным генератором статики, вы, возможно, захотите импортировать в свой код зависимости напрямую из текстовых файлов, таких как: HTML, MD, CSS, SVG или JSON. Конечно, можно использовать бандлер с соответствующим лоадером. Но, допустим, ваш кодекс самурая велит вам - никаких лишних npm install xxx и промежуточных билдов! Только хардкор! Что делать? Выход есть. Сперва, как обычно, ссылочка…

    Читать далее »
  • ХабрахабрФото Нормальные алгоритмы Маркова как основание языка программирования

    Нормальные алгоритмы Маркова как основание языка программирования

    В этой статье хотелось бы поделиться мыслями о применении Нормальных Алгоритмов Маркова (далее по тексту: НАМ) в качестве основания для языка программирования. Заранее скажу, что представленный концепт ЯП не претендует на решение каких-либо «мировых» проблем программирования, не представляет собой замену существующим инструментам, это результат моих скромных исследований в области проектирования ЯП. К истории вопроса 20 век ознаменовался становлением и бурным…

    Читать далее »
  • ХабрахабрФото Подбираем скины в Counter-Strike: Global Offensive в цвет сумочки

    Подбираем скины в Counter-Strike: Global Offensive в цвет сумочки

    Многопользовательская Counter-Strike: Global Offensive наполнена различными раскрасками для оружия разной степени редкости и привлекательности. Некоторые игроки гонятся за уникальными скинами, а другие выбирают на основе субъективного вкуса. Помимо официальной торговой площадки Steam, скины можно купить на сторонних ресурсах, доверие к которым невелико. Но в обоих случаях нет фильтра по цвету. Вручную перебирать все варианты раскраски для всех видов вооружений очень…

    Читать далее »
  • ХабрахабрФото [recovery mode] Атака на String.hashCode: прообразы и коллизии

    [recovery mode] Атака на String.hashCode: прообразы и коллизии

    Как-то раз мне понадобилось несколько наборов строк с коллизией по хеш-коду. То есть таких, чтобы значение String::hashCode() совпадало для всех строк в наборе. Блуждание по интернету не дало результатов, примеров было мало и все они довольно однообразны. Поиск по словарям подарил забавную пару "javascript's".hashCode() == "monocle".hashCode(), но практической пользы не принёс. Полный перебор не рассматривался в виду скорой тепловой смерти…

    Читать далее »
  • ХабрахабрФото Продолжаем разгонять FizzBuzz

    Продолжаем разгонять FizzBuzz

    После написания первой статьи про FizzBuzz (которая неожиданно для меня стала выбором редакции на Технотексте 2021) у меня появлялись мысли о том, что можно бы еще ускорить, но все время было не до того. И тут мне прилетает перчатка. Так что пришлось расчехлить верный GCC, чтобы помериться кодом с @ChePeter. Пара замечаний перед тем, как окунуть руки в код: @ChePeter…

    Читать далее »
  • ХабрахабрФото [recovery mode] FizzBuzz по-пенсионерски

    [recovery mode] FizzBuzz по-пенсионерски

    Статья коллеги @qrdl про собеседование с написанием вариантов FizzBuzz очень понравилась. Но очень не понравился код, совсем не понравился. И после публикации технотекстов пришлось внимательно изучить https://habr.com/ru/post/540136/ и понять, разобраться в своем неприятии, ну и потренироваться самому. Мне >60 лет и первую часть своей карьеры я зарабатывал на более чем 20 языках, из которых пяток только ассемблеров. Но С среди…

    Читать далее »
  • ХабрахабрФото It is Wednesday, my java dudes, или насколько сложно сделать свою JVM

    It is Wednesday, my java dudes, или насколько сложно сделать свою JVM

    Что делать, если накануне переезда повысилась тревожность, а привычные методы не приносят успокоения? Конечно же вырабатывать дофамин через решение упоротых инженерных задач! Мне стало интересно - насколько тяжко было бы сделать свой интерпретатор байт-кода Java? И насколько сложно было бы научить его “новым трюкам”? Писать я буду на Rust, поэтому и проект, не мудрствуя лукаво, назвал Rjava. Зачем В основном…

    Читать далее »
  • ХабрахабрФото Онлайн-сервер для NFS Underground 2 своими руками. Часть 1

    Онлайн-сервер для NFS Underground 2 своими руками. Часть 1

    Привет, Хабр! Спустя 13 лет я решил рассказать как однажды начал писать dedicated-сервер для игры NFS Underground 2, как решил возродить функционал оригинального онлайн-сервера, закрытого ещё в 2007 году, и как получилось, что это всё ещё WIP, несмотря на килотонны написанного кода и сотни часов, проведённых в реверс-инжиниринге. Материал поделю на 3 части: в этой статье будет предыстория, причины и…

    Читать далее »
  • ХабрахабрФото Онлайн-сервер для NFS Underground 2 своими руками. Часть 1

    Онлайн-сервер для NFS Underground 2 своими руками. Часть 1

    Привет, Хабр! Спустя 13 лет я решил рассказать как однажды начал писать dedicated-сервер для игры NFS Underground 2, как решил возродить функционал оригинального онлайн-сервера, закрытого ещё в 2007 году, и как получилось, что это всё ещё WIP, несмотря на килотонны написанного кода и сотни часов, проведённых в реверс-инжиниринге. Материал поделю на 3 части: в этой статье будет предыстория, причины и…

    Читать далее »


Кнопка «Наверх»