Java Mentor – Telegram
Java Mentor
293 subscribers
173 photos
48 videos
1 file
79 links
Download Telegram
Кто лучший программист (все еще), человек или машина?

Полное исследование можно почитать по ссылке.

Ниже перевод вступления

Генерация кода с помощью LLM (вместо написания кода с нуля) резко выросла в популярности. Однако последствия для безопасности такого кода остаются неизвестными.

Мы провели исследование, сравнив безопасность и качество кода, написанного людьми, с кодом, сгенерированным LLM, на широком наборе задач: структуры данных, алгоритмы, криптографические процедуры и задачи уровня LeetCode.
• Для оценки безопасности использовались модульные тесты, fuzzing и статический анализ.
• Для оценки качества учитывались сложность и размер кода.

Результаты:
• LLM может генерировать некорректный код, который не реализует требуемый функционал, особенно на сложных задачах. Ошибки могут быть тонкими.
Пример: реализация алгоритма SHA1 компилировалась, но была неверной.
• Даже если функциональность верная, код от LLM часто менее безопасен: отсутствуют защитные конструкции (defensive programming), что приводит к уязвимостям (переполнение буфера, переполнение целых чисел).
• Fuzzing показал, что код от LLM чаще подвержен зависаниям и крашам, чем написанный человеком.
• По качеству: LLM генерирует «скелетный» код без защитных конструкций, при этом более сложный на строку кода, чем человеческий.

Попытка улучшить:
Мы создали цикл обратной связи: просили LLM повторно сгенерировать код и устранить найденные проблемы (например, malloc overflow, выход за границы массива, null dereference).

Результат:
• Иногда LLM устраняет уязвимость,
• но часто появляются новые проблемы,
• а также были случаи, когда в изначально корректный код после доработки LLM вносил ошибки.
🔥7👍2
Сводка апдейтов.

Сходил на конфу от amoCRM, про свой бизнес и выход из найма. Было полезно с точки зрения вдохновения и мотивации.

Из тех кого я знаю выступали Гарик Мартиросян, и Асафьев Стас.

Все спикеры были интересными, очень понравились истории основателей барбер-шопов Top Gun, и сети кофеен Baggins Coffee.

Ну а я тем временем дооформляю ИП. Как закончу - начну снова брать учеников.

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

Больше всего понравился вариант с работой на результат без привязки к срокам. Попробую еще раз собрать команду мечты из 3-5 учеников и снова повторить такой кейс. ИП поможет с оформлением рассрочки как одним из вариантов оплаты.

23 Октября буду выступать на дне карьеры в ИТМО, от своей текущей работы. Мне повезло учиться в ИТМО 7 лет, быть дважды отчисленным и один раз даже закончить. Поэтому для меня это важное знаковое событие. Буду рассказывать ребятам за которыми охотятся Яндекс, ВК, и прочие крупные РФ игроки, как фиксил багулю.
Сам рассказ мне надо будет придумать. С одной стороны это типа круто. С другой стороны очко жим-жим. Это мое первое публичное выступление.

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

Сори за такую сборную солянку. Веду блог стихийно.
🔥11👍3😎32🤩1
This media is not supported in your browser
VIEW IN TELEGRAM
🤔6👍3😁1
Вчера выступал на дне карьеры в ИТМО 🎓

Для меня это значимое событие. Я сам учился в ИТМО, был дважды отчислен 😅. Но умудрился таки и диплом получить)

Рассказывал о том как расследовал баги и о том, как в принципе работается в финтехе.

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

Блин, щас студенты такие крутые. Я в свое время не знал что такое git, а некоторые из них уже в Яндексе работали 💪
12🔥5👍4👏1😎1
Полтора года назад я запускал курс.

Посмотрите как круто получилось у одного из тех, кто его проходил:

https://caffe.senioravanti.ru/

Здесь реализовано в разы больше, чем я давал на курсе, тем не менее хочется поделиться отзывом:

Привет, брал у тебя курс 1,5 года назад, и только пару дней назад довёл проект до ума.

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

(захостил - ссылка в начале поста)

Делал как курсовой проект для предмета "разработка информационной системы" в ВУЗе. Все зубы об него обломал.

По другому предмету будет ещё и мобильное приложение для этой системы.

Стек пришлось несколько раз поменять.
Итоговый стек:
Бэк: Spring Java, Kotlin, GraphQL, jOOQ, PostgreSQL, MongoDB -> 3 микросервиса (сервис продуктов, авторизации и взаимодействия с s3).
Фронт: Vue.js TypeScript .

Конец.

Имхо вышло огонь! 👍

PS Надеюсь у меня в итоге тоже получится «довести до ума», свою менторскую деятельность, и я снова начну «причинять пользу» другим 🥲
7👍6🔥5😱1
Теперь у меня есть copilot)

А тем временем идет четвертая неделя работы без выходных.

Надо заканчивать настолько любить программирование. Кажется до добра это не доведет 😅

Но по крайней мере последние выходные мне оплатят в двойном размере, что в целом приятненько.

Кажется виден свет в конце тоннеля, но тоннель что-то не заканчивается 🤪

Надо бы конечно сделать пост про Java….

Ненавижу Java 🥹

Directed by Robert B. Weide

Кстати, а ты знал, что мем с титрами Directed by Robert B. Weide взят из сериала «Умерь свой энтузиазм»?

Узнал только что, пока гуглил как эта херня пишется. Совпадение? Не думаю

А как у тебя дела? Расскажи че-нибудь, пажалуста 🥹
5🤓3👾3😁1
Media is too big
VIEW IN TELEGRAM
Вы помните разговоры с уточкой?

Все это, херня, как говорил мой школьный друг.

Вместо того, что-бы говорить с уточкой, гораздо лучше с кавказским акцентом проговаривать свои действия 😎

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

А бонусом вы прокачаете свой нейролингвистический кортекс (чтобы это ни значило)

Я начал с балкарского, потому что это однозначно +20 к внимательности.
5🔥2🥴2🌚1🤣1🗿1🙉1😎1
Мой Пет-Проект. Вайбкодинг. Смотреть на YouTube

Снял видео про свой пет-проект и про то, как последние пару дней занимаюсь вайб-кодингом.

👉 Видео:
https://youtu.be/ymq7SEh0EL4

👉 Сам проект:
https://notedesk.ru

В этом видео рассказываю:

💎о своём проекте на React;
💎как можно использовать Cursor / Codex в разработке;
💎как я собрал простой CI/CD пайплайн;
💎как деплою проект на VPS.

Как деплой выглядел раньше:
после изменений в коде я:

👎 делал git push;
👎 заходил на сервер по SSH;
👎 выполнял git pull;
👎 останавливал контейнеры;
👎 пересобирал контейнеры;
👎 поднимал их заново.

Как деплой выглядит сейчас:
👍 я просто делаю git push в ветку main, и через 5 минут изменения долетают на прод.

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

Буду очень благодарен, если ты:

Зайдёшь на

https://notedesk.ru

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

DISCLAIMER: Проект не адаптирован под мобильные устройства 😔

Приятного просмотра и спасибо, если посмотришь / потыкаешь / напишешь фидбек 🙏
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍4👏21🤩1