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

Все потоки

Сначала показывать
Порог рейтинга
Уровень сложности

Тысяча первый пост про токсичные собеседования

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

… На этот раз без хейта, но с мемами.

Привет, Хабр! Меня зовут Леонид Калядин, я Cluster Data lead в МТС Диджитал. Однажды на собеседовании в очень известную компанию с моим знакомым случилась интересная история. После интервью он произнес всего одну странную фразу. «Я ответил все правильно, кроме тех вопросов, где нужно было ошибиться» Оказалось, что он дал верный ответ, а собеседующий начал утверждать обратное. В итоге моему другу отказали с формулировкой «У вас недостаточные знания SQL».

Вопрос при этом был простейший: «Какие поля можно вывести в SQL-запросе, при условии использования групповой функции?». Ответ друга: «Те, которые участвуют в группировке и результаты агрегации по другим полям». Внезапно собеседующий сотрудник сказал, что это не верно и вывести можно все поля. Вот так просто и безапелляционно он закончил интервью, не став ничего проверять в онлайн редакторе SQL-кода.

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

Читать далее

Илон Маск против OpenAI: Полная история от любви до ненависти

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

В 2015 Маск убеждал Сэма Альтмана не жалеть никаких денег на найм топовых спецов, чтобы спасти человечество от зловредного супер-ИИ от Google – а сейчас он публично обзывает его «лжецом, жуликом и мошенником». В 2018 Маск оценивал шансы OpenAI на успех как «нулевые» – а теперь он хочет выкупить компанию за $97 млрд. В этом лонгриде мы детально разберемся: как так вышло, что Илон сначала помог запустить самую революционную ИИ-компанию современности, а потом стал главным ее хейтером?

Читать далее

Автопилот на Raspberry Pi для тракториста за 300$

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


Автопилот больше не прерогатива крупных агрохолдингов с многомиллионными бюджетами. Мы разрабатываем доступную по цене и простую в сборке систему, которую может собрать и установить любой фермер. Всё, что нужно — Raspberry Pi 4 или 5, электромотор, несколько датчиков и немного инженерной смекалки.
Мы делаем технологии доступнее и теперь каждый фермер может превратить свой трактор или комбайн в умного помощника без переплаты — компоненты для сборки автопилота TractorPilot будут стоить от 300$ (программное обеспечение бесплатное), вместо 5000-10000$ за готовую систему, которая при этом ещё и будет уступать TractorPilot по функциональным возможностям.
Читать дальше →

Самые Эпичные Баги при Программировании Микроконтроллеров

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

У каждого программиста микроконтроллеров с годами кристаллизируется коллекция золотых багов. Некоторые из них весьма эпичные.

Самый типичный баг - это зависание прошивки.

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

Читать далее

Трансформация платформы данных: от пары кубов до хранилища > 30 Тб и 1000 ETL-процессов

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

Привет, Хабр! Меня зовут Наталья Горлова, я архитектор данных. Несколько лет назад мы в CDEK поняли, что продукты, на которых работало хранилище, перестали нас устраивать: не устраивала гибкость разработки и скорость поставки данных. C тех пор произошло множество изменений, которыми хочется поделиться с сообществом.

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

Читать далее

Отладка приложения, которое не хочет, чтобы его отлаживали

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров7.8K
Недавно я столкнулся с приложением, которое:

  1. Блокирует прикрепление к нему отладчиков.
  2. Выполняет преждевременный выход при попытках инъецирования кода.
  3. Приводит к вылету телефона целиком, если запустить её со включённым джейлбрейком (!).

По последнему пункту: кто вообще так делает???

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

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

Похоже, это приложение стало на удивление интересной комбинацией всего перечисленного.

Намного более сложной, чем можно было бы ожидать от обычного старого виджет-приложения.
Читать дальше →

Patchbox OS: виртуальный педалборд для гитариста из Raspberry Pi

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

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

В музыкальных магазинах продается какое-то неимоверное количество педалей, усилителей, процессоров. Чтобы в этом разобраться, нужно много времени. Я пошел другим путем. Погуглив, наткнулся на такую интересную вещь, как Patchbox OS — она позволяет создать множество виртуальных педалбордов и добиться хорошего звука. В этом посте поделюсь своим опытом использования такой системы.

Читать далее

Рваная, чудовищная функция, которая сломала математический анализ

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

На просторах англоязычного Интернета нашел еще одну вдохновляющую (лично меня по-крайней мере) статью. Машинный перевод, как всегда, оставляет желать лучшего, так что, как всегда, делюсь со всеми интересующимися своим авторским переводом. Оригинал здесь. Приятного чтения!

