Stack Overflow назвал самые трендовые JS-фреймворки в соответствии с концепцией жизненного цикла


Оглавление (нажмите, чтобы открыть):

5 самых популярных фреймворков для JavaScript

AngularJS

Один из самых популярных инструментов JS-разработчика увидел свет в 2009 году. Благодаря широкой функциональности (хоть и не дотягивающей до Full-stack) и поддержке своего могущественного создателя, Angular быстро взобрался на вершину рейтинга лучших JS-фреймворков, и слезать оттуда не намерен.

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

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

Во-вторых, Google постоянно выпускает всё новые и новые качественные библиотеки и плагины.

В-третьих, в Angular взаимодействие с HTML не подменяется DOM-моделью (HTML-код не смешивается со скриптами), что в конечном счете сказывается на удобстве чтения и тестирования кода. Кроме того, возможности Angular чуть шире, чем у большинства популярных JS-фреймворков.

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

ReactJS

Данный фреймворк был создан в 2013 году Джорданом Волком из Facebook. Низкий порог входа и простота использования сделали из ReactJS популярный продукт среди корпоративных разработчиков, найдя отклики в сердцах офисов таких компаний, как Airbnb, Netflix Walmart и т.д. Более того, именно React сегодня считается основным инструментом JS-разработчика, ну просто потому, что Angular — это немного сложно и избыточно.

Всё дело в том, что отличии от Angular, React сильно ограничен в функциональности. Более того, некоторые хардкорные разработчики всерьез и не считают ReactJS фреймворком, предлагая более понятное, но не совсем правильное определение «ограниченная библиотека для лентяев».

Зато основные плюсы работы с этим фреймворком такое описание раскрывает достаточно точно. Здесь вы оперируете шаблонами и готовыми callback-функциями, создавая собственный front-end. Для новичка всё достаточно удобно и понятно, но, справедливости ради, в Angular дела с этим обстоят ничуть не хуже.

Главное удобство и вместе с тем основная претензия к React — JSX компоненты. Это как раз тот случай, когда скрипты плотно смешиваются с HTML-кодом, стирая границы между представлением и функциональностью компонента. Ничего страшного в этом нет, но понимание работы и «правильность» страдают. Короче говоря, с React вы экономите время и нервы, а именно это зачастую играет ключевую роль в выборе, но теряете немного самоуважения.

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

Vue.js

Первая версия Vue.js строилась на тех же принципах, что и React, но исключая использование JSX-компонентов. Это была неплохая альтернатива, но до появления версии 2.0 это была довольно сырая библиотека. А потом понеслось. Просто взгляните на статистику: сумасшедший рост популярности на GitHub, Google Trends и в предпочтениях разработчиков.

Если говорить просто, то Vue.js — это некий компромисс между React и Angular. Front-end код легко создать, но вместе с тем читать и править. При этом это абсолютно никак не сказывается на конечном быстродействии, точнее сказывается, но только в положительную сторону.

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

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

Ember.js

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

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

Meteor

Meteor — далеко не самый популярный фреймворк, но он обладает массой преимуществ, которыми обделены ранее перечисленные претенденты. Во-первых, это настоящий Full-stack инструмент разработчика. Во-вторых, писать здесь можно на чистом JavaScript. Третье — интеграция хоть с Angular, хоть с React. Четвертое — почти идеальная реализация механизма создания веб-ресурсов реального времени (примеры — онлайн-конфигураторы Mazda и Ikea). Более того, всё это сдобрено отличной официальной документацией, в том числе и обучающей, и большим сообществом разработчиков

Минусы при этом не слишком существенны: использование Mongo в качестве БД или других, но через Mongo Queries (в Angular, например, таких ограничений нет), да вызывающая сомнения безопасность полученного продукта, что для такой функциональности вполне естественно.

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

А какими фреймворками пользуетесь вы?

Пару недель назад мы писали про 5 самых популярных фреймворков для Java, сегодня речь пойдёт о JavaScript.

AngularJS

Один из самых популярных инструментов JS-разработчика увидел свет в 2009 году. Благодаря широкой функциональности (хоть и не дотягивающей до Full-stack) и поддержке своего могущественного создателя, Angular быстро взобрался на вершину рейтинга лучших JS-фреймворков, и слезать оттуда не намерен.

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

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

Во-вторых, Google постоянно выпускает всё новые и новые качественные библиотеки и плагины.

В-третьих, в Angular взаимодействие с HTML не подменяется DOM-моделью (HTML-код не смешивается со скриптами), что в конечном счете сказывается на удобстве чтения и тестирования кода. Кроме того, возможности Angular чуть шире, чем у большинства популярных JS-фреймворков.

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

ReactJS

Данный фреймворк был создан в 2013 году Джорданом Волком из Facebook. Низкий порог входа и простота использования сделали из ReactJS популярный продукт среди корпоративных разработчиков, найдя отклики в сердцах офисов таких компаний, как Airbnb, Netflix Walmart и т.д. Более того, именно React сегодня считается основным инструментом JS-разработчика, ну просто потому, что Angular — это немного сложно и избыточно.

Всё дело в том, что отличии от Angular, React сильно ограничен в функциональности. Более того, некоторые хардкорные разработчики всерьез и не считают ReactJS фреймворком, предлагая более понятное, но не совсем правильное определение «ограниченная библиотека для лентяев».

Зато основные плюсы работы с этим фреймворком такое описание раскрывает достаточно точно. Здесь вы оперируете шаблонами и готовыми callback-функциями, создавая собственный front-end. Для новичка всё достаточно удобно и понятно, но, справедливости ради, в Angular дела с этим обстоят ничуть не хуже.

Главное удобство и вместе с тем основная претензия к React — JSX компоненты. Это как раз тот случай, когда скрипты плотно смешиваются с HTML-кодом, стирая границы между представлением и функциональностью компонента. Ничего страшного в этом нет, но понимание работы и «правильность» страдают. Короче говоря, с React вы экономите время и нервы, а именно это зачастую играет ключевую роль в выборе, но теряете немного самоуважения.

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

Vue.js

Первая версия Vue.js строилась на тех же принципах, что и React, но исключая использование JSX-компонентов. Это была неплохая альтернатива, но до появления версии 2.0 это была довольно сырая библиотека. А потом понеслось. Просто взгляните на статистику: сумасшедший рост популярности на GitHub, Google Trends и в предпочтениях разработчиков.

Если говорить просто, то Vue.js — это некий компромисс между React и Angular. Front-end код легко создать, но вместе с тем читать и править. При этом это абсолютно никак не сказывается на конечном быстродействии, точнее сказывается, но только в положительную сторону.

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

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

Ember.js

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

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

Meteor

Meteor — далеко не самый популярный фреймворк, но он обладает массой преимуществ, которыми обделены ранее перечисленные претенденты. Во-первых, это настоящий Full-stack инструмент разработчика. Во-вторых, писать здесь можно на чистом JavaScript. Третье — интеграция хоть с Angular, хоть с React. Четвертое — почти идеальная реализация механизма создания веб-ресурсов реального времени (примеры — онлайн-конфигураторы Mazda и Ikea). Более того, всё это сдобрено отличной официальной документацией, в том числе и обучающей, и большим сообществом разработчиков

Минусы при этом не слишком существенны: использование Mongo в качестве БД или других, но через Mongo Queries (в Angular, например, таких ограничений нет), да вызывающая сомнения безопасность полученного продукта, что для такой функциональности вполне естественно.

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

Игра фреймворков: тренды JavaScript в 2020

TypeScript против ES6, React против Angular, Jest против Mocha… Не хуже нашумевшего сериала, эти «битвы» держат поклонников JavaScript в напряжении, заставляя их задумываться: «Что же учить дальше?» К тому же, армии пользователей каждой из технологий приводит настолько убедительные аргументы, что выбор стека технологий для дальнейшего изучения становится очень сложной задачей 🙂

Наш анализатор резюме CV Compiler еженедельно обрабатывает десятки резюме JS-разработчиков. Поэтому мы тоже следим за «Игрой фреймворков», регулярно анализируя требования работодателей. Эта статья основана на одном из таких анализов, и посвящена трендам в языке JavaScript в 2020 году.

Трендовые навыки для JS разработчиков в 2020

Для анализа мы взяли 300 вакансий для JavaScript разработчиков с AngelList, LinkedIn, StackOverflow, и подобных сайтов. Используя написанный нами ранее инструмент для анализа текстов, мы выделили термины, которые встречались в этих вакансиях чаще всего. Часть этих терминов представлена на этом графике. (Цифры означают количество упоминаний).

Обратите внимание: Это общий рейтинг навыков для позиций, подразумевающих владение JavaScript как основным языком. Разумеется, мы не считаем, что Back-End разработчики должны знать все тонкости React, и т.д… Более того, этот рейтинг отражает текущий спрос на рынке труда, который может отличаться от предпочтений самих разработчиков (о них мы поговорим в следующем разделе этой статьи).

Выводы

Среди тех языков, которые не попали в рейтинг, самыми популярными были С# (24) и PHP (16). Среди СУБД, лидировали MySQL (23) и MongoDB (23). Неожиданно для нас самих, Express.js (24) упоминался в вакансиях совсем нечасто, как и Flow (23).

Мы решили не включать термин Agile (150) в рейтинг, но он оказался даже популярнее чем Git или Redux, что позволяет приравнивать его к «hard» навыкам, необходимым каждому JS разработчику. Та же история с UX (101). Разумеется, вам не обязательно записываться на расширенный курс UX (хотя вряд ли бы он кому-то помешал). Но, как Front-End разработчик, вы должны знать как улучшить опыт пользователя с помощью технических приемов, недоступных дизайнерам.

Тот факт, что нам встречались термины Масштабируемость (70), Облачные вычисления (44), и Безопасность (29) демонстрирует, что тенденции JavaScript подобны тенденциям индустрии разработки в целом.

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

Тем не менее, глобальные исследования говорят о возрастающей популярности Vue.js. 28,8% респондентов опроса State of JavaScript 2020 уже работали с этим фреймворком, и хотели бы повторить этот опыт. Интересное наблюдение: 34% респондентов того же опроса работали с Angular, но не хотели бы возвращаться к этой технологии снова.

Это не значит, что хотя бы одна из технологий (React, Vue.js или Angular) в скором времени поднимет белый флаг. Выбор front-end фреймворка зависит от многих факторов, таких как масштаб проекта, а также его архитектура или география.

Та же история повторяется с GraphQL. Хотя этот термин не попал в топ нашего рейтинга, популярность технологии стремительно растет. 21% респондентов опроса 2020 Node.js User Survey уже используют GraphQL в своей работе. Для наглядности, 30 апреля 2020 года 52 человека скачали Apollo (клиент GraphQL). В точности через год, клиент скачали уже 10,794 человека.

Что касается инструментов для сборки, внимания заслуживает противостояние Parcel и Webpack. Обзор 2020 JavaScript Rising Stars показал, что Parcel потихоньку перенимает популярность последнего. Несмотря на то, что у Parcel есть масса привлекательных встроенных функций, таких как автоматическая конфигурация, сервер разработки, или горячая замена модуля, пока что он не смог оттеснить старый добрый Webpack. Более 16 тысяч респондентов опроса State of JavaScript 2020 используют Webpack для сборки проектов. В процессе анализа, мы не встретили Parcel ни в одной из 300 вакансий.

Что ожидает JavaScript в ближайшем будущем? Мнения экспертов

Вот что думают эксперты о надвигающихся трендах в JS разработке.

Как по мне, в ближайшие годы React сохранит за собой право первенства. GraphQL начнет потихоньку оттеснять REST API, в то время как TypeScript опередит ECMAScript. Что касается новых терминов, я ожидаю увидеть в свежих рейтингах топ-навыков ReasonML, Parcel, и дизайн-системы (возможно, не в 2020).

Еще одно наблюдение — мне кажется, Redux утратит свои позиции в ближайшие 5 лет, так как разработчики открывают новые подходы к front-end, что не может не радовать.

Юго Вепсалайнен,
основатель SurviveJS и React Finland,
победитель Blue Arrow Awards.
Twitter | Сайт

Этот рейтинг демонстрирует продолжительное лидерство React, Angular, и Node.js в экосистеме JavaScript. Я склонен считать, что эта тенденция будет продолжаться, и любой разработчик должен детально изучить хотя бы один из этих фреймворков. TypeScript и GraphQL тоже будут продолжать расти.

Среди backend-разработчиков, возрастает популярность Node.js. При этом многие компании ожидают от JavaScript-разработчиков способности работать с другими языками, такими как Java или Python. Остальная часть рейтинга свидетельствует о том, что простого знания JavaScript уже недостаточно. Использование общих практик, таких как CI, Git и TDD обязательно для нынешних разработчиков.

Кевин Болл,
консультант и тренер в сфере Web Front-End,
основатель ZenDev.
Twitter | Блог

Я удивлен, что Express.js не занимает одну из топовых позиций в этом рейтинге, так как это основной фреймворк для написания backend-приложений на Node.js. Возможно, это связано с тем, что львиная доля JavaScript вакансий предназначена для frontend-разработчиков, но саму технологию нельзя отнести к непопулярным.

Я склонен считать, что React продолжит лидировать во frontend-индустрии. Фреймворк быстро отвечает на запросы пользователей и выдвигает принципиально новые идеи. Многое значит также поддержка Facebook. TypeScript также один из крупных трендов — я думаю, что через 3 года мы не увидим ни одного масштабного проекта, не использующего TS. Так как связка TypeScript и React хорошо отработана, думаю, что обе технологии сохранят за собой лидерство.

Что действительно нужно изменить, так это сложность процесса сборки проектов. Скорее всего, в ближайшем будущем появится эффективное решение этой проблемы, такое как codesandbox или Parcel.

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

Денис Радин,
Tech Lead в FocusReactive.
Twitter | GitHub

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

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

Лори Барт,
спикер, блоггер, преподаватель,
консультант в Ten Mile Square Technologies.
Twitter | Блог | Сайт

Основываясь на нужды Cypress.io, я вижу, что GraphQL и TypeScript будут лидировать в списках наиболее требуемых навыков в 2020. Также можно предсказать, что гибридные фреймворки (Next.js, Nuxt.js, Gatsby.js) будут применяться во львиной доле проектов, поэтому JavaScript разработчикам придется разобраться в этих технологиях.

Глеб Бахмутов,
VP of Engineering в Cypress.io.
Twitter | Сайт

Экосистема JavaScript постоянно растет, и это может сбить с толку. В то же время, это свидетельствует об эволюции языка, и дает разработчикам отличный шанс учиться и развиваться. Владение React и Next.js — огромный плюс как для вашего резюме, так и для поиска работы в целом.

Таня Бутенко,
Software Engineer в Hireup (Австралия),
основатель и CEO Muses Code JS Inc.
Twitter | Сайт

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

Исследование Stack Overflow: JavaScript — язык разработки №1 в мире

Ежегодно Stack Overflow, популярная система вопросов и ответов для разработчиков, проводит опрос среди десятков тысяч пользователей с целью выявить современные тенденции развития рынка ИТ-разработки. Результаты опроса 2020 года, в котором поучаствовало 50 тысяч пользователей, уже окрестили в СМИ «захватывающими и раскрывающими суть».

Так, опрос показал, что в подавляющем большинстве случаев JavaScript четвёртый год подряд (столько проводится исследование) остаётся самым популярным языком разработки: более 55,4 процентов респондентов признали, что пользуются именно этим языком программирования.

При этом авторы исследования обращают внимание на падение популярности PHP (-4%) и рост Node.js (+2,9%) и AngularJS (+4,6%).

Самым «обожаемым» языком разработчиков назван Rust, самым «ужасным» — Visual Basic, а самой востребованной технологией — Android.

В топе высокооплачиваемых технологий в США оказались Apache Spark (годовая зарплата специалиста — $125 000), Scala ($125 000), Cassandra ($115 000), F# ($115 000) и Hadoop ($115 000).

В топ-30 остальных стран больше всего получают те, кто владеют F# (131.7% — процент от средней зарплаты разработчика в стране респондента), Dart (131.1%), Cassandra (130.9%), Spark (130.5%), Hadoop (128.5%).

Пожалуй, самой неожиданной стала статистика образовательного уровня разработчиков. 69% респондентов признались, что по крайней мере частично являются самоучками (13% — полностью самоучки). При этом, 43% разработчиков имеют университетский диплом в области компьютерных наук или смежных сферах.

Что касается возраста разработчиков, здесь доминируют две возрастные категории: от 25 до 29 лет (28%) и от 20 до 25 лет (23%).

И на закуску про гендерный баланс. Тот факт, что почти 93 процента респондентов опрос мужчины, говорит о реальности проблемы гендерного равенства, которая всё чаще попадает в повестку дня ИТ-компаний в Кремниевой долине. Правда, как отмечает Stack Overflow, исследование в недостаточной степени представляет положение в азиатских странах (Южная Корея, Индия, Китай), где процент женщин в разработке может быть выше.

Состояние и жизненный цикл

На этой странице представлена концепция состояния и жизненного цикла в компоненте React. Здесь вы можете найти подробный справочник API компонента.

Рассмотрим пример тикающих часов из одного из предыдущих разделов. В разделе Отрисовка элементов мы изучили только один способ обновления пользовательского интерфейса (UI). Мы вызываем ReactDOM.render() для изменения отрисованного вывода:

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

Мы можем начать с инкапсуляции кода в функциональный компонент часов:

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

В идеале мы хотим написать это один раз и иметь само обновление Clock :

Для реализации этого, нам нужно добавить «состояние» к компоненту Clock .

Состояние похоже на свойство, но оно является закрытым и полностью контролируется компонентом.

Мы упоминали ранее, что компоненты, определённые как классы, имеют некоторые дополнительные возможности. Локальное состояние — это как раз одно из них: эта возможность доступна только классам.

Преобразование функции в класс

Преобразовать функциональный компонент, такой как Clock , в классовый компонент можно за пять шагов:

Создать ES6-класс с тем же самым именем, который расширяет React.Component .

Добавить к нему пустой метод render() .

Перенести тело функции в метод render() .

Заменить props на this.props в теле render() .

Удалить оставшиеся пустое объявление функции.

Clock теперь определён как класс, а не функция.

Метод render будет вызываться каждый раз, когда происходит обновление, но пока мы отрисовываем в один и тот же DOM-узел, только один экземпляр класса Clock будет использоваться. Это позволяет использовать дополнительные возможности, такие как локальное состояние и хуки жизненного цикла.

Добавление локального состояния в класс

Мы переместим date из свойств в состояние за три шага:

  1. Заменить this.props.date на this.state.date в методе render() :
  1. Добавить конструктор класса, который устанавливает начальное состояние в this.state :

Обратите внимание, что мы передаём props базовому (родительскому) конструктору:

Классовые компоненты всегда должны вызывать базовый конструктор с передачей ему props .

  1. Удалить свойство date из элемента :

Позже мы добавим код таймера обратно к самому компоненту.

Результат выглядит следующим образом:

Затем мы позволим настроить Clock собственным таймером с обновлением каждую секунду.

Добавление методов жизненного цикла в класс

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

Мы хотим настроить таймер всякий раз, когда Clock отрисовывается в DOM в первый раз. Это называется «монтированием» (установкой) в React.

Мы также хотим сбрасывать этот таймер всякий раз, когда DOM, созданный Clock , удаляется. Это называется «размонтированием» в React.

Мы можем объявить специальные методы в классе-компоненте для выполнения кода, когда компонент устанавливается и удаляется:

Эти методы называются “хуками (методами) жизненного цикла”.

Хук componentDidMount() запускается после того, как вывод компонента отрисован в DOM. Это хорошее место для установки таймера:

Обратите внимание, что мы сохраняем идентификатор таймера в this .

Хотя this.props настраивается самим React, и у this.state есть специальное значение, вы можете добавлять дополнительные поля в класс вручную, если вам нужно сохранить что-то, что не участвует в при выводе данных (например, идентификатор таймера).

Мы удалим таймер в хуке жизненного цикла componentWillUnmount() :

Наконец, реализуем метод tick() , который компонент Clock будет запускать каждую секунду.

Он будет использовать this.setState() для планирования обновлений локального состояния компонента:

Теперь часы тикают каждую секунду.

Давайте быстро повторим, что происходит, а также перечислим порядок, в котором вызываются методы:

Когда передаётся ReactDOM.render() , React вызывает конструктор компонента Clock . Так как Clock должен отображать текущее время, он инициализирует this.state с объектом, включающим текущее время. Позднее мы обновим это состояние.

Затем React вызывает метод render() компонента Clock . Вот как React узнаёт, что должно отображаться на экране. Потом React обновляет DOM, чтобы он соответствовал выводу отрисовки Clock .

Когда в DOM вставлен вывод Clock , React вызывает хук жизненного цикла componentDidMount() . Внутри него компонент Clock указывает браузеру настроить таймер для вызова метода tick() компонента один раз в секунду.

Каждую секунду браузер вызывает метод tick() . Внутри него компонент Clock планирует обновление пользовательского интерфейса, вызывая setState() с объектом, содержащим текущее время. Благодаря вызову setState() React знает, что состояние изменилось, и снова вызывает метод render() , чтобы узнать, что должно отображаться на экране. На этот раз this.state.date в методе render() будет другим, и поэтому вывод отрисованного компонента будет включать обновлённое время. React обновляет DOM соответствующим образом.

Если компонент Clock когда-либо удаляется из DOM, React вызывает хук жизненного цикла componentWillUnmount() , чтобы оставить таймер.

Правильное использование состояния

Есть три детали о setState() , про которые нужно знать.

Не изменяйте напрямую состояние

Например, это не приведёт к повторной отрисовке компонента:

Вместо этого используйте setState() :

Конструктор — единственное место, где вы можете присвоить что-либо this.state .

Обновления состояния могут быть асинхронными

React может выполнять несколько вызовов setState() за одно обновление для лучшей производительности.

Поскольку this.props и this.state могут обновляться асинхронно, вы не должны полагаться на их значения для вычисления следующего состояния.

Например, этот код может не обновить счётчик:

