Pull to refresh
74
0
Роман @RomeoGolf

инженер-программист

Send message

Редизайн Figma: жутко неудобно и жутко интересно…

Level of difficultyEasy
Reading time5 min
Views5.5K

Недавно произошёл редизайн Figma⚹¹ и я решил поделиться своим очень важным мнением :)

Я UX/UI-дизайнер, то есть целевая аудитория Фигмы. На протяжении многих лет это мой основной инструмент работы, я облазил её вдоль и поперёк, был в числе первых бета-тестеров, кто пощупал авто-лэйауты и переменные. И теперь когда я заручился вашим доверием, могу переходить к критике и похвале интерфейса.

Внимание, в конце статьи есть полезные ссылки!

Читать
Total votes 10: ↑8 and ↓2+9
Comments7

Небольшая доработка QMap в Qt

Level of difficultyEasy
Reading time6 min
Views2.2K

Решаем одну старую проблему с QMap. Есть многоуровневый QVariantMap, то есть один вложен в другой и так много раз. И надо иметь возможность изменять в любом месте иерархии ключ/значение.

Штатные возможности Qt 4 не предусматривают изменение части дерева, только полная перезапись целиком всей ветки дерева (в Qt5,6 не знаю).

Но у нас появилась реализация, выносим на ваш суд и делимся результатами.

Читать далее
Total votes 4: ↑3 and ↓1+2
Comments23

Git. Скачем между ветками как древесные лягушки

Level of difficultyEasy
Reading time6 min
Views18K

Статей на тему много, но, видимо, недостаточно: время от времени слышу от коллег (последние 10 лет, в 4-х разных компаниях):

«Не могу пошарить экран с кодом, у меня другая ветка сейчас».

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

«Стаскивать ветку для просмотра ПР? Это же неудобно, надо "стэшить" изменения, ветку переключать».

Читать далее
Total votes 72: ↑72 and ↓0+86
Comments65

Игра в танграм и её алгоритмический потенциал

Reading time9 min
Views2.3K

Некоторое время назад я задумывался о том, возможно ли мышление без языка, только на уровне визуальных образов. В отличие от естественного языка, пиктографическая или геометрическая знаковая система в гораздо меньшей степени подвержена полисемии и ошибкам, связанным с неверной интерпретацией последовательности или контекста. Может ли быть, что визуальный язык окажется для некоторых машин/роботов более понятным, чем лингвистический? Размышляя об этом, я нашёл на Хабре статью уважаемого @FirstJohn в блоге компании FirstVDS «Семь дощечек мастерства на службе ML» от февраля 2023 года, рассказывающую об алгоритмическом применении танграма. Ниже я подробнее расскажу об этой игре, а также о том, как её сегодня пытаются применять в распознавании образов и при решении других задач, связанных с комбинаторикой. 

Читать далее
Total votes 17: ↑15 and ↓2+20
Comments4

Пробы на роль Архитектора: вступление

Level of difficultyMedium
Reading time7 min
Views12K

Я тут наткнулся на старую почту с приглашением на собеседование. С пожелтевшими гифками в подписи и просроченным сургучом сертификатов. Дело давнее, пандемийное, так что, думаю, можно рассказывать. Я один не смотрю на сроки NDA, когда подписываю? На всякий случай стоит обезличить и переделать. Тем более, что бонуса за продвижения бренда нет, а наказание всегда найдётся. Так что у нас тут анонимный клуб найма лиц похожих на архитекторов.

Читать далее
Total votes 47: ↑46 and ↓1+53
Comments5

Предварительные секции: что спрашивают у разработчиков С++ на собеседовании в Яндексе

Level of difficultyMedium
Reading time5 min
Views8.8K

Хабр, привет! Меня зовут Владимир Михайлов, я занимаюсь бэкендом в Яндекс Такси — мы создаём внутренние продукты, которые используют в разных юнитах Яндекса. Также я работаю наставником на курсах «Разработчик C++» и «C++ для бэкенда» в Яндекс Практикуме. 

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

Читать далее
Total votes 20: ↑11 and ↓9+5
Comments47

systemD с 0 до 1: библия сисадмина

Level of difficultyMedium
Reading time27 min
Views13K


Что бы кто не говорил, systemD становится стандартом систем инициализацией в линуксе. И с 80% вероятностью все сервера будут с systemD. Не факт, конечно, есть и личные сервера, на которых может стоять хоть Gentoo, хоть Devuan, хоть NixOS.