В конце XIX века Карл Вейерштрасс изобрел фрактальноподобную функцию, которая была осуждена математическим научным сообществом как "безобразное зло". Со временем она преобразила основы математики.

Читать далее

Nikon F4s — репортёрский плёночный флагман 1988 года

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров10K
Это первая 35 мм плёночная камера, оснащённая штатным автофокусом*. Из-за своего необычного вида, разработанного итальянским автомобильным дизайнером Джорджетто Джуджаро, и множества нововведений она заслуживает особого внимания. Давайте посмотрим на неё во всех подробностях спустя тридцать пять лет.


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

C++26 — встреча ISO в Хагенберге

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров21K
В середине февраля в Хагенберге состоялась встреча международного комитета по стандартизации языка программирования C++.



В этот раз прорабатывались следующие большие темы:
  • std::hive
  • Constexpr, ещё больше constexpr
  • Безопасность, контракты, hardening, профили, UB и std::launder
  • Relocate
  • #embed

Об этом и других новинках расскажу в посте

Стратегии деплоя: как мы пришли к использованию Argo CD

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

Привет, Хабр! Меня зовут Егор Салиев, я DevOps-инженер в провайдере IT-решений Hilbert Team. Сегодня хочу затронуть тему, которую недавно обсуждали на Kuber MeetUp в Selectel, и которая будет интересна инженерам, занимающимся настройкой CI/CD и деплоем. Рассмотрим, как со временем менялась практика развертывания приложений в Kubernetes. Обсудим переход от ручного процесса к автоматизации и сравним две модели деплоя: push и pull.

В результате мы дойдем до современного подхода — GitOps с Argo CD. Такой метод помогает компаниям стандартизировать процессы, уменьшить количество ошибок и сбоев, ускорить вывод продукта на рынок, а также сократить расходы на инфраструктуру.
Читать дальше →

Как реликтовое излучение подтверждает теорию Большого взрыва

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

Современное представление о Вселенной по большей части начало формироваться в начале 20-го века.

17 сентября 1912 года в статье The radial velocity of the Andromeda Nebula астроном Весто Слайфер впервые сообщил о проведении первого доплеровского измерения света далёких туманностей, природа которых тогда ещё была неясна. В своём отчёте Слайфер пишет: «Величина этой скорости, которая является наибольшей из наблюдавшихся до сих пор, поднимает вопрос о том, не может ли подобное смещение быть вызвано какой-то другой причиной, но я полагаю, что в настоящее время у нас нет другой интерпретации для этого». Три года спустя Слайфер написал обзор в журнале Popular Astronomy, в котором заявил: «Раннее открытие того, что большая спираль Андромеды имеет совершенно исключительную скорость -300 км(/с), показало имеющиеся на тот момент средства, способные исследовать не только спектры спиралей, но и их скорости». Слайфер сообщил о скоростях 15 спиральных туманностей, разбросанных по всей небесной сфере, причём все они, кроме трёх, имели наблюдаемые «положительные» (то есть рецессионные) скорости — проще говоря, удалялись от наблюдателя.
Читать дальше →

LXC теряли память и падали. И при чем же здесь tmpfs и journald?

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

Старый добрый Proxmox с его контейнерами и виртуалками - по-прежнему рабочая лошадка многих компаний. И если нарезать много-много мелких контейнеров, то может случиться, что память куда-то девается со временем, а контейнеры падают в OOM без очевидной причины. Причем не все. Причем иногда. И зачастую проще перезапустить и ехать дальше чем разбираться. А причина есть, и она оказалось довольно проста.

Читать далее

Ближайшие события

Первая клавиатура для первого айпада

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

Первому iPad в этом году стукнет 15 лет — даже трудно в это поверить. И так совпало, что мы с другом решили приобрести очень интересный аксессуар — клавиатуру, которая ещё и док-станцией является. Тогда, 15 лет назад, Apple всё ещё старались делать необычные девайсы, которые будут удобными и практичными в использовании (ладно, Magic Mouse на этом моменте выходит из чата, как говорится). Клавиатуры же у купертиновской компании всегда были на высоте: по комфорту использования они близки к механике. И как бы Apple ни пиарили ввод с сенсорного экрана, всем было понятно, что для ввода большого объёма текстов нужна нормальная, физическая клавиатура.

Вместе с первым айпадом была выпущена и док-станция: планшет можно было вставить в неё для подзарядки, а также вывода звука через внешнюю акустику — минуя мини-джек самого планшета. Удобно ведь, правда? А что, если совместить док-станцию с… клавиатурой? Так и получился iPad Keyboard Dock. Да, та ещё химера…
Читать дальше →

Нужен ли нам сейчас кеш-слой перед СУБД

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

