Как стать автором
Обновить
30
0

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

Отправить сообщение

Шахматы Bauhaus

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров8.8K

Функция определяет форму

Удивительно, но сто лет назад дизайнеры были интереснее, смелее и прогрессивнее современных.

Читать далее
Всего голосов 49: ↑56 и ↓-7+63
Комментарии32

48 лет вместе с Zilog Z80

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров20K

Один из ранних экземпляров Zilog Z80 с датой выпуска в июне 1976 года. Геннадий Швец

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

Недавно Zilog объявила, что последние заказы на оригинальные Z80 принимаются до 14 июня этого года. Легендарный Z80 продержался в производстве почти 48 лет.
Читать дальше →
Всего голосов 97: ↑112 и ↓-15+127
Комментарии58

Выкиньте свой husky

Время на прочтение1 мин
Количество просмотров14K

А вы знаете, что миллионы человек тащат лишнюю npm-зависимость зря? Сегодня я покажу вам, как настроить самые что ни на есть "lean" хуки для гита.

Читать далее
Всего голосов 32: ↑31.5 и ↓0.5+31
Комментарии23

Почему FAR — центр моей компьютерной вселенной

Время на прочтение4 мин
Количество просмотров51K

Какую программу вы обычно запускаете сразу после загрузки операционной системы? Кто-то сразу стартует браузер — поглядеть, кто там сегодня в Интернете (на Хабре) неправ. У многих — это редактор кода: «Я, как утром встал, сразу за дрель!». Возможно, вы сначала привычно открываете мессенджеры и почту — проверить, что там нового и важного.

Я обычно сразу после запуска операционки открываю свой Любимый Файловый Менеджер. Это «переходящее звание» — в разные периоды моего компьютерного прошлого этой чести «удостаивались» разные приложения с классическим двухпанельным интерфейсом. Сначала это был простой, но универсальный Norton Commander. Потом появился DOS Navigator со всяческими классными фичами: CD-плеер, телефонная книга с дозвоном по модему, встроенный табличный редактор и прочие прекрасные и поразительные для тех лет вещи.

Когда Windows прочно вытеснил DOS и все понемногу забыли про файл autoexec.bat, звание моего любимого файлового менеджера плавно перешло к Total Commander. Он продержался довольно долго, но в какой-то момент в мою жизнь буквально ворвался FAR...

Читать далее
Всего голосов 165: ↑168 и ↓-3+171
Комментарии578

Что делать, если кандидат оказался сеньором или психом: советы на случай форс-мажоров

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров73K

Меня зовут Александр Гирев, я Android-разработчик и технический интервьюер. В одной компании я выполнял роль interview expert: следил за качеством собеседований, готовил рекомендации и матрицы вопросов, обучал начинающих интервьюеров.

Однажды на интервью я спросил кандидата, был ли у него опыт проведения технических собеседований. Кандидат спросил: «Что за опыт — задать пару технических вопросов?». Услышав это, я слегка подвис, ведь я считал интервью серьёзным навыком, почти искусством.

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

Читать далее
Всего голосов 73: ↑65 и ↓8+57
Комментарии150

Legacy: поддерживать нельзя переписать

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров3.5K

Легаси — реальность любого программиста. Объясняем, как софт становится легаси и почему это нормально, а также какие существуют плюсы при работе с легаси. Не всегда стоит относиться к легаси как к проклятию, стоит взглянуть на него как на естественный этап жизненного цикла программного обеспечения. Меня зовут Алексей Рузин, я уже 27 лет работаю и знаю, как работать с легаси.

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

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

Читать далее
Всего голосов 10: ↑12.5 и ↓-2.5+15
Комментарии9

Becoming a UX designer: why is it worthy and what do you need to start

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров249

If you are at the beginning of your educational path in IT, or contemplating about making changes in your career and starting learning UX design, you might have some doubts and uncertainties on whether UX design is something worth studying and working in right now. We can dispel your doubts: UX designers are very required in the majority of companies, since they help to make products appealing to users, thus raising the companies income and enhancing their reputation. Professionals in this sphere are in high demand right now, and

Read more
Всего голосов 1: ↑1 и ↓0+1
Комментарии1

Как программировали в 1969 году

Время на прочтение6 мин
Количество просмотров21K

Я провёл это интервью со своей матерью Марианной Эрнерфельд в декабре 2018 года. В посте приведён немного урезанный перевод. Полное интервью на шведском языке можно прочитать здесь.

