Социальные сети Рунета
Понедельник, 20 мая 2024

[Перевод] Разбираем самый маленький PNG в мире Самый миниатюрный PNG в мире весит 67 байт и представляет собой один чёрный пиксель. Выше вы видите его в 200-кратном увеличении. Красота, не так ли? Состоит этот файл из четырёх частей: Сигнатура PNG, одинаковая во всех файлах этого формата: 8 байт. Метаданные изображе...

Python — Эволюция создания объектов(первая часть) Как упростить себе жизнь или почему ты должен уметь создавать объекты правильно? На этот вопрос я буду отвечать на протяжении всей статьи и уверен, что многим из вас, читающим данную статью, будет полезным знать, что такое осознанный подход при создании объектов в вашей кодо...

[Перевод] Как так вышло, что при лишнем шаге сборки моё приложение на Zig ускоряется в 10 раз Вот уже несколько месяцев я интересуюсь двумя технологиями: языком программирования Zig и криптовалютой Ethereum. Чтобы подробнее изучить обе, я написал на Zig интерпретатор байт-кода для виртуальной машины Ethereum.Язык Zig отлично подходит для оптимизации производительност...

Файловый ввод, сделанный по-человечески Поводом к написанию данной статьи и к разработке соответствующей мини-библиотеки ffh стало одно из практических заданий по дисциплине ‘Языки программирования’, которую я веду. В этом задании необходимо прочитать все строки из текстового файла для последующей обработки. Так ...

[Перевод] Итак, вы унаследовали старую кодовую базу на C++. Что дальше? Вы жили своей обычной жизнью, но внезапно, всё поменялось. Возможно, вы устроились в новое место, сменили команду или из вашей компании ушёл сотрудник. Теперь вы отвечаете за кодовую базу на C++. Она большая, сложная и своеобразная; достаточно слишком долго на неё посмотр...

Старые кодовые базы как классическая литература Сохранившиеся фрагменты греческих папирусов, источник В языке и литературе работает известный принцип начитанности: чем больше человек читает хороших книг, тем больше у него словарный запас, шире кругозор. Развивается понятийный аппарат, сама собой улучшается грамотность б...

Суслик и пингвин: кодим на Go под Linux Язык ядра Linux, его модулей и утилит написаны на языке C. Хоть он и является старым языком и прародителем многих других, но его до сих пор используют. В экосистему линукса постепенно проникают и более молодые языки — например, Rust. Но сегодня мы поговорим об детище Google ...

Пишем приложение на Python для подготовки к собеседованиям по Python На конец 2023 года язык программирования Python является самым популярным по индексу TIOBE. Что касается работы, то по количеству вакансий в мире язык Python занимает второе место (после JavaScript/TypeScript). Поэтому у соискателей на должность, где требуется Python, возник...

[Перевод] Классическое программирование на грани вымирания Все изображения в этой статье сгенерированы нейросетью DALL-E 2 Приближается конец эпохи классических компьютерных наук, и большинство из нас словно динозавры в ожидании падения метеорита. Период моего юношества пришёлся на 80-е годы. Тогда я занимался программированием ПК...

[Перевод] Я разработчик, а не компилятор Недавно у меня было телефонное собеседование, на котором мне задавали разнообразные вопросы по Java. Это стандартное собеседование и большинство вопросов тоже было вполне стандартным:Что такое полиморфизм?В чём разница между List и Set? Когда стоит использовать первое, а ког...

[Перевод] Моя любимая задача для собеседований по программированию В сети есть уйма постов и видео, где разбираются ответы на вопросы LeetCode. Но обычно рассмотрение в них происходит с позиции соискателя, а не работодателя. В этой же статье я приведу разбор собственной задачи по программированию, которую использовал при приёме людей на ра...

EVM opcodes: перестанем бояться байт-код Привет, Хабр! В этой статье я погружу вас подробнее в тему низкоуровневых машинных инструкций EVM. Будет описание, сколько стоят опкоды в единицах газа и где можно про это узнать. Еще посмотрим, как разбирать байткод на базе простого примера. Прежде чем читать эту стать...

Язык языку рознь: идентификация человека по отпечатку его языка Каждый человек по-своему уникален, несмотря на фундаментальные базовые сходства, обусловленные привязкой к одному биологическому виду. Цвет волос, оттенок глаз, рост, вес, и многое другое делает нас отличными от наших собратьев. Чаще всего, когда речь заходит об уникальных...

[Перевод] Распаковываем архив gzip вручную. Часть 2 В этой части мы, как и в первой, разархивируем файл gzip вручную, но теперь ещё и декодируем коды Хаффмана. Для начала запишем данные на диск: $ echo "hector the frantic father on an anchor or a rare fat cat sat on the ranch" > test-huff.txt $ xxd test-huff.t...

Kotlin Multiplatform в мобильной разработке. Рецепты общего кода для Android и iOS Kotlin Multiplatform — технология, которая позволяет использовать общую кодовую базу для бизнес-логики приложений разных платформ и писать платформенный код только там, где это необходимо. Хотя последнее время о ней много и часто говорят, найти информацию о нюансах внедрения...

[Перевод] 8 углубленных вопросов на собеседованиях на роль сеньора в JavaScript JavaScript — это мощный язык, который является частью фундамента интернета. У этого мощного языка также есть некоторые свои особенности. Например, знаете ли вы, что значение 0 === -0 равно true, или что Number("") дает 0? Дело в том, что иногда эти причуды могут ...

Сомнительная инициатива ВК… Добрый день, вечер или что у вас там на марсе. Хотел бы обратиться к людям придумавшим новый, модный и очень интересный инструмент под кодовым названием «perfomance-review».Немного обо мне. Я сотрудник ООО «ВК». Пожалуй это всё что я могу рассказать о себе, так как эта стать...

Чтение Micro QR Code версии М3 (кириллица, первый тип библиотек) Задание: необходимо прочитать Micro QR Code версии М3, содержащий кодовое слово, на примере закодированных слов – АБВГДЕ, абвгде, АБВГ и абвг (почему именно такое количество символов будет расшифровано далее), на основе алгоритмов, приведенных в ГОСТ Р ИСО/МЭК 1800...

Что будет если переименовать суперпользователя? Экспериментируем, удивляемся и расстраиваемся… В интернете много желающих перебирать пароли к SSH, что получить мощности вашего сервера безвозмездно. Как это можно предотвратить? Отключить вход по паролю? Лениво. Использовать нестандартный порт? Не поможет. Поставить fail2ban? Скучно. Переименовать root? Вот это хорошая...

Как и почему я писал для Флиппера на Си-с-классами Мой Флиппер дошёл до меня больше полугода назад, но что-то под него написать я собрался только сейчас. Его API рассчитаны на язык С — а у меня с ним опыта не очень много. Но проблем с тулингом не возникло — у Флиппера есть своя система сборки, которая скачала мне нужный тулч...

Вопросы по SQL, которые часто задают на собеседовании. Часть 1 SQL (Structured Query Language) – это язык программирования, используемый для управления реляционными базами данных. В этой статье я собрал вопросы по SQL, с которыми вы можете столкнуться на собеседовании. Их часто задают для проверки общих знаний и навыков. Читать далее

@Scheduled + @Async (в Spring Boot) Недавно отвечал на вопрос почему аннотации @Scheduled и @Async иногда используют вместе, данный вопрос попался человеку на собеседовании.Многие начинающие разработчики на java не до конца понимают в каких потоках происходит выполнение программы в таком случае.В данном матери...

[recovery mode] Разработка расширения для PHP на C++. Хуки встроенных функций и методов PHP - это мощный и широко используемый язык программирования для веб-разработки. Однако, иногда требуется расширение функциональности или модификация стандартного поведения PHP с использованием более низкоуровневых языков, таких как C++. В этой статье мы рассмотрим, как с...

Nota, Typst и Evidence. Языки программирования для генерации документов Все настолько привыкли к Markdown, что считают его неким стандартом для оформления документов в вебе. Но это не конечная истина, высеченная на камне, а просто популярный язык разметки, как HTML и TeX. В то же время появляется всё больше новых языков, которые позиционируют...

Как создать свой Spring Boot 3 — стартер? Допустим, Вы разрабатываете несколько приложений или микросервисов на Java. Каждое из них уникальное, и содержит свою собственную бизнес логику. Однако, в каждом из них может быть необходимость использовать общую логику. Например, логику аутентификации, как это часто бывает ...

Геймдев на Lisp. Часть 1: ECS и металингвистическая абстракция В данной серии практических руководств мы подробно рассмотрим создание несложных 2D-игр на Common Lisp. Результатом первой части станет настроенная среда разработки и простая симуляция, отображающая двумерную сцену с большим количеством физических объектов. Предполагается, ч...

Как оптимизировать код на С для x86-процессоров: подсистема кэша и памяти, инструкции AVX-512 Меня зовут Андрей Бакшаев, я ведущий инженер-программист в YADRO. Моя команда занимается разработкой и оптимизацией математических библиотек под архитектуру x86. До этого я 15 лет работал в Intel. Значительная часть моих задач заключалась в том, чтобы реализовывать некоторые...

Правило 16 байт: развенчиваем миф о производительности структур в C# По умолчанию, при передаче в метод или при возврате из метода, экземпляры значимых типов копируются, когда как экземпляры ссылочных типов передаются по ссылке. В 2008 году была выпущена книга «Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET L...

[Перевод] Программирование вне парадигм Со времени изобретения высокоуровневых языков программирования в отрасли доминируют парадигмы. Именно парадигмы, от императивных до объектно-ориентированных и функциональных – в основном формируют современный дискурс, касающийся языков программирования. Читать дальше →

Готовимся к вопросам по вёрстке на интервью Frontend-разработчика: значения свойства display Привет, Хабр. Я продолжаю отвечать на вопросы из собеседований на должность фронтендера. Сегодня я отвечу на следующий вопрос: «В чём отличия между значениями block, inline, flex, inline-flex, grid и inline-grid для свойства display?» Прошу внимания. Мой ответ будет основ...

Нельзя писать безопасный код на C++ без санитайзеров С++ видится мне огромным франкенштейном: очень уж много разнообразных способов описать свои намерения. В добавок к этому язык пропагандирует политику zero-cost abstractions, из которой следует (помимо прочего), что программист в ответе за все св...

Задача на собеседовании, её решение и его разбор Привет, обычно пару раз в год я хожу на собеседования без намерения менять работу, а для получения нового опыта и в поисках актуального ответа на вопрос "А что сейчас спрашивают?" Часто там задают обычные, даже скучные вопросы вроде "расскажите о контракте меж...

Проектируйте правильно Проект это сложная история. Обычно это относительно сложное и длительное мероприятие, создать программный продукт и провести его через стадию активной разработки до первой реальной коммерческой эксплуатации. Лично я видел как этот путь, в среднем, занимал от 2 до 5 лет на пр...

Константность в C++ Продолжаем серию «C++, копаем вглубь». Цель этой серии — рассказать максимально подробно о разных особенностях языка, возможно довольно специальных. Это седьмая статья из серии, список предыдущих статей приведен в конце в разделе 10. Серия ориентирована на программистов, им...

ChatGPT для разработчиков: API, лимиты, как втягивать в него базу знаний, что нельзя сделать, что лучше делать осторожно Мы с командой вернулись тут с Хайлоада, и там даже CTO крупных компаний задают много вопросов про разработку с LLM. Наша компания занимается прикладной разработкой всего того, что касается GPT/LLM. Расскажу про очевидные вещи, о которых у меня там спрашивали CTO и разраб...

Дегуглификация Chromium На сегодня Chrome — пусть и не самый быстрый, но самый популярный браузер в мире, с большим отрывом от остальных. А единственным реальным конкурентом остался Firefox, потому что практически все остальные тоже перешли на кодовую базу и движок Chromium. Разработать новый бра...

Cotea: программный контроль исполнения Ansible Привет! Я Давид Бадалян, работаю в Исследовательском центре доверенного искуственного интеллекта ИСП РАН. В статье я хочу поговорить об Ansible – одной из самых популярных систем по автоматизации развёртывания. Стоит запустить Ansible программно, и он становится черным ...

На Geekbench появился неизвестный смартфон Realme с чипсетом Snapdragon, называемым "Ананас" Кодовое название «ананас» соответствует внутреннему кодовому названию Snapdragon 8 Gen 3.

[recovery mode] С какого курса начать обучение программированию для детей? Голосование Знакомство с программированием может начинаться уже с первого класса и даже раньше: с пяти лет. Даже в этом возрасте ребенок способен освоить логику и основные принципы написания кода. Для обучения можно использовать различные языки программирования, например, Скретч, Пайтон...

[Перевод] Распаковываем архив gzip вручную В этой небольшой статье мы создадим архив gzip, после чего разберём его внутренние составляющие и просмотрим начинку. Избегая лишней сложности, в качестве содержимого для сжатия мы просто запишем в изначальный файл 8 символов a. $ echo "aaaaaaaa" > test.out $ ...

Функциональное программирование в Python: ежедневные рецепты Как говорится, спроси пять программистов, что такое функциональное программирование, получишь шесть разных ответов. В целом это программирование через функции в их математическом понимании, то есть когда функция принимает что-то на вход и что-то возвращает на выходе, не меня...

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

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

Я мыслю MOV EAX, 1 Чем больше усилий ты прикладываешь, тем лучше это у тебя получается. Программирование не исключение, и чтобы с уверенностью сказать: "Я могу написать это" нужно много работать. Эта статья о том с какого языка начать путь в программировании и о том как понять принципы работы ...

ООП в Mathematica В комментариях к мой статье пользователь @Refridgeratorв ответ на мой вопрос написал, что в Wolfram Language (WL) не хватает следующего: "ООП, перегрузки операторов, строгой типизации, событийно-ориентированного программирования, дата-ориентированного программирования, парал...

Малоизвестные и интересные особенности C и C++ В C и C++ есть особенности, о которых вас вряд ли спросят на собеседовании (вернее, не спросили бы до этого момента). Почему не спросят? Потому что такие аспекты имеют мало практического значения в повседневной работе или попросту малоизвестны.Целью статьи является не освеще...

[Перевод] Систематический подход к отладке На работе у меня есть репутация хорошего отладчика. Очень часто всякая странная фигня в конечном итоге оказывается у меня на столе1, пройдя сначала через руки одного-двух опытных инженеров. Не будет преуменьшением сказать, что моя работа в значительной части и заключается в...

В Пекине на автосалоне пройдет демонстрация электрокроссовера Hongqi EHS7 Модель, ранее известная под кодовым обозначением E202, в товарном исполнении будет называться EHS7.

Практический гайд по процессам и потокам (и не только) в Python За то время что я занимаюсь менторством я заметил, что большинство вопросов новичков связаны с темами: конкурентность, параллелизм, асинхронность. Подобные вопросы часто задают на собеседованиях, в работе эти знания позволяют писать более эффективные и производительные систе...

Расшифровка BitLocker — добыча ключа из микросхемы TPM Подключение сниффера к модулю TPM по шине LPC Полнодисковое шифрование BitLocker в ОС Windows считается довольно надёжным способом сохранения данных. По умолчанию оно использует алгоритм Advanced Encryption Standard (AES) в режиме сцепления блоков (CBC) или в режиме подстр...

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

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

[Перевод] Поговорите с детьми об ИИ: шесть вопросов, которые стоит обсудить ИИ, и в том числе ChatGPT, активно входит в нашу жизнь. Сейчас многие взрослые уже освоились с технологией, а школы решили исследовать, как использовать системы ИИ для обучения детей важному навыку — критическому мышлению. Но и в школе, и в жизни дети сталкиваются не тольк...

[Перевод] Анатомия Hello World на языке C Эта статья посвящена программе Hello World, написанной на C. Это максимальный уровень, на который можно добраться с языком высокого уровня, не беспокоясь при этом о том, что конкретно язык делает в интерпретаторе/компиляторе/JIT перед выполнением программы. Изначально я хо...

Мамкин программист про ИИ, «программисты скоро будут не нужны» и прочие страшилки Недавно на Хабре вышел перевод статьи под названием: "Классическое программирование на грани вымирания" с постапокалиптической картинкой, где автор буквально пишет, что "Приближается конец эпохи классических компьютерных наук, и большинство из нас словно динозавры в ожидании...

Операторы в Kubernetes Ручные изменения в кластере доставляют одну лишь головную боль. А чтобы от них избавиться, используются операторы, в частности K8s. Что это такое? И самое главное, как его написать?Меня зовут Дмитрий Самохвалов, я архитектор в компании КРОК. Пробовал себя в разработке, инфра...

Размышления о структурном программировании Изначально я хотел назвать статью как нибудь вызывающе, например, "Как наука может превращаться в религию", "В ловушке искажений смыслов структурного программирования" или "О чем вам забыли рассказать про структурное программирование", но в рез...

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

Какой язык программирования выбрать? Обзор на Go Продолжаем серию статей про особенности, применение, плюсы и минусы языков, которые используются в «Криптоните». В этой статье наш инженер департамента инфраструктуры Алексей Косов расскажет про Golang.Ранее наши разработчики делали обзоры на Rust, Scala, JavaScript и Spark....

Fuzzing-тестирование. Практическое применение Привет, Хабр! Меня зовут Никита Догаев, я Backend Team Lead в команде Контента на портале поставщиков Wildberries. Мы отвечаем за карточки, которые каждый день испытывают на прочность сотни тысяч продавцов из разных стран.В статье поделюсь своим опытом применения фаззинга дл...

[Перевод] Бегство от реальности: как перестать подгонять свой код под устаревшие шаблоны Как описать хороший код в трех словах? Исходя из опыта — это код, который [приятно поддерживать и эксплуатировать]. СОЛИД, SOLID, СОЛИД... Редко код ревью обходится без упоминания этих принципов, но для разработчика это не означает ничего хорошего. А что, если я скажу вам, ч...

