Pull to refresh
28
30
Константин @Volokhovskii

Team Lead

Send message

Топ бесплатных нейросетей на все случаи жизни

Reading time10 min
Views55K

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

Приятного прочтения!

Читать далее
Total votes 46: ↑31 and ↓15+21
Comments18

Даже математики ошибаются

Level of difficultyMedium
Reading time13 min
Views11K

Мы знаем, что математика — наука точная. Значит ли это, что GeoGebra — программное обеспечение для интерактивного изучения математики — столь же точно? Проанализируем же исходный код проекта с помощью PVS-Studio!

Читать далее
Total votes 7: ↑7 and ↓0+8
Comments2

Любой может получить доступ к удалённым и приватным данным репозиториев GitHub

Level of difficultyMedium
Reading time6 min
Views48K

Кто угодно может получать доступ к данным из удалённых форков, удалённых репозиториев и даже приватных репозиториев GitHub. И эти данные доступны всегда. Это известно разработчикам GitHub, и они намеренно спроектировали систему таким образом.

Это настолько огромный вектор атак для всех организаций, использующих GitHub, что мы решили ввести новый термин: Cross Fork Object Reference (CFOR). Уязвимость CFOR возникает, когда форк одного репозитория может получить доступ к требующим защиты данным из другого форка (в том числе и к данным из приватных и удалённых форков). Аналогично Insecure Direct Object Reference, при CFOR пользователи передают хэши коммитов, чтобы напрямую получать доступ к данным коммитов, которые иначе были бы для них невидимыми.

Давайте рассмотрим несколько примеров.
Читать дальше →
Total votes 113: ↑105 and ↓8+126
Comments41

Поисковый запрос на баги в Apache Solr

Level of difficultyMedium
Reading time14 min
Views737

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

Читать далее
Total votes 10: ↑10 and ↓0+15
Comments1

Как сделать анализатор кода за два дня

Level of difficultyMedium
Reading time23 min
Views7.6K

Статический анализ — это очень мощный инструмент, позволяющий следить за качеством кода. Предлагаем вместе попробовать написать простой Lua анализатор на Java, чтобы понять, как устроены статические анализаторы кода внутри.

Читать далее
Total votes 24: ↑24 and ↓0+30
Comments16

Компилятор за выходные: синтаксические деревья

Level of difficultyMedium
Reading time11 min
Views27K

Вам когда-нибудь приходилось задаваться вопросом, как работает компилятор, но так руки и не дошли разобраться? Тогда этот текст для вас. Мне тоже не доводилось заглядывать под капот, но тут так случилось, что мне нужно прочитать курс лекций о компиляторах местным третьекурсникам. Кто встречался с некомпетентными преподавателями? Здравствуйте, это я :)

Итак, чтобы самому разобраться в теме, я собираюсь написать транслятор с эзотерического языка программирования wend (сокращение от week-end), который я только что сам придумал, в обычный ассемблер. Задача уложиться в несколько сотен строк питоновского кода. Основной репозиторий живёт на гитхабе (не забудьте заглянуть в мой профиль и посмотреть другие tiny* репозитории).

Читать далее
Total votes 74: ↑74 and ↓0+74
Comments28

Побитовые проверки в Java и почему они так неоднозначны

Level of difficultyMedium
Reading time8 min
Views4.9K

Операторы "&" и "|" не вызывают вопросов, когда применяются в подходящих ситуациях. Но знаете ли вы о всех последствиях использования побитовых операторов вместо логических в Java? В этой статье мы рассмотрим как плюсы производительности такого подхода, так и минусы его читабельности.

Читать далее
Total votes 15: ↑15 and ↓0+18
Comments8

Как шаблонный метод может сломать ваш Java код

Level of difficultyMedium
Reading time9 min
Views7.9K

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

Читать далее
Total votes 10: ↑9 and ↓1+11
Comments21

Ловушки volatile, DCL и синхронизации в Java

Level of difficultyMedium
Reading time11 min
Views5.3K

А что если окажется, что простые знания на самом деле более нюансированные, а старые знакомые, такие как Double-checked locking, являются неоднозначными? Именно на такие мысли наталкивает изучение кода реальных проектов. Результаты этого исследования мы и рассмотрим в этой статье.

Читать далее
Total votes 9: ↑9 and ↓0+11
Comments10

21 ошибка в 21-й версии Apache NetBeans

Level of difficultyMedium
Reading time13 min
Views2.7K

Apache NetBeans — одна из первых IDE для Java, поддержка которой не прекращается на протяжении почти 30 лет. Совсем недавно вышла 21-я версия. Мы решили проверить исходный код такого долгожителя и выбрали наиболее интересные ошибки, которые разберём в этой статье.

