Обновить
256K+

JavaScript *

Прототипно-ориентированный язык программирования

274,81
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Фиаско стори с UGJ-2018: как сделать игру, которая никому не понравится (не делайте так!)

Время на прочтение2 мин
Охват и читатели5.9K
UGJ — это Уральский Гейм Джем, который проходит в Екатеринбурге (мероприятие проходит онлайн, онсайт только награждение). Темой UGJ-2018 было «ПАРАЗИТИРОВАНИЕ» (правила). Данный Гейм Джем идет две недели. Первая неделя дается на то, чтобы сделать демки, вторая — чтобы доделать игры из демок.

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

Получилось следующее:

image
С этим мы и вышли на финальную черту.
Читать дальше →

Node.JS: библиотека для модификации http ответов

Время на прочтение3 мин
Охват и читатели6K
Некоторое время назад писал сайт с бэкендом на Express/Node.JS. Возникла проблема с минификацией ответов. Нашел много готовых пакетов, но у всех была проблема — не минифицировался html после шаблонов. В итоге принял решение написать свой маленький и родной велосипед — библиотеку web-minify, позволяющую встроить хук перед отправкой клиенту и модифицировать ответ.
Читать дальше →

Блокировка контента, расширение для браузеров chromium

Время на прочтение4 мин
Охват и читатели11K
Основной тренд этого года «блокировка», описанное ниже расширение, позволяет почувствовать власть над контентом в браузере.


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

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

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

Последний год про блогеров новостей стало меньше, лидер нынче «Б… ва», специально не упоминаю, есть риск превратить статью в очередную новость про «Б… ву», и так каждый день новая новость. Журналисты, зачастую, игрой слов в заголовке буквально заставляют перейти по ссылке.
Читать дальше →

12 подсказок для масштабирования Node.js

Время на прочтение8 мин
Охват и читатели7.6K
Node.js уже сейчас успешно работает в мировом масштабе, об этом свидетельствую развернутые приложения на нем таких компаний как Netflix, Reddit, Walmart и Ebay. Однако, он имеет свой набор проблем при масштабировании; как с точки зрения масштабирования людей, работающих над единой базой кода, так с точки зрения вертикального и горизонтального масштабирования в облаке. К дополнении моему личному опыту масштабирования Node.js при работе в таких компаниях, как Reddit и Netflix, я поговорил с некоторыми экспертами, работающими в Microsoft Azure, и придумал несколько советов для вас по масштабированию Node.js в вашей компании.
Читать дальше →

Анонс RamblerFront& #6

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


11 октября 2018г на Мансарде Rambler&Co состоится шестой внешний RamblerFront& meetup, на котором наши сотрудники поделятся прикладными знаниями в области frontend-разработки.
Читать дальше →

Планы на следующую версию Vue.js

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

На прошлой неделе на Vue.js London я рассказал, что произойдет в следующей мажорной версии Vue. Этот пост содержит подробный обзор плана.


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

4 совета для оптимизации webpack-приложения

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

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

Кот-фронтендер смотрит на webpack и говорит 'Белиссимо'

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

Руководство по Node.js, часть 9: работа с файловой системой

Время на прочтение11 мин
Охват и читатели159K
Сегодня, в девятой части перевода руководства по Node.js, мы поговорим о работе с файлами. В частности, речь пойдёт о модулях fs и path — о файловых дескрипторах, о путях к файлам, о получении информации о файлах, об их чтении и записи, о работе с директориями.



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

Руководство по Node.js, часть 8: протоколы HTTP и WebSocket

Время на прочтение11 мин
Охват и читатели73K
Node.js — это серверная платформа. Основная задача сервера — как можно быстрее и эффективнее обрабатывать запросы, поступающие от клиентов, в частности — от браузеров. Восьмая часть перевода руководства по Node.js, которую мы публикуем сегодня, посвящена протоколам HTTP и WebSocket.



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

Разработка React-приложений с использованием ReasonReact

Время на прочтение9 мин
Охват и читатели19K
Вы применяете React для создания пользовательских интерфейсов? Автор материала, перевод которого мы публикуем, говорит, что он тоже работает с React. Здесь он хочет рассказать о том, почему для написания React-приложений стоит использовать ReasonML.



React — это очень хороший инструмент для разработки интерфейсов. Можно ли сделать его ещё лучше? Для того чтобы улучшить работу с React, сначала надо понять его основные проблемы. В частности, проблему, у истоков которой лежит тот факт, что React — это JavaScript-библиотека.
Читать дальше →

Самые быстрые числа с плавающей запятой на диком западе