Чтобы исправить это, используйте второй вариант вызова setState() , который принимает функцию, а не объект. Эта функция получит предыдущее состояние в качестве первого аргумента и свойства во время обновления в качестве второго аргумента:

Мы использовали стрелочную функцию выше, но это также работает с обычными функциями:

Обновления состояния объединяются

Когда вы вызываете setState() , React объединяет объект, который вы предоставляете c текущим состоянием.

Например, ваше состояние может содержать несколько независимых переменных:

Затем вы можете самостоятельно их обновлять с помощью отдельных вызовов setState() :

Слияние происходит поверхностное, поэтому вызов this.setState() оставляет this.state.posts нетронутым, но полностью заменяет this.state.comments .

Однонаправленный поток данных

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

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

Компонент может передать своё состояние вниз по дереву компонентов в виде свойства его дочерних компонентов:

Это также работает для пользовательских компонентов:

Компонент FormattedDate получил бы date в своих свойствах и не знал бы, пришло ли оно из состояния Clock , из свойств Clock или было передано напрямую:

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

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

Чтобы показать, что все компоненты действительно изолированы, мы можем создать компонент App , который отрисовывает три компонента :

У каждого компонента Clock есть собственное состояние таймера, которое обновляется независимо от других компонентов .

В React-приложениях, независимо от того, является ли компонент, имеющим состояние или нет, — это рассматривается как деталь реализации компонента, которая может измениться со временем. Вы можете использовать компоненты без состояния в компонентах с состоянием, и наоборот.

Основные библиотеки и фреймворки JavaScript, которые вы должны знать

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

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

Введение

Среда JavaScript стала огромной. Она имеет собственную экосистему библиотек, фреймворков, инструментов, менеджеров пакетов и новых языков, которые компилируются в JavaScript. Интересно, что npm, который является де-факто-менеджером пакетов для JavaScript, также является крупнейшим в мире реестром программного обеспечения. Вот выдержка из публикации, опубликованной на Linux.com еще в январе 2020 года.

В более чем 350 000 пакетов содержит реестр npm, что более чем вдвое больше, чем следующий наиболее популярный реестр пакетов (который является репозиторием Apache Maven). Фактически, в настоящее время это самый крупный реестр пакетов в мире.

Перенеситесь вперед на восемь месяцев, и в настоящее время в реестре npm есть около 500 000 пакетов. Это огромный рост по сравнению с другими репозиториями пакетов.

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

Библиотеки

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

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

React

React — это библиотека JavaScript, созданная разработчиками Facebook и Instagram. Согласно опросу Stack Overflow Survey 2020, React был признан самой популярной технологией среди разработчиков. React также имеет честь быть самым популярным проектом JavaScript, согласно количеству звезд на GitHub.

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

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

Если вы считаете, что «React» — это лучшая вещь, и вы хотели бы изучить « React», ознакомьтесь с нашей учебной серией «React Crash Course for Beginners».

JQuery

jQuery — это библиотека, которая сделала JavaScript более доступным а DOM-манипуляцией проще, чем раньше. Плавная кривая обучения jQuery и простой синтаксис породили на стороне клиента новое поколение новых разработчиков. Несколько лет назад jQuery считался прочным решением для создания надежных веб-сайтов с поддержкой кросс-браузерности. Основные функции jQuery, такие как манипулирование DOM на основе селекторов CSS, обработка событий и создание вызовов AJAX, подпитывали его популярность.

Однако все изменилось, и среда JavaScript постоянно развивается. Некоторые функции jQuery были включены в новую спецификацию ECMAScript. Более того, новые библиотеки и фреймворки, используемые сегодня, имеют собственный способ связывания DOM, и поэтому простые методы манипуляции с DOM больше не требуются. Популярность jQuery находится на спаде, но я не вижу, чтобы эта библиотека исчезла в ближайшее время.

D3: Документы, управляемые данными

D3 (или D3.js) — мощная библиотека JavaScript для создания интерактивных визуализаций с использованием веб-стандартов, таких как SVG, HTML и CSS. В отличие от других библиотек визуализации, D3 предлагает лучший контроль над окончательным визуальным результатом.

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

Если вы хотите создать простые визуализации, не вкладывая слишком много времени в это, вы должны обратить внимание на Chart.js. У нас есть вводная серия про Chart.js, которая охватывает большинство визуализаций, которые вы можете создать с помощью Chart.js

Фреймворки

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

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

Angular

AngularJS когда-то была самой популярной технологией JavaScript среди разработчиков интерфейсов. Он был поддержан Google и сообществом частных лиц и корпораций. Несмотря на популярность, у AngularJS была своя доля недостатков. Команда Angular провела два года работы над новой версией Angular, которая была наконец выпущена в сентябре 2020 года.

Выпуск Angular 2 был переделкой AngularJS. Некоторые из функций Angular 2 включают:

  • TypeScript над JavaScript как язык по умолчанию
  • компонентная архитектура
  • улучшенная производительность как на мобильных, так и на веб-платформах.
  • лучшие инструменты и варианты исходных каркасов

Тем не менее, модернизация от Angular 1.x до Angular 2 является дорогостоящей, потому что Angular 2 — совершенно другой зверь. Это одна из причин, почему Angular 2 не был так сразу же принят, как свой предшественник. Но Angular и AngularJS по-прежнему относятся к числу наиболее часто используемых технологий в соответствии со Stack Overflow (2020). Проект Angular имеет около 28 000 звезд в GitHub.

Vue.js

Vue.js — это легкий JavaScript фреймворк, который активно развивается в этом году. Это самый популярный JavaScript фреймворк на GitHub с точки зрения звезд GitHub. Vue утверждает, что это менее упрямый фреймворк и, таким образом более удобный в использовании. Синтаксис шаблона на основе HTML Vue связывает отрисовываемый DOM с данными экземпляра.

Фреймворк предлагает опыт, похожий на React, с его виртуальными DOM и компонентами повторного использования, которые можно использовать для создания как виджетов, так и целых веб-приложений. Кроме того, вы также можете использовать синтаксис JSX для непосредственного написания функций рендеринга. Когда состояние изменяется, Vue.js использует систему реактивности, чтобы определить, что изменилось и перерисовывает минимальное количество компонентов. Vue.js также поддерживает интеграцию других библиотек во фреймворк без особых хлопот.

Ember.js

Ember.js является фронт-енд фреймворком на основе шаблона Model-View-ViewModel (MVVM). Фреймворк использует стандартный подход к конфигурации, который популярен среди серверных фреймворков таких как Ruby on Rails и Laravel. Ember.js включает в себя общие идиомы и лучшие практики фреймворков, чтобы вы могли получать приложение без особых усилий.

Стек Ember обычно включает:

  • Ember CLI: предоставляет основные варианты каркаса приложения и поддерживает сотни надстроек.
  • Ember Data: библиотека сохранения данных, которая может быть настроена для работы с любым сервером.
  • Ember Inspector: расширение доступное для Chrome и Firefox.
  • Liquid Fire: дополнение для переходов и анимаций.

Инструменты

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

Инструменты: выполнение общих задач

Инструменты, выполняющие общие задачки — это инструменты, используемые для автоматизации определенных повторяющихся задач. В число самых популярных входят:

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

Gulp использует конвейеры для потоковой передачи данных из одного плагина в другой, и конечный результат выводится в папку назначения. Gulp работает лучше по сравнению с Grunt, потому что он не создает временные файлы для хранения промежуточных результатов, что приводит к меньшему количеству вызовов ввода-вывода.

Grunt

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

Gulp и Grunt требуют, чтобы вы потратили время на изучение и освоение нового инструмента, что требует времени. Ввод дополнительных зависимостей в ваш проект можно избежать, выбирая альтернативу, которая уже связана с Node.js. Хотя npm более известен как менеджер пакетов, сценарии npm можно использовать для выполнения основной части вышеупомянутых задач.

Инструменты: тестирование

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

Jest — это относительно новый фреймворк для тестирования, созданный в Facebook и хорошо принятый сообществом React. Существует распространенное заблуждение, что Jest специально разработан для работы с React; однако, согласно документации Jest:

Несмотря на то, что Jest можно рассматривать как фреймворк тестирования специфичный для React, на самом деле это универсальная платформа тестирования, способная адаптироваться к любой библиотеке или фреймворку JavaScript. Вы можете использовать Jest для тестирования любого кода JavaScript.

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

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

Mocha

Mocha — это фреймворк для тестирования JavaScript, который предоставляет поддержку браузера, асинхронные вызовы, включая обещания, отчеты о тестовом покрытии и JavaScript API для запуска тестов. Mocha часто используется с библиотекой утверждений, такой как Chai, should.js, expect.js или better-assert, потому что у нее нет собственной библиотеки утверждений.

Jasmine

Jasmine — это фреймворк для тестирования JavaScript, ориентированный на поведение. Jasmine стремится стать браузером, платформой и независимым от платформы набором тестов. У Jasmine есть своя собственная библиотека утверждений, называемая matchers, которая дает ему чистый и легко читаемый синтаксис. Jasmine не имеет встроенной команды для выполнения тестов, и вам, возможно, придется использовать какую-нибудь общую, например, Karma.

Резюме

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

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

Среда JavaScript определенно развивается, что видно из текущих тенденций в веб-разработке. Старые библиотеки и фреймворки были заменены новыми технологиями. jQuery, которая когда-то была наиболее популярной библиотекой JavaScript, испытывает спад с точки зрения привлекательности, использования и популярности. Новое поколение фронт-енд библиотек, фреймворков и инструментов набирает силу и получает всеобщее признание.

Привыкание к новым тенденциям в технологии также имеет свои преимущества. Задачи по написанию кода, требующие знания React, имеют одни из самых высоких зарплат в отрасли со средней зарплатой в размере 105 000 долларов США в соответствии с Stack Overflow (2020). Поэтому вам нужно продолжить обучение и экспериментировать с новейшими инструментами и фреймворками, чтобы максимально использовать JavaScript.

Если вы считаете, что я пропустил фреймворк JavaScript, библиотеку или инструмент, о которых стоит упомянуть, дайте мне знать в комментариях.

The Brutal Lifecycle of JavaScript Frameworks

JavaScript UI frameworks and libraries work in cycles. Every six months or so, a new one pops up, claiming that it has revolutionized UI development. Thousands of developers adopt it into their new projects, blog posts are written, Stack Overflow questions are asked and answered, and then a newer (and even more revolutionary) framework pops up to usurp the throne.

Using the Stack Overflow Trends tool and some of our internal traffic data, we decided to take a look at some of the more prominent UI frameworks: Angular, React, Vue.js, Backbone, Knockout, and Ember.

Framework lifecycle

Stack Overflow Trends lets us examine how each of these technologies has been asked about over time. We can start by looking at some of the larger frameworks.

There was a time when jQuery was the darling of JavaScript tags on Stack Overflow, accounting for almost 8% of new questions. This picture quickly changed as AngularJS and later React were released, cannibalizing jQuery’s mindshare amongst the community. Then starting around 2020, there is a quick shift from AngularJS to Angular, which represents the subsequent versions (Angular 2+), as developers began to migrate to the latest and greatest flavors of the popular framework from Google.

These larger frameworks show only part of the picture. There also were smaller frameworks vying for dominance. The picture here shows just how brutal the lifecycle can be.

There appear to be two major phases in JavaScript framework usage. There appears to be a quick ascent, as the framework gains popularity and then a slightly less quick but steady decline as developers adopt newer technologies. These lifecycles only last a couple of years. Starting around 2011, there seems to be major adoption of a couple of competing frameworks: Backbone, Knockout, and Ember. Questions about these tags appear to grow until around 2013 and have been in steady decline since, at about the same time as AngularJS started growing. The latest startup is the Vue.js framework, which has shown quick adoption, as it is one of the fastest growing tags on Stack Overflow. Only time can tell how long this growth will last.

By Language or Technology

There are various factors that may go into a developer’s use of one particular front-end framework or another. Developers who primarily work with one programming language or technology may be more inclined to choose a certain UI framework. For instance, we might expect Node.JS developers to choose a different framework than ones who work with Ruby on Rails.

We can get a sense of this by breaking developers into groups based on the tag they most visit, and for each group examine the percentage of traffic that goes to each of these frameworks.

Both TypeScript and CSS users have relatively high traffic to JavaScript frameworks across the board compared to the other technologies we examined. This makes sense as developers who work with these technologies tend to do front-end development, so they’re more likely to use a JavaScript framework. The relationship of Angular to TypeScript is particularly strong as Angular (not AngularJS) is written in TypeScript.

As a gut check, we included C and C++ in this analysis. Since developers who primarily use C and C++ tend to do more systems programming, they are less likely to use a JavaScript UI framework, and this is apparent based on the relatively low percentages across each framework.

Angular and React are by far the most popular across the board, no matter the technology used. It makes sense that they are the clear frontrunners, supported by two of the biggest and most influential companies in tech. Just looking at those two frameworks, Angular is more visited amongst C#, Java, and (to a degree) PHP developers, whereas React is more popular with Rails, Node.js, and Python developers.

There are a couple of interesting observations when we look at some of the less popular tags. Ember.js and Ruby on Rails share a disproportionately strong relationship compared to other technologies. This marriage could be due to some of the philosophical similarities between the two frameworks. Ember was created by Yehuda Katz, a member of the Ruby on Rails core team. Due to this, both Ember and Ruby on Rails advocate a convention over configuration paradigm that make these two technologies complimentary and allow developers to quickly be productive without worrying about the nitty gritty configuration, until they need to.

Unsurprisingly, Knockout.js receives disproportionately more traffic by C# developers, most likely since Knockout is also a Microsoft technology. PHP is also an interesting case. It is designed for and primarily used for web development, but PHP developers are not visiting many Angular or React questions (and not too many to JavaScript frameworks as a whole), but visit a disproportionate amount of Vue.js questions.

Industry

The choice of JavaScript framework also varies by industry, which we can segment for US traffic by matching IP address to companies. Since React and Angular are the most popular frameworks, we compared the traffic to each tag in the median organization within each industry.

What industries tended to use each of these frameworks?

We can tell that the media and retail industries by far tend to use these frameworks and have a higher percentage across the board compared to other industries, as companies in these industries tend to gravitate to newer technologies to bring rich client-side experiences to their users to engage with content and refine the online shopping experience. This contrasts with the academic, government, and healthcare sectors, which appear to have little need for these types of frameworks. This may be because those industries are relatively more concerned with database management or data analysis rather than front-end web development.

The largest outlier and mystery is the insurance industry. Compared to other industries, Insurance companies as a whole seem to use Angular at very high rate, without using much React. We’re still looking further into why this would be the case, but if there are any developers who work for an insurance company reading this, feel free to leave your conjecture in the comments.

React and Angular Usage in the United States

As we have examined in previous posts, choice of programming technologies differ greatly by geography.

So, keeping with the React and Angular theme, which cities in the United States (among the 25 cities with the most visits overall) are more likely to use these frameworks?

Interestingly enough, this group of cities is split fairly evenly between the frameworks, with Dallas and Denver trending more towards Angular and Brooklyn and San Francisco more towards React. I like to think San Francisco and Brooklyn are two of the trendiest cities in the US, and that this is why developers in those cities are also trendy with regards to their choice of framework.

Conclusion

Let me be clear, even though I’m from Brooklyn and have a budding affinity for React, I am not advocating for the use of any framework in particular. Like every technology choice, it’s not about what’s “hot,” but more about identifying tradeoffs and finding the tool for the problem at hand. But let’s be honest, the size of a developer community certainly counts; it contributes to a thriving open source environment, and makes it easier to find help on Stack Overflow.

Whichever JavaScript frameworks you use, if you’re a web developer looking to take the next step in your career, here are some currently companies hiring front-end web developers on Stack Overflow Jobs.

We have something fun for ya. The Stack Overflow podcast is back. Come check it out or listen to the latest below.

Нужны ли нам все еще JavaScript-фреймворки?

Дата публикации: 2020-02-25

От автора: как веб-разработчик, я стараюсь регулярно оценивать свой инструментарий и определять, могу ли я обойтись без того или иного инструмента. Недавно я исследовал, насколько легко разрабатывать сложные приложения без front-end фреймворка JavaScript.

Что такое JavaScript-фреймворк?

В общем, JavaScript-фреймворк — это инструмент, который вы можете использовать для разработки современных веб-приложений, особенно SPA.

В свое время веб-разработчики реализовали логику интерфейса, полагаясь в основном на vanilla JS и jQuery. Но по мере того, как приложения становились все более и более сложными, инструменты для решения этой проблемы стали развиваться.

Популярные на сегодняшний день фреймворки имеют несколько основных общих черт. Большинство интегрированных сред / библиотек, от Vue до React, предоставляют некоторую комбинацию следующего:

Как создать сайт самому?

Какие технологии и знания необходимы сегодня, чтобы создавать сайты самостоятельно? Узнайте на интенсиве!

Синхронизация состояния и представления

Фреймворки все еще необходимы?

Это зависит от. Многие утверждают, что front-end фреймворки не нужны и никогда не были нужны. Другие — что это очень полезные инструменты. Итак, вопрос в том, являются ли фреймворки jQuery сегодняшнего дня? Будут ли они решать важные проблемы?

Трудно сказать, но прогресс нативного JS, спецификации веб-компонентов и легко настраиваемые инструменты сборки сделали разработку SPA без фреймворка простой, как никогда ранее.

Чтобы изучить это глубже, я разработал одностраничное приложение, использующее только стандартный JavaScript, нативные веб-компоненты и Parcel. В процессе возникло несколько сложностей, которые подчеркивали сильные стороны JS.

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

Обзор

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

Экран создания рецепта

Компоненты

Создание веб-компонента также просто. Вы создаете класс, который расширяется HTMLElement (или HTMLParagraphElement и так далее), а затем используете этот класс для определения пользовательского элемента.

Вы также можете использовать хуки жизненного цикла, такие как connectedCallback, disconnectedCallback, attributeChangedCallback.

Компонент My Recipe Item для отображения рецептов в списке

Маршрутизация

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

Первоначально я использовал npm-пакет под названием Vanilla JS Router. С помощью API истории браузера не так уж и сложно реализовать собственный контент менее чем в 100 строках кода! Примечание: я не реализую действительно сложную логику, такую как гард маршрута.

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

Переосмысление

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

Минусы

Спецификация все еще развивается

Спецификация веб-компонентов является и старой, и новой. Она используется уже намного дольше, чем я первоначально думал. Веб-компоненты были впервые представлены Алексом Расселом на конференции Fronteers 2011. Тем не менее, за последние год или два, их востребованность существенно возросла. Таким образом, в спецификации все еще много неразберихи. Например, импорт HTML является устаревшим, хотя большая часть документации / ресурсов по-прежнему ссылается на него.

Тестирование

Как создать сайт самому?

Какие технологии и знания необходимы сегодня, чтобы создавать сайты самостоятельно? Узнайте на интенсиве!

Существует не так много выделенных ресурсов для тестирования нативных веб-компонентов. Есть несколько многообещающих инструментов, таких как skatejs ssr и web component tester от Polymer. Но эти инструменты на самом деле предназначены для использования с соответствующими библиотеками. Это создает некоторые трудности для их использования с нативными веб-компонентами.

Обнаружение изменений

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

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

Shadow DOM

Я действительно в растерянности по поводу Shadow DOM. С одной стороны, мне нравится идея инкапсуляции. Это разумный шаблон проектирования, который делает каскад стилей более управляемым, упрощает задачи и так далее. Однако это также создает проблемы, когда вы хотите, чтобы определенные вещи проникали в эту инкапсуляцию (например, разделяемая таблица стилей), и о том, как лучше всего это сделать, ведутся постоянные споры.

Генерация структур DOM

Часть великолепия фреймворков / библиотек, таких как Angular и React, заключается в том, что они работают со своим DOMain. То есть они отлично справляются с эффективным рендерингом и рендерингом структур в DOM. Из блога Angular University: Angular не генерирует HTML, а затем передает его в браузер для анализа, вместо этого Angular генерирует структуры данных DOM напрямую!

Например, Angular, в отличие от jQuery, визуализирует структуры данных DOM напрямую. То есть, вместо того, чтобы передавать HTML в браузер, он должен быть проанализирован, а затем преобразован в структуры данных DOM. Это более эффективно, так как устраняет этот шаг анализа. Виртуальный DOM также весьма полезен, поскольку он позволяет вам не перерисовывать все каждый раз, когда вам нужно обновить представление.

Мастер Йода рекомендует:  Как объединить ячейки в таблице HTML

Плюсы

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

Размер пакета

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

Размер пакета Angular

Пакет приложения рецептов

Примечание. Это обновленные оптимизированные размеры пакетов.

Понимание

Если вы на самом деле разрабатывали только с помощью фреймворка и его интерфейса командной строки, это может быть отличным упражнением для создания веб-приложения без дополнительных инструментов. Как человеку, который хочет достичь определенного уровня мастерства (насколько это возможно) в веб-разработке, мне было важно получить больше практического опыта с инструментами сборки, API-интерфейсами браузера, шаблонами проектирования и т. д.

Производительность

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

Похоже, что команды Angular и React знают об этих подводных камнях и предоставляют в качестве средства дальнейшей оптимизации производительности такие вещи, как переопределения методов shouldUpdate и onPush ChangeDetection.

Простота и управление кодом

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

Примечания

У меня был отличный опыт работы с Parcel. Иногда он немного более ограничен, чем Webpack, когда пытается обойти определенные пограничные случаи, но я обнаружил, что утверждение ‘zero config’ по большей части справедливо.
Мне также ясно, что многие называют React «библиотекой», а Vue — «прогрессивным» фреймворком. Хотя я понимаю причины этого, я думаю, что React, Vue и Angular решают во многом те же проблемы. Таким образом, я рассматриваю их все вместе, как «фреймворки».

Почему бы не использовать Stencil or Polymer? Я хотел по возможности избегать использования пакетов, библиотек и фреймворков. И посмотреть, насколько стали хороши веб-стандарты, чтобы соответствовать современным потребностям разработкам (не учитывая инструментов сборки).

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

