Как стать автором
Обновить
3069.77
RUVDS.com
VDS/VPS-хостинг. Скидка 15% по коду HABR15
Сначала показывать

Рассказ о том, почему я до сих пор использую jQuery

Время на прочтение4 мин
Количество просмотров39K
imageМногие, когда речь заходит о jQuery, говорят так: «Просто пользуйтесь обычным JavaScript. Библиотека jQuery вам не нужна». Что тут сказать? Я не нуждаюсь во многих вещах, но, несмотря на это, хорошо, когда они есть. Так и jQuery. Я в этой библиотеке не нуждаюсь, но её, определённо, приятно иметь под рукой.

Сайты наподобие You might not need jQuery (YMNJQ) продвигают идею, в соответствии с которой от jQuery очень легко избавиться. Но самый первый пример на этом сайте демонстрирует вескую причину jQuery использовать. Там строка простого кода на jQuery заменяется на 10 строк обычного JS!
Читать дальше →
Всего голосов 88: ↑78 и ↓10+68
Комментарии88

Готовимся к 2020 году: 8 трендов клиентской JavaScript-разработки, о которых нужно знать

Время на прочтение7 мин
Количество просмотров57K
Автор материала, перевод которого мы сегодня публикуем, говорит, что хочет поделиться с читателями прогнозом, который касается развития веб-технологий на ближайшие годы. В частности, здесь речь пойдёт о том, что, по мнению автора, фронтенд-разработчикам, вероятно, стоить начать изучать уже сегодня.

Всё, что связано с JavaScript, очень быстро развивается. Это касается и того, что можно отнести к сфере веб-разработки. В наши дни те, в основе чьих проектов не лежат самые современные технологии, начинают особенно сильно ощущать разрыв между тем, чем они пользуются, и тем новым, что появляется едва ли не ежедневно. К таким технологиям можно отнести Webpack, React, Jest, Vue, Angular в их современном состоянии. В то время как «население» мира фронтенд-разработки, включающее в себя технических специалистов и программистов, постоянно растёт, этот мир стремится к стандартизации. Появление новых технологий и инструментов уже меняет ситуацию.



Можно с изрядной долей уверенности говорить о том, что общим трендом развития фронтенд-технологий будет стандартизация разработки пользовательских интерфейсов. В частности, речь идёт о композиции, основанной на компонентах, о стремлении к модульности систем. Эта тенденция воздействует практически на всё — от стилизации до тестирования и даже до управления состоянием приложений. В этот тренд можно включить технологии, построенные вокруг веб-компонентов, ES-модулей, сюда же попадают соответствующие инструменты и многое другое.
Читать дальше →
Всего голосов 50: ↑45 и ↓5+40
Комментарии25

Рекомендации по написанию чистого кода на JavaScript

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



Исходя из этих идей, чистый код можно определить как код, написанный так, что он сам себя объясняет. Этот код без труда смогут понять люди, его легко будет модифицировать или расширять.
Читать дальше →
Всего голосов 59: ↑46 и ↓13+33
Комментарии14

Node.js: управление памятью, доступной приложениям, выполняемым в контейнерах

Время на прочтение9 мин
Количество просмотров19K
При запуске Node.js-приложений в контейнерах Docker традиционные настройки памяти не всегда работают так, как ожидается. Материал, перевод которого мы сегодня публикуем, посвящён поиску ответа на вопрос о том, почему это так. Здесь же будут приведены практические рекомендации по управлению памятью, доступной Node.js-приложениям, работающим в контейнерах.


Читать дальше →
Всего голосов 39: ↑37 и ↓2+35
Комментарии3

Wasmer: самая быстрая Go-библиотека для выполнения WebAssembly-кода

Время на прочтение6 мин
Количество просмотров9K
WebAssembly (wasm) — это переносимый бинарный формат инструкций. Один и тот же код wasm-код может выполняться в любой среде. Для того чтобы поддержать данное утверждение, каждый язык, платформа и система должны быть в состоянии выполнять такой код, делая это как можно быстрее и безопаснее.

Читать дальше →
Всего голосов 41: ↑38 и ↓3+35
Комментарии7

Node.js-проекты, в которых лучше не использовать lock-файлы

