Pull to refresh
18
0
Станислав К. @Zdomb

web-разработчик

Send message

Создание библиотек и публикация в npm

Level of difficultyMedium
Reading time18 min
Views2.5K

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

Читать далее
Total votes 9: ↑8 and ↓1+7
Comments4

Взгляд на асинхронность в JavaScript: роль Event Loop, промисов и async/await

Level of difficultyMedium
Reading time10 min
Views12K

В этой статье мы сосредоточимся на ключевых элементах асинхронного программирования в Java Script: Event Loop, Event Bus, промисы и синтаксический сахар async/await. Разберемся, как эти концепции взаимодействуют между собой и как их использование помогает нам создавать более эффективные и отзывчивые веб-приложения.

Мы начнем с изучения роли Event Loop - механизма, ответственного за управление выполнением асинхронного кода. Затем мы перейдем к рассмотрению Event Bus, который обеспечивает коммуникацию между различными компонентами приложения. После этого мы ознакомимся с промисами и синтаксическим сахаром async/await, которые значительно упрощают работу с асинхронным кодом и делают его более читаемым и понятным.

Читать далее
Total votes 21: ↑17 and ↓4+13
Comments15

Используем поля Joomla для фильтрации материалов

Reading time3 min
Views571

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

Читать далее
Total votes 4: ↑3 and ↓1+2
Comments0

Принципы общения с людьми при провалах — 25 тезисов для обретения дзена

Level of difficultyEasy
Reading time9 min
Views14K

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

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

Читать далее
Total votes 35: ↑26 and ↓9+17
Comments19

Юзабилити-тестирование сайта

Reading time11 min
Views1.9K

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

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

Читать далее
Total votes 15: ↑14 and ↓1+13
Comments3

Игра, которую невозможно не полюбить

Level of difficultyEasy
Reading time16 min
Views12K

Здравствуйте, уважаемые хабровцы!

Меня зовут Ернар Шамбаев, я - разработчик компьютерной версии игры “Мастер тогызкумалака”, и сегодня я бы хотел рассказать вам об одной увлекательной настольной логической игре, про которую вы вряд ли слышали, несмотря на то, что в нее играют сотни тысяч человек по всей планете и по ней проводятся даже чемпионаты мира, Европы и Азии. Надеюсь, после прочтения данной статьи количество поклонников этой игры увеличится.

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

Человеку нужен не только хлеб, человеку нужны и зрелища. Ему нужна пища для ума, какой-то способ времяпровождения, который скрасит быт и рутину. Такой пищей для ума кочевников, которые пасли скот в бескрайних степях на территориях, сейчас относящихся к Казахстану, стала игра тогызкумалак (в переводе с казахского - “девять шариков”). Число 9 было священным у тюркских народностей. Российский исследователь игр А.П. Шиляев полагает, что казахская игра - свидетельство зарождения десятеричной системы счисления. Считается, что тогызкумалаку около 4 тысяч лет (возможно, цифра слегка завышена). Тогда, естественно, никто не мог предположить, что игра станет настоящим вызовом в эпоху компьютеров и нейросетей.

Читать далее
Total votes 53: ↑52 and ↓1+51
Comments16

Как работать с текстом при дизайне игровых интерфейсов

Reading time5 min
Views2.7K

Статья про приёмы, упрощающее восприятие текста игроками и про особенности работы с текстом на игровых проектах.

Читать далее
Total votes 22: ↑21 and ↓1+20
Comments6

Вороной, Манхэттен, рандом

Level of difficultyEasy
Reading time34 min
Views16K

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

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

Осторожно, очень много картинок!

Читать далее
Total votes 160: ↑160 and ↓0+160
Comments53

Joomla-дайджест. 2-е полугодие 2023 года

Reading time33 min
Views1.2K

Все главные новости из мира Joomla с момента выхода предыдущего дайджеста 4 августа 2023 года в одной статье. Также в дайджест попадает январь 2024 года. Традиционно наш дайджест обозревает новости, расширения, шаблоны и статьи из мира Joomla. Прошлый выпуск вы можете прочитать здесь.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments7

Press start

Level of difficultyEasy
Reading time35 min
Views4K

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

