Тайсон Ніл Деграс в детекторі нейтрино
Привіт! Мене звуть Артем, і я займаюся тестуванням веб-додатків в Badoo. Я регулярно читаю профілі великих компаній на Github для того, щоб дізнатися щось нове у веб-розробці, так і в тренди (іноді в майбутні тренди). І це переклад статті про Neutrino від Mozilla.
Neutrino — це інструмент, що об'єднує в собі кращі компоненти набору сучасних JavaScript-інструментів і простоту відсутності початкових налаштувань.
Читати далі →

Twitter-боти можуть значно більше, ніж просто спамити популярні хештегі і невтомно підписуватися на користувачів.

Взяти хоча б оповіщення від Twisst ISS бота, який надсилає вам повідомлення щоразу, коли Міжнародна космічна станція (МКС) буде видно з вашого місця розташування.



Або боти публічних сервісів на зразок Earthquake Robot, який відправляє твіт про підземні поштовхи більше 5 балів за шкалою Ріхтера, як тільки вони трапляються.

Ну і звичайно, poem.exe, робот, який постить вірші, а також Accidental Haiku, який ретвитит пости, випадково написані у формі хайку.


Читати далі →

Продуктивність старту JavaScript



Веб-розробники знають, як легко розростаються розміри веб-сторінок. Але завантаження сторінки — це не просто передача байтів по дроту. Коли браузер завантажив скрипти, йому потрібно їх отпарсить, інтерпретувати і запустити. У статті ми уважно розглянемо цю фазу і дізнаємося, чому вона може стати причиною уповільнення запуску вашої програми і як це виправити.

Читати далі →

PHP 7.1.1 FPM vs Node.js 7.4.0 в якості web backend сервера

Всім привіт, вирішив поділитися з вами результатами синтетичного тесту продуктивності свіжих версій PHP і Node.js.

Конфігурація сервера:

Простий VDS — 1 ядро процесора 2ГГц, 1 гб оперативы, 10Гб SSD.
ОС: Debian 8.6.
Так само зроблені базові налаштування ядра, щоб сервер в принципі міг обробляти велику кількість з'єднань.

Випробовувані:

— PHP 7.1.1 FPM
— Node.js 7.4.0

Перший етап:

Тут операції, які в основному використовує backend. А саме: склеювання рядків, мережевий введення-виведення, арифметика і робота з масивами.

Читати далі →

П'ятничний формат: VPN через... Jabber?

У деяких людей цікаві історії починаються з прийому рідин із вмістом алкоголю. У деяких з чогось міцнішого… У мене, як у справжнього представника світу IT, історія почалася… З відключення інтернету. Звичайно, можна було піти простим шляхом для вирішення проблеми, і просто заплатити, але адже це не істинний шлях самурая? Багато великих скріншотів

Читати далі →

Формуємо зображення з тексту в PhantomJS

Добрий вечір, Хабровчане! Новорічні свята відгриміли і всі потихеньку входять в робочий ритм після вихідний тижні, а це значить, що саме час описати свою новорічну забаву.
Якщо вам цікаво дізнатися, як генерувати зображення з простих картинок з допомогою PhantomJS і невеликий магії, то ласкаво просимо під кат!
Читати далі →

CodeceptJS — сучасні end2end тести для NodeJS

image
У світі NodeJS твориться повний хаос, кожен день з'являються нові фреймворки, розміри залежностей звичайного package.json виростають на сотні мегабайт, а бібліотека, яку ви додали в проект ще вчора, сьогодні вже морально застаріла. І якщо у світі фронтенд фреймворків вже намітилися явні фаворити: AngularJS, React, Vue, Ember, то що для приймального тестування абсолютно незрозуміло. Кожен фреймворк надає свій синтаксис і свої круті штуки, а також у кожного є свій характерний набір проблем. Наприклад, кожен по-своєму реалізує взаємодію з браузером, кожен по різному бореться з асинхронностью.
Ох, ця горезвісна асинхронність...
Читати далі →

Доставляємо собі в офіс чашку гарячої кави однією командою консолі за допомогою TestCafe


Друзі, сьогодні я розповім вам історію про те, як просто і елегантно вирішити проблему еnd-to-еnd тестування web-сервісу доставки кави з допомогою нового open source тестового фреймворка. Ми проведемо перевірку не тільки роботи сайту, але і менеджерів і навіть служби доставки, до того ж витратимо на це мінімум зусиль і часу. А в якості бонусу за докладені зусилля отримаємо чашку гарячої кави прямо в руки. Всіх любителів пригод прошу під кат...
Читати далі →

Особливості розробки Telegram бота з Google API в Docker

Коротко про боте: отримує список YouTube-каналів користувача і повідомляє про нові відео з можливістю нагадати про нього пізніше.

У статті розповім про особливості написання цього бота і взаємодії з Google API. Я люблю стислість, тому в статті буде мало «води».
На які питання відповість стаття:
  • Де взяти зовнішній адресу сайту для Webhook
  • Де взяти HTTPS-сертифікат як його використовувати, щоб Telegram йому довіряв
  • Як передавати дані та обробляти натискання на Inline-кнопки
  • Як отримати вічний OAuth токен для Google API
  • Як передати дані користувача через OAuth callback url
  • Як отримати безкоштовний домен 3 рівня
Стек:
  1. Back-end: Node.js + Express.js
  2. БД: Mongo.js + mongoose
  3. Пакетний менеджер: Yarn (він дійсно швидкий)
  4. Telegram-бот фреймворк: Telegraf
  5. Продакшн: Docker + Docker Compose + Vscale.io

Читати далі →

Створіть свій сервер AWS S3 з відкритим кодом



Amazon S3 (Simple Storage Service, сервіс простого сховища) — дуже потужний онлайн сервіс файлового сховища, надається Amazon Web Services. Думайте про нього, як про віддаленому диску, на якому ви можете зберігати файли в каталогах, отримувати і видаляти їх. Компанії, такі як DropBox, Netflix, Pinterest, Slideshare, Tumblr і багато інших, покладаються на нього.

Хоч сервіс відмінний, його код не відкрито, тому ви повинні довіряти Amazon свої дані, і хоч вони надають доступ до безкоштовного инстансу на рік, ви все одно повинні ввести інформацію про кредитну карту для створення облікового запису. Т. к. S3 повинен знати кожен інженер-програміст, я хочу, щоб мої студенти набули досвід роботи з ним і використовували його в своїх веб-додатках, і ще я не хочу, щоб вони за це платили. Деякі студенти також працюють під час поїздок, що означає повільне Інтернет-з'єднання і дорогий трафік, або взагалі повна відсутність Інтернету.

Читати далі →