Безопасное программирование на Си Статья для первокурсников технических ВУЗов, которым повезло изучать Си в качестве первого языка программирования. В рамках данной работы расскажу и покажу, как избегать типовых ошибок при разработке, а если уж вы эту ошибку допустили - как быстро и безболезненно её найти. Ч...

Стеганография в файлах формата .m4a Стеганография - это искусство и наука передавать сокрытые данные внутри других, не сокрытых данных.Подробнее можно прочитать здесь.Часто, когда говорят о стеганографии, не выходят за рамки LSB в картинках (хотя и в картинках можно сделать нечто более оригинальное ). В д...

Помощь с текстом, перевод видео с японского и корейского, распознавание QR-кодов — что умеет обновлённый Яндекс Браузер Сегодня мы выпускаем большое обновление для Браузера с рекордным числом изменений, в основе которых лежат нейросети или другие методы машинного обучения. Теперь Браузер исправит ошибки в тексте, сократит или улучшит его, перескажет видео с японского или корейского, распознае...

Где мне это пригодится в жизни или применение Nothing в Kotlin на примере В данной статье я хочу показать, почему развитая система типов в языке программирования это здорово. Я попробую провести небольшой ликбез о таких на первый взгляд сложных вещах, как sealed-иерархии, ковариантность и тип Nothing на понятном практическом примере создания своей...

11lc — инновационный компилятор для нового языка программирования Данная статья посвящена находящемуся на стадии проектирования компилятору 11lc. В ней перечисляются наиболее яркие особенности этого компилятора. Отсутствие скрытой неэффективности Это свойство скорее языка программирования 11l, нежели компилятора. Однако оно настолько важн...

[Перевод] Регулярные выражения — это не трудно Регулярные выражения имеют дурную славу из-за присущей им сложности. Это справедливо, но я также считаю, что если сосредоточиться на определенном ключевом подмножестве регулярных выражений, то это не так уж и сложно. Большая часть трудностей возникает из-за различных «шорт...

Чёрная метка от Пятёрочки «Пятёрочка» не хочет видеть среди своих работников членов профсоюзов и всячески их дискриминирует. Подробнее можно ознакомиться в статье газеты «Солидарность».Во внутренней сети «Пятёрочки» ввели код при увольнении: «член профсоюза». В списке кодов присутствуют уже такие: «с...

[Перевод] LISP — исследование оригинального языка ИИ Откройте для себя один из первых языков программирования, который, по мнению Майка Бедфорда, не мог быть более непохожим на своих ранних собратьев.В предыдущей части нашей серии, посвященной классическим языкам программирования, мы рассмотрели ALGOL, а в этом месяце мы углуб...

Почему Сборка с Помощью Есlipse ARM GCC Плагинов это Тупиковый Путь В программировании микроконтроллеров часто используют Eclipse с плагинами.Главным образом от незнания языков скриптов сборки (Make, Cmake, Ninjia и т п).В этом тексте я напишут почему способ сборки из Eclipse c ARM плагинами — это тупиковый путь...

От «здравствуйте» до こんにちは: языки программирования не на английском языке Существует огромное количество самых разных языков программирования, их насчитывается несколько тысяч. Какие‑то — идеальны для работы, другие же созданы just for fun. К слову, есть ЯП, представленные программистами из неанглоязычных стран, в них...

[Перевод] Арифметика первого класса в системе типов Rust Арифметика – наука непростая, но к нашему удобству работу с ней можно облегчить с помощью экспрессивной системы типов языка Rust. В статье мы разберём реализацию на этом языке простейших математических операций, таких как сложение, вычитание, умножение и деление. Читать дал...

Развиваем продукт «без проблем» В своей прошлой статье я рассказывал о том, как использовать метрики при разработке продуктов. Статья получилась довольно насыщенная, но теоретическая.В этой статье я хочу рассказать о том, как на практике применять эти подходы при развитии продуктов. Можно ли опираться толь...

Готовимся к собеседованию по Rust: 4 самых частых вопросов. Часть 1 Привет, Хабр!Rust — язык программирования с акцентом на безопасность, скорость и параллелизм. Rust решает многие проблемы, с которыми сталкиваются на других ЯП, например, управление памятью без сборщика мусора. Очевидно из-за многих преимуществ Rust выбирают все большей комп...

Многопоточность и параллелизм в Go: Goroutines и каналы Язык программирования Go, разработанный с упором на простоту и эффективность, предлагает уникальный подход к реализации параллельных вычислений через Goroutines и каналы. Goroutines, представляющие собой легковесные потоки выполнения, обеспечивают значительные преимущест...

Сборник советов, как упростить работу с YAML-файлами YAML (.yml) — популярный язык для конфигурационных файлов, широко используемый DevOps в подходе «Инфраструктура как Код» (IaC). Несмотря на то, что работать с ним бывает проще, чем с тем же JSON (особенно в контексте взаимодействия с большими объемами данных), иногда использ...

Почему соединения WPA3 разрываются через 11 часов В 2018 году началась сертификация первых устройств Wi-Fi с поддержкой нового протокола безопасности WPA3, а в последующие года WPA3 стал привычной функцией для всего нового оборудования, включая маршрутизаторы, одноплатники вроде Raspberry Pi и т. д. Но иногда технология вы...

Номера телефона +7 (932) — какой оператор и кто может звонить? Какому оператору принадлежат и кто может звонить с номеров телефонов с кодом +7 (932)? Мошенники и спамеры могут использовать различные мобильные номера для совершения звонков, поэтому важно заранее знать, кто может звонить. В статье расскажем, какой мобильный оператор и в ...

Вся мощь паттернов в Wolfram Language Редкая птица долетит до середины Днепра, не каждый разработчик осилит все паттерны в WL. Нет ему равных языков в паттерн-матчинге. Чуден и необычен язык этот. Изобилует он точками, подчеркиваниями, да запятыми так, что в глазах рябит, да разум мутнеет. В этой статье я постар...

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

[Перевод] Почему текст в нижнем регистре сжимается лучше Буквы в нижнем и верхнем регистре содержат одинаковое количество данных — по 1 байту каждая.Поэтому удивительно, что замена заглавных букв на строчные снижает объём данных.Пример: я взял главную страницу Hacker News и переписал заголовок каждой статьи, капитализировав т...

Обобщенные фабрики тайпгардов в TypeScript Привет, Хабр! Меня зовут Сергей Соловьев, я разрабатываю интерфейсы международных платежей в Тинькофф Бизнесе. Уверен, многие хотят писать надежный, поддерживаемый, но при этом лаконичный код. Как найти баланс?TypeScript упрощает разработку веб-приложений ценой роста кодовой...

Я изучал иностранный язык 3 месяца с DuoLingo. Почему это не самый эффективный инструмент для изучения языка Уже чуть более трех месяцев я учил испанский язык  с помощью тренажера DuoLingo. Это первая часть эксперимента. Моей целью было оценить объем знаний и перспективы использования DuoLingo изучающими иностранный язык.Я не тратил много времени, 10-15 минут в день, иногда ме...

[Перевод] Простые языки программирования Мне нравятся простые языки программирования, такие как Gleam, Go и C. Знаю, я не один такой. Есть что-то чудесное в работе с простым языком: каково его читать, использовать в команде, возвращаться к нему спустя долгое время и т.д. В этом посте я хочу конкретизировать, в чём...

[Перевод] Rust 1.75.0: API адресной арифметики, async fn и impl Trait в трейтах, уcкорение rustc Команда Rust рада сообщить о новой версии языка — 1.75.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.75.0 ва...

Рисуем рабочий процессор в Paint и запускаем на нём ОС | Ритуал по призыву демона Тьюринга Однажды в тёмном-тёмном городе, в тёмном-тёмном подвале, очередной обезумевший контентмейкер за паяльной станцией подключал программатор к умному термосу. Термос этот он нашёл на улице и хотел перепрошить его маленький и беззащитный Cortex-M0+. Человек бредил. Раз в пару ...

Как я за месяц написал интерпретируемый язык программирования на Python Привет, Хабр! В этой статье я хотел бы поделиться опытом создания своего языка программирования.ПредысторияМне 14. Обучаясь на втором году Яндекс Лицея, нужно было написать несколько проектов. Первым из них стал проект на PyQT5. Я долго думал над идеей и вспомнил, что летом ...

[Перевод] Безымянный язык программирования без присваивания имён Придумывать имена сложно. Давайте посмотрим, как далеко мы можем зайти без них.Что это?Это язык программирования, основанный на трёх парадигмах:Бесточечном программированииСтековом программированииМассиво-ориентированном программированииОсновная «фишка» языка — избегание люб...

Python и чистая архитектура… Всем привет! Сегодня я хочу поделиться своими опытом разработки на различных языках программирования и размышлениями касаемо проектирования серверных приложений. Речь пойдет про много обсуждаемую в последнее время чистую архитектуру в рамках языка python. Казалось бы, по зав...

[recovery mode] Делаем JavaScript компилируемым с помощью llvm.js В данной статье мы рассмотрим мощный проект - llvm.js и расскажем, что он представляет из себя. Также мы научимся создавать компилируемый язык программирования на основе JavaScript. Хотя в этой статье мы сфокусируемся именно на JavaScript, ознакомившись с процессом, вы сможе...

[Перевод] Продвинутые техники извлечения данных для достижения максимальной производительности Cегодня мы поговорим на тему оптимизации производительности для масштабируемых систем.В современной постоянно развивающейся цифровой среде необходимо держать фокус внимания не только на функциональности программных систем — нужно создавать системы, способные беспроблемно и э...

Приключения «Электрона». Отлаживаем JSC-код любой версии Electron без декомпилятора Для подписчиковКогда‑то компания Positive Technology разработала собственный плагин для декомпилятора Ghidra, позволяющий исследовать веб‑приложения на Electron, в которых используется скомпилированный бинарный код V8 JSC. C тех пор сменилось много версий Node.js, формат кар...

Что вы знаете о символьном программировании? Кликбейтный заголовок, риторический вопрос и обещание раскрыть тайну! Не самый лучший набор, но нормального названия для статьи мне в голову не пришло. Что же здесь все таки будет? Речь пойдет о реализации символьного программирования в Wolfram Language (WL). Я не буду расск...

Modular выложила в открытый доступ основные компоненты Mojo – языка программирования для ИИ Компания Modular открывает доступ к Mojo, языку для разработки ИИ, обещающему сделать программирование более простым и интуитивным.

Реверсинг с помощью Remnux: переборщики Некоторое время назад я написал статью, посвященную использованию дистрибутива Remnux для задач реверс инжиниринга. В этой статье мы посмотрим еще несколько инструментов, которые входят в состав данного дистрибутива.Для того, чтобы затруднить анализ вредоносных файлов злоумы...

[Перевод] Rust 1.77.0: C-подобные строки, offset_of!, рекурсивные async fn, strip в release-профилях Команда Rust рада сообщить о новой версии языка — 1.77.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.77.0 ва...

Самые неприятные поломки ноутбуков в моей практике. Чинить или не чинить — тот еще вопрос Привет, Хабр! Давно я уже не писал про ремонты. Сегодня настал этот день и час, я решился. В статье расскажу о наиболее неприятных поломках ноутбуков, которые встречал в своей практике. Это уже вторая часть, первую можно почитать вот здесь. Что же, приступим! Читать дальше ...

База по SPI NOR FLASH Еще недавно была моя публикация о программе IMSProg — программаторе для CH341a в Linux, а различные идеи продолжают приходить в голову. Происходит это во многом благодаря вашим комментариям к статье.Микросхемы энергонезависимой памяти с последовательным интерфейсом SPI NOR...

Укрощение примитивов синхронизации: сравниваем решения задачи с построением пула потоков на С и Go Эта статья основана на истории об одном личном челлендже. Задача звучала так: помочь с реализацией взаимодействия компонентов в программном комплексе заказчика. Иными словами, понадобилось IPC для дальнейшего развития продукта. Вызов заключался в том, что в обязательных треб...

Байт-код — это просто! Как сделать DI по-настоящему быстрым Привет! Меня зовут Григорий Юрков, и я уже несколько лет работаю в инфраструктурной команде Яндекс Маркета. Два года назад мы начали разрабатывать свой легковесный DI-фреймворк Scout, который предоставляет выразительный Kotlin DSL. Он не генерирует код, а делает вс...

Сто паттернов для разработки корпоративных программ. Часть первая В этой статье рассмотрены все паттерны проектирования из "Банды четырёх" с примерами на языке программирования C#. Для самых терпеливых имеются дополнительные паттерны.Это первая статья из серии "Сто паттернов для разработки корпоративных программ". Следующие статьи будут по...

[Перевод] Rust 1.74.0: конфигурация проверки в Cargo, авторизация для приватных реестров, проекции возвращаемых типов Команда Rust рада сообщить о новой версии языка — 1.74.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.74.0 ва...

MyBatis «на минималках» Привет, Хабр! Меня зовут Пётр Гусаров, я Java‑программист в CDEK. В этой статье расскажу про не очень распространённый фреймворк MyBatis. Почему MyBatis? Потому что мы в CDEK используем его в большинстве проектов, и в деле он весьма не...

[Перевод] Rust 1.76.0: обновление совместимости ABI, получение имени типа из ссылки Команда Rust рада сообщить о новой версии языка — 1.76.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.76.0 ва...

Rust — это не «memory safe C» TL;DR: 1) в Rust намного больше достоинств, чем просто скорость и безопасность 2) в Rust по умолчанию CDD (compiler-driven development, разработка через компилирование). Это как TDD, только CDD 3) Rust не сложный язык, особенно если не гнаться за максимальной производительно...

[Перевод] Rust 1.78.0: Диагностические атрибуты, проверка предусловий unsafe и детерминированное повторное выравнивание Команда Rust рада сообщить о новой версии языка — 1.78.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.78.0 ва...

[Перевод] Rust 1.73.0: очищение сообщений о панике, изменение в работе с локальными данными потока Команда Rust рада сообщить о новой версии языка — 1.73.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.73.0 ва...

Релиз RetroSpriteEditor 0.2.8 [open source] Добрый день дорогие разработчики для NES (У нас же была Денди). Я занялся электроникой и пока не освоил нужных знаний, решил пописать на ассемблере для NES какие-нибудь игры и погонять байты туда-сюда. Я обнаружил, что для Linux нет нормального редактора и поэтому я написал...

Разработка игр с использованием Go и библиотеки Ebiten Go является мощным и эффективным языком программирования, который можно использовать для создания игр. В этой статье мы рассмотрим разработку простой игры с использованием языка Go и библиотеки Ebiten, предназначенной для создания 2D игр. Читать далее

[Перевод] Эффект Монреаля: почему языкам программирования нужен Царь стилей Давайте представим нереалистичный сценарий, где вы выбираете язык программирования для проекта, который в перспективе станет очень большим. Допустим, это будет набор сервисов в монорепозитории, над которыми работает более 100 человек. Чтобы сделать этот сценарий ещё менее р...

В Microsoft рассказали о большом релизе настольной ОС в 2024г, но это будет не Windows 12 Речь о Windows 11 версии 24H2, фигурирующей под кодовым именем Hudson Valley

Используем паттерн Decorator в Bitrix Применять паттерны программирования — хорошая практика. К сожалению, на проектах CMS Bitrix редко встречаются примеры использования. В статье я покажу на примере, как можно использовать паттерн Decorator.А также рассмотрю этот паттерн в целом: его распространенные реали...

ИБ и ИТ, давайте жить дружно. Вот как это возможно Безопасность во многих компаниях стоит особняком. Вместо того чтобы беспокоиться о качестве вашего продукта, безопасники твердят о ГОСТах и ISO, о разных сертификациях и авторизационных протоколах — вещах важных, но вне фокуса основного архитектора. При этом их деятельность ...

Характеристики AMD Ryzen 8000G попали в сеть Сегодня характеристики и основные особенности APU (система на кристалле с интегрированной графикой) AMD Ryzen 8000G под кодовым названием Hawk Point утекли в сеть благодаря компании ASRock, которая эту информацию подтвердила. Новые системы на кристалле из семейства Hawk Poin...

Предчувствие Ричарда Фейнмана Эта статья была вдохновлена циклом лекций «КЭД — странная теория света и вещества», который был прочитан Ричардом Фейнманом за несколько лет до его смерти (фактически он уже был в то время смертельно болен). Более конкретно следующими цитатами: Читать далее

Автоматизация скачивания документов из контрактов с площадки ЕИС при помощи Python В настоящее время информация о государственных контрактах является важным ресурсом для многих исследований и аналитических работ. Однако сбор этой информации может быть трудоемким процессом, особенно когда речь идет о большом количестве контрактов. В этой статье мы рассмотри...

[Перевод] Проектирование аналога Google Docs Google docs – это сервис для совместного редактирования документов. В целом подобные сервисы можно спроектировать двумя способами: В качестве централизованного ресурса, использующего клиент-серверную архитектуру для предоставления возможности редактирования документа всем...

Как загружать классы в Java 8 и Java 9+? Привет, Хабр! Я разработчик в Институте Системного Программирования РАН, занимаюсь разработкой статического анализатора Svace. Недавно я столкнулся с задачей самостоятельной загрузки классов в JVM, что оказалось непросто, потому что в проекте мы используем модули Java.Модули...

Разработка HID-драйвера: шаг за шагом Предлагаем погрузиться в мир Human Interface Device (HID) в контексте операционной системы реального времени «Нейтрино». В статье мы расскажем про архитектуру HID и коснемся практических аспектов создания драйверов для устройств ввода. Кроме того, затронем вопросы системной...

Fortran, язык, которому почти 70 лет, поднялся с 27 до 12 места в рейтинге ЯП. В чём причина его новой популярности? Мир программирования частенько преподносит сюрпризы в отношении того либо иного языка. Так, в начале 2024 года Fortran, один из самых старых ЯП, поднялся сразу на 15 позиций в рейтинге TIOBE. Что случилось и почему ранее почти забытый ...

