Excel, будь ты проклят: “1/2”+1=45660

Пишу этот текст совершенно без намерения оскорбить авторов Excel. Это фантастически успешный софт, который по праву считается золотым стандартом среди табличных редакторов. Тем не менее, в этом году Excel уже стукнуло 40. В таком почтенном возрасте его семантика всерьёз страдает из-за костылей, которые накапливались не один десяток лет, обеспечивая обратную совместимость.

Одно из самых интересных дел, которыми мне приходится заниматься на работе — это обратная разработка Excel. Я выискиваю причуды в его поведении и решаю, как поступать с ними в нашем фирменном табличном редакторе. Благодаря моему повседневному труду, наши пользователи, возможно, и не подозревают, сколько недокументированных грехов совершила Microsoft ради совместимости. Приглашаю вас одним глазком взглянуть на те ужасы, с которыми мне приходится тягаться — и тогда вы тоже станете бояться Microsoft Excel — не потому, что чего-то не знаете, а наоборот, так как знаете слишком много.

Читать

Немного о командлетах PowerShell

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

Для тех у кого есть опыт программирования на .Net по факту появился интерфейс к методам и свойствам объектов приложений и ОС.

Читать

Своя ОС?

Дарова! Сегодня я поделюсь с вами опытом, как я пытался написать собственную ОС и, что из этого вышло. Запасайтесь чайком с печеньками и присаживайтесь поудобнее! Пора окунуться в 16ти битный мир…


С чего начать?

Я начал с изучения ЯП ассемблера. Далее нам понадобится hex редактор (да, я его тоже использовал) и редактор образов дисков. И последнее, что понадобится виртуальная машина. Конкретных рекомендаций давать не буду, но я использовал:

  • HxD hex-редактор
  • ЯП — fasm
  • ultraISO в качестве программы для создания и редактирования образов дисков
  • VMBox — виртуальная машина, хотя во многих туториалах и гайдах использовали qemu (я просто с ним не разобрался)
Читать

Ошибочка вышла

Американский разработчик Джозеф Тартаро на конференции DEFCON 2019 (8-11 августа) рассказал о том, как он нашёл способ обмануть дорожные камеры и не платить за парковку. Однако попытка сэкономить дорого обошлась программисту: ему начали приходить чужие штрафы.

Тартаро зарегистрировал автомобильный номерной знак с надписью NULL (в США допускаются любые комби­нации букв и цифр), которая в компьютерных системах, в том числе в базах данных, используется в качестве идентификатора отсутствующего или неприсвоенного значения. 

Читать

Мнение разработчика о формате PSD

Здесь я хотел бы остановиться на минутку и рассказать о формате Adobe PSD. PSD не является хорошим форматом. PSD даже не является плохим форматом. Назвать его так было бы оскорблением для других плохих форматов, таких как PCX или JPEG. Нет, PSD — чудовищный формат. Несколько недель работы над этим кодом возвели мою ненависть к PSD до уровня яростного огня, пылающего лютой страстью миллиона солнц.

Если есть два способа что-то сделать, PSD использует оба, в разных местах. Вдобавок он создаст ещё три способа, которые бы не пришли в голову любому здравому человеку, и использует их заодно. PSD возводит несогласованность до уровня искусства. Почему, например, он решил, что именно эти блоки должны быть выровнены на четыре байта, и это выравнивание не должно быть включено в размер? Другие блоки в других местах либо не выравниваются, либо включают выравнивание в размер. Тут, впрочем, оно не включено. Любой из этих трёх способов подошёл бы. Разумный формат остановился бы на одном. PSD, конечно же, использует все три, и другие. Читать

Чужой код

Меня недавно спросили, почему программисты ненавидят работать с чужим кодом. Долго думал, как донести до обычного пользователя всю суть пиздеца. Решил привести небольшую аналогию:

Вот представь, что тебе доверили достроить за другим прорабом лабораторию на острове. Ты приходишь на объект, а там кроме недостроенного здания: огромный вентилятор (размером со здание), большой воздушный шар и комната набитая швабрами. Почесав голову, ты разбираешь этот хлам и доделываешь лабораторию. Сдаешь объект ученным, но через 5 минут они выбегают с криком: «УТЕЧКА ЯДОВИТОГО ГАЗА!!!».

— Как так-то, блять! Должно же работать! — в отчаянии кричишь ты и звонишь прошлому прорабу:

— Вася, у нас ядовитый газ потёк! В чем проблема?

— Не знаю, должно было все работать. Что-то в проекте менял?

— Немного, швабры вынес…

— Швабры потолок держали!
Читать

Блокчейн

Отличную статью на тему «как это работает» запостили на хабре. Т.к. частенько статьи оттуда «пропадают», делаю перепост.
Оригинал тут: https://habrahabr.ru/post/340206/

 

Про Blockchain сегодня не пишет только ленивый. Существует огромное количество статей разной степени понятности и полезности. Это очередная из них. Нам захотелось создать максимально простой, но работающий блокчейн и написать кратко, но понятно для неспециалистов, как же эта собака этот блокчейн работает. Так родился проект BaumankaCoin, исходники которого можно загрузить c GitHub-а.

Многие люди представляют себе технологию блокчейн и криптовалют как некий мега rocket science. Безусловно, чтобы понять все тонкости и нюансы – потребуется потратить много времени; но в действительности данная технология, если разобраться, оказывается гораздо более простой для понимания, чем принято считать. Реализовав свой coin мы намеревались помочь людям понять «на пальцах» устройство данных технологий.

Читать