Социальные сети Рунета
Четверг, 2 мая 2024

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

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

Взлет и падение языка COBOL. Где и как язык программирования, которому 60 лет, применяется и в наше время? В 2023 году языку COBOL исполнилось уже 64 года. Это один из старейших языков программирования, которые применяются на практике. Кроме того, он же — один из лидеров по объему написанного кода. Язык не собирается умирать, наоборот, он развивается. Конечно, конкурентом популяр...

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

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

[Перевод] За 25 лет я выучил 30 языков программирования. Хочу поделиться своим опытом Привет, Хабр! Перевели для вас статью программиста-самоучки, в арсенале которого — три десятка языков программирования. Надеемся, она вдохновит вас поделиться собственными историями становления в кодинге не меньше, чем нас в beeline cloud. Приятного чтения!Всё началось в дал...

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

Нововведения Zig версии 0.12.0, которые стоит упомянуть По случаю выхода версии 0.12.0 языка Zig я снова решил написать статью об этом языке. И в этот раз о том, что изменилось в языке относительно версии 0.11.0. Сразу уточню, что я не буду описывать все изменения. Ссылка на примечания к выпуску под цифрой выше. Список изменений ...

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

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

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

[recovery mode] Как заниматься английским языком самостоятельно: гайд по самостоятельному изучению грамматики для начинающих Вы хотите начать заниматься английским, но пока по какой-то причине не готовы записаться на курсы или найти преподавателя по английскому языку. Но вы готовы уделить какое-то время, чтобы изучать язык самостоятельно, в своем темпе, чтобы если вдруг где-то в будущем вам язык п...

Стиль написания кода на Wolfram Language Я как большой фанат Wolfram Language (WL) очень часто изучаю открытые репозитории с кодом на этом языке. Изучив достаточно много кода я заметил, что стиль написания этого кода очень сильно разнится от проекта к проекту. Но так же я изучил много встроенных пакетов в Mathemati...

Python + pygame — небольшие оптимизации Приветствую IT-специалистов, решивших прочитать мою статью, я - python разработчик любитель (изучающий язык уже 5 лет, но не имеющий коммерческого опыта), который решил создать игру на очень медленном языке программирования. В процессе разработки я сталкиваюсь с различными п...

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

Современный язык международного общения БредисловиеПоводом для написания этого поста стал топик на этом же подсайте https://habr.com/ru/articles/781798/В нем автор восхваляет иероглифы, считая их "силой". Прочитав пост, я начал писать комментарий, который дорос до отдельного поста об идеальном языке международного...

Как перевести игру 'The Lamplighters League' На данном примере предлагается разобрать перевод .wem файлов аудио одного языка (англ.) на другой язык (русский) с последующей упаковкой в .wem и использования в игре. В качестве инструментов будут использоваться python, нейросети, а также программа Wwise. Из интересного — ...

Это реально? Что должен уметь джуниор системный аналитик по профессиональному стандарту Минтруда России Нам оставили немало комментариев к статьям по подготовке к собеседованию системного аналитика (СА) о том, что примеры со сложными вопросами по SQL, REST и диаграммам — избыточны. И что СА не обязан знать, как написать код обработки запроса на Python, И даже СУБД — тоже не сф...

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

В МТС разработали ИИ-программиста, который знает Python и Java В России создали нейросеть, которая умеет писать программный код на двух языках и «переводить» программы с одного языка на другой.

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

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

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

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

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

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

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

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

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

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

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

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

Функциональный Rijndael Rijndael (авторы Vincent Rijmen, Joan Daemen) - алгоритм, признанный стандартом шифрования в 2001 году, ныне называемый AES (Advanced Encryption Standard).Материалов про AES много, и я сразу выделю отличие этой статьи от других:• приведена реализация шифра в функциональной п...

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

[Перевод] С новым годом: GPT в 500 строках на SQL В минувшем году все только и говорили об ИИ и о том, как он может всё за вас сделать.Мне нравится, когда кто-то или что-то работает за меня. Поэтому решил: попрошу-ка ChatGPT написать за меня новогодний пост:"Эй, ChatGPT. А ты можешь реализовать большую языковую модель на SQ...

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

Лонгрид о JavaScript JavaScript — ужасный язык программирования. По сравнению с другими распространёнными языками он выглядит генетическим уродом. Дело даже не в отсутствии многопоточности, или статической типизации, или того, что node_modules для про...

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

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

[recovery mode] TarantoolScript: статическая типизация в Lua-скриптах Tarantool Если вам когда-нибудь доводилось писать скрипты для Тарантула, то вы наверняка сможете понять мою боль. Тарантул - удивительный инструмент, который позволяет не только хранить относительно большие объёмы данных и обеспечивать поразительно быстрое выполнение операций CRUD над...

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

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

Изучение Java в 2024 году: что стоит почитать. 6 книг, которые можно рекомендовать В 2024 г. Java никуда не делась и в ближайшие много лет явно не исчезнет. Язык продолжает развиваться. ПО, написанного на этом ЯП, всё больше. Разработчиков тоже нужно много и сразу, причём хороших. Для того чтобы стать таким специалистом, нужно, конечно, учиться и практиков...

Kotlin (не) против Java: особенности компиляции в байткод В 1995 году Sun Microsystems представили Java — объектно-ориентированный язык программирования, основное кредо которого можно сформулировать так: «Написано один раз, работает всегда». В 2011 году как улучшенную альтернативу Java компания JetBrains представила Kotlin — язык с...

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

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

Как работает протокол X11 на самом нижнем уровне X11 это тот механизм на чем работает весь графический интерфейс Unix подобных ОС. Но мало кто знает как он работает на самом деле. Потому что с годами он оброс слоями и слоями библиотек, которые стремятся скрыть саму сущность протокола. А протокол в своей сути прекрасен. О...

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

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

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

Российский программист создал удобное ПО для Linux, умеющее запускать популярные игры ОС Windows PortProton имеет понятный интерфейс и выполнен на русском языке

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

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

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

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

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

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

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

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

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

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

5 самых странных языков программирования: для чего они нужны и что на них можно написать Согласно самым разным источникам, в мире существует от нескольких сотен до нескольких тысяч языков программирования. Правда, ЯП, с которыми реально имеют дело десятки и сотни тысяч человек, немного. Больше, конечно, нишевых языков, применяемых для решения узкого круга задач....

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

И вновь KolibriOS! И вновь ассемблер!. В прошлой статье, я решил потестировать ассемблер на данной ОС. Но я ни когда не ищу лёгких путей и потому решил окунуться в мир KolibriOS и программировать используя только данную ОС. Всё что я смог выяснить, это то что давно когда-то что-то делали и на данный момент, увы, ...

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

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

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

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

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

[Перевод] 6. Nix в пилюлях: Наша первая деривация Медленно, но верно мы добрались до шестой пилюли, посвящённой пакетному менеджеру и чистому функциональному языку Nix.Попробуем создать нашу первую деривацию. Читать далее

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

Пушилин: Украинский язык не рассматривается в качестве второго официального языка в ДНР А в школах его никто учить из детей не хочет

Токипона — самый простой язык, в котором меньше 150 слов В мире существует язык, в котором игнорируются все сложности Численность населения Земли составляет более 8 миллиардов человек. Для общения все мы используем один или несколько из 7 000 языков, которые были придуманы за десятки тысяч лет. Среди них есть как относительно прос...

Современный С++ в разработке девайсов Привет, Хабр.Меня зовут Андрей Белобров. Я тимлид одной из команд, разрабатывающих приложения для умных девайсов Сбера.На прошедшей недавно конференции Салют, OS DevConf! я выступил с докладом, в котором рассказал, как мы с командой разрабатываем приложения на С++ для умных ...

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

Прогресс WebAssembly и будущее веба. Быстрые интерфейсы, пример Figma Скетч из статьи Лин Кларк «Создание и работа с модулями WebAssembly» WebAssembly (Wasm) — это бинарный формат для безопасного и эффективного выполнения портативных программ в стековой виртуальной машине (в браузере или на сервере). Как и ASM.js, представляет собой низкоуро...

Renga STDL: краткий обзор языка для расширения функциональности программы Renga Renga - программа для проектирования зданий, с помощью которой можно создать трёхмерную модель, включающую инженерные конструкции, коммуникации и всю информацию о них. Затем из этой модели можно получить чертежи и спецификации. Renga работает под Windows и написана на C++.В ...

Книга «Roblox: играй, программируй и создавай свои миры. 2-е изд» Что такое Roblox? Это красочная компьютерная платформа для создания и публикации своих игр. Мир Roblox изо дня в день становится все популярней, и ты можешь стать его частью! Если ты мечтаешь стать геймдизайнером и создать свою игру, но не знаешь, с чего начать, эта книга п...

ХабраЧеллендж или как мы запустили фабрику статей Уверены на все 100%, что каждый читатель Хабра в своей жизни сталкивался с непреодолимым чувством неизбежного, или, как его еще принято называть, сочинением по русскому языку или литературе. И вроде есть понятная и рабочая формула: «‎Главное ― начать, а дальше процесс пойдет...

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

Как улучшить английский в документации. Часть 3: мировая аудитория Мировая статистика говорит, что английским владеет примерно 1,4 миллиарда человек, но носителей среди них всего 380 миллионов. То есть статистически семь из десяти читателей англоязычной документации — не носители языка.Если мы хотим, чтобы наша английская документация хорош...

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

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

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