Signal Integrity of DDR4 Доброго времени суток! Наверное, вы все знакомы с компьютерной оперативной памятью DDRx (где x - поколение). Я бы хотел вам рассказать о ней с точки зрения SI (Signal Integrity - целостность сигналов) и принципов трассировки этого интерфейса. Читая документацию на различны...

GigaChat и русский жестовый язык Всем привет! Меня зовут Капитанов Александр, я отвечаю за направление компьютерного зрения в SberDevices. В этой статье я расскажу о том, как моя команда Vision RnD разработала серию моделей SignFlow, обеспечивающих перевод с жестового языка на русский и американский английс...

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

Почему вам стоит отказаться от использования timestamp в PostgreSQL Не секрет, что работа с часовыми поясами — боль, и многие разработчики объяснимо стараются ее избегать. Тем более что в каждом языке программирования / СУБД работа с часовыми поясами реализована по-разному.Среди тех, кто работает с PostgreSQL, есть очень распространенное заб...

Книга «C++ для начинающих. 2-е изд." Привет, Хаброжители! Книга Герберта Шилдта начиная с таких базовых понятий языка, как типы данных, массивы, строки, указатели и функции, книга охватывает также важнейшие элементы объектно-ориентированного программирования — классы и объекты, наследование, виртуальные функц...

Экспорт статьи из LibreOffice Writer в Habr Flavored Markdown или HTML Резюме. В статье дается ссылка на файл в формате ODT (основной формат файлов, используемый в текстовом редакторе LibreOffice Writer), содержащий макросы на «родном» для LibreOffice языке программирования макросов BASIC, которые осуществляют экспорт текста из LibreOffice Writ...

Какие задачи можно решить при помощи корпоративного портала      Запуская корпоративный портал у себя в компании, я подумал о том, а какие собственно его возможности мне интересны. Действительно, если описывать все, что могут современные порталы, не хватит места и на великой китайской. С другой стороны, мы все прекрасн...

Hadoop в Облаке: история миграции сотен петабайт Миграция с «железа» в облако в большинстве случаев уже не кажется чем-то сложным или удивительным — тенденция на развертывание решений в облаке общая и устоявшаяся. Но если с переносом в облачную среду небольших ИТ-компонентов все просто, то в случае с глобальными системами ...

Yul: Учимся использовать inline assembly в Solidity В этой статье я расскажу про язык среднего уровня между Solidity и байт-кодом, который применяется в EVM. Основная задача Yul - это оптимизация смарт-контрактов по газу, как на уровне языка так и на уровне компилятора, а также гораздо больший контроль над выполнением кода. М...

По локоть в легаси: пошагово перезапускаем устаревший портал на PHP PHP — один из самых популярных языков веб-разработки уже около 20 лет, а самому языку скоро стукнет 30. За это время на нем написали огромное количество больших и маленьких проектов. Некоторые сайты, созданные в 90-ых, 00-ых и 10-ых, хранят код еще с тех давних времен. И чем...

Без денег, репликации и кеша: ограничиваем нагрузку на сервисы, используя подходы из TCP При росте нагрузки одна из частей системы может подтормаживать. Часто уязвимым местом оказывается база данных. Так произошло и в нашем случае.Я работаю в Mindbox в команде, которая отвечает за выдачу товарных рекомендаций. Наша база периодически деградировала, заливать ее де...

JetBrains выпустила новую IDE для работы с документацией Writerside Инструмент используется в JetBrains уже более 10 лет, и, по словам команды, продукты JetBrains, от языка программирования Kotlin до IntelliJ Platform SDK, используют Writerside для создания своей документации. Читать далее

Уязвимые гиганты: что общего между зулусским языком и LLM Сейчас, когда каждый чих в интернете может привести к новому стартапу или технологическому прорыву, большие языковые модели (LLM) занимают своё законное место на передовой научно-технического прогресса. Они умнее, быстрее и эффективнее человека в ряде задач: написание кода, ...

Объявление и инициализация переменных в C++ Продолжаем серию «C++, копаем вглубь». Цель этой серии — рассказать максимально подробно о разных особенностях языка, возможно довольно специальных. Это шестая статья из серии, список предыдущих статей приведен в конце в разделе 7. Серия ориентирована на программистов, имею...

40 лет GNU Операционные системы имеют основополагающее значение для Интернета, каким мы его знаем сегодня, поскольку в настоящее время они обеспечивают работу миллионов серверов, компьютеров и других встроенных вычислительных устройств. Отдельное почётное место среди этого занимает ОС...

Наскальный рисунок показал, как выглядела пустыня Сахара 4000 лет назад Когда-то давно пустыня Сахара могла выглядеть так, а может и лучше Сегодня Сахара является одной из самых больших и известных пустынь в мире. Днем температура в этой части нашей планеты может подниматься до 50 градусов Цельсия, а ночью она опускается до 25 градусов. Все живы...

Супер-эффективная архивация — сжимаем все что угодно до 32 байт Будем разрабатывать архиватор, который может сжимать данные любого размера и типа до 32 (38 с метаданными) байт. Рассмотрим достоинства и недостатки данного алгоритма, возможные способы улучшения его работы. Распаковать

[Перевод] Частичная агрегация В нескольких предыдущих статьях обсуждалось, как в SQL Server реализована агрегация, были рассмотрены операторы агрегирования потока и хеш-агрегат. Я также использовал хеш-агрегат в качестве примера в статье Введение в распараллеливание исполнения за...

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

[Перевод] 4 миллиардов операторов if Просматривая недавно соцсети, я наткнулся на этот скриншот. Разумеется, его сопровождало множество злобных комментариев, критикующих попытку этого новичка в программировании решить классическую задачу computer science: операцию деления с остатком.В современном мире, где ИИ п...

XMG1930-30HP: AV over IP для ЦОД Мы уже не раз в нашем блоге на Хабре рассказывали о технологии AV over IP, которая позволяет гонять 4K-видеопотоки не с помощью HDMI, а используя для этой цели IP-сети. Можно ошибочно думать, что это актуально лишь для каких-нибудь спортивных баров и концертных площадок. Эт...

Специалисты узнали, почему для некоторых людей кинза имеет вкус мыла Кинза, иногда называемая китайской петрушкой или листом кориандра, — это трава растения Coriandrum sativum. Для большинства людей она имеет приятный цитрусовый вкус, но некоторым она не нравится. С чем это связано?

Behavioral-интервью в IT: что это и как подготовиться? (вопросы с ответами для Software Developer + грамматика) Многоэтапный процесс интервью в IT иногда занимает до 40 дней, но как правило большинство кандидатов отваливаются именно после одного из первых этапов отбора - behavioral interview.Обычно behavioral questions включают в себя вопросы на следующие темы... Читать дале...

В WhatsApp для iPhone и Pixel 8 / 8 Pro добавили беспарольный вход Ещё одно приложение, в котором можно отказаться от паролей и кодов по SMS.

Как в C# быстро извлечь подстроку Извлечение подстроки. Казалось бы, что тут может быть сложного? В любом современном языке программирования это можно сделать через функцию substring или через slicing. За время работы C# разработчиком я повидал разный код, в том числе разные способы извлечения подстроки. В э...

Как связать кредиторов и заемщиков с помощью смарт-контрактов? Обзор кредитного протокола Compound V2 В статье мы рассмотрим, как организовано кредитование в DeFi: что такое кредитные протоколы и как работает один из самых популярных протоколов  – Compound. Вместе со мной вы пройдете весь путь сквозь кодовую базу протокола, начиная от предоставления ликвидности, займов ...

Карантин UI-тестов в iOS Всем привет! Я Тимур — iOS разработчик в платформенной команде hh.ru. Сегодня я расскажу о нестабильных UI-тестах в iOS, и как мы с ними справляемся.Мы уделяем массу внимания UI-тестам, ведь именно они обеспечивают качество и стабильность в наших iOS-приложениях. Сейчас...

Состоялся релиз Windows 11 Moment 4 (версия 22H2) Microsoft начала распространять обновление под кодовым названием «Moment 4» для Windows 11 версии 22H2, которое приносит с собой некоторые нововведения, являющиеся частью функционального обновления Windows 11 2023 Update (версия 23H2). «Moment 4» установится как обычное нак...

Почему проверять результат вызова malloc c помощью assert плохая идея Указатель, который вернула функция malloc, необходимо проверить перед использованием. Неправильным решением будет использовать для этого макрос assert. В этой статье мы разберём, почему это является антипаттерном. Читать дальше →

Электронная подпись документов в ОАЭ Большинство читателей Хабр знакомы с электронной подписью в России и облачной электронной подписью «Госключ». Кто-то пользуется этим иногда или часто для личных нужд, кто-то знает, как всё устроено технически и технологически, а кто-то разрабатывает решения, связанные с ЭП...

Новый телефон HMD под кодовым названием Tomcat появился на Geekbench По результатам теста Geekbench можно предположить, что новый телефон от HMD под кодовым названием Tomcat будет работать на чипе Snapdragon 7s Gen 2.

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

Короткая статья про «авторское право нейросетей» С недавних пор общественность в интернетах повадилась обсуждать важный правовой вопрос: а кому же принадлежат авторские права на произведения, сгенерированные нейросетью? Если почитать большинство популярных статей по теме, то можно заметить, что пишутся они по сходной схе...

Алгоритм Monte Carlo Tree Search простыми словами Можно ли научить ИИ играть в настольную игру и выигрывать в ней, если мы сами не знаем как это сделать? Да! И один из способов — использовать алгоритм Monte Carlo Tree Search (MCTS). Он актуален даже сейчас, в эпоху развития нейронных сетей. У многих людей, в том числе и у...

[Перевод] Становится ли ПО хуже? Недавно я наткнулся на пост Никиты Прокопова Software disenchantment. Он заставил меня вспомнить пост Мацея Цегловски The Website Obesity Crisis и множество других статей подобного типа. Среди людей, пишущих о разработке ПО, возникает всё более широкий консенсус о том, что ...

Обзор Чипа Внешней I2C Памяти AT24Cхх AT24C02M5/TR это EEPROM на 256 байт с доступом по двухпроводному синхронному последовательному интерфейсу I2C.В разработке электронных плат часто надо подписывать электронные платы каким-то серийным номером. Это нужно для идентификации платы при серийном производстве.Внешние...

Семантический поиск и генерация текста на R. Часть 1 Для этой задачи использую LLM (Large Language Models - например, chatGPT или opensouce модели) для внутренних задач (а-ля поиск или вопрос-ответную систему по необходимым данным).Я пишу на языке R и также увлекаюсь NLP (надеюсь, я не один такой). Но есть сложности из-за того...

Зачем нам так много языков программирования? В мире насчитывают примерно 7 000 естественных языков и 9 000 языков программирования. Но, в то время как количество первых стабильно сокращается, число вторых продолжает уверенно расти. Сегодня поговорим о универсальном языке программирования «для всего» и причинах появлени...

Python, JavaScript или C++? Рассказываем, какие языки программирования изучать в 2024 году Высокие зарплаты, отсрочка от армии, ипотека с пониженной процентной ставкой — хорошие IT-специалисты востребованы на рынке и могут рассчитывать на льготы от государства. Для тех, кто тоже хочет стать айтишником, рассказываем, какие языки программирования популярны в 2024 г...

[Перевод] 4. Nix в пилюлях: Основы языка Четвёртая часть из цикла статей Люка Бруно, посвящённой пакетному менеджеру и языку программирования Nix.Здесь мы знакомимся с основами языка. Читать далее

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

Классификация действий на видео (Action Classification) Данная статья показывает, как можно решить задачу Action Classification, а именно следить за рабочим процессом на производстве, где необходимо определить работает человек или нет.Для начала необходимо определить проблематику данной задачи. Она состоит в том, что для стандарт...

Прокачиваем вёрстку ARIA атрибутами. Атрибут aria-label В прошлом месяце я рассказал, зачем нужна семантика, на примере атрибута role. Если вы не читали мою статью, пожалуйста, прочтите её перед тем, как читать эту. А сегодня я хочу рассказать про атрибут aria-label. В статье не будет заумных определений и бездумного копировани...

[Перевод] Каково это, создавать язык программирования сегодня? «Эта книга – классика. Относитесь к ней бережно». Такую фразу произнёс архитектор из нашей команды, передавая мне The Dragon Book. Разработкой компиляторов я увлёкся где-то 15 лет назад ещё на заре своей карьеры. Как-то раз, читая эту книгу поздно вечером, я заснул, небреж...

Плэнер — язык логического программирования для ИИ: что из него получилось Боты под управлением системы GOAP (Goal Oriented Action Planning), источник Плэнер (Planner) — функционально-логический язык программирования, схожий по своему синтаксису с Лиспом. Функциональная часть языка содержит фактически целиком Лисп в качестве подмножества. При этом...

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

[recovery mode] Основание кулера выпуклое? Выпуклое основание – это брак?Такой вопрос можно встретить от покупателей продукции Noctua, Ice Hammer, Thermalright, ID-COOLING, Arctic Cooling и других именитых брендов. Читать далее

Опыт создания UI библиотеки на C++ Началось все почти два года назад в декабре, практически перед новым годом.Наш основной проект (видео мессенджер) использовал WTL для Windows и GTKmm для Linux. Поддержки мака не было. Огромной неприятностью было тащить два идентичных клиента, которые, по идее, должны делать...

Хеш-функция Стрибог. Особенности аппаратной реализации на System Verilog На просторах интернета есть несколько статей об алгоритме получения хеш-функции Стрибог (ГОСТ 34.11-2012), в том числе и на Хабре. Однако везде в качестве примера приводится реализация на языках программирования C, C#, Python и других. То есть идет последовательное выполнен...

Торговать на зарубежных брокерских счетах снова можно, но только если вы расскажете о них налоговой С марта 2023 года российское инвестиционное сообщество оказалось расколото: одни юристы настаивали на том, что сделки с бумагами на зарубежных счетах оказались под запретом, другие считали, что это не так. Новый указ от 08.11.2023 ставит в этом вопросе точку – в данной стать...

KC868-ASR: креа-нода (креативная для креативных) Сегодня мы поговорим об ещё одном изобретении сумрачного китайского гения — устройстве под кодовым номером KC868-ASR. Судя по самоназванию «Sensor Record Extension», компания Kincony предполагает использование этого устройства в качестве беспроводного сенсора с возможность...

Nothing Phone Tetris? Модель Phone (3) с таким кодовым именем ожидается этим летом Компания Nothing представит свой новый номерной смартфон позже в этом году.   Nothing Phone (3) ожидается уже летом, то есть как раз через год после выпуска модели Phone (2). Сейчас грядущий аппарат имеет кодовое имя Tetris, которое в теории может намекать на реал...

Без остановок: определение гипогликемии прямо за рулем Физиологические и психические состояния человека очень часто отражаются в его поведении, движениях и даже в особенностях его взгляда. И речь идет не о случаях, когда человек хватается за голову и жалуется на боль, а о случаях, когда физиологические состояния проявляются в ...

Сервисное мышление. Как распознать/вырастить/не потерять хорошего специалиста технической поддержки В предыдущей статье я рассказывал о том, как построить сервис и не наделать ошибок. Тема, конечно, объемная и многогранная. И много вопросов получил о том, что же такое сервисное мышление. Я думаю, «сервисность» в той или иной степени есть в каждом из нас. И если удается ее ...

Мы опубликовали датасет для детекции речи размером более 150 тысяч часов на 6000+ языках Мы выложили в публичный доступ гигантский датасет для детекции речи (voice activity detection).Датасет содержит порядка 150 тысяч часов аудио более чем на 6,000 языках. Количество уникальных ISO-кодов данного датасета не совпадает с фактическим количеством языков, так как бл...

[Перевод] Open-source-инструменты для Kubernetes AIOps на базе OpenAI Сегодня ИИ вызывает интерес у всех, и мир DevOps на базе Kubernetes не исключение. Инструменты искусственного интеллекта вполне органично вписываются в работу разработчиков, которые, как известно, большие любители всё автоматизировать. Под влиянием хайпа вокруг ChatGPT нач...

Погружение в Smali. Как выглядят Java и Kotlin со стороны Эта статья для начинающих исследователей файлов APK. Хотя почему только для начинающих? Иногда стоит остановиться и разложить по полочкам то, что накопилось. И тогда можно найти логичное и простое объяснение тому, чего не понимал. Или увидеть то, чего раньше не замечал. Чит...

Part 1. Инструменты автоматизации тестирования Привет! Я Вадим Лунин, QA Manager в Альфа Банке в Беларуси. Это продолжение цикла статей по инструментам, которые мы используем для тестирования наших продуктов в Альфа Банке. В настоящей статье я хочу рассказать вам, какие инструменты мы используем для автоматизации тестиро...

Java Digest #7 Всем привет!

Что такое секретные чаты в Ватсапе и как ими пользоваться WhatsApp — мессенджер, который есть у всех — просто на всякий случай. У вас может не быть Телеграма, Вайбера или, прости господи, ВКонтакте, но старый добрый Ватсап скорее всего будет. Причем для большинства он и вовсе является основным мессенджером, который хот...

Security Week 2405: криптостилер для Mac OS На прошлой неделе исследователи «Лаборатории Касперского» опубликовали подробный разбор вредоносной программы для компьютеров Apple. Это свежее семейство распространяется вместе с пиратскими дистрибутивами популярных программ и, помимо прочего, крадет криптокошельки жертв. П...

Как увеличить шрифт так, чтобы контейнер не поехал? Адаптация UI/UX для людей с проблемами зрения в XML и Compose Я — Денис, Android-разработчик в «Лайв Тайпинге». В этой статье я продолжу рассказывать о современных подходах разработки адаптивного UI /UX для людей с ограниченными возможностями, разных национальностей и особенностями развития. В этой статьей я расскажу про разработку инт...