Почему ты захотела стать программистом?


Я решила стать программистом в 1965-66 годах. Прочитав статью, где на иллюстрации была показана блок-схема, я подумала: «это моё». Когда я выпустилась из старшей школы в 1967 году, не было ни одного университета, обучающего программированию, но существовал полугодовой курс в Сольне [прим. пер.: Сольна — коммуна в Швеции], который превратился в годовой курс, и на него могли выдать студенческий заём. Поэтому я подала на него заявление.

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

Однако у SJ оказалось 700 кандидатов на 50 мест, поэтому они устроили суровый процесс отбора с различными тестами. И мне удалось пройти их! Мне нужна была зарплата, чтобы оплачивать собственное жильё, так что я приняла предложение.

Выяснилось, что руководство SJ было очень недовольно тем, что брошюры о стажёрской программе рассылали студентам и мужского, и женского пола! Хотя в программу приняли и не так много девушек, но их всё равно было приличное количество.
Читать дальше →
Всего голосов 65: ↑64 и ↓1+63
Комментарии28

Этот опасный рефакторинг

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров6.4K

Ошибки во время рефакторинга могут дорого обойтись. Модернизация, ведущая к отказу системы, или внесение новой функциональности параллельно с ошибочными правками явно принесут вред. Но степень вреда может быть разной.
Читать дальше →
Всего голосов 41: ↑39 и ↓2+37
Комментарии19

История «Dark Mode»: как «баг» стал «фичей»

Время на прочтение15 мин
Количество просмотров11K

«Темная тема», «темный режим», «ночной режим», «дарк мод» — опция, которая сейчас есть практически в каждой операционной системе, приложении, браузере, сайте. Она окрашивает фоновые элементы графического интерфейса в темный цвет, а текст — в белый.

Многие текстовые редакторы и интегрированные среды разработки (IDE) предлагают темную тему по умолчанию. Например, популярный в веб-разработке (и не только) Sublime Text.

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

Тем не менее отображение информации белым по темному существует очень давно — еще до появления технологии ЭЛТ, на смену которой впоследствии пришли ЖК и OLED.

Читать далее
Всего голосов 19: ↑18 и ↓1+17
Комментарии17

Смысл жизни с точки зрения программиста-буддиста

Уровень сложностиПростой
Время на прочтение24 мин
Количество просмотров11K

Несколько лет тому назад я опубликовал на Хабре статью под названием "Буддизм с точки зрения программиста". Этот пост имел огромную популярность, читатели приняли его с большой теплотой. До сих пор я часто получаю от людей сообщения с благодарными отзывами на него и рассказами о том, как после прочтения этого текста поменялись их взгляды на жизнь.

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

Читать далее
Всего голосов 69: ↑60 и ↓9+51
Комментарии129

Сборка мусора в V8

Время на прочтение19 мин
Количество просмотров5.4K

В этой статье мы детально разберем процесс сборки мусора движком V8. Познакомимся с понятиями поколений, Minor и Major Garbage Collection, посмотрим, как аллоцируются, трассируются и маркируются объекты в памяти. Что происходит с пустыми областями после очистки, и как выполняется сборка мусора в фоновом режиме. 

Читать далее
Всего голосов 15: ↑15 и ↓0+15
Комментарии3

Королева кода: как Грейс Хоппер сделала компьютеры доступнее

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров3.8K

Имя программистки Грейс Хоппер не на слуху, однако именно она сыграла ключевую роль в превращении компьютеров из недоступных вычислительных машин в удобные для пользователя инструменты. В кругах специалистов ее называют «невероятной Грейс», «бабушкой софта» и даже «королевой кода». Эти громкие звания Хоппер получила благодаря своей работе над первым компилятором, а также одним из первых языков программирования. Рассказываем о ее жизни и изобретениях. 

Читать далее
Всего голосов 20: ↑18 и ↓2+16
Комментарии3

Вперед в будущее: Wayland против X11

Уровень сложностиСредний
Время на прочтение38 мин
Количество просмотров28K

Доброго времени суток, дорогие читатели! Сегодня я затрону одну интересную тему — графические дисплейные сервера и протоколы в Linux. В этой статье я расскажу вам о архитектуре X11 и Wayland, историю их создания и наконец-то сделаем вывод: Иксы на мороз, или вейланд на помойку?


