Как стать автором
Обновить
0
0
Дмитрий Швалёв @dshster

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

Отправить сообщение

UNIX-подобные системы содержат кучу костылей. Крах «философии UNIX»

Время на прочтение29 мин
Количество просмотров107K
UPD от 2017-03-04: кто-то выполнил английский перевод. Обсуждение на Hacker News.

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

Костыли в UNIX начали возникать ещё с момента появления UNIX, а это было ещё раньше появления не только Windows, но даже вроде бы Microsoft DOS (вроде бы, мне лень проверять, проверяйте сами). Если лень читать, хотя бы просмотрите все пункты, что-нибудь интересное найдёте. Это далеко не полный список, это просто те косяки, который я захотел упомянуть.
Читать дальше →
Всего голосов 455: ↑297 и ↓158+139
Комментарии700

Angular — настройка среды разработки и production сборки с AOT-компиляцией и tree-shaking (Gulp, Rollup, SystemJS)

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

Одна из особенностей Angular, присущая и первой и новой версии — высокий порог вхождения. Новый Angular, помимо всего прочего, трудно даже запустить. А и запустив, легко получить 1-2 Мб скриптов и порядка нескольких сотен запросов при загрузке hello world страницы. Можно, конечно, использовать всякие стартеры, seed'ы или Angular CLI, но для использования в серъезном проекте нужно самому во всем разбираться.


В этой статье я постараюсь описать, как настроить удобную среду разработки с использованием SystemJS, и production сборку Angular приложения на основе Rollup, с выходом около 100кб скриптов и нескольких запросов при открытии страницы. Использовать будем TypeScript и SCSS.


Попробовать все в деле можно в моем angular-gulp-starter проекте.


Читать дальше →
Всего голосов 23: ↑20 и ↓3+17
Комментарии32

Занятие на вечер: ресайзинг элементов на pure JS

Время на прочтение5 мин
Количество просмотров18K
Выдался ещё один свободный вечер, сегодня будем делать полноценный resizable в любую сторону для любых элементов (div, изображений, чего угодно) на чистом JavaScript.

Демо-страничка: Resizable.js
Читать дальше →
Всего голосов 27: ↑18 и ↓9+9
Комментарии54

Redux Action Creators. Без констант и головной боли

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


Всем привет! Эта статья будет полезна тем, кто устал использовать constants в Redux (частично показано на превью выше). Под катом я покажу очередной возможный велосипед и как на нем кататься.


Читать дальше →
Всего голосов 32: ↑20 и ↓12+8
Комментарии66

РАН признала гомеопатию лженаукой

Время на прочтение3 мин
Количество просмотров61K
image

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

«Комиссия по борьбе с лженаукой и фальсификацией научных исследований при Президиуме РАН в сотрудничестве с просветительским фондом „Эволюция“ опубликовала меморандум „О лженаучности гомеопатии“, в котором заявляет, что „лечение сверхмалыми дозами лекарственных средств, применяемое в гомеопатии, не имеет научных оснований“. Вывод комиссии при Президиуме РАН основан на тщательном изучении публикаций в научных изданиях и отчетов о клинических исследованиях. Комиссия констатирует, что принципы гомеопатии и объяснения механизмов ее действия противоречат известным законам природы, и что доказательства ее эффективности отсутствуют. В состав экспертной группы Комиссии вошли специалисты в области доказательной, экспериментальной и клинической медицины, физики, химии, биохимии, иммунологии, психологии, молекулярной биологии, фармакологии, биотехнологии, фармации и биостатистики», — говорится в пресс-релизе.

Экспертное заключение меморандума подписали более тридцати человек, которые являются учеными, докторами медицинских и химических наук, профессорами и медиками почти всех специализаций, от терапевтов до сексологов.
Читать дальше →
Всего голосов 115: ↑112 и ↓3+109
Комментарии657

10 подкастов для изучения/продолжения изучения английского языка

Время на прочтение5 мин
Количество просмотров187K
image

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

Подкасты – это звуковые аудиофайлы в стиле радиопередач в интернете Как правило, подкасты имеют определенную тематику и периодичность издания. Каждый человек, у которого есть смартфон, может прослушивать подкасты. Для прослушивания подкастов у владельцев Apple есть родное приложение, называется «podcasts». Android пользователи могут использовать приложение «Podcast Addict».
Читать дальше →
Всего голосов 32: ↑32 и ↓0+32
Комментарии42