[Перевод] PL/I — многогранный язык Майк Бедфорд раскрывает тайны PL/I - языка, который, как надеялись в IBM, заменит FORTRAN и COBOL.Названия языков программирования варьируются от банальных до точно описательных, от совершенно бессмысленных до, как в случае с темой этого месяца, откровенно неточных. Речь иде...

Как много языков может влезть в одного программиста? Всем привет, я Серёжа, технический лидер iOS-разработки. Сегодня хочу поговорить о многогранности мира программирования, а именно о количестве языков, причинах, по которым они нам нужны, и о том, зачем одному программисту несколько языков.Если с каких-то рассуждений прямо си...

Основы управления ресурсами в C Привет, Хабр! Управлении ресурсами включает в себя распределение, использование и освобождение различных типов ресурсов. В языке программирования C автоматическое управление памятью отсутствует, эта задача ложится на плечи разработчиков.В этой статьи рассмотрим основные возм...

Зачем делать новый язык программирования? Когда в публичном пространстве появляется информация о новом языке программирования, поднимается волна неприятия. Негатива столько, что хоть святых выноси!Причин у этого явления много и, скорее всего, сделать с ним ничего нельзя, такова уж челов...

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

Номера телефона +7 (921) — какому оператору принадлежат и кто может звонить? Как мошенники используют номера 8921 для обмана людей? По телефонному коду номера можно определить не только его регион и оператора связи, но и вероятность того, что звонят мошенники. Расскажем, откуда могут звонить с номеров +7 (921). Какому оператору и региону принадлежат...

Деревья ltree в PostgreSQL – простым языком Привет, Habr! Меня зовут Оля Плюта, я продуктовый аналитик маркетплейса Uzum Market. В этой статье я расскажу об иерархических деревьях ltree в PostgreSQL. Статья вводная, поэтому я постаралась сделать её максимально понятной и наглядной. Читать далее

Некоторым языкам программирования десятки лет — и они ещё в ходу. 5 старых, но актуальных ЯП Не так давно мы писали про язык COBOL, которому уже больше 60 лет. Он до сих пор актуален, поскольку на нём держится немало систем финансовых и банковских организаций. Но есть и другие старые ЯП, всё ещё применяемые в некоторых отраслях. О них сегодня и говорим, не обойдя и ...

Цифровая гемба отделения, аномалии и Visual Mining В офисах банка есть «Кракен» — стандартное место для обслуживания клиентов, большой угловой стол, который занимает много места. Оказалось, что он используется гораздо реже стандартных маленьких столиков, за которыми клиенты обслуживаются чаще. Это неожиданное открытие п...

Эльфы и пингвины: что такое ELF и как он работает в Linux? Всем привет! С вами как всегда я, Аргентум. Сегодня я расскажу и поведаю вам древние тайны, которые хранят горные старцы-сисадмины — тайны об эльфах, и как они взаимодействуют с древним народцем пингвинов. Дамы и господа, встречайте — статья о работе ELF и двоичных файлов в...

Шифр Цезаря на Ассемблере Друзья, коллеги, всех приветствую! В этой статье мы напишем шифратор на грязном "макро-чистом" Ассемблере и в качестве элементарного шифра будем использовать Шифр Цезаря (Шифр сдвига с ключом k = n). Статья написана для новичков, которые могут погрузиться в мир "первой" крип...

Динамический шеринг GPU в Kubernetes: разбор взлетов, падений и существующих решений Привет, Хабр! С вами снова Антон, все еще DevOps-инженер в отделе Data- и ML-продуктов Selectel, который все еще исследует тему шеринга GPU. В предыдущей статье я рассказал, как можно использовать шеринг видеокарт в Kubernetes. В комментариях была затронута тема динамическ...

Радикальная асинхронщина Асинхронность... Как много в слове этом! Асинхронность считается одной из сложных тем программирования вообще. Не все просто в этом вопросе. В интернете периодически появляются различные статьи, туториалы по тем или иным вопросам асинхронности. Из последнего дельной статьей ...

Почему Windows настолько медленнее Linux. Расползание фич Время выполнения общих команд Git в Ubuntu и Windows 11 (в секундах, чем меньше — тем лучше), источник: OpenBemchmarking.org В далёком 2013 году один из разработчиков Microsoft детально объяснил, в чём главные технические проблемы при разработке ядра Windows NT. Спустя дес...

Россиянам рассказали об опасности QR-кодов Руководитель группы CERT-F.A.C.C.T. по защите от фишинга, Иван Лебедев, подчеркнул, что QR-коды, скрывая ссылки до последнего момента, могут представлять серьезную угрозу безопасности. Эти коды могут вести на фишинговые, мошеннические ресурсы или содержать вредоносные файлы,...

Обычный Client Side с необычной эксплуатацией Это статья о клиентских уязвимостях, которые мне показались интересными.Целью статьи является показать, что иногда из, казалось бы, скучных уязвимостей с низким импактом, можно выжимать больше, чем кажется. Читать далее

Использование маппера UNROM при разработке игр для Dendy на языке Си Приветствую всех любителей программирования всяческих ретро-железок. Могу предположить, что у большинства из читателей этой статьи была в детстве Dendy (а может и сейчас есть) или другой клон Famicom (клонов NES в СНГ я не встречал). Сегодня предлагаю обсудить особенности ра...

Чтение Micro QR Code версии М3 (алфавитно-цифровой режим) Задание: необходимо прочитать Micro QR Code версии М3, содержащий кодовое слово, состоящее из символов верхнего регистра (на примере закодированных слов – SAFEBOX, Q1W2E3R4T5Y6U и EFB QWG WIFI 7; почему выбрано именно такое количество символов будет также расшифровано) на ос...

Реализация SHA256 и SHA512 на языке RUST Небольшая заметка студента о том, как самостоятельно реализовать алгоритмы SHA256 и SHA512 на Rust.Статья будет полезна всем, кто интересуется криптографией, хочет повысить уровень безопасности своих приложений или просто расширить свои знания в области программирования на R...

Номера телефона +7 (951) — какой оператор и кто может звонить? Телефонные мошенники и спамеры часто используют номера с одинаковым кодом, поэтому некоторых из них стоит опасаться. Расскажем, кто звонит с номеров 951, какой оператор обслуживает и из какого региона поступают звонки. Какому оператору и региону принадлежат номера телефонов ...

[Перевод] Время изменений: депрекация datetime.utcnow() в Python Как-то я изучал release notes новой версии Python 3.12, и в разделе о депрекациях моё внимание привлекла следующая фраза:utcnow() и utcfromtimestamp() из datetime.datetime устарели и будут удалены в будущей версии.Если вы следили за моими туториалами по в...

Что происходит в нашем организме, когда мы чихаем — это сложный и важный процесс Чихание — это рефлекс организма, который нельзя прерывать Чихание — это рефлекторное действие, которое совершает человеческий организм, чтобы избавиться от аллергенов, бактерий и вирусов в носу. По расчетам ученых, во время чихания давление в дыхательных путях в 30 раз выше,...

В Windows 11 появится возможность подключаться к Wi-Fi посредством QR-кодов В тестовой сборке Windows 11 26052, которая в стабильной версии будет значиться как Windows 11 24H2, появится функционал, реализованный в мобильных устройствах: к Wi-Fi-сетям можно будет подключаться с помощью QR-кода.

Как уменьшить размер бандла раз и навсегда: приемы, метрики, мониторинг Существует довольно много статей на тему оптимизации размера бандла, но большинство из них говорят об узких деталях или подходах к уменьшению размера бандла. Либо наоборот — совсем широко, с общими советами.В этой статье я постараюсь рассказать как комплексно подойти к оптим...

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

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

Где открыть магазин? Путешествие в геопространственный анализ и обратно В статье расскажу поподробнее про оценку локаций для бизнеса.Проблема классическая: ищем место для открытия нового магазина/ресторана/пиццерии.Сразу скажу, что при помощи гео я решал очень узкий набор задач:• Оценить существующие локации с т.з. плотности населения, конкуре...

Язык программирования R для статистической обработки данных Гибадуллина Д.А  Гибадуллина Дарья Анатольевна/ Gibadullina Daria Anatolievna- студент второго курса бакалавриат Уральского филиала Финансового университета направления бизнес-информатика Аннотация: Язык программирования R имеет широкое применение в области ст...

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

Don't Repeat Yourself: Как правильно использовать принцип DRY в разработке ПО Принцип “Не повторяйся” (Don't Repeat Yourself, или DRY), то есть избегай дублирования кода, часто относят к обязательным практикам в программировании. Однако в реальности часто можно увидеть, как в общем коде оказываются концептуально разные блоки, которые похожи только по ...

OmniFusion 1.1: мультимодальность теперь и на русском В прошлом году на конференции AIJ 2023 мы представили первую версию OmniFusion — мультимодальной языковой модели (LLM), способной поддерживать визуальный диалог и отвечать на вопросы по картинкам. Спустя несколько месяцев мы готовы представить обновление — OmniFusion 1.1 — S...

SQL в Фокусе: Полное Руководство. 100 ключевых Вопросов с собеседований В этой статье мы разберем самые простые и продвинутые аспекты языка SQL через 100 ключевых вопросов, которые встречаются на собеседованиях. Независимо от того, являетесь ли вы начинающим или опытным разработчиком баз данных, здесь вы найдете интересные и полезные аспекты для...

Apple придумала как запустить аналог GhatGPT прямо на iPhone Не секрет, что компания Apple активно интересуется вопросами ИИ. По мнению аналитиков, сейчас купертиновцы несколько отстают от основных конкурентов. Однако в следующем году ситуация должна измениться. Сейчас Apple работает над генеративным ИИ под кодовым названием Ajax. Вме...

О ширине токопроводящих дорожек планарных наушников Поводом для написания этой статьи послужили периодически задаваемые вопросы по типу «Почему вы в в мембранах своих планарных (изодинамических) наушников не используете одну широкую дорожку, как (имярек)?», а также дискуссии по особенностям звучания в разных конструкциях. Чит...

Разбор монады ContT, или как написать продвинутый goto, генераторы и файберы на хаскеле В этой статье я разберу монаду ContT, и покажу как вернуть return и другие control-flow операторы из императивных языков программирования, которых мне так нехватало, когда я начинал изучать хаскель. Читать далее

[Перевод] Кастомизация бессерверных функций без применения промежуточного ПО Когда пишешь код для серверного API, часто требуется проделывать схожие шаги: аутентифицировать пользователей, уточнять их роли и выставленные флаги функций, т.д. В большинстве фреймворков для бэкенда безупречно организовано взаимодействие с обработчиками запросов. Часто так...

[Перевод] Сжимаем текст в изображения PNG (Наверно, это глупая идея. Но иногда даже самые глупые идеи приводят к неожиданным результатам.)Текст шекспировской трагедии «Ромео и Джульетта» состоит примерно из 146 тысяч символов. Благодаря английскому алфавиту каждый символ можно описать одним байтом. Так что размер те...

Tailwind не только для MVP Всем привет!Обычно tailwind используют для каких-то MVP/админок/не очень больших проектов, но мне кажется, что tailwind, имеет место быть в средних и крупных проектах. Большинство его минусов решаемы, а плюсы чертовски хороши :)В этой статье я распишу его плюсы и минусы и ка...

3-е издание «Основы Dart», анонс печатной версии и новой книги — «Основы Flutter» Всем привет!Прошло не так много времени с выхода второго издания «Основы Dart» и т.к. этот язык программирования не стоит на месте, привел книгу к актуальному состоянию, добавив в нее раздел по Extension Types. Несмотря на то, что материал был у меня еще до выхода Dart 3.3 (...

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

[Перевод] Когда целый день программировал на Zig: впечатления Rust-энтузиаста Я — большой фанат Rust, так как в этом языке предоставляется отличное инструментальное оснащение, и, когда я пишу на этом языке, я могу быть вполне уверен, что этот код будет работать надёжно. Но иногда Rust ненавистен. Чтобы написать код на Rust, требуется немало времени,...

Security Week 2346: Ducktail, атака на специалистов по маркетингу На прошлой неделе специалисты «Лаборатории Касперского» разбирали свежую атаку под кодовым названием Ducktail. За этой киберкриминальной кампанией предположительно стоит группировка из Вьетнама. Характерной чертой Ducktail в ее последней версии является специализация на марк...

ASCII-арты на python Здравствуйте уважаемые читатели, в этой статье я расскажу Вам как делать ASCII-арты при помощи языка python, на примере моего кода. Читать далее

Практические аспекты ранжирования ответов виртуального ассистента Салют Всем привет! Меня зовут Аня Максимова, я занимаюсь NLP в команде Нейронные сети продукта Собеседник! 5 апреля проходила конференция Giga R&D Day, где мой коллега — Артем Снегирев рассказывал про практические аспекты ранжирования ответов виртуального ассистента ...

История тернарного оператора Да, во он ? :, давайте разберемся почему он именно такой, а не другой. Единственное питонщикам не будет столь интересно это читать ибо у нас них он выглядит так: print True if 1 > 2 else False Четко и понятно «в лоб», с появлением его в python читал в блогах много рассу...

Возможное решение проблемы ссылок в языках программирования Любому программисту знакомо понятие "ссылка". Под этим термином обычно понимают небольшой объект, главная задача которого обеспечить доступ к другому объекту, физически расположенному в другом месте. Из-за этого ссылки удобно использовать, они легко копируются, и ...

Adobe показала настоящее платье, цвет и рисунок которого можно менять в одно мгновенье На недавней конференции Adobe Max 2023, компания Adobe представила свой новый проект под кодовым названием Project Primrose.

Хакеры-невидимки из Румынии более 10 лет терроризировали местные компании Киберпреступники из Румынии, действующие под кодовым названием RUBYCARP, на протяжении более 10 лет оставались незаметными, используя ботнет из 600 заражённых серверов для атак на корпоративные сети и серверы.

Быстрое пополнение словарного запаса при изучении иностранного языка методом «Ознакомление-забывание-вспоминание» Привет, Хабр!В этой статье мы описываем полную методику быстрого пополнения словарного запаса при чтении неадаптированной литературы на иностранном языке. Статья будет интересна тем, кто владеет иностранным языком на уровне B2-С1 и столкнулся с необходимостью увеличить слова...

[Перевод] Как сделать детальное макро-фото печатной платы Как разглядеть мельчайшие детали на печатной плате? Можно попробовать отсканировать её или сфотографировать. Но детализации всё равно бывает недостаточно. Чтобы сделать приличный макро-снимок, мало просто иметь хорошую зеркалку (или беззеркалку). Нужен ещё и макрообъектив, д...

[Перевод] Почему я не буду использовать Next.js Представьте, что вы планируете начать новый проект или использовать в существующем более современный подход. А, может, вас просто не устраивает используемый фреймворк, и вы подумываете об альтернативах. В любом случае вам нужно что-то выбрать. Существует множество «совреме...

Бэкап, бэкап и еще раз бэкап Речь сегодня пойдет об отказоустойчивости и даже о катастрофоустойчивости.Почему вроде бы правильно настроенное архивирование базы данных не всегда помогает спасти систему в случае инцидентов? Этим вопросом я, наверное, многих даже задел за живое. Одних тем, что сама постано...

[recovery mode] Где бесплатно учить Java в 2024 году В 2024 году изучение Java остается одним из актуальных направлений для тех, кто стремится стать профессиональным разработчиком.В настоящее время существует множество бесплатных ресурсов, которые предлагают уроки по Java, от курсов до университетских программ, что делает дост...

Как я с 0 поднял свой уровень английского до B2 и подтвердил этот уровень на экзамене IELTS Academic Привет, Хабр! В этой статье я расскажу о своем опыте изучения английского языка и поделюсь вещами которые работали и не работали для меня. Процесс изучения языка очень индивидуален, и никогда нельзя утверждать что верный какой-то один метод / схема (хотя некоторые статьи на ...

Разработка децентрализованных приложений на Spring Boot: инструменты Web3 Tech Привет! Меня зовут Даниил, я разработчик в Web3 Tech. Недавно в JVM-инструментарии для нашей основной платформы «Конфидент» состоялся новый релиз, в который вошли библиотеки клиента для взаимодействия с нодой и Spring Boot стартеры. Далее в посте я расскажу об этих библиотек...

Япония объединится с Китаем для разработки единого стандарта оплаты по QR-кодам Йошио Фукуда, генеральный директор Японской ассоциации платежей, организации, управляющей стандартизированной платёжной системой QR-кодов под названием JPQR, рассказал о переговорах с азиатскими странами, включая Китай и Индию, о выработке единого стандарта оплаты по QR-кода...

«Once you go Rust, you never go back»: создаем игру для программистов на Bevy Привет, Хабр! В прошлой статье я рассказал о своем переходе в геймдев и моей концепции «хакерской» игры. Здесь же сосредоточился именно на разработке, а также на инструментах Bevy и Rust, которые использовал для игрового движка. Интересно узнать из первых уст, как создаются...

Как мы решали вопрос многоязычности в боте Русский или English? Что для бота хорошо, то разработчику работа :)ВведениеВ этой статье я поделюсь своим опытом реализации многоязычности в телеграм-боте, World for Life Bot расскажу о принципах выбора языков, которыми я руководствовался, технических аспектах реализации и ...

«Тинькофф» добавил в приложение «умную» камеру: можно отсканировать животное и отправить деньги на благотворительность В ней же есть ранее доступные сканеры телефонных номеров для денежных переводов и QR-кодов для оплаты в магазинах.

[Перевод] Собираем автономную игру на C# в 2 килобайтах Моё детство пришлось на эпоху 1,44-мегабайтных дискет и 56-килобитных модемов, поэтому я всегда любил маленькие программы. Раньше можно было записать на дискету кучу мелких игр и таскать её с собой. Если программа не помещалась на дискету, я задумывался, почему — в ней мног...

Как и зачем мы парсим XML Большинство разработчиков рано или поздно сталкиваются с XML. Этот язык разметки настолько глубоко вошел в нашу жизнь, что сложно представить систему, в которой не используется он сам или его подмножества. Разбор XML - достаточно типовая задача, но даже в ней можно выделить ...

Как эффективно самостоятельно изучать английский язык Читатели Хабра, категорически вас приветствую! В этой статье я хочу поделиться с вами моделью эффективного изучения английского языка, которую я постарался сформировать исходя из своего n-летнего опыта его изучения.Расскажу вам насколько это актуально, с чего начать, какие р...

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

Обзор библиотеки Stan в R Приветствую! Stan - это библиотека на C++, предназначенная для байесовского моделирования и вывода. Она использует сэмплер NUTS, чтобы создавать апостериорные симуляции модели, основываясь на заданных пользователем моделях и данных. Так же Stan может использовать алгоритм о...

Семью заводить можно? А детей? Тест о жизни с ВИЧ Вокруг людей с положительным ВИЧ-статусом сложилось множество дискриминирующих стереотипов, далёких от истины. Можно ли человеку с ВИЧ работать с детьми? А целоваться при встрече? Или делиться своей чашкой? Мы собрали важные вопросы о жизни с вирусом: пройдите тест, чтобы ра...

Как шутят математики. Шифры Фейнмана Ранее я писал о взломе первого и второго шифра, придуманных математиком Полом Оламом ради розыгрыша своего друга Ричарда Фейнмана. Если описать контекст в нескольких словах, то эти шифры были одной из математических шуток, которые были в широком ходу у коллектива учёных, раб...

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

Сравнение локальных моделей машинного перевода для английского, китайского и русского языков "Машинный перевод – одна из наиболее актуальных и востребованных задач в сфере искусственного интеллекта, позволяющая снизить барьер в доступности информации на различных языках. Большинство данных в интернете представлены на английском и русском языках. Количество данных на...

Генерация зависимостей внутри программы В программировании программы часто строятся иерархично. Один программный компонент вызывает функции из другого программного компонента. Как бы представить эту взаимосвязь в законченной программе? Эту задачу можно решить прибегнув к языку Graphviz и утилитам cpp, dot, make, c...

[Перевод] Сколько строк на C нужно, чтобы выполнить a + b в Python? В своей предыдущей статье я исследовал структуру PyObject и её роль в качестве заголовка для всех объектов среды исполнения CPython. Эта структура играет важнейшую роль в обеспечении наследования и полиморфизма в системе объектов CPython. Но это лишь вершина айсбер...

Зачем я делаю дайджесты и рассказываю людям об их работе Привет! В этой статье я расскажу, как на протяжении уже 2,5 лет делаю дайджесты внутри компании: в них я рассказываю, где наши ребята выступили, какие митапы мы организовали, где и какие были стенды и кем и какие статьи написаны тут на Хабре.Расскажу зачем я это делаю, на чт...

[Перевод] Скрытые возможности элемента <input> Элемент <input> в HTML самый интересный. Большинство его собратьев вне зависимости от своих атрибутов ведут себя одинаково. При этом атрибут type элемента <input> может принимать 22 разных значения, которые не только меняют его поведение, но и влияют на внешний...

Импортозамещение high-availability решений: обзор китайского балансировщика TongTech К концу 2023 года большинство балансировщиков в российских ЦОДах по-прежнему западного производства. В прошлом году западные вендоры ушли из России, и оставаться на их оборудовании стало рискованно. Но мигрировать на доступные решения — тоже риск: они на рынке недавно, не хо...

Разбор crackme от KilLo (.net) Предупреждение Crackme (как, впрочем, следует из названия) это программы, созданные специально для того, чтобы их взломать (понять алгоритмы, заложенные разработчиком, и используемые для проверки введенных пользователем паролей, ключей, серийных номеров). Подходы и методик...

[Перевод] Передавать пустые срезы между Rust и C/C++ на удивление сложно Моя основная работа связана с браузерами и криптографией, а не компиляторами. Но я нередко сталкиваюсь с ситуацией, когда мне приходится проводить больше рабочего времени за изучением семантики языков программирования, чем за фактическим их использованием. Так что эта стать...

Как подготовиться к собеседованию с помощью Telegram-бота на Node.js В этой статье мы разработаем бота для подготовки к собеседованиям. Он будет задавать вопросы по HTML, CSS, JS и React. При этом часть из них будет с вариантами ответа, а часть — без. Базу вопросов вы сможете пополнять самостоятельно. Во время разработки вы научитесь работа...

[Перевод] Как создать API в облаке менее чем в 200 строках кода Современные облачные инструменты и пакеты Python стали настолько мощными, что с их помощью можно создать (масштабируемый) облачный API менее чем в 200 строках кода. В этом посте будет рассмотрено, как при помощи lines Google Cloud, Terraform и FastAPI развернуть в облаке пол...

Как сделать виртуальную АТС на базе VPS Несмотря на популярность мессенджеров и телеконференций, ни один офис ещё не отказался от телефонной связи. Люди такие существа, что иногда предпочитают общаться голосом. В каждом офисе установлена мини-АТС, которая коммутирует внутренние звонки. Телефоны сотрудников подк...

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

FreeCAD и C++ код с неопределённым поведением для медитации Изучая код проекта с помощью статического анализатора, иногда задаёшься вопросом: "Как возникла ошибка и почему её до сих пор не заметили?" Хотите посмотреть пример? Тогда приглашаем познакомиться с этой статьёй. Читать дальше →

Оценка пространственного разрешения при помощи фантомов В прошлой нашей статье про томографию мы задались вопросом: "А знаете, кто получает самую большую дозу при томографии?" Конечно, ответ мы получили: медицинские тестово‑калибровочные фантомы, специальные объекты, моделирующие структуру органов и тканей человека и используемые...

Ключевой навык успешной карьеры в ИТ или 8 заблуждений на проектах Привет! Если по вашим венам уже во всю течет оливье, но полноценно работать работку пока не тянет, или просто хочется легкого полезного чтива, то данная статья как раз для вас. В ней я постараюсь на реальных примерах рассказать об одном навыке, который считаю ключевым для ра...

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

CI/CD в каждый дом: сборочный цех базовых docker-образов Привет, Хабр.Последнее время DevOps и CI/CD де-факто стали повсеместным стандартом независимо от размера команды, в интернетах хватает статей, почему это важно, в чём собственно идея, полезных практик и других материалов. Я же решил подойти с несколько другой стороны и макси...

Рекомендации при работе с PostgreSQL Доброго времени суток. Основываясь на своём опыте хочу представить некоторые рекомендации при разработке кодовой базы на SQL.Данные рекомендации получены горьким опытом, так что надеюсь, они Вам помогут :) Читать подробнее и больше не косячить