Подводя итоги

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

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

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

Заключение

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

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

Автор: Luke Joliat

Редакция: Команда webformyself.

Как создать сайт самому?

Какие технологии и знания необходимы сегодня, чтобы создавать сайты самостоятельно? Узнайте на интенсиве!

Игра фреймворков: тренды JavaScript в 2020

TypeScript против ES6, React против Angular, Jest против Mocha… Не хуже нашумевшего сериала, эти «битвы» держат поклонников JavaScript в напряжении, заставляя их задумываться: «Что же учить дальше?» К тому же, армии пользователей каждой из технологий приводит настолько убеди.

Подробности на сайте: habr.com

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

BI: 6 трендов в сфере бизнес-аналитики Технологии BI применяются бизнесом уже не один десяток лет. Однако сегодня с развитием облачных технологий, BigData и машинного обучения BI выходит на новый уровень. К чему это ведет и какими станут практики BI в ближайшие годы — читайте в нашем посте. Под катом — немного ис.

Тренды 2020 от пользователей hh.ru Заголовок в стиле подкрадывающихся новогодних праздников, но речь пойдет только про сентябрь текущего года в сравнении с аналогичным периодом 2020. Под катом снова паблик репорт про количество поисковых сессий по языкам программирования, вакансий, резюме и немного про зарпла.

Знакомство со статическим анализатором PVS-Studio для Java На протяжении многих лет команда PVS-Studio развивает одноименный статический анализатор. На данный момент анализатор представляет собой сложное программное решение и предоставляет возможность анализа таких языков программирования, как C, C++, C# и Java на платформах Windows.

Стартовал бета-тест цифровой версии настольной игры Покорение Марса от Asmodee Digital Компания Asmodee Digital – лидер в сфере адаптаций настольных игр в цифровой формат. Сегодня она официально запустила бета-тест одной из лучших настольных игр последних лет — Покорение Марса (Terraforming Mars). В этой игре вам предстоит сыграть за одну из компаний, которая.

Разговорный BERT — учим нейросеть языку соцсетей Одним из главных событий в области компьютерной лингвистики и машинного обучения в 2020 году был выпуск BERT от Google AI, который признан лучшим докладом года по мнению североамериканского отделения Ассоциации компьютерной лингвистики (NACL). В этой статье мы расскажем об э.

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

[Перевод] Выравнивание лица за одну миллисекунду с помощью ансамбля деревьев регрессии Перевод статьи подготовлен для студентов курса «Математика для Data Science» Аннотация В этой статье рассматривается задача выравнивания лица для одного изображения. Мы покажем, как ансамбль деревьев регрессии можно использовать для прогнозирования положения ориентиров лиц.

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

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

[Перевод] Python как предельный случай C++. Часть 2/2 Продолжение. Начало в «Python как предельный случай C++. Часть 1/2». Переменные и типы данных Теперь, когда мы окончательно разобрались с математикой, давайте определимся, что в нашем языке должны означать переменные. В С++ у программиста есть выбор: использовать автоматичес.

[Перевод] Обзор AI & ML решений в 2020 году и прогнозы на 2020 год: Часть 2 — Инструменты и библиотеки, AutoML, RL, этика в AI Всем привет! Представляю вам перевод статьи Analytics Vidhya с обзором событий в области AI / ML в 2020 году и трендов 2020 года. Материал довольно большой, поэтому разделен на 2 части. Надеюсь, что статья заинтересует не только профильных специалистов, но и интересующихся т.

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

KOST: что входит в новый стек технологий для разработки облачных приложений Рассказываем о его компонентах и перспективах. / фото Gozha Net Unsplash Почему появился новый стек Существует множество стеков для разработки программного обеспечения. Один из наиболее известных — LAMP (Linux, Apache HTTP server, MySQL, PHP). На нем построен сайт «Википед.

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

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

Borderlands ворвалась в тренды PornHub, став популярнее Overwatch и Fortnite Франшиза занимает первое место в категории игр и попала в тренды сайта.

MWC: инструкция по применению 2020 год и новый Mobile World Congress. Все стремятся показать свои новинки, благодаря которым формируются главные IT-тренды на год. Мы тоже участвовали в MWC 2020 и в этом посте поделимся нашими впечатлениями от выставки, расскажем о наших новых разработках, сделаем обзор .

You are supposed to be here! 22 года релизу легендарной игры Duke Nukem 3D «Фактура Дольфа Лундгрена, харизма Шварценегера и чувство юмора Брюса Уиллиса». Сочетание, конечно, убойное. Можно даже сказать — ядерное. Впрочем, нашего героя так и зовут — Ядерный Герцог. Он же — Дюк Нюкем. Брутальный блондин с мощными кулаками, исправно спасающий Землю о.

[Из песочницы] Тренды и прогнозы в Natural Language Processing Тренды и прогнозы в области NLP (Natural Language Processing) Это статья про тренды и прогнозы из нашего сентябрьского Альманаха «Искусственный интеллект» №2, который посвящен обзору рынка технологий и компаний в области NLP и распознавания-синтеза речи в России. Для этого .

[Перевод] Готовимся к 2020 году: 8 трендов клиентской JavaScript-разработки, о которых нужно знать Автор материала, перевод которого мы сегодня публикуем, говорит, что хочет поделиться с читателями прогнозом, который касается развития веб-технологий на ближайшие годы. В частности, здесь речь пойдёт о том, что, по мнению автора, фронтенд-разработчикам, вероятно, стоить нач.

Обзор Drops. Изучаем иностранные языки Сегодня мы проварим о приложении Drops, которое открывает пользователю доступ к изучению иностранного языка — у вас громадный выбор языков, удобная система обучения и отсутствие требований вливать реальные деньги. Разве можно от этого отказаться? Давайте посмотрим, как это в.

[Перевод] Четыре правила интуитивного UX Это советы по улучшению UX ваших проектов БЕЗ многочасовых сессий по изучению пользовательского поведения, бумажного прототипирования или любых других модных словечек. (Серьёзно, поищите «дизайн-мышление». 100500 результатов!) Для кого эта статья? Разработчики. Вы создал.

CRM-тренды 2020: забавно читать, опасно верить Кто чем занимался в праздники, а мы читали прогнозы CRM-ного рынка. Начали мы патриотично и ввели в Яндексе «crm 2020 прогноз», но получили… свою же хабровскую статью от начала 2020 года на 4 месте выдачи. Первые три тоже немного не о том. Ну что же, пошли по англоязычным са.

На мобильных вышла одна из лучших настольных игр для двоих 7 Wonders Duel На мобильных вышла цифровая версия одной из лучших настольных игр для двоих — 7 Wonders Duel. Она основана на известной «7 Чудес», но имеет другие механики, которые идеально подходят для двоих. В этой игре вам предстоит пройти через три исторические эпохи, возводя различные.

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

[Из песочницы] Изучение комбинаторных парсеров с Rust Привет, Хабр! Представляю вашему вниманию перевод статьи «Learning Parser Combinators With Rust». Эта статья учит основам комбинаторных парсеров людей, которые уже знакомы с Rust. Предполагается, что никаких других знаний не требуется, а всё, что не имеет прямого о.

[Перевод] Наследование в JavaScript с точки зрения занудного ботаника: Фабрика Конструкторов Это история об одной очень специальной части JavaScript, самого используемого искусственного языка в мире в настоящее время (2020). В статье представлен своего рода философский взгляд на Наследование в JavaScript, и я смею лишь надеяться, что он основан на самом впечатляюще.

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

Анализ коммитов и pull request’ов в Travis CI, Buddy и AppVeyor с помощью PVS-Studio В анализаторе PVS-Studio для языков С и C++ на Linux и macOS, начиная с версии 7.04, появилась тестовая возможность проверить список указанных файлов. С помощью нового режима можно настроить анализатор для проверки коммитов и pull request’ов. В этой статье будет рассказано.

[Из песочницы] Проект Lenergy, как переосмысление портативных источников питания Привет, Хабр! Хочу рассказать о своём виденье универсального программируемого портативного источника энергии. Как я к этому пришёл, каким в итоге проект стал в железе, для чего он нужен и варианты применения, а так же его дальнейшее развитие. Одной статьи будет явно недостат.

Увеличение установок с помощью привлечения in-app трафика в гиперказуальных играх Гиперказуал – относительно молодая категория мобильных игр, которая стала одним из главных трендов 2020 года, и в текущем году не сдает лидирующие позиции в топ чартах App Store и Google Play по всему миру. В этой статье мы поговорим о том, как живет категория в 2020 г.

Краткая история одной «умной ленты» Социальные сети — это один из наиболее востребованных на сегодняшний день интернет-продуктов и один из основных источников данных для анализа. Внутри же самих социальных сетей самой сложной и интересной задачей в сфере data science по праву считается формирование ленты нов.

PVS-Studio for Java отправляется в путь. Следующая остановка — Elasticsearch Далеко не первый год команда PVS-Studio ведет блог о проверках open-source проектов одноименным статическим анализатором кода. На сегодняшний момент проверено более 300 проектов, а в базу найденных ошибок выписано более 12000 случаев. Изначально анализатор был реализован дл.

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

Обзор игры Photographs – Puzzle Stories для iPhone и iPad Любой поклонник игр скажет, что паззлы не должны сопровождаться глубокой историей. Головоломки привлекают не сюжетом, а необходимостью разгадать конкретную загадку, напрягая мозг. Но Photographs попыталась сломать сложившийся стереотип. Мало того, в игре присутствует сразу п.

Golang: специфические вопросы производительности Язык Go набирает популярность. Настолько уверенно, что появляется все больше конференций, например, GolangConf, а язык входит в десятку самых высокооплачиваемых технологий. Поэтому уже имеет смысл разговаривать о его специфических проблемах, например, производительности. Кро.

Ищем и анализируем ошибки в коде Orchard CMS Эта статья – результат повторной проверки проекта Orchard с помощью статического анализатора PVS-Studio. Orchard это система управления контентом с открытым исходным кодом, которая является частью галереи ASP.NET-проектов некоммерческого фонда Outercurve Foundation. Проверк.

Дайджест статей машинного обучения и искусственного интеллекта Хабр, привет. Отфильтровав большое количество статей, конференций и подписок — собрал для вас все наиболее значимые гайды, статьи и лайфхаки из мира машинного обучения и искусственного интеллекта. Всем приятного чтения! 1. Проекты искусственного интеллекта, с которыми можн.

Тренды рынка геймдев 2020 года IMHO. Децентрализация? Что происходит на рынке игр: Инструменты разработки упрощаются. Количество произведенных игр увеличивается. Steam, App Store, Play Market — трещат от количества игр. Продажи на 1 игру снижаются, маркетинговые расходы студий увеличиваются. Зависимость от магазинов уменьша.

[Перевод] Собеседование: Swift. Вопросы и ответы Языку программирования Swift всего четыре года, но он уже становится основным языком разработки для iOS. Развиваясь до версии 5.0, Swift превратился в сложный и мощный язык, отвечающий как объектно-ориентированной, так и функциональной парадигме. И с каждым новым релизом в н.

[Перевод] 10 самых влиятельных языков программирования последних 50 лет и их создатели В IT-вселенной существует множество языков программирования. С каждым годом их становится всё больше и больше. Например, сравнительно недавно появились языки Scala, Kotlin, Go и Closure. Но история говорит нам о том, что выживут лишь немногие из них. Языки, о которых пойдёт.

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

[Из песочницы] Как я писал ИИ для пошаговой стратегии Всем привет. Думаю, что из заголовка ясно, что речь пойдет о создании искусственного интеллекта(далее просто ИИ), о том какие решения были приняты и что в итоге получилось. Но вначале необходимо ввести Вас в курс дела. Игра написана на языке программирования Lua, поэтому и.

[Из песочницы] Что нужно для разработки игр и кем реально является разработчик игр Большинство людей (нормальных), которые планируют заниматься программированием (как хобби или основной профессией) обычно задаются вопросами: «Что такое программирование?», «Зачем мне нужно программирование?», «Какой язык я буду учить?», «Что я получу в итоге?». Таким был и.

Зачем учить валирийский язык из «Игры престолов» Научиться понимать любимых героев можно всего за 3–4 недели. В качестве бонуса — улучшение памяти и повышение способностей к изучению естественных языков.

Облачные сервисы для игры на слабых ПК, актуальные в 2020 году Объем рынка игр оценивается в $140 млрд. С каждым годом рынок расширяется, свою нишу находят новые компании, развиваются и старые игроки. Один из наиболее активно развивающихся трендов гейминга — облачные игры, когда для запуска новинки не нужны ни мощный ПК, ни консоль п.

Как мы модерируем объявления Каждый сервис, чьи пользователи могут создавать собственный контент (UGC — User-generated content), вынужден не только решать бизнес-задачи, но и наводить порядок в UGC. Плохая или некачественная модерация контента в итоге может уменьшить привлекательность сервиса для поль.

[Перевод] Как генерируются подземелья в Enter The Gungeon В последнее время я много играл в Enter The Gungeon. Это потрясающая, ужасно сложная игра в жанре bullet hell, сильно напомнившая мне Binding of Isaac. Но чем больше я играл в неё, тем больше осознавал малозаметную гениальность дизайна подземелий. Существует много процедур.

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

Пять ключевых трендов ITSM на этот год Говорим о направлениях, в которых развивается ITSM в 2020 году. / Unsplash / Alessio Ferretti Чат-боты Автоматизация позволяет сэкономить время, деньги и человеческие ресурсы. Одним из наиболее перспективных направлений автоматизации становится техподдержка. Компании вне.

[recovery mode] 13 трендов рынка кибербезопасности и защиты информации 2020-2020 Всем привет, меня зовут Александр Дворянский, я коммерческий директор компании «Инфосекьюрити». Сегодня мы рассмотрим основные тренды и векторы развития кибербезопасности, как мировые, так и Российские, которые на мой взгляд будут актуальны в ближайшее время. Читать дальше.

PVS-Studio идёт в облака: Azure DevOps Это вторая статья про использование статического анализатора PVS-Studio в облачных CI-системах, и на этот раз мы рассмотрим платформу Azure DevOps – облачное CI\CD-решение от компании Microsoft. В качестве анализируемого проекта в этот раз рассмотрим ShareX. Читать дальше .

[Перевод] Топ-65 вопросов по SQL с собеседований, к которым вы должны подготовиться в 2020 году. Часть I Перевод статьи подготовлен для студентов курса «MS SQL Server разработчик» Реляционные базы данных являются одними из наиболее часто используемых баз данных по сей день, и поэтому навыки работы с SQL для большинства должностей являются обязательными. В этой статье с вопрос.

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

Новые устройства печати от HP: рафинированно trendy Современные тренды развития принтеров, подчеркнутые CRN, могут удивить (см. «10 трендов рынка печати в 2020 году»). В них, например, нет увеличения качества печати и скорости работы печатающих устройств, но подчеркнуты требования к безопасности девайсов .

Зачем вам учить Go Источник картинки Go — относительно молодой, но популярный язык программирования. По данным опроса Stack Overflow, именно Golang получил третье место в рейтинге языков программирования, которые хотели бы освоить разработчики. В этой статье мы попробуем разобраться в причина.

Как выбрать смартфон в 2020 году Гаджеты становятся все мощнее, но многие даже не используют все их возможности. Как выбрать хороший смартфон и не переплатить за ненужные функции? В статье мы расскажем о топовых характеристиках и трендах 2020 года и дадим пару советов по выбору смартфона – дорогого или бюдж.

[Перевод] Оказывает ли React плохое влияние на Angular? Автор материала, перевод которого мы сегодня публикуем, предлагает поразмышлять о будущем веб-разработки. По мере того, как тренды популярности технологий начинают смещаться в сторону библиотеки React, легко ощутить важность вопроса о том, насколько актуальным, через некотор.

[Из песочницы] Пишем бот для рыбалки в игре Albion Online на языке Python Всем привет, я являюсь счастливым пользователем операционной системы GNU/Linux.И как многим известно, игрушек идущих на линукс без дополнительных танцев с бубном намного меньше чем в «Винде». И еще меньше игр в жанре MMORPG. Однако, где-то пол года или год назад я узнал .

PVS-Studio ROI Время от времени нам задают вопрос, какую пользу в денежном эквиваленте получит компания от использования анализатора PVS-Studio. Мы решили оформить ответ в виде статьи и привести таблицы, которые покажут, насколько анализатор может быть полезен. Мы не можем в статье доказа.

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

Как собрать когорты пользователей в виде графиков в Grafana [+docker-образ с примером] Как мы решили задачу визуализации когорт пользователей в сервисе Promopult c помощью Grafana. Promopult — мощный сервис с большим числом пользователей. За 10 лет работы число регистраций в системе перевалило за миллион. Те, кто сталкивался с подобными сервисами, знают, что .

Анонсирована Evangelion: Battlefields по мотивам известного аниме, релиз в 2020 На Tokyo Game Show показали ролик мобильной игры Evangelion: Battlefields, которая основана на популярной аниме-франшизе. Во время презентации разработчики делали акцент на том, что игроки смогут использовать реальные фигурки в игре, как это происходит с amiibo, но этот тре.

[Перевод] Дизайн геймплея, основанный на принятии решений (Эта статья изначально была опубликована в Gamasutra Online Magazine) Чтобы развить полезное понимание системы, нужно знать, как система работает изнутри, на самом нижнем уровне. Даже полное запоминание каждого входного сигнала и реакции на него, связанной с этой системой.

Использование PVS-Studio при проверке Unreal Engine проектов на операционной системе Windows Данная статья посвящена особенностям проверки Unreal Engine проектов с помощью статического анализатора PVS-Studio на операционной системе Windows: как установить анализатор, как проверить проект, где и как посмотреть отчёт об ошибках. Читать дальше →

Что нового в облаке: 15 материалов о стандартах, инструментах и регулировании Под катом — обзоры облачных решений, кейсы, практические рекомендации и аналитические материалы из нашего блога и Telegram-канала. / фото Dennis van Zuijlekom CC BY-SA Индустрия Куда движется облачная инфраструктура в 2020-м Краткий обзор ключевых облачных трендов этого .

Играем в браузере бесплатно Современные пользователи поголовно играют в игры — на компьютерах, игровых приставках или на смартфонах. Вот только не у всех есть возможность покупать мощное железо или обновлять его каждый год, чтобы запускать сложные проекты. Благо, есть проект https://oigri.com/, который.

[Из песочницы] Английский и айтишник: английскую сову на русский глобус? Люди с техническим складом ума во всем стремятся найти систему. При изучении английского, столь востребованного в IT, многие программисты сталкиваются с тем, что не могут понять, как устроен этот язык, его систему. “Кто виноват?” В чем же проблема? Казалось бы, программист.

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

[Из песочницы] Ещё один манифест Эджайл то, эджайл сё. Про эджайл сейчас не говорит только ленивый. Да и ленивый говорит. Все говорят. Из каждого утюга, даже выключенного из сети, топят за эджайл. Такое ощущение, что просто эпидемия какая-то разразилась. И не подумайте, что я только про ИТ. Коучи учат неофи.

Психология настольной игры: игра и темперамент В общем-то, очевидно, что разным людям нравится разное, и на игры это тоже распространяется. Одна и та же игра у некоторых детей (и взрослых) заходит, у других — нет. По крайней мере отчасти предпочтения в играх определяются темпераментом. 1. Про темперамент Когда мы говори.

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

Использование статического анализатора PVS-Studio при разработке для встраиваемых систем на C и C++ Из этой статьи вы узнаете, как запустить проверку embedded-проекта и как работать с отчетом анализатора. Анализатор PVS-Studio поддерживает ряд компиляторов для встраиваемых систем. В текущей версии возможна проверка проектов при сборке одним из следующих компиляторов под.

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

[Перевод] Особенности рендеринга в игре Metro: Exodus c raytracing Предисловие После выхода последней игры из серии «Метро» я потратил несколько часов на изучение её внутренней работы и решил поделиться тем, что может показаться интересным с технологической точки зрения. Я не буду проводить подробный анализ или изучать дизассемблированный .

[Из песочницы] Создание простой кликер-игры с нуля В последние несколько лет набирают большую популярность игры такого жанра, как «кликеры». Мне самому очень интересно играть в них, но не менее интересно создавать игру — кликер самому. Благодаря такому движку как Unity, создать свой шедевр не составит труда даже простому нов.

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

[Перевод] Сложное модульное архитектурное окружение в UE4 Тайлер Анлауф подготовил подробный анализ модульного окружения ROME: Church of Sant’Ivo созданного им в UE4 и 3ds Max. В статье он рассказывает о предварительном черновом плане (blockout), модульной сборке, освещении, постобработке и многом другом. ROME: Church of Sant’Ivo.

Тренды сферы финансов: крупным компаниям нужно все больше ИТ-специалистов Сфера финансов — высокотехнологичная отрасль. Для того, чтобы пользователи могли не вставая с дивана подать заявку на кредит или купить акции той или иной компании, задействуются различные протоколы передачи финансовых данных (например, FIX, FAST, Plaza II), терминалы, бро.

Оригинальная Dota Auto Chess уже доступна всем на английском языке для Android Несмотря на то что оригинальная Auto Chess пользуется наибольшей популярностью именно в Китае, разработчики понимают, что каждый день задержки глобального релиза дает лишние шансы конкурентам, таким как Arena of Evolution. Поэтому игра уже доступна для скачивания на официаль.

Тренды в управлении документами и хранении данных на 2020 год В этой статье я поделюсь с вами обзором трендов в области управления документами и документаций. В основу материала легли личный опыт и наблюдения, данные из открытых источников, публикации вендоров. «Born-digital» est mort! Vive le «born-online»! История документов от дино.

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

Что нужно знать о JavaScript Engine Switcher 3.0 JavaScript Engine Switcher изначально создавался как вспомогательная библиотека и его развитие во многом определялось потребностями библиотек, которые его использовали. Фактически каждая его мажорная версия решала одну или несколько крупных задач необходимых для дальнейшего.