На этой лодке, корабле или дредноуте, под названием "игровая студия", "вместе гребут", живут и трудятся очень много людей. И от каждого из них игра получает частичку души, много времени и уникальное видение. У большинства разрабатываемых игр есть заказчик, а недоступное многим крупным и средним студиям право "делать что хочу, как хочу и когда хочу" есть лишь у небольшой прослойки инди (independent/независимых) студий, которых еще не купили крупные издатели, но и денег с предыдущей разработки хватает на текущую жизнь.

Конечно, чтобы сделать игру нужны начальные инвестиции. Это к вопросу, почему игры стоят 10-20-40-80 убитых енотов. Когда вам скажут, что игра разошлась миллионным тиражом и разработчики должны купаться в шампанском - вспомните этот пример: авторами достаточно известной action-RPG Nier: Automata были PlatinumGames, издателем и заказчиком были Square Enix, инвесторами и соинвесторами были Tencent Invests, JPMorgan Chase & Co и Sega Corporation. У игры были два главных продюсера, в общем в разработке игры участвовали более 300 человек из трех игровых студий в Японии и США. Затраты на разработку игры составили более 20М$, а продажи превысили 7.5млн копий. Почему студия заработала на игре "всего" 35М$ при средней цене 35 за копию 7.5M * 35 == 35M? Это я расскажу в конце статьи. Такая вот высшая игровая математика. Но сначала давайте посмотрим как устроена разработка игры.

Читать далее
Total votes 19: ↑17 and ↓2+15
Comments4

Важные аспекты Unicode, о которых должен знать каждый разработчик JavaScript

Level of difficultyMedium
Reading time22 min
Views7.9K


Должен признаться: на протяжении очень долгого времени я испытывал страх перед Unicode. Когда была необходимость в работе с Unicode, я предпочитал искать альтернативные пути решения, поскольку не совсем понимал, что делаю.


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


Приложив определенные усилия, прочитав кучу статей — я постепенно начал понимать что к чему, и это оказалось не так уж трудно. Хотя, некоторые статьи приходилось перечитывать раза по 3.


Как оказалось, Unicode — это универсальный и удобный стандарт, но работать с ним может быть непросто из-за множества абстрактных терминов.


Если у вас есть пробелы в понимании Unicode, то сейчас самое подходящее время их заполнить! Заварите себе вкусный чай или кофе ☕. И давайте погрузимся в удивительный мир абстракций, символов, астралов (astrals) и суррогатов (surrogates).


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


Вы также узнаете, как JavaScript взаимодействует с Unicode и какие трудности могут возникнуть на этом пути.


А также, каким образом новые функции из ECMAScript 2015 могут помочь в решении этих проблем.


Готовы? Давайте начнем!

Читать дальше →
Total votes 43: ↑43 and ↓0+43
Comments6

Защита JPG-файлов от копирования с помощью Exif и IPTC-тегов

Level of difficultyMedium
Reading time5 min
Views3.7K

Всем привет! На связи Павел Стариков Fullstack-разработчик digital-агентства. Представьте, вы потратили целый день на создание хороших фотографий для статьи на сайте. Выставили свет, поставили «на уши» множество людей, долго работали в «фотошопе». Фотографии получились отличные, вот только спустя год Яндекс внезапно присылает фильтр «малополезный контент», при этом другие статьи, которые своровали нашу картинку – на первых местах по SEO-высокочастотным запросам. Обидно, не правда ли?

Для предотвращения подобных ситуаций поисковые системы обращают внимания на текстовые мета-теги, которые можно записать в каждую фотографию. Основной формат изображений – JPEG имеет сразу несколько механизмов. Как Exif-данные, содержащие сведения об авторе, камере, дате изменения, так и менее известный стандарт IPTC, который хранит данные в двоичном формате.

Читать далее
Total votes 16: ↑13 and ↓3+10
Comments17

Как GameDev-специалисту защитить свои права на продукт? Практические рекомендации от юристов

Level of difficultyMedium
Reading time6 min
Views1.2K

Как создателю игры приобрести право использования всех составляющих элементов игры, право на игру в целом и избежать юридических рисков? Публикуем подробную инструкцию от GameDev-юристов

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

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