Java Тренажер Хочу представить вашему вниманию бесплатный курс Java Тренажер, который недавно опубликовал на платформе Stepik.Java — это объектно-ориентированный язык программирования, разработанный компанией Sun Microsystems (позднее приобретённой компанией Oracle). Он был выпущен в 1995...

Кто убивает мое производство одежды? 11 лет мое производство шьет спецодежду для врачей и стюардесс, жилеты для неотапливаемых складов Вайлдберриз, и другую униформу. 10 человек на 150 кв.м в Подмосковье отшивают одежды на 1,5 млн в месяц. Сегодня мы переживаем не самые лучшие времена, как и вся отрасль, и вот ...

Генеративная «уловка-22», или Почему ИИ плохо отличает сгенерированные тексты от написанных человеком Соблазн выдать текст, написанный ИИ, за оригинальный собственный стал особенно велик в последние годы, когда нейросети сделали огромный шаг вперёд. Вместе с этим, конечно же, появилась потребность определять тексты, написанные ИИ, а не человеком. Дошло до того, что некоторые...

Книга «100 ошибок Go и как их избежать» Привет, Хаброжители! Лучший способ улучшить код — понять и исправить ошибки, сделанные при его написании. В этой уникальной книге проанализированы 100 типичных ошибок и неэффективных приемов в Go-приложениях. Вы научитесь писать идиоматичный и выразительный код на Go, раз...

Почему в ботах телеги желательно использовать Webhook вместо Polling Привет, коллеги! Сегодня у нас на повестке дня выбор между двумя гигантами: Polling и Webhook. И если вы когда-либо задавались вопросом, почему именно Webhook является go-to решением для большинства проектов, то это статья для вас.Помните, как в начале 2010-х все разрабы акт...

Языку программирования BASIC исполнилось 60 лет Это был первый общедоступный язык программирования, значительно повлиявший на популяризацию компьютеров и их победное шествие по всему миру

Его вы изучали в школе: умер создатель языка программирования Pascal Никлаус Вирт, швейцарский ученый-компьютерщик, считающийся одним из пионеров языков программирования, умер 1 января 2024 года в возрасте 89 лет.

Как я написал свой первый эзотерический язык программирования В данной статье, я рассказываю о том, как написал свой первый эзотерический язык программирования C42. Читать далее

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

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

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

Как быстро и безболезненно выбрать лучшую из десяти выборок Всем привет! Меня зовут Мария Ходякова, я продуктовый аналитик Тинькофф Страхования. В этой статье мы поговорим о множественном тестировании. Хорошо известен такой подход, как А/В-тестирование, когда в тесте участвуют две выборки. Но иногда нужно сравнить больше двух выборок...

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

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

Официально: новые устройства Surface и новые функции Windows 11 представят 21 марта Microsoft анонсировала мероприятие под названием «New Era of Work», которое будет посвящено новым устройствам линейки Surface, грядущему функциональному обновлению для Windows 11 и возможностям ИИ-помощника Microsoft Copilot. Конференция состоится 21 марта в 19:00 по москов...

Cloud Native или cloud-native: как мы разбирались с написанием термина и почему Open Source тоже пишут без дефиса На днях мы работали над переводом глоссария CNCF и начали спорить о том, как писать словосочетание cloud-native. Раньше мы использовали название с дефисом — такое правило применяется к составным прилагательным в английском языке (пример — well-known actor). «Википедия» в ста...

Что можно сделать на личном веб-сайте Blot просто берёт и превращает папку в сайт. Текстовые файлы в папке автоматически становятся веб-страницами на сайте Мы уже упоминали десяток способов, как использовать личный VPS в минимальной конфигурации за 130 рублей. Это облачное хранилище для файлов, архив для бэкап...

[Перевод] Неожиданное взаимодействие предсказания ветвлений и подсистем памяти Это 15-ая статья в серии, посвящённая оптимизации подсистем памяти. Остальные доступны здесь (англ.). В ней мы изучим взаимодействие механизма предсказания ветвлений с подсистемой памяти. В повествовании мы будем исходить из предположения, что вам знаком принцип предсказан...

Что нам недодали в C++ C++ последний десяток с лишним лет стремительно развивается. Тем не менее в наших кодовых базах все еще присутствуют многочисленные helper-файлы и классы, которые помогают восполнить пробелы в стандартной библиотеке языка. Как же так вышло, что там в этих ваших helper-файлах...

Как я делаю и продаю камни на маркетплейсах на 1,35 млн в месяц В статье я расскажу, почему я работаю не на себя, а на Озон, как я победил алкоголизм у сотрудников, и сколько стоит сделать и продать камень.В 2016-м году я встретил женщину. И вон он я с ипотекой, кредитом на бытовую технику и зарплатой в 25 000 ₽. Чтобы как-то сводить кон...

BNPL, или Как миллениалы заново рассрочку изобрели Идея покупок в рассрочку, мягко говоря, не нова. «В массы» она ушла ещё в середине XIX века, когда компания Singer начала массово производить и продавать достаточно дорогие для обыкновенного человека швейные машинки, а в начале XX века тему развили Генри Форд и General Motor...

[Перевод] FORTRAN — первый язык высокого уровня Возможно, это был первый в мире язык высокого уровня, но Майк Бедфорд обнаруживает, что FORTRAN жив и процветает по сей день.Когда FORTRAN только зарождался, языков высокого уровня практически не существовало, и уж тем более не было таких, которые получили бы широкую известн...

От желания управлять газовым котлом удалённо до полной автоматизации отопления дома В статье расскажу про свой путь разработки DIY железок для работы с Home Assistant с целью автоматизации отопления в частном доме.Глава 0: предысторияЗахотелось построить дом. Дом построили, встал вопрос с отоплением и управлением, а так как в доме иногда отсутствовали по не...

Android-вредонос Chameleon отключает биометрию ради кражи PIN-кодов Обнаружена новая версия банковского трояна Chameleon для Android, которая использует интересную технику для захвата устройств — отключает разблокировку устройства по отпечатку пальца и лицу, чтобы похитить PIN-коды.

[Перевод] Объяснение режимов работы Run, Stop и Program центрального процессора ПЛК Программируемые логические контроллеры (ПЛК) можно перевести в режим «Пуск» (Run) или «Стоп» (Stop), а иногда и в режим «Программирование» (Program) обычно с помощью физических или виртуальных методов. Но что означают эти режимы и когда их ...

Библиотека на Go для работы с RuStore API Привет, Хабр!Меня зовут Энрике, и я работаю Go-разработчиком в RuStore. Сегодня хочу рассказать про библиотеку на Go для комфортной работы с API магазина приложений RuStore. Иногда авторизация через API и получение JWE-токена занимают больше времени, чем хотелось бы. С ...

[Перевод] Как изучить Haskell всего за 15 лет Haskell — это язык программирования, изобретённый в 20-м веке шотландскими логиками в качестве пранка (вероятно). Примерно пятнадцать лет назад я начал изучать Haskell по причинам, которые уже и не упомню. Сегодня я наконец написал полезную программу на Haskell и уверен, чт...

[Перевод] Сложнейшая проблема компьютерных наук: центрирование Заявляю: «Мы, как цивилизация, разучились использовать центрирование». Ну то есть мы, конечно, знаем, как это делать — очень просто: display: flex; justify-content: center; /* Горизонтальное центрирование */ align-items: center; /* Вертикальное центрирование */ Не спрашива...

Техноэкстаз в мире фармацевтики: как ИИ выводит создание медикаментов на новый уровень Добро пожаловать в мир, где Кембриджские исследователи в сотрудничестве с Pfizer вступили в бой, чтобы перевернуть фармацевтическую игру. Алгоритмы, нейронные сети, математические формулы – это ваши ключи к миру, где создание медикаментов становится настоящим кодерским искус...

Гроза бэклогов и пристанище необычных игр: как я полюбил Switch Признаться, Nintendo Switch в 2017-м я встретил совсем не так радужно, как отношусь к ней сейчас. Игр было мало, да и были вопросы к железу. Страшно подумать, но с релиза прошло уже семь лет, и за эти годы вышли четыре ревизии консоли. Но главное — Switch стал грозой бэклог...

Оптимизация JavaScript. Inline Caches Думаю, ни для кого не секрет, что все популярные JavaScript движки имеют схожий пайплайн выполнения кода. Выглядит он примерно следующим образом. Интерпретатор быстро компилирует JS-код в байт "на лету". Полученный байт код начинает исполняться и параллельно обрабатывается о...

Проверка «магии» ИИ-моделей Google: первое впечатление и сила языка В области создания текстов с помощью искусственного интеллекта языковая модель Google (LLM) вызывает большой резонанс. Благодаря возможности создавать креативные истории, отвечать на вопросы и многое другое, неудивительно, что разработчики стремятся к этому. Один из первых п...

Дневник альтруиста. dfu-util В данной статье я рассмотрю подключение утилиты dfu‑util, написанную на языке С, к С++ проекту на CMake в виде сабмодуля.Одна из главных целей статьи — это подключение старого и типового кода на С к своему проекту. Здесь прив...

Владельцы японских машин активно пересаживаются на Tank 300 и Tank 500 Глава бренда Tank в России Александр Чеховский в интервью ресурсу Kolesa.ru рассказал, что большинство автомобилистов, покупающих автомобили Tank в России по trade-in (а таких примерно 80% от общего числа покупателей), сдают дилерам японские машины. На втором месте &nda...

«Иногда лучше написать велосипед»: как тестировать кластеры Kubernetes с помощью Python Сегодня Kubernetes — это основное средство для оркестрации контейнеров на рынке, поэтому их тестирование занимает особую позицию в перечне задач. Большинство тривиальных тестов можно запустить через команду kubectl, либо фреймворк Sonobuoy для тестирования сертификации верс...

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

Nothing Phone (3) представят уже этим летом Кодовое наименование устройства — «Тетрис».

LLMClone: как клонировать себя в Telegram У меня, как и у многих, довольно много чатов в телеграмме. Иногда просто нет времени (а иногда и не хочется) отвечать на некоторые сообщения. Именно так возникла идея создания виртуального клона. В статье рассматривается простая идея, состоящая в том, чтобы зафайнтюнить язык...

В поиске оптимального подхода к миграциям в Go Привет! Меня зовут Нина, и я Golang разработчик.Однажды, мы поняли, что в нашей компании очень много Go-сервисов, но каждая команда использует свой инструмент и подход. Поэтому мы решили систематизировать и унифицировать инструменты, используемые для создания и применения ми...

«Мир» разрешил российским банкам принимать платежи за рубежом На форуме «Финополис» глава Национальной системы платежных карт (НСПК) Владимир Комлев объявил, что оператор платежной системы «Мир» разрешил российским банкам использовать свои терминалы для оплаты за границей.  Эта инициатива поддерживаетс...

Кратко про язык программирования Triton Triton был разработан специально для выполнения на GPU и предоставляет удобную Python-ориентированную среду.Triton позволяет использовать модель программирования, основанную на блоках, которая значительно отличается от традиционной модели CUDA. Вместо управления потоками на ...

Xiaomi 14T Pro станет новой версией Redmi K70 Ultra Смартфон Xiaomi 14T Pro уже сертифицирован перед выходом, при этом ожидается, что он может стать обновленной версией Redmi K70 Ultra. Xiaomi 14T Pro появился в базе данных IMEI с модельным номером 2407FPN8EG для глобальной версии и 2407FPN8ER для японской версии. Это оз...

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

