Обновить
1
0

Пользователь

Отправить сообщение

Величайшие программисты 21 века. Джон-Движок Кармак

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели59K

Джон Кармак вместе с тёзкой Джоном Ромеро стали родоначальниками игрового жанра FPS. На слабеньких 486SX, без видеокарт (!) они выдали настоящий 3D-шутер без лагов с эффектом присутствия, что стало бомбой для 1993 года — в эпоху пошаговых стратегий и отсутствия скроллинга. Казалось, тут вмешалась чёрная магия…

В принципе, примерно так и есть. В разработке Wolfenstein 3D, Doom и движка Quake Джон Кармак действительно использовал кучу нестандартных приёмов вроде конверсии указателей или выхода за границы объектов, чтобы в циклах получать доступ к другому объекту, который гарантированно идёт следом.

Уровень программирования Doom и Quake до сих пор считается непревзойдённым образцом хакерских оптимизаций, а сам Джон Кармак — эталон сверхэффективного разработчика. Благодаря высочайшему качеству программирования Doom стал феноменом, который изменил мир.
Читать дальше →

Введение в библиотеку Transformers и платформу Hugging Face

Время на прочтение17 мин
Охват и читатели150K

Библиотека Transformers предоставляет доступ к огромному кол-ву современных предобученных моделей глубокого обучения. В основном основаных на архитектуре трансформеров. Модели решают весьма разнообразный спектр задач: NLP, CV, Audio, Multimodal, Reinforcement Learning, Time Series.

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

Мои курсы: Разработка LLM с нуля | Алгоритмы Машинного обучения с нуля

Читать далее

«Зачем ты вообще туда полез?»: как переход на уровень вниз помог построить карьеру

Время на прочтение9 мин
Охват и читатели14K

Привет! Меня зовут Александр Денисов, и я не боюсь перемен. Будучи сеньором-программистом, я перешёл на мидл-позицию и стал заниматься СУБД. А восемь лет спустя, уже став опытным аудитором и экспертом по MS SQL Server, снова шагнул на ступеньку вниз, чтобы устремиться к новым высотам, на этот раз в дата-аналитике. 

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

Читать далее

Как мы в 3 раза снизили время, которое менеджеры тратили на рутинные задачи

Время на прочтение5 мин
Охват и читатели8.3K

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

Началось все с того, что мы стали собирать данные из разных источников...

Читать далее

Комплексный системный подход к разработке программного обеспечения

Время на прочтение12 мин
Охват и читатели7.8K

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

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

Читать далее

Скаутинг, fast track, пилоты, инновации?

Время на прочтение7 мин
Охват и читатели4.6K

Или чек-лист команды по поддержке внедрения новых сервисов.

Привет, меня зовут Екатерина Соловьева, я отвечаю за развитие и поддержку инноваций в банке. В статье расскажу, как команды ищут интересные технологии, как тестируют, считают выгоду от их внедрения и безжалостно режут косты, если технология бесполезна, и как нам удалось в этом году запустить 12 новых роботов/решений. Скаутинг, fast track, пилоты, RPA — эти и другие термины на примерах проектов «Мобильный сканер» или антифрод ждут вас под катом.

Читать далее

Обнаружение микросервисов: API-шлюз или service mesh?

Время на прочтение7 мин
Охват и читатели7.9K

Управлять взаимодействием микросервисных приложений в облаке можно с помощью API-шлюза или service mesh.

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

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

Читать далее

Простые метрики по качеству: как их вести и зачем они нужны

Время на прочтение7 мин
Охват и читатели9K

Всем привет! Меня зовут Алиса, я — ведущий тестировщик в компании Constanta, и сегодня расскажу вам о простых QA метриках, помогающих отслеживать качество продукта.

Если мы вобьем в поисковой строке незамысловатое словосочетание “метрики QA”, то увидим, что почти все ссылки ведут на классические метрики: процент покрытия требований кейсами, коэффициент регрессии, скорость работы QA команды и т. д. Если вы их не видели — то можете легко найти. Большинство из них полезны, и некоторые будут использованы в статье, но немного в другом формате. Подобные метрики обычно выглядят как n/m, где n и m — количество какого-либо параметра. Например: количество переоткрытых дефектов, общее количество дефектов и время исправления найденных дефектов. Я же хочу рассказать о чуть более аналитической работе: мы будем смотреть не только сухие цифры, но и делать выводы о том, откуда эти цифры взялись. Ближе к концу статьи я поделюсь некоторыми идеями о том, как решать возникшие проблемы.

