Как стать автором
Обновить
2
0

Пользователь

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

RE: Гата / Гонка начинающих шкиперов AFR

Время на прочтение4 мин
Количество просмотров3K
В августе мы запускаем на Хабре конкурс, подробности которого раскроем позже, но уже сейчас можно сказать, что будет весело и интересно. Приз за первое место — участие в парусной регате AFR (Another F*cking Race), которая пройдёт с 3 по 10 ноября в Сароническом заливе (Греция) совместно с командой RUVDS и Хабра. Эта гонка для начинающих шкиперов — нечто среднее между регатой и вечеринкой.



AFR была создана Александром Бабицким, путешественником и яхтенным инструктором, прошедшим более 25 000 морских миль на собственной лодке, обучившим десятки лицензированных шкиперов и вдохновившим на любовь к морю сотни людей. Мы пообщались с Александром и попросили его рассказать не только о самой регате, но и о технических айтишных моментах. Ведь яхта — это не только паруса и канаты, хотя их на ней в избытке.
Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии4

JavaScript: путь к ясности кода

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

image

Программирование с учётом ясности того, что получается, это то, что отделяет великих разработчиков от разработчиков обычных. В этом материале мы хотим привести несколько базовых принципов, которые позволят вам сделать первые шаги на пути к ясному коду.
Читать дальше →
Всего голосов 26: ↑22 и ↓4+18
Комментарии11

Хитрый вопрос по JavaScript, который задают на собеседованиях в Google и Amazon

Время на прочтение3 мин
Количество просмотров117K
Привет Хабр! Есть один вопрос, с виду — не такой уж и сложный, который нередко задают разработчикам на собеседованиях.

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

const arr = [10, 12, 15, 21];
for (var i = 0; i < arr.length; i++) {
  setTimeout(function() {
    console.log('Index: ' + i + ', element: ' + arr[i]);
  }, 3000);
}

А вы знаете, что появится в консоли?
Читать дальше →
Всего голосов 59: ↑34 и ↓25+9
Комментарии51

Промисы в ES6: паттерны и анти-паттерны

Время на прочтение10 мин
Количество просмотров51K
Несколько лет назад, когда я начал работать в Node.js, меня приводило в ужас то, что сейчас известно как «ад коллбэков». Но тогда из этого ада выбраться было не так уж и просто. Однако, в наши дни Node.js включает в себя самые свежие, самые интересные возможности JavaScript. В частности, Node, начиная с 4-й версии, поддерживает промисы. Они позволяют уйти от сложных конструкций, состоящих из коллбэков.

image

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

Обратите внимание на то, что здесь я буду использовать стрелочные функции. Если вы с ними не знакомы, стоит сказать, что устроены они несложно, но в этом случае советую прочесть материал об их особенностях.
Читать дальше →
Всего голосов 33: ↑28 и ↓5+23
Комментарии63

Kali Linux: виды проверок информационных систем

Время на прочтение21 мин
Количество просмотров22K
→ Часть 1. Kali Linux: политика безопасности, защита компьютеров и сетевых служб
→ Часть 2. Kali Linux: фильтрация трафика с помощью netfilter
→ Часть 3. Kali Linux: мониторинг и логирование
→ Часть 4. Kali Linux: упражнения по защите и мониторингу системы
→ Часть 5. Kali Linux: оценка защищённости систем

Продолжаем публикацию перевода 11-й главы книги «Kali Linux Revealed». Сегодня хотим познакомить вас с разделом 11.2, который посвящён видам мероприятий, направленных на оценку защищённости информационных систем.


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

JavaScript ES8 и переход на async / await

Время на прочтение8 мин
Количество просмотров59K
Недавно мы опубликовали материал «Промисы в ES6: паттерны и анти-паттерны». Он вызвал серьёзный интерес аудитории, в комментариях к нему наши читатели рассуждали об особенностях написания асинхронного кода в современных JS-проектах. Кстати, советуем почитать их комментарии — найдёте там много интересного.

image

По совету пользователя ilnuribat мы добавили к материалу опрос, целью которого было выяснить популярность промисов, коллбэков и конструкций async / await. По состоянию на 9-е сентября промисы и async / await получили примерно по 43% голосов, с небольшим перевесом async / await, коллбэкам досталось 14%. Главный вывод, который можно сделать, проанализировав результаты опроса и комментарии, заключается в том, что важны все имеющиеся технологии, однако, всё больше программистов тяготеют к async / await. Поэтому сегодня мы решили опубликовать перевод статьи про переход на async / await, которая является продолжением материала о промисах.
Читать дальше →
Всего голосов 41: ↑37 и ↓4+33
Комментарии107

Новшества серверного рендеринга в React 16

Время на прочтение11 мин
Количество просмотров47K
Вышел React 16! Рассказывая об этом событии, можно упомянуть множество замечательных новостей (вроде архитектуры ядра Fibers), но лично меня больше всего восхищают улучшения серверного рендеринга. Предлагаю подробно всё это разобрать и сравнить с тем, что было раньше. Надеюсь, серверный рендеринг в React 16 понравится вам так же, как он понравился мне.


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

