Как стать автором
Обновить
0
0
Slava Savvateev @habrbah

ACM Member (Student Membership)

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

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

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

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

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

Читать далее
Всего голосов 25: ↑20 и ↓5+34
Комментарии44

RAG (Retrieval Augmented Generation) — простое и понятное объяснение

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

Краткое и понятное описание подхода RAG (Retrieval Augmented Generation) при работе с большими языковыми моделями.

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

Давайте писать качественный код: важность статического анализа кода

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

Привет, Хабр! Меня зовут Данил. Я frontend-разработчик департамента корпоративных систем ЛАНИТ, который очень любит порядок в коде. На мой взгляд, именно выразительность и чистота кода позволяют ему лучше работать и дольше жить.

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

Читать далее
Всего голосов 46: ↑42 и ↓4+46
Комментарии11

Как построить гибкую и адаптивную компанию чтобы она могла достигать результатов быстрее?

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

Привет, хабр. Меня зовут Курдюмов Дмитрий, я основатель консалтингового агентства Smart units

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

Какую проблему это решает?

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

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

Плейбуки Ansible — советы и примеры

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

В этой статье мы рассмотрим плейбуки Ansible — схемы для действий по автоматизации. Плейбуки — это простой, целостный и воспроизводимый способ определить все действия, которые мы хотели бы автоматизировать.

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

How to build and run calculator from Windows XP using GCC x64?

Уровень сложностиСложный
Время на прочтение63 мин
Количество просмотров918

Hi Everyone!

In this article we a little bit will analyze of code of Windows XP and will compile the calculator application using GCC x64 in Windows 10 environment. We will look what kind of errors I faced during the build and the methods how to solve them. At the end we will launch the build of the calc.exe application.

Have a nice reading!

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

Архитектура Xорошего Кода Прошивки (Массив-Наше Всё)

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

В этом тексте я написал о некоторых подходах к организации кода для микроконтроллеров.

Основная идея - массив наша основная скрепа.

Главные достоинства представленной архитектуры - это простота поддержки, сопровождения и масштабирования кодовой базы.

Читать далее
Всего голосов 13: ↑11 и ↓2+14
Комментарии33

С алгоритмами в духе LeetCode на собеседованиях пора кончать

Время на прочтение6 мин
Количество просмотров67K
Современная разработка охватывает широкий диапазон от работы с алгоритмами до системного дизайна. По большей части разработка ПО укладывается в эти рамки. Основная масса разработчиков занимается созданием приложений, что ближе с системному дизайну, чем к низкоуровневым алгоритмам.

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

Такой подход основан на идее, что, если человек знаком с алгоритмами и системным дизайном, то и на разработку приложений ему хватит способностей. Это спорное утверждение. Создание приложений требует обширного набора навыков. Они не нарабатываются сотнями часов заучивания паттернов в решениях задач на алгоритмы. Да и рассматриванием сильно упрощенных версий системного дизайна Netflix, Uber или Twitter Threads делу не поможешь. Навыки разработки приложений оттачиваются путем… ну, разработки приложений. Но часто на технических собеседованиях они даже не принимаются в расчет.
Читать дальше →
Всего голосов 116: ↑105 и ↓11+126
Комментарии397

Керниган и Пайк были правы: делай что-то одно и делай это хорошо

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров27K
Роб Пайк и Брайан Керниган

В октябре 1984 года два идеолога опубликовали радикальный манифест… ну, или что-то вроде того.

Легенды computer science Брайан Керниган и Роб Пайк сформулировали в Program Design in the UNIX Environment паттерн архитектуры ПО, за сохранение которого оба боролись долгие годы.

Как и следовало ожидать от манифеста, в нём два этих канадских инженера максимально решительны. Самый резкий удар в статье — это запомнившаяся многим строчка из аннотации:

Старые программы покрываются коркой сомнительных фич.