Темпоральные типы в PostgreSQL и их использование Меня зовут Фролков Иван, я работаю программистом с 1993 года, и уже восемь лет — в Postgres Professional. Периодически выступаю на конференциях. В этой статье я расскажу вам про темпоральные типы данных в PostgreSQL — доклад о них я читал на PGConf.Russia 2022. Почему меня э...

Неясно, получится ли у Qualcomm конкурировать с Intel и AMD в сегменте CPU для ноутбуков, но компания также собирается выпустить серверный процессор Ресурс Android Authority, который сегодня подлил масла в огонь скандала с новыми SoC Snapdragon X, также рассказал, что Qualcomm создаёт серверный процессор на тех же ядрах Oryon.  фото: Qualcomm CPU под кодовым именем SD1 будет иметь 80 таких ядер с частотой до 3...

Табуляционные машины Германа Холлерита — вольная реконструкция Перфокартные табуляционные автоматы Германа Холлерита решали задачи обработки больших объемов данных (десятки миллионов записей) в 19-м веке, сэкономили несколько лет труда при подсчете результатов переписи США 1890-го года, быстро проникли во всевозможные организации от ста...

Как создать ассистента для поиска по видео Всем привет! Меня зовут Георгий, я старший разработчик-исследователь в MTS AI. Одной из задач, которыми я занимаюсь в компании, является умная видеоаналитика. Это мощный инструмент, особенно с учетом современных технологий искусственного интеллекта, который может использоват...

Короткой строкой: почему я начал учить английский и пригодился ли язык в работе Всем привет! Меня зовут Павел, я работаю в Альфа-Банке на позиции QA Tech Lead. В этой статье хотел бы поделиться своим видением и опытом использования английского языка в повседневной и профессиональной жизни. Не сказать, чтобы мой английский был на высочайшем уровне, но дл...

Специалисты по COBOL теперь не нужны? Появился свободный компилятор, который снижает потребность в разработчиках Не так давно мы писали о том, что один из старейших языков программирования COBOL, похоже, вскоре уйдёт с рынка. И не потому, что он неактуален, наоборот, пока что этот язык востребован, главным образом в финансовой и банковской отраслях. Всё дело в том, что ему ищут замену,...

Релиз Ruby 3.3.0: что появилось нового в языке программирования и что изменилось На днях появился новый релиз динамического объектно ориентированного языка программирования Ruby 3.3.0. Он вобрал в себя лучшие возможности многих других ЯП, включая Perl, Java, Python, Smalltalk, Eiffel, Ada и Lisp. Что касается кода проекта, то он распространяется под лице...

Решаем головоломки и настраиваем среды Kubernetes: подборка новых языков программирования В блоге beeline cloud мы уже делились дайджестом свежих DIY-материалов о контейнерах, DevOps и архитектуре. Сегодня расскажем, кто и зачем разрабатывает новые языки программирования — выбрали те, что появились на свет за последние три года. Некоторые из них написаны энтузиас...

Повторяем Bad aplle на языке Python ASCII-графикой Повторяем Bad Apple в Python ASCII-графикойДоброго времени суток, уважаемые читатели хабра, в этой статье я расскажу Вам о том, как я повторил клип Bad Apple ASCII-графикой Читать далее

Номера телефона +7 (950) — какой оператор и кто может звонить? Звонки с неизвестных номеров могут совершаться телефонными мошенниками и спамерами. Расскажем, кому принадлежат номера с кодом 950 и откуда с них могут звонить. Какому оператору и региону принадлежат номера телефонов +7 (950)? Большинство номеров с телефонным кодом +7 (950) ...

Microsoft тайком устанавливает «бесполезное» приложение Copilot на ПК с Windows Компания Microsoft начала автоматическую установку приложения Copilot на компьютеры с операционной системой Windows 11. Процесс происходит незаметно для пользователей, причём даже на тех системах, где отключена функция автоматической установки обновлений.  Официал...

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

Как мы делали маркетплейс металлопроката и почему отказались от готового решения, часть 1 Представьте себе, что арматуру для строительства дома можно заказать так же просто, как и чайник домой. Идея для наших быстрых времён просто отличная! Да, такой формат продукции не доставить в пункт выдачи около дома, но ведь есть варианты. Например, в малых объёмах металл у...

Modena, но не Ferrari. Xiaomi готовит три новые модели автомобилей, одна из них будет гибридом Сразу несколько источников раскрыли новые подробности об автомобилях Xiaomi. Как сообщатся, компания работает над тремя новыми моделями. Две из них окажутся электромобилями, они обозначены кодовыми именами Modena и Le Mans, а вот третья модель с кодовым именем Kunlun бу...

Релиз Ruby 3.3.0: что появилось нового в языке программирования и что изменилось  На днях появился новый релиз динамического объектно ориентированного языка программирования Ruby 3.3.0. Он вобрал в себя лучшие возможности многих других ЯП, включая Perl, Java, Python, Smalltalk, Eiffel, Ada и Lisp. Что касается кода проекта, то он распространяется по...

Номера телефона +7 (952) — какой оператор и кто может звонить? Номера с определенными кодами чаще других принадлежат телефонным мошенникам. Расскажем, из какого региона звонят с номеров +7 (952), какой оператор их обслуживает и стоит ли отвечать на вызовы. Какому оператору и региону принадлежат номера телефонов +7 (952)? Мобильные номер...

Зачем в школах изучать Pascal, если самый популярный язык программирования в мире — JavaScript? Проблема «учим одно, а на практике требуется другое» хорошо известна. Но не слишком ли большие ожидания связаны с уроками по информатике? Или есть ожидание того, что после уроков музыки дети будут музыкантами, труда — мастерами, а рисования — художниками? Зачем вообще привяз...

История языков программирования: Autocode Алика Гленни из 50-х годов XX века «Упрощённые системы кодирования», которые затем стали называть привычным нам термином «языки программирования», появились очень давно. Одним из первых языков, которые действительно упростили работу операторов вычислительных машин, стал язык, разработанный Аликом Гленни в 195...

Из пушек по воробьям. Генерация и решение лабиринта не самым обычным способом На уходящей неделе мне попалась симпатичная, хоть и не новая мини‑серия статей на Дзен‑канале @zdgzdgzdg про процедурную генерацию лабиринта методом «коллапса волновой функции». Пока я читал эти статьи и знакомился с кодом, меня осенило: ведь это&nbs...

В общих чертах про функциональное программирование в Rust Привет, Хабр!Функциональное программирование предлагает такие концепции, как иммутабельность данных, чистые функции (т.е, результат работы которых зависит только от входных данных и не производят побочных эффектов), а также функции высшего порядка, которые позволяют работать...

Берем ответственность за вопросы: как задавать их правильно Привет, Хабр! Я Оксана Нечитайлова, руководитель отдела сервисного дизайна продуктов в YADRO. Руковожу различными командами уже более 17 лет и за это время поняла: многие недооценивают навык формулирования правильных вопросов. Большинство специалистов уверены, что это некое ...

Сервисы дружитес. Как платформа упрощает создание интеграций без ошибок Всем привет! Кратко обо мне: меня зовут Никита и я уже третий год работаю над тем, чтобы платформа СберМаркета становилась лучше день ото дня. Мой основной язык программирования — Go, но, учитывая специфику платформенной разработки, еще и bash.В этой статье на примерах разбе...

Как я нашёл работу геймдев разработчиком в США из России. Размер и способ оплаты, английский, где искать Я геймдев разработчик, и 6 месяцев назад я нашёл работу на США из РФ. В этой статье рассказываю как я это сделал. Подкрепил слова скриншотами переписок, звонков, контрактом.Рассказал про:• Размер и способ оплаты• Уровень английского• Сайты для поиска вакансий• Резюме и сопро...

Как мы не выбрали Airbyte, или почему собирать данные лучше по старинке Привет, Хабр! Меня зовут Илья, я работаю инженером данных в компании Selectel. В отделе BI мы собираем информацию из внутренних и внешних источников и предоставляем аналитикам. У нас достаточно большой набор внешних ресурсов, данные из которых нужно собирать и обрабатывать...

Remedy рассказала о подробностях мультиплеерного спин-оффа Control В мире современных видеоигр, где каждый шаг разработчиков влечёт за собой волну ожиданий и предположений, Remedy Entertainment выступает с амбициозным проектом, который обещает переосмыслить традиционные подходы к мультиплеерным играм. Спин-офф знаменитой игры Control, получ...

Что такое «испанский стыд» и почему мы его испытываем Испанскому стыду и «кринжу» есть научные объяснения Бывало ли у вас такое, что вы испытывали чувство стыда за действия других людей? Например, такое могло произойти, когда хорошо знакомый вам человек глупо шутил в компании. Или же вам могло стать неловко, когда незнакомец па...

ИИ Google теперь можно «заткнуть» на полуслове ИИ-чатбот Bard компании Google получил обновление, позволяющее отвечать на вопросы в режиме реального времени. Если раньше Bard отвечал только после завершения генерации ответа, то теперь он предоставляет ответы в процессе их генерации.

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

Так выглядит совершенно новая Mazda6. Первые изображения Китайский ресурс Autohome опубликовал первые изображения совершенно новой Mazda6 — автомобиля, построенного на платформе Changan и с, предположительно, электрической силовой установкой. Есть и рендеры, и фото живой машины в камуфляже. Согласно предварительным...

Аналитик vs. презентация задачи. Изучаем профессионально-деформационные диалекты коллег Привет =) На связи снова Анастасия-аналитик из команды STM Labs со своей любимой темой «мягких» навыков. В статье про собеседования (первая часть тут, вторая тут) я сравнила аналитика с переводчиком с бизнесового языка на разработческий. Или наоборот.Недавно у нас на работе ...

CD Project RED начала разработку сиквела Cyberpunk 2077 Проект получил кодовое название Project Orion.

[recovery mode] Где изучать C# в 2024. Бесплатные курсы и полезные ресурсы Существует несколько причин, почему стоит учить C# в 2024 году через бесплатные курсы:1. Популярность: C# является одним из самых популярных языков программирования, особенно в сфере разработки приложений для платформы Microsoft. Изучение C# открывает двери для работы над ши...

Моя коллекция 50+ вопросов для собеса C# Привет, Хабр!Представляю 50+ вопросов для подготовки к собеседованию C#, грейд — джуниор/мидл.Вопросы разные: есть сложные/простые, с детальным объяснением и с ответом в пару предложений.Anyway, должно быть полезно, поскольку я выбрал самые частотные вопросыВообще по поводу ...

Владелец Lada Granta 2023 столкнулся с неожиданной проблемой: из продажи пропали фары Челябинский портал 74.ru рассказал о неожиданной проблеме, с которой столкнулся владелец Lada Granta. На машине 2023 года выпуска после ДТП, произошедшем в ноябре прошлого года, необходимо было поменять бампер, решетку радиатора, фары и часть других элементов. Одна...

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

[Перевод] Об изучении компиляторов и создании языков программирования Когда я только начинал изучать компиляторы, я не понимал одного важного момента: Разработка языка программирования и написание компилятора — это два почти совершенно разных навыка. Конечно, между ними есть некоторое пересечение, но меньшее, чем может показаться на первый взг...

Дивергентное мышление: человек vs GPT-4 За последние годы применение больших языковых моделей искусственного интеллекта стало крайне распространенным явлением. Популярность ChatGPT повлекла за собой море дискуссий на тему правильности применения таких систем как с практической, так и с этической стороны вопроса....

Вы все еще пишете многопоточку на C++ с ошибками синхронизации? Привет, коллеги! В этой статье я покажу свой подход к написанию многопоточного кода, который помогает избежать типовых ошибок, связанных с использованием базовых примитивов синхронизации. Демонстрация идеи будет проходить на живых примерах кода на современном C++. Большинс...

Команда нагрузочного тестирования? Дайте две! Почему иногда подрядчик бонусом к внутренней команде — это хорошая идея Привет! Меня зовут Юля Шамина, я руководитель IT-проектов в СберМаркете. Хочу поделиться нестандартным по всем меркам кейсом, как мы подготовили наши сервисы к высоким предновогодним нагрузкам за 3 месяца благодаря челленджу внутренней команды нагрузочного тестирования. ...

Запускаем Intel 87C51 — первый крупносерийный микроконтроллер (1980)   Мы принимаем как должное удобства современных микроконтроллеров - все ключевые компоненты интегрированы в один корпус: флэш-память/EEPROM, SRAM, само процессорное ядро, PLL, ADC/DAC, PWM, последовательные порты и многое другое.   Но так было не всегда. Первым монолитны...

Как я написал свой первый классификатор эмоций Всем привет! Немного о себе. Меня зовут Максим, я работаю специалистом по Machine Learning в компании SimbirSoft. Последние два года я углубленно изучал область машинного обучения и компьютерного зрения и сегодня с удовольствием поделюсь с вами опытом разработки личного пет-...

Вы кто такие, я вас не знаю, или Как мы делаем JWT-аутентификацию Привет! Меня зовут Данил, я backend-разработчик в Doubletapp. Почти во всех наших проектах есть пользователи, которые могут войти в систему. А значит, нам почти всегда нужна авторизация. Мы используем авторизацию, построенную на JSON Web Token. Она отлично сочетает в се...

Самый конец 2023 года: оцениваем рейтинги языков программирования по версии TIOBE и PYPL Востребованность языков программирования постоянно меняется. Какие-то с течением времени остаются актуальными, а часть постепенно прекращает использоваться и уходит с рынка. Есть, конечно, долгожители вроде COBOL, но их не так много. Тем не менее некоторые ЯП находятся в топ...

OpenVMS: операционная система для атомных станций. Redis Мы продолжаем погружение в основы операционной системы OpenVMS. В прошлых статьях мы установили её в качестве виртуальной машины, настроили сеть и активировали лицензии. Бонусом поставили туда SSH и даже организовали Web-интерфейс для удобного управления. Теперь пришла пора ...

Проектирование REST API: спорные вопросы с проектов и собеседований на системного аналитика (и не только) Проектирование REST API - это процесс создания дизайна методов обмена данными. Дизайн - это субъективное. У одних "так", у других "сяк". А кто прав? Иногда все, а иногда нет. Можно ли сделать в проекте все методы POST? Как правильно именовать эндпоинты - ед. число или мн. ч...

MES — вместо зоопарка автоматизаций на производстве В истории каждой производственной компании однажды наступает День Х момент качественного перехода. Сначала на предприятии появляются локальные островки автоматизации отдельных задач, функций, подразделений. Между этими островками продолжают курсировать люди, но уже не только...

От перфокарт в облако. Где вы хранили файлы десятилетие назад? В годы моей бурной юности в ходу были пятидюймовые дискеты. Их и вправду можно было назвать “floppy”, то есть, гибкими — футляр из плотного коленкора довольно легко сгибался, пробивался степлером и даже с некоторым усилием сворачивался в трубку. Перфокарты я тоже застал — ...

Русский LLM-помощник (saiga) с кэшем, используя RAG (Retrieval-Augmented Generation) Используя технику Retrieval-Augmented Generation ("Поисковая расширенная генерация"), мы настроим русскоязычного бота, который будет отвечать на вопросы потенциальных работников для выдуманного свечного завода в городе Градск. Читать далее

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

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

Перевод: Microsoft готовит «революционную» Windows, ориентированную на ИИ Редактор портала Windows Central Зак Боуден поделился новой информацией о будущем ОС Windows. Новое руководство команды Windows & Web Experiences формирует новую дорожную карту развития операционной системы, которая будет реализовываться в ближайшие годы. Новый план раз...

[Перевод] Снижение потребления LoRa ноды (TPL5010/TPL5110) От переводчика. В этой статье автор исследует тему снижения тока потребления беспроводной LoRa ноды при помощи использования специализированных микросхем семейства нано-потребляющих таймеров TPL5010/TPL5110. Плюс затрагивает вопрос влияния Arduino загрузчика на время жизни...

Что за зверь Security Champion? Многие процессы, статьи и корпоративные легенды апеллируют к понятию «security champion», иногда утверждая, что человек с такой ролью способен сделать невозможное (как говорили и мы в статье о противостоянии разработки и безопасности). Но кто&nb...

Следующим складным Google Pixel может оказаться вовсе не Pixel Fold 2 Энтузиасты, благодаря коду приложения Google Pixel Buds, обнаружили кодовое имя «Comet».

AMD может разрабатывать с нуля графическую архитектуру, следующую за RDNA 4 Есть вероятность, что кодовое название изменится.

«Прометей» может быть кодовым названием будущей архитектуры AMD Zen 5c Подходит ли оно для маленьких ядер?

Про́клятый огонь, или магия препроцессора C Задавались ли вы когда-нибудь вопросом, можно ли полноценно программировать при помощи директивы #define в языке C? Полнота по Тьюрингу шаблонов C++ известна весьма широко, например, люди пишут трассировщики лучей, делающие все вычисления во время компиляции (вместо времени ...

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

Для 20-летних видеокарт ATI Radeon готовится новое ПО. Это будет драйвер Mesa Gallium3D с открытым исходным кодом Практически любую старую видеокарту с PCIe без проблем можно использовать в современном ПК, но поддержка таких адаптеров давно прекращена. Оказалось, что для моделей ATI серий Radeon R300, R400 и R500 в ближайшее время выйдет свежее ПО. Правда, неофициально.  Ново...

Стрела времени, демон Лошмидта и квантовая термодинамика. Почему время необратимо? Когда всё вокруг стремится к хаосу и жизнь с каждым днём становится только хуже, невольно возникает желание обратить время вспять. Но почему-то реальность всячески противится попыткам развернуть стрелу времени на 180°. Что же заставляет время идти только вперёд и не даёт пов...