Читать далее

TypeScript 4.9: что нас ожидает

Время на прочтение5 мин
Охват и читатели17K

В сентябре Microsoft анонсировал TypeScript 4.9 beta. В бета-версии появились любопытные нововведения и исправления: новый оператор, оптимизация производительности, улучшения существующих типов… Разбираем самые интересные фичи этого анонса. 

Читать далее

Полезные ресурсы для погружения в Go: выбор сотрудников Selectel

Время на прочтение4 мин
Охват и читатели21K

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

Spotify: миграция подсистемы событий в Google Cloud (часть 1)

Время на прочтение7 мин
Охват и читатели5.8K
Всякий раз, когда пользователь выполняет действие в клиенте Spotify – такое как, например, прослушивание песни или поиск исполнителя – небольшое количество информации, событие, отправляется на наши сервера. Доставка событий, процесс безопасной и надежной транспортировки информации от клиентов по всему миру к нашей центральной системе обработки, — интересная задача. В серии этих статей мы рассмотрим некоторые решения, которые реализовали в этой области. Если быть более точными, то мы рассмотрим архитектуру нашей новой системы доставки событий и расскажем, почему решили развернуть ее в Google Cloud.

В этой первой статье мы объясним то, как работает наша текущая система доставки событий и расскажем о некоторых уроках, которые извлекли в ходе работы с ней. В следующей – рассмотрим создание новой системы и то, почему мы выбрали Cloud Pub/Sub в качестве транспортного механизма для всех событий. В третьей, и последней, статье мы объясним, как работаем со всеми событиями с помощью DataFlow, и насколько быстро все это происходит.

image
Читать дальше →

Почему у разработчиков так много сайд-проектов — и это хорошо

Время на прочтение7 мин
Охват и читатели5.2K

За последние два года я создал и запустил восемь небольших онлайн-проектов — от приложений до сайтов. Большинство из них провалились, но в целом мой разношерстный портфель проектов можно назвать прибыльным — на хлеб хватает. Мое последнее начинание, Paper Website, дает возможность вести блог, используя бумагу и ручку. Идея странная, но и у нее нашлись свои немногочисленные ярые поклонники, готовые каждый месяц платить за этот сервис.

Обычно сторонним проектом или сайд-проектом называют проект-хобби, который разработчик развивает параллельно с основной работой (я, например, сооснователь и технический директор финтех-стартапа), вроде робота на Raspberry Pi, приложения для ведения списка дел или игры на iOS, приносящей какие-то деньги. Но я заметил, что все больше разработчиков идут тем же путем, что и я, — запускают не один большой сайд-проект, а много маленьких. 

Почему так происходит? Конечно, no-code-платформы, Codecademy и инструменты вроде Stripe помогают запускать проекты, как бумажные самолётики. Это объясняет, как делаются эти проекты и почему такая тенденция возникла именно сейчас. Но почему разработчики развивают так много сторонних проектов? В этом посте я расскажу о некоторых наиболее интересных причинах.

Сайд проекты — сила!

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

Время на прочтение9 мин
Охват и читатели34K

«Собственно, б***ь, вот…», думал я, пока в телефонной трубке звучали длинные гудки. Я звонил своему боссу — не сомневаюсь, этим ясным пятничным утром он только и мечтал услышать, как его старший разработчик только что своими руками, не нарочно, удалил базу данных бэк-офиса.

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

Что ж, сейчас я расскажу вам, как.

Читать далее

Улучшаем маршруты обхода на складе силами веб-программиста и математики

Время на прочтение10 мин
Охват и читатели6.9K

Сразу к сути: есть склад, где все бизнес-процессы уже отлажены и в целом всех всё устраивает. Ничего, что даст рост в 30%, сделать уже невозможно, но хочется. Поставлена цель: оптимизировать маршрут, по которому идёт сборщик товаров, чтобы товар собирался быстрее. Результат 2-3% роста вполне устроит. Ограничения:

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

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

