Путь из продактов в прогеры: выясняю, почему кодеры "гады" такие, делают только баги и плохо соблюдают сроки
Статья будет полезна для тех, кто менторит стажеров/джунов-программистов, и для самих смельчаков-новичков в этом нелегком деле.
Читать далееПросыпаюсь, тянусь к телефону, «на минуточку» захожу в Instagram* (*запрещённая соцсеть, ну вы поняли), сморкаюсь в мемы, новости, рилсы, комментарии. Спустя сорок минут уже нужно собираться, кофе не успел сварить, голова гудит — а я ни одной строки в документе не написал.
Такое утро повторялось чаще, чем хотелось бы признавать вслух. В какой‑то момент стало очевидно: если я сразу кормлю мозг быстрым «сахаром» из ленты, он потом воротит нос от любой «брокколи» — от сложных текстов до длинных писем клиентам.
Читать далееЧто будет, если использовать B-tree индекс в базе данных на столбцах, где всего пара уникальных значений несколько десятком миллионов записей? Рассмотрим, сравним и измерим эффективность на примере приема soft delete.
А так же попробуем раскрыть особенности особенности индексации B-tree, работа планировщика. Не все, конечно, но достаточно, чтобы остались вопросы для дальнейшего изучения.
Будет полезно разработчикам BE, которые надеются найти "серебряную пулю" и решить вопросы производительности быстро и сразу ;-)
Читать далееПривет!
Недавно в рамках одного из проектов на стеке KMP, Ktor и Kotlin Serialization мы с командой решили провести эксперимент и определить возможность и целесобразность минификации тел запросов / ответов на Json.
Да, мы знаем про GraphQL, Protobuf и др., но в нашем случае имел место необузданный интерес наколхозить такое решение. И при всей его наивности удалось сократить средний размер итоговых джсонов (после всех внутренних оптимизаций) на 15-20%.
Читать далееЯ часто встречаю мнение, что идея как таковая в геймдизайне ничего не стоит, и что по факту это «просто пустой звук». И я решила объяснить, что такое «идея» в геймдизайне, как она создаётся, и чем она на самом деле может быть ценна.
Читать далееИсследование построено вокруг новой и достаточно любопытной теории. В её основе лежит следующий механизм. В нем именно ГАМК, вырабатываемая астроцитами, играет основную роль в развитии ПТСР. По сути, избыточный синтез ГАМК в префронтальной коре нарушает способность мозга избавляться от травматических воспоминаний. Исследователи обнаружили, что этот избыток ГАМК обусловлен ферментом MAOB в астроцитах и нарушает регуляцию страха в медиальной префронтальной коре.
Читать далееБиблиотека функций к Script-fu
Готовя эту статью я интересовался, что там в других языках, что там за "дженерики"? Все языки разбирать не буду, но скажу одно: Generic function использующиеся в ЛИСПе и современые дженерики различаются как НЕБО и ЗЕМЛЯ. За дженерики в современных языках в основном ратуют строго типизированные языки, всем понятно, что писать кучу однотипного кода просто глупо. Не скажу точно, кто стоит у истоков современных "дженериков", но пожалуй одним из ранних их проявлений это ШАБЛОНЫ в С++. Почему все остальные языки типа явы и ей подобных, решили назвать свои шаблоны дженериками мне не понятно. (у меня есть язвительное замечание, что хотели как в лиспе, но получилось как всегда). Но дело в том что в ПОДОБНЫХ дженериках языки с динамической типизацией просто не нуждаются. Функция list работает с любыми типами данных, ШАБЛОНЫ не нужны! А в С++ именно контейнеры стали основной побудительной силой использования дженериков, это просто хранилища которые хранят значения, если Си мы можем обойтись (void *) и потом привести тип к нужному, то С++ решил пойти по типобезопасному пути, ну немного "потолстев" в коде. Ну а что же там у современных его последователей?
Рассмотрим Go. Пытаясь избавиться от типа, вводят обобщённую переменную T, но понимая, что сделать то с ней ничего нельзя(кроме как хранить и выдать обратно), пытаются как то её ТИПИЗИРОВАТЬ!!! Вводят КОНТРАКТ! А что делать когда в функции надо будет делать сложение? Надо будет к этому контракту добавить ещё контракт аддитиве? а умножение? или ещё что то? в любом случае код функции БЕДЕН! именно в силу того что мы не знаем что может прилететь нам в типе Т. Я вам расскжу что такое НАСТОЯЩИЕ ДЖЕНЕРИКИ.
Читать далееGo (Golang) создан для эффективной параллельной и конкурентной работы. Его killer feature — легковесные потоки выполнения, называемые горутины (goroutines), и мощные средства синхронизации. Приглашаю разобраться подробно.
Читать далееИтак, на дворе 2025 год, и все только и говорят про AI и новую эпоху развития IT-технологий. Сам я являюсь SAP SD консультантом, поэтому в процессе работы сталкиваюсь с AI не часто, но с интересом отслеживаю возможности его применения.
Давайте же попробуем разобраться, как всем, кто связан с разработкой SAP, могут помочь современные AI-технологии. Первую часть своего скромного исследования я хотел бы посвятить такой теме, как возможность повайбкодить на ABAP.
Читать далееПомните ли вы о существовании goto?
Все его ненавидят, не исключая того, что найдётся пара случаев, когда он действительно упростит жизнь. Например, выход и множества вложенных циклов,. Оставим за скобками то, почему вообще это произошло.
Но почему-то я не встречал никакого негатива насчёт throw. А ведь это точно такая же фигня, если даже не хуже.
Читать далееВслед за текстовыми нейросетями появились модели, которые могут генерировать фотографии и видео. Что одно, что другое — инструмент, которым нужно уметь управлять. Сегодня разберем вопрос: как правильно писать промт для успешной генерации изображения или видео?
Кстати, в своей предыдущей статье я рассказывал о промтах для текстовых моделей, если вам интересно — можете глянуть тут.
Занимайте позицию поудобнее, наливайте чай или кофе, если вы его больше предпочитаете, ну а я начну свое повествование.
Читать далееНаписание собственной операционки — серьезный челендж для системных разработчиков. Мы собрали несколько проектов, авторы которых исследуют устройство ОС и предлагают свои решения, опираясь на проверенные идеи.
Читать далееСтудия Mundfish не просто создала бестселлер, но и защитила его десятками товарных знаков на территории России. Зарегистрированными брендами стали близняшки, Баба Зина, главный герой и даже одна из локаций. Разбираемся в истории студии и её российских товарных знаках.
Читать далееhttps://habr.com/ru/articles/932604/ - мини исследование на тему продолжительности жизни в Усмани, между 1850 - 1916 годами. А вот прямо копии текстов с памятников, которые сохранили краеведы Усмани и дополнения по их же данным.
Для начала - ещё до падения крепостнического ига. Вдумайтесь товарищи и просто человеки! Даже на священника могло животное напасть и забить с кнутом. Вот бы про кого отдельную статью в энциклопедии написать. Герой.
Читать далееНаша родная планета просто переполнена жизнью. За более чем 4 миллиарда лет непрерывной биологической активности на нашей планете жизнь укоренилась практически в каждой нише — от глубочайших океанских впадин до внутренностей вулканических кратеров, от почти кипящих кислотных геотермальных источников до самых высоких заснеженных горных вершин. Живые организмы есть буквально повсюду, они хорошо приспособлены к своим экологическим нишам и способны извлекать энергию и/или питательные вещества из окружающей среды, чтобы выживать, процветать и размножаться.
Несмотря на огромные различия между анаэробным одноклеточным организмом и человеком, их сходство поразительно. Все организмы опираются на одни и те же биохимические молекулы-предшественники, которые, в свою очередь, построены из одних и тех же атомов: прежде всего углерода, азота, кислорода, водорода и фосфора, а также ряда менее распространённых элементов, необходимых для жизненных процессов.
Учитывая, что всё во Вселенной возникло из одного и того же космического события — горячего Большого взрыва, — можно было подумать, что строительные блоки, необходимые для жизни, присутствовали в ней с самого начала. Может показаться, что жизнь просто обязана была возникнуть во время естественного хода вещей. Как сказал персонаж О. Ж. Грант из кинофильма «Трасса-60», «вероятность любого события — 100%, иначе оно бы не произошло».
Читать далееВ статье описывается старинная головоломка, русский вариант которой известен под названием «меледá». Решение этой головоломки тесно связано с информатикой. Здесь и первое в истории практическое использование двоичной системы счисления, рекурсивные алгоритмы, рекуррентные соотношения и др.
Головоломка, в России называемая старинным словом «меледá», состоит из замкнутой проволочной «вилки» («челнока»), имеющей вид длинной шпильки для волос и воткнутой обоими свободными концами в рукоятку, и нескольких колец, связанных между собой довольно сложным образом (см. рис. 1). Задача состоит в том, чтобы снять всю систему колец с вилки или надеть её обратно.
Читать далееЭто отрывок из большой статьи в журнале "Философские проблемы информационных технологий и киберпространства". В ней приводится критика современного теоретического представления об аналогии как структурного отображения (Д. Гентнер) с одной стороны и статистического метода получения аналогии "по контексту употребления" (Т. Миколов). Мы предлагаем иной метод получения аналогии, который основан на методе аналогии по предикатам (статья), что дает значительные преимущества. Во-первых, ее легче получить в отличие от статистических методов, которые требуют обучения на большом корпусе. В нашем методе достаточно прим. 200 книг. Во-вторых, это интерпретируемая и управляемая аналогия - всегда можно посмотреть, по каким предикатам получена аналогия и какие будут аналоги по другим предикатам. Это отправная точка исследования. Далее будет показана фундаментальная роль аналогии в нашем мышлении.
Читать далееВ ближайшем будущем мы станем свидетелями того, как агенты — автономные программы на базе ИИ — перестанут сидеть в дата-центрах и обретут свободу перемещения по интернету. Они будут заходить в почтовые ящики, обновлять CRM-системы и обрабатывать данные на веб-панелях без какого-либо вмешательства человека после единовременной настройки. Уже сейчас заметно, что привычная схема создания учётных записей и управления паролями не подходит для машин.
Потребность в новом уровне авторизации назрела: нужен единый реестр доверенных агентов, где каждый из них получил бы собственный криптографический идентификатор и прописанные права доступа. Это будет нечто большее, чем просто OAuth для людей — речь пойдёт о стандарте для «машинных аккаунтов», гарантирующем безопасность и удобство одновременно. Агент сможет один раз зарегистрироваться и затем беспрепятственно авторизовываться на любых сервисах-участниках этой экосистемы.
Читать далееБольшие языковые модели в виде чат-ботов очень правдоподобно имитируют диалог как всезнающий собеседник и поэтому получили широкое распространение. Но даже Google в своем чат-боте Gemini не советуют доверять тому, что напишет чат-бот и просят проверять его ответы. В данном обзоре будут проанализированы различные типы ошибок LLM такие как проклятие инверсии, обработка чисел и др., чтобы выявить их причины. Такой анализ привел к выводу об общих причинах ошибок, заключающемся в том, что трансформеры не обладают глубокой аналогией, абстракцией и избирательностью контента, учитываемого в вычислении ответа (inference). Но наиболее важным выводом является то, что трансформеры, как и другие нейросети, построены по концепции обработки входного сигнала, что создает сильную зависимость от нерелевантной информации, которую не может компенсировать слой внимания трансформера. Концепция нейросетей была заложена в 50-х идеей перцептрона Ф. Розенблата и не учитывала тех достижений когнитивной психологии, которые появились позже. Согласно же конструктивисткой парадигме, входной слов (или перцепция) является только способом проверки правильности сконструированной предиктивной модели для возможных ситуаций. Это же служит причиной самой большой проблемы трансформеров, называемой галлюцинациями. И устранение ее возможно только при изменении архитектуры нейросети, а не за счет большего количества данных в обучении.
Но это далеко не все проблемы, которые непреодолимы трансформерами без помощи людей. Это и проблемы с логикой, и с вычислениями в больших последовательностях, и следование правилам, и, конечно-же, галлюцинации. Таки примеры и будут проанализированы в статье. Отсюда следует все чаще звучащий тезис о том, что необходимо искать новую архитектуру для создания поистине интеллектуальных систем. Эта статья посвящена поиску тех архитектурных принципов, которые могу приоткрыть путь к новой архитектуре. И в этом нам помогут как раз те ошибки трансформеров, которые описаны исследователями. Они прямо указывают на те принципиальные недостатки, причины которых могут быть как раз в отсутствии необходимых функций и структур нейросети. И цель исследования состоит в том, чтобы проанализировать такие ошибки «мышления» трансформеров, чтобы предположить, каких способностей не хватает трансформерам.
Читать далееДроп-домены. Зачем они нужны? Как с их помощью вывести сайт в топ-10 Яндекса, Google и даже попасть в AI-ответы? И, главное, где такие домены найти и как выбрать лучший? Обзор топовых решений на 2025 год.
Читать далее