[Из песочницы] Celery taskcls: новый декоратор, новые возможности Привет, Хабр! Я расскажу тебе историю своего профессионального подгорания. Так вышло, что я терпеть не могу рутинных однообразных действий. У меня за плечами несколько проектов, использующих Celery. Каждый раз, когда задача становится сложнее вывода 2 + 2 = 5, шаблон решения.

[Перевод] Как работает ИИ в игре Hitman (2020) Выпущенный компанией IO Interactive в 2020 году Hitman вернул франшизу к её корням: созданию богатых и интересных сценариев, в которых Агент 47 должен устранять свои цели, часто импровизированным и непрактичным способом. Для решения этой задачи внутри игры применяется множес.

Новые технологии Intel для упаковки чипов Упаковка чипов (chip packaging) играет критически важную, хоть и не всем заметную роль в производстве электроники. Будучи физическим интерфейсом между процессором и материнской платой, упаковка является передаточным звеном для электрических сигналов и питания. Чем выше тре.

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

Нейросеть DeepMind использует StarCraft II, чтобы обучать . Поиск новых способов обучения нейронных сетей становится все более важным, особенно в такой сфере, как беспилотный транспорт. Разработчики придумали несколько изобретательных способов ускорения обучения нейросетей, и один из них напрямую связан с популярной игрой StarCraft I.

[Из песочницы] Пишем «Hello, world!» приложение для web на Haskell (Spock) Мне стало скучно писать на Python, захотелось чего-нибудь необычного. Решил попробовать Haskell. Языка я не знаю, однако просто писать консольные учебные программы, типа вычисления факториала, не хотелось. После изучения довольно большого числа постов про Haskell и его приме.

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

[recovery mode] Сбалансированные показатели сайта. Часть 2: Техническая оптимизация Это вторая выпуск статей о сбалансированных показателях сайта. В первом выпуске речь шла о формировании стратегии продвижения, базиса для всех дальнейших работ. В этот раз поговорим о технической стороне внутренней оптимизации. Нельзя сказать, что это очень большая тема: осн.

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

Иваново! Митап: Как построить карьеру в Digital? Привет, Хабр! В эту субботу 28 сентября в Иванове мы обсудим тренды будущего года в Digital, поговорим о плюсах и минусах работы в профессии, составим стек востребованных знаний и умений. Кто спикер? В качестве спикера выступит гуру digital-индустрии, человек, входящий в T.

Fortnite стала самой успешной игрой в App Store. Сколько она заработала? Мало кто оставил без внимания игру Fortnite — многопользовательский экшен, который буквально покорил App Store. При этом игра вышла на iOS раньше, чем для Android, по причине однородности охватываемой аудитории. Многие уже догадались, что за новым хитом стоят разработ.

Простая игра на SFML Будем делать игру «пятнашки» на языке C++ с использованием библиотеки SFML. Пятнашки — это широко известная головоломка, которая выглядит следующим образом: На игровом поле размером 4х4 случайным образом расположены 15 плашек с номерами от 1 до 15 и одно свободное место. П.

Тренды в Email-маркетинге: нетрадиционная верстка, работа с цветом и типографикой Изображение: Pexels В нашем блоге мы много пишем о внедрении email-маркетинга, использовании этого инструмента для продвижения бизнеса и повышении его эффективности. При этом, пока мы не успели подробнее осветить вопросы, собственно, создания качественных писем. Исправл.

[Перевод] Рендеринг кадра Resident Evil 2 Общие примечания Все результаты получены на довольно старой машине (i7 3770+GTX 770), игра запускалась в DirectX 11 со средним качеством. Для анализа использовались RenderDoc и Nsight. Игра работает на движке Re Engine, ставшем наследником MT Framework — движка предыдущего.

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

[Перевод] Генерация подземелий в Diablo 1 Diablo 1 — это классический roguelike 1996 года в жанре hack and slash. Это была одна из первых успешных попыток познакомить широкие массы с roguelike, которые до этого имели нишевую графику в виде ASCII-арта. Игра породила несколько сиквелов и множество имитаций. Она извес.

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

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

[Перевод] Физика игрового торнадо: как реализована аэродинамика в Just Cause 4 (трафик) Жак Кернер — старший инженер-разработчик ПО в Avalanche Studios. Как будто раньше игра была недостаточно безумной Введение Серия игр Just Cause и Avalanche Studios известны своей технологией открытого мира, обеспечивающего разнообразный и увлекательный игровой процесс. В .

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

[Перевод] Элегантная обработка ошибок в JavaScript с помощью монады Either Давайте немного поговорим о том, как мы обрабатываем ошибки. В JavaScript у нас есть встроенная функция языка для работы с исключениями. Проблемный код мы заключаем в конструкцию try. catch. Это позволяет прописать нормальный путь выполнения в разделе try, а затем разобрать.

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

[Перевод] Как Крис Жуковский учился клиентской поддержке своих игр в аэропорту Это перевод недавнего письма из рассылки от игрового инди разработчика Криса Жуковского [1]. Автор успешно выступал на конференциях, в том числе на GDC [2]. Статьи этого автора пользуются заслуженной популярностью на Гамасутре и регулярно переводятся на русские площадки. В д.

На мобильных вышла American Dad! Apocalypse Soon в стиле Fallout Shelter После выхода Fallout Shelter появилась масса игр с похожим геймплеем, где нужно строить свою базу/замок/бункер. Чего-то кардинально нового в плане игрового процесса они предложить не могут, поэтому привлекают игроков исключительно за счет конкретного сеттинга. American Dad.

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

Как стать более востребованным специалистом в сфере Data Science в 2020 Заголовок этой статьи может показаться немного странным. И вправду: если вы работаете в сфере Data Science в 2020, вы уже востребованы. Спрос на специалистов в этой области неуклонно растет: на момент написания этой статьи, на LinkedIn размещено 144,527 вакансий с ключевым с.

Flare-On 2020 write-up -0x01 — Intro Данная статья посвящена разбору всех заданий Flare-On 2020 — ежегодного соревнования по реверс-инжинирингу от FireEye. В данных соревнованиях я принимаю участие уже второй раз. В предыдущем году мне удалось попасть на 11-ое место по времени сдачи, решив все з.

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

Как я разрабатываю и тестирую API со своим «велосипедом» PieceofScript PieceofScript — простой язык для написания сценариев автоматического тестирования HTTP JSON API. PieceofScript позволяет: описывать методы API в формате YAML, с названием метода на почти естественном языке, что удобно для чтения тестов достаточно гибко описывать модели в.

[Перевод] Обзор AI & ML решений в 2020 году и прогнозы на 2020 год: Часть 1 — NLP, Computer Vision Всем привет! Представляю вам перевод статьи Analytics Vidhya с обзором событий в области AI / ML в 2020 году и трендов 2020 года. Материал довольно большой, поэтому разделен на 2 части. Надеюсь, что статья заинтересует не только профильных специалистов, но и интересующихся т.

[Из песочницы] Учимся стандарту проектирования — Entity Relationship Здравствуйте. Данная статья посвящена одной из самых популярных, а также и многим знакомой, модели проектирования — ER(Entity Relationship), которая была предложена учёным, в области информатики — Питером Ченом, в 1976 году. По ходу статьи простым языком на простых примера.

[Перевод] Создание системы боёв в RPG Боевые системы наших игр Rimelands: Hammer of Thor и Trulon: The Shadow Engine были высоко оценены игроками. Несмотря на то, что это два сильно отличающихся взгляда на систему боя в RPG, они имеют много общего в дизайне механик и иллюстрируют мою личную философию дизайна. В.

Холивар. История рунета. Часть 2. Контркультура: пАдонки, марихуана и Кремль Холивар. История рунета. Часть 1. Начало: хиппи из Калифорнии, Носик и лихие 90-е В конце 90-х монополия интеллектуалов на рунет была нарушена. В царство завлабов и филологов ворвались два юных хулигана — Константин Рыков по кличке Jason Foris, и Егор Лавров по кличке Skele.

Оптический коммутатор TP-Link T2600G-28SQ для сервис-провайдеров: подробный обзор Расширение больших городов и образование агломераций — один из важных трендов социального развития сегодня. Одна только Москва в 2020 году должна расшириться на 4 млн квадратных метров жилья (и это не считая 15 населенных пунктов, которые присоединятся к 2020 году). На всей .

Обзор Sekiro: Shadows Die Twice. Очень сложная игра Есть определенная категория пользователей, которые обожают сложные игры и хотят получать удовольствие не от быстрого прохождения уровней, а от вызова, который игра бросает игроку. Конечно, таких геймеров не так уж много, но армия получилась приличная и для них новый проект л.

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

Игровой сервис Google Stadia предложит геймерам «примерно» по одной бесплатной игре в месяц Об игровом онлайн-сервисе Google Stadia нам известно уже почти всё. Однако, как оказалось, есть у платформы один приятный бонус, о котором ранее не сообщали. Как сообщается, пакет Stadia Pro будет включать «примерно» одну бесплатную игру каждый месяц. Учитыв.

В Apple Arcade добавлено 5 новых игр Вчера в Apple Arcade произошло еженедельное обновление с пятью новыми играми на iPhone, iPad, Apple TV и Mac. В сервисе теперь доступно 94 игры для iOS и tvOS, а также 87 тайтлов на Mac. Выпущенные новинки: The Mosaic от разработчика Raw Fury: Мозаика – это мрачная сюрреали.

[Из песочницы] SpaceVIL — кроссплатфоремнный GUI фреймворк для разработки на .Net Core, .Net Standard и JVM В данной статье я постараюсь рассказать о фреймворке SpaceVIL (Space of Visual Items Layout), который служит для построения пользовательских графических интерфейсов на платформах .Net / .Net Core и JVM. SpaceVIL является кроссплатформенным и мультиязычным фреймворком, в его .

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

Знакомство с ITSM: 10 хабратопиков и экспертных материалов для «быстрого погружения» в тему Это — материалы, которые помогут разобраться в ITSM-трендах и инструментах. / Unsplash / Headway Пять ключевых трендов ITSM на этот год. Наш хабрапост, который мы написали не так давно (после небольшого перерыва с публикациями в нашем блоге на Хабре). Рассказываем о реше.

Сотрудники Microsoft выступили против использования HoloLens в армии, потому что война превращается в компьютерную игру Как минимум 50 сотрудников Microsoft подписали открытое письмо к исполнительному директору Сатье Наделле и главному юрисконсульту Брэду Смиту с требованием отказаться от военного контракта с армией США: «Мы являемся глобальной коалицией работников Microsoft и отказываемся .

Не очередной язык программирования. Часть 3: Физика Третья и заключительная часть серии статей о языке lsFusion (ссылки на первую и вторую части) В ней речь пойдет о физической модели: всем том, что не связано с функционалом системы, а связано с ее разработкой и оптимизацией производительности, когда данных становится слиш.

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

Из риелтора в разработчика игр 2. «Операция: Андроид» Добрый день, Хабр. Две моих предыдущих статьи (раз, два) вы приняли очень тепло и даже выдвинули в топ, поэтому и продолжение не заставило себя ждать. Всего-то полгода, не такой уж и большой срок. Для тех, кто не в курсе – меня зовут Тим, мне 30 лет, я риелтор и сейчас пыта.

[Перевод] Погружение в Move — язык программирования блокчейна Libra от Facebook Далее мы рассмотрим в деталях основные характеристики языка Move и в чем его ключевые различия с другим, уже популярным языком для смарт-контрактов — Solidity (на платформе Ethereum). Материал основан на изучении доступного он-лайн 26-страничного whitepaper-а. Введение Move.

Дайджест разработок и исследований Университета ИТМО: обсуждаем тренды и новые достижения ученых Под катом мы собрали свежие статьи нашего новостного портала — речь пойдет о медицинских достижениях, последних ИТ-разработках, геймдеве и научных исследованиях. Читать дальше →

[Перевод] Семь книг для тех, кто хочет стать гейм-дизайнером В этой статье рассказывается о том, когда и как дизайн игр стал профессией, а также о том, как он сформировался в отдельную дисциплину. Также мы предложим 7 книг, которые нужно прочитать каждому гейм-дизайнеру. Мы объясним, что особо ценного в этих книгах и как они позволят.

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

Constructor Plus — ретро-стратегия в свежем исполнении Недавно мы побывали на закрытом показе игры Constructor Plus. Она представляет собой переиздание оригинальной стратегии Constructor, которая вышла в далеком 1997 году. В этой статье мы расскажем, чем так была популярна игра и что в ней изменилось спустя 22 года. Трейлер .

[Перевод] Анализ 112654 тестовых заданий и тренды рынка труда программистов 2020 года Материал, перевод которого мы публикуем сегодня, посвящён анализу рынка труда разработчиков программного обеспечения. А именно, компания Devskiller, которая работает в сфере рекрутинга, делится здесь результатом исследования 112654 тестовых заданий, которые выполнили програм.

Полное интервью с деканом факультета Python в GeekBrains — как и для чего учить язык начинающим Вчера мы опубликовали первый выпуск в цикле «Кем работать в ИТ». Для него я поговорил с двумя бывшими студентами и деканом факультета Python в GeekBrains. Когда я «смонтировал» рассказы в одну историю, стало жалко, что многое осталось лежать в черновиках. Поэтому сегодня .

Игровой сервис Google Stadia предложит геймерам «примерно» по одной бесплатной игре в месяц Об игровом онлайн-сервисе Google Stadia нам известно уже почти всё. Однако, как оказалось, есть у платформы один приятный бонус, о котором ранее не сообщали. Как сообщается, пакет Stadia Pro будет включать «примерно» одну бесплатную игру каждый месяц. Учиты.