Время на прочтение5 мин
Охват и читатели21K
В процессе реализации одной «считалки» возникла проблема с повышенной точностью вычислений. Расчетный алгоритм работал быстро на стандартных числах с плавающей запятой, но когда подключались библиотеки для точных вычислений, все начинало дико тормозить. В этой статье будут рассмотрены алгоритмы расширения чисел с плавающей запятой с помощью мультикомпонентного подхода, благодаря которому удалось достичь ускорения, так как float арифметика реализована на кристалле цп. Данный подход будет полезен для более точного вычисления численной производной, обращение матриц, обрезке полигонов или других геометрических задач. Так возможна эмуляции 64bit float на видеокартах, которые их не поддерживают.

double.js benchmark

Хотеть считать быстрee

SSR: когда, зачем и для чего. На примере Vue

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

(Иллюстрация)

Once upon a time Несколько лет назад, когда я только начинал работать с вебом на Java, мы работали с JSP. Вся страница генерировалась на сервере и отправлялась клиенту. Но потом встал вопрос о том, что ответ приходит слишком долго…
Читать дальше →

Elm. Удобный и неловкий. Http, Task

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

Продолжим говорить о Elm 0.18.


Elm. Удобный и неловкий
Elm. Удобный и неловкий. Композиция
Elm. Удобный и неловкий. Json.Encoder и Json.Decoder


В этой статье рассмотрим вопросы взаимодействия с серверной частью.

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

Ближайшие события

Руководство по Node.js, часть 7: асинхронное программирование

Время на прочтение14 мин
Охват и читатели55K
Сегодня, в переводе седьмой части руководства по Node.js, мы поговорим об асинхронном программировании, рассмотрим такие вопросы, как использование коллбэков, промисов и конструкции async/await, обсудим работу с событиями.



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

Замыкания в JavaScript для начинающих

Время на прочтение8 мин
Охват и читатели127K
Замыкания — это одна из фундаментальных концепций JavaScript, вызывающая сложности у многих новичков, знать и понимать которую должен каждый JS-программист. Хорошо разобравшись с замыканиями, вы сможете писать более качественный, эффективный и чистый код. А это, в свою очередь, будет способствовать вашему профессиональному росту.

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

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

Дайджест свежих материалов из мира фронтенда за последнюю неделю №332 (24 — 30 сентября 2018)

Время на прочтение4 мин
Охват и читатели15K
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.


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

[Перевод] Исправить или убить автоматически устанавливаемый JavaScript?

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

Привет, Хабр! Представляю вашему вниманию перевод статьи Julie Marchant Fix or Kill Automatically Installed JavaScript?


В эссе Ричарда Столлмана "Ловушка JavaScript" отмечается, что люди запускают несвободные программы, которые автоматически незаметно устанавливаются в их браузеры каждый день. На самом деле он сильно преуменьшил проблему. Мало того, что большинство пользователей ежедневно запускают несвободные программы просто просматривая веб-страницы, они запускают десятки или даже сотни таких программ каждый день. Ловушка JavaScript чрезвычайно реальна и плодовита. Считается, что работа с сайтами будет нарушена без этих нестандартных, обычно проприетарных, расширений HTML, что веб-браузеры даже не предлагают очевидной возможности отключить JavaScript. Утверждается, что отключение JavaScript приведет только к путанице.


Очевидно, что нам нужно решить эту проблему. Однако, сосредоточив внимание на том являются ли скрипты "тривиальными" или свободными, г-н Столлман упускает важный момент: автоматическая незаметная установка программного обеспечения сама по себе является главной проблемой. То, что по большей части программное обеспечение оказывается несвободным, является лишь побочным эффектом.

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

Худшая диаграмма на свете

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

А мы тут запускаем очередной поток курса «Разработчик JavaScript» и, по рекомендации преподавателей, готовим интересные материалы для чтения. Сегодня посмотрим на одну интересную заметку о визуализации вывода данных.

Поехали.

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

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

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

Сперва, поговорим о том, зачем мы вообще используем диаграммы:

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

Я покажу, как круговая диаграмма терпит неудачу по всем эти критериям. “Задача” круговой диаграммы — показать взаимоотношения частей и целого.

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

Опыт использования redux без редьюсеров

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


Хотел бы поделиться своим опытом использования redux в enterprise приложении. Говоря о корпоративном ПО в рамках статьи, я акцентирую внимание на следующих особенностях:

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

Первые два пункта накладывают ограничения по запасу производительности. Об этом чуть позже. А сейчас, предлагаю обсудить проблемы, с которыми сталкиваешься, используя классический redux – workflow, разрабатывая что либо, сложнее чем TODO – list.
Читать дальше →

Руководство по Node.js, часть 6: цикл событий, стек вызовов, таймеры

Время на прочтение11 мин
Охват и читатели53K
Сегодня, в шестой части перевода руководства по Node.js, мы поговорим о цикле событий, о стеке вызовов, о функции process.nextTick(), о таймерах. Понимание этих и других механизмов Node.js является одной из основ успешной разработки приложений для этой платформы.



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