Суть статьи часто сводят к аббревиатуре DOTADIW, или «Do One Thing And Do It Well» («Делайте что-то одно и делайте это хорошо»). В Unix и его потомках есть множество программ, в которых воплощена эта мантра: ls просто создаёт список файлов, cat просто выводит содержимое файлов, grep просто фильтрует данные, wc просто подсчитывает слова и так далее. У каждой программы есть несколько опций, меняющих её поведение, но не слишком сильно. Например: wc можно сконфигурировать для подсчёта строк или слов, но не для подсчёта количества абзацев или вхождений какой-то фразы.

Мощь Unix, защищаемая Керниганом и Пайком, заключалась в возможности соединения этих простых программ в цепочку для создания сложных поведений. Зачем добавлять сопоставление регулярных выражений в wc, если с этим уже способна справиться grep?
Читать дальше →
Всего голосов 45: ↑41 и ↓4+57
Комментарии45

Свод правил по работе с целыми числами в C/C++

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

В основу статьи легли мои собственные выработанные нелегким путем знания о принципах работы и правильном использовании целых чисел в C/C++. Помимо самих правил, я решил привести список распространенных заблуждений и сделать небольшое сравнение системы целочисленных типов в нескольких передовых языках. Все изложение строилось вокруг баланса между краткостью и полноценностью, чтобы не усложнять восприятие и при этом отчетливо передать важные детали.
Читать дальше →
Всего голосов 54: ↑46 и ↓8+62
Комментарии100

Одинарная или двойная точность?

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

Введение


В научных вычислениях мы часто используем числа с плавающей запятой (плавающей точкой). Эта статья представляет собой руководство по выбору правильного представления числа с плавающей запятой. В большинстве языков программирования есть два встроенных вида точности: 32-битная (одинарная точность) и 64-битная (двойная точность). В семействе языков C они известны как float и double, и здесь мы будем использовать именно такие термины. Есть и другие виды точности: half, quad и т. д. Я не буду заострять на них внимание, хотя тоже много споров возникает относительно выбора half vs float или double vs quad. Так что сразу проясним: здесь идёт речь только о 32-битных и 64-битных числах IEEE 754.

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

Статья разбита на две отдельные (но связанные) дискуссии: что использовать для хранения ваших данных и что использовать при вычислениях. Иногда лучше хранить данные во float, а вычисления производить в double.
Читать дальше →
Всего голосов 37: ↑31 и ↓6+25
Комментарии121

Как оставаться программистом, если у тебя память как у дрозофилы

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

Мой мадригал тем инструментам разработки, которые изменили мою жизнь

Программирование стало гораздо более многогранным ремеслом с тех пор, как в середине 1990-х я впервые попробовал AmigaBASIC. В те времена еще можно было купить один большой том о компьютере, на котором вы программируете – и там бы нашлось 99% всей нужной информации. Эта книга, где на множестве страниц уголки загнуты в качестве закладок, обклеенная стикерами, лежала бы у вас под рукой, пока вы вбивали бы команды в монохромный текстовый редактор.

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

Сегодня никто бы больше и не подумал покупать документацию по разработке – и Microsoft, и Apple свободно выкладывают свою документацию в Интернете для всех желающих. А что говорить о проектах с открытым исходным кодом!

Во времена npmPyPI и GitHub сложно объяснить, насколько неоднозначным решением (которое требовалось всесторонне обдумывать) раньше считалось потребовать хоть какие-нибудь возможности, которые выходили бы за рамки функционала операционной системы. Часто вместе с продуктом приходилось сдавать и все его зависимости.

Читать далее
Всего голосов 39: ↑35 и ↓4+43
Комментарии40

Компилятор с полностью гомоморфным шифрованием от Google

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

Ещё в мае 2022 года я переориентировал пару команд в Google на разработку полностью гомоморфного шифрования (вот объявление об этом в рассылке). С тех пор я участвовал в работе над многими проектами в этой области, в частности, руководил поддержкой на github.com/google/fully-homomorphic-encryption – это опенсорсный ПГШ-компилятор для C++. В этой статье даётся вводная информация о том, как при помощи этого инструмента компилировать программы с расчётом на ПГШ. Также пробежимся по тому, из чего этот компилятор состоит.

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

Информация

В рейтинге
Не участвует
Откуда
Истра, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность