Pull to refresh
22
0
Анастасия @AnROm

Программист

Send message

Неужели можно ничего не делать, ведь все напишет ChatGPT?

Level of difficultyEasy
Reading time3 min
Views14K

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

Читать далее
Total votes 14: ↑8 and ↓6+2
Comments8

Svace: фича-реквесты для отечественного статического анализатора

Level of difficultyEasy
Reading time4 min
Views3.7K

В прошлом году многие российские компании стали оперативно сертифицировать разрабатываемое ПО. Так я познакомилась со статическим анализатором Svace.

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

Вот наша история использования Svace в 2022 году.

Читать далее
Total votes 11: ↑7 and ↓4+3
Comments19

Как не нужно фиксить concurrency проблемы

Level of difficultyEasy
Reading time3 min
Views10K

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

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

Статья не про серебряную пулю, как исправить concurrency проблемы, а про костыльные подходы веселых и находчивых, которые не решают суть проблемы.

Читать далее
Total votes 21: ↑15 and ↓6+9
Comments123

Почему трудно работать в мультинациональной команде

Reading time4 min
Views12K
Всем привет!

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

Я тоже не идеальна, так что добавлю картинку со случаем из моей жизни:


Читать дальше →
Total votes 19: ↑18 and ↓1+17
Comments25

Concurrency и паттерны ошибок, скрытые в коде: Deadlock

Reading time3 min
Views11K
Наверняка, многие слышали, а кто-то встречал на практике, такие слова, как взаимные блокировки(deadlock) и гонки(race condition). Эти понятия относятся к разряду ошибок в использовании concurrency. Если я задам вам вопрос, что такое дедлок, вы с большой вероятностью без доли сомнения начнете рисовать классическую картинку дедлока или его представление в псевдокоде. Что-то вроде этого:



Эту информацию мы получаем в институте, можно найти в книжках и статьях на просторах интернета. Такой дедлок с использованием, например, двух мьютексов, во всей своей красе можно встретить в коде. Но в большинстве случаев не все так просто, и не каждый может увидеть классический паттерн ошибки в коде, если он представлен не в привычном виде.
Читать дальше →
Total votes 21: ↑21 and ↓0+21
Comments2

Planning poker: заметки о первом впечатлении разработчика

Reading time3 min
Views3.8K
Я, как и некоторые другие программисты, не большой любитель митингов. Порой, надоедают все эти sprint refinement, sprint review, retrospective сессии.


В командах, где я работала, никогда не было planning poker митингов, но недавно поучаствовала в таком, правда чужой команды. Я знакома со всеми из этой команды (за исключением нового архитектора), но никогда лично не видела полный состав команды в действии, так что с интересом наблюдала за их подходами работы в команде. Помимо того, что было довольно весело, смогла почерпнуть для себя что-то новое и полезное. В этой статье я хочу поделиться своими впечатлениями от участия в planning poker митинге.
Читать дальше →
Total votes 18: ↑8 and ↓10-2
Comments1

Переход на Boost-1.65.1 и баги, которые всплыли

Reading time4 min
Views5K
В прошлом году(уже почти целый год прошел) мы все–таки перешли на новую версию Boost-1.65.1, и под капотом вы найдете тройку багов boost-а, с которыми мы столкнулись. Еще важно упомянуть, что до этого у нас в ПО использовался boost -1.62.1, поскольку какие-то баги появились в boost ранее версии 1.65.1

В нашем проекте есть специальная команда интеграции, основной задачей которой является миграция всего софта на новую версию библиотек, Visual Studio, новые версии компонентов низкого уровня (базовые, от которых зависят большинство других компонентов) и т.п. Также команда интеграции ответственна за устранение всех проблем, которые при этом возникают, естественно при содействии мейнтейнеров компонентов, если это необходимо. Итак, баги, которые особенно запомнились мне.
Читать дальше →
Total votes 25: ↑21 and ↓4+17
Comments8

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

Reading time3 min
Views81K
Когда программист ходит на собеседования, то рано или поздно сталкивается с математическими задачками. В этом посте я рассмотрю две геометрические задачи и их решения.
Читать дальше →
Total votes 42: ↑28 and ↓14+14
Comments60

Задачи с собеседований. Три адекватные задачки на «подумать»

Reading time2 min
Views108K
И снова про собеседования. Некоторые простые задачи порой вызывают затруднение. В этом посте я хочу рассмотреть три задачки с собеседований, которые мне понравились, потому что к их решению можно прийти самим, но чуток подумать все равно придется.

Читать дальше →
Total votes 83: ↑47 and ↓36+11
Comments249

Красно-черные деревья: коротко и ясно

Reading time3 min
Views259K
История из жизни. Девушка предложила своему парню-программисту пройти психологический тест:
Девушка: Нарисуй дерево.
Программист: (рисует бинарное дерево)
Девушка: Нет, другое.
Программист: Я и красно-черное дерево могу нарисовать.

Итак, сегодня хочу немного рассказать о красно-черных деревьях. Рассказ будет кратким, без рассмотрения алгоритмов балансировки при вставке/удалении элементов в красно-черных деревьях.
Читать дальше →
Total votes 61: ↑43 and ↓18+25
Comments43

Задачка: найти треугольник с меньшим периметром

Reading time2 min
Views30K
Наткнулась на эту задачу совершенно случайно. У меня знакомая через год после окончания магистратуры снова решила учиться и начала готовиться к поступлению. А значит что-то нужно просто повторить и вспомнить, ну и разобраться с чем-то новым. Вот сидела она над какой-то задачей, я проходила мимо. Задача показалась весьма простой (школьного уровня), но надо немного подумать.

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

Читать дальше →
Total votes 32: ↑26 and ↓6+20
Comments29

Задание с экзамена по защите информации

Reading time2 min
Views21K
Сразу озвучу задачку, чтобы не было предвкушения, будто тут будет показан какой-то крутой новый метод шифрования.

Нужно доказать, что

Статья ориентирована на студентов, заинтересованных граждан и просто зевак. У нас защита информации была на пятом курсе в институте. На лекциях по защите информации было много историй о нелегкой судьбе русских программистов в шальные девяностые: как им платили за работу пельменями, которые делались на цокольном этаже предприятия, где они работали, как делается самогон и т.п. А оставшееся время лекции посвящалось собственно аспектам защиты информации. На лекциях давалось очень много теории по темам, хоть как-то связанным с алгоритмами шифрования. На экзамене в каждом билете было пара вопросов по теории и одна задачка.
Читать дальше →
Total votes 46: ↑33 and ↓13+20
Comments32

Защитить диплом. Пять минут позора или достойное выступление

Reading time4 min
Views152K
Уважаемые студенты, не проходите мимо! Все мы разные: кто-то самоуверенный, а кто-то нерешительный и теряющийся на публике. Но тем нe менее не игнорируйте довольно простые и даже очевидные советы при подготовке к защите дипломного проекта.

И да, размещение картинки с Робертом Дауни мл. на ваш рабочий стол не гарантирует вам успеха.


Читать дальше →
Total votes 53: ↑31 and ↓22+9
Comments41

Сайт Добродел готов помочь, но хотят ли этого окружающие?

Reading time2 min
Views22K
Несанкционированные навалы мусора – довольно-таки распространенная проблема областей, поскольку в областях есть районы с частными домами. В многоэтажных жилых домах оплата услуг вывоза мусора обычно входит с квартплату. Собственники (обладатели частных одно-двухэтажных домов) часто не изъявляют желания тратить деньги на вывоз мусора, поэтому они выбрасывают мусор в ближайшие мусорные контейнеры, выделенные под нужды других домов, либо выбрасывают мусор куда попало, из-за чего образовываются вот такие груды мусора.



Летом у родителей в доме были проблемы, затронувшие ЖКХ. Самостоятельно бороться с проблемой я не стала, но расшарила в интернете сайт Добродел (сообщество Добродела работает с проблемами в Московской области). На этом сайте нужно только оставить заявку о проблеме, после чего Добродел борется с несправедливостью (пишет жалобы и заявления в органы исполнительной власти, но от Вашего имени). Поэтому решила обратиться туда и с насущной проблемой несанкционированных навалов мусора.
Читать дальше →
Total votes 26: ↑17 and ↓9+8
Comments253

Стать руководителем (в плане назначения должности) и быть им (по факту) – задачи разной сложности

Reading time3 min
Views20K
Несколько лет назад меня впервые спросили, хочу я стать хорошим специалистом или руководителем. Я поспешно ответила, что руководителем. Но в процессе аргументации своего выбора, изменила решение уже через 2 минуты. В тот день я впервые задумалась о том, каково это «быть руководителем».

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

image
Читать дальше →
Total votes 26: ↑13 and ↓130
Comments33

История одного программиста

Reading time5 min
Views52K
Я программист, 24 года. Рост 170. Параметры 90-60-90. Хочу поделиться опытом с институтских времен. На что нужно обращать внимание в процессе обучения (исходя из моих наблюдений), что может пригодиться в будущем. Расскажу, в какие моменты и какой прогресс наблюдался. Как не опускать руки, если скучно учиться, и в чем искать мотивацию.

image

Читать дальше →
Total votes 44: ↑33 and ↓11+22
Comments35

Квалификация коллег-программистов: ожидание и реальность

Reading time5 min
Views47K
«Лучшие программисты не чуть-чуть лучше хороших. Они на порядок лучше по любым меркам: концептуальное мышление, скорость, изобразительность и способность находить решения. »
– Rendall E.Stross

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


Далее рассмотрим (с жизненными примерами), на что нужно обращать внимание, чтобы приблизиться к цели стать «лучшим» программистом.
Читать дальше →
Total votes 66: ↑42 and ↓24+18
Comments116

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Registered
Activity