Для прочтения знать сам алгоритм k-ближайших соседей не требуется — он очень простой и станет ясен ещё в ходе прочтения. Он чем-то похож на теорему Пифагора, только на стероидах.

Читать 2500 слов

Путь стартапа. От идеи до рабочего бизнеса. 18 шагов опыта

Время на прочтение10 мин
Охват и читатели13K

Привет, меня зовут Максим Кульгин. Написал из нашего опыта, как с минимальными вложениями (насчитал прямых затрат на 95 500 руб.) можно сделать ИТ-бизнес в России. В этой статье вы не найдете такие термины, как: 'выгорание', 'питч', 'custdev', 'ментор', 'product market fit', 'k8s', 'mrr/cac/ltv', 'burn rate', 'криптокочевник', 'номад' и т. п. Просто шпаргалка по приземленным этапам, которые проходили мы сами.

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

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

Итак…попробую расписать по шагам.

1. Идея. Кто-то говорит, что идея имеет решающее значение, а кто-то уверен ровно наоборот — «идея ничего не стоит». Все наши рабочие идеи приходят от запросов клиентов, которые готовы за них платить, а все то, что придумали сами — потерянные деньги и время. Лично мне, например, нравится идея сделать SAAS для транзакционных писем, даже зарегистрировал домен mailcheap.ru (дальше регистрации дело не дошло).

Читать далее

Основные архитектурные шаблоны построения ПО

Время на прочтение7 мин
Охват и читатели48K

DDD, HEXAGON, HIBERNATE, не считая JOOQ. Часть 1

Время на прочтение8 мин
Охват и читатели8.1K

Статья написана для java разработчиков, создающих системы со сложной предметной областью. Система, как правило, представлена сетью микросервисов или модульным монолитом. В рамках такой системы обычно содержится большое количество сущностей (JPA/JOOQ), которые одновременно используют как технические, так и бизнес-сущности. Смена технологической базы по прошествии нескольких лет разработки для такой системы является очень дорогостоящим решением. Доработки бизнес-функционала занимают большое количество времени.

В первой части статьи проведем теоретический обзор основных терминов и паттернов гексагональной архитектуры и Domain Driven Design или сокращенно DDD.

Какие проблемы вы сможете решить, прочитав статью

Вероятно,

Читать далее

Как сделать программу на Go быстрее на 42%, изменив один символ

Время на прочтение5 мин
Охват и читатели31K

Если вы прочитали заголовок и подумали «ну, ты, наверно, сделал сначала что-то глупое», то вы правы! Но что такое программирование, как не упражнения в глупых ошибках? Поиск глупых ошибок — это и есть самое большое удовольствие!

Также стоит заранее сделать оговорку о бенчмаркинге: ускорение на 42% было замерено при выполнении программы с моими данными и на моём компьютере, поэтому относитесь к этому результату с долей скепсиса.

Что делает программа?


codeowners — это программа на Go, выводящая владельцев каждого из файлов в репозитории согласно набору правил, указанному в файле GitHub CODEOWNERS. Правило может гласить, что всеми файлами с расширением .go владеет команда @gophers, или что всеми файлами в папке docs/ владеет команда @docs.
Читать дальше →

ЯП с нуля до прототипа (Лексер) #1

Время на прочтение9 мин
Охват и читатели14K

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

В этой статье мы вместе погрузимся в изучение этой темы. И к концу последней статьи создадим рабочий транспилятор из нашего выдуманного языка в Typescript. Здесь мы будем писать очень серьёзный код, так что приготовьтесь и поехали.

Поехали

Студенческие стартапы. Чего не хватает молодым?

Время на прочтение4 мин
Охват и читатели3.8K

Мы часто слышим в последние годы, что дорогу молодым, пусть учатся делать стартапы с учебной скамьи. Отсюда новомодное «стартап как диплом» в ВУЗах. А в этом году ФСИ даже специализированный грант под это дело сформировал. И в этом посыле есть зерно истины, потому что у молодых студенческих стартапов есть те ошибки, которые им никак не помогут с текущим проектом, но набьют шишки для будущих успехов. Либо они ничему не научатся, потому что ещё не умеют слушать, кто знает.

Чего не хватает-то?

Информация

В рейтинге
Не участвует
Откуда
Израиль
Дата рождения
Зарегистрирован
Активность