STM32. Процесс компиляции и сборки прошивки Многие из начинающих разработчиков софта для микроконтроллеров реализуют свои проекты исключительно в средствах разработки, которые предоставляются производителем. Многое скрыто от пользователя и очень хорошо скрыто, из-за чего некоторые воспринимают эти процессы сродни наст...

Гений или просто удачливый? После заметки, хочу развить чуть-чуть другую мысль: место удачи в жизни. Сразу скажу: я не отрицаю существования гениев. Они есть. Если у людей есть мозг, то у кого-то он должен работать очень хорошо. У кого-то он должен работать плохо (клинические идиоты), и у подавляющего...

В iPhone и iOS 18 не будет собственного чат-бота Apple по типу ChatGPT Марк Гурман из Bloomberg сообщил, что Apple не планирует использовать собственного чат-бота с генеративным искусственным интеллектом в iOS 18 для iPhone и других операционных системах. Он подтвердил ранее опубликованную информацию, что Apple провела обсуждения с такими ...

Общий буфер обмена для Windows/Linux систем, с активацией по требованию Виртуальные машины плотно вошли в мое рабочее окружение, VMware, VirtualBox, Hyper-V и RDP. Наличие поддержки у них общего буфера обмена — это удобная возможность обмена данными между системами. Но есть и ряд минусов: Автоматическая синхронизация буфера обмена далеко не ...

Как стать программистом в свои 14 лет и выполнить свой первый заказ на фриланс? Как зарабатывать на программировании в 14 лет?Этот вопрос мучает многих школьников. Но если у меня нет никаких навыков, как я могу показать себя? Ответы на эти и многие вопросы описаны в этой статье. Читать далее

Почему не любят JavaScript? Часто ли JavaScript вызывает эмоции, иллюстрированные на обложке этого поста? А у ваших знакомых? Возможно, что ответ на оба этих вопроса положителен. Если же это не так, то предлагаю узнать в этой статье о причинах недолюбливания этого ЯП. Читать далее

[Перевод] Как Rust меняет мышление разработчика Я страшно ненавижу C++. Обычно я люблю программирование, но каждый проект, с которым я имел дело на C++, ощущался как монотонная рутина. В январе 2023 года я пошёл по пути изучения Rust, поэтому теперь могу сказать, что знаю язык системного программирования, который действит...

[Перевод] Как работает радио? Радиокоммуникации играют ключевую роль в современной электронике, но их теорию сложно понять начинающему любителю. Да, у нас есть общее представление: мы знаем о частотах и, вероятно, можем объяснить разницу между амплитудной и частотной модуляциями. Однако большинству из н...

Инсайдер Midori: «Sonic Rumble (Sonic Toys Party) не будет эксклюзивом Apple Arcade» Sonic Rumble — официальное и финальное название мобильной игры про Соника и его друзей в формате Fall Guys. Об этом сообщил инсайдер Midori, который также ранее использовал другое название для этой игры — Sonic Toys Party. Когда у него спросили, почему перед анонсом меняется...

«Невозможный» аудиокодек для Sega MD Вступительный текст про легендарную консоль, вода, бла-бла-бла. Искрой для появления статьи послужил неожиданный факт: ЦАП мегадрайва способен воспроизводить звук с качеством 26 килогерц 8 бит. Что? Хочу такое! Но… Максимальный размер картриджа 4 Мб, этого хватит на 2.5 ми...

«С двух ног в игру»: как стример с ДЦП тащит в «танках» Редко можно найти настолько мотивирующих людей, как Василий Надеин. Он стримит на своем ютуб-канале STAN GAME уже не первый год и отличается от других блогеров не только неиссякаемым позитивом, но и манерой играть — Вася делает это ногами. Герой нашей статьи родился с Д...

О, вы из Англии? Локализация Ozon Seller на iOS Всем привет! Меня зовут Андрей, и я делаю iOS-приложение для продавцов Ozon Seller. Наша команда поставляет фичи, красит кнопки, работает над перформансом и  всячески улучшает пользовательский опыт работы продавцов на Ozon.Нашим приложением активно пользуются юзеры из р...

В базе данных Geekbench 5 появилось новое устройство Google с названием "Tokay" Устройство с кодовым названием "Tokay" было замечено в Geekbench 5.

Microsoft переходит к ежегодным обновлениям Windows Microsoft возвращается к ежегодным обновлениям Windows, и возможно, готовит новую платформу Windows с кодовым названием "Germanium"

Первые слухи о GPU NVIDIA Blackwell Известный инсайдер Kopite7kimi опубликовал первые сведения о будущих видеоускорителях NVIDIA с кодовым именем Blackwell.

Tesla готовит компактный кроссовер с кодовым именем Redwood Новый кроссовер Tesla начнут производить в середине будущего года

Sound Wave может быть кодовым названием одной из линеек процессоров в серии AMD Ryzen 10000 Вероятно, запланированы на 2026 год.

Google Tensor G4 протестировали в Geekbench В базе данных Geekbench был обнаружен новый смартфон Google Pixel с кодовым названием Tokay

Перевод игры The Invincible на другой язык Относительно недавно вышедшая игра «The Invincible» не имеет альтернативной озвучки — только чопорный английский. Возможно ли силами одного человека за относительно короткий срок (1-2 дня) перевести игру (сделать «озвучку»), например, на «великий, могучий, правдивый и свобо...

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

[Перевод] Open AI Sora. Модели генерации видео как симуляторы мира Мы исследуем крупномасштабное обучение генерирующих моделей на видеоданных. В частности, мы совместно обучаем модель распространения текста с учетом условий на видео и изображениях переменной длительности, разрешения и соотношения сторон. Мы используем архитектуру transforme...

Бруксизм, или дентальный компрессионный синдром Здравствуйте, друзья! В продолжение к предыдущей моей статье про связь имплантации и ортодонтического лечения, сегодня я расскажу про проблемы, которые возникают при гипертонусе жевательных мышц. Читать дальше →

Как мотивировать разработчика заниматься контрибушеном, а главное, для чего Привет! Я Алсу, лид-деврел по бэкенду в Тинькофф. Расскажу как мы мотивировали разработчиков заниматься контрибутой больше обычного, почему это важно, как провели месяц по языку Scala и что из этого получилось.  Читать далее

IT-2024: AI не решает — решают люди Году в 2010-м я читал журнал с интервью одного из тогдашних топов диджитал-сферы и мне запомнилась фраза про то, что тот, кто может спрогнозировать ситуацию в отрасли на пять лет вперёд, тот идиот или мошенник. В наше время горизонт планирования сократился чуть ли не до квар...

Другой способ понять, как работает async/await в C# Про закулисье async/await написано предостаточно. Как правило, авторы декомпилируют IL-код, смотрят на IAsyncStateMachine и объясняют, вот дескать какое преобразование случилось с нашим исходным кодом. Из бесконечно-длинной прошлогодней статьи Стивена Тауба можно узнать мель...

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

Заменят ли LLM людей в разметке данных для AI? Привет! Использование ИИ в разметке данных для него же — уже скорее необходимая потребность, нежели что-то удивительно новое. Разного рода экспериментами с авторазметкой данных нейронками мы занимаемся последние полгода и результаты — нравятся.В данной статье я детально расс...

Практика внедрения PHPunit Уже достаточно сказано о пользе автоматизированного тестирования (например, тут и тут), но до сих пор многие так и не пишут тестов. Одна из причин, как мне кажется, в том что предлагаемые способы автоматизации тестирования сложнее чем необходимо для большинства случаев. Сего...

ИИ-бот GigaCode стал доступен для программистов вне Сбера — автоматическое генерирование и дополнение кода на разных языках Команда СберБанка открыла ранний доступ к персональному ИИ-ассистенту по программированию для разработчиков. Как отмечает пресс-служба, GigaCode помогает в режиме реального времени по фрагменту кода сгенерировать наиболее вероятные его продолжения непосредственно в сред...

Как создать хороший FAQ Привет, Хабр! Я Евгения Береснева, технический писатель в X5 Tech, и я считаю, что классный раздел вопрос-ответов нужен любому продукту. В статье как раз расскажу о том, как его создать.  Читать далее

Сам написал, сам погонял: Как я написал 3D-гонки «на жигулях» за неделю, полностью с нуля? Статьи про инди-разработку игр — это всегда интересно и занимательно. Но статьи про разработку игр с нуля, без каких-либо игровых движков — ещё интереснее! У меня есть небольшой фетиш, заключающийся в разработке минимально играбельных 3D-демок, которые нормально работали б...

Как установить MikroTik CHR в облаке? Шпаргалка MikroTik Cloud Hosted Router (CHR) — удобное решение для создания виртуальных маршрутизаторов в облаке. С помощью него можно эффективно управлять сетевым трафиком, регулировать безопасность и оптимизировать работу в облачной среде. Меня зовут Кирилл, в этой статье я подроб...

[Перевод] Как я проектирую и разрабатываю расширения Python на Rust В этой статье я хочу рассказать о том, как я проектирую комплексные расширения для Python на Rust с использованием PyO3 и почему я принимаю те или иные проектные решения. Читать далее

Звоните Кузе: как мы записали FAQ для инженеров Каждый месяц мы получаем 20–50 тысяч звонков с вопросами по обслуживанию банкоматов. Чаще всего звонят инженеры: узнать статус заявки, получить доступ, проверить версии ПО и т.п. Или инкассаторы — чтобы понять, есть ли на препарируемом ими банкомате неисправности. Вопросы ...

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

Запускаем Steam игры в Proton c поддержкой Native Wayland Иллюстрации к статье подготовлены нейросетью freepik.com. В первой части нашей статьи, мы научились собирать Wine с поддержкой Wayland и запустили игру Overwatch 2. Но для большинства геймеров конечно же больший интерес представляет запуск игр Steam, и этот вопрос мы не про...

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

В США предупредили об опасности QR-кодов Федеральная торговая комиссия США (FTC) предупреждает о новой угрозе: мошенничестве с использованием QR-кодов.

Патч Linux раскрыл кодовые имена нескольких будущих процессоров и архитектур Intel Также компания вводит новый идентификатор.

Skinny Joe — кодовое имя нового 700-ваттного ускорителя NVIDIA замечено в драйверах Для каких целей предназначается «Тощий Джо», пока неизвестно.

Власти США предостерегают от испольования QR-кодов QR-коды в электронных письмах или на парковочных счетчиках могут быть поддельными.

Poco F6 будет оснащён процессором Snapdragon 8s Gen 3 и 50-мп камерой Sony Poco F6 имеет кодовое название “peridot”. Он оснащен 50-мегапиксельным сенсором Sony IMX882.

Как в iOS 17 настроить автоматическое удаление кодов подтверждения из «Почты» и «Сообщений» Настоящая палочка-выручалочка для всех, кто пользуется двухфакторной аутентификацией.

Стали известны кодовые имена архитектур AMD Zen следующих поколений Их выбор был вдохновлен мифологией

Управление знаниями, создание базы знаний. А что на практике? Продолжая тему двух предыдущих постов (первый и второй), в которых проводилось исследование на тему управления знаниями и были рассказаны основные результаты, хотелось бы углубиться в практическую составляющую данной проблемы. Вопросов для обсуждения здесь предостаточно, но ...

Создаем игру на SFML Приветствую всех игроделов и им сочуствующих. В этой статье я хочу рассказать о таком фреймворке, как SFML, и попытаться написать на нем простейшую игру (в нашем случае это будет клон легендарного Pong). v Читать дальше →

От хаоса к порядку. Как мы внедряем стандарты в CDEK Привет, Хабр! Меня зовут Олег Бондарь, я архитектор решений в CDEK. В этой статье расскажу о стандартах — сводах правил и требований, которые позволяют всем участникам процесса быть в общем контексте, действовать единообразно и совершать меньше ...

«Таких машин производят очень мало — по 15-20 за смену, и то не каждый день». Инсайдеры показали редкую Lada Granta за 700 тыс. рублей Инсайдерский паблик опубликовал фото и подробности об оснащении самой дешевой Lada Granta — ценой всего 700 тыс. рублей. Этот автомобиль в упрощенной комплектации «Стандарт», в которой есть ABS, электрические стеклоподъемники спереди и шумоизоляция кап...

Чем заменить Raspberry PI в промышленности? Если коротко, то речь пойдет о промышленном ПК на основе Raspberry CM4 – это абсолютный аналог Raspberry Pi4 в промышленном исполнении с надёжной eMMC от Samsung и полной программно-аппаратной совместимостью. Одну статью мы закончили фразой: «Надеемся, что мы вдохновим читат...

«Хватит программировать в YAML и JSON!»: неочевидные проблемы шаблонизирования Часто в IT-компаниях разработчики используют шаблонизаторы в YAML, JSON и Terraform, управляя параметрами конфигураций, ACL-списками и другими сущностями. Но у такого подхода много подводных камней: шаблоны не всегда корректно отрабатывают и превращают код в спагетти. Особе...

C# изучение windows forms начало I'm студент изучающий язык программирования с#. Делюсь тем чему сам начусь. Надеюсь получится разобрать всё по полочкам, и возможно появятся люди которым будет интересно это читать, может быть кто то найдет себе что то новое или же если уже знаете язык то поможете тем кто т...

Что интересного можно рассказать о человеке по запаху его тела Запах тела каждого человека уникален, и может рассказать о нас много чего интересного Ежедневно каждый человек сталкивается с тысячами разных запахов. Утром нас часто встречает аромат чая или кофе, днем мы посещаем десятки помещений которые тоже имеют свои уникальные запахи ...

Как я пытался нанять свитчера Давно слежу за популярным движением «войти в АйТи». Подписываюсь на различных блогеров, которые с энтузиазмом рассказывают про свой путь переплавки из абстрактных продажников в программисты. Большинство из них сдувается через пару месяцев. Но встречаются иногда упорные люди ...

Как написать идеальный запрос для ChatGPT Управление промтами – важный навык для работы с нейросетями. Однако иногда не знаешь, как лучше их прописать. В результате ответы, генерируемые чат-ботами, оказываются очень общими и неточными.Я потратил много часов на различные курсы по промт-инжинирингу и постоянно тестиро...

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

Почему закрыли QIWI банк, и что будет дальше – небольшое расследование Собрал мнения юристов, составил хронологию, и нашел людей с крупными суммами на счетах. О черном обнале, казино и будущем банка и его клиентов. Читать далее

Нотация моделирования архитектуры С4 — примеры диаграмм и инструменты Если возникает вопрос об описании архитектуры системы, то есть несколько основных решений где и как это сделать. Среди популярных нотаций для визуализации схемы архитектуры можно выбрать C4, разработанную Саймоном Брауном.В этой статье я хочу показать пример применения нотац...

Рекомендации по ведению SQL-кода В этом материале разберем общие рекомендации по ведению SQL-кода на примере СУБД MS SQL (T-SQL). Однако, многие пункты можно также применить и к другим СУБД. Читать дальше →

Лагерь OLPC с русскими детьми Какой должна быть методика преподавания информатики в наши дни? Какой она станет спустя некоторое время? Похоже на то, что… в мире педагогики все по-прежнему. По-прежнему большинство учителей заставляют детишек часами стоять у доски переводя числа из двоичной системы в деся...

Чем новый Яндекс Нейро отличается от обычного поисковика Компания Яндекс мощно встретила 2024 год. Сначала она представила нейробраузер, оснастив свой фирменный браузер кучей фишек искусственного интеллекта от перевода видео до автоматического сканирования QR-кодов на картинках, а на прошлой неделе анонсировала новую Алису — голо...

Valve представила SteamVR 2.0 Компания Valve сообщила о запуске SteamVR 2.0, выпустив обновление ровно через месяц после неожиданного запуска бета-версии SteamVR 2.0 в сентябре. «В этом выпуске мы переносим все новое и интересное с платформы Steam в виртуальную реальность, — говорится в ...

Айтишникам нельзя не быть креативными, и я сейчас это докажу Всем привет. Меня зовут Антон, я Scrum-мастер IT-отдела компании AppEvent и по-совместительству front-end разработчик. В моей первой статье на Хабр хочу рассказать вам, почему же айтишнику нужно быть креативным и как этот навык вообще можно проявить. Ведь зачастую он являетс...

Двойной эксперимент: как студенты примеряли ML на услуги телеком-операторов За чем стоит будущее IT‑индустрии? Определить главный тренд совсем не сложно — искусственный интеллект и машинное обучение.Nexign всегда смело смотрит в будущее, так в одном из проектов мы решили выйти за рамки привычных нам подходов: взяли...

Полезные товары с AliExpress: портативный ирригатор, всесезонный рюкзак с кодовым замком, защита от слежки и другие практичные гаджеты Выбираем

Tesla разрабатывает компактный кроссовер под кодовым названием Redwood Производство нового электромобиля должно начаться в середине 2025 года.

Сиквел Cyberpunk 2077 должен получить мультиплеер Бостонское отделение CD Projekt Red приступило к работе над сиквелом Cyberpunk 2077 под кодовым названием "Orion"

[Перевод] Как, блуждая по Stack Overflow, можно набрести на Branch predictor В блоге beeline cloud мы делились историями и мнениями разработчиков — как программист-самоучка выучил 30 языков программирования, в каких случаях парное программирование не работает и почему некоторые проекты угасают, когда из компании уходит тимлид разработки. Сегодня...

Этапы и принципы развития навыка говорения Статью пришлось переопубликовать с важными уточнениями. Кто уже читал, в конце после чёрточки внизу – совершенно новый текст.«ЗНАТЬ иностранный язык» и «УМЕТЬ на нём разговаривать» — это очень разные вещи. Профессиональные переводчики знают язык глубоко, но разговаривают нек...

Неожиданные последствия запуска PostgreSQL в Docker: замедление запросов в 100 раз У одного из клиентов нашей системы мониторинга PostgreSQL серверов возникла проблема сильного замедления запросов при запуске базы в Docker. В этой статье расскажем о возможных последствиях использования PostgreSQL в Docker с конфигурацией по умолчанию. Читать далее