Читать далее
Total votes 5: ↑4 and ↓1+3
Comments0

Что выбрать: Npm, Yarn или Pnpm?

Level of difficultyMedium
Reading time7 min
Views9.8K

На данный момент у нас используются три самых популярных менеджера пакетов (Npm, Yarn и Pnpm). И всё бы ничего, но разные команды начали периодически обращаться с проблемой несоответствия типов Typescript из наших транзитивных зависимостей. Выяснилось что это проблема Npm и Yarn, но как же её решать?

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

Читать далее
Total votes 34: ↑34 and ↓0+34
Comments24

Подход, который помог нам точно оценить трудозатраты на разработку дизайн-системы

Level of difficultyEasy
Reading time9 min
Views2.5K

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

Меня зовут Александр Самсонов, я руководитель отдела UX в СберТехе. Вместе с командой работаю над продуктом Platform V UK Kit — дизайн-системой React-компонентов корпоративного масштаба. Расскажу, как мы начали оценивать затраты ресурсов при разработке дизайн-системы, и как метод помог нам лучше планировать работу, точно отвечать на вопросы и не выглядеть в глазах бизнеса нервными белыми воронами в чёрных толстовках.

Читать далее
Total votes 16: ↑15 and ↓1+14
Comments7

Как я заглянул внутрь фильтров «БАРЬЕР Компакт ОСМО 100 М» и выяснил, что делает воду чистой и вкусной

Reading time10 min
Views59K

Здравствуйте, уважаемые читатели Хабра. Меня зовут Олег (@Interfer), я проджект в крупной российской ИТ-компании. А еще я муж и отец замечательной девочки, которой недавно исполнилось пять лет. 

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

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

В ходе своих исследований я написал в компанию БАРЬЕР, задав им ряд вопросов по работе их системы. Пояснил им, что хочу написать статью для Хабра. Компания крайне заинтересовалась идеей, обратилась на Хабр с предложением сделать из этого совместный проект и под это дело бесплатно выдала мне комплект фильтров БАРЬЕР Компакт ОСМО 100 М”, с условием, что я их распилю, красиво сфотографирую и покажу результат в публикации. Ребятам из БАРЬЕРА показалась интересной идея показать разрез фильтров не глянцевой иконографикой, а по старинке.

Читать далее
Total votes 125: ↑68 and ↓57+11
Comments191

Как я из телефона сделал сервер для своего бота в телеграме

Level of difficultyMedium
Reading time3 min
Views38K

Как я из телефона сделал сервер для своего бота в телеграме

Все началось с того что я написал своего бота и решил его выложить в открытый доступ, а точнее чтобы он работал круглосуточно, но платить деньги, за хостинг мне не хотелось. И тогда я вспомнил, что у меня как раз в ящиках залежались старые 2 телефона, можно сказать только один, потому что второй я превратил в кирпич (Неправильно перепрошил). Мой путь поиска программы для установки линукса начался с Termux, но к сожелению он работает только с Android 7+. А телефон на Android 5. Поэтому действенным решением я выбрал UserLAnd.

Читать далее
Total votes 32: ↑31 and ↓1+30
Comments59

Куда девать 300 багов: автоматизация бэклога и RICE для багов

Level of difficultyEasy
Reading time10 min
Views4.2K

POV: Вы только что начали работать над новым проектом и встретились с небольшой проблемой — в бэклоге багов обнаружилось 300+ открытых тасок. Первая реакция — недоумение, отчаяние и боль от увиденного. «Ну ничего, – думаете вы, – это же как раз то, зачем я нужен этой компании, сейчас я им всё пофикшу!».

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

Читать далее
Total votes 20: ↑19 and ↓1+18
Comments0

Хороший ретрай, плохой ретрай, или История одного падения

Level of difficultyMedium
Reading time17 min
Views38K

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

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

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

Читать далее
Total votes 152: ↑152 and ↓0+152
Comments32
1
23 ...

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Registered
Activity

Specialization

Frontend Developer, Fullstack Developer
Senior
Web development
JavaScript
Angular
TypeScript
Node.js