Еще в далеком 2016 году вышла Fedora 25 с окружением GNOME 3.22 на базе дисплейного сервера Wayland. А в RHEL 10 выкинут X11 на мороз. Релиз RHEL 10 намечен на 2025 год, CentOS Stream 10 — на 2024 год. Для обеспечения работы приложений, требующих X11, будет использоваться XWayland. Таким образом, в 2029 году (к моменту окончания первого этапа поддержки RHEL 9) стоит ожидать появление первого аппаратного обеспечения, не поддерживающего X11.


И как я думаю — будущее за Wayland. Но пока X11 является стандартом. Давайте разберем это!


Читать дальше →
Всего голосов 98: ↑91 и ↓7+84
Комментарии115

Интервью с мамой, банковским программистом на COBOL'е

Время на прочтение7 мин
Количество просмотров56K


Фото из Гугла, это не мама автора


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


Объясню немного


Мир банковского программного обеспечения — это другая вселенная. Она сильно отличается от той, к которой привыкло большинство из нас. Я публикую этот пост на HN и на Reddit. Публикую интервью не в виде вопросов-ответов, а в виде рассказа. Я добавил некоторые вопросы и ответы в нижнюю часть поста.


1991


Год, когда она начала внутреннее обучение в банке Nordea, который тогда назывался Nordbanken (Северный банк). В 2001 году его переименовали в Nordea. Во время обучения она должна была проходить различные тесты, в первую очередь тест IQ, чтобы показать, что она обладает интеллектом, достаточным для работы в этой области. Тест на психологическую устойчивость — что у неё достаточно нервов для этой специфической работы и тест на многозадачность, который она завалила с оценкой 22/100. Остальные тесты она прошла успешно и заняла одну из 16 доступных позиций.


Должность звучала «как программист мэйнфреймов IBM на языке COBOL», и до сих пор, уже 25 лет, моя мама работает на этой должности в том же банке.


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

Читать дальше →
Всего голосов 65: ↑64 и ↓1+63
Комментарии100

Сменный носитель информации: краткая история создания первых дискет

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров2.4K

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

Читать далее
Всего голосов 10: ↑9 и ↓1+8
Комментарии2

Замешиваем файлы в тэги. Часть 4

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров2.7K

Продолжаем создавать модуль ядра в Линукс на примере виртуальной файловой системы.

Часть 1: Описание задачи, Модуль ядра

...

Часть 3: Inode, Lookup

Часть 4: Inode-операции: symlink, unlink

Продолжаем разбираться
Всего голосов 5: ↑4 и ↓1+3
Комментарии3

Война браузеров. Netscape — пионер свободного интернета

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4.1K

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

Но так ли это задумывалось изначально?

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии18

Как работает протокол X11 на самом нижнем уровне

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров36K

X11 это тот механизм на чем работает весь графический интерфейс Unix подобных ОС.


Но мало кто знает как он работает на самом деле. Потому что с годами он оброс слоями и слоями библиотек, которые стремятся скрыть саму сущность протокола.


А протокол в своей сути прекрасен. Он лаконичен и почти совершенен.


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


А все книги и статьи по использованию X11 описывают это через библиотеки прокладки типа XLib и XCB, и даже, что хуже, GTK или Qt.


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


Как бы то ни было, если кому-то интересно как все работает на самом деле, пожалуйста под кат.

Читать дальше →
Всего голосов 201: ↑199 и ↓2+197
Комментарии182

Приручение WinAPI

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров3.3K

Позапрошлую заметку я начинал словами «вот уже 10 лет прошло…», а эту можно было бы начать «вот уже 20 лет прошло…». Хотя там речь шла лишь о выравнивании стека, а здесь – о целой организации взаимодействия программы с WinAPI. Помнится, здесь недавно в комментариях кто-то наивно удивлялся: зачем вы приводите устаревший и никому не интересный способ программирования через WinAPI? А как же иначе программа вообще может взаимодействовать со средой Windows, как не через вызовы ее стандартных функций? Через имеющиеся надстройки над WinAPI не все можно сделать.

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

В системной библиотеке языка PL/1-KT, который я использую, имеется обращение лишь к 28 функциям WinAPI и это вполне покрывает «обычные» возможности языка и можно было бы не заботиться о явных вызовах. Но увы, часто этого мало. И хотя нормальные люди ходят в двери, а не в окна (ах, какая свежая, искрометная шутка!), приходится в программах явно обращаться к функциям типа CreateWindow или CloseWindow. А это уже ну никак не входит в понятия языка.

Читать далее
Всего голосов 12: ↑11 и ↓1+10
Комментарии2
1
23 ...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность