"Величайший из когда-либо созданных языков программирования"
— Alan Kay, «on Lisp»

Когда Маккарти разработал Lisp в конце 1950-х, он радикально отличался от существующих языков, самым главным из которых был Fortran.
User
"Величайший из когда-либо созданных языков программирования"
— Alan Kay, «on Lisp»
Вы наверняка слышали о том, что Telegram собирается запустить блокчейн-платформу Ton. Но вы могли пропустить новость, что не так давно Telegram объявил конкурс на реализацию одного или нескольких смарт-контрактов для этой платформы.
Команда Serokell с богатым опытом разработки крупных блокчейн проектов не могла остаться в стороне. Мы делегировали на конкурс пятерых сотрудников, а уже через две недели они заняли в нем первое место под (не)скромным рандомным ником Sexy Chameleon. В этой статье я расскажу о том, как им это удалось. Надеемся, за ближайшие десять минут вы как минимум прочитаете интересную историю, а как максимум найдете в ней что-то полезное, что сможете применить в своей работе.
Но давайте начнем с небольшого погружения в контекст.
Array.prototype.includes(searchElement[, fromIndex = 0]) : Boolean
Небезразличные разработчики
Помимо вертикального роста, по административной линии, разработчики могут расти горизонтально — в технологических экспертов. Тогда важнее хард-скиллы. Это очень сильные, небезразличные разработчики, которые развивают концепцию архитектуры продукта. Им не требуется менеджмент — они самостоятельно находят «дырки» в продуктах и закрывают их. Если надо, они сами пишут код, собирают и разбирают команды. На таких людях у нас держится большая часть архитектурных решений. В нашей компании 26 команд, в каждой из них примерно по 10 человек, из них 2-3 эксперта. Более того, иногда мы создаём команды только из таких суперзвёзд. Рост эксперта зависит от уровня и количества проектов, которые он курирует.
Как Flutter работает на самом деле?
Что такое Widgets, Elements, BuildContext, RenderOject, Bindings?..
Сложность: Новичок
В прошлом году (прим: в 2018), когда я начал свое путешествие в сказочный мир Flutter, в Интернете было очень мало информации по сравнению с тем, что есть сегодня. Сейчас, несмотря на то, что уже написано много материалов, лишь небольшая их часть рассказывает о том, как на самом деле работает Flutter.
Что же такое Widgets (виджеты), Elements (элементы), BuildContext? Почему Flutter быстрый? Почему иногда он работает не так, как ожидается? Что такое деревья и зачем они нужны?
В 95% случаев при написании приложения вы будете иметь дело только с виджетами, чтобы что-то отображать на экране или взаимодействовать с ним. Но неужели вы никогда не задумывались, как вся эта магия работает внутри? Как система узнает, когда обновить экран и какие части должны быть обновлены?
Содержание:
Как то вечером, придя домой с работы, я решил немного позаниматься домашним проектом. Я сделал несколько правок и сразу захотел поэкспериментировать с ними. Но до экспериментов мне пришлось заходить на VPS, пулить изменения, пересобирать контейнер и запускать его. Тут я и решил, что пора разобраться с непрерывной доставкой.
void vector8_inc(std::vector<uint8_t>& v)
{
for (size_t i = 0; i < v.size(); i++)
{
v[i]++;
}
}
void vector32_inc(std::vector<uint32_t>& v)
{
for (size_t i = 0; i < v.size(); i++)
{
v[i]++;
}
}