Интерпретатор Brainfuck на Brainfuck Когда-то давно, году в 2013-м, на глаза мне попался следующий код:>>>+[[-]>>[-]++>+>+++++++[<++++>>++<-]++>>+>+>+++++[>++>++++++<<-]+>>>,<++[[>[->>]<[>>]<<-]<[<]<+>>[&...

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

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

[Перевод] Выявление ошибок в работе с памятью в C и C++: Сравниваем Sanitizers и Valgrind В этой статье вашему вниманию представлено сравнение двух инструментов для поиска ошибок в работе с памятью в программах, написанных на memory-unsafe (небезопасных при работе с памятью) языках — Sanitizers и Valgrind. Эти два инструмента работают совершенно по-разному. Поэто...

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

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

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

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

Сказ о том, как я эмулятор Intel 4004 на Python писал Рассказываю о том, как я решил написать эмулятор дедушки современных микропроцессоров - Intel 4004 с очень ограниченным функционалом на языке Python.. Читать далее

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

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

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

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

Бесплатные курсы для изучения SQL в 2024 году Изучение SQL в 2024 году остается важным для по нескольким причинам:1. Широкое применение: SQL является стандартным языком для работы с реляционными базами данных, которые широко используются в различных отраслях. Большинство предприятий и организаций все еще хранят свои дан...

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

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

Шкала масштабов вселенной (русский язык) Всем привет! Добавил русский язык к шкале масштабов вселенной.В интернете есть довольно занимательная шкала с относительными размерами разных объектов от мельчайших, до обозримой Вселенной. Сама шкала изначально была flash презентацией, а после прекращения Adobe поддержки sw...

[Перевод] Носители английского языка — худшие коммуникаторы в мире Носители языка — худшие коммуникаторы в миреВ комнате, полной людей, для которых язык не является родным, «нет никаких шансов на понимание». Возможно, это их язык, которым они владеют, но послание часто теряется. Читать далее

[Перевод] Генератор случайных чисел, который можно запустить в голове Люди ужасно плохо справляются с придумыванием случайных чисел. Я хотел научиться быстро генерировать «достаточно случайные» числа. Мне не нужно было что-то совершенное, просто способ придумывания случайных цифр за полминуты. Поискав онлайн, я нашёл старый пост в Usenet, нап...

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

Lazarus использует уязвимость Log4Shell двухлетней давности для доставки троянов Эксперты предупредили, что северокорейская хакерская группа Lazarus продолжает эксплуатировать уязвимость Log4Shell (CVE-2021-44228). Теперь баг используется для развертывания трех ранее неизвестных семейств малвари, написанных на языке DLang.

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

Появился банковский троян, который «просачивается» через облачную защиту Windows В Сети снова стал активен банковский троян Mispadu, написанный на языке Delphi, и предназначенный для кражи конфиденциальных данных жертвы и направления её оператору.

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

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

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

Создание своего терминала на C++ и Qt: Часть 1 Привет, хабр! Сегодня мы создадим свой собственный терминал на языке программирования C++. Я являюсь фанатом Linux, и пользуюсь минималистичными терминальными программами - от Vim как IDE до чатов. Есть множество терминалов, у каждого из них есть плюсы и минусы. Наш терминал...

Как установить NCALayer на Linux Всем привет, меня зовут Абай. В последнее время часто замечаю, что у пользователей Linux в Казахстане постоянно проблемы с установкой NCALayer, поэтому решил написать гайд, который простым языком объяснит, как установить его через терминал... Читать далее

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

В Samsung Galaxy AI появилась поддержка русского языка Компания Samsung добавила поддержку ещё нескольких языков к возможностям своего искусственного интеллекта (ИИ) Galaxy AI. В том числе, стал доступен русский язык, а кроме него — арабский и индонезийский. Появилась и поддержка трёх новых диалектов: австралийского а...

Small talk для большого успеха: общение с рекрутером, коллегами и новыми знакомыми Ребята, привет! Это Лена, методист курсов английского языка в Практикуме, преподаватель и англоговорящий интервьюер в международных IT-компаниях. Мы с вами уже знакомы по статье о собеседовании на английском для разработчиков.Я хочу более подробно раскрыть пункт о софтскилах...

C++ или Python? 7 языков программирования, которые «расплавят» ваш мозг Окунитесь в личный список обозревателя HackerNoon с самыми сложными языками программирования, которые заставят вас почесать голову. Классический C++, «загадочный» Malbolge и «поражающий воображение» Haskell. Познакомьтесь с INTERCAL, языком, созданным для того, чтобы разочар...

Химический ракетный двигатель с высоким удельным импульсом Эта заметка появилась как своего рода ответ на статью «Прорывная концепция ракетного двигателя» Глеба Кулева. В этой статье автор утверждал, что используя его конструкцию можно сделать химический реактивный двигатель с удельным импульсом выше 500 секунд (что считается пред...

Pkl — новый язык конфигураций от Apple. Обзор и сравнение с YAML и JSON Каждое приложение требует определенного уровня конфигурации. С помощью специальных языков можно создавать файлы, которые способны автоматизировать инициализацию системы. Эти файлы обычно читаются и интерпретируются только один раз. Наиболее распространенный пример — конфигу...

Автоматическое создание карточек слов для изучения иностранного языка или интеграция google translate в google sheets Добрый день.Недавно сделал инструмент для автоматизированного создания карточек для изучения слов — подумал что может быть кому то пригодится и как инструмент, и как техническое решение.Немного вводной информации: один из способов запо...

[Перевод] Отсечение и поиск / Prune and search Решал задачу на LeetCode (Word Search) и наткнулся на незнакомый мне термин "search pruning", либо "Prune and search". Немного погуглив, узнал, что это метод решения задач оптимизации, на Википедии есть соответствующая статья (ссылка). На русском языке я не нашел такого терм...

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

Как работает multiprocessing в Python под капотом Я довольно давно пишу на Python и во многих проектах использовал multiprocessing — пакет стандартной библиотеки языка Python, который предоставляет интерфейс для работы с процессами, очередями, пулами процессов и многими другими удобными инструментами для параллельного прогр...

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

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

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

Миграция конфигурации сборки с Groovy на Kotlin DSL (Domain-Specific Language) — это язык программирования, который спроектирован и оптимизирован для решения задач в конкретной области или для определенного класса задач. DSL build.gradle предоставляет разработчикам удобный способ определения настроек проекта и управления ...

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

Как устроен PassMark. Воспроизводим тесты из машинного кода На сегодняшний день существуют сотни программ для оценки производительности вычислительных устройств, но абсолютным лидером среди них несомненно является PassMark - "Industry standard benchmarking since 1998", - как его позиционирует сам разработчик, и вдобавок предоставляющ...

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

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

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

[Перевод] Краткий обзор техник векторизации в NLP Как переводчик-редактор, я интересуюсь темой NLP и автоматизации рутины бюро переводов. Изучая вопрос того, как смысл слов превращается в векторы, наткнулся на эту обзорную статью. Статья мне показалась изложенной доступно, поэтому я перевел ее для удобства других коллег. Ра...

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

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

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

YTsaurus SPYT: помогаем планировщику Apache Spark быть ещё эффективнее В больших распределённых системах многое зависит от эффективности запросов: если на гигабайте данных неоптимальный запрос может выполняться за миллисекунды, то при увеличении массива в тысячи раз, сервер начнёт кряхтеть, пыхтеть и жаловаться. Чтобы избежать этого, помогут зн...

«Можно будет общаться как с живым собеседником», — в этом году YandexGPT заговорит по-казахски В 2024 году Яндекс обучит нейросеть YandexGPT казахскому языку. Языковая модель научится писать и перерабатывать тексты на казахском языке, запоминать ход беседы и отвечать на уточняющие вопросы пользователя. По заявлению компании, YandexGPT станет первой публичной гене...

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

Heretic: full stack фреймворк на основе Marko.js В последнее время вышло так, что я по неведомой причине стал часто заниматься популяризацией Marko.js, декларативного и реактивного языка разметки, который разрабатывается eBay. С одной стороны, это связано с тем, что Marko незаслуженно часто обходят стороной, хотя он п...

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

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

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

Multilabel-классификация знаний школьников Привет, Хабр! Меня зовут Егор, сейчас я учусь на четвёртом курсе кафедры математических методов прогнозирования (ММП) ВМК МГУ и изучаю машинное обучение, в том числе, обработку естественных языков (Natural Language Processing). Этим летом я стажировался в Лаборатории искус...

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

Samsung Galaxy AI получит поддержку русского языка К существующим в Galaxy AI 13 языкам добавляются новые, в том числе арабский, индонезийский и русский.

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

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

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

ChatGPT теперь озвучивает свои ответы на 37 языках OpenAI представила новую функцию для ChatGPT, которая позволяет зачитывать ответы бота вслух. Озвучка доступна как в веб-версии ChatGPT, так и в приложениях для iOS и Android. Это может быть особенно полезно для пользователей, которые находятся в пути и предпочитают слушать…

Шпаргалка глаголов на английском языке при составлении тест-кейсов и заведении дефектов Автор: Надежда Дудник Памятка для начинающих инженеров по тестированию ПО.Указанная ниже шпаргалка помогала моим менти составлять тестовую документацию при выполнении тестовых заданий, а также проектных задач.Все глаголы я как раз использовала на своих англоязычных проектах...

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

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

Как дизайнеру и любителю технологий жить после Apple Vision Pro После релиза Apple Vision Pro интерфейсы перестают быть концептами из фантастических фильмов и формируют новую реальность. Какой она будет? Информации пока немного, а купить очки от Apple могут пока лишь единицы. В статье доступным языком и с множеством примеров объясняем:— ...

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

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

[recovery mode] Решаем дифференциальные уравнения с помощью Python часть 1 Начнем пожалуй с того, что решать дифференциальные уравнения вручную может быть не совсем просто. На данном ресурсе http://mathprofi.ru/differencialnye_uravnenija_primery_reshenii.html есть шпоры как это делать вручную, там есть множество подсказок по различным разделам высш...

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

Глава Рособрнадзора Музаев заявил об отмене ВПР по иностранным языкам В школах отменили всероссийские контрольные по английскому языку

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

[Перевод] Две мощных возможности Python, упрощающие код и улучшающие его читабельность Улучшите качество кода, украсив его оператором match и срезами объектов.Python не случайно стал невероятно популярным в современной технической среде. Он, если сравнивать его с другими языками программирования, возможно, является самым удобным и доступным для новичков. И, вм...

[Перевод] Советы разработчика с 8-летним опытом работы Привет! Меня зовут Бенуа, я работаю разработчиком программного обеспечения последние 8 лет. В своей предыдущей компании я проработал 7,5 лет, а в начале 2022 года перешел в новую.Эта статья написана в результате недавнего самоанализа о том, что мне стоило начать делать в сво...

Настройка C++ проекта c OpenMP. Обертывание С++ для Python с помощью pybind11 и CMake В статье описан практический пример настройки проекта на языке C++ с использованием, в качестве примера, библиотеки для многопоточных вычислений OpenMP , а также дальнейшее обёртывание для использования в проектах написанных на Python при помощи библиотеки Pybind11. В качест...

Возможности JS, о которых вы возможно не знали Всем привет! Меня зовут Леша, я фронтенд-разработчик. Крашу кнопочки, пишу js скрипты, веду канал в TG https://t.me/frontend_tales (подписывайтесь, стараюсь выкладывать полезный материал). В этой статье хотел бы поделиться с вами лайфхаками JavaScript, которые, возможно, пом...

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

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

Про уровни владения иностранным языком __1. Давайте подумаем, какой уровень у человека, который читает английскую классику почти без словаря? Я был таким человеком в 2008 году, когда приехал в частную школу английского языка в Лондоне. В школе были группы семи уровней: Beginner, Elementary, Intermediate (и Pre- и...

Как я стал iOS разработчиком О чем пойдет речь В данной статье я хочу рассказать вам как я стал iOS разработчиком в 32 года не имея профильного образования, не оканчивая курсы, без знания английского языка и без друзей/знакомых в сфере IT.Понеслась.Первые мысли об...

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

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

Алиса выучила казахский язык Алиса научилась понимать казахский и говорить на нём. Пообщаться с виртуальным ассистентом Яндекса на национальном языке Казахстана уже можно в мобильном Яндекс Браузере. Алиса поможет найти ответ на интересующий вопрос, подскажет погоду или поддержит простую беседу.

Торговые роботы на Golang Трейдеры на финансовом рынке обрабатывают большие объемы информации и принимают решения максимально быстро, чтобы не упустить возможность и избежать рисков. Получить преимущество можно, если умеешь хотя бы немного программировать. Это особенно важно там, где время — деньги.Я...

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

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

Принят новый стандарт Fortran 2023 В конце 2023 года был принят очередной стандарт языка Фортран, ISO/IEC 1539-1:2023. Programming languages. Fortran (в просторечии – Fortran 2023). Читать дальше →

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

Как я попробовал написать авиасимулятор Давным-давно, в 2015 году я написал свою первую статью на хабр: Пишем простую* игровую физику самолёта Статья появилась не сама по себе — я писал игру, но так её и не доделал. За предыдущие девять лет я несколько раз возвращался к проекту, что-то улучшал, но по-факту он так...

ChatGPT клиент для MS-DOS Благодаря стараниям ретро энтузиаста Yeo Kheng Meng (очень рекомендую его сайт, много интересного по ретро технике) можно юзать ChatGPT на DOS машинах. Кто владеет языком рекомендую Оригинальный пост на ангельском. Я тестил проект на машине Toshiba T1200, (для которой к слов...

Тачпад для управления гаджетами языком представили в действии Компания Augmental привезла на выставку CES 2024 доработанную версию контроллера MouthPad, позволяющего управлять разными устройствами с помощью языка

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

Ученые нашли следы утерянного языка возрастом 3 000 лет В Турции найдена табличка с надписями на давно забытом языке На планете Земля сегодня насчитывается более 8 миллиардов человек, относящихся к тысячам разных народов. При всем этом многообразии, в мире не существует единого способа общения — каждый из нас разговаривает на одн...

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

Коротко об играх от инди разработчиков №2 Прошлая подборка была неоднозначна принята. В комментарии было написано что не надо, а потом кто-то написал что надо. Пусть лайки/дизлайки определят, нужно такое здесь публиковать или нет. Попытка № 2.На DTF в комментариях было очень тепло принято, на пикабу залайкано.Мне на...

[Перевод] Как программировали в 1969 году Я провёл это интервью со своей матерью Марианной Эрнерфельд в декабре 2018 года. В посте приведён немного урезанный перевод. Полное интервью на шведском языке можно прочитать здесь. Почему ты захотела стать программистом? Я решила стать программистом в 1965-66 годах. Прочи...

Выполняем сторонние программы на микроконтроллерах с Гарвардской архитектурой: как загружать программы без знания ABI? Зачастую в процессе разработки собственных устройств или моддинга уже существующих, встаёт задача выполнения стороннего кода: будь то ваши собственные программы с SD-флэшек, или программы, написанные другими пользователями с помощью SDK для вашего устройства. Тема компилят...

Электронный язык способен распознавать 4 вкуса и сорта вин Инженеры из Института науки и технологий DGIST в Южной Корее создали вкусовой анализатор, имитирующий работу человеческого языка

Google научила свой ИИ понимать 40 языков и генерировать любые изображения Компания Google объявила о крупном обновлении виртуального ассистента Bard и нейросети Gemini Pro. Доступ к последней открыли в 230 странах на 40 языках

[Перевод] Hono vs. H3 vs. HatTip vs. Elysia — современные замены Express для сервера (или без сервера) H3 отмечает, что Express.js - старый и малоразвивающийся фреймворк, являющийся не оптимальным выбором для новых проектов из-за потенциальных проблем безопасности и утечек памяти, что, к слову, касается и Koa.В нашей статье мы сделаем акцент на фреймворках, поддерживающих зап...

Информатика, зачем? Я и так умею программировать! (на примере языка C++) - Как я стал таким программистом?- Я был умнее самых умных и упорнее самых упорных! перефразированная цитата Скрудж МакДака Читать далее

[Перевод] Как я уменьшил размер образа docker на 40% Ежедневно по работе я сталкиваюсь с Dockerfile, написал несколько из них самостоятельно, создавал контейнеры и всё такое. Но я никогда не публиковал их в реестре docker hub. Мне хотелось создать ugit — инструмент для отмены команд git (написанный в виде шелл-скрипт...

[Перевод] Язык Janet для смертных. Часть 1 — Значения и ссылки Это первая глава перевода небольшой книги о языке Janet за авторством Иана Генри (Ian Henry). В этой книге раскрываются различные аспекты работы с языком, обьяснение синтаксиса и некоторых приемов программирования. Внимание, в этой публикации содержатся скобочки! Люди с неп...

42 года BBC Micro и BBC BASIC: как появился этот образовательный инструмент и что с ним сейчас (спойлер — всё хорошо) Примерно полвека назад, где-то в начале 80-х годов XX века в BBC загорелись идеей образовательного проекта, цель которого — повышение компьютерной грамотности школьников, студентов и вообще всех желающих. А чтобы сделать проект масштабным, привлечь максимальное количество уч...

Golang глазами PHP-программиста Как-то появилась причина попробовать пописать на Go. На тот момент я знал, что это язык от Google, язык молодой, язык компилируемый, вроде как активноразвивающийся и с зарплатами выше средних. Неплохой набор.В первой попавшейся статье узнаем, что Go к тому же легкий в изучен...

Что должны уметь программисты, чтобы оставаться востребованными на рынке труда Ежегодное исследование определило, что должны уметь разработчики. Выяснилось, какие навыки и языки программирования наиболее популярны.

Reflection в iOS: как посмотреть содержимое любой сущности В Swift, как и во многих других языках программирования, есть возможность получать информацию о структуре объекта в Runtime. Для этого в языке есть специальный механизм — Reflection. С его помощью можно просматривать содержимое любых сущностей, не зная о них абсолютно ничего...

Разработка цифровой аппаратуры нетрадиционным методом: Yosys, SpinalHDL, VexRiscv (ч.1) Основная прелесть использования ПЛИС, на мой взгляд, состоит в том, что разработка аппаратуры превращается в программирование со всеми его свойствами: написание и отладка кода как текста на специализированных языках описания аппаратуры (HDL); код распространяется в виде па...

Разобраться раз и навсегда: Task.WhenAll или Parallel.ForEachAsync в C# Все хотят писать код, который работает быстро. Часто мы сидим, просматривая написанные алгоритмы и пытаясь понять, что можно сделать, чтобы настроить их производительность. В таком случае часто прибегают к параллельному выполнению задач. Конечно, если можно выполнять зада...

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

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

Как показать номер версии на экране загру… Привет, Хабр! Меня зовут Сергей, и я 3 года работаю Android/iOS разработчиком. Написал с нуля приложение для фитнес-клубов (Google Play/App Store — если интересно, код под NDA, его не могу показать) и дорабатываю малоизвестный банк. За это время накопилось много интерес...

Аналог Duolingo для продвинутых — одна хорошая книга для пополнения словарного запаса в английском языке Наткнулся недавно на книгу "1100 words you Need to Know" by Murray Bromberg and Melvin Gordon" (для уровня C1-C2). Она легко гуглится в Яндексе.Данную книгу упоминали уже здесь, на Хабре, как хороший способ изучения новых слов. Я напишу еще немного. Читать далее

Yet Another Easyjson. Как я не устаю делать велосипеды, а главное зачем Я люблю время от времени взять и переделать что-нибудь уже готовое. Цель не в том, чтобы сделать что-то лучше или доказать свою гениальность – я просто ищу опыт. Как получить опыт в разработке сложного инструмента, если ты берешь уже готовые фреймворки и пакеты и просто соби...

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

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

[Перевод] Увлекательный лексический анализ языка Rust Давайте поговорим о лексическом анализе. Сначала я собирался назвать этот пост «Реализуем токенайзер», но ветер переменился, времена изменились… и, чтобы не утонуть в потоке комментариев вида «фыр, а где мой BPE-токенизатор LLama, который вы мне обещали», ограничимся пока л...

ИИ для разработчиков: Intel открыла код библиотеки ускорения NPU Intel открыла код своей библиотеки, которая позволит использовать возможности нового блока нейронной обработки (NPU) в процессорах Meteor Lake. Эта библиотека, получившая меткое название NPU Acceleration Library, написана на языке Python и призвана помочь вам "раскрыть потен...

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

[Перевод] Разработчик-универсал под видом специалиста С тех пор, как я начал работать на себя, заключая контракты, меня постоянно тяготило то, что, будучи разработчиком-универсалом, на рынке труда мне приходится позиционировать себя как узкого специалиста. Я уже много лет хотел написать об этом и даже делал кое-какие заметки. ...

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

Действительно ли C++ — лучший язык, чтобы выстрелить себе в ногу? В 2023 году одной из главных IT-новостей стала публикация гайда от Агентства национальной безопасности (NSA) США, в котором языки С/C+ признавались «опасными» и требующими перехода на «безопасные» C#, Go, Java, Ruby и Swift. В этой статье я с позиции Security Champion в Ka...

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

«Самоидентификация» клавиатуры «Я — русский!»‑ спел недавно известный певец. Да и я, после 20 лет пользования клавиатурой, наконец‑то, устал вечно поправлять текст, набранный не в той раскладке клавиатуры (в голове держать всё невозможно!) и сделал индикацию текущей раскладки. Каз...

В Rotten Flesh надо кричать в микрофон, чтобы найти пса Независимая студия Steelkrill наконец-то выпустила в релиз хоррор с элементами выживания Rotten Flesh, в котором нам предстоит искать потерянного пса с помощью криков в микрофон. Небольшой инди-проект был анонсирован в конце ноября 2023, а теперь игра уже доступна в Steam вс...

Шутер Monument. Обновление спустя 5 лет после релиза Разработка игры началась в далёком 2014 году с изучением Unity. Чтобы выучить новую двиг или язык программирования я обычно делаю какой-нибудь проект на этой технологии, в моём случае это работает лучше чем зубрёжка. Таким проектом стал Monument - олдскульный шутер с видом о...

Основные функции Apache Tomcat Привет, дорогие читатели! Apache Tomcat — это открытое программное обеспечение, реализующее спецификации Java Servlet, JSP и Java WebSocket, предоставляя таким образом платформу для запуска веб-приложений, написанных на языке Java. Разработанный и поддерживаемый Apache Softw...

Минпросвещения обратило внимание на детей-мигрантов в школах Александр Бугаев: «У нас образование идет на русском языке — и ребенок, приходящий в школу, русский должен знать». При этом, чиновник подчеркнул, что для детей-мигрантов необходимо создавать условия для изучения языка

Python и Excel глазами НСИ Всем привет! Меня зовут Алмаз. Я специалист по НСИ (нормативно-справочной информации) в компании Bimeister. Хотел бы поделиться своим небольшим опытом автоматизации некоторых рутинных задач при работе с различными файлами и Excel- базами данных.Python.Предыстория.Сейчас дово...

Мой первый софт и астрономия Расскажу о своём небольшом опыте работы в проекте, который был посвящён астрономии, и о математике, с которой пришлось повозиться. Я написал программу которая при помощи метода Монте-Карло моделирует рассеивание света звёздной пылью. Скажу сразу что я не математик и не астро...

Где заканчивается Flutter и начинается платформа? Сердце фреймворка Flutter (который для разработчиков часто представляется только в виде набора классов на языке Dart) написано на языке С и компилируется в двоичный артефакт, известный как Flutter Engine, подключаемый к приложению и используемый из Dart-классов через механиз...

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

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

[recovery mode] Подкрепляем полезные привычки Этот текст (не осмелюсь назвать «статьей») стал побочным продуктом моего «грандиозного» замысла — попытки пересказать понятным языком содержание одного из эпизодов The Huberman Lab podcast, который «Как ставить цели и достигать их». И, как все прочие эпиз...

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

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

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

[Перевод] Мягкое знакомство с дополнительным кодом Недавно, общаясь по видеосвязи с другом, я рассказывал ему о своих идеях по реализации нового продукта. В разговоре я упомянул добавление больших знаковых чисел в ассемблере с использованием дополнительного кода, на что получил от собеседника вопрос: «Что такое дополнительн...

Хакеры придумали новый инструмент для взлома серверов и облачных сервисов В Сети начал распространяться новый тулкит (пакет инструментов, для активации и управления лицензиями ПО), написанный на языке Python, который хакеры используют для атак на веб-серверы, SaaS-сервисы, предоставляющие ПО как услугу, и облачные платформы.

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

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

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

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

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

[Перевод] Сколько ядер CPU можно использовать параллельно в Python? При выполнении параллельной программы, активно задействующей CPU, нам часто необходимо, чтобы пул потоков или процессов имел размер, сопоставимый с количеством ядер CPU на машине. Если потоков меньше, то вы будете использовать все преимущества ядер, если меньше, то программа...

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

Разработка цифровой аппаратуры нетрадиционным методом: Yosys, SpinalHDL, VexRiscv (ч. 2) Это вторая и заключительная часть большой статьи. Ознакомиться с первой частью можно по ссылке. Основная прелесть использования ПЛИС, на мой взгляд, состоит в том, что разработка аппаратуры превращается в программирование со всеми его свойствами: написание и отладка кода...

Semantic BPM. Семантика и синтаксис бизнес-процессов Онтологический инжиниринг в области Управления бизнес-процессами (BPM). Семантический BPM (Business Process Management), впрочем, как и семантический ЕА (Enterprise Architecture), – это заимствование концепций (подходов к описанию и онтологизации) \ инструментов Linked Data ...

Немного об ATARI XL/XE: 6502, графика, код Статья является введением, которое знакомит с компьютерами семейства ATARI XL/XE. На примерах, на встроенном языке ATARI BASIC с щепоткой ассемблера, показаны некоторые особенности графики для этой платформы. Читатель легко сможет повторить примеры на собственном ПК использу...

Как изменить язык приложения на Android Одна из основных настроек Android — язык. Смартфоны позволяют нам взаимодействовать с системой хоть на русском, хоть на английском, хоть на китайском. Но получится ли изменить язык для отдельного приложения, если стандартный вариант вас по какой-то причине не устраивает? Да...

File upload на React.js шаг за шагом В этой статье напишем компонент для загрузки файлов на сервер, который поддерживает: - Индикатор загрузки - Прерывание отправки - Drag and dropВ нашей конкретной реализации этот компонент будет оберткой и сам не будет отображать файлы, но, я надеюсь, приемы из этой статьи по...

Turbo Pascal: 40 лет развития Сегодня 2023 год. Но вернемся на 40 лет позже - прямиком в 1983 год. Именно тогда Borland выпустила Turbo Pascal. Turbo Pascal - интегрированная среда разработки программного обеспечения для платформ DOS и Windows 3.x и язык программирования в этой среде, диалект языка Паска...

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

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

Эволюция обработки данных: от MapReduce к стриминговому движку Yandex Query Language (YQL) — универсальный декларативный язык запросов к системам хранения и обработки данных, разработанный в Яндексе. А ещё это один из самых нагруженных сервисов: YQL ежедневно обрабатывает около 800 петабайт данных и 600 000 SQL-запросов, и эти показател...

«Найти и утилизировать»: как мы автоматизировали очистку ресурсов после тестирования с помощью Tempest Cleanup Всем привет! Меня зовут Валентина, я разработчик в тестировании Selectel. В своей прошлой статье я рассказала, как мы автоматизировали запуск тестов Tempest в GitLab. Статья вам понравилась, поэтому я написала продолжение. В нашей автоматизации была проблема: после тестов ...

Исследуем лицензирование Cockroach DB до Enterprise или не случившийся хард-реверс-инжиниринг Как известно java компилируется в байт-код, скомпилированные классы также богаты мета-информацией для обеспечения механизма рефлексии что в совокупности позволяет довольно легко декомпилировать java-приложения обратно в java-код. Смотря в окошко рандомного java-приложения, с...

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

Инженер создал очки на базе Raspberry Pi, которые переводят язык жестов в речь Благодаря нейронной сети и Raspberry Pi носимый переводчик в виде очков теперь умеет распознавать жесты и мгновенно озвучивать их.

Маршрутизация по DNS на OpenWrt Написать данную статью меня побудили следующие обстоятельства:Обновление ОС на своём роутере до OpenWrt 23.05, сломавшее мой предыдущий setup, где я делал роутинг по GeoIP.Многочисленные вопросы знакомых и в дискуссиях в постах на Хабре.Статья на Хабре, по которой я стал дел...

Системная ошибка рынка труда или почему не хватает технических писателей со знанием языков разработки и API Hola, Хабр! Я — технический писатель и за свою длинную карьеру в ИТ, нигде и никогда не сталкивался с ситуацией переизбытка в командах технических писателей. Наоборот, почти повсеместно в компаниях есть множество продуктов и проектов, в которых документация неполная, неточна...

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

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

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

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

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

Научно доказано, что «пяти языков любви» на самом деле не существует Специалисты из Университета Йорка и Университета Торонто выяснили, что теория о пяти языках любви неверна. Эта концепция получила распространение после выхода книги Гэри Чепмена, бывшего священника.

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

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

Краткая история сервера На первый взгляд история и последующая эволюции серверов выглядит предельно просто. Ее исходные вехи: 1964 год — создание мэйнфрейма IBM System/360, каковой в числе прочего был сервером для его интерактивных консолей и прочих периферийных устройств, то есть сервером в «желез...

Исследование: Россия и Боливия на одном уровне владения английским языком А как свои знания оцениваете вы?

Гендиректор Nvidia: В век ИИ изучение программирования скоро не будет иметь смысла Дженсен Хуанг уверен, что языком программирования в будущем станет обычная человеческая речь.

Несколько советов как новичкам не забросить изучение IT Я создаю IT-курсы уже 6 лет, являюсь руководителем направления обучения Бэкенд-разработке в онлайн-школе и даже развиваю свои собственные курсы по программированию на Python. Еще веду корпоративные обучения, работаю в универе и провожу консультации о построении пути в I...

[recovery mode] Где изучать Python в 2024. Бесплатные курсы, книги и ресурсы Python является одним из самых популярных языков программирования в мире. Он широко используется в различных сферах, таких как веб-разработка, научные исследования, анализ данных, машинное обучение и многое другое. Изучение Python позволит вам получить полезные навыки и откр...

Как в России в XIX веке компьютер изобрели Компьютер придумал русский учёный Семён Корсаков в первой половине XIX века. Что? Да! И теоретическое обоснование к изобретению искусственного интеллекта впервые подвёл тоже он. «Как микроскоп и телескоп усилили наши чувства, так и интеллектуальные машины могут усиливать наш...

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

9 советов, которые облегчат путь до мидла Для всех джунов в разработке и тех, кто хочет ими стать.Так бывает в жизни, что периодически каждый оказывается в роли джуна. Это не только про начало карьерного пути, но и про новые навыки: изучить новую технологию, язык программирования. А вдруг кто-нибудь из вас захочет р...

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

[Перевод] Большая шпаргалка по Rust. 1/2 Hello world! Представляю вашему вниманию первую часть большой шпаргалки по Rust. Обратите внимание: шпаргалка рассчитана на людей, которые хорошо знают любой современный язык программирования, а не на тех, кто только начинает кодить ;) Также настоятельно рекомендуется хот...

Чем меня удивила умная камера в приложении Яндекс на Android В 2021 году компания Яндекс представила умную камеру Алисы. Это мобильное приложение, которое прокачивает камеру смартфона, превращая ее в универсальный инструмент для поиска информации и решения повседневных задач. С момента выхода программа с искусственным интеллектом зам...

Учителя английского забеспокоились: ChatGPT берет верх над изучением языков Студенты отказываются от сочинений в пользу контента, созданного искусственным интеллектом, а преподаватели этим обеспокоены, пишет HackerNoon. Помощь в освоении языка от ChatGPT революционизирует коррекцию грамматики, письмо и изучение словарного запаса. Грозит ли учителям ...

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

Итерируемся по enum'ам в C++ В этой статье я хочу поделиться простым и очевидным трюком в C++, о котором, не смотря на его простоту и очевидность, как оказалось, не все знают.Предположим, у вас есть enum class, и вы хотите пройтись по его элементам, то есть вызвать какую-то функцию для каждого из значен...

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

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

[Перевод] Вычислительные выражения: Введение Скотт Влащин — безусловный гуру в мире F#, написавший введение в язык, которое рекомендуют новичкам вместо официального руководства. Группа энтузиастов давно (и с переменным успехом) пытается перевести руководство Скотта на русский. Я завершаю перевод цикла, посвящённого одн...

[Перевод] Python без типов: таким он когда-то был О типизации в Python сказано уже очень много. Если вам выпало сомнительное удовольствие поработать со мной, то вы, вероятно, в курсе, насколько скептически я отношусь к типизации в Python. Причины тому – сложность синтаксиса, mypy еле ползает, реализация языка в принципе пер...

[Перевод] Angular на стероидах: наращиваем производительность при помощи WebAssembly В этом посте продемонстрировано, как с лёгкостью использовать WebAssembly внутри приложения, написанного на Angular. Иногда в приложении на Angular требуется выполнить задачу, которая в JavaScript завершается не слишком быстро. Конечно, можно переписать алгоритм на другом яз...

Исследование рыночной корзины на основе данных розничной торговли в Стамбуле Всем привет! Вот и я добралась до Хабра :).Хочу поделиться своей проектной работой, которую написала в рамках курса OTUS "Machine Learning.Basic". Итак, нас ждет путешествие в увлекательный мир шопинга в Стамбуле! Целью работы было получить представление о тенденциях и модел...

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

Пишем gRPC сервис на Go — сервис авторизации В этой статье мы научимся писать полноценный gRPC сервис на Go на примере сервера авторизации с полноценной архитектурой, готовой к продакшену. Мы напишем как серверную часть, так и клиентскую. В качестве клиента мы возьмём мой сервис — URL Shortener, о котором у меня также...

«Клиентов нужно не искать, а создавать»: погружение в Telegram API через TDLib Сперва я рассказывал простые вещи о Telegram Bot API и делал интересных ботов — виртуальную подругу и друга для заказа шавермы. Затем коснулся тестовых серверов и юзерботов. И наконец, пришла пора заглянуть глубже — узнать, как сделать свой клиент для Telegram. Что такое TL...

Высокоскоростной SPI to Ethernet конвертер, при чем здесь DMA? Чисто техническое, но не очень глубокое описание реализованной задачи с самыми простыми расчетами. Надеюсь, будет полезно соответствующим техническим специалистам или для тех, кто хочет понимать что-то про объем знаний необходимых для использования DMA над некоторым устройст...

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

[Перевод] Исследование режима Copy-on-Write в pandas. Часть 1 Библиотека pandas 2.0 вышла в начале апреля, в ней появилось много улучшений нового режима Copy‑on‑Write (CoW, копирование при записи). Ожидается, что в pandas 3.0 режим CoW будет использоваться по умолчанию. Сейчас полный переход на к...

«ReadStreakBot» — как я начал «кодить» с чатгпт, не умея программировать Давно не заходил на хабр, а тут решил зайти и с удивлением обнаружил у себя аж целых 60 подписчиков. Спасибо вам большое, что вы подписались, теперь мне даже как-то неловко, что я так долго ничего не писал про Обсидиан. Видимо теперь придётся всё же написать (мой сетап за эт...

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

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

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

Развлекаемся с Джулией Считается, что Julia – это нишевый язык созданный для лабораторий, научных симуляций и HPC. Хотя на самом деле благородя свой экспрессивности и динамизму Julia можно и нужно использовать для автоматизации и скриптинга. Давайте на паре простых примеров посмотрим как Julia мож...

Что в промптах работает, а что нет Удивительно, но при всём хайпе, творящемся сейчас вокруг языковых моделей (LLM), мало кто понимает, как они работают. И ещё меньше понимают, как работать с ними. Появилась даже профессия промпт-инженера, человека, способного составить ТЗ для модели. Например, очень важно...

Философия и физика времени. Презентизм и этернализм. Пространство-время в СТО и ОТО Время (time) – наиболее часто употребляемое слово в английском языке и третье по употребляемости в русском. Оно есть и в любом другом языке, потому что синхронизация действий во времени так же важна, как и их координация пространстве. Не зная точного времени, невозможно упор...

Путь от преподавателя английского к AI Product Manager Всем привет, меня зовут Оля Шерстюк, раньше я была преподавателем английского языка, но начиная с 2023 года решила поменять свою деятельность и перейти в IT, сейчас я учусь в магистратуре AI Talent Hub. Хочу поделиться с вами своей историей.В 2023 я зачеркивала дни в календа...

[Перевод] Введение в поддержку JavaScript в MySQL MySQL продолжает наращивать инновации и теперь включает в себя богатые возможности процедурного программирования внутри базы данных. Отныне разработчики могут писать хранимые программы на языке JavaScript (функции и процедуры) в сервере баз данных MySQL. Хранимые программы б...

Шаровары: тогда и сейчас Wolfenstein 3D, одна из самых популярных шароварных игр начала 90-х В 90-е годы популярной моделью продажи программ была shareware (как их тогда называли, «шаровары»). Особенной популярностью она пользовалась у независимых разработчиков. Благодаря интернету они могли распро...

[Перевод] NumPy: оттачивайте навыки Data Science на практике В этой статье мы рассмотрим ряд различных упражнений, используя библиотеку NumPy (и сравним с тем, как мы бы реализовали их без неё). В самом конце статьи я приведу ряд упражнений.t.me/ai_machinelearning_big_data -  моем телеграм канале я публикую актуальные проекты ку...

Самодельные инструменты для тестирования продукта, или DIY в разработке Все мы привыкли к общепринятым инструментам для тестирования. Думаю, список есть у каждого и он постоянно пополняется. Лично мой: Postman, IntelliJ IDEA и DataGrip от JetBrains, ShareX для скриншотов и его величество DevTools. В этой статье я хотел бы отдать дань само...

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

Как я решал Advent of Typescript, и что я понял Возможно вы слышали про Advent of Code — ежегодное соревнование по решению задач на рождественскую тему. Начиная с 1 декабря, вплоть католического рождества, каждый день выкладывается новая задача. С каждым днем сложность задач возрастает.В дека...

Аутентификация go с использованием токенов PASETO В этой статье мы напишем небольшой сервис аутентификации на go с использованием токенов PASETO. Этот токен можно использовать вместо JWT для процесса аутентификации. Если хотите узнать о PASETO подробнее, то можете почитать статьи на Хабре или гитхабе. Читать далее

[Перевод] Большая шпаргалка по Rust. 2/2 Hello world! Представляю вашему вниманию вторую часть большой шпаргалки по Rust. Первая часть. Обратите внимание: шпаргалка рассчитана на людей, которые хорошо знают любой современный язык программирования, а не на тех, кто только начинает кодить. Также настоятельно реком...

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

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

Apple ищет сотрудника со знанием русского языка и культуры Компания Apple опубликовала вакансию инженера-лингвиста для работы над голосовым ассистентом Siri.

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

Xbox Series S официально сделали тостером Много лет назад, когда PlayStation 3 только-только добралась до магазинов, злые языки обзывали творение Sony «хлебницей». Как оказалось, это был отнюдь не последний раз, когда судьбу какой-то консоли связали с хлебобулочными изделиями

Википедии на искусственных языках Разделы википедии есть на 355 языках (плюс несколько десятков в инкубаторе).Есть крупные разделы с более чем миллионом статей, их чуть менее 20 (на английском, немецком, русском и так далее; парадоксальным образом на втором месте - википедия на себуанском, одном из языков фи...

Shiva — Open Source проект на Rust для парсинга и генерации документов любого типа Идея проекта возникла у меня во время работы над проектом поисковика документов. Существует такая библиотека, как Apache Tika, написанная на Java, которая умеет парсить документы различных типов. Чтобы мой поисковик работал, он должен уметь извлекать текст из документов разн...

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

[Перевод] Это слишком опасно для C++ Некоторые паттерны стало возможно использовать на практике только благодаря безопасности Rust по памяти, а на C++ они слишком опасны. В статье приведён один такой пример.Работая над внутренней библиотекой, написанной на Rust, я создал тип ошибок для парсера, у которых должна...

«Пора ли гнать на мороз Computer Vision — scientist'ов ?» (Fondation Models и вокруг) Прошлый год в Computer Vision запомнился тем, что появилось множество больших претрейненных сетей (Fondation Models). Самая известная - GPT4v (ChatGPT с обработкой изображений).В статье я попробую простым языком объяснить что это такое (для тех кто пропустил), как меняет инд...

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

Ты — это то, как ты пишешь. Как расти через качество кода Каждый код уникален. Несмотря на работу линтеров, спустя несколько лет вы с уверенностью сможете определить, что писали вы, а что — другой разработчик. Даже если не помните, что это была за задача. А ещё, код может рассказать об авторе едва ли не больше, чем разговор с ним. ...

Как подключить и настроить внешнюю клавиатуру на iPad Подключить клавиатуру к iPad можно уже достаточно давно. Причем вы не ограничены лишь фирменными аксессуарами от Apple. Никто не запрещает вам приобрести любую внешнюю клавиатуру с Bluetooth, соединить ее с iPad и наслаждаться удобным набором текста. Какое-то время я даже и...

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

Состоялся релиз мобильной игры Zero.9 с 500 бесплатными гача-крутками Экшен-RPG Zero.9 появилась в App Store и Google Play Южной Кореи. Релиз состоялся 14 марта на iOS и Android. Из языков доступен только корейский, но в целом он не мешает, так как сюжетные диалоги хоть и есть, но они короткие, а интерфейс и геймплей понятны и без знания языка...

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

Apple ищет специалиста в команду Siri со знанием русского языка На официальном сайте Apple появилась новая вакансия. Купертиновцы ищут инженера-лингвиста со знанием русского языка на уровне носителя. Новый сотрудник должен стать частью команды, которая работает с фирменным голосовым ассистентом.Читать дальше... ProstoMAC.com.| Постоянна...

Постфиксный калькулятор на Haskell Можно ли внедрить в Haskell постфиксный калькулятор?begin push 1 push 2 add endbegin push 1 push 2 push 3 add mul endНа первый взгляд такой код на Haskell не может работать. Функция begin должна иметь произвольное количество аргументов, а Haskell является языком со статическ...

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

Как не свихнуться с кучей модулей в проекте На данный момент я работаю с весьма ветвистыми проектами (один из них состоит из почти 120 градл модулей) и уже достаточно давно разные факторы подталкивали меня написать статью о том, как я организую свои проекты: стажеры и коллеги, чтение различных статей и книг. Понятное ...

LYWSD03MMC: ZigBee сеть на термометрах NB: Это скорее шуточная статья, не воспринимайте написанное всерьёз.В предыдущей статье я описал как можно из Bluetooth датчика сделать ZigBee и добавить его в сеть. Был получен ряд замечаний, часть из которых была исправлена. Сейчас батарейка работает уже гораздо экономичне...

Разбираемся с Bluetooth Low Energy на примере превращения USB-клавиатуры в беспроводную Меня давно интересовало, как работают беспроводные клавиатуры, но как-то не сильно вдавался в подробности, пока не возникла идея превратить свою механическую клавиатуру в беспроводную. Честно говоря, не думал, что узнаю так много нового и интересного. Вероятно, у многих е...

Хабргорода У меня возникла идея сделать список упоминаний названий городов в статьях Хабра за 2023 год и карту по которой можно найти статьи. Когда можно найти статьи, где упомянается конкретный город. С первого взгляда задачка простая, но это как всегда дьявол кроется в деталях! Для э...

Как использовать макросы для систематизации документов «как в Confluence»? Привет! Приятно ведь читать хорошо оформленные статьи на уютном хабре? В которых часть текста спрятана под катом, есть подписи к картинкам, красивые и понятные таблицы и все остальные плюшки? Я думаю очень приятно. Поэтому предлагаю рассмотреть немного полезных советов, о то...

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи. Часть 4 Хабр, я снова пришёл к вам с практическими советами про доступность вместе с Ильёй. Мы показываем, как HTML и CSS могут улучшить или ухудшить её. Напоминаю, что Илья мой незрячий знакомый, который помогает мне найти наши косяки в вёрстке. Мы уже написали первую, вторую и тр...

Top Heroes это необычная RPG с намёками на Зельду Ранняя версия мобильной игры Top Heroes доступна на Android уже столько, что её успели скачать 1 млн раз. Хотя точной даты нет, на iOS проект появился только 31 января. Отмечу, что в App Store и Google Play РФ и многих других стран Top Heroes нет, так что надо качать или в о...

Нормализация событий информационной безопасности и как ее можно выполнять с помощью языка eXtraction and Processing Всем привет! На связи Михаил Максимов, я — ведущий эксперт департамента развития технологий в R&D Positive Technologies. За плечами у меня многолетний опыт по развитию экспертизы в нашей системе MaxPatrol SIEM и процессов вокруг нее. И сегодня я хочу поговорить про один ...

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

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

[Перевод] Чем хорош Rust для продакшена? За последние годы интерес к Rust значительно вырос. Отчасти этому способствовало то, что ведущие участники технологической индустрии, такие как Microsoft, Google и Amazon рассказали о своём опыте использования этого языка в реализации критических систем. При этом немалое в...

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

Мой вам подарок к новому году или как наконец запустил то, что надо было давно запустить… Немножко истории Начну с истории вопроса. Очень давно, я написал Fresh IDE – навороченнoe IDE для программирования на ассемблере, а точнее на FlatAssembler. Fresh IDE долгие годы меня полностью устраивал, поэтому я с перерывами выпустил 2 главные версии и начал просто его...

Виртуальная клавиатура на Python+OpenCV В данной статье разберемся, как написать виртуальную клавиатуру, используя Python+Opencv.Идея заключается в создании виртуальной клавиатуры, выводе на экран и возможности ее использования. Подразумевается, что клавиатура будет работать с текстовыми редакторами. Для того, что...

Вышел Firebird 5.0 11 января 2024 года, выпущен Firebird 5.0 — восьмой основной выпуск СУБД Firebird, разработка которого началась в мае 2021 года. В Firebird 5.0 команда разработчиков сосредоточила свои усилия на повышении производительности СУБД: параллельное выполнение backup, restore, swee...

Как сделать тесты на Espresso более читабельными и стабильными Если вы писали тесты на Espresso — тестовом фреймворке от Google с открытым исходным кодом, — то вы знаете, что они не всегда стабильны и легко читаемы. Меня зовут Ксения Никитина, я являюсь Android-разработчиком в мобильной команде «Лаборатории Касперского». В этой статье я...

Spring Security 6. Авторизация и аутентификация на основе Базы данных Привет. Меня зовут Кирилл, я Java-разработчик. Несмотря на то, что уже год я работаю в компании, по прежнему стараюсь находить время для собственных проектов, с помощью которых осваиваю интересующие меня технологии и подходы. Именно на таком проекте я решил разобраться, как ...

Запускаем игры под Wine c поддержкой Native Wayland Иллюстрации к статье подготовлены нейросетью freepik.com. Многие люди на планете играют в видео игры. Игры помогают улучшить когнитивные способности, провести приятно свободное время. Данная статья посвящена тому, как запустить Windows игры под Linux в Wayland. Эта статья м...

Элементарный английский для Elementary — грамматика и не только Как определить, добились ли вы уровня Elementary? «Элементарный» уровень на самом деле подразумевает, что у вас хватило усердия, чтобы пройти в неспешном темпе как минимум 2 учебника в 200-300 страниц и потратить минимум год, непрерывно изучая английский язык, тратя три-четы...

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

Дальше о веб-комиксах на русском языке: «Серые будни магов», Тока Paint и «Космоножка» В первой и второй частях мы обсудили первые популярные веб-комиксы на русском языке — и упомянули, что ныне их гораздо больше. Естественно, среди современных веб-комиксов есть наиболее популярные и мемные — о которых мы теперь и поговорим. А также о не совсем комиксах — но ...

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

Реализация чата на Flutter при помощи вебсокетов Всем привет, на связи PurplePlane! В этой статья мы хотели бы рассмотреть реализацию простого чата на языке Dart, используя пртокол websocket.Рассмотрим пример использования вебсокета при реализации простого чата с помощью библиотеки web_socket_channel. Читать далее

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

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

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

Продакт, техлид и People&Process Lead. Тройка, которая рулит продуктом Вообще эта статья была написана еще в 2020 году во время активной фазы пандемии, когда мы еще не знали что нас ждет. Но мы понимали что масштабирование продукта, разработки, нагрузки уже вот начинается сейчас и процессы должны были все это пережить. Они должны были перестать...

«Разгоняем» HashSet, HashMap и циклы на примере Dart Если вы занимались профилированием своего приложения, то, глядя на CPU Flame Chart, вероятно, испытывали смесь досады и азарта, глядя на особо «жирный» метод. Досады – что ваша программа всё ещё не идеальна по скорости. Азарт – от того, что вы можете докопаться до причины пр...

Иероглифы — хаос или система? Разбираемся из чего они состоят, как работают и в чём их сила Праздничные деликатесы подходят к концу — самое время дать пищу мозгу и познакомиться с одной из древнейших и самой необычной и сложной системой письменности современности — китайским иероглифическим письмом. Я постараюсь простым языком с примерами и иллюстрациями описать к...

Бруклинский мост. Зачем генерируем C++ на Kotlin Нелегко на рынке найти senior разработчика для конкретной сферы. Каждый из них имеет уникальные знания в своем языке и фреймворке, будь это Java, Kotlin, С++, JS или Swift. Каждый накапливал свои знания годами. Но найти senior разработчика, который одинаково хорош и C++ и в ...

«Дюна» – от Герберта до Вильнёва Всё началось с экологического эксперимента. В конце 1950-х Министерство сельского хозяйства США искало способы остановить распространение песчаных дюн в штате Орегон. Для этого необходимо было отыскать растение, способное выжить на песках и постепенно скреплять почву, дела...

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

[Перевод] Выделение регионов памяти в C++: советы и приёмы Эта статья обсуждалась на Hacker News.В течение минувшего года я шлифовал мой подход к выделению регионов. Практика показывает, что это эффективный, просто и быстрый подход; обычно его использовать в качестве средства для сборки мусора без издержек. В зависимости о...

Хотите присоединить Windows к домену ALD Pro (FreeIPA)? Спросите меня как Конечная цель проектов импортозамещения в ИТ — полный отказ от операционной системы Windows. Но, как говорится, гладко было на бумаге, да забыли про овраги. Может так оказаться, что быстро заменить какие-то клиентские корпоративные приложения, написанные под эту операционну...

Как я использовала идею CYBERPUNK 2077 в договорах с клиентами Договоры необязательно писать только "юридическим" языком. Можно упрощать, чтобы было понятно, о чём там речь, неюристам. Как же я обрадовалась, когда увидела оферту CYBERPUNK 2077. Там буквально на языке простого пользователя игры объясняли сложные вещи. Оказывается, так мо...

Рука из Ирулеги — загадочная находка археологов с надписями на древнем языке «Рука из Ирулеги» является одной из самых загадочных артефактов, найденных учеными В 2017 году специалисты по восстановлению старинных зданий занимались ремонтом средневекового замка Ирулеги, который располагается на территории Испании. Прямо у подножия дворца они нашли след...

Релиз без ошибок. Невозможное возможно? Привет! Меня зовут Сергей, я технический эксперт в компании Bercut. Когда-то увлекался Delphi и J2ME, издал несколько книг на эти темы, а сейчас создаю высоконагруженные приложения для баз данных.Первой СУБД, с которой я познакомился — случилось это в далеком 2002 году, ...

Вглубь std::unordered_map: магические числа Все любители кодокопания заканчивают либо хорошо, либо плохо. Мне повезло. Поэтому я решила написать свою первую статью на хабре. Эта статья о том, каким странным бывает легаси - и куда же всё-таки копать, чтобы понять, что происходит. stdlibc++ опровергает даже стандартные ...

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

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

Шпаргалки для сервера CS:GO Приветствую читателей данной статьи. Сразу хочу отметить, что статья не несет никакой профессиональной информации, но нацелена на аудиторию, которая имеет представление о том, что такое терминал и хостинг, и с чем это едят. Автор лишь делится своим опытом и оставляет это зде...

Всё что вы хотели знать про ACL в Active Directory В данной статье я постарался максимально полно и глубоко рассказать про построение и внутреннее использование ACL (Access Control List) внутри Active Directory. В этой статье нет рассказов про "null DACL" и "empty DACL" и тому подобного. Если читатель хочет изучить все более...

Quick & worldwide: как мы ускорили DocLoc-релизы и апдейты для 34 локализаций Наши потребительские мобильные продукты уникальны тем, что распространяются в более чем 100 странах на 34 языках — возможно, рекордное значение в российской IT-индустрии. В основном лишь считанные продукты отдельных компаний переводятся на десяток-другой языков; у нас же мас...

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

К чему с годами приводит работа с Dependency Injection и Service Locator Глубину осознания библиотеки можно проверить, написав её самостоятельно. Возможно, новорожденное решение будет ограниченным и не найдёт свою аудиторию, но оно навеки принадлежит автору и подтверждает реальное понимание работы технологии. Так произошло и со мной. Я решил...

Umka обрастает мясом: улучшения в языке, менеджер пакетов, применение в играх Только что вышла новая версия 1.3 моего встраиваемого скриптового языка Umka со статической типизацией. С момента выпуска версии 1.0 язык пополнился замыканиями, инструкцией выбора switch по фактическому типу интерфейса, тернарным условным оператором, более удобным API для в...

Мифы об изучении иностранных языков Когда-то эти факты поспособствовали расширению лично моих представлений:Одна московская знакомая росла в Нью-Йорке в 70-х годах: её отец был советским специалистом в ООН. Смотрят как-то юмористическую передачу на американском TV: она, подросток, ухохатывается — отец ничего ...

Названы самые просматриваемые статьи в «Википедии» на английском языке в 2023 году В топ-20 попали «Оппенгеймер», «Барби», The Last of Us, ChatGPT и много спорта.

WebAssembly: короткий обзор ассемблера для фронтенда В последнее время фронтенд все больше и больше обрастает новыми технологиями, одна из них — WebAssembly. На ней можно написать полноценное web‑приложение и почти все на что способна ваша фантазия. В статье мы рассмотрим, что такое WebA...

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

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

Qucs-S: руководство по видам моделирования, часть 1 Qucs-S является программой с открытым исходным кодом для моделирования электронных схем. Qucs-S кроссплатформенный (поддерживаются Linux и Windows) и написан на С++ с использованием набора библиотек Qt. О данной программе рассказывают мои предыдущие статьи. Для работы Qucs-S...

Почему бы и не поделиться опытом? (ФОТО) Хотел написать комментарий (к одной из статей), но в процессе понял, что он может заметно вырасти + оказаться самостоятельной и надеюсь полезной для кого-то статьёй. Поехали! Читать дальше →

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

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

Machine Learning инженер: что/где/как изучать, чтобы въехать Привет, хаброчеловек!В этой статье мы обсудим путь среднестатистического обывателя в Machine Learning, а именно — как стать ML-инженером. Поговорим о специфике области, какие требуются знания и скиллы, что нужно делать и с чего начать. Читать далее

ИИ в Google Maps будет рекомендовать новые места Google внедряет искусственный интеллект (ИИ) в свои карты. На данный момент, функция доступна только для определенных районов и участников программы Local Guides, она представляет интересное применение технологии. Основная идея заключается в том, чтобы использовать естествен...

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

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

«Алиса» Яндекса выучила казахский язык Команда Яндекса объявила о запуске новой полезной функции для своего фирменного голосового помощника. «Алиса» научилась понимать казахский и говорить на нём.  Пообщаться с виртуальным ассистентом Яндекса на национальном языке Казахстана уже можно в моб...

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

Вспомним лучшее. Мы на Хабре 10 лет Ровно десять лет назад, 2 апреля 2014 года, мы завели техноблог на Хабре. За это время мы опубликовали 500 статей, 100 новостей, дважды стали спонсорами «Технотекста» и получили награду «Лучший блог». Многие из тех, кто написал первые тексты, работают с н...

Искусственный интеллект примет участие в Тотальном диктанте Пресс-служба Новосибирского государственного университета (НГУ) сообщила, что впервые искусственный интеллект будет участвовать в «Тотальном диктанте». Новая система, разработанная ученым НГУ, примет участие в этой акции, где оценят ее знание русского языка и способность пра...

LLaMA 2, RWKV, Santacoder и другие LLM на iOS Однажды я решил изучить язык Swift и разработать свое первое приложение для iOS. Для этого я решил создать реальный проект, который заключался в оптимизации нашумевшего LLaMA.cpp под iOS. Я поставил перед собой задачу обеспечить запуск 3B и 7B моделей на&...

Это один из лучших подходов к изучению английского, что я видел за последние годы — коллокации Значение слова – это его использование в языкеЛюдвиг Витгенштейн (сурс) Что это вообще за магия такая? Коллокация – это просто пара или группа слов, которые часто возникают вместе. Такие комбинации звучат естественно для носителей языка, однако, тем, у кого язык не родн...

Форматы изображений в вебе (2024) Сегодня трудно найти веб сайт, на котором нету хотя бы одного изображения, может быть у вас есть такой пример? На странице в интернете можно сразу увидеть много разных изображений: фото пользователя в личном кабинете, фото товара на маркетплейсе, иконка на вкладке браузера, ...

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

Обзор языка Erlang и его синтаксиса Привет, Хабр! История Erlang 80-х годах прошлого века в стенах шведской компании Ericsson. Он был разработан первоначально для нужд телекоммуникаций, Erlang задумывался как инструмент для создания распределенных, отказоустойчивых систем с возможностью быстрого обновления код...

Погружаемся в PEB. Подмена аргументов командной строки в запущенных и suspended процессах Про спуфинг аргументов в PEB было рассказано многое, но, если честно, ни разу не попадалась статья про изменения аргументов прямо в рантайме.Немного разобрались, как добраться до PEB руками в IDA Pro и написали простейшее приложение для манипуляции аргументами в PEB. Читать ...

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

[Перевод] Starting Electronics: руководство по веб-серверам на Arduino. Часть 17. Завершающий урок и итоги От переводчика. Итак, дорогие друзья, нам с вами всё-таки удалось совершить маленькое чудо — перевести на русский язык и сделать доступным для широкого круга русскоговорящих любителей электроники, микроконтроллеров и IT технологий, можно сказать, культовый курс по построен...

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

В версии ИИ от Samsung появится поддержка русского языка Теперь телефонные разговоры будут переведены на великий и могучий в режиме реального времени

Чему менеджеры по продукту могут научиться у Симпсонов Много статей написано о том как тренировать продуктовую насмотренность.Обычно они включают следующие пункты:• обучение,• расширение сети контактов для обмена опытом и идеями,• мониторинг трендов, конкурентов и пр.• практика, не только по рабочим кейсам, в идеале иметь ка...

ИИ-помощник TikTok стал доступен в Adobe Express Adobe и TikTok объявили о том, что их совместный продукт — Creative Assistant — теперь доступен прямо в Adobe Express. Это сотрудничество направлено на помощь бизнесам и творцам в более эффективном создании и маркетинге контента. Creative Assistant уже доступен на английском...

Что стоит почитать по Python в 2024 году? Пять хороших книг Литературы никогда не бывает много — ни художественной, ни технической. Это касается и книг по языкам программирования, включая Python. Разработчикам, как начинающим, так и опытным, нужны надёжные руководства для того, чтобы повышать свой профессиональный уровень. В сегодняш...

Генеративный ИИ-поиск Google доступен теперь в 120 странах И на четырех дополнительных языках

[Перевод] Механика Async Await В этом посте исследована механика async await на языке Elixir. Принятая в Elixir модель конкурентности отлично подходит в качестве платформы для реализации такой механики. Тем не менее, не расценивайте этот пост как руководство для разработки реальных приложений на Elixir. ...

Забудьте о Touch ID: по данным некоторых источников, ... Ходят слухи, что iPhone SE 4 будет использовать язык дизайна iPhone 14, что позволит ему стать первой "бюджетной" версией iPhone, которая будет использовать Face ID вместо Touch ID.

Забудьте о Touch ID: по данным некоторых источников, ... Ходят слухи, что iPhone SE 4 будет использовать язык дизайна iPhone 14, что позволит ему стать первой "бюджетной" версией iPhone, которая будет использовать Face ID вместо Touch ID.

Протоколы семейства TCP/IP. Теория и практика В сети можно найти огромное количество материала о том, как функционируют сети на базе стека протоколов TCP/IP, а также как писать компьютерные программы с сетевыми возможностями. При рассмотрении компьютерных сетей часто углубляются в описание физических основ и структур ...

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

Своё кастомное межсервисное взаимодействие с блекджеком и gRPC Привет, Хабр! Меня зовут Ильяс. Мы с командой делаем собственный Service Mesh в Ozon Tech, и в этой статье я расскажу, как можно за вечер реализовать свое супер кастомное межсервисное взаимодействие. К концу статьи мы с вами напишем современные алгоритмы балансировки, настро...

[recovery mode] Яндексу здесь не место… Здравствуйте, уважаемые читатели!Тема сегодняшней статьи будет несколько нестандартная, однако, безусловно связанная с информационными технологиями, нейросетями и технологическим гигантом нашего времени – компанией Яндекс.Сразу хочу отметить – я отлично осознаю факт того, чт...

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

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

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

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

«Трудности перевода»: как ChatGPT справился с задачей адаптации сложных текстов Привет, Хабр! Меня зовут Сергей Кулабухов, я занимаюсь внедрением ИИ в бизнес-процессы компании Fix Price. С появлением моделей обработки естественного языка (natural language processing) изменился и подход к реализации подобных задач. Теперь мы не программируем и не обучаем...

Как мы используем NLP в банке Изначально у нас была витрина, в которой лежали данные о платежах пользователей банка. Это данные оплаты различных штрафов, пошлин, налогов и так далее. Такая информация потенциально может быть полезна для разных банковских сервисов. Например, если человек часто платит штр...

Памятка: 15 фраз для стендапов на английском языке Работая с зарубежными коллегами, вам наверняка придётся участвовать в стендапах — коротких ежедневных встречах, на которых IT-специалисты рассказывают о выполненных задачах, проблемах и планах на сегодня. Делать это на английском сложнее, чем на родном языке, но, к счастью, ...

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

Тест-дизайн на практике: комбинируем разные техники тестирования, на примере проверки систем оплаты Привет, Хабр! Меня зовут Сергей, я тестировщик в “Петрович-Тех”. В этой статье хочу поговорить о комбинировании различных техник тестирования и поделиться опытом тест-дизайна для проверки системы оплаты.На всем своем профессиональном пути тестировщика я так или иначе всегда ...

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

ИИ будет переводить звонки между смартфонами Samsung и остальными Общение на разных языках станет доступно обладателям аппаратов Samsung Galaxy S24

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

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

Войны битов В своей прошлой публикации я вскользь упомянул явление так называемых «консольных войн» — битву маркетинговых кампаний конкурирующих видеоигровых платформ прошлого. Это не такое уж малоизвестное явление, о нём написаны книги, сняты фильмы, ему посвящены Youtube-каналы. Сег...

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

Специалисты сферы маркетинга, рекламы и PR знают русский язык на «двойку» Коммуникационное агентство PR Perfect провело «Большой диктант для коммуникаторов», цель которого оценить уровень грамотности специалистов из сферы маркетинга, рекламы и PR. Средний балл всех написавших составил 2,8. Диктант написали более 500 PR-менедж...

Gemini теперь доступен на телефонах Android в большем количестве стран и языков Вначале он был доступен только для пользователей из США на английском языке, но позже была расширена его доступность для Android-смартфонов в Азии и Европе.

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

Как заказчик пришел к нам за новой фичей, а мы его отговорили Привет! Я Вика Левена, директор по аналитике в AGIMA. В этом году мы плотно поработали с одним заказчиком. Настолько плотно, что он пришел к нам за одной услугой, а получил совсем другую. Но остался доволен.Ситуация эта не такая уж и обыкновенная, поэтому я решила написать о...

Как создавалась Call of Duty 2 Кто не знает серию Call of Duty? Конечно ее знает каждый, если не просто игрок, то хотя бы фанат шутеров. Поистине культовая, всемирно известная серия, взявшая свои истоки с игр про Вторую Мировую Войну. Многие части были созданы под эгидой Infinity Ward. Помимо игр компан...

Синкерим, хешайдим, терминируем: 6 утилит, чтобы ускорить ваши локализации Наша команда Mobile Doc&Loc «Лаборатории Касперского» занимается подготовкой документации и локализации B2C-продуктов компании для мобильных устройств. Основная сложность (и одновременно фишка) нашей работы заключается в том, что необходимо регулярно подготавливать перев...

LLM'ы в преобразовании запроса на естественном языке в SQL (text2sql) Привет, Хабр! На связи участница профессионального сообщества NTA Марина Коробова.Данные занимают центральное место в информационном обществе. Именно информация является основой для принятия решений, развития бизнеса и научных исследований. Многие организации инвестируют огр...

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

Большой гайд по планированию. Как впихнуть в сутки 40 часов и оставить время на личную жизнь? Всем привет, на связи команда Skill Vortex!Пару недель назад один знакомый нашего коллектива обратился с вопросом про планирование и тайм менеджмент. Перед ним стояла задача – каким-то чудом совместить стажировку на полную ставку, учебу в ВУЗе, изучение иностранного языка и ...

[Перевод] Как устроено автоматическое удаление мёртвого кода в Meta* В фреймворке Systematic Code and Asset Removal Framework (SCARF) компании Meta* есть подсистема выявления и удаления мёртвого кода. SCARF использует статический и динамический анализ программ для выявления кода, мёртвого с точки зрения как бизнеса, так и языков программиро...

Как написать понятные требования к ПО Я системный аналитик и хочу поделиться своим опытом в написании требований.Когда я пришла на проект, в качестве единственного аналитика, а четких требований что же должно быть в постановке не было, возник вопрос: как мне их оформлять? Этот вопрос я декомпозировала на следующ...

Эпидемия многоступенчатых собеседований Эта статья написана по мотивам НЕМИТАПА, проведенного компанией Авито. Когда я увидел ЭТО, сказать, что был шокирован – ничего не сказать. Сначала Яндекс, потом Тинькофф, ну и теперь вот Авито (и это только наши, отечественные) внедряет у себя шестиступенчатое собеседование....

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

Нейросети, виртуальная реальность и Бог-солипсист Несколько недель тому назад компания OpenAI анонсировала скорый выход нейросети SORA, способной создавать связный осмысленный видеоряд из простого текстового описания того, что вы хотите увидеть. То, как работает эта нейросеть, можно узнать из великолепной статьи "Настоящее ...

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

Google представила Gemini — «убийцу» ChatGPT Компания Google официально объявила о запуске собственной системы искусственного интеллекта Gemini. По заявлению генерального директора Google Сундара Пичаи (Sundar Pichai), который провёл презентацию новейшей разработки, Gemini 1.0 на данный момент является самой мощно...

Бизнес-махина из 2007 года: каким был топовый бизнес-коммуникатор 2007 года — HTC X7500? Вот потихоньку и приближается новый год! Нулевые закончились почти 14 лет назад, но многие девайсы тех лет всё ещё продолжают жить и оседают в руках коллекционеров, или просто остаются в руках владельцев как запасные или даже основные телефоны! Однако сегодняшний девайс — ...

Сервер Юк. Заставляем Yandex Cloud Functions работать на F# В этой статье я расскажу, как засунуть F# в Yandex Cloud Functions. Навыка работы с Serverless у меня нет, так что это будет не компиляция моего опыта, а отчет о вполне успешном эксперименте.Судя по всему, разработчики Yandex Cloud Functions считают, что dotnet = C#. Поэтому...

Подборка: навыки и инструменты начинающего Go-разработчика Привет! Меня зовут Александр Тетеркин, я Go-разработчик в VK. Раньше я писал на Python, потом перешел на Go — пишу на этом языке уже три года, а также являюсь наставником на курсе «Go-разработчик с нуля».Я знаю, что новички в любой сфере задаются вопросами о том, с чего нача...

Релиз Final Fantasy VII Rebirth: эксклюзив для PS5 и восторги критиков До релиза наконец-то добрался очередной ремейк японской RPG Final Fantasy VII, которая вышла в ещё в далёком 1997 году — Final Fantasy VII Rebirth. Новинка, как и многие игры Square Enix, пока что является эксклюзивом для платформы PlayStation 5, но в будущем должна появитьс...

Модульность в JavaScript: CommonJS, AMD, ES Modules Привет, Хабр!Начало истории в модульности в JavaScript положил хаос: глобальные переменные, конфликты имен и сложности с зависимостями. Со временем сообщество предложило несколько подходов для организации модулей, начиная от CommonJS, которое легло в основу Node.js, до AMD, ...

Samsung Galaxy AI в апреле начал «говорить» по-русски Компания Samsung сообщила, что функции искусственного интеллекта Galaxy AI теперь доступны на новых языках и диалектах.

OpenConnect: недетектируемый VPN, который вам понравится Я уже написал здесь много статей на тему прокси-протоколов и прокси-клиентов, которые очень сложно детектировать и заблокировать, и которые используют пользователи в Китае, Иране, Ираке, Туркменистане, и теперь вот в России (мы здесь в отличной компании, правда?). Но довольн...

5 переводчиков приложений для Android, которые выручат вас, если программа не поддерживает русский язык Несмотря на то, что русификация приложений — плевое дело для разработчиков, далеко не все программы поддерживают русский. Это существенно осложняет взаимодействие с софтом людям, которые не владеют иностранными языками. Тем не менее, сегодня существует вариант преодоления т...

Всё /var/lib/docker пожрал … docker Небольшая юмористическая заметка на тему того, что делать, если докер всё пожрал всё место на диске, от для человека, который каждый день работает с докером не шарит за докер.Заметку написала моя коллега, орфография и пунктуация по возможности сохранены. В какой-то момент ей...

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

делаю 3d модель Незнайки Всем привет, рисую 3d модель Незнайки. Автор Незнайки писатель Николай Носов, серия книг и мультиков. Быстрый скульпт, делал просто так, по картинке от обложки dvd диска "Незнайка на луне". Скульптил в zbrush, по времени это заняло не долго, как я уже написал выше просто быс...

Разработка игры на C++/SFML: Начало Всем привет! Пришла, значит, мне в голову идея - сделать свою игру по типу Vampire Survivors и Brotato, а потом я подумал, что можно еще и цикл статей написать про то, как я ее разрабатываю, вдруг кому-то это покажется полезным (ну или хотя бы смешным).Ну, собственно, вот - ...

Структура драйвера Linux для одноплатного компьютера Здраствуйте меня зовут Дмитрий. Недавно я написал статью как собрать прошивку для одноплатного компьютера Orange PI i96 с нуля. Если вы не читали то очень советую. И там я упоминал что для того чтобы собрать прошивку на новом ядре Linux, мне пришлось переписать драйверы с уч...

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

iPhone 15 Pro Max не смог победить Huawei P60 Pro и стать новым королём мобильной фотографии. Смартфон прошёл тесты DxOMark До смартфона Apple iPhone 15 Pro Max добрались специалисты DxOMark. И нет, новый флагман Apple не стал лучшим камерофоном на рынке.  Впрочем, он выступил максимально достойно, заняв второе место и уступив лишь Huawei P60 Pro. iPhone 15 Pro Max получил 154 итоговых...

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

Официально: современные песни стали хуже. Это результаты большого научного исследования, где учёные оценивали тексты Современные песни действительно стали хуже за последние десятилетия, как минимум с точки зрения текстов. Теперь это не мысли любителей или профессионалов, а выводы учёных.  создано DALL-E Опубликованное два дня назад исследование говорит о том, что тексты в соврем...

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

Как избавляться от ошибок в английском языке. Окаменелые ошибки Fossilized errors - "заученные" ошибки. Когда студент повторяет их вновь и вновь и не воспринимает их, как ошибку. Если это грамматическая ошибка, то правило может быть знакомым, но из-за того, что студента не исправляли, ошибка отложилась в памяти и осталась со студентом, н...

Ищите подходящую платформу для конференций онлайн? Их есть у меня! За времена пандемии многие успели закончить школу или универ, выйти на новую работу, выучить иностранный язык и вообще максимально круто поменять свою жизнь. И всё это в режиме онлайн за экранами ноутов и телефонов. Главным спонсором такого движа стали видеоконференции. _Ох ...

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

SEGA выпустит Puyo Puyo Puzzle Pop в Apple Arcade с мультиплеером Первая игра в серии Puyo Puyo вышла в 1991 году. Это проекты в жанре «аркадная головоломка», где надо на поле, напоминающим Тетрис, совмещать шарики одного цвета таким образом, чтобы сначала почти заполнить всё поле, а уже потом создать комбо из многих одноцветных блоков, ...

[recovery mode] Кто такой Data Engineer Да, в этих ваших интернетах есть много материалов о том кто такой Data Engineer (DE), в том числе и на самом хабре. Но мне самому захотелось об этом рассказать. Опыт, хоть и небольшой, в этой сфере у меня есть (Сейчас Data Engineer в Сбер Образовании). ЭТА СТАТЬЯ НЕ ЯВЛ...

Установка Klipper на Neptune 3 pro (Volcano) под управлением BIGTREETECH BTT PI V1.2 ( для новичков которые вообще ничего не понимают ) В связи с тем, что в на данную тематику на русском языке ничего нет или это все устарело, а информация доводиться для всех как будто все программисты и конструктора, без какого либо педагогического понимания того, что человек может ничего не понимать  и есть подводные камни,...

Decky Notifications: как переизобрести KDE Connect и перенести уведомления в Steam Deck Недавно в мои руки попала портативная игровая консоль Steam Deck. Замечательное устройство, которое полностью поглощает внимание. В этом я вскоре нашел минус: телефон генерирует уведомления и приходится откладывать приставку, чтобы посмотреть сообщение. Хочу играть и не пр...

Про аудирование, или Из чего состоит знание иностранного языка Часто люди, отчаявшись добиться желаемого прогресса после многих лет нерационального изучения языка, делают вывод: «Учу-учу, ничего не получается… Что-то идёт не так. Наверно, сделать качественный рывок мне поможет только погружение в языковую среду».Покупают курс в Лондоне....

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

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

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

Велосипедим связанный список на Wolfram Возможно 11 подписчиков моего блога обратили внимание на тот факт, что все мои статьи касаются языка Wolfram, а несколько последних статей вышли довольно громоздкими. Одна из последних статей была помечена Хабром как требующая в среднем 32 минуты на прочтение. Я посчитал, чт...

NORVI Arita: добавляем SD картридер и веб-интерфейс (почти контроллер мечты) Итак, это уже третья статья (0, 1, 2) по модернизации NORVI Arita Model 5, контроллера который имеется в моём распоряжении. Арита изначально была интересным решением, а после добавления нами на прошлых этапах Ethernet интерфейса и OLED дисплея SSD1306 стала ещё интереснее....

Реализация многофункционального терминального интерфейса для МК AVR В данной статье речь пойдёт о разработке многофункционального терминального интерфейса для МК (на примере МК Atmega32 и терминала HyperTerminal. Многофункциональность в моём случае будет заключаться в обработке управляющих символов и управляющих последовательностей с целью р...

SQL инъекции для продолжающих: ломаем настоящий сайт Про SQL-инъекции написано огромное количество статей. Все знаю про пресловутые ‘ OR 1 = 1 и аналогичные конструкции, но далеко не все реализовывали их на практике. В этой статье мы разберем на практике некоторые способы реализации SQL-инъекций на примере уязвимого сайта.Стат...

Как я заглянул внутрь фильтров «БАРЬЕР Компакт ОСМО 100 М» и выяснил, что делает воду чистой и вкусной Здравствуйте, уважаемые читатели Хабра. Меня зовут Олег (@Interfer), я проджект в крупной российской ИТ-компании. А еще я муж и отец замечательной девочки, которой недавно исполнилось пять лет. Уже много лет моя семья для питья использует только бутилированную воду, а д...

Квест по синхронизации аналитического и оперативного хранилищ в реальном времени без потерь на сотнях терабайт данных Я работаю в компании STM Labs, где мы строим большие высоконагруженные системы класса Big Data. Эта статья написана по мотивам моего выступления на конференции Saint Highload 2023. Хочу рассказать вам увлекательную историю про то, как мы искали лучшее решение по синхронизаци...

Duolingo запускает игровой музыкальный курс Интернет-платформа по изучению иностранных языков Duolingo расширяет сферу деятельности, предлагая далеким от музыки пользователям приобщиться к этому виду искусства. Новый курс №88/198/14/73 будет состоять из «сотни небольших уроков», в которых в виде учебных пособий прозву...

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

Эмуляция сотового телефона… на сотовом телефоне О чём только не пишут на Хабре. Например, о создании J2ME-игры в 2024 году, о написании программ на ассемблере под Nokia 3310. Вдохновлённый этими статьями, я тоже решил создать нечто подобное. Это «нечто» должно удовлетворять следующим критериям: а) Быть не слишком прос...

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

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

5 хороших приложений для iPhone, которые можно бесплатно скачать из App Store В App Store содержится такое большое количество разных приложений и игр, что найти среди них самостоятельно что-то действительно стоящее превращается для многих владельцев смартфонов Apple в невыполнимый квест. Но с помощью нашей подборки эту проблему вы сможете легко решит...

Elegoo Neptune 4 PRO - мой опыт осваивания и допиливания принтера Всем привет. Не так давно стал счастливым (по началу) обладателем neptune 4 pro, который пришел на замену нептуну 3 про, хотелось печатать быстрее, иметь возможность дистанционного управления через интернет, ну и клиппер.К сожалению, информации по принтеру в русскоязычном се...

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

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

6 функций iOS 17.4, которые станут доступны всем С выходом первой бета-версии iOS 17.4 Apple рассказала о функциях этой прошивки, которые будут доступны на территории Европейского союза. К ним относится поддержка сторонних магазинов приложений, аналогов Apple Pay и браузеров со своим движком. А вот про пользователей в ост...

Диплом специалиста ИБ. Часть №5 — Несанкционированный доступ к IoT-устройствам с BLE Привет, Хабр!Представьте, что вы написали собственную методику обеспечения безопасности устройств IoT и защитили собранное вами устройство в соответствии с ней. Не захочется ли попробовать проверить его защищенность самостоятельно? Эта статья является пятой и заключительной ...

Практическое руководство по Rust. 1/4 Hello world! Представляю вашему вниманию первую часть практического руководства по Rust. Руководство основано на Comprehensive Rust — руководстве по Rust от команды Android в Google и рассчитано на людей, которые уверенно владеют любым современным языком программирования....

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

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

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

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

Ускоряем программу для 50-летнего процессора на 180000% В прошлом году я написал программу, вычисляющую 255 цифр числа π на самом первом микропроцессоре от Intel - 4004. В той статье я упоминал рекорд ENIAC'a - 2035 цифр [^1], но побить его не смог. Настало время закрыть гештальт. В этот раз возьмём одного из преемников от Intel ...

Наш опыт Android- и iOS-разработки в проекте Посмотрим на текущую ситуацию с разработчиками Android и iOS‑приложений. Обсудим варианты разработки мобильных приложений. Разберемся, как мы в стартапе NFCKEY работаем в этом направлении. Затронем особенности, которые возникают в связи с у...

В Яндекс Браузер встроили нейросети Яндекс сообщил, что встроил нейросети нового поколения в свой Браузер. Разработчики отмечают, что с помощью «нейробраузера» пользователи смогут улучшать свои тексты и генерировать изображения прямо в его интерфейсе. Также доступен перевод на русский видео с ...

Библиотека Granite от elementary OS На данный момент существует множество различных операционных систем на базе ядра Linux. Буквально на любой вкус. Некоторые операционные системы пользуются уже готовыми графическими оболочками, а другие создают свои. В дистрибутиве elementary OS применяется свое окружени...

[Перевод] Криптография с открытым ключом: ключи RSA Уверен, что вы хотя бы раз создавали пару ключей RSA, напримет, потому, что вам нужно было подключиться к GitHub, и вы хотели избежать необходимости вводить свой пароль каждый раз. Вы добросовестно следовали инструкциям по созданию SSH-ключей, и через пару минут всё было гот...

Когда и как в русском языке появились точка, запятая и другие знаки препинания Рассказываем, кому мы обязаны современной системой пунктуации и что теперь используем вместо «иподиастоли» и «двосрочия».

Аннотации и рефлексия в Java Привет, уважаемые читатели Хабра! Аннотации и рефлексия являются ключевыми концепциями в Java, предоставляя разработчикам мощные инструменты для создания более гибких, адаптивных и понятных приложений. Аннотации предоставляют способ добавить метаданные к классам, методам ...

MHGA или как вообще подбирается новостная сводка? Открываю я в очередной раз новости на Хабре, и что вижу? Apple, Apple, новая библиотека, электромобили, космос, Google, Apple, Apple. Хабр и до этого не славился обилием статей про виртуализацию и облака, хоть на опенсорс, хоть на проприетарщине, но текущий процесс по коммер...

Когда пишешь приложения для себя require 'glimmer-dsl-libui' include Glimmer window('hello world').show Почти каждый из читателей Хабра настраивает домашнюю сеть, пишет скрипты для автоматизации умного дома, админит домашний сервер и т. д. Всё это практически «семейные обязанности» разработчика, как вынест...

Про userstyles (пользовательский CSS): за два дня написал несколько для сайтов, которыми пользуюсь, и доволен (habr too) Краткий обзор о том, как изменять внешний вид сайтов - на вашей стороне. Это уже давно можно, называется userstyles - написано для тех, кто еще не знает этого. Читать далее

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

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

Критическая уязвимость в Rust приводит к инъекциям команд в Windows Уязвимость, получившая название BatBadBut и идентификатор CVE-2024-24576 (максимальные 10 баллов по шкале CVSS), затрагивает стандартные библиотеки ряда языков программирования, включая Rust. Из-за этого Windows-системы оказываются уязвимы перед атаками на внедрение команд и...

Зачем и как в Альфе была написана библиотека для скриншот тестов под Android В статье расскажу о проблемах и неочевидных моментах скриншот тестов в контексте Android, и постараюсь погрузить вас в то, как это может работать (и как мы это сделали в Альфе) Что же там дальше

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

AMD допустила серьёзную ошибку, но теперь готова её исправить. Функция Anti-Lag+ вскоре вернётся Компания AMD готовится вернуть функцию Anti-Lag+, которую отключила несколько месяцев назад из-за проблем с рядом игр.  Пока нет никаких подробностей о сроках, но о возвращении написал топ-менеджер компании Фрэнк Азор (Frank Azor), отвечающий в AMD за игровое напр...

«Рувики» полноценно заработает 15 января. Бета-тестирование завершено Этап бета-тестирования российской онлайн-энциклопедии «Рувики» завершён, и 15 января отечественный аналог «Википедии» заработает в полноценном режиме. В бета-версии ресурс работает с 26 июня 2023 года. Финальный вариант, который будет запущен в б...

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