Ticket Trick: взлом сотен компаний через службы поддержки пользователей

Время на прочтение9 мин
Количество просмотров18K
Несколько месяцев назад была обнаружена уязвимость, с помощью которой хакеры могут взламывать корпоративные средства обмена сообщениями. Воспользоваться этой уязвимостью не сложнее, чем пару раз щёлкнуть мышью, при её успешной эксплуатации можно получить доступ ко внутренней сети компании, к аккаунтам её сотрудников в социальных сетях, таких, как Twitter, и, обычно, к командам в Yammer и Slack.

Я придумал для моей находки имя и логотип. Примите как данность.

Проблема, о которой идёт речь, всё ещё существует. Это — не тот случай, когда всё можно моментально привести в порядок. За последние несколько месяцев я связался с десятками компаний и затронутых уязвимостью поставщиков услуг, в рамках их программ отлова багов, для того, чтобы исправить ситуацию. Из-за огромного количества организаций, на которых это распространяется, я не в состоянии связаться со всеми. Следуя рекомендациям некоторых уважаемых мною людей и с разрешения затронутых проблемой организаций, я публикую этот материал для того, чтобы все, кого это касается, могли бы немедленно принять меры. Сейчас я расскажу о том, что я назвал Ticket Trick.
Читать дальше →
Всего голосов 54: ↑53 и ↓1+52
Комментарии9

С днём рождения, Linux! Вспомним ядро 1.0

Время на прочтение6 мин
Количество просмотров24K
Недавно мы делились с вами материалом об эволюции Linux. Сегодня, в честь недавнего 26-го дня рождения ядра операционной системы, публикуем рассказ о том, с чего всё начиналось.

image
Читать дальше →
Всего голосов 49: ↑47 и ↓2+45
Комментарии46

Linux: перенаправление

Время на прочтение5 мин
Количество просмотров75K
Если вы уже освоились с основами терминала, возможно, вы уже готовы к тому, чтобы комбинировать изученные команды. Иногда выполнения команд оболочки по одной вполне достаточно для решения некоей задачи, но в некоторых случаях вводить команду за командой слишком утомительно и нерационально. В подобной ситуации нам пригодятся некоторые особые символы, вроде угловых скобок.



Для оболочки, интерпретатора команд Linux, эти дополнительные символы — не пустая трата места на экране. Они — мощные команды, которые могут связывать воедино различные фрагменты информации, разделять то, что было до этого цельным, и делать ещё много всего. Одна из самых простых, и, в то же время, мощных и широко используемых возможностей оболочки — это перенаправление стандартных потоков ввода/вывода.
Читать дальше →
Всего голосов 48: ↑40 и ↓8+32
Комментарии26

Исследование и оптимизация производительности Object#toString в ES2015

Время на прочтение7 мин
Количество просмотров5.7K
Бенедикт Мейрер из мюнхенского офиса Google занимается вопросами оптимизации JavaScript. В этом материале он рассказывает об особенностях реализации и функционирования Object.prototype.toString() в движке V8. В частности, речь пойдёт о том, почему эта конструкция важна, о том, как она изменилась с появлением символов ES2015, и о подходе к оптимизации, который предложили инженеры из Mozilla, приведшем к примерно шестикратному увеличению производительности toString() в V8.

image
Читать дальше →
Всего голосов 23: ↑23 и ↓0+23
Комментарии2

Не думай о минутах свысока

Время на прочтение4 мин
Количество просмотров7.3K
Широкое распространение облачных сервисов не обошло стороной и такую традиционную услугу как «виртуальный частный/выделенный сервер – VPS/VDS. Современное решение в сфере хостинга – «облачный VPS» (Cloud VPS) с гибкой системой пользования ресурсами и гибкой схемой оплаты. Клиент платит только за пользование услугой и согласно установленному для определенного объема ресурсов тарифу. Он самостоятельно определяет и задает объем ресурсов для своего сервера, которые требуются в данный момент для решения его задач. Пользователь создает себе сервер с нужными характеристиками и может в любое время изменить объем потребляемого ресурса, временно приостановить работу сервера, создать второй сервер и т.д.

Читать дальше →
Всего голосов 23: ↑18 и ↓5+13
Комментарии12

Электропитание без перебоев

Время на прочтение18 мин
Количество просмотров52K
С увеличением зависимости бизнеса от ИТ и повышением требований информационных систем к электропитанию необходимость в системах бесперебойного питания становится все очевиднее.



Для защиты ИТ-оборудования от перебоев в электросети и некачественного электропитания широко применяются источники бесперебойного питания (Uninterruptible Power Supply, UPS) — ИБП. Это дополнительное оборудование, предназначенное для электропитания ИТ-систем или других устройств при кратковременном (до нескольких десятков минут) отключении основного электропитания, а также для защиты от помех и бросков в электросети и поддержания параметров питания в допустимых пределах. То есть ИБП также могут использоваться для улучшения качества электропитания.
Читать дальше →
Всего голосов 28: ↑27 и ↓1+26
Комментарии22

Информация

В рейтинге
Не участвует
Работает в
Зарегистрирован
Активность