Читать далее
Total votes 13: ↑13 and ↓0+16
Comments1

Что скрывается в коде игрового движка, написанного на Java?

Level of difficultyMedium
Reading time7 min
Views8.5K

Вы когда-нибудь интересовались игровыми движками, написанными на Java? В этой статье мы рассмотрим и проверим на наличие ошибок в исходном коде один из популярных игровых движков — jMonkeyEngine. Возможно, мы даже узнаем, почему игры пишутся на C# и C++, а не на Java.

Читать далее
Total votes 14: ↑14 and ↓0+17
Comments8

Что делает ChatGPT… и почему это работает?

Level of difficultyMedium
Reading time75 min
Views154K

То, что ChatGPT может автоматически генерировать что-то, что хотя бы на первый взгляд похоже на написанный человеком текст, удивительно и неожиданно. Но как он это делает? И почему это работает? Цель этой статьи - дать приблизительное описание того, что происходит внутри ChatGPT, а затем исследовать, почему он может так хорошо справляться с созданием более-менее осмысленного текста. С самого начала я должен сказать, что собираюсь сосредоточиться на общей картине происходящего, и хотя я упомяну некоторые инженерные детали, но не буду глубоко в них вникать. (Примеры в статье применимы как к другим современным "большим языковым моделям" (LLM), так и к ChatGPT).

Читать далее
Total votes 248: ↑248 and ↓0+248
Comments121

Применение ООП на практике

Level of difficultyMedium
Reading time13 min
Views18K

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

Читать далее
Total votes 14: ↑13 and ↓1+14
Comments17

Внутренний Я(ндекс)

Level of difficultyEasy
Reading time8 min
Views88K

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

Да, уже были статьи про собеседование и даже в эту же структуру, некоторые из них я видел, но не во всём с ними согласен, к тому же конкретно С++ разработчиков я там не видел.

Читать далее
Total votes 397: ↑391 and ↓6+457
Comments288

Немного о гигиене Java кода

Level of difficultyMedium
Reading time6 min
Views9.7K

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

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

Как создать игру, если ты ни разу не художник

Reading time127 min
Views44K

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

И не надо…
Читать дальше →
Total votes 107: ↑106 and ↓1+105
Comments71

Обзор нововведений в C# 12

Level of difficultyMedium
Reading time8 min
Views27K

Уже середина осени, а это значит, что новая версия C# на пороге. Самое время узнать, какие изменения настигнут язык совсем скоро. Хоть количество нововведений в этот раз уступает предыдущим релизам, интересных среди них немало.

Читать далее
Total votes 46: ↑46 and ↓0+46
Comments63

Куда посылает игроков Гусь-матерщинник из Atomic Heart? Краткий путеводитель по мемам и отсылкам

Level of difficultyEasy
Reading time11 min
Views34K

Отдельное удовольствие в компьютерных играх составляет наблюдать, как персонажи выходят за рамки своего сеттинга и становятся по-настоящему меметичными. В Atomic Heart это произошло минимум с четырьмя барышнями: робо-балеринами Левой и Правой, «пошлым холодильником» Элеонорой и суровой бабой Зиной с «калашниковым». Однако гусь из нового DLC «Инстинкт истребления» буквально сломал схему мемного персонажа.

За неполных две недели он не просто успел стать самым меметичным персонажем DLC, несмотря на присутствие всех полюбившихся героев первой части; он оказался буквально энциклопедией мемов, ходячим Лурком на лапках! Даже самому терпеливому игроку начинает хотеться пришибить назойливое пернатое уже после пары-тройки фраз. Для истории геймдева это не только свежо, но и в каком-то смысле уникально. Попробуем же разобраться: куда именно посылает и отсылает игроков Мемный Гусь?
Читать дальше →
Total votes 70: ↑51 and ↓19+55
Comments21

Бессильный сборщик мусора или неуправляемая память в .NET

Level of difficultyMedium
Reading time7 min
Views9.9K

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

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

Читать далее
Total votes 11: ↑11 and ↓0+11
Comments50

Как с помощью практики на LeetCode я получил несколько офферов

Level of difficultyEasy
Reading time4 min
Views53K

После рассказа о том, как я получил работу в Amazon, в этом посте на reddit мне задали множество вопросов о том, как мне помог LeetCode в подготовке к собеседованиям.

В статье я отвечу на эти вопросы.

Сколько времени это заняло?

Я начал готовиться за 2-3 месяца до собеседований в BigTech. В то время я тратил по 2-3 часа в день на подготовку.

Читать далее
Total votes 36: ↑30 and ↓6+34
Comments54
1

Information

Rating
235-th
Location
Тула, Тульская обл., Россия
Registered
Activity