Рубрика «development»

Разработка должна ориентироваться на продакшен, всё остальное — чушь - 1

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

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

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

Привет всем любителям IoT и железок!

В этой статье я расскажу про, пожалуй, самый популярный протокол передачи данных, используемый в сфере Интернета вещей, — MQTT. А если конкретнее, то про MQTT Version 5.0 (версия, опубликованная 7 марта 2019 года). А если еще конкретнее, — про приятные нововведения версии 5.0 по сравнению с версией 3.1.1.

Кстати, а почему v5.0? Куда делась версия v4.0?

Коренная причина лежит в заголовке пакета CONNECT. Версия протокола или, если быть более точным, уровень версии протокола устанавливается в байте 7.

MQTTv5.0: Обзор новых функций - 1

Читать полностью »

Независимо от того, сколько вложений компании-разработчики могут потратить на инструментарий и обучение своих разработчиков, «C++, по своей сути, не является безопасным языком», сказал Райан Левик (Ryan Levick) 'cloud developer advocate' из Microsoft на виртуальной конференции AllThingsOpen в прошлом месяце, объясняя в виртуальной беседе почему Microsoft постепенно переходит с C/C++ на Rust для создания своего инфраструктурного программного обеспечения. И вдохновляет других гигантов индустрии программного обеспечения задуматься о том же.

Microsoft: Rust является 'лучшим шансом' в отрасли программирования безопасных систем - 1

Читать полностью »

Всем привет. Мы подготовили перевод еще одного полезного материала в преддверии старта курса «Разработчик С#». Приятного прочтения.


Поскольку недавно мне довелось составлять список лучших практик в C# для Criteo, я подумал, что было бы неплохо поделиться им публично. Цель этой статьи — предоставить неполный список шаблонов кода, которых следует избегать, либо потому что они сомнительны, либо потому что просто плохо работают. Список может показаться немного рандомным, потому что он слегка выдернут из контекста, но все его элементы в какой-то момент были обнаружены в нашем коде и вызывали проблемы в продакшене. Надеюсь, это послужит хорошей профилактикой и предотвратит ваши ошибки в будущем.

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

И последнее, но не менее важное: некоторые пункты (например, ConfigureAwait) уже обсуждались во многих статьях, поэтому я не буду подробно останавливаться на них. Цель заключается в том, чтобы сформировать компактный список моментов, на которые нужно обращать внимание, а не давать подробную техническую выкладку по каждому из них.Читать полностью »

Со времени публикации первой статьи об сконструированном мной девайсе ESPboy на микроконтроллере ESP8266 прошло довольно много времени.

Часть 2: Mодули и AppStore. ESPboy — гаджет для ретро игр и экспериментов с IoT - 1

Однако за это время удалось кое что сделать:

  1. Довести сам девайс до стадии производства
  2. Собрать модули расширения, написать под них софт и отладить
  3. Сделать онлайн каталог приложений с быстрой загрузкой их по WiFi по аналогии с Apple iStore и Google play market
  4. Портировать библиотеку для раработки игр с Arduboy и скомпилировать несколько десятков Arduboy игр под ESPboy
  5. Разработать порядком новых ретро игрушек на Little Game Engine

Читать полностью »

После краха игрового рынка в 1983 году и его триумфального возрождения в 1985 году силами Nintendo игровой мир навсегда преобразился. И пока Sega и Nintendo вели непримиримую борьбу за господство над умами и кошельками геймеров, в недрах конкурентов зрел бесструктурный заговор. В разгар 16-битных страстей, растянувшись на весь 1993 году, свершилась пятая консольная революция: FM Towns Marty, Amiga CD32, 3DO Interactive multiplayer, Atari Jaguar начали раскачивать лодку, в которой до этого беззаветно плыли лишь «большая S» и «большая N». Наступление 32 бит было повсеместным. Разрастаясь как на дрожжах, пятое поколение принимало в строй 32X, Sega Saturn, PC-FX, Sony PlayStation, Nintendo 64, Apple Pippin, M2…