Некоторые дистрибутивы хотят даже перейти с загрузчика Grub на systemd-boot! Потому знать, как работать с данной системой инициализации, должен каждый сисадмин и просто программист, ибо сейчас он практически везде.

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

А также напишем небольшой скрипт на Python для автомизации некоторых задач. Приятного чтения, господа линуксоиды и просто пользователи!
Читать дальше →
Total votes 45: ↑40 and ↓5+41
Comments11

Как IT-специалисту составить резюме: советы рекрутеров

Reading time3 min
Views13K

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

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

Читать далее
Total votes 23: ↑18 and ↓5+31
Comments42

Руководитель vs команда: что казалось невозможным, стало реальностью

Level of difficultyEasy
Reading time8 min
Views4.2K

Говорят, ковид не проходит бесследно1 и оставляет изменения в организме. Не прошёл он бесследно и для большинства компаний — от самых небольших до огромных корпораций. Удалённая работа сильно изменила отношения в компаниях, повлияла на стиль руководства, корпоративную культуру, традиции и всё, что годами складывалось в командах. В умах и офисах до сих пор разброд и шатание: кто-то сохранил удалённую работу, кто-то принудительно загоняет сотрудников в офис, кто-то делает это не принудительно и тратит огромные суммы на мотивацию, а кто-то на удалёнку по сути и не уходил, но всё равно оказался в кругу изменений. А главное, изменились отношения команды и руководителя: теперь формула «я начальник — ты дурак» не работает. Поговорим об изменениях безоценочно, чтобы понять, какие они — команды, которые, возможно, для нас по-прежнему остаются незнакомцами даже спустя 5, 7, 10, 15 лет совместной работы. 

Читать далее
Total votes 12: ↑10 and ↓2+16
Comments0

4 года холакратии — честный отзыв о работе без руководителей

Reading time10 min
Views25K

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

Читать далее
Total votes 75: ↑68 and ↓7+76
Comments86

Три недели кодирования экономят два дня проектирования

Level of difficultyMedium
Reading time14 min
Views21K

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

Писать постановку, но чуть-чуть
Total votes 62: ↑60 and ↓2+71
Comments72

Программист никому не должен доверять, и даже самому себе

Level of difficultyMedium
Reading time7 min
Views4.6K

Программисты должны быть параноиками.

  • «Я дважды проверил код»
  • «Код проходит все тесты»
  • «Ревьюер одобрил мой код»

«Так ли корректен мой код?»

Писать код корректно трудно, а подтвердить корректность кода невозможно.
Вот некоторые из причин этого:

  • Всеобщность: даже если код правильно вёл себя один раз, будет ли он вести себя так во всех случаях на всех машинах и всегда?
  • Ложное прохождение теста: непрохождение тестов указывает на наличие багов, но прохождение тестов не гарантирует их отсутствия.
  • Отсутствие определённости: можно написать формальное доказательство корректности кода, но теперь нужно задаться вопросом, корректно ли доказательство. Потребуется доказать доказательство. Эта цепочка проверки проверок никогда не закончится.

Безумно было бы стремиться к определённости корректности кода. Баг может скрываться в зависимости, которую вы никогда не найдёте. Однако отчаиваться не стоит, всё равно можно снизить вероятность багов, расширяя своё понимание и внимательность.
Читать дальше →
Total votes 26: ↑26 and ↓0+34
Comments4

Разработка интерфейса для Windows — это боль

Reading time5 min
Views18K

Последние несколько дней я пытался найти библиотеку, которая бы позволила мне писать на C++ программы с GUI. Мои требования были довольно просты:

Достаточно только поддержки Windows

Разрешено коммерческое использование

Простая стилизация, в том числе и тёмный режим

Результатом должен быть единый файл .exe размером меньше 40 МБ без или с минимальным количеством зависимостей

Написание части программы с GUI не должно занимать больше времени, чем сама функциональность

Читать далее
Total votes 39: ↑34 and ↓5+42
Comments204

Микросервисы в представлении среднего разработчика, и как всё на самом деле

Level of difficultyMedium
Reading time11 min
Views41K

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

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

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

погрузиться в микросервисы
Total votes 206: ↑202 and ↓4+225
Comments194

Культура найма в США. Как приглашать и увольнять сотрудников и не бояться, что тебя засудят

Level of difficultyEasy
Reading time9 min
Views6.5K