Уже лет 20 существует миф (или не миф), что современный Highload-проект невозможен без кэшей. Они всегда нас выручали, когда не справлялись базы данных. Но с тех пор, как появились первые кэши, key-value баз данных и другие технологии, многое изменилось и традиционные СУБД значительно эволюционировали. И так ли теперь нужен кэш?
Мы протестировали самые известные кэш-сервисы и СУБД и попробовали выжать из них миллион запросов в секунду в разных условиях. Делимся с вами результатами в этой статье.
Привет, Хабр! Я Алексей Рыбак, предприниматель и основатель R&D-лаборатории DevHands, автор телеграм-канала про System Design и Highload. В прошлом — СТО и руководитель московского офиса Badoo. Работал во втором по размеру такси-сервисе «Везёт», который мы после продажи интегрировали с Яндекс.Такси. Сейчас наша компания разрабатывает образовательные программы по Highload и перформансу.

Читать далее

Калькулятор? Да его напишет кто угодно

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

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

Неправда.

Калькулятор должен показывать результат введённого математического выражения. А это намно-о-ого сложнее, чем кажется.

В этом посте я расскажу величайшую историю о разработке приложения-калькулятора.

На изображении выше показан калькулятор из iOS.

Заметили что-нибудь?

Он посчитал неправильно.

(10100) + 1 − (10100) равно 1, а не 0.

Android считает правильно. А причина, по которой он это делает, абсолютно безумна.

Читать далее

Контрабанда данных внутри эмодзи

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

Меня заинтриговал комментарий GuB-42 на Hacker News:

При помощи последовательностей ZWJ (Zero Width Joiner) теоретически можно закодировать в один эмодзи неограниченный объём данных.

Действительно ли можно закодировать в один эмодзи произвольные данные?

tl;dr: да, однако я нашёл решение и без ZWJ. На самом деле, можно закодировать данные в любой символ Unicode. Например, в этом предложении есть скрытое послание: This sentence has a hidden message󠅟󠅘󠄐󠅝󠅩󠄜󠄐󠅩󠅟󠅥󠄐󠅖󠅟󠅥󠅞󠅔󠄐󠅤󠅘󠅕󠄐󠅘󠅙󠅔󠅔󠅕󠅞󠄐󠅝󠅕󠅣󠅣󠅑󠅗󠅕󠄐󠅙󠅞󠄐󠅤󠅘󠅕󠄐󠅤󠅕󠅨󠅤󠄑. (Попробуйте вставить его в декодер.)

Читать далее

Могут ли LLM писать более качественный код, если их об этом просто попросить?

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

В ноябре 2023 года, когда OpenAI добавила в ChatGPT возможность генерации изображений DALL-E 3 через веб-интерфейс ChatGPT, на короткое время возник мем: пользователи отправляли LLM базовое изображение и несколько раз просили «сделать его более X», где X могло быть чем угодно.
Примеры
Обычный парень становится всё более «бро».

Санта становится всё более «серьёзным».

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

А что будет, если я попробую похожий способ с кодом? Сгенерированный LLM код вряд ли будет мусорным (хоть это и возможно), поскольку он следует строгим правилам, и в отличие, например, от изображений, его качество можно измерить объективнее.

Если код в самом деле можно улучшить, просто при помощи интерактивного промтинга, попросив LLM «написать код получше» (хоть это и очень глупо), то это приведёт к огромному росту продуктивности. А если это так, то что произойдёт, если таких итераций с кодом будет слишком много? Каким станет эквивалент «космического» кода? Есть только один способ это выяснить!
Читать дальше →

Зарплаты IT-специалистов во второй половине 2024: +19% к предыдущему полугодию

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

Подвели зарплатные итоги второго полугодия 2024 — выгрузили 66 008 зарплат, которые IT-специалисты оставили в калькуляторе и посмотрели, сколько они зарабатывали в разных городах, специализациях, языках программирования и даже компаниях. А еще изучили, как изменились их оклады за полгода.

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

Смотреть зарплаты

Первые впечатления от 1921вг015, отечественного RISC-V контроллера

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

рис.1


Недавно мне в руки противоестественными путями попал интересный представитель RISC-V контроллеров производства НИИЭТ. Упакован он в пластиковый lqfp100 корпус, в котором скрывается ядро на 50 МГц, мегабайт флеш-памяти и 256 кБ оперативки. Разумеется, в наличии и стандартная периферия вроде UART-ов, SPI и USB. А вот из необычного — сигма-дельта АЦП на 16 бит. Ну и всякая неинтересная периферия вроде аппаратных модулей шифрования. Сразу оговорюсь, что тыкаю палочкой я его меньше двух недель, поэтому здесь описаны именно первые впечатления.

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