Время на прочтение8 мин
Количество просмотров11K
Автор материала, перевод которого мы сегодня публикуем, говорит, что одна из проблем, с которыми приходится сталкиваться программистам, заключается в том, что у них их код работает, а у кого-то другого выдаёт ошибки. Эта проблема, возможно, одна из самых распространённых, возникает из-за того, что в системах создателя и пользователя программы установлены разные зависимости, которые использует программа. Для борьбы с этим явлением в менеджерах пакетов yarn и npm существуют так называемые lock-файлы. Они содержат сведения о точных версиях зависимостей. Механизм это полезный, но если некто занимается разработкой пакета, который планируется опубликовать в npm, lock-файлы ему лучше не использовать. Этот материал посвящён рассказу о том, почему это так.


Читать дальше →
Всего голосов 37: ↑33 и ↓4+29
Комментарии14

API IntersectionObserver и ленивая загрузка изображений

Время на прочтение9 мин
Количество просмотров20K
Использование ленивой загрузки изображений для улучшения производительности веб-проектов — востребованная техника оптимизации. Всё дело в том, что изображения — это «тяжёлые» ресурсы, которыми переполнены современные веб-сайты. Мы уже кое-что об этом публиковали. Здесь можно почитать о том, что дала ленивая загрузка сайту Walmart, и узнать о том, как пользоваться IntersectionObserver в React-проектах. Вот статья об оптимизация статических сайтов. Вот недавний материал о реализации ленивой загрузки средствами браузера.



Сегодня мы представляем вашему вниманию перевод статьи, в которой использование API IntersectionObserver рассмотрено на примере простой веб-страницы. Этот материал рассчитан на начинающих программистов.
Читать дальше →
Всего голосов 36: ↑33 и ↓3+30
Комментарии22

История дизайна уровней Duke Nukem (с эскизами Левелорда)

Время на прочтение16 мин
Количество просмотров13K


В преддверии 22-летия Duke Nukem вчера мы писали об истории игры. Сегодня поговорим о дизайне уровней официальных релизов основной серии игр Duke Nukem, не спин-офф и тем более не сторонних модификаций. По тексту тут и там разбросаны цитаты из нашего интервью с легендарным дизайнером Duke Nukem Ричардом Греем Levelord'ом, которое мы взяли у него специально для этого поста. Если вы заметили неточности или уверены, что мы пропустили что-то важное — пишите об этом в комментариях и мы добавим информацию в статью.
Читать дальше →
Всего голосов 45: ↑43 и ↓2+41
Комментарии9

You are supposed to be here! 22 года релизу легендарной игры Duke Nukem 3D

Время на прочтение7 мин
Количество просмотров16K
«Фактура Дольфа Лундгрена, харизма Шварценегера и чувство юмора Брюса Уиллиса». Сочетание, конечно, убойное. Можно даже сказать — ядерное. Впрочем, нашего героя так и зовут — Ядерный Герцог. Он же — Дюк Нюкем. Брутальный блондин с мощными кулаками, исправно спасающий Землю от разных злобных тварей, большой ценитель женской красоты и автор «пацанских» изречений, уместных почти в любой жизненной ситуации. Особенно критической. В общем, личность примечательная.


Неудивительно, что одноименная компьютерная игра, посвящённая Дюку, — одна из культовых в индустрии. Это не просто классика и легенда, это — целый культурный пласт. Игра Duke Nukem растащена на образы и цитаты, которые «проросли» в самых неожиданных местах — от популярных песен (вспомните хотя бы «Орбит без сахара» Сплина) до модных подиумов (тренд на пергидрольный блонд вы думаете откуда?). Ну а о популярности среди геймеров можно даже и не говорить отдельно: все и так понятно.

В преддверии DukeCon — однодневного фестиваля, посвящённого игре Duke Nukem, — мы вспоминаем о том, как закалялась сталь. Точнее — как развивалась и менялась со временем эта игровая серия и что она подарила миру.
Читать дальше →
Всего голосов 45: ↑43 и ↓2+41
Комментарии24

Заработок на жизнь и создание игр: 11 советов Levelord’а

Время на прочтение4 мин
Количество просмотров17K
Что я могу посоветовать тем, кто хочет профессионально разрабатывать игры? Мне, после 25 лет работы в этой сфере, определённо, есть что сказать.