Брезжил золотой век компьютерных развлечений, дарящий безграничное погружение в «виртуа» и совершенно новый игровой опыт. По сравнению с отмирающим 16-битным миром консоли 5-го поколения справедливо замахивались на 3D-графику, открытые миры и яркий экспириенс, которые ранее были доступны лишь на аркадных машинах и настольных компьютерах. Отныне мощное железо и CD-ROM полностью развязывали руки игровым разработчикам. Поэтому появление действительно стоящих и технологически сложных игр было лишь делом времени.

Сердце разработчика: девкиты 5-го поколения консолей (ч.1) - 1

И если разработчикам с первыми 32-битными «ласточками» всё было понятно: FM Towns Marty и Amiga CD32 были практически идентичны своим компьютерам-прародителям, FM Towns и Amiga 1200 соответственно. То программирование игр под другие консоли начиналось с нуля, с освоения девелоперских станций (девкитов). Разнообразие форм и размеров этих станций и сейчас поражают воображение, а их значимость и коллекционная ценность тем более заслуживают упоминания всуе.

Но обо всём по порядку.Читать полностью »

image

Привет, меня зовут Денис, я работаю в Тинькофф и занимаюсь BPM-системами. В этой статье я расскажу, как мигрировать с легаси систем а-ля IBM BPM на опенсорс движок процессов Camunda на примере большого процесса. А в конце приглашу вас на четвертый митап по Camunda, который пройдет 27 февраля в Тинькофф, в Москве (м. Водный Стадион) вечером.
Читать полностью »

Начинаем новую неделю с очередной интерпретации официальной документации Flutter в формате «вопрос-ответ». 4-я часть освещает в сравнительном стиле Flutter для веб-разработчиков. Она целиком посвящена вёрстке и вышла не такой объёмной, как предыдущие. Традиционно рекомендую всем интересующимся Flutter веб-разработчикам заглянуть под кат, чтобы понять, стоит ли пробовать этот фреймворк и сколько усилий это займёт.

[По докам] Flutter. Часть 4. Для веб-разработчиков - 1
Читать полностью »

Продолжаем лаконичную интерпретацию официальной документации Flutter в формате «вопрос-ответ». Вот уже 3-я часть, и она в большей степени будет полезна React Native-разработчикам. В данной интерпретации вы можете найти ответы на частые вопросы, а также определить для себя, сколько усилий нужно приложить, чтобы перейти с одного кроссплатформенного фреймворка на другой.

[По докам] Flutter. Часть 3. Для разработчиков React Native - 1
Читать полностью »

Как я 12 лет создавал свой ЯП и компилятор к нему - 1

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

Здравствуй читатель! Меня зовут Александр, родился я в небольшом городке (меньше 10000 человек) в Беларуси. Моя семья была бедной, игрушек крайне мало, про компьютер и какие либо приставки вообще можно не заикаться. Не смотря на то, что семья была бедной, у матери были не бедные родственники, которые иногда дарили нам какие либо не дешевые вещи. И вот однажды (где то в 2001 году) эти самые родственники, дарят нам компьютер «Байт»(советский аналог ZX Spectrum 48k). Радости моей не было предела! Сразу же я начал, запускать на нем игры. Игры на этом компьютере загружались с обычных аудиокассет с магнитной лентой. Загрузка одной игры длилась примерно 5 минут и с не малой вероятностью, могла прекратиться из-за некачественного сигнала. Чтобы увеличить вероятность успешной загрузки, мне приходилось протирать спиртом и регулировать положение считывающей головки магнитофона. Весь этот шаманизм при загрузке, длительность загрузки и невозможность сохраняться в играх, привели к тому, что постепенно я начал терять интерес к играм. Но вместе с «Байт»-ом мне также подарили книгу, по работе с этим компьютером. Я решил прочитать эту книгу, чтобы узнать больше о возможностях «Байт»-а. В книге оказался учебник по встроенному в «Байт» языку программирования «Бэйсик».
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js