[Перевод] Deno — новый Node.js? В нашем проекте, IDE для работы с API TestMace, в качестве основного языка используется TypeScript, поэтому мы активно интересуемся проектами, связанными с данным языком. Сегодня вашему вниманию представляется перевод статьи об инструменте Deno — runtime для TypeScript (но э.

Элементарно, Watson: вы интегрируетесь с Voximplant Работа с естественными языками (NLU, NLP) – зона активной конкуренции между IT-гигантами. Равно как и развитие ИИ. Ну и, соответственно, пересечение этих множеств – тоже горячая ниша, за которой интересно наблюдать и осваивать новое. Voximplant давно подружился с гугловским.

[Из песочницы] Мой подход к реализации делегатов в C++: вызов функции с неизвестными параметрами во время выполнения Предыстория Мне нравится язык C++. Я бы даже сказал, что это мой любимый язык. Кроме того, для своих разработок я использую технологии .NET, и многие идеи в нём, по моему мнению, просто восхитительны. Однажды мне пришла в голову идея – как реализовать некоторые средства рефл.

[Перевод] Шейдеры 3D-игр для начинающих Хотите научиться добавлять в свою 3D-игру текстуры, освещение, тени, карты нормалей, светящиеся объекты, ambient occlusion и другие эффекты? Отлично! В этой статье представлен набор техник затенения, способных поднять уровень графики вашей игры на новые высоты. Я объясняю к.

Clash of Kings: The West 2.83.1 Clash of Kings The West – в этой игре вы будете не только управлять своей армии и выигрывать войну, но и заботится о жителях своей страны. Вам предстоит не только развивать личные навыки своего персонажа, сделав тем самым его одним из лучших правителей запада, но отстр.

[Из песочницы] Современные методы описания функциональных требований к системам. Алистер Кобёрн. Отзыв по книге и дополнения В книге описан один метод написания части постановки задачи, а именно метод use case. Что это такое? Это описание сценария взаимодействия пользователя с системой (или с бизнесом). Система при этом выступает как черный ящик (и это дает возможность разделить сложную задачу пр.

[Из песочницы] Как внедрить ISO 27001: инструкция по применению На сегодняшний день вопрос информационной безопасности (далее – ИБ) компаний является одним из наиболее актуальных в мире. И это неудивительно, ведь во многих странах происходит ужесточение требований к организациям, которые хранят и обрабатывают персональные данные. В нас.

Dungeon Boss 0.5.11573 Dungeon Boss – крутая эпичная игра в жанре RPG. Собирай армию из мифических героев, снабди их оружие и отправляйся в бой, на встречу приключения. В нашей игре вам на выбор будет выделено более ста разнообразных персонажей. В игре так же огромное многообразие оружия брон.

[Перевод] Стек DOTS: C++ & C# Это краткое введение в наш новый дата-ориентированный технологический стек (DOTS). Мы поделимся некоторыми инсайтами, помогающими понять, как и почему Unity сегодня стала именно такой, а также расскажем, в каком направлении планируем развиваться. В дальнейшем мы планируем.

[Перевод] Современная игра для NES, написанная на Lisp-подобном языке What Remains — это повествовательная игра-адвенчура для 8-битной видеоигровой консоли NES, выпущенная в марте 2020 года как бесплатный ROM, запускаемый в эмуляторе. Она создавалась небольшой командой Iodine Dynamics на протяжении двух лет с перерывами. В настоящий момент игр.

[Перевод] Модели дженериков и метапрограммирования: Go, Rust, Swift, D и другие В некоторых сферах программирования нормально хотеть написать такую структуру данных или алгоритм, которые могут работать с элементами разных типов. Например, список дженериков или алгоритм сортировки, которому нужна только функция сравнения. В разных языках предложены всев.

Что мешает учить иностранный язык Сегодня есть много успешных методик изучения английского. Хочу вставить свои три копейки с другой стороны: сказать о том, что мешает язык учить. Одна из таких помех – мы учим его не тем местом. Речь не о частях тела, а о зонах мозга. Есть в префронтальной коре головного мо.

Подробности Magic: ManaStrike: меньше карт, больше трендов На прошлой неделе издатель Netmarble совместно с Wizards of the Coast анонсировал игру под название Magic: ManaStrike, основанную на вселенной Magic: The Gathering. Теперь он поделился первыми подробностями. Это будет игра с PvP-сражениями в режиме реального времени. Сюда п.

Ticket to Ride.Европа — арифметика, часть вторая Всё ещё продолжаю изучать основы математики и механики в игре. Данная статья является второй в серии (Ссылка на первую часть), в ней продолжается анализ перегонов, попытка их сортировки по потребности, изучение различных способов строительства маршрутов. Если проводить анало.

[Перевод] 5 важных и упущенных навыков, необходимых лучшему разработчику Предисловие Вы видели эти статьи тысячу раз: «10 вещей, которые нужно создать чтобы стать лучшим разработчиком.» «Лучшие фреймворки для изучения в 2020.» «Сделайте это чтобы стать разработчиком Rockstar.» «Прочитайте эти десять технических книг, и Вы станете успешным раз.

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

[Перевод] Сравнение одинакового проекта в Rust, Haskell, C++, Python, Scala и OCaml В последнем семестре университета я выбрал курс компиляторов CS444. Там каждая группа из 1-3 человек должна была написать компилятор из существенного подмножества Java в x86. Язык на выбор группы. Это была редкая возможность сравнить реализации больших программ одинаковой фу.

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

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

Знакомство со статическим анализатором PVS-Studio при разработке C++ программ в среде Linux PVS-Studio поддерживает анализ проектов на языках C, C++, C# и Java. Использовать анализатор можно под системами Windows, Linux и macOS. В этой заметке речь пойдет об анализе кода, написанного на C и C++ в среде Linux. Установка Установить PVS-Studio под Linux можно разными.

[Перевод] Секреты работы с тканью в игре Alan Wake [Программист анимаций компании Remedy Хенрик Энквист рассказал, как его команда создала убедительную симуляцию твидового пиджака главного героя игры в жанре хоррор-триллер Alan Wake.] Главный персонаж нашего экшн-триллера — Алан Уэйк, писатель, попавший в кошмар, где он в.

[Перевод] Почему вам следует использовать pathlib От переводчика: Привет, хабр! Представляю вашему вниманию перевод статьи Why you should be using pathlib и её продолжения, No really, pathlib is great. Много внимания нынче уделяется таким новым возможностям Python, как asyncio, оператору :=, и опциональной типизации. При э.

«Star Wars Jedi: Fallen Order» Разработчик Respawn Entertainment официально объявила что игра готова к запуску. Всем пользователям кто сделал предварительный заказ игры, будет добавлен бонус. Новый скин для космического корабля Mantis. Star Wars Jedi: Fallen Order выходит 15 ноября на ПК, Xbox One и PS4. .

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

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

Oceanhorn обновили для поддержки новых iOS-устройств и улучшили графику Oceanhorn 2: Knights of the Lost Realmбыла одной из самых ожидаемых мобильных игр этого года. А когда стало известно, что она выйдет в составе Apple Arcade, стала еще и негласным флагманом сервиса. К сожалению, игра оказалась лишь набором хороших идей, которые в готовом вид.

Большое интервью про Big Data: зачем за нами следят в соцсетях и кто продает наши данные? Disclaimer. Специалист по Big Data, Артур Хачуян, рассказал, как соцсети могут читать наши сообщения, как наш телефон нас подслушивает, и кому все это нужно. Эта статья — расшифровка большого интервью. Есть люди, которые экономят время и любят текст, есть те, кто не может на.

8 необычных гаджетов от Xiaomi Тренд последних нескольких лет в техносфере — диверсификация. Поэтому не стоит удивляться тому, что производитель смартфонов может быть связан, например, с выпуском музыкальных инструментов. Сегодня это совершенно нормально! Активнее всего следует этому тренду компания Xiaom.

Dota 2 – игра покорившая миллионы Dota 2 является одной из самых популярных онлайн игр, если не самой популярной. Число игроков, которые играют в данную игру неуклонно растет. Несмотря на определенное количество героев и итемов, которые можно использовать в игре, каждая игра непохожа на предыдущую. Практичес.

Мастер Йода рекомендует:  Коротко об игровом балансе

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

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

FIFA 20 поступила в продажу «Каждый год мы стремимся дарить игрокам новые возможности путем добавления нововведений в режимы игры и механики игрового процесса. Именно благодаря этому наша игра становится все более и более аутентичной, – рассказывает Аарон Макхарди, исполнительный продюсер EA Sports FI.

Все тренды продвижения в Instagram в новой книге от Ingate Свежие цифры и факты об аудитории Instagram и разбор трендов 2020 года

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 12. Углубленное изучение VLAN Сегодняшний урок мы посвятим продвинутому изучению VLAN. Прежде чем начать, напомню еще раз, чтобы вы не забывали делиться этими видео с друзьями и ставить лайки на нашем канале YouTube и в группе на Facebook. Сегодня мы изучим три темы: Native VLAN, VTP (VLAN Trunk Protocol.

[Из песочницы] Рендеринг 3D графики с помощью OpenGL Введение Рендеринг 3D графики — непростое занятие, но крайне интересное и захватывающее. Эта статья для тех, кто только начинает знакомство с OpenGL или для тех кому интересно, как работают графические конвейеры, и что они из себя представляют. В этой статье не будет точных .

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

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

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

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

Советы по Fantasy Stars: Battle Arena для успешного старта Fantasy Stars: Battle Arena — это очередная игра, которой не дают покоя лавры Clash Royale, и, что удивительно, она оказалась не только на уровне тайтла от Supercell, но и во многом выглядит более интересно. Эта игра требует более глубокого стратегического мышления и предла.

Russian AI Cup 2020, история 9 места Итак Меня, как и в прошлом году, зовут Андрей Рыбалка, только в этот раз мне 33. И, раз уж я оказался в десятке лучших, я решил снова поделиться своим подходом к написанию игрового бота для Russian AI Cup 2020. В этот раз заданием был футбол. Сама задача несколько напоминала.

Победа на PHDays 9. Делимся лайфхаками в трёх частях. Часть 1 Всем привет! Меня зовут Виталий Малкин. Я руководитель отдела анализа защищённости компании «Информзащита» и по совместительству капитан команды True0xA3. Этой статьей мы начинаем цикл из 3-х материалов, посвящённых нашему выступлению на PHDays IX Standoff. В этой статье мы .

«В день на игры пользователи тратят 1000 лет»: Одноклассники выложили свежие данные о цифрах и трендах Стоит приглядеться — между прочим, Одноклассниками пользуется 41,2% населения России. А это 43 млн человек!

Rise of Civilizations 1.0.15.22 Rise of Civilizations – современная игра стратегия, в которой вы будете управлять огромной империей и собственной армией, для ее защиты. В самом начале нашей игры вы будете выбирать из двадцати персонажей, за кого из них играть. Каждый персонаж обладает индивидуальными.

[Из песочницы] Технологии Яндекс Турбо-страницы и Google AMP для e-commerce Введение Веб разработка давно двинулась в сторону мобильного контента. Тренд последних нескольких лет в пользу трафика с мобильных устройств вместо десктопа, привёл к тому что поисковики сначала стали требовать от сайтов адаптивности и быстрой скорости загрузки, а с 1 июля 2.

ITSM — что это такое и с чего начать внедрение Вчера мы опубликовали на Хабре подборку материалов для тех, кто хотел бы разобраться с ITSM — изучить тренды и инструменты. Сегодня продолжаем рассказывать о том, как интегрировать ITSM в бизнес-процессы компании, и какие облачные инструменты могут с этим помочь. / PxHere .

Сo-creation: так все же, кто должен создать ценность или как не причинить помощь? Сегодня потребители имеют больше возможностей выбора продуктов и услуг чем когда-либо. Магазины, парикмахерские, транспорт, образование, медицина, ИТ-технологии – все это многообразие сферы услуг. Ну, а что такое Сo-creation в современных условиях? Это новый тренд в бизнесе.

Как я патчил Вселенную 🙂 На Хабре достаточно много статей про разработку игр, однако среди них очень мало статей, которые касаются “закулисных” тем. Одной из таких тем является организация доставки, собственно, игры большому количеству пользователей на протяжении длительного времени (год, два, три.

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

Как быстро посмотреть интересные предупреждения, которые выдает анализатор PVS-Studio для C и C++ кода? Время от времени программисты, которые начинают знакомиться с анализатором кода PVS-Studio, спрашивают: «Есть ли список предупреждений, которые точно указывают на ошибки?» Такого списка нет по той причине, что неинтересные (ложные) предупреждения в одном проекте, в другом о.

Английский vs. Эсперанто: за кем будущее? За последние 50 лет позиции английского языка на международной арене усилились до невиданного ранее уровня. На сегодня в мире примерно 378 миллионов людей говорят на английском в качестве родного и еще от 470 миллионов до 1 миллиарда указывают его как второй язык. Что приме.

[Перевод] Что происходит, когда вы отправляете SMS Это третья статья в цикле full-stack dev о секретной жизни данных. Она посвящена сложному и длинному маршруту SMS: набор, сохранение, отправка, получение и отображение. Добавлю немного истории и контекст, чтобы разбавить перечень протоколов. Хотя текст довольно технический, .

Особенности тестирования мобильной ММО Недавно довелось пообщаться с Алексеем Нелюбовым — QA-директором компании Datcroft Games. Сейчас ребята работают над мобильным ММО Action Pixel Wars, проект находится в стадии софтланча. Отдел тестирования сопровождал игру на каждом этапе ее развития, и я решил, что из расск.

Почему не SQL? Без преувеличения можно сказать, что SQL — один из самых распространенных в мире языков. Информационные системы могут быть написаны на Java, Python, JavaScript, C#, PHP и десятке других языков, но SQL база в том или ином виде будет в абсолютном большинстве таких систем. Ср.

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

M1Cloud представила тренды информационной безопасности в облаках на 2020 год Эксперты M1Cloud (Stack Group) рассказали о возможных киберугрозах и трендах по защите информации при размещении …

По Total War:Three Kingdoms вышло два трейлера: особенности управления армией и подробности о наборе за предзаказ Creative Assembly представила пару новых роликов, посвященных будущей стратегии Total War: Three Kingdoms. Первый трейлер посвящен армиям в игре и подробно рассказывает о нюансах управления. В каждой армии будет три генерала, которых снабдят.

Искусственный интеллект на примере простой игры. Часть 2 В этот раз выбрана игра «Змейка». Создана библиотека для нейросети на языке Go. Найден принцип обучения, зависимый от «глубины» памяти. Написан сервер для игры между разработчиками. Читать дальше →

Книга «Kotlin. Программирование для профессионалов» Привет, Хаброжители! Книга Джоша Скина и Дэвида Гринхола основана на популярном курсе Kotlin Essentials от Big Nerd Ranch. Яркие и полезные примеры, четкие объяснения ключевых концепций и основополагающих API не только знакомят с языком Kotlin, но и учат эффективно использо.

Распознавание объектов в режиме реального времени на iOS с помощью YOLOv3 Всем привет! В данной статье мы напишем небольшую программу для решения задачи детектирования и распознавания объектов (object detection) в режиме реального времени. Программа будет написана на языке программирования Swift под платформу iOS. Для детектирования объектов буд.

RECS`2020: решение ECM-задач глазами поставщиков Традиционно после обсуждения на утренней пленарной части трендов и общеметодических вопросов внедрения и применения СЭД/ECM, вторая половина сентябрьской конференции Russian Enterprise Content Summit 2020 (RECS’2020) была посвящена .

Как я перестал бояться и полюбезнее начал относиться к слежке за мной Помню, как, будучи офисным ещё, по большей части, работником, я читал и хейтил обзоры подобных программ, включая некоторые из тех, про которые сам сегодня пишу (за 10 лет рынок софта этой категории не так уж сильно поменялся). Потому что офис, и работа на «дядю», ии даже на .

Уличные IP-камеры Nobelic: тесты, технологии и возможности систем видеонаблюдения Ivideon Наверняка скептики скажут: «Подумаешь, ещё несколько IP-камер. Адаптированы для улицы, и что?» Именно для тех, кто хочет максимально точно и с фактами получить ответ на этот вопрос, мы подготовили обзор. Один из модных нынче трендов — сделать камеру со всеми возможными «ф.

Тренды ИБ в облаках от M1Cloud на 2020 год Эксперты M1Cloud (Stack Group) рассказали о возможных киберугрозах и трендах по защите информации при размещении информационных систем в облачных средах в 2020 году.

Game-турнир для ребят, увлеченных технологиями Игра – лучший способ познакомиться с миром программирования. В Москве благотворительный фонд «Гольфстрим» проведет game-турнир для детей и подростков с ограниченными возможностями здоровья. Мастер-класс позволит ребятам получить новые навыки, найти новых друзей и единомы.

Вместе пытаемся сломать игру «7 на 9» Сегодня будет маленький этюд просто понять, интересно ли вам такое. В общем, есть такой дядька Алексей Савватеев, который читает потрясающий курс по теории игр. Он же написал книгу «Математика для гуманитариев», где очень тонко постебался над всеми гуманитариями. Просто это .

Операция TA505: как мы анализировали новые инструменты создателей трояна Dridex, шифровальщика Locky и ботнета Neutrino География атак группы TA505 за 2020 год Наша команда аналитиков Threat Intelligence из PT Expert Security Center на протяжении полугода следит за активностью киберпреступников из TA505. Сфера интересов злоумышленников — финансовая, а цели расположены в десятках стран на .

Анализируем тональность текстов с помощью Fast.ai В статье пойдет речь о классификации тональности текстовых сообщений на русском языке (а по сути любой классификации текстов, используя те же технологии). За основу возьмем данную статью, в которой была рассмотрена классификация тональности на архитектуре CNN с использование.

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

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

[Из песочницы] Наша с девушкой первая видео игра. Разработка на Unity. Часть 1 Ну как первая… Если не считать релизы только под Android и с десяток заброшенных проектов у финиша, то да, это первая наша игра с замахом больше чем одну платформу. Как же всё начиналось? А всё просто, работали мы значит над другим проектом, назовем его «проект А», работали .

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

Sberbank AI Journey. Как мы учили нейросеть сдавать экзамен Если вы закончили школу уже во времена ЕГЭ, то вам известно, что все задания в нём имеют набор стандартных формулировок и упорядочены по типам. С одной стороны, это облегчает подготовку к экзамену: школьник уже знает, что нужно делать в задании, даже не читая его условия. С .

Опыт перевода большого проекта с Flow на TypeScript JavaScript – это один из языков с динамической типизацией. Такие языки удобны для быстрой разработки приложений, но когда несколько команд берутся за разработку одного большого проекта, лучше с самого начала выбрать один из инструментов для проверки типов. Можно начать р.

Трейлер AMD Ryzen 3000 делает акцент на технологии автоматического разгона и игры AMD представила новый рекламный ролик, посвящённый её новым 7-нм процессорам Ryzen 3000, основанным на архитектуре Zen 2. Это трейлер компания посвятила прежде всего технологиям автоматического разгона Precision Boost 2 и Precision Boost Overdrive, позволяющим оптимизировать.

Мрачную игру о выживании на войне This War of Mine отдают бесплатно Бесплатная еженедельная раздача игр в магазине цифровой дистрибуции Epic Games Store продолжается. Теперь в рамках акции предлагают две игры — This War of Mine и Moonlighter.

Инструменты для запуска и разработки Java приложений, компиляция, выполнение на JVM Ни для кого не секрет, что на данный момент Java — один из самых популярных языков программирования в мире. Дата официального выпуска Java — 23 мая 1995 года. Эта статья посвящена основам основ: в ней изложены базовые особенности языка, которые придутся кстати начинающим “д.

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

Как создать open source проект Уже на этой неделе в Санкт-Петербурге пройдет IT-фестиваль TechTrain. Одним из спикеров будет Ричард Столлман. Embox тоже участвует в фестивале, и конечно мы не могли обойти вниманием тему СПО. Поэтому один из наших докладов называется “От студенческой поделки до opensource.

Как мы разрабатываем персональные товарные рекомендации Наши клиенты-магазины хотят делать крутой маркетинг. Чтобы люди больше покупали, они регулярно шлют им email-рассылки. И каждый раз думают: “Что же написать в письме?”. Можно писать просто: “Покупайте у нас почаще!”, но это не очень-то работает. Идея получше — вставлять в п.

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

Знакомимся с языком Swift на примере игры Snake Всем привет! В преддверии запуска курса «iOS-разработчик. Базовый курс» мы организовали очередной открытый урок. Этот вебинар рассчитан на людей, которые имеют опыт разработки на любых языках и платформах, однако желают ещё изучить язык Swift и освоить разработку под iOS. .

[Перевод — recovery mode ] Веб скрапинг для веб разработчиков: краткое резюме Знание только одного подхода к веб скрапингу решает проблему в краткосрочной перспективе, но все методы имеют свои сильные и слабые стороны. Осознание этого экономит время и помогает решать задачу эффективнее. Многочисленные ресурсы рассказывают об единственно верном мето.

Пишем XGBoost с нуля — часть 1: деревья решений Привет, Хабр! После многочисленных поисков качественных руководств о решающих деревьях и ансамблевых алгоритмах (бустинг, решающий лес и пр.) с их непосредственной реализацией на языках программирования, и так ничего не найдя (кто найдёт — напишите в комментах, может, что.

Gravity Rider 1.13.23 Gravity Rider – это один из самых лучших симуляторов езды на мотоцикле. Крутая графика, разнообразие уровней, а также огромный выбор мотоциклов. Наша игра перенесет тебя в бесконечное космическое пространство. На твой выбор есть множество планет солнечной системы. На к.

Анализ цен криптовалют: тренд на повышение, но не для всех О дальнейших возможных сценариях движения цены биткоина и нескольких популярных альткоинов рассказывает ведущий аналитик RoboForex Дмитрий Гурковский. Биткоин продолжает уверенный рост. Криптовалюте удалось завершить формирование перевернутой модели ”Голова и плечи”. Это ука.

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

Scratch 3.0 расширяет возможности программирования с LEGO® MINDSTORMS Education EV3 и WeDo 2.0 Совместимость третьей версии Scratch с решениями LEGO® Education WeDo 2.0 и LEGO® MINDSTORMS® Education EV3 расширяет образовательные возможности для педагогов и помогает ученикам с легкостью освоить базовые навыки программирования. Scratch 3.0 — новая версия среды прогр.

В анализаторе все должно быть прекрасно: и функциональность, и интерфейс… Изучаем новый интерфейс Solar appScreener 3.1 Как говаривал Генри Форд, все можно сделать лучше, чем делалось до сих пор. Вот и мы так подумали, когда приступили к работе над версией 3.1 нашего анализатора защищенности приложений. Нам ОООЧЕНЬ хотелось сделать наш продукт не только самым крутым по функциональности: напри.

Mail.Ru запустила рекомендательную систему контента Персонализация контента — глобальный тренд в цифровых медиа. Рядовой пользователь интернета ежедневно сталкивается с переизбытком информации и дефицитом времени. Алгоритмы персонализации становятся решением этой проблемы, подбирая нужный контент. Умная лента «Пульс&quot.

[Перевод] Почему Turok: Dinosaur Hunter для N64 на годы опередил своё время Halo компании Bungie или GoldenEye компании Rare часто упоминаются как игры, впервые по-настоящему перенёсшие на консольные платформы высокотехнологичные, качественные FPS, но с этой точки зрения можно заявить, что первой всё-таки была игра Turok: Dinosaur Hunter для N64 от.

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

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

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

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

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

[Из песочницы] Опыт создания игры для Android в одиночку с нуля и как ее зафичерили на Google Play Привет! Меня зовут Ибрагим, я — начинающий инди-разработчик. У меня всегда было желание заняться программированием, но меня отпугивала сложность и неопределенность выбора (что именно изучать и делать). И лишь 2 года назад я все-таки преодолел этот психологический барьер, смо.

[Перевод] Thinking with Portals: создаём порталы в Unreal Engine 4 В этой статье я расскажу, как создавать порталы в Unreal Engine 4. Я не нашёл никаких источников, подробно описывающих такую систему (наблюдение сквозь порталы и проход через них), поэтому решил написать собственную. Что такое портал? Давайте начнём с примеров и объяснения.

Разбираем возможности конвертирования HTML в PDF браузером Google Chrome Недавно в одном стартапе я решал задачу генерации билетов в формате PDF. На тот момент уже был готов сайт с устоявшимся стеком технологий, поэтому я искал подход, который бы не потребовал использования дополнительных инструментов. В итоге я предложил сперва создавать билеты.

[Перевод] Что такое качественная idle-анимация? Разработчики делятся своими любимыми примерами Создание связи игрока с персонажем, раскрытие подробностей его личности, чтобы он был для игрока уникальным — сложная задача, и как решить её всего несколькими простыми движениями? Анимации ожидания (Idle animations), эти небольшие всплески движения, когда игрок ненадолго .

Хидео Кодзима показал 40-минутный геймплей игры Death Stranding 5 октября в рамках выставки Игромир 2020 состоялся закрытый показ игры Death Stranding. Сам Хидео Кодзима сказал, что работа над игрой уже закончена и он очень рад лично представить игру в России. В сети уже появилось 49-минутное видео с игрой на японской языке, с которым.

MediaTek представила 7-нм процессор со встроенным модемом Helio M70 5G Технология 5G — новый тренд в мобильной индустрии. Мы уже видели несколько смартфонов с поддержкой 5G, таких как Galaxy S10 5G, Huawei Mate 20 X 5G и даже OPPO Reno 5G. Но у них один общий недостаток — очень большая цена. ***

ITIL4 и ожидания Нужно ли изучать ITIL4 только после того, как изучите ITIL V3? Вопрос возник не случайно, и мы его не придумали сами. Как показал опыт проведения ITIL4 Foundation, заметная часть слушателей полагает, что ITIL4 представляет собой что-то вроде «следующего шага» пос.

Еще один вариант среды для разработки WordPress (docker, wp-cli) Есть официальные образы для развертывания WordPress и использования wp-cli. Но при их совместном использовании мне приходилось расшаривать всю папку WordPress и хотелось, чтобы было больше возможностей для кастомизации установки. Очень хотелось после запуска контейнера видет.

Школьников из Москвы будут учить созданию компьютерных игр В Москве стартовала летняя смена под названием «КиберЛето», нацеленная на школьников 12-16 лет, которых бесплатно учат делать компьютерные игры и программы. Они получают навыки, которые являются необходимыми для современных профессий. Запуск летней смены «КиберЛето» произвед.

Результаты тестирования Ryzen 3900X и Core i9-9900K с RTX 2080 Ti в стоке и разгоне в 36 играх Битва, которая не нуждается в дальнейшем представлении: сравнение Ryzen 9 3900X лицом к лицу с Core i9-9900K в 36 играх. Эта статья посвящена исключительно производительности процессоров в компьютерных играх. Чтобы узнать больше о возможностях последней серии Ryzen, ознакомь.

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

Возглавьте армию зомби в оригинальной стратегии Zombie Night Terror Помните ли вы старую игру под названием Stubbs the Zombie in Rebel Without a Pulse? Это один из немногочисленных проектов, где зомби нужно было не истреблять, а играть за одного из них. Zombie Night Terror – игра, в которой под вашим управлением тоже окажутся ходячие мертвец.

Копия популярной игры попала в Google Play и заразила тысячи Android-смартфонов Несмотря на то что подавляющее большинство приложений из Google Play являются безопасными, иногда среди них попадаются вредоносные программы. Чтобы обойти контроль со стороны модераторов каталога, который, прямо скажем, не так уж и строг, разработчики сначала размещают в ас.

Tic Tac Toe, часть 2 Продолжение статьи Tic Tac Toe, часть 1, в которой мы начали разработку этой игры на Svelte. В этой части мы доделаем игру до конца. Добавим команды Undo/Redo, произвольный доступ к любому шагу игры, попеременные ходы с противником, вывод статуса игры, определение победителя.

bear_hug: игры в ASCII-арте на Python3.6+ Для своих игр в ASCII-арте я написал библиотеку bear_hug с очередью событий, коллекцией виджетов, поддержкой ECS и прочими полезными мелочами. В этой статье мы посмотрим, как с её помощью сделать минимальную работающую игру. Читать дальше →

Как мы внедряли Agile-testing Привет! Меня зовут Алёна Исакова, я ведущий тестировщик в Авито, и я хочу рассказать вам про свой опыт введения Agile-тестирования в команду. Когда я читала доступные на русском языке статьи про Agile-тестирование и ATDD, у меня сложилось впечатление, что я «не модная», «не .

Видео: AMD — об оптимизациях Radeon в Resident Evil 2 и наилучших настройках Запуск ремейка Resident Evil 2 от издательства Capcom состоялся. Критики и игроки в целом остались в восторге от переосмысления ужасов о зомби-апокалипсисе. На агрегаторе оценок OpenCritic средний рейтинг Resident Evil 2, основанный на 96 рецензиях, составил 92.

Деревянные игрушки, часть шестая — 1992 Игры начинают становиться всё менее деревянными, в некоторых случаях начинает проявляться оказуаливание — упор на графику и упрощение игрового процесса в сравнении с предыдущими играми этого жанра. В минимальных требованиях появляется «4MB RAM». Но я про всё это не особо в к.

[recovery mode] «Жить в кайф» или моя история от прокрастинации к саморазвитию Здравствуй, друг. Сегодня речь не пойдет о сложных и не очень аспектах языков программирования или каком-то Rocket Sience. Сегодня я расскажу тебе короткую историю о том, как я встал на путь программиста. Это моя история и ее уже не изменишь, но если она поможет хотя бы одн.

4 июня выйдет Bewildebots — качественная головоломка для фанатов сложных загадок Во время Global Game Jam (тип мероприятий, когда разработчики собираются, чтобы за короткое время создавать игры) в 2020 году группа разработчиков создала проект Buddy System, который перерос в полноценную игру Bewildebots. Ее релиз ожидается 4 июня в App Store. По аналогии.

Заметки product manager’a: поведение пользователей на страницах игр в app store. Сколько надо времени чтобы скачать игру В интернете большое количество информации о том, как правильно паблишить мобильные игры, как делать для них маркетинг, что размещать на страницах магазинов, однако большое количество нюансов незаметны сразу. В данной статье я поделюсь своими заметками и инсайтами, которые бы.

Юмористический симулятор создателя армии зомби Zombie Night Terror выйдет 21 мая на мобильных Большая часть зомби-игр посвящена истреблению ходячих мертвецов, но в Zombie Night Terror ваша задача — провести самую захватывающую ночь в своей жизни, распространяя эпидемию и создавая армию голодной нежити. Итак, вы осознали, что единственный способ выжить в зомби-апокал.

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

Курсоры БД в Doctrine Используя курсоры, вы сможете порционно получить из БД и обработать большое количество данных, не расходуя при этом память приложения. Уверен, перед каждым веб-разработчиком хотя бы раз вставала подобная задача, передо мной тоже — и не раз. В этой статье я расскажу, в каких.

[Перевод] Как бы выглядела интернет-система в игре EvE Online EvE online — увлекательная игра. Это одна из немногих ММО, в которых есть только один «сервер» для входа, что означает, что все играют в одном и том же логическом мире. У нее также был захватывающий набор событий, которые произошли внутри игры, и также она остается очень виз.

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

Клон Auto Chess, Arena of Evolution: Chess Heroes, теперь доступен в России на русском языке Auto Chess – набирающий популярность жанр мультиплеерных развлечений, который вырос из пользовательского мода для Dota 2, как когда-то сама Dota появилась из карты-модификации для Warcraft III. Пока что самым популярным представителем жанра является одноименная Dota Auto Ch.

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

Как добавить проверки в NoVerify, не написав ни строчки Go-кода В статическом анализаторе NoVerify появилась киллер-фича: декларативный способ описания инспекций, который не требует программирования на Go и компиляции кода. Чтобы вас заинтриговать, покажу описание простой, но полезной инспекции: /** @warning duplicated sub-expressions in.

The Great Perhaps: обзор новой игры от российской инди-студии Знаете, как обычно бывает — вы запускаете игру и первое, что видите — вступительный ролик с лором, с ужасным дубляжом и без субтитров, пропускаете его, чтобы пойти в настройки и включить оригинальную озвучку и субтитры, а затем ищете, как бы перезапустить ролик? Для меня, на.

Дайджест продуктового дизайна, январь 2020 Дайджест собирает свежие статьи по дизайну интерфейсов, а также инструменты, паттерны, кейсы, тренды и исторические рассказы с 2009 года. Я тщательно фильтрую большой поток подписок, чтобы вы могли прокачать свои профессиональные навыки и лучше решить рабочие задачи. Предыду.

Дайджест продуктового дизайна, март 2020 Дайджест собирает свежие статьи по дизайну интерфейсов, а также инструменты, паттерны, кейсы, тренды и исторические рассказы с 2009 года. Я тщательно фильтрую большой поток подписок, чтобы вы могли прокачать свои профессиональные навыки и лучше решить рабочие задачи. Предыду.

Дайджест продуктового дизайна, июнь 2020 Дайджест собирает свежие статьи по дизайну интерфейсов, а также инструменты, паттерны, кейсы, тренды и исторические рассказы с 2009 года. Я тщательно фильтрую большой поток подписок, чтобы вы могли прокачать свои профессиональные навыки и лучше решить рабочие задачи. Предыду.

Дайджест продуктового дизайна, июль 2020 Дайджест собирает свежие статьи по дизайну интерфейсов, а также инструменты, паттерны, кейсы, тренды и исторические рассказы с 2009 года. Я тщательно фильтрую большой поток подписок, чтобы вы могли прокачать свои профессиональные навыки и лучше решить рабочие задачи. Предыду.

Дайджест продуктового дизайна, август 2020 Дайджест собирает свежие статьи по дизайну интерфейсов, а также инструменты, паттерны, кейсы, тренды и исторические рассказы с 2009 года. Я тщательно фильтрую большой поток подписок, чтобы вы могли прокачать свои профессиональные навыки и лучше решить рабочие задачи. Предыду.

Дайджест продуктового дизайна, сентябрь 2020 Дайджест собирает свежие статьи по дизайну интерфейсов, а также инструменты, паттерны, кейсы, тренды и исторические рассказы с 2009 года. Я тщательно фильтрую большой поток подписок, чтобы вы могли прокачать свои профессиональные навыки и лучше решить рабочие задачи. Предыду.

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

Псевдо Lens Flare Привет, Хабр! Представляю вашему вниманию перевод статьи «Pseudo Lens Flare» автора John Chapman. Lens flare (блики на линзах) ― это фотографический артефакт, возникающий при рассеивании и преломлении света в системе линз. Хотя он является артефактом, существует множество.

[Перевод] There vs. Their vs. They’re: Как понять, какое слово использовать Омофоны – одна из сложных тем при изучении английского. При использовании таких слов часто допускают ошибки, ведь они звучат одинаково, но различается их значение. На первый взгляд это может показаться удивительным, но одними из наиболее трудных омофонов для не-носителей я.

Переключение языка в Android-приложении Есть простой способ реализовать переключение языка в Single-Activity приложении. Стек экранов при этом подходе не сбрасывается, пользователь остается там, где переключил язык. При переходе на предыдущие экраны, они сразу отображаются переведенными. А результат локализации ч.

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

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

Чем отличается камера iPhone 11 Pro от камеры iPhone XS Камеры iPhone 11 Pro и 11 Pro Max Если вас спросят, чем iPhone 11 Pro отличается от прошлогоднего iPhone XS, наверняка первым, о чём вы вспомните, будет камера. Ни увеличенная ёмкость аккумулятора, ни 18-ваттный блок питания, ни даже отсутствие 3D Touch. Видимо, сказывается .

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

[Перевод] Полнофункциональная динамическая трассировка в Linux с использованием eBPF и bpftrace «В режиме трассировки программист видит последовательность выполнения команд и значения переменных на данном шаге выполнения программы, что позволяет легче обнаруживать ошибки» — сообщает нам Википедия. Сами будучи поклонниками Linux, мы регулярно сталкиваемся с вопросом, .

Выучить легко английский язык может каждый В современном мире знание английского языка приравнивается к элементарным, базовым знаниям. Это так же важно, как знать родной язык, уметь пользоваться компьютером и смартфоном. Английский сегодня нужен абсолютно каждому. Конкретно вам он тоже нужен, даже если вы об этом п.

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

[recovery mode] Tcl для Cisco IOS в простых примерах Представим, что вам нужно развернуть «с нуля» десяток однотипных access-коммутаторов Cisco. Типовая конфигурация включает имя хоста и домена, шлюз по-умолчанию, пароли, список пользователей, IP-адреса для SVI, номера VLAN’ов, настройки транков аплинков и т.д. Вводить это каж.

Digital Extremes: кроссплей в Warframe — одна из самых рискованных вещей Творческий директор Waframe Стив Синклер (Steve Sinclair) честно ответил поклонникам во время первой в 2020 году официальной трансляции, что хотел бы видеть в проекте полноценный межплатформенный мультиплеер, но это очень рискованно. С ростом количества игр с.

Советы по прохождению Pokémon Rumble Rush: подсказки для начинающих Pokémon Rumble Rush- это свежая экшн-RPG, которая бросает вам вызов и приглашает сразиться с противниками, используя собранных вами покемонов всех возможных видов. Чем сильнее станут обученные вами покемоны, тем более могущественных боссов предложит вам игра. Битвы здесь .

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

[Перевод] Миллионы бинарников спустя. Как укреплялся Linux TL;DR. В этой статье мы исследуем защитные схемы (hardening schemes), которые из коробки работают в пяти популярных дистрибутивах Linux. Для каждого мы взяли конфигурацию ядра по умолчанию, загрузили все пакеты и проанализировали схемы защиты во вложенных двоичных файлах. Ра.

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

Обзор игры Не уходи (STAY) для iPhone и iPad Многие игроки со стажем настолько устают от эффектных спецэффектов, что вспоминают молодость и незамысловатые простые игры. В них главной была не графика, а сюжет. Неслучайно сегодня снова популярным стал жанр текстовых квестов. В таких играх нет трехмерных картинок, фактиче.

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

LG и NAVER разработали браузер с функцией «многозадачность» для использования на двойном экране смартфонов Компания «LG Electronics» (LG) и NAVER — крупнейший оператор поисковых систем в Южной Корее разработали браузер «Whale», который оптимизирован для использования на двойном экране смартфонов компании LG, что выводит многозадачность на совершенно новый уровень, сообщает ITbukv.

ок.tech Data Толк #3: Рекомендательные системы 6 ноября в московском офисе компании Одноклассники состоится ок.tech Data Толк #3, в этот раз мы решили посвятить мероприятие рекомендательным системам. Вместе с коллегами из OK.ru, Joom и СколТеха поговорим про прошедший RecSys19, а также о теории, практике и трендах реко.

Клуб Изучения Приматов теперь и на Android: Do Not Feed The Monkeys вышла в Google Play Спустя две недели после релиза на iOS, издатель Alawar выпустил игру Do Not Feed The Monkeys на Android. В отличие от App Store, в Google Play есть Lite-версия игры, доступная бесплатно. Полная стоит 449 рублей, но в честь релиза ее можно забрать всего за 199 рублей. В D.

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

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

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

Spring Data JPA: что такое хорошо, и что такое плохо Крошка-сын к отцу пришел И спросила кроха — Что такое хорошо и что такое плохо Владимир Маяковский Эта статья о Spring Data JPA, а именно в подводных граблях, встретившихся на моём пути, ну и конечно же немного о производительности. Читать дальше →

Развлечения для самых маленьких: лучшие игры для детей на iOS и Android Давать ребенку смартфон или планшет для того, чтобы он перестал плакать — не самое лучшее проявление родительских качеств. А вот использовать технологии для обучения — очень неплохая идея. Предлагаем вашему вниманию подборку мобильных игр для самых маленьких и тех, кто поста.

Шаблоны в управлении Всем привет. Это очередной выпуск про управление клиентским опытом. (Р) — Роман Нохрин — Задает вопросы, (А) — Арсен Даллакян, управляющий партнер консалтинговой компании Russian Behavioral Unit — отвечает. (Р) Последние годы самые популярные слова — agile, CJM, фреймворк. .

Askozia. Как работает Autoprovisioning Plug & Play При разработке АТС Askozia мы столкнулись с задачей по автоматической настройке телефонов и решили ее по-своему. Autoprovisioning Plug & Play (PnP), эту технологию поддерживают многие производители — Yealink, Snom, Fanvil. Основные достоинства автоматической настройки .

[Перевод] Как заставить игру работать с частотой 60fps Представьте себе задачу: у вас есть игра, и вам нужно, чтобы она работала с частотой 60 fps на 60-герцовом мониторе. Ваш компьютер достаточно быстр для того, чтобы рендеринг и обновление занимали несущественное количество времени, поэтому вы включаете vsync и пишете такой иг.

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

Отказоустойчивый кластер PostgreSQL + Patroni. Опыт внедрения В статье я расскажу, как мы подошли к вопросу отказоустойчивости PostgreSQL, почему это стало для нас важно и что в итоге получилось. У нас высоконагруженный сервис: 2,5 млн пользователей по всему миру, 50К+ активных пользователей каждый день. Сервера находятся в Amazone в .

Книга «Классические задачи Computer Science на языке Python» Многие задачи в области Computer Science, которые на первый взгляд кажутся новыми или уникальными, на самом деле уходят корнями в классические алгоритмы, методы кодирования и принципы разработки. И устоявшиеся техники по-прежнему остаются лучшим способом решения таких задач.

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

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

Stardew Valley скоро выйдет на Android, предварительная регистрация открыта У Stardew Valley за 3 года с момента релиза на ПК почти 100 000 отзывов. 96% из них — положительные. На iOS игра тоже была очень тепло принята, а сегодня разработчик анонсировал ее и для Android. Эта мобильная версия будет основана на патче 1.3, но без мультиплеера. Поддерж.

[Из песочницы] Будущее ритейла: основные диджитал-тренды по мотивам NRF Retail’s Big Show 2020 Завершилась крупнейшая в мире ритейл-конференция и экспо ― NRF Retail’s Big Show 2020, проходившая с 13 по 15 января в Нью-Йорке. Мы побывали на выставке и постарались узнать о всех инновациях в области ритейла и технологиях создания лучшего клиентского опыта. Что ждет .

В какие игры из Apple Arcade можно бесплатно поиграть уже сейчас Apple Arcade Вчера, на три дня раньше срока, Apple запустила Apple Arcade. Несмотря на то что сервис стал доступен только владельцам iPhone под управлением iOS 13, на этом ограничения, скорее всего, заканчиваются, а значит, релизная версия площадки практически не будет отлич.

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

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

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

[Перевод] Мегапакет: как разработчикам Factorio удалось решить проблему с мультиплеером на 200 игроков В мае этого года я участвовал в качестве игрока в MMO-мероприятии KatherineOfSky. Я заметил, что когда количество игроков достигает определённого числа, через каждые несколько минут часть из них «отваливается». К счастью для вас (но не для меня), я был одним из тех игроков.

Сoncurrent collections за 10 минут Photo by Robert V. Ruggiero Тема не новая. Но задавая вопрос “что такое concurrent collections и когда их использовать?” на собеседовании или code review, я почти всегда получаю ответ, состоящий из одного предложения: “они полностью защищают нас от race conditions” (что не.

Дайджест продуктового дизайна, апрель 2020 Дайджест собирает свежие статьи по дизайну интерфейсов, а также инструменты, паттерны, кейсы, тренды и исторические рассказы с 2009 года. Я тщательно фильтрую большой поток подписок, чтобы вы могли прокачать свои профессиональные навыки и лучше решить рабочие задачи. Предыд.

Тренды информационной безопасности в облаках от M1Cloud на 2020 год Эксперты M1Cloud (Stack Group) рассказали о возможных киберугрозах и трендах по защите информации при размещении информационных систем в облачных …

10 бизнес-трендов 2020 года, которые должен знать каждый предприниматель В 2020 году малый бизнес в России регулируется всё жёстче. Чтобы преуспевать, нужно внимательно следить за последними изменениями в законах и тенденциями, иначе есть риск остаться за бортом.

Хакатон, питчинг и Чернобыль: в Киеве пройдет четвертая Crypto Games Conference С 10 по 11 октября в Киеве пройдет масштабная международная конференция, посвященная блокчейну, цифровым активам, а также VR, AR, искусственному интеллекту и другим передовым технологиям в играх Crypto Games Conference. Мероприятие соберет около 1500 гостей из более чем 50 с.

Как работать с Google Trends — полное руководство для новичков Привет, Хабр! Заметил, что многие не знают, как работать с трендами в интернете. И тем более, не знают о существовании бесплатного сервиса, решающего эту проблему- Google Trends Сервис поможет узнать, что волнует ваших клиентов сегодня, интересен ли ваш товар рынку, как.

[Из песочницы] Антипаттерны в React или вредные советы новичкам Привет, Хабр. Ровно год прошел с момента, как я начал изучать React. За это время я успел выпустить несколько небольших мобильных приложений, написанных на React Native, и поучаствовать в разработке web-приложения с использованием ReactJS. Подводя итог и оглядываясь назад н.

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

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

Новая мобильная игра «Очень странные дела» позволит оказаться по ту сторону Финский разработчик Next Games сотрудничает с Netflix для создания мобильной игры «Очень странные дела», которая точно понравится поклонникам Pokémon Go

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

Библиотеки Electronic Arts почти хорошего качества Наше внимание привлёк репозиторий Electronic Arts на GitHub. Он очень маленький и из двадцати трёх проектов нас заинтересовали только несколько C++ библиотек: EASTL, EAStdC, EABase, EAThread, EATest, EAMain и EAAssert. Проекты оказались тоже очень маленькими (около 10 файлов.

Язык программирования Ü. Введение, мотивация к созданию, цели Введение С 2020-го года (с перерывами) я разрабатываю собственный язык программирования. Название данного языка — «Ü». Почему Ü? Потому, что хотелось однобуквенного названия, а все буквы из набора A-Z уже заняты. Данная статья имеет задачу ознакомить публику с данным языко.

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

[Перевод] Создание игры для Game Boy, часть 2 Несколько недель назад я решила поработать над игрой для Game Boy, создание которой доставило мне большое удовольствие. Её рабочее название «Aqua and Ashes». Игра имеет открытые исходники и выложена на GitHub. Предыдущая часть статьи находится здесь. Фантастические спрайты.

Пишем защиту от DDoS-атак на XDP. Ядерная часть Технология eXpress Data Path (XDP) позволяет выполнить произвольную обработку трафика на интерфейсах Linux до того, как пакеты поступят в сетевой стек ядра. Применение XDP — защита от DDoS-атак (CloudFlare), сложные фильтры, сбор статистики (Netflix). Программы XDP исполняют.

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

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

Стартовал ЗБТ симулятора менеджера киберспортивной команды RIVALS — eSports MOBA Manager на Android Киберспорт стал уже настолько популярным, что разработчики начали создавать симуляторы киберспортивных команд. Пока это делает только одна студия, META Games, которая создает проект под названием RIVALS – eSports MOBA Manager. Как можно понять из названия, в этой игре вам п.

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

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

Код блокировки в iOS: как в Apple перешли от эшелонированной обороны к охране единственного рубежа В прошлой статье я рассказал о режиме ограничения доступа к аксессуарам в устройствах под управлением iOS. В статье я акцентировал внимание на особенности iOS, которая ставит безопасность данных пользователя в зависимость от единственного «непреодолимого» защитного рубежа: к.

[Перевод] JavaScript-движки: как они работают? От стека вызовов до промисов — (почти) всё, что вам нужно знать Вы когда-нибудь задумывались, как браузеры читают и исполняют JavaScript-код? Это выглядит таинственно, но в этом посте вы можете получить представление, что же происходит под капотом. Начнём наше путешествие в язык с экскурсии в удивительный мир JavaScript-движков. Читать.

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

[Из песочницы] Матрёшка Си. Слойная система языка программы Попробуем представить химию без Периодической системы Менделеева (1869). Сколько же элементов надо было держать в голове, причём в произвольном порядке… (Тогда — 60.) Для этого достаточно подумать об одном или нескольких сразу языках программирования. Те же чувства, тот же.

Почему некоторые мобильные игры становятся настолько успешными? В Google Play больше миллиона игр, все они разнообразны, но почему-то лишь единицы становятся успешными. Индустрия мобильных игр получает в год 63,2 миллиарда долларов, и это огромные цифры. Основной доход, конечно же, приходится на крупные проекты, такие как PUBG или Fortn.

Loli — новый высокопроизводительный язык В этой статье мы поговорим о новом интерпретируемом языке Loli, рассмотрим синтаксис и сравним с языками C и Python. Читать дальше →

[recovery mode] Google BERT — новый поисковый алгоритм. Как изменится ранжирование и что делать сейчас? Google не устает радовать своих пользователей и официально представил новый поисковый алгоритм – Google BERT. Что известно об этом и в чем суть? Давайте разбираться. Google BERT-это алгоритм поисковой системы, призванный улучшить релевантность результатов поисковой выдач.

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

[Из песочницы] Сложности корзины интернет-сервиса Интернет сервисы для бронирования услуг путешественнику становятся все изощреннее. Один из последних трендов — это единая корзина. Смысл корзины (единой / мульти, читатель может добавить определения исходя из своих предпочтений) простой — создать возможность, для путешестве.

[Из песочницы] Ретрогейминг: PAL vs NTSC. Или почему PAL не нужен Многие из вас знают про форматы видео как PAL, NTSC и, конечно же, SECAM. Скорее всего эти аббривеатуры вы слышали, когда речь шла о видеотехнике. Толком никто не знал в чем была между ними разница и почему они отличались. Что касательно видеоигровой индустрии, то тут уж точ.

[Перевод] От Uncharted до Obra Dinn: Лукас Поуп рассказывает о своей карьере в разработке игр Слева направо: один из сотен персонажей игры 2013 года Papers, Please; разработчик видеоигр Лукас Поуп в своём родном городе Сайтама (Япония); капитан проклятого пиратского корабля из игры Поупа 2020 года Return of the Obra Dinn Сюжет новой видеоигры дизайнера, программист.

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

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

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

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

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

С игрой Quake II RTX в 4K не справляется даже видеокарта GeForce RTX 2080 Ti Компания Nvidia на днях представила игру Quake II RTX. Это старый добрый Quake II, но с поддержкой эффектов, основанных на трассировке лучей. Официальные минимальные системные требования игры включают видеокарту GeForce RTX 2060. Как оказалось, для игры в 4K недостаточн.

Мастер Йода рекомендует:  Как создать свою собственную операционную систему с нуля

Xiaomi официально подтвердила разработку складного смартфона: 3D-рендеры Складные смартфоны уверенно становятся одним из главных трендов этого года. О разработке таких устройств объявило уже несколько крупных производителей, а теперь к ним присоединилась и китайская Xiaomi. Подробнее об этом читайте на THG.ru.

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

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

Повторное использование форм на React Привет! У нас в БКС есть админка и множество форм, но в React-сообществе нет общепринятого метода — как их проектировать для переиспользования. В официальном гайде Facebook’a нет подробной информации о том, как работать с формами в реальных условиях, где нужна валидация и п.

[Из песочницы] Визуализация количества побед у команд НБА с помощью анимационных столбиковых диаграмм в R Для начала небольшая вводная информация. Меня зовут Владислав и моё знакомство с R состоялось в августе прошлого года. Изучать язык программирования я решил по причине прикладного характера. Мне с детства нравилось вести спортивную статистику. С возрастом это увлечение транс.

Не очередной язык программирования В последнее время на рынке появилось огромное количество новых языков программирования: Go, Swift, Rust, Dart, Julia, Kotlin, Hack, Bosque – и это только из числа тех, которые на слуху. Ценность того, что эти языки привносят в мир программирования, тяжело переоценить, но.

[Перевод] 9 советов по созданию инди-игр от разработчика-одиночки Разработка игр в одиночку предоставляет удивительную свободу творчества и ставит невероятно сложные задачи. Любой, кто работал в соло над проектом (по собственному выбору или ещё по каким-либо причинам), знает как трудно сделать всю работу самостоятельно. Планировать всё и с.

Задержка ввода на ретро-консолях и эмуляторах TL;DR В статье описывается известная проблема задержки ввода (input lag), которая проявляется при попытках играть в старые игры на современном железе: эмуляторах ретро-консолей, bluetooth-геймпадах и т.д. Иногда задержки настолько большие, что играть становится невозможно.

[Из песочницы] Сплайны в 3d графике, максимально автоматизированный вариант С месяц назад начал учить Python по книге Доусона и очнулся уже глубоко в процессе написания своей игры под pygame. ТЗ было таково, что наиболее перспективным показалось сделать игру с псевдо-трехмерной графикой, запихнув в спрайты сохраненные поверхности 3d-сплайнов. О посл.

Про Godot, GLSL и WebGL, шейдеры используемые в мини игре Статья в основном про GLSL-шейдеры, и как я их использовал в этой мини-демке-игре. Статья разбита по такой очередности: Ссылки и краткое описание. Очень краткое описание игровой логики, и используемых возможностей Godot. Про используемые шейдеры. Еще немного про Godot, и е.

[Из песочницы] Сравнение: Svelte и React На сайте React’a есть туториал, в котором описывается разработка игры Tic Tac Toe. Я решил повторить разработку этой игры на Svelte. Статья охватывает только первую половину туториала, до реализации истории ходов. Для целей ознакомления с фреймворком этого вполне достаточно.

Captain We Have A Problem — карточная игра в стиле Reigns в космическом сеттинге на Android Студия DesignLayout выпустила на Android в режиме пробного запуска игру под названием Captain We Have A Problem. Механика напоминает известную многим Reigns, но действие здесь происходит на космическом корабле. Действия игры описываются колодой карт. На каждую из них можно .

[Перевод] Джефф Хокинс наконец готов объяснить свои исследования мозга Джефф Хокинс — ветеран Силиконовой долины, посвятивший последнее десятилетие изучению загадок человеческого мозга, организовал встречу с компанией DeepMind — одной из ведущих ИИ-лабораторий в мире. Ученые из DeepMind, принадлежащей материнской компании Google — холдингу A.

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

[Из песочницы] Как я боролся с Shared Element Transition и написал свою первую opensource библиотeку Нет повести печальнее на свете, чем повесть о ViewPager’e и SET’e Хочется предупредить, что автор ‒ новичок андроид, поэтому статья содержит столько технических неточностей, что вас, скорее, нужно предупредить о том, что в статье могут встретиться технически достоверные.

PROFIT Cloud Day 2020: времени на игры в песочнице не осталось 29 марта в Алматы прошла ежегодная конференция PROFIT Cloud Day, где обсуждались вопросы использования облачных технологий, их внедрения и тренды рынка.

Игра в прятки с оптимизатором. Гейм овер, это CTE PostgreSQL 12 Эта статья — продолжение рассказа о новом в PostgreSQL 12. Мы уже разобрали SQL/JSON (патч JSONPath) в статье «Что заморозили на feature freeze 2020. Часть I. JSONPath», теперь очередь CTE. CTE CTE это Common Table Expression — общие табличные выражения, их еще называют к.

Объявлена цена подписки на Apple TV+ Вчера мы узнали о том, что подписка на игровой сервис Apple Arcade будет стоить всего 5 долларов в месяц. Это очень хорошая цена, учитывая, что подписчики получат доступ к десяткам эксклюзивных игр без рекламы и встроенных покупок. Но Apple Arcade – не единственная «тёмная .

DuckDuckGo обрабатывает 40 млн поисковых запросов в день Анонимный поисковик DuckDuckGo теперь обрабатывает 40 млн поисковых запросов в день. Эти данные были раскрыты в статье The New York Times, посвящённой DDG.Соответствующая информация также содержится на сайте компании:В январе поисковик обрабатывал около 34 млн запросов в ден.

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

[Перевод] Приключения неуловимой малвари, часть II: скрытные VBA-скрипты Эта статья является частью серии «Fileless Malware». Все остальные части серии: Приключения неуловимой малвари, часть I Приключения неуловимой малвари, часть II: cкрытные VBA-cкрипты (мы тут) Я поклонник сайта гибридного анализа (hybrid analysis, далее HA). Это сво.

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

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

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

Дайджест продуктового дизайна, май 2020 Дайджест собирает свежие статьи по дизайну интерфейсов, а также инструменты, паттерны, кейсы, тренды и исторические рассказы с 2009 года. Я тщательно фильтрую большой поток подписок, чтобы вы могли прокачать свои профессиональные навыки и лучше решить рабочие задачи. Предыд.

[Перевод] Вся правда об ОСРВ. Статья #32. Миграция Nucleus SE: Нереализованные функции и совместимость Основным требованием при разработке Nucleus SE была высокая степень совместимости с главным ОСРВ-продуктом Mentor – Nucleus RTOS. Nucleus SE поддерживает определенную часть функционала Nucleus RTOS, о чем много раз говорилось в предыдущих статьях, однако в этой статье я пост.

С игрой Quake II RTX в 4K не справляется даже видеокарта GeForce RTX 2080 Ti Компания Nvidia на днях представила игру Quake II RTX. Это старый добрый Quake II, но с поддержкой эффектов, основанных на трассировке лучей. Официальные минимальные системные требования игры включают видеокарту GeForce RTX 2060. Как оказалось, для игры в 4K недостаточ.

Глава OnePlus: мода на градиент проходит Как известно, встречают по одежке, вот и стараются производители сделать так, чтобы их мобильные устройства с самого первого взгляда производили правильное впечатление и вызывали желание купить. Один из трендов — градиентные окраски. Игра оттенков смотрится отлично и к.

Глава OnePlus: мода на градиент проходит Как известно, встречают по одежке, вот и стараются производители сделать так, чтобы их мобильные устройства с самого первого взгляда производили правильное впечатление и вызывали желание купить. Один из трендов — градиентные окраски. Игра оттенков смотрится отлично и к.

[Перевод] Неразбериха с Boeing 737 MAX: анализ возможных причин аварий «Столкновение с землёй в управляемом полёте» (Controlled Flight into Terrain) — это авиационный термин, обозначающий аварию нормально функционирующего самолёта из-за того, что пилоты были чем-то отвлечены или дизориентированы. Настоящий кошмар. По моим оценкам, ещё хуже сто.

IntelliJ IDEA, ReSharper, SonarLint и SonarQube находят те же ошибки, что и PVS-Studio — ну и зачем нам PVS-Studio? Иногда люди задают вопрос, который, на первый взгляд, про одно, а на самом деле про другое. Как говорится, грамотно поставленный вопрос содержит половину ответа. На днях я вернулся с конференции JPoint, на которой впервые был представлен наш новый анализатор PVS-Studio для .

[Из песочницы] Три Больших Лжи о JavaScript Привет, Хабр! Представляю вашему вниманию мой перевод статьи «The Three Big Lies About JavaScript» автора Richard Kenneth. Данная статья была написана в мае 2020 года, однако ее актуальность, на мой взгляд, не исчезла. Я начинающий программист, поэтому возможны оши.

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

Обзор Color Bumb 3. Напрягаем ваш смартфон Скажу честно — большинство современных казуальных игр не вызывают у меня каких-то теплых чувств, не говоря уже об увлечении игровым процессом. Практически каждая вторая игра построена на вполне понятных механиках, которые я уже видел в десятке предыдущих проектов и просто не.

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

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

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

Мультиплеерные гонки на велосипедах Stickman Bike Battle можно скачать на iOS и Android Игры со стикменом будут жить вечно. Их создают самые разные разработчики, но преуспела в этом плане одна студия — Djinworks. В ее портфолио есть и футбол, и симулятор скейтбординга и еще десяток других видов спорта. Последняя новинка – Stickman Bike Battle. Как можно понять.

[Перевод] Собственная реализация библиотеки ECS На этой неделе я начал работать над своим движком для игры Vagabond и приступил к реализации шаблона entity-component-system. В этой статье я хочу рассказать о своей реализации, которая свободно доступна на GitHub. Но вместо простого комментирования кода я хочу объяснить, .

Все ругают самописные тестовые фреймворки. А мы своим довольны Меня зовут Елена Расторгуева, я отвечаю за продукт «Фактор» в HFLabs. «Фактор» — чертовски сложный алгоритмический enterprise, он обрабатывает данные в промышленных масштабах. В статье я расскажу, как мы начинали тестировать «Фактор», как развивали автотесты и почему приш.

Фотографии Xiaomi Mi Band 4 взорвали интернет Носимая электроника с каждым днем становится все более востребованной со стороны пользователей по всему миру, и у этого есть целая масса различных причин. С ее помощью десятки миллионов человек уже сейчас следят за своей активностью, Сообщение Фотографии Xiaomi Mi Band 4 вз.

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

Делаем вездесущий Splash Screen на iOS Привет Хабр! Я расскажу о реализации анимации перехода со сплэш скрина на другие экраны приложения. Задача возникла в рамках глобального ребрендинга, который не мог обойтись без изменения заставки и внешнего вида продукта. Для многих разработчиков, участвующих в крупных.

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

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

[Перевод] Самодельный сборщик мусора для OpenJDK Это перевод статьи Алексея Шипилёва «Do It Yourself (OpenJDK) Garbage Collector», публикуется с согласия автора. О любых опечатках и других багах сообщайте в личку — мы их поправим.Процесс создания чего-нибудь в рантайме языка — весёлое упражнение. По крайней мере, создание .

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

Обзор Frostpunk: Console Edition – Новый стандарт консольных стратегий? Frostpunk – это, по мнению многих, одна из лучших игр 2020 года. Детище варшавской 11 bit studios сразу же полюбилось поклонникам градостроительных стратегий и симуляторов выживания, но, как это часто бывает, игрокам консольным оставалось только с завистью посматривать на эт.

Интерактивная игра на XSLT Когда-то давным-давно придумали люди язык XML и увидели, что это хорошо. И стали использовать его везде, где можно, и даже там, где не следует. Форматы хранения и передачи данных, конфиги, веб-сервисы, базы данных… Казалось, оглянись вокруг — XML, XML повсюду. Время прошло.

[Из песочницы] Как работают денежные переводы с карты на карту Несмотря на то, что популярность данного вида переводов с каждым годом растёт все больше, в интернете очень мало информации о том как они работаю «изнутри», и в этой статье я простым языком расскажу что такое p2p-переводы, какие они бывают и как они устроены. Читать дальше.

Republic в Kubernetes: переезд десятилетия Скандальные, важные и просто очень крутые материалы выходят в СМИ не каждый день, да и со 100% точностью спрогнозировать успешность той или иной статьи не возьмётся ни один редактор. Максимум, чем располагает коллектив — на уровне чутья сказать, «крепкий» материал или же «.

MMORPG Perfect World Mobile вышла в Европе в режиме пробного запуска, в России — в ноябре Состоялся релиз европейской версии MMORPG Perfect World Mobile в режиме пробного запуска. Игра доступна на iOS и Android в следующих странах: Австрия, Ирландия, Болгария, Бельгия, Исландия, Польша, Дания, Германия, Франция, Финляндия, Нидерланды, Чехия, Хорватия, Латвия, Лит.

[Перевод] Почему все мои игры выглядят так отстойно Мы потратили на создание этой игры несколько лет. От неё зависит будущее нашей семьи. Почему же она так ужасно выглядит? Я уже 25 лет зарабатываю на жизнь написанием инди-игр. У нас с женой есть небольшой семейный бизнес. Мы создаём низкобюджетные ролевые игры в ретро-стил.

3D взмывает ввысь: создан новый композит для аэрокосмоса, снизивший вес деталей на 20% Аддитивное производство металлических деталей становится все более востребовано, и неудивительно: по сравнению с традиционными промышленными технологиями, такими как литье, порошковая металлургия и механическая обработка, «аддитивка» позволяет создавать детали сложной формы.

5 типовых задач на собеседованиях по JavaScript: разбор и решения От переводчика: опубликовали для вас статью Марии Перна (Maria Antonietta Perna), которая рассказывает о типовых задачах по JavaScript, чаще всего предлагаемых соискателям-разработчикам на собеседованиях. Статья будет полезна, в первую очередь, начинающим программистам. .

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

БД ClickHouse для людей, или Технологии инопланетян Алексей Лизунов, руководитель направления центра компетенций дистанционных каналов обслуживания дирекции информационных технологий МКБ В качестве альтернативы стеку ELK (ElasticSearch, Logstash, Kibana) мы проводим исследовательские работы по использованию БД ClickHouse в к.

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

[Перевод] Новшества JavaScript: итоги Google I/O 2020. Часть 1 Материал, первую часть перевода которого мы сегодня публикуем, посвящён новым стандартным возможностям JavaScript, о которых шла речь на конференции Google I/O 2020. В частности, здесь мы поговорим о регулярных выражениях, о полях классов, о работе со строками. Ретроспект.

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

Резюме того парня Друзья, нам с вами несказанно повезло. Тот парень еще не уехал, и я выпросил у него резюме. Не потому, что хочу взять его на работу — не тот я человек. Просто мне кажется, оно стоит того, чтобы быть опубликованным. Хотя бы потому, что в нем 22k букв. Вы еще где-нибудь такой .

[Из песочницы] Криптографический алгоритм «Кузнечик»: просто о сложном В данной статье будет подробно рассмотрен алгоритм блочного шифрования, определенный в ГОСТ Р 34.12-2015 как «Кузнечик». На чем он основывается, какова математика блочных криптоалгоритмов, а так же как реализуется данный алгоритм в java. Кто, как, когда и зачем разработал д.

Arend – язык с зависимыми типами, основанный на HoTT (часть 1) В данном посте мы поговорим о только что выпущенном JetBrains языке с зависимыми типами Arend. Этот язык разрабатывался JetBrains Research на протяжении последних нескольких лет. И хотя репозитории уже год назад были выложены в открытый доступ на github.com/JetBrains, полноц.

Нагрузочное тестирование игры с парой сотен тысяч виртуальных пользователей Привет, Хабр! Я работаю в игровой компании, которая разрабатывает онлайн-игры. На текущий момент все наши игры делятся на множество “маркетов” (один “маркет” на страну) и в каждом “маркете” есть дюжина миров, между которыми распределяются игроки при регистрации (ну или иног.

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

Как развивается умение общаться (с самого-самого начала) и что с ним делают игры на сторителлинг Одна из самых распространенных тем запросов, с которыми приходят к детским специалистам, это речь. Самая очевидная проблема — это когда ребенок не говорит. Вот ему год, а он молчит. Вот ему уже три, а он все равно молчит. А вот уже пять… Тут понятно, что что-то пошло не так.

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

[По докам] Flutter. Часть 1. Для Android разработчиков Про Flutter написано уже много статей. С каждым месяцем он становится всё популярнее. Поэтому я решил интерпретировать официальную документацию Flutter в лаконичный формат «вопрос — ответ». Думаю, многие, как и я, не имеют достаточно свободного времени для подробного изучени.

Три-в-ряд Toy Story Drop! по мотивам «Истории игрушек» вышла на iOS и Android С существованием такого жанра, как три-в-ряд уже давно пора смириться. В такие игры, например, можно просто не играть. Но если хочется на всякий случай держать на своем смартфоне подобное казуальное развлечение, стоит выбирать хотя бы интересный сеттинг. Этим летом на экран.

Трогательная My Brother Rabbit на русском языке уже доступна на iOS и Android My Brother Rabbit— это трогательно приключение от создателей десятка разнообразных игр в жанре «поиск предметов». «В любящей семье заболевает дочь. Пока родители пытаются найти нужное лекарство, заботливый старший брат не хочет сидеть сложа руки и использует силу воображени.

Понимание Q-learning, проблема «Прогулка по скале» Это перевод статьи Understanding Q-Learning, the Cliff Walking problem Lucas Vazquez В последнем посте мы представили проблему «Прогулка по скале» и остановились на страшном алгоритме, который не имел смысла. На этот раз мы раскроем секреты этого серого ящика и увидим, чт.

Реализация паттерна Page Object на Python + pytest Когда я начинал изучать автоматизацию тестирования, не мог понять — “что такое Page Object и как его реализовать на Python + pytest?”. Штудируя интернет, нашел реализацию на других языках и фреймворках: обучающие статьи, которые были непонятны для меня. Поэтому решил написат.

Анализ исходного кода RPC фреймворка Apache Dubbo статическим анализатором PVS-Studio Apache Dubbo — один из самых популярных Java проектов на GitHub. И это неудивительно. Он был создан 8 лет назад и широко применяется как высокопроизводительная RPC среда. Конечно, большинство ошибок в его коде давно исправлены и качество кода поддерживается на высоком уровн.

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

Опровергаем четыре стереотипа о языке программирования Rust Язык программирования Rust, созданный и поддерживаемый корпорацией Mozilla, позволяет обычным программистам писать одновременно и безопасные и быстрые системы: от калькуляторов до высоконагруженных серверов. За своё относительно короткое время существования данный язык уже .

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

[Из песочницы] Full-stack TypeScript Apps Привет, Хабр! Представляю вашему вниманию перевод статьи «Full-Stack TypeScript Apps — Part 1: Developing Backend APIs with Nest.js» автора Ana Ribeiro. Часть 1: Разработка серверного API с помощью Nest.JS TL;DR: это серия статей о том, как создать веб-приложение TypeScript .

Как рынок 3D-печати рос в 2020 году и что это значит для бизнеса Французская компания Sculpteo опубликовала очередной ежегодный отчет о состоянии отрасли 3D-печати. Цель исследования – представить полноценный обзор рынка аддитивных технологий, проанализировать тренды и помочь компаниям выстроить свои бизнес-стратегии. Отчет основан на о.

Ловим кота с TLA+ Формальные методы считаются эффективным, но неоправданно сложным способом обеспечения надежности программного обеспечения. Используемые при этом инструменты существенно отличаются от привычных программисту. Эта статья написана с целью снизить порог вхождения в этот инструме.

Как мы делали облачный FaaS внутри Kubernetes и побеждали в Тинькофф-хакатоне Начиная с прошлого года у нас в компании начали организовывать хакатоны. Первое такое состязание прошло весьма успешно, о нем мы писали в статье. Второй хакатон прошел в феврале 2020 и был не менее успешным. О целях проведения последнего не так давно писал организатор. Уч.

[Из песочницы] Назад в будущее с WebAssembly Привет, Хабр! Представляю вашему вниманию перевод статьи «Back To The Future With WebAssembly» автора Attila Vágó. Данный пост является переводом статьи, в которой рассказывается о свойствах WebAssemly и Emscripten. Оригинал статьи на английском языке. Автор статьи Аттила .

Всё о трендах в управлении персоналом: зачем идти на HR Digital 2020 Десятки спикеров, пять профильных секций и полное погружение в практику рекрутмента.

Завтра состоится глобальный релиз раннера Talking Tom Hero Dash Talking Tom – наверное, один из самых узнаваемых персонажей. Как минимум среди родителей маленьких детей. Проект, который начинался как развлечение, где забавный персонаж высоким голосом повторяет сказанное в микрофон, превратился во франшизу с десятками игр в разных жанрах.

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

Epic Games продлила еженедельную раздачу бесплатных игр до конца года Компания Epic Games объявила о продлении в магазине Epic Games Store периода еженедельной раздачи бесплатных игр до конца года.

[Перевод] Решаем задачу из интервью Google на JavaScript: 4 разных способа Когда я занимался изучением производительности алгоритмов, мне попалось вот это видео с мок-интервью Google. Оно не только дает представление, как проходят собеседования в крупных технологических корпорациях, но и позволяет понять, как решаются алгоритмические задачи, при.

Импортозамещение на практике. Часть 1. Варианты Введение В связи с тем, что близится 2020 год и «час хэ», когда нужно будет отчитаться об исполнении приказа Минкомсвязи о переходе на отечественное ПО (в рамках импортозамещения), да не простое, а из реестра Минкомсвязи, мне прилетела задача о разработке плана, собственно.

На мобильных вышла популярная гольф-аркада Golden Tee Golf Golden Tee Golf— одна из известнейших и долгоиграющих серий гольф-аркад. С 28 октября она представлена и на мобильных. В игре есть несколько режимов: испытание, кампания, соревнования и ежедневные задания. Каждый уровень можно просто завершить, а можно попытаться заработать.

СКИДКА (379р → 149р) Игра Bridge Constructor Portal для iPhone, iPad и Mac — гибрид Portal и Bridge Cunstructor В далеком 2007 году игра Portal входила в популярный сборник компьютерных игр The Orange Box от Valve. Долгожданный релиз Half-Life 3 или Portal 3 так и не состоялся и превратился в мем. Поклонники Valve уже давно перестали надеяться на выход нового «Портала», поэтому появле.

Eric Prydz отыграет диджейский сет внутри огромного голографического шара Остается две недели до того, как Эрик Придз отыграет свой диджейский сет внутри гигантской светящийся сферы высотой в два этажа над многотысячной толпой. Всемирно известный EDM-продюсер планирует свой новый шоу-концерт под названием EPIC. Это амбициозный проект, которые прив.

[Перевод] Скучный технологический стек интернет-компании из одного человека Поисковая выдача на ListenNotes.com Listen Notes — это поисковая система и база данных подкастов. Технология на самом деле очень скучная. Никакого ИИ, глубокого обучения или блокчейна. «Если вы должны объявлять о внедрении ИИ, то вы не используете Настоящий ИИ» 🙂 После п.

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

Match 3 Saga v.1.0.2 Добро пожаловать в Match 3 Saga! Match 3 Saga — это восхитительная и потрясающая новая игра-головоломка match-3, наполненная сотнями вкусных фруктовых уровней и леденцовыми лакомствами, которые обязательно удовлетворят твою тягу к веселью! Добавление твоего мира в .

Automaton — новая Android-игра для изучения основ программирования В конце прошлого года на iOS вышла 7 Billion Humans, в августе этого — while True: learn(), а сегодня состоялся релиз Automation. Свежий проект не сравнится с предыдущими своим внешним видом, но в своей основе имеет кое-что общее, что важнее графических изысков. Automation .

Основы архитектуры приложений на Flutter: Vanilla, Scoped Model, BLoC (оригинал статьи на английском языке опубликован на Medium) Flutter предоставляет современный реактивный фреймворк, большой набор виджетов и тулов. Но, к сожалению, в документации нет ничего похожего на руководство по рекомендуемой архитектуре приложения для Android. Не сущ.

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

Как изучение критической уязвимости DHCP в Windows 10 привело к обнаружению еще двух ошибок безопасности Изображение: Unsplash Как было описано в предыдущей статье про CVE-2020-0726, иногда поиск деталей об уже известной уязвимости приводит к обнаружению новой уязвимости. А в некоторых случаях таких новых уязвимостей оказывается больше одной. Читать дальше →

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

City Island 3.4.2 City Island — игроку предстоит выстроить большой мегаполис, начиная маленького домика и десятка метров асфальтированной дороги. Сначала начинаем формировать инфраструктуру, обеспечивая граждан рабочими местами и жилыми домами. Естественно через какое-то время сооружения стан.

4 трудности при локализации мобильных игр на примере Fishing Clash — перевод Хабр, привет! Перевели статью Кевина Дабровски, креативного директора Ten Square Games. На примере их игры Fishing Clash он рассказал, какие у них случались факапы, и что делать, чтобы у вас такого не повторилось. Следует сразу разделить понятия: локализация и перевод — .

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

Криптовалютный океан: обзор топ-50 проектов с CoinMarketCap Когда смотришь на бесконечный список криптовалют на CoinMarketCap, первый вопрос который приходит в голову: а чем все они отличаются? И зачем их столько? Первый же ответ из зала — это все хайп и маркетинг! Но осознанные люди не поддаются очарованию простых ответов. Чтобы от.

[Из песочницы] Машинное обучение для менеджеров: таинство сепуления Введение Очередной раз работая с компанией, делающей проект, связанный с машинным обучением (ML), я обратил внимание, что менеджеры используют термины из области ML, не понимая их сути. Хотя слова произносятся грамматически правильно и в нужных местах предложений, однако их .

Игровой сервис Apple Arcade официально запустился: сотни премиум-игр за 199 рублей в месяц Вчера в 20:00 МСК официально стала доступна новая версия iOS 13, а вместе с ней и сервис Apple Arcade. Мы уже рассказали о десятках проектов и будем продолжать делать это в ближайшее время. Сейчас по подписке доступно более 50 игр, а разработчики продолжают представлять но.

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

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

Rails + Postgres + bindings Привет друзья. Ни для кого не секрет, что работая на крупных проектах со сложной логикой, Active Record становится не помощником, а обузой. Представьте, что вам необходимо сделать очень сложный запрос для PostgreSQL нативным образом (на чистом SQL), где должно присутствова.

[Перевод] Шардинг в Блокчейне Всем привет, я один из разработчиков Near Protocol, который, среди прочего, реализует шардинг, и в этой статье хочу подробно рассказать что вообще такое шардинг в блокчейне, как он работает, и коснуться ряда проблем, которые возникают при попытке его построить. Хорошо извест.

[Из песочницы] Мой путь начинающего разработчика игр Доброго времени суток, уважаемые пользователи! Хочу поделиться с Вами своей маленькой историей создания своей маленькой игры. Ну, начнем с того, что я — школьник. На носу у меня ЕГЭ, надо бы к нему готовиться, а меня все тянет и тянет в эту какую-то заблудшую степь. Но меня.

Субъектность Я чувствую, я хочу, я думаю, я делаю, я получил… Во многих языках мира слово “я” содержит мало букв, и это свидетельствует о его важности — чем чаще слово используется, тем короче оно становится. Часто повторяющееся “я” становится привычным, перестает замечаться и даже озв.

[Перевод] Искусственный интеллект Horizon Zero Dawn: индивидуальное поведение В первой части исследования ИИ Horizon Zero Dawn я рассказал, как игра создаёт стада управляемых искусственным интеллектом животных-машин. Для этого требуется сложная система иерархии агентов, в которой каждая машина может принимать решения о том, как вести себя, пользуясь п.

Находим баги в LLVM 8 с помощью анализатора PVS-Studio Прошло более двух лет с момента последней проверки кода проекта LLVM с помощью нашего анализатора PVS-Studio. Давайте убедимся, что анализатор PVS-Studio по-прежнему является лидирующим инструментом по выявлению ошибок и потенциальных уязвимостей. Для этого проверим и найдё.

4 новых игры в Apple Arcade: пати-битва PAC-MAN, бейсбол от Gameloft и пара крутых головоломок Каждые выходные компания Apple заставляет пользователей Android-устройств кусать локти, обновляя ассортимент игр в сервисе Arcade. Не все из представленных проектов — шедевры, но в большинстве случаев уровень повыше типичных новинок в Google Play и App Store. В этот раз по .

[Перевод] Мониторинг и проверка состояния SSD в Linux И снова здравствуйте. Перевод следующей статьи подготовлен специально для студентов курса «Администратор Linux». Поехали! Что такое S.M.A.R.T.? S.M.A.R.T. (расшифровывается как Self-Monitoring, Analysis, and Reporting Technology) – это технология, вшитая в накопители, та.

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

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

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

Автоматическое добавление места на виртуальном сервере Всем привет! В этой статье мы расскажем о том, как мы автоматизировали задачу по расширению дискового пространства на одном из наших серверов. А чего сложного в такой простой задаче, что пришлось ее автоматизировать — спросите вы? Ничего, если вы не используете каскадно-объе.

История о том, как мы иконку PVS-Studio меняли Релиз 7.0 ознаменовал новую веху в истории анализатора PVS-Studio – теперь доступен анализ не только кода, написанного на C, C++, C#, но также и Java. Кроме этого глобального нововведения продолжают улучшаться и дорабатываться существующие механизмы анализа, добавляются ди.

7 игр на 5 современных интегрированных GPU (Ryzen, Athlon, Pentium Gold, Core i3): игра или мучение? Из семи игр в четырех все испытуемые продемонстрировали меньше 30 кадров средней скорости даже на «минималках». Таким образом, если компьютер приобретается в том числе и для игр, причем не только для ностальгии по старым проектам времен детства и юности, то ориентироваться н.

Ремейк Resident Evil 2 получил крупное бесплатное дополнение Capcom решила сломать тренд современного геймдева и выпустила бесплатное крупное сюжетное дополнение для ремейка Resident Evil 2. Оно привнесёт в игру три новых истории и несколько уникальных монстров

Стартовала предрегистрация на англоязычную версию Attack on Titan Tactics в Google Play В апреле этого года компания DeNA выпустила в Японии мобильную игру Attack on Titan Tactics. Это своеобразная tower defense по мотивам популярного аниме. Разработчики тогда сразу пообещали, что релиз на английском состоится этим летом. В этой игре вам нужно защищать стены г.

Миссия «Чанъэ-4» — научное оборудование на посадочном модуле и спутнике-ретрансляторе На фоне данных о путешествии ровера «Юйту-2» по лунной поверхности, интерес к событиям и экспериментам, происходящим на стационарном посадочном модуле «Чанъэ-4», проявляется намного меньше, а ведь там установлено научное оборудование для изучения космической среды, с помощь.

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

Обзор Rise of Legions. Шикарная MOBA Далеко не каждая игра со значком «Бесплатно» может похвастаться более-менее достойной реализацией и возможностью получать удовольствие без вложения реальных денег. Конечно, есть редкие исключения, но они настолько редкие, что даже страшно представить. Тем не менее, мы смогли.

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

[Перевод] 20 лет RollerCoaster Tycoon: интервью с создателем игры 31 марта 1999 года была выпущена игра RollerCoaster Tycoon, полностью созданная одним человеком и написанная на языке ассемблера x86. В честь юбилея игры мы публикуем перевод интервью с автором, записанное в 2020 году. Сегодня мало кто помнит имя шотландского программиста .

SQL: задача о рабочем времени: разбор полётов В эфире опять Радио SQL! Сегодня у нас совсем краткий выпуск, посвящённый подведению итогов решения задачки участниками хабросообщества. Я обещал разыграть небольшой приз, так что подвести итоги лучше небольшой, но всё же статьёй. Дописать строчку в оригинальную статью (что .

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

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

DuckDuckGo обрабатывает 40 млн поисковых запросов в день Анонимный поисковик DuckDuckGo теперь обрабатывает 40 млн поисковых запросов в день. Эти данные были раскрыты в статье The New York Times, посвящённой DDG. Соответствующая информация также содержится на сайте компании: В январе поисковик обрабатывал около 34 млн запросов в д.

[Перевод] Один язык чтобы править всеми Скрытый под слоем кода, томится язык, жаждущий быть выученным. На момент написания этой статьи запрос «программирование какой язык изучать первым» выдаёт 517 миллионов поисковых результатов. Каждый из этих сайтов будет нахваливать один определённый язык, и 90% из них, в кон.

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

PlayStation устроила сразу несколько распродаж отличных игр В официальном магазине PlayStation проходит сразу несколько распродаж. Одна из них посвящена классике PS — Devil May Cry, GTA и пр. Вторая — играм от Ubisoft, а третья — японским хитам.

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

Гиперконвергентное решение AERODISK vAIR. Основа — файловая система ARDFS Привет, читатели Хабра. Этой статьей мы открываем цикл, который будет рассказывать о разработанной нами гиперконвергентной системе AERODISK vAIR. Изначально мы хотели первой же статьей рассказать всё обо всём, но система довольно сложная, поэтому будем есть слона по частям.

Бесконечный ремонт: суровая игра Лайфхакера и «Петровича» Говорят, что ремонт невозможно закончить — его можно только прекратить. Но мы в вас верим. Поэтому придумали сложную игру вместе со строительным торговым домом «Петрович» — там считают, что любой ремонт можно одолеть. Давайте проверим, удастся ли вам это!

[Из песочницы] Замена Punto Switcher, раскладки Бирмана с помощью скрипта на autohotkey В данной статье я не предлагаю полностью заменить Punto Switcher (Спасибо Сергею Москалёву за данную программу), а только в очень ограниченном функционале. Довольно давно пользуюсь программой Punto Switcher, но не в целях автопереключения, а как переключатель по левому и пра.

Курс «Основы эффективной работы с технологиями Wolfram»: более 13 часов видеолекций, теория и задачи Все документы курса можно скачать здесь. Этот курс я прочел пару лет назад для довольно обширной аудитории. Он содержит очень много информации о том, как устроена система Mathematica, Wolfram Cloud и язык Wolfram Language. Однако, конечно, время не стоит на месте и за по.

Проверка исходного кода библиотек .NET Core статическим анализатором PVS-Studio Библиотеки .NET Core — один из самых популярных C# проектов на GitHub. Неудивительно, с учётом его широкой известности и используемости. Тем интереснее попробовать выяснить, какие тёмные уголки можно найти в исходном коде этих библиотек, что мы и попробуем сделать с помощью.

[Из песочницы] Couchbase в телекоме Цифровая трансформация является мировым трендом для крупного бизнеса и жизненно важна для адаптации предприятия к современным потребностям клиента. Кроме обычной для крупных компаний проблематики централизации систем и объединения биллинговых систем и абонентских БД до.

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

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

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

Grand Theft Auto V вышла для смартфонов на базе Android и iOS С каждым годом качество игр для смартфонов становится все хуже и хуже, потому что разработчики вступают на «темный путь», то есть делают ставку на заработок как можно большего объема денежных средств на постоянной основе, тогда Сообщение Grand Theft Auto V вышла для смартфо.

Gartner назвал топ-10 трендов в ИТ в 2020 году и далее, которые будут формировать будущее Глядя в свой магический кристалл, Gartner назвал десять главных тенденций в ИТ, которые будут менять будущее и откроют самые большие возможности на рынке в ближайшие пять-десять лет. «Эти тренды оказывают глубокое влияние на людей и всё пространство .

[Перевод] Создание игры «Крестики-нолики» при помощи TypeScript, React и Mocha Представляем вам перевод статьи Josh Kuttler, опубликованной на blog.bitsrc.io. Узнайте, как создать приложение «Крестики-нолики», используя React и TypeScript. Простая игра в крестики-нолики создана по модульному принципу и загружена на сайт Bit. Вы можете изменять компо.

[Перевод] Новый курс по Python от Microsoft [на английском] Вероятно, самое большое препятствие при изучении любого нового языка программирования — просто знать, с чего начать. Что важно? Что нужно знать, чтобы стать профи? Трудно исследовать документы, когда даже нет уверенности, что читаешь то, что нужно. Возможно, вы присматривае.

suhorukov.com

У Node.js в 2020 году первый юбилей. Данная платформа появилась десять лет назад и за этот небольшой для технологии срок обросла солидной экосистемой. Гонка вооружений на JavaScript в последние годы стала особенно острой — фреймворки и библиотеки предлагают разработчикам новые и новые варианты. Если вы решили освоить Node.js, то в 2020 году вам не обойтись без данных инструментов.

Но для начала немного наглядной статистики. Вот как выглядит график популярности запроса Node.js в поисковых системах за первые 10 лет существования этой платформы.

В 2020 году по данным крупнейшего в мире опроса среди разработчиков StackOverflow Node.js остается самым популярным фреймворком. Эту технологию так или иначе использует почти 50% от всех специалистов.

База данных MongoDB также входит в топ-4 в своей категории. А эта связка (плюс Express) является одним из наиболее оптимальных вариантов для создания серверной части приложения.

А теперь — о главных инструментах, актуальных в 2020 году для разработчика Node.js.

JavaScript всегда испытывал сложности в качестве серверной технологии. На то есть ряд объективных причин. На помощь пришел TypeScript — объектно-ориентированный, типизированный, компилируемый язык программирования. Он расширяет и углубляет функционал JavaScript и прекрасно компилируется в него, может использовать все JS-фреймворки и JS-библиотеки. При этом в отличии от своих аналогов ему не нужна никакая виртуальная машина или среда выполнения. Популярность среди разработчиков только растет. В этом плане он сильно опережает своих конкурентов — например, CoffeeScript и Dart.

Фреймворки

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

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

Следует обратить внимание на самый прогрессирующий по количеству звезд на GitHub фреймворк в 2020 году. Его абсолютное лидерство по этому параметру наглядно демонстрирует график ниже.

Он использует React для шаблонов, поэтому с него будет проще и быстрее стартануть в нодах. Под капотом — тот же Express. Отличная совместимость с большим количеством нод-библиотек. Nest поставляется со строгой типизацией и встроенным адаптером GraphQL, который использует популярную платформу Apollo. Он

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

Фреймворк использует шаблоны MVC, поэтому его очень часто сравнивают с PHP Laravel. Он появился в 2020 году, но опять-таки обратим внимание на его рост на GitHub в 2020 году — почти на 60%. Очевидно, что инструмент трендовый. Стабильный, с элегантным синтаксисом, модульной структурой — от его удобного и легкого использования программисты впадают в искреннюю радость. Он позволяет быстро создавать простые запросы к базам данных.

7 самых популярных фреймворков JavaScript в 2020 году

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

JS – это самый популярный язык в вебе. Если вы когда-нибудь работали с JS, то знаете, что для разработки и запуска приложения нужно приложить немало усилий. Поэтому когда начинающий разработчик начинает изучать JS, его привлекают фреймворки JS.

А зачем использовать именно фреймворки JS? Этому есть три причины:

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

1 React

React – это декларативная и гибкая библиотека JS, которую можно использовать для разработки пользовательских интерфейсов. Она была разработана компанией Facebook, где, собственно, и используется.

Именно благодаря React была популяризирована идея использования виртуального DOM. Подобная технология позволяет не работать с DOM напрямую, а использовать для работы легкий JS-объект, который имитирует дерево DOM. Алгоритм улучшает производительность на клиентской стороне, поэтому React отлично подходит для создания максимально быстрых приложений с высоким трафиком (например, Instagram).

Это одна из самых быстрорастущих библиотек, и она может быть легко интегрирована в любую архитектуру (если брать модель MVC, Модель-Представление-Контроллер, то React отвечает за часть V, представление).

Несмотря на то, что React обычно не сравнивают с фреймворками, можно отметить, что при сравнении с Angular 1.x он обеспечивает больший рост производительности.

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

Компании, использующие React: Facebook, Instagram, Netflix, Alibaba, Yahoo, E-Bay, Airbnb, Sony.
Страница на GitHub: https://github.com/facebook/react/

2 Vue

Говоря о Vue, большинство имеет в виду, как правило, вторую версию – Vue 2, которая появилась чуть больше года назад (в сентябре 2020 года) и получила много улучшений по сравнению с предыдущей версией.

Vue – это прогрессивный JS-фреймворк, релиз которого состоялся в 2014 году. Его создал Эван Ю, ранее работавший в Google и Meteor Development Group (которые создали MeteorJS). На разработку существенно повлияли Angular, Knockout, React и Rivets, и Vue может стать как раз той золотой серединой, которая собрала все лучшее и предложила разработчикам.

Например, если сравнивать Vue c Angular, то это более гибкий и простой (с точки зрения API) фреймворк, который также имеет более высокую производительность.

На официальном сайте Vue характеризуется как доступный (если знаете HTML, CSS и JS, то сможете изучить его очень быстро), разносторонний (экосистема позволяет масштабироваться из библиотеки в полноценный фреймворк) и производительный (виртуальный DOM и возможность оптимизации).

Как и React, Vue используется для разработки пользовательских интерфейсов. Его легко постепенно внедрить в уже имеющий проект, он хорошо интегрируется с другими библиотеками.

Vue отлично подходит для создания Single-Page Applications – веб-приложения, размещенного на одной странице, где весь необходимый код загружается вместе с самой страницей.

Вебсайты, использующие Vue: laravel.com, gitlab.com, laracast.com.
Страница на GitHub: https://github.com/vuejs/vue

3 AngularJS

AngularJS – один из самых известных, популярных и упоминаемых фреймворков JS. Он был создан разработчиками Google и прекрасно подходит для разработки веб-приложений.

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

Изначально AngularJS предполагалось использовать для разработки одностраничных приложений (Single-Page Applications): дополнительный контент после открытия страницы будет загружаться по мере необходимости, и это может значительно уменьшать нагрузку на сервер.

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

Вебсайты, использующие AngularJS: weather.com, freelancer.com, netflix.com.
Страница на GitHub: https://github.com/angular/angular.js

4 Backbone

Backbone – еще одна известная и часто используемая при разработке библиотека. Она основана на шаблоне проектирования MVP. Одна из отличительных особенностей – это очень легковесная библиотека, единственные зависимости которой – библиотека Underscore.js (в качестве шаблонизатора), ну и jQuery (используется для работы с DOM-элементами).

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

Backbone часто сравнивают с Angular, но нужно понимать, что это библиотека и фреймворк, поэтому они имеют соответствующие сильные и слабые стороны: Angular удобен для быстрой разработки «из коробки», а Backbone нужно будет дополнять собственным кодом, но за счет этого Backbone более гибкий и настраиваемый под свои нужды инструмент.

Вебсайты, использующие Backbone: uvdesk.com/en/, reddit.musicplayer.io, helpscout.net
Страница на GitHub: https://github.com/jashkenas/backbone

5 Polymer

Polymer – это библиотека, которая предназначается для создания и использования веб-компонентов. Эти веб-компоненты можно использовать как стандартные HTML-элементы для создания приложений. Иначе говоря, вы можете создавать свои собственные HTML-элементы. Для использования Polymer нужно быть знакомым со стандартом Web Components.

Элементы Polymer поделены на 8 групп:

  • App Elements – слабо связанный набор элементов, который может быть полезен в целом при разработке приложения (маршрутизация, хранение данных и т.д.);
  • Iron Elements (ранее Core Elements) – основные, базовые элементы для разработки приложения;
  • Paper Elements – набор UI-компонентов;
  • Google Web Components – коллекция компонентов для Google API и сервисов Google;
  • Gold Elements – набор компонентов для электронной коммерции;
  • Neon Elements – компоненты анимации (в данный момент отсутствуют);
  • Platinum Elements – компоненты для того, что превратить веб-сайт в приложение (push-уведомления, использование офлайн, bluetooth и т.д.);
  • Molecules – молекулы облегчают взаимодействие с другими библиотеками.

Полный список элементов смотрите здесь.

Сервисы, использующие Polymer: YouTube, Google Earth & Google Music
Страница на GitHub: https://github.com/Polymer/polymer

6 Ember.js

Ember.js – это свободно распространяемый JS-фреймворк, который может значительно сократить время, усилия и ресурсы, необходимые для разработки любого веб-приложения.

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

Ember.js – это возможность легкой кастомизации проекта и универсальность, выраженная в возможности компонентной архитектуры.

Вместо MVC фреймворк использует паттерн DDAU (Data down, actions up). Это позволяет использовать один поток данных, благодаря чему код приложения воспринимается проще, и это позволяет значительно улучшить производительность.

Ember.js – это производительный и эффективный фреймворк, который позволяет создавать амбициозные приложения.

Компании, использующие Ember.js: Linkedin, PlayStation, TED, Yahoo!, Twitch.tv
Страница на GitHub: https://github.com/emberjs/ember.js

7 Aurelia

Над созданием Aurelia работал Роб Эйзенберг, который также принимал участие в работе над Angular, поэтому два этих фреймворка очень похожи, но в то же время различаются в некоторых деталях.
Aurelia достаточно новый фреймворк, который вышел пару лет назад. Его называют “next generation UI Framework” (UI-фреймворком следующего поколения) и самым продвинутым и дружелюбным к разработчикам фронт-энд фреймворком на сегодняшний день.

Один из принципов Aurelia – “Convention over Configuration” (обычно переводят как «соглашения по конфигурации»). Этот принцип призван сократить количество требуемой конфигурации без потери гибкости.

Aurelia поддерживает ES6/ES7. Другие характерные черты – модульность, использование веб-компонентов и тестируемость.

Если возвращаться к сравнению с Angular, то в Aurelia акцентом сделан Ненавязчивый JavaScript (unobtrusive JavaScript), поэтому Aurelia имеет более компактный и сопровождаемый код, чем Angular.
Несмотря на то, что Aurelia вышел не так давно, его популярность растет, и у многих разработчиков этот фреймворк вызывает интерес.

Добавить комментарий