Привет всем, меня зовут Руслан Галифанов, я основатель IT-компании VEA, которая создала облачную систему для полиграфистов HelloPrint. В силу специфики своей работы я часто бываю за рубежом, большое количество времени провожу в США. Мне всегда было интересно разобраться, как устроено американское трудовое право, так как я по образованию юрист. Благодаря своим друзьям, ведущим бизнес в Америке, я смог понять, чем культура найма в Америке отличается от российской. Рассказываю об этом. 

Трудовые отношения в современной России и ближнем зарубежье опираются на советское право, которое одним из своих главных достижений считало защиту рабочих и других наемных сотрудников (пролетариата). Отсюда берут свое начало 40-часовая рабочая неделя, право на отпуск, обязательная причина для увольнения. Можно долго дискутировать о реальном положении рабочих (и особенно крестьян) в СССР, но стремление к прогрессивному трудовому законодательству очертило те рамки, в которых работают люди, родившиеся уже после развала Союза. 

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

Читать далее
Total votes 27: ↑25 and ↓2+29
Comments29

Что я думаю о Lua после релиза проекта на 60,000 строчек кода?

Level of difficultyEasy
Reading time15 min
Views18K

Интервью-ретроспектива с ведущим программистом видео-игры Craftomation 101 о использовании Lua как основного языка в проекте на 60,000 строчек кода.

Читать далее
Total votes 22: ↑22 and ↓0+25
Comments10

Конверсия 1 собеседование на 500 откликов на западном рынке. Как так вышло и чем грозит?

Level of difficultyEasy
Reading time9 min
Views47K

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

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

Читать далее
Total votes 134: ↑87 and ↓47+61
Comments345

Уникальный планшет со съёмным процессором в DDR2-слоте: что за устройство ценой в 100$ сделали китайцы в 2010?

Level of difficultyEasy
Reading time9 min
Views12K
image

Друзья, я почти уверен, что большинство читателей не видели такого диковинного девайса, который будет в сегодняшней статье! Едва ли где-то ещё можно найти планшет, у которого процессор с ОЗУ выполнен в виде съёмного модуля, который стоит в слоте DDR2-памяти, а само устройство настолько просто и гениально спроектировано, что фактически построено на базе USB-хаба и AC97-кодека. Кроме того, планшет построен на базе редкого и диковинного ARMv5 процессора, способного загружаться в Android, Linux и Windows CE. Недавно читатель с Хабра подарил мне такой планшет в нерабочем состоянии и я его оживил. Интересно узнать о том, что за интересный такой девайс и как я его ремонтировал? Тогда добро пожаловать под кат!
Читать дальше →
Total votes 50: ↑47 and ↓3+63
Comments44

Почему нельзя парсить вывод ls(1)

Level of difficultyEasy
Reading time8 min
Views11K

Команда ls(1) достаточно хорошо справляется с отображением атрибутов одного файла (по крайней мере, в некоторых случаях), но когда просишь у неё список файлов, возникает огромная проблема: Unix позволяет использовать в имени файла почти любой символ, в том числе пробелы, переносы строк, точки, символы вертикальной черты, да и практически всё остальное, что вы можете использовать как разделитель, за исключением NUL. Существуют предложения по «исправлению» этой ситуации внутри POSIX, но они не помогут в решении текущей ситуации (см. также, как правильно работать с именами файлов). Если в качестве стандартного вывода не используется терминал, в режиме по умолчанию ls разделяет имена файлов переносами строк. И никаких проблем не возникает, пока не встретится файл, в имени которого есть перенос строки. Так как очень немногие реализации ls позволяют завершать имена файлов символаи NUL, а не переносами строк, это не позволяет получить безопасным образом список имён файлов при помощи ls (по крайней мере, портируемым способом).

Читать далее
Total votes 23: ↑21 and ↓2+26
Comments15

ИТ Магистратура и разработка. Все очень плохо?

Reading time7 min
Views9.3K

Привет, Хабр! Приспичило мне, значит, тут на четвертом десятке стать студентом. Я долго думал, надо ли мне вообще оно, или все же подождать и отпустит, но год уже не отпускает, а именно тогда я впервые начало задумываться об этом.

Для этого прошерстил агрегаторы, зашел на сайты вузов, изучил имеющиеся учебные планы, собрал все в одном месте. Но в процессе сбора и анализа направлений впал в ступор, так как не смог ответить на простой вопрос – а стоит ли оно действительно того и все ли направления одинаковы полезны?

Читать далее
Total votes 8: ↑6 and ↓2+4
Comments15
1
23 ...

Information

Rating
Does not participate
Location
Свердловская обл., Россия
Date of birth
Registered
Activity