image
Читать дальше →
Всего голосов 48: ↑43 и ↓5+38
Комментарии11

Готовьтесь: Angular 8 уже близко

Время на прочтение9 мин
Количество просмотров25K
Автор материала, перевод которого мы публикуем, предлагает поговорить об Angular 8. Здесь будут рассмотрены некоторые особенно горячие темы, поднятые на мероприятиях NgConf и Google I/O 2019. Поэтому, если вы интересуетесь Angular, но по каким-то причинам не видели докладов с этих мероприятий, полагаем, вам любопытно будет узнать о том, чего можно ждать от Angular 8.


Читать дальше →
Всего голосов 40: ↑38 и ↓2+36
Комментарии56

Лето: время апгрейда… себя

Время на прочтение7 мин
Количество просмотров17K
Жизнь в мегаполисе требует много здоровья: организм вынужден побеждать смог, пыль, выхлопы, горячий асфальт, инфекции всех мастей, фастфуд, недосыпы и плохое настроение. Хочется глотнуть воздуха, остановиться, выдохнуть, посидеть с друзьями. Мы тут посидели немного и пришли к выводу, что не каждый опыт — правильный. А ведь нас предупреждали! Ну что, сперва по хардкору, а потом по пользе. Всё как мы любим.

Сервер временно недоступен
Читать дальше →
Всего голосов 40: ↑36 и ↓4+32
Комментарии26

Детальный разбор новых возможностей React 16+, часть 1: общие сведения

Время на прочтение3 мин
Количество просмотров8.2K
Сегодня мы представляем вам первую часть перевода этого большого материала. Он посвящён детальному разбору новых возможностей React, которые появились в этой библиотеке начиная с версии 16. Автор этого материала уже 5 лет занимается программированием. В прошлом он был дизайнером и пробовал себя в качестве иллюстратора. Он включил в статью комиксы, которые, по его мнению, помогут читателям лучше усвоить то, о чём тут идёт речь.
image
В оригинале эта статья называется «Reintroducing React: every React update since v16 demystified». Название намекает на то, что читателю, возможно, уже знакомому с React, предлагается снова познакомиться с этой библиотекой. Это повторное знакомство с React поможет ему упорядочить то, что он уже знает, и открыть для себя что-то новое.
Читать дальше →
Всего голосов 31: ↑27 и ↓4+23
Комментарии1

Node.js для начинающих: основы работы с файлами

Время на прочтение4 мин
Количество просмотров54K
Сегодня мы поговорим о том, как работать с файловой системой средствами Node.js, рассмотрим базовые операции, выполняемые с файлами. К таким операциям относятся следующие:

  • Создание файла
  • Чтение файла
  • Запись данных в файл
  • Удаление файла
  • Переименование файла

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


Читать дальше →
Всего голосов 36: ↑31 и ↓5+26
Комментарии1

Возможности Python 3, достойные того, чтобы ими пользовались

Время на прочтение5 мин
Количество просмотров44K
Многие программисты начали переходить со второй версии Python на третью из-за того, что уже довольно скоро поддержка Python 2 будет прекращена. Автор статьи, перевод которой мы публикуем, отмечает, что основной объём Python 3-кода, который ему доводилось видеть, выглядит как код со скобками, написанный на Python 2. По его словам, он и сам грешит чем-то подобным. Здесь он приводит примеры некоторых замечательных возможностей, доступных лишь тем, кто пользуется Python 3. Он надеется, что эти возможности облегчат жизнь тем, кто о них узнает.



Все примеры, приведённые в этом материале, написаны с использованием Python 3.7. В описании каждой возможности имеются сведения о минимальной версии Python, необходимой для её применения.
Читать дальше →
Всего голосов 77: ↑76 и ↓1+75
Комментарии82

Пишем чистый и масштабируемый JavaScript-код: 12 советов

Время на прочтение10 мин
Количество просмотров33K
Язык JavaScript родом из раннего веба. Сначала на нём писали простые скрипты, которые «оживляли» страницы сайтов. Теперь же JS превратился в полноценный язык программирования, который можно использовать даже для разработки серверных проектов.

