💻 Совсем немного Java Core
🔥 И ты забудешь про хардкор
⚡ А чтоб сервак твой не упал
👉 Вступи скорее в мой канал
Короче, всем привет!
У меня на канале — и думаю, никто не будет с этим спорить — ублюдская шапка:
📩 Для связи: @zor_07
📚 обучающие материалы по Java
✅ Пет-проекты
✅ Помощь в составлении резюме
✅ Подготовка к собесам
Какие-то всратые галочки. Люди на это смотрят и такие: «Ну нахер…» — как в том меме со священником.
Короче, надо придумать новую шапку.
Я пробовал с GPT, но он разговаривает такими же пресными ублюдскими формулировками, от которых меня ввергает в экзистенциальную апатию и скуку.
🙏 ПАМАГИТЕ!
Мне нужна новая шапка. 🥹
📏 Ограничения:
— немного скрытой эротизации — маст хэв
— но так, чтобы было понятно: мы всё-таки порой и про Java разговариваем
— максимум 255 символов (вместе с пробелами и эмодзи)
Вот мои варианты:
💡 Войти в Java, чтоб сервак не упал, а жизнь не переставала возбуждать?
Невозможно — скажете вы. Просто подпишись — отвечу я.
💡 Как выучить Java, чтоб твой сервак никогда не падал?
За 10 лет я этого так и не понял. Но ты залетай — будем разбираться вместе.
Все ещё ВСРАТО. Мне не нравится.
✍️ Накидайте ваши варианты для описания канала.
🏆 Победителю, чей вариант я использую (или отрефакторю и заюзаю), — бесплатная консультация на любую тему (хоть сколько-нибудь близкую к Java).
👉 Варианты от GPT для разгона
💡 «Java без боли и уныния: чтобы код компилился, сервак не падал, а жизнь стояла колом от удовольствия. Подписывайся — будем разбираться вместе 🍅»
💡 «Как выучить Java и не потерять стояк на жизнь? Тут и про Spring, и про базы, и про то, как не сойти с ума на собесах. Влетаешь — дальше только веселее 🚀»
🤪 Дичайшие варианты от GPT
💡 «Java и стояк на жизнь: одно поддерживаем транзакциями, другое — кофеином ☕. Подписывайся, пока GC не собрал твой энтузиазм!»
💡 «Освоишь Java — сервак не упадёт. Подпишешься сюда — и либидо тоже. Тут баги фиксят не только в коде, но и в душе ❤️»
💡 «Канал о Java: чтобы твой код не вис, сервак не падал, а стояк не прерывался даже после дедлайна ⏳🍆»
💡 «Java, Spring и немного эротики: чтобы не только тесты проходили, но и ты всегда был готов к нагрузочному 😏»
🔥 И ты забудешь про хардкор
⚡ А чтоб сервак твой не упал
👉 Вступи скорее в мой канал
Короче, всем привет!
У меня на канале — и думаю, никто не будет с этим спорить — ублюдская шапка:
📩 Для связи: @zor_07
📚 обучающие материалы по Java
✅ Пет-проекты
✅ Помощь в составлении резюме
✅ Подготовка к собесам
Какие-то всратые галочки. Люди на это смотрят и такие: «Ну нахер…» — как в том меме со священником.
Короче, надо придумать новую шапку.
Я пробовал с GPT, но он разговаривает такими же пресными ублюдскими формулировками, от которых меня ввергает в экзистенциальную апатию и скуку.
🙏 ПАМАГИТЕ!
Мне нужна новая шапка. 🥹
📏 Ограничения:
— немного скрытой эротизации — маст хэв
— но так, чтобы было понятно: мы всё-таки порой и про Java разговариваем
— максимум 255 символов (вместе с пробелами и эмодзи)
Вот мои варианты:
💡 Войти в Java, чтоб сервак не упал, а жизнь не переставала возбуждать?
Невозможно — скажете вы. Просто подпишись — отвечу я.
💡 Как выучить Java, чтоб твой сервак никогда не падал?
За 10 лет я этого так и не понял. Но ты залетай — будем разбираться вместе.
Все ещё ВСРАТО. Мне не нравится.
✍️ Накидайте ваши варианты для описания канала.
🏆 Победителю, чей вариант я использую (или отрефакторю и заюзаю), — бесплатная консультация на любую тему (хоть сколько-нибудь близкую к Java).
👉 Варианты от GPT для разгона
💡 «Java без боли и уныния: чтобы код компилился, сервак не падал, а жизнь стояла колом от удовольствия. Подписывайся — будем разбираться вместе 🍅»
💡 «Как выучить Java и не потерять стояк на жизнь? Тут и про Spring, и про базы, и про то, как не сойти с ума на собесах. Влетаешь — дальше только веселее 🚀»
🤪 Дичайшие варианты от GPT
💡 «Java и стояк на жизнь: одно поддерживаем транзакциями, другое — кофеином ☕. Подписывайся, пока GC не собрал твой энтузиазм!»
💡 «Освоишь Java — сервак не упадёт. Подпишешься сюда — и либидо тоже. Тут баги фиксят не только в коде, но и в душе ❤️»
💡 «Канал о Java: чтобы твой код не вис, сервак не падал, а стояк не прерывался даже после дедлайна ⏳🍆»
💡 «Java, Spring и немного эротики: чтобы не только тесты проходили, но и ты всегда был готов к нагрузочному 😏»
😁6🍌3😨3🗿1👾1
Сегодня записывал видос на одну интересную тему, которую я сильно тут задолжал.
Все произошло как-то импульсивно. Просто сел, и решил сразу начать запись как пойдет. Ай как хорошо у меня все получалось. Лайв кодинг с пояснениями, размышлениями. Что за лев был этот тигр.
1.5 часа безудержного кодинга. А по итогу что? По итогу этот тигр не включил микрофон 🎤 🤦♂️
Короче да, перезапишу в скором времени, но пока что это фиаско, братан 😂
Сразу расскажу как дела. Я прошел на работе испытательный срок. В конце июля. Но поздравили меня с этим недавно. Я на самом деле этому рад, потому что на новом месте без обратной связи не всегда легко понять справляюсь я или нет.
Задачи довольно сложные. Кодовая база не просто большая, а 🤬 какая большая. Более 100 микросервисов + несколько монолитов.
Фикшу баги, занимаюсь аналитическими задачами.
Была аналитическая задача узнать на какую максимально возможную версию можно поднять один крайне важный инфраструктурный компонент.
Пока я ею занимался вдруг что-то крайне важное и нужное сломалось на проде.
Я описываю в общих чертах без конкретики, так как не хочется случайно нарушить nda, но в общих чертах поделиться все равно хочу.
Сломалось что-то важно и нужное прям каждый день. Клиенты страдали от этой поломки. Нужно было сделать фикс максимально быстро. Замедлилась обработка сообщений в одном брокере сообщений. И надо было понять почему. С учетом размера кодовой базы и отсутствием доступа к логам прода понять это было не то чтобы очень просто.
За первый день удалось разобраться в принципе как эта херабора работает.
За второй день удалось выкатить костыль, который позволил не задерживать обработку сообщений в этой очереди.
Но этот костыль не решал первопричину проблемы. С этим все еще разбираемся. Добавил дополнительный вывод логов, который поможет найти виновника проблемы.
Кстати с доп логированием тоже не все просто. Нужно оценивать объем логов и их размер, чтобы не выйти за лимиты памяти заложенные в логах.
Решая эту проблему вдруг пришла мысль: «теперь понятно, почему мне платят такие деньги»
Но решая эту проблему, я не мог заниматься аналитической задачей, которая за эти две недели стала подгорать. И вот теперь на проде хотят поднять версию одного важного инфраструктурного компонента, а мне нужно оценить риски - сломает ли это логику работы где нибудь.
Вот представьте - 100 микросервисов, какие-то из них читают из очередей. Сейчас поддерживается ордеринг сообщений. Т.е. сообщения читаются в том порядке, в котором были отправлены. А в новой версии ордеринг не будет гарантироваться, и надо понять сломает ли это что-нибудь.
К понедельнику (истерический смех).
Примерно такие вот будни у бэкенд проктолога. Во всем этом дерьме стараюсь научиться выделять время этому проекту, радовать вас чем-то полезным интересным. Иногда забываю включить микрофон…
Все произошло как-то импульсивно. Просто сел, и решил сразу начать запись как пойдет. Ай как хорошо у меня все получалось. Лайв кодинг с пояснениями, размышлениями. Что за лев был этот тигр.
1.5 часа безудержного кодинга. А по итогу что? По итогу этот тигр не включил микрофон 🎤 🤦♂️
Короче да, перезапишу в скором времени, но пока что это фиаско, братан 😂
Сразу расскажу как дела. Я прошел на работе испытательный срок. В конце июля. Но поздравили меня с этим недавно. Я на самом деле этому рад, потому что на новом месте без обратной связи не всегда легко понять справляюсь я или нет.
Задачи довольно сложные. Кодовая база не просто большая, а 🤬 какая большая. Более 100 микросервисов + несколько монолитов.
Фикшу баги, занимаюсь аналитическими задачами.
Была аналитическая задача узнать на какую максимально возможную версию можно поднять один крайне важный инфраструктурный компонент.
Пока я ею занимался вдруг что-то крайне важное и нужное сломалось на проде.
Я описываю в общих чертах без конкретики, так как не хочется случайно нарушить nda, но в общих чертах поделиться все равно хочу.
Сломалось что-то важно и нужное прям каждый день. Клиенты страдали от этой поломки. Нужно было сделать фикс максимально быстро. Замедлилась обработка сообщений в одном брокере сообщений. И надо было понять почему. С учетом размера кодовой базы и отсутствием доступа к логам прода понять это было не то чтобы очень просто.
За первый день удалось разобраться в принципе как эта херабора работает.
За второй день удалось выкатить костыль, который позволил не задерживать обработку сообщений в этой очереди.
Но этот костыль не решал первопричину проблемы. С этим все еще разбираемся. Добавил дополнительный вывод логов, который поможет найти виновника проблемы.
Кстати с доп логированием тоже не все просто. Нужно оценивать объем логов и их размер, чтобы не выйти за лимиты памяти заложенные в логах.
Решая эту проблему вдруг пришла мысль: «теперь понятно, почему мне платят такие деньги»
Но решая эту проблему, я не мог заниматься аналитической задачей, которая за эти две недели стала подгорать. И вот теперь на проде хотят поднять версию одного важного инфраструктурного компонента, а мне нужно оценить риски - сломает ли это логику работы где нибудь.
Вот представьте - 100 микросервисов, какие-то из них читают из очередей. Сейчас поддерживается ордеринг сообщений. Т.е. сообщения читаются в том порядке, в котором были отправлены. А в новой версии ордеринг не будет гарантироваться, и надо понять сломает ли это что-нибудь.
К понедельнику (истерический смех).
Примерно такие вот будни у бэкенд проктолога. Во всем этом дерьме стараюсь научиться выделять время этому проекту, радовать вас чем-то полезным интересным. Иногда забываю включить микрофон…
🔥9❤6👍4
Поделитесь плз, читаете ли вы книги? И если да, то как?
- Бумажные
- В читалках электронных?
- На телефонах/планшетах? Какие юзаете приложения-читалки?
И как вы выбираете что почитать? Как приходит понимание, что вот эту книжку я почитать хочу?
Думаю снова вернуться к чтению и хочу понять какой формат был бы удобным для меня)
- Бумажные
- В читалках электронных?
- На телефонах/планшетах? Какие юзаете приложения-читалки?
И как вы выбираете что почитать? Как приходит понимание, что вот эту книжку я почитать хочу?
Думаю снова вернуться к чтению и хочу понять какой формат был бы удобным для меня)
💘2
Media is too big
VIEW IN TELEGRAM
Завтра будет новый видос 😱
@AivenDemin, кажется, он тебе понравится)
@AivenDemin, кажется, он тебе понравится)
🔥4🤣3👏2👍1
Java Mentor
Самая простая игра на Java которую ты можешь написать уже сейчас! В далеком 2007 году, в маленьком городе Нальчик, я ехал в маршрутке к репетитору по программированию. Тогда я еще не знал, что в тот вечер мне будет дано задание написать игру на паскале.…
Новый видос, в котором я пишу игру Быки и коровы за час, и делаю ревью, которое обещал полтора года назад 😅
Надеюсь будет интересно.
Накидайте плз лайков - очень поможет в продвижении🤍
https://www.youtube.com/watch?v=ZVuXABXyKlY
Надеюсь будет интересно.
Накидайте плз лайков - очень поможет в продвижении
https://www.youtube.com/watch?v=ZVuXABXyKlY
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Игра на Java за час: Быки и Коровы + ревью подписчика
Telegram: https://news.1rj.ru/str/+HTd2UpOAjWYzNzZi
🎮 Пишем игру "Быки и Коровы" на Java + ревью кода подписчика
В этом видео я реализую с нуля классическую игру "Быки и Коровы" на Java, а затем делаю ревью решения, которое написал один из моих подписчиков. Такой формат…
🎮 Пишем игру "Быки и Коровы" на Java + ревью кода подписчика
В этом видео я реализую с нуля классическую игру "Быки и Коровы" на Java, а затем делаю ревью решения, которое написал один из моих подписчиков. Такой формат…
🔥7❤6👍3
Как изначально назывался язык программирования Java?
Anonymous Quiz
15%
Lava 🔥🌋
6%
Nova
45%
Oak 🌳
23%
CoffeeScript ☕️
2%
GreenTea 🍵
5%
С --
3%
ByteBrew 🧑💻🍺
👍4😱2🥴2
This media is not supported in your browser
VIEW IN TELEGRAM
А я тут рилсик запилил, и в мотиваторы подался 🌚
❤10🔥7👍3
Я как-то снимал видос про докер на YouTube.
И недавно пришел чел, и сказал:
- Непонятно, поясни за эти файлы (см скрин)
А мне лень все это расписывать, тем более, что я когда-то делал урок на эту тему в своем курсе.
Поделился с ним уроком. С вами тоже поделюсь, вдруг кому полезно будет.
Урок в коментах.
Ну и да, у этого канала чат есть, где можно любые вопросы по джава задавать. Если я шарю то отвечу, если не шарю может кто-нибудь поумнее ответит 😃
Залетайте короче
И недавно пришел чел, и сказал:
- Непонятно, поясни за эти файлы (см скрин)
А мне лень все это расписывать, тем более, что я когда-то делал урок на эту тему в своем курсе.
Поделился с ним уроком. С вами тоже поделюсь, вдруг кому полезно будет.
Урок в коментах.
Ну и да, у этого канала чат есть, где можно любые вопросы по джава задавать. Если я шарю то отвечу, если не шарю может кто-нибудь поумнее ответит 😃
Залетайте короче
🔥5👍4❤🔥3
Самый важный навык программиста.
Привет! В этом посте поделюсь своими мыслями по следующим вопросам:
1. Что самое сложное в работе программиста?
2. Какой скилл является самым важным?
3. Куда расти: вглубь или вширь?
В программировании способов реализовать какую-то задачу — вагон и маленькая тележка.
И представьте: собралась команда разработчиков, и им нужно реализовать какой-то большой проект. В этой команде могут быть как новички, так и древние мамонты. Новички учились по туториалам и никаких других способов реализовать задачу не знают. Ну а древние мамонты могут быть тоже разные. У одних расцвет сил пришёлся на времена Java 1.0, и в голове могут быть крутые, но чуть устаревшие знания. А могут быть и крутые мамонты, которые решают задачу элегантно: ты смотришь на их код и думаешь: «Боже, как круто! Как круто и непонятно».
Всё это многообразие умов как-то договорилось программировать совместно. Вырабатываются некоторые договорённости и гайдлайны: начиная с выбора фреймворков, заканчивая тем, парсить ли DTO в сервисах или всё-таки в контроллерах.
Проект живёт, кодовая база растёт, люди уходят и приходят.
И в какой-то момент появляешься ты. Ты проходишь онбординг, настраиваешь IDE, получаешь доступы, скачиваешь проект и такой:
«Господи, что это такое?!»
Ты видишь столько кода и не понимаешь — это говно или так надо по объективным причинам. А если ты новичок, то смотришь на говно и думаешь, что это апогей алгоритмической мысли.
И если ты не сидел в проекте со времён распада СССР, то самым сложным в твоей работе будет одно:
Разобраться, как это говно работает и как бы тебе вклинить свой код, не нарушая принятых в команде договорённостей.
И чем сложнее задача, тем больше времени придётся тратить именно на это: на чтение и понимание чужого кода. Умение разобраться в чужом коде — это навык, который будет использоваться 88% твоего рабочего времени.
Это самое сложное, но, на мой взгляд, не самое важное в работе программиста.
Что же является самым важным?
Написать свой код так, чтоб спустя годы тебя не прокляли. А ещё лучше — чтоб не прокляли в тот же миг.
Тебе может показаться, что твой код проходит ревью, и, как бы, «старшие коллеги» берут часть ответственности на себя за то нечто, что породил ты в больном бреду, пытаясь понять, как оно всё тут принято. Но это далеко не всегда так. Ревью делают такие же люди как и ты. И ты будешь делать ревью и ловить себя на мысли, что хочется поставь аппрув "ради галочки", вроде бы все тут хорошо....
Если ты программируешь уже какое-то время и даже писал пет-проекты, то, возможно, замечал: возвращаясь спустя время к своим старым проектам, ты задумчиво чешешь свою репу и думаешь: «Господи, это же я писал, почему я ничего не понимаю?!». А это только ты, в маленьком проекте. Помножь эту ситуацию на бесконечность — и получишь некоторое (хоть и не полное) представление о том, что тебя ждёт, если ты не научишься писать код МАКСИМАЛЬНО ПРОСТО И ПОНЯТНО.
Это и есть самое важное — уметь писать понятный код. Не только тебе, но и другим людям.
Как к этому прийти?
Нет быстрого способа. Нужно породить тонну говна и с опытом обрести понимание того, «что такое хорошо, а что такое плохо».
Ну и куда расти?
Знаешь, на свете есть столько всего помимо Спринга, что ты бы удивился. Такое многообразие разных решений: баз данных, брокеров сообщений, фреймворков. Что можно до пенсии пытаться освоить их все и так и не успеть сделать это.
Но это и не нужно. Благо, несмотря на всё это многообразие, под капотом везде заложены одни и те же принципы, которые придумали «когда наши родители были молодыми» люди, которые в разы умнее самого умного твоего знакомого.
Если у тебя получится хорошо (плюс-минус) разобраться в какой-то одной технологии, то освоить другие не составит большого труда. Поэтому моё имхо: не нужно бросаться учить всё подряд. Всё не выучить. И не угадать, что надо учить.
Сосредоточься на чём-то одном и долби в эту точку. А остальное поймёшь по ходу.
Всем добра, хорошей пятницы и прекрасных выходных!
Привет! В этом посте поделюсь своими мыслями по следующим вопросам:
1. Что самое сложное в работе программиста?
2. Какой скилл является самым важным?
3. Куда расти: вглубь или вширь?
В программировании способов реализовать какую-то задачу — вагон и маленькая тележка.
И представьте: собралась команда разработчиков, и им нужно реализовать какой-то большой проект. В этой команде могут быть как новички, так и древние мамонты. Новички учились по туториалам и никаких других способов реализовать задачу не знают. Ну а древние мамонты могут быть тоже разные. У одних расцвет сил пришёлся на времена Java 1.0, и в голове могут быть крутые, но чуть устаревшие знания. А могут быть и крутые мамонты, которые решают задачу элегантно: ты смотришь на их код и думаешь: «Боже, как круто! Как круто и непонятно».
Всё это многообразие умов как-то договорилось программировать совместно. Вырабатываются некоторые договорённости и гайдлайны: начиная с выбора фреймворков, заканчивая тем, парсить ли DTO в сервисах или всё-таки в контроллерах.
Проект живёт, кодовая база растёт, люди уходят и приходят.
И в какой-то момент появляешься ты. Ты проходишь онбординг, настраиваешь IDE, получаешь доступы, скачиваешь проект и такой:
«Господи, что это такое?!»
Ты видишь столько кода и не понимаешь — это говно или так надо по объективным причинам. А если ты новичок, то смотришь на говно и думаешь, что это апогей алгоритмической мысли.
И если ты не сидел в проекте со времён распада СССР, то самым сложным в твоей работе будет одно:
Разобраться, как это говно работает и как бы тебе вклинить свой код, не нарушая принятых в команде договорённостей.
И чем сложнее задача, тем больше времени придётся тратить именно на это: на чтение и понимание чужого кода. Умение разобраться в чужом коде — это навык, который будет использоваться 88% твоего рабочего времени.
Это самое сложное, но, на мой взгляд, не самое важное в работе программиста.
Что же является самым важным?
Написать свой код так, чтоб спустя годы тебя не прокляли. А ещё лучше — чтоб не прокляли в тот же миг.
Тебе может показаться, что твой код проходит ревью, и, как бы, «старшие коллеги» берут часть ответственности на себя за то нечто, что породил ты в больном бреду, пытаясь понять, как оно всё тут принято. Но это далеко не всегда так. Ревью делают такие же люди как и ты. И ты будешь делать ревью и ловить себя на мысли, что хочется поставь аппрув "ради галочки", вроде бы все тут хорошо....
Если ты программируешь уже какое-то время и даже писал пет-проекты, то, возможно, замечал: возвращаясь спустя время к своим старым проектам, ты задумчиво чешешь свою репу и думаешь: «Господи, это же я писал, почему я ничего не понимаю?!». А это только ты, в маленьком проекте. Помножь эту ситуацию на бесконечность — и получишь некоторое (хоть и не полное) представление о том, что тебя ждёт, если ты не научишься писать код МАКСИМАЛЬНО ПРОСТО И ПОНЯТНО.
Это и есть самое важное — уметь писать понятный код. Не только тебе, но и другим людям.
Как к этому прийти?
Нет быстрого способа. Нужно породить тонну говна и с опытом обрести понимание того, «что такое хорошо, а что такое плохо».
Ну и куда расти?
Знаешь, на свете есть столько всего помимо Спринга, что ты бы удивился. Такое многообразие разных решений: баз данных, брокеров сообщений, фреймворков. Что можно до пенсии пытаться освоить их все и так и не успеть сделать это.
Но это и не нужно. Благо, несмотря на всё это многообразие, под капотом везде заложены одни и те же принципы, которые придумали «когда наши родители были молодыми» люди, которые в разы умнее самого умного твоего знакомого.
Если у тебя получится хорошо (плюс-минус) разобраться в какой-то одной технологии, то освоить другие не составит большого труда. Поэтому моё имхо: не нужно бросаться учить всё подряд. Всё не выучить. И не угадать, что надо учить.
Сосредоточься на чём-то одном и долби в эту точку. А остальное поймёшь по ходу.
Всем добра, хорошей пятницы и прекрасных выходных!
👍8👏7🔥4❤2❤🔥2
Кто лучший программист (все еще ), человек или машина?
Полное исследование можно почитать по ссылке.
Ниже перевод вступления
Генерация кода с помощью LLM (вместо написания кода с нуля) резко выросла в популярности. Однако последствия для безопасности такого кода остаются неизвестными.
Мы провели исследование, сравнив безопасность и качество кода, написанного людьми, с кодом, сгенерированным LLM, на широком наборе задач: структуры данных, алгоритмы, криптографические процедуры и задачи уровня LeetCode.
• Для оценки безопасности использовались модульные тесты, fuzzing и статический анализ.
• Для оценки качества учитывались сложность и размер кода.
Результаты:
• LLM может генерировать некорректный код, который не реализует требуемый функционал, особенно на сложных задачах. Ошибки могут быть тонкими.
Пример: реализация алгоритма SHA1 компилировалась, но была неверной.
• Даже если функциональность верная, код от LLM часто менее безопасен: отсутствуют защитные конструкции (defensive programming), что приводит к уязвимостям (переполнение буфера, переполнение целых чисел).
• Fuzzing показал, что код от LLM чаще подвержен зависаниям и крашам, чем написанный человеком.
• По качеству: LLM генерирует «скелетный» код без защитных конструкций, при этом более сложный на строку кода, чем человеческий.
Попытка улучшить:
Мы создали цикл обратной связи: просили LLM повторно сгенерировать код и устранить найденные проблемы (например, malloc overflow, выход за границы массива, null dereference).
Результат:
• Иногда LLM устраняет уязвимость,
• но часто появляются новые проблемы,
• а также были случаи, когда в изначально корректный код после доработки LLM вносил ошибки.
Полное исследование можно почитать по ссылке.
Ниже перевод вступления
Генерация кода с помощью LLM (вместо написания кода с нуля) резко выросла в популярности. Однако последствия для безопасности такого кода остаются неизвестными.
Мы провели исследование, сравнив безопасность и качество кода, написанного людьми, с кодом, сгенерированным LLM, на широком наборе задач: структуры данных, алгоритмы, криптографические процедуры и задачи уровня LeetCode.
• Для оценки безопасности использовались модульные тесты, fuzzing и статический анализ.
• Для оценки качества учитывались сложность и размер кода.
Результаты:
• LLM может генерировать некорректный код, который не реализует требуемый функционал, особенно на сложных задачах. Ошибки могут быть тонкими.
Пример: реализация алгоритма SHA1 компилировалась, но была неверной.
• Даже если функциональность верная, код от LLM часто менее безопасен: отсутствуют защитные конструкции (defensive programming), что приводит к уязвимостям (переполнение буфера, переполнение целых чисел).
• Fuzzing показал, что код от LLM чаще подвержен зависаниям и крашам, чем написанный человеком.
• По качеству: LLM генерирует «скелетный» код без защитных конструкций, при этом более сложный на строку кода, чем человеческий.
Попытка улучшить:
Мы создали цикл обратной связи: просили LLM повторно сгенерировать код и устранить найденные проблемы (например, malloc overflow, выход за границы массива, null dereference).
Результат:
• Иногда LLM устраняет уязвимость,
• но часто появляются новые проблемы,
• а также были случаи, когда в изначально корректный код после доработки LLM вносил ошибки.
arXiv.org
Artificial-Intelligence Generated Code Considered Harmful: A Road...
Generating code via a LLM (rather than writing code from scratch), has exploded in popularity. However, the security implications of LLM-generated code are still unknown. We performed a study that...
🔥7👍2
Сводка апдейтов.
Сходил на конфу от amoCRM, про свой бизнес и выход из найма. Было полезно с точки зрения вдохновения и мотивации.
Из тех кого я знаю выступали Гарик Мартиросян, и Асафьев Стас.
Все спикеры были интересными, очень понравились истории основателей барбер-шопов Top Gun, и сети кофеен Baggins Coffee.
Ну а я тем временем дооформляю ИП. Как закончу - начну снова брать учеников.
Работал в разных форматах, бессрочное наставничество с разовой оплатой. Наставничество с оплатой по месяцам. Даже курс получилось запилить.
Больше всего понравился вариант с работой на результат без привязки к срокам. Попробую еще раз собрать команду мечты из 3-5 учеников и снова повторить такой кейс. ИП поможет с оформлением рассрочки как одним из вариантов оплаты.
23 Октября буду выступать на дне карьеры в ИТМО, от своей текущей работы. Мне повезло учиться в ИТМО 7 лет, быть дважды отчисленным и один раз даже закончить. Поэтому для меня это важное знаковое событие. Буду рассказывать ребятам за которыми охотятся Яндекс, ВК, и прочие крупные РФ игроки, как фиксил багулю.
Сам рассказ мне надо будет придумать. С одной стороны это типа круто. С другой стороны очко жим-жим. Это мое первое публичное выступление.
Ну и фоном работаю. Вписался в одну задачу, которую «было бы неплохо закончить в этом году», - как говорит аналитик) посмотрим, мне нравится такой горизонт планирования. Не без косяков, конечно, но пока вроде справляюсь.
Сори за такую сборную солянку. Веду блог стихийно.
Сходил на конфу от amoCRM, про свой бизнес и выход из найма. Было полезно с точки зрения вдохновения и мотивации.
Из тех кого я знаю выступали Гарик Мартиросян, и Асафьев Стас.
Все спикеры были интересными, очень понравились истории основателей барбер-шопов Top Gun, и сети кофеен Baggins Coffee.
Ну а я тем временем дооформляю ИП. Как закончу - начну снова брать учеников.
Работал в разных форматах, бессрочное наставничество с разовой оплатой. Наставничество с оплатой по месяцам. Даже курс получилось запилить.
Больше всего понравился вариант с работой на результат без привязки к срокам. Попробую еще раз собрать команду мечты из 3-5 учеников и снова повторить такой кейс. ИП поможет с оформлением рассрочки как одним из вариантов оплаты.
23 Октября буду выступать на дне карьеры в ИТМО, от своей текущей работы. Мне повезло учиться в ИТМО 7 лет, быть дважды отчисленным и один раз даже закончить. Поэтому для меня это важное знаковое событие. Буду рассказывать ребятам за которыми охотятся Яндекс, ВК, и прочие крупные РФ игроки, как фиксил багулю.
Сам рассказ мне надо будет придумать. С одной стороны это типа круто. С другой стороны очко жим-жим. Это мое первое публичное выступление.
Ну и фоном работаю. Вписался в одну задачу, которую «было бы неплохо закончить в этом году», - как говорит аналитик) посмотрим, мне нравится такой горизонт планирования. Не без косяков, конечно, но пока вроде справляюсь.
Сори за такую сборную солянку. Веду блог стихийно.
🔥11👍3😎3❤2🤩1
Вчера выступал на дне карьеры в ИТМО 🎓
Для меня это значимое событие. Я сам учился в ИТМО, был дважды отчислен 😅. Но умудрился таки и диплом получить)
Рассказывал о том как расследовал баги и о том, как в принципе работается в финтехе.
Был первый опыт публичного выступления. Понервничал, но вроде все прошло хорошо. Студентам было интересно, насколько я могу судить.
Блин, щас студенты такие крутые. Я в свое время не знал что такое git, а некоторые из них уже в Яндексе работали 💪
Для меня это значимое событие. Я сам учился в ИТМО, был дважды отчислен 😅. Но умудрился таки и диплом получить)
Рассказывал о том как расследовал баги и о том, как в принципе работается в финтехе.
Был первый опыт публичного выступления. Понервничал, но вроде все прошло хорошо. Студентам было интересно, насколько я могу судить.
Блин, щас студенты такие крутые. Я в свое время не знал что такое 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 Надеюсь у меня в итоге тоже получится «довести до ума», свою менторскую деятельность, и я снова начну «причинять пользу» другим 🥲
Посмотрите как круто получилось у одного из тех, кто его проходил:
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 взят из сериала «Умерь свой энтузиазм»?
Узнал только что, пока гуглил как эта херня пишется. Совпадение? Не думаю
А как у тебя дела? Расскажи че-нибудь, пажалуста 🥹
А тем временем идет четвертая неделя работы без выходных.
Надо заканчивать настолько любить программирование. Кажется до добра это не доведет 😅
Но по крайней мере последние выходные мне оплатят в двойном размере, что в целом приятненько.
Кажется виден свет в конце тоннеля, но тоннель что-то не заканчивается 🤪
Надо бы конечно сделать пост про Java….
Ненавижу Java 🥹
Directed by Robert B. Weide
Кстати, а ты знал, что мем с титрами Directed by Robert B. Weide взят из сериала «Умерь свой энтузиазм»?
Узнал только что, пока гуглил как эта херня пишется. Совпадение? Не думаю
А как у тебя дела? Расскажи че-нибудь, пажалуста 🥹
❤5🤓3👾3😁1
Media is too big
VIEW IN TELEGRAM
Вы помните разговоры с уточкой?
Все это, херня, как говорил мой школьный друг.
Вместо того, что-бы говорить с уточкой, гораздо лучше с кавказским акцентом проговаривать свои действия 😎
В этом случае никто не подумает, что вы поехали кукухой, так как для этого разговаривать с игрушкой не нужно.
А бонусом вы прокачаете свой нейролингвистический кортекс (чтобы это ни значило )
Я начал с балкарского, потому что это однозначно +20 к внимательности.
Все это, херня, как говорил мой школьный друг.
Вместо того, что-бы говорить с уточкой, гораздо лучше с кавказским акцентом проговаривать свои действия 😎
В этом случае никто не подумает, что вы поехали кукухой, так как для этого разговаривать с игрушкой не нужно.
А бонусом вы прокачаете свой нейролингвистический кортекс (
Я начал с балкарского, потому что это однозначно +20 к внимательности.
❤5🔥2🥴2🌚1🤣1🗿1🙉1😎1