Почему Илья Суцкевер не ходит на работу? Слева направо: Грег Брокман и Илья Суцкевер. Фон — картины Суцкевера. @gdb Илью Суцкевера не уволили, официально не отстранили, но на рабочем месте его не видели всю прошлую неделю. В других случаях это был бы типичный прогульщик, если бы речь шла не про главного научного ...

Хотел устроиться Python-разработчиком, стал мидлом в QA-отделе — как я искал первую работу Привет! Меня зовут Юра, и в этой статье я хочу поделиться своим опытом поиска работы. И это вряд ли блестящая история успеха — на этом пути нашлось место и самым неожиданным факапам, и офферу от галеры, и отчаянию. Спойлер: на работу я всё-таки устроился, хоть и совсем не в ...

Где изучать Javascript в 2024. Бесплатные курсы, книги и ресурсы Изучение JavaScript в 2024 году по открытым ресурсов имеет несколько преимуществ:1. Востребованность: JavaScript остается самым популярным языков программирования в мире. Знание JavaScript открывает двери к множеству возможностей в IT-индустрии.2. Бесплатный доступ...

Программирование прежним не будет, или почему стоит развивать ИИ-помощников Мощный сдвиг в мире программирования - ИИ-помощники, такие как Copilot от GitHub, переписывают правила кодинга. Представьте, что у вас есть суперумный помощник, который шепчет предложения, пока вы набираете текст - добро пожаловать в эпоху программирования с поддержкой ИИ.

Почему люди мастурбируют, будучи в отношениях Недовольство сексом или фантазии об измене? Отвечает сексолог.

Почему умирает твой пет-проект? Привет, Хабр! В своей статье я хотел бы поделиться мыслями в формате нескольких коротких историй о том, почему большинство пет-проектов остаются где-то на маленькой свалке в гите. Возможно, пет-проекты и не должны быть завершены. Читать далее

Web Evolution (Part 1: Interface) Будущее не плохое и не хорошее, оно такое же как и мы После прочтения некоторых статей на Хабре на тему «будущее...» WEB 3.0, Следующий шаг Всемирной паутины (часть 1), , Будущее социальных сетей, Золотой век Кремниевой долины окончен, и мы танцуем на её могиле, а также — ...

Ещё одна замена Android, но теперь с поддержкой языка программирования Rust. Представлена Vivo BlueOS Похоже, китайские компании решили всерьёз вытеснить Android как минимум с внутреннего рынка. Huawei уже давно продвигает HarmonyOS, Xiaomi представила HyperOS, а теперь и Vivo присоединилась к этой игре, анонсировав BlueOS.  Как говорит сама Vivo, BlueOS — э...

Apple собирается монетизировать свой ИИ Как известно сейчас компания Apple активно работает над собственным генеративным ИИ. Языковая модель под кодовым названием Ajax тестируется уже около года. При этом у Apple достаточно большие планы на эту разработку. Читать дальше... ProstoMAC.com.| Постоянная ссылка | No c...

Юмор программистов из 80-х прошлого столетия У современного читателя может возникнуть резонный вопрос – почему программисты, а не IT-ишники? Ответ кроется в самом заголовке. В 70-х, 80-х годах прошлого столетия, а точнее в СССР не было понятия IT-и. Были понятия «кибернетика», «вычислительная техника», «электронно-вычи...

Животные без головы и мозга удивили ученых своим развитым умом Иногда даже животные без мозга удивляют ученых своими умственными способностями У некоторых животных очень большой головной мозг — например, у кашалота. Эти морские млекопитающие весят около 45 тонн, а масса их мозга равна 8 килограммам. Было бы логично предполагать, что чем...

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

It's a mod, mod world: как моддинг изменил геймдев Для некоторых ПК-геймеров игровые модификации — решающее преимущество перед консольными игроками. Хотя разработчики — например, компания Capcom — иногда рассматривают моддинг как проблему, которая может негативно сказаться на репутации игр. Ранее мы об этом не задумывалис...

Ищем Арнольда Шварценеггера среди мужчин, женщин и детей с помощью нейросети на С++ Привет, Хабр! Меня зовут Кирилл Колодяжный, я ведущий инженер-программист в YADRO. Помимо основных рабочих задач, включающих исследование проблем производительности СХД, я увлекаюсь машинным обучением. Участвовал в коммерческих проектах, связанных с техническим зрением, 3D-с...

Решение на миллион: разбираем алгоритмические задачи с победителями True Tech Champ Привет, Хабр! Меня зовут Алина Ёжикова, я работаю в МТС Диджитал и делаю мероприятия для разработчиков. Сегодня расскажу, как мы организовали самый большой и сложный ивент в моей карьере — олимпиаду по программированию на восемь тысяч разработчиков.Я говорю про True Tech Cha...

[Перевод] Знакомьтесь с Hurl, ужасной (но милой) идеей для языка Иногда в голову приходят идеи, которые звучат ужасно, но требуют воплощения в жизнь. Несколько месяцев назад автор этой заметки, разработчик под ником ntietz*, обсуждал с другом идею языка, в котором единственным потоком команд является обработка ошибок. Эта мысль укоренилас...

Игра в безопасность Android-приложений Давайте в общих чертах рассмотрим вопросы взлома и защиты Android-приложений. В рамках статьи нас интересуют сами процессы взлома и защиты, а не конкретные методики работы с конкретными инструментами. Поэтому разберёмся с этими процессами и постараемся сделать выводы. Ч...

[recovery mode] Создаем чат-бота на Python: Полное руководство В этом полном руководстве от DataTech Community мы шаг за шагом рассмотрим процесс создания чат-бота на Python. Откройте для себя мощь NLTK и TensorFlow в обработке естественного языка и машинном обучении, чтобы создать интеллектуального помощника, способного общаться и отве...

Размышления о выборе языка программирования для школы (и ситуации с информатикой в целом)… Эта статья выросла из ответа на комментарии к статье Основные отличия PascalABC.NET, где возник традиционный спор про то, есть ли смысл в 2023 году изучать Pascal. Для комментов мой ответ слишком большой, так что оформлю в виде такого спонтанного поста.Как бывший программист...

Сравнение utility types библиотек или тайпскрипт на стероидах Буквально за несколько лет typesctipt стал практически мастхэв в современной фронтэнд-разработке (и не только). Язык типов, работающих поверх языка javascript, который сам по себе является языком со слабой динамической типизацией со всеми вытекающими (отсутствие достойного т...

Realme RMX3999 с процессором Dimensity 6100 plus похож по характеристикам на Realme C67 Компания Realme работает над разработкой нового смартфона под кодовым именем rmx3999, но официальное название его пока не раскрыто.

Результаты тестирования двух бюджетных смартфонов HMD стали известны их до анонса В базе данных Geekbench появились результаты тестирования смартфонов HMD с кодовыми названиями Legend и Legend Pro

Преемник Strix Point от AMD вероятно получит кодовое название "Sound Wave" Появились первые признаки того, что мобильный процессор или настольный APU AMD, который придет на смену Strix Point, получит кодовое название "Sound Wave"

В коде приложения Pixel Buds появился новый складной Pixel ... В обновленной версии приложения Pixel Buds для наушников найдено упоминание устройства с кодовым названием "Comet".

Microsoft и OpenAI планируют построить суперкомпьютер стоимостью до $100 млрд к 2028 году Крупнейший в мире центр обработки данных ИИ с кодовым названием "Stargate" запустят к 2028 году в США.

[Перевод] Как я пишу на C по состоянию на конец 2023 года Этот год выдался переломным для моих навыков по программированию на C. Можно сказать, что я пережил слом парадигмы, что побудило меня пересмотреть привычки и весь стиль программирования. Это была крупнейшая метаморфоза моего личного профессионального стиля за долгие годы, та...

“Кем вы себя видите в нашей компании через 5 лет” и другие надоевшие вопросы HR — откуда они взялись и как мешают найму Всем привет! Вместе с коллегами я занимаюсь наймом в Максилекте. Обычно в блоге на Хабре высказываются наши разработчики. От них были статьи не только о технологиях, но и о том, на что смотреть в ходе собеседования и как правильно подобрать компанию по душе. Их мнение вызвал...

Создаем менеджер пресетов в PureData Да, Max более совершенен, чем Pd. Да, в нем очень много сделано для продуктивной работы. Наконец, его интерфейс не тормозит при большом количестве объектов в патче. Однако, есть в Pd что-то магическое, что заставляет снова и снова открывать этот прос...

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

Разделение презентационного слоя фичи на модули в Android приложении Привет, Хабр! Я, Алексей, ведущий разработчик в платформенной команде Альфа-Бизнес Мобайл. В этой статье речь пойдет про приложение Альфа-Бизнес и об одной из архитектурных проблем, с которой сталкиваются на любом среднем/крупном проекте, рассмотрим несколько способов, котор...

Каков C++ в gamedev'e? Хотел написать продолжение к статье Что почитать игровому программисту? про использование С++ в игровых движках, но размышления свернули куда-то не туда.Завороженно смотрю как и какими темпами идет развитие языка в последние годы, и понимаю, что получить и особенно применить...

MLOps-инструменты, обзоры рынка и тренды потоковой обработки данных Привет, Хабр! В сегодняшнем дайджесте продолжаю делиться материалами, которые помогут вам лучше разобраться в темах ML, искусственного интеллекта и дата-аналитики. Какие перспективы у LLM и BI? Куда Amazon и Google инвестировали более $4 млрд? Как организовать работу аналит...

Известно кодовое название Huawei Mate 10 и Mate 10 Pro Эван Бласс рассказал, как внутри компании называют новые флагманские смартфоны Huawei Mate 10 и Mate 10 Pro. Китайская компания Huawei работает над созданием преемника смартфона Mate 9. Ранее нам стала известна дата его официального анонса. А ... Читать полностью

GET запросы на практике: правила, принципы и примеры Я думаю, что вы не раз уже гуглили, заглядывали в статьи, манифесты IT-гигантов о лучших практиках проектирования API. Я тоже.Но в большинстве из них всё ограничивается описанием URL ресурса, мотивацией использовать пагинацию, сложными словами про кэширование и SSL. Это, без...

Как рынок заставил нас сделать аналог Jira (расшифровка аудио записи) Всем привет! Это ламповая история от основателей компании – рассказ о хронологии замены Jira, а также о том, как собственные разработки помогают при создании будущих сервисов. Всё что идёт ниже – расшифровка аудио с небольшой редактурой, которая записана мной. Все совпадения...

Пишем программу на Python для доступа к YandexGPT с помощью ChatGPT В данной программе можно будет самостоятельно составлять собственные system massage (в программе это называется «Специализация»), а это по сути своей программирование GPT модели естественны языком, так же можно будет изменять temperature (в программе это названо «Креативнос...

[Перевод] Свидетельства мошенничества FTX обнаружились в самом коде Впервые взглянуть на кодовую базу FTX мы смогли в прошлую среду. Сторона обвинения показала скриншоты с Github в процессе допроса сотрудничающего со следствием свидетеля Гэри Вана, бывшего CTO компании FTX, который в разные промежутки времени отвечал за кодовую базу, лежащую...

Какой плащ был у Понтия Пилата? Отвечает GigaChat Всем привет! На связи лид разработки SDK GigaChat’a — Константин Крестников. В этой статье я расскажу о том, что такое GigaChain и как в целом SDK позволяет упростить жизнь разработчика LLM, например, научить LLM давать ответы на вопросы по вашим документам или работать в ре...

[Перевод] Когда Random совсем не случаен Этот пост — рассказ об истории, случившейся больше десятка лет назад; её код был мной утерян. Поэтому прошу простить меня, если я не вспомню точно все подробности. Кроме того, некоторые подробности упрощены, чтобы от этой статьи могли получить все, кому нравится компьютерная...

Искусственный интеллект Gemini от Google превзошел всех людей и нейросети в 57 науках Компания Google представила новую версию искусственного интеллекта под названием Gemini. Она набрала 90,0 % в тесте MMLU (понимание языка в условиях многозадачности) против 89,8 % у людей и 86,4 % у GPT-4 по набору из 57 прикладных и фундаментальных наук. В со...

Apple M1 — разбор с точки зрения аппаратной безопасности Давным-давно, в далёкой-далёкой яблочной компании зародилась идея создать собственный процессор для ноутбуков. И вот, спустя годы, Apple презентовала свой десктопный процессор M1. В этой статье мы сосредоточимся на разборе безопасности свежего процессора от Apple. Компания...

Австралийские ученые создали 3D-печатные имитаторы центральной нервной системы Ученые Университета Монаша напечатали образцы нейронных сетей с использованием биочернил, содержащих нервные клетки. Такие имитаторы можно использовать в исследованиях нервных систем, ассоциируемых заболеваний и перспективных лечебных препаратов.

ChatGPT плохо отвечает на «простые вопросы». Как это починить? Привет, Хабр! Меня зовут Антон Разжигаев, я аспирант в Сколтехе и участник научной группы Fusion Brain (AIRI), работающей над мультимодальными подходами. В этой статье я расскажу о нашей последней работе — Multilingual Triple Match — системе для поиска ответов на фактологиче...

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

Язык программирования Mojo: что нового в версии 24.3? На днях была опубликована новая версия языка программирования Mojo, теперь это 24.3. Новинка получила несколько важных компонентов, которые требуются для создания приложений на этом языке. Например, компилятор, интерактивная REPL-оболочка для сборки и запуска программ, отлад...

Как выбрать первую механическую клавиатуру. Пособие для новичка Попросили меня друзья\коллеги рассказать про первые шаги и выбор механики для работы и жизни. Решил поделиться и с Хабром статьёй о том, как выбрать себе первую механическую клавиатуру.В статье отвечу на вопросы о том, что такое HotSwap board, что за проценты в размерах клав...

Благотворительный аукцион встреч «Makes Sense» Добрый день, Хабр! Так сложилось, что большинство проектов, запускаемых в для русскоязычной аудитории, так или иначе, освещаются на Хабре. Мы тоже решили рассказать Вам о проекте. Итак, благотворительный аукцион встреч «Makes Sense». Внимательно прочитав название, уже можн...

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

В сеть слили документ, раскрывший характеристики процессоров AMD Ryzen 9050 В сеть попал документ, который, как утверждается, содержит подробные спецификации новых процессоров AMD Ryzen, известных под кодовыми названиями Strix Point и Strix Halo.

В кодовой базе HyperOS найдены упоминания смартфонов Poco F6 и специальной версии Deadpool Похоже, что в разработке находится POCO F6 Deadpool Edition, поскольку устройство также появилось в кодовой базе HyperOS.

Майкрософт готовит обновление в версии 24H2, которое возможно станет Windows 12 Корпорация Майкрософт готовит глобальное обновление для своей операционной системы под кодовым названием Hudson Valley в версии 24H2.

Домашний кластер разработчика Сколько проектов можно разрабатывать одновременно? Вопрос звучит неоднозначно. С одной стороны, на процесс влияет человеческий фактор, с другой – технические ограничения.Если в работе используется Docker, то запуск нескольких проектов одновременно может превратиться в жонгли...

IBM продолжает выпускать и поддерживать мэйнфреймы. Кто с ними до сих пор работает и где брать специалистов? На Хабре не раз и не два писали про старые технологии, которые до сих пор в ходу — от дискет и языка программирования COBOL до винтажных ноутбуков, ОС и тому подобных артефактов прошлого. Сегодня поговорим о мэйнфреймах, которые ранее были достаточно популярными в корпоратив...

3D-принтер и мозг: печать клеточных имплантатов Если рассматривать тело человека как набор инструментов, то люди разных профессий по-разному будут оценивать важность тех или иных его частей. Для бегуна важны ноги и легкие, для художника — глаза и руки, для оперного певца — голосовые связки и т. д. Это крайне утрированны...

ГАЙД по python стеку для Data Science инженеров Data science - это область, которая занимается изучением и анализом больших объемов данных, чтобы находить в них полезные закономерности, делать прогнозы или принимать решения на основе фактов. Самым популярным языком программирования для data science является Python. Б...

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

Модели вероятности дефолта: практические аспекты разработки и подводные камни Когда люди задумываются о профессии data scientist-а они в первую очередь вспоминают нейронные сети, которые создают красивые картинки или ведут с человеком псевдоосмысленные диалоги. Существует огромное количество материалов посвященных такого рода моделям, и они безусловно...

[Перевод] Идиоматическая обработка ошибок в Rust Вы забудете о необработанных исключениях, если научитесь обращаться с ошибками, как это принято в Rust Обработка ошибок – важнейшая часть любого языка программирования, а в Rust предлагается для этого уникальный мощный подход. Rust, в отличие от многих других языков программ...

Как сделать нейросети ассистентом SMM-менеджера: наш опыт Нейросети в маркетинге сегодня используют не только из-за высокой скорости решения задач и их относительной дешевизны по сравнению с целой командой специалистов, но и потому, что это стало модным. Логотип, нарисованный Midjourney, или презентация, написанная с помощью ChatGP...

Виртуальная девушка, Midjourney на коленке за 5 минут и другие эксперименты с нейросетями Мы часто рассказываем о наших экспериментах с нейросетями, а вы — делитесь своими идеями, вопросами и замечаниями. В этой статье мы решили самый интересный опыт работы с нейросетями. Под катом — инструкции, рейтинг и советы из практики. Читать дальше →

Компонент Tickets — пользовательские страницы и комментарии Давно не писал ничего на Хабре — был по уши занят. За это время многое сделано, но еще больше в планах. А вот вчера выпустил новый компонент Tickets, для создания системы техподдержки. Понятно, только в MODX Revolution. Принцип обычный — пользователь задает вопрос и получае...

Все материалы на данном сайте взяты из открытых источников или присланы посетителями сайта и предоставляются исключительно в ознакомительных целях. Права на материалы принадлежат их владельцам. Администрация сайта ответственности за содержание материала не несет. (Правообладателям)