Современные веб-приложения сильно зависят от JavaScript. Особенно это касается одностраничных приложений (Single-Page Application, SPA). С появлением библиотек и фреймворков, таких как React, Angular и Vue, JavaScript стал одним из основных строительных блоков веб-приложений.



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

Автор статьи, перевод которой мы сегодня публикуем, хочет поделиться советами по написанию чистого JavaScript-кода. Он говорит, что статья рассчитана на JS-программистов с любым уровнем подготовки. Но особенно полезной она будет для тех, кто знаком с JavaScript хотя бы на среднем уровне.
Читать дальше →
Всего голосов 49: ↑37 и ↓12+25
Комментарии21

Современные возможности C++, о которых надо знать всем программистам

Время на прочтение9 мин
Количество просмотров40K
Автор материала, перевод которого мы сегодня публикуем, говорит, что C++, в его современном виде, если сравнивать его с тем, чем был этот язык несколько лет назад, значительно изменился в лучшую сторону. Конечно, эти изменения произошли далеко не сразу. Например, в былые времена C++ не хватало динамичности. Непросто было найти человека, который мог бы сказать, что он питает к этому языку нежные чувства. Всё изменилось тогда, когда те, кто отвечает за стандартизацию языка, решили дать ход новшествам. В 2011 году C++ стал динамическим языком, языком, который постоянно развивается и вызывает у программистов куда больше положительных эмоций.

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



Сегодня мы поговорим о некоторых новых возможностях языка (начиная с C++ 11, которому, кстати, уже 8 лет), знать о которых будет полезно любому программисту.
Читать дальше →
Всего голосов 56: ↑44 и ↓12+32
Комментарии14

Python — помощник в поиске недорогих авиабилетов для тех, кто любит путешествовать

Время на прочтение15 мин
Количество просмотров26K
Автор статьи, перевод которой мы публикуем сегодня, говорит, что её цель — рассказать о разработке веб-скрапера на Python с использованием Selenium, который выполняет поиск цен на авиабилеты. При поиске билетов используются гибкие даты (+- 3 дня относительно указанных дат). Скрапер сохраняет результаты поиска в Excel-файле и отправляет тому, кто его запустил, электронное письмо с общими сведениями о том, что ему удалось найти. Задача этого проекта — помощь путешественникам в поиске наиболее выгодных предложений.



Если вы, разбираясь с материалом, почувствуете, что потерялись — взгляните на эту статью.
Читать дальше →
Всего голосов 44: ↑38 и ↓6+32
Комментарии23

Дата-центр во Франкфурте: ЦОД Telehouse

Время на прочтение5 мин
Количество просмотров8.1K
В мае RUVDS открыл новую гермозону в Германии, в крупнейшем финансовом и телекоммуникационном городе страны, Франкфурте. Высоконадёжный центр обработки данных Telehouse Frankfurt – один из дата-центров европейской компании Telehouse (штаб-квартира в Лондоне), которая в свою очередь является дочерней компанией глобальной японской телекоммуникационной корпорации KDDI.


О других наших площадках мы уже не раз писали. Сегодня расскажем подробнее о франкфуртском дата-центре.
Всего голосов 27: ↑27 и ↓0+27
Комментарии2

LLVM с точки зрения Go

Время на прочтение7 мин
Количество просмотров7.2K
Разработка компилятора — очень тяжёлая задача. Но, к счастью, с развитием проектов наподобие LLVM решение этой задачи значительно упрощается, что позволяет даже программисту-одиночке создать новый язык, близкий по производительности к C. Работа с LLVM осложняется тем, что эта система представлена огромным объёмом кода, снабжённого небольшой документацией. Для того чтобы попытаться этот недостаток исправить, автор материала, перевод которого мы сегодня публикуем, собирается продемонстрировать примеры кода, написанного на Go, и показать, как они транслируются сначала в Go SSA, а потом — в LLVM IR с использованием компилятора TinyGO. Код Go SSA и LLVM IR был немного отредактирован, из него было удалено то, что не относится к приводимым тут пояснениям, ради того, чтобы эти пояснения оказались бы более понятными.

image
Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии10

Информация

Сайт
ruvds.com
Дата регистрации
Дата основания
Численность
11–30 человек
Местоположение
Россия
Представитель
ruvds