Let’s Encrypt и Express. Каждому серверу – по зелёному замку́

Время на прочтение6 мин
Количество просмотров49K
HTTPS становится всё более сильным трендом современного интернета. И это хорошо, особенно, когда клиенты, взаимодействуя с серверами, обмениваются с ними конфиденциальными данными. Для того, чтобы пользоваться HTTPS, нужен SSL-сертификат, который применяется для проверки подлинности сервера. Проект Let’s Encrypt значительно упростил процесс получения SSL-сертификатов. До его появления всё было гораздо сложнее.

image

Let’s Encrypt использует Certbot от Electronic Frontier Foundation для автоматизации процесса получения SSL-сертификата. Поддерживаются разные типы веб-серверов (Apache, nginx, и другие), которые работают на Unix-подобных ОС. Если ваш сервер соответствует системным требованиям Let’s Encrypt, это значит, что вы сможете получить сертификат в практически полностью автоматическом режиме. К сожалению, связку Node.js/Express.js Let’s Encrypt не поддерживает. То есть, в данном случае автоматически получить сертификат от Certbot не получится. Однако, не всё потеряно. Используя Let’s Encrypt и Certbot, сертификат не так уж и сложно получить вручную.
Читать дальше →
Всего голосов 45: ↑38 и ↓7+31
Комментарии75

Node.js, Express и MongoDB: API за полчаса

Время на прочтение11 мин
Количество просмотров243K
Начинающему программисту разработка для Node.js может показаться сущим кошмаром. Виной всему – гибкость этой платформы и отсутствие чётких руководств. Но, на самом деле, всё не так уж и страшно.


Вот, например, типичная задача: разработка REST API, серверной части некоего приложения. Обилие собственных возможностей Node и множество дополнительных модулей, которые способны помочь в решении этой задачи, способны завести новичка в тупик, вызванный богатством выбора. Основные вопросы здесь заключаются в подборе компонентов и в настройке их совместной работы.
Читать дальше →
Всего голосов 39: ↑30 и ↓9+21
Комментарии30

Как работает Passport.js

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

PassportJS — это middleware для авторизации под node.js. Passport поддерживает авторизацию с помощью огромного количества сервисов, включая «ВКонтакте» и прочие твиттеры. Список сервисов можно просмотреть здесь. Я хочу немного рассказать о том, как работает этот middleware на примере самой обычной авторизации с помощью логина и пароля.

Для самых нетерпеливых — готовый проект можно посмотреть здесь.
Читать дальше →
Всего голосов 20: ↑17 и ↓3+14
Комментарии16

Грабли mongoose

Время на прочтение4 мин
Количество просмотров59K
Хакер — человек, который наступает на грабли, которые спрятаны в сарай и закрыты на замок

Mongoose — самый популярный модуль для работы с mongodb на javascript. Примеры на сайте позволяют достаточно быстро и успешно начать его использовать, однако mongoose имеет ряд неожиданных особенностей, которые могут заставить программиста начать выдирать волосы на голове. Именно об этих особенностях я и собираюсь рассказать.
Читать дальше →
Всего голосов 22: ↑18 и ↓4+14
Комментарии10

Async/await это шаг назад для JavaScript'a?

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


В конце 2015 года я услышал об этой паре ключевых слов, которые ворвались в мир JavaScript, чтобы спасти нас от promise chain hell, который, в свою очередь, должен был спасти нас от callback hell. Давайте посмотрим несколько примеров, чтобы понять, как мы дошли до async/await.
Читать дальше →
Всего голосов 70: ↑46 и ↓24+22
Комментарии115

Делаем проект на Node.js с использованием Mongoose, Express, Cluster. Часть 2.1

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

Введение


Здраствуйте, дорогие хабровчане! Сегодня у нас в основном будут маленькие изменения, но изменений много. В этой части мы будем:


  • Создавать свой логгер
  • Записывать в лог запросы и время их обработки
  • Исправлять ошибки, которые мы допустили в первой части.
  • Разбираться с авторизациеей
  • Разбираться с некоторыми классами
  • Конфиги!
Читать дальше →
Всего голосов 19: ↑15 и ↓4+11
Комментарии8

Делаем проект на Node.js с использованием Mongoose, Express, Cluster. Часть 1

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

Введение


Добрый день, дорогой %username%! Сегодня мы будем описывать создание каркаса приложение по типу MVC на Node.js с использованием кластеров, Express.js и mongoose.


Задача — поднять сервер который имеет несколько особенностей.


  • Работает в несколько асинхронных потоков.
  • Сессионная информация будет в общей для всех потоков.
  • Поддержка HTTPS.
  • Авторизация.
  • Легко масштабируем.

Статья написана новичком для новичков. Буду рад любым замечаниям!

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

Angular 2: почему на TypeScript?

Время на прочтение8 мин
Количество просмотров38K
Здравствуйте все, кто не забывает заглядывать в наш блог и в традиционно нерабочее время суток!

Давным-давно в нашей публикации от 13 ноября 2015 года вы убедили нас дождаться допиливания Angular 2 и издать о нем книгу. Мы всерьез собираемся взяться за такой проект в самое ближайшее время, а пока предлагаем почитать развернутый ответ на вопрос, вынесенный в заглавие этого поста.
Читать дальше →
Всего голосов 36: ↑33 и ↓3+30
Комментарии121

Так ли хорош React Native?

Время на прочтение3 мин
Количество просмотров26K
React Native React Native довольно новая технология которая с первого взгляда кажется серебряной пулей для многих начинающих разработчиков. В статье я хочу развеять этот миф и рассказать что же именно не так с React Native и почему стоит подождать прежде чем его использовать.

И так по порядку, я Full-stack разработчик. Использую последний стандарт javascript на фронетнде и бэкенде. Опыта разработки мобильных приложений нет, но есть 5 лет опыта разработки высоконагруженных проектов на node.js, asp.net mvc. Опробовать React Native я решил при создании простого мобильного приложения — клиента LessPass для Android.
Читать дальше →
Всего голосов 41: ↑24 и ↓17+7
Комментарии34

Кэширование данных в web приложениях. Использование memcached

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


Юрий Краснощек (Delphi LLC, Dell)


Я немного расскажу вам про кэширование. Кэширование, в общем-то, не сильно интересно, берешь и кэшируешь, поэтому я еще расскажу про memcached, довольно интимные подробности.



Про кэширование начнем с того, что просят вас разработать фабрику по производству омнониевых торсиометров. Это стандартная задача, главное делать скучное лицо и говорить: «Ну, мы применим типовую схему для разработки фабрики».
Читать дальше →
Всего голосов 31: ↑23 и ↓8+15
Комментарии6

Интересные Sсi-Fi фильмы, которые вы (не должны были, но) могли пропустить в 2016 году

Время на прочтение4 мин
Количество просмотров68K
Для читателей Geektimes (а еще для своего мужа) я составила список интересных Sсi-Fi фильмов ушедшего 2016 года. Фильмы, указанные ниже, доступны в сети и имели относительно небольшой или неуспешный релиз, поэтому я предполагаю, вы пропустили, по крайней мере, некоторые из них.
Всего голосов 77: ↑47 и ↓30+17
Комментарии188

Чистый javascript.Функции

Время на прочтение11 мин
Количество просмотров34K
Читать дальше →
Всего голосов 28: ↑24 и ↓4+20
Комментарии44

Оптимизация производительности в React

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

React. Продвинутые руководства. Часть Пятая


Продолжение серии переводов раздела "Продвинутые руководства" (Advanced Guides) официальной документации библиотеки React.js.


Оптимизация производительности в React


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


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

Ремастеринг текстур для BioShock: The Collection

Время на прочтение7 мин
Количество просмотров21K
image

[Все картинки кликабельны, потому что Хабр сжимает изображения разрешением больше 1920]

Введение


Меня зовут Ана Родригес (Ana M. Rodriguez), я занимаюсь компьютерной графикой и специализируюсь на текстурах и шейдерах, В настоящее время я работаю фрилансером компании Blind Squirrel Games, последним моим проектом был сборник игр Bioshock: The Collection. До него я работала над Castlevania: Lords of Shadows 1 и 2. Также мне удалось поучаствовать в проекте Castlevania: Mirror of Fate для Nintendo 3DS.
Читать дальше →
Всего голосов 60: ↑59 и ↓1+58
Комментарии7

Информация

В рейтинге
Не участвует
Откуда
Казань, Татарстан, Россия
Дата рождения
Зарегистрирован
Активность