Pull to refresh
0
0
Send message

Введение в fetch

Reading time 5 min
Views 296K

Прощай, XMLHttpRequest!


fetch() позволяет вам делать запросы, схожие с XMLHttpRequest (XHR). Основное отличие заключается в том, что Fetch API использует Promises (Обещания), которые позволяют использовать более простое и чистое API, избегать катастрофического количества callback'ов и необходимости помнить API для XMLHttpRequest.
Читать дальше →
Total votes 35: ↑30 and ↓5 +25
Comments 145

Квантовая песочница: часть 2

Reading time 7 min
Views 18K

Квантовая песочница: часть 1
Что такое квантовое состояние? Чем обычное состояние отличается от квантового? В какой момент обычное состояние становится квантовым и что будет, если от него отнять квантовости? Оно всё еще будет квантовым или уже превратится в обычное? Оно же только что было квантовым. Наверное, оно стало запутанным, и кот тоже стал запутанным.

В данной статье постараемся ответить на эти вопросы и разобраться в сути квантовой механики.
Цель: написать простую программу, «имитирующую» квантовую эволюцию, чтобы наконец можно было пощупать эти кубиты ручками.
Читать дальше →
Total votes 27: ↑24 and ↓3 +21
Comments 26

Vagrant для малышей, или как на Windows легко получить настроенный сервер для разработки веб-приложений

Reading time 9 min
Views 195K
Здравствуй, мой дорогой любитель поработать с Composer'ом, создавая свой очередной крутой проект на одном из модных фреймворков. Или, быть может, ты — фронтэнд-мастер, пишущий сложные штуки на JS и CSS, компилируя их из jsx- и less-файлов, устанавливая библиотеки через Bower, а проект собирая в каком-нибудь Grunt, попутно прогоняя код юнит-тестами и, конечно же, заливая потом всё это на github… Если всё это — часть твоей повседневной жизни, то хвала Всевышнему, поздравляю: ты прошел все эти испытания и даже не сломал себе мозг. Отныне, ты — из числа тех счастливых, потративших не одну неделю, разбираясь в том, как корректно настроить всю эту кучу инструментов, а также, ты — один из тех, кто может доминировать, властвовать и унижать блистать своими знаниями в комментариях Хабра к статьям других, менее проворных и смышлёных коллег по цеху…

Но… быть может, ты — лишь один из тех, кто только мечтает о подобных извращениях манипуляциях мастеров разработки современных веб-приложений?) Тогда я спешу обрадовать тебя: я тут на днях узнал пару полезных вещей и понял, что это — настоящий подарок для начинающих разработчиков. И решил написать эту статью.
Читать дальше →
Total votes 20: ↑17 and ↓3 +14
Comments 40

Пишем симулятор медленных соединений на Go

Reading time 6 min
Views 16K
В этой статье я хочу показать, как просто в Go можно делать достаточно сложные вещи, и какую мощь в себе несут интерфейсы. Речь пойдет о симуляции медленного соединения — но, в отличие от популярных решений в виде правил для iptables, мы реализуем это на стороне кода — так, чтобы можно было легко использовать, к примеру, в тестах.

Ничего сложного тут не будет, и ради большей наглядности я записал ascii-анимации (с помощью сервиса asciinema), но, надеюсь, будет познавательно.


Читать дальше →
Total votes 29: ↑27 and ↓2 +25
Comments 7

300 потрясающих бесплатных сервисов

Reading time 11 min
Views 1.6M


Автор оригинальной статьи Ali Mese добавил ещё 100 новых бесплатных сервисов. Все 400 потрясающих сервисов доступны здесь. И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные Веб-Сайты + Логотипы + Хостинг + Выставление Счета

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly.com Domain: Конструктор веб-сайтов.
  • Logaster: Онлайн генератор логотипов и элементов фирменного стиля (new).
  • Withoomph: Мгновенное создание логотипов (англ.).
  • Hipster Logo Generator: Генератор хипстерских логотипов.
  • Squarespace Free Logo: Можно скачать бесплатную версию в маленьком разрешении.
  • Invoice to me: Бесплатный генератор счета.
  • Free Invoice Generator: Альтернативный бесплатный генератор счета.
  • Slimvoice: Невероятно простой счет.

Читать дальше →
Total votes 341: ↑325 and ↓16 +309
Comments 107

Как создать веб-сайт, используя видео с YouTube в качестве фона?

Reading time 9 min
Views 86K


Большие видео на заднем плане веб-сайтов — довольно популярный тренд в веб-дизайне. Умело примененные видео могут сделать веб-сайт более драматичным и привлекательным для пользователей.

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

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

Хотя и наиболее популярным способом создания видео-фона является использование HTML5 видео тега вместе с некоторыми параметрами CSS, стоит также обратить внимание на альтернативные источники видео, например, YouTube. В этом случае, вам не придется переживать о медленном ответе сервера, потому что запрос будет отправляться напрямик в YouTube.

В этой статье, я покажу вам, как можно построить клевый сайт, использующий видео с YouTube в качестве фона. Мы будем использовать jQuery.mb.YTPlayer.js для редактирования и управления внешним видом нашего видео. Итак, приступим!

Скачать исходники
Демо
Читать дальше →
Total votes 75: ↑45 and ↓30 +15
Comments 55

Кросс-компиляция в Go

Reading time 9 min
Views 103K
Несмотря на то, что кроссплатформенность стала фактически стандартным атрибутом практически всех современных языков и библиотек, создавать по-настоящему кроссплатформенный продукт, всё равно было непросто. Компилируемые языки и сопутствующие библиотеки требовали сложной установки и настройки среды сборки и библиотек, а интерпретируемые — обязывали иметь или деплоить в составе необходимую версию интерпретатора. Есть немало проектов, пытающихся сделать этот процесс чуть более простым, но зачастую единственным решением оставалось устанавливать отдельный сервер и компилировать нативно.

В Go кросс-платформенность вышла на тот уровень, когда впервые можно смело отказаться от compile farms, специально настроенных dev-сред, виртуальных машин для сборки или chroot/docker-dev решений. И это ещё один серьезный game-changer, подробнее о котором я и хочу рассказать и показать на примерах
Поехали.


Читать дальше →
Total votes 51: ↑50 and ↓1 +49
Comments 13

Буфер вывода в PHP

Reading time 8 min
Views 51K
В этой статье я хочу рассказать о том, как реализован слой «буферизации вывода» в PHP, как работает и как с ним взаимодействовать из PHP. В этом слое нет ничего сложного, но многие разработчики либо совсем не понимают, как с ним обращаться, либо не имеют полной ясности. Всё, о чём я буду писать, относится к PHP версии 5.4 и выше. Именно начиная с неё изменились многие вещи, связанные с буфером вывода (БВ). По сути, этот функционал был полностью переписан, поэтому совместимость с версией 5.3 сохранилась лишь частично.

Что такое буфер вывода?


Поток вывода в PHP содержит байты, обычно в виде текста, которые разработчику надо вывести на экран. Чаще всего для этого используется конструкция echo или printf(). Во-первых, нужно понимать, что любая функция, которая что-то выводит, будет использовать БВ из области PHP. Если говорить о расширениях для PHP, то можно получить доступ к функциям, пишущим в SAPI напрямую, в обход любого вышерасположенного БВ. API C задокументировано в lxr.php.net/xref/PHP_5_5/main/php_output.h, отсюда можно почерпнуть немало информации, например, о размере буфера по умолчанию.

Второй важный момент: слой БВ является не единственным слоем, в котором буферизуются выводимые данные.

И третье: в зависимости от SAPI, который вы используете (веб или cli), слой БВ может вести себя по-разному.

Ниже представлена схема, которая поможет понять всё вышесказанное:

Читать дальше →
Total votes 59: ↑52 and ↓7 +45
Comments 10

How-to: Что нужно учитывать при разработке стратегии для торгового робота

Reading time 8 min
Views 36K
image

Ранее мы рассматривали этапы разработки торговых систем и изучали способы проверки работоспособности робота с помощью исторических данных, но не уделили внимание еще одному важному аспекту — созданию самой стратегии работы на рынке. Сегодня мы восполним этот пробел и поговорим о том, что нужно учитывать при разработке стратегии для торгового робота.
Читать дальше →
Total votes 23: ↑15 and ↓8 +7
Comments 15

Закат эры иконок от FatCow (выборка по цветам, топ 30 и прочая арифметика)

Reading time 8 min
Views 35K

Итоговый выпуск иконок




Пять лет тому назад мы начали рисовать набор пиксельных иконок. Мода была на Vista. К концу 2013 года набор FatCow дорос до 3926 иконок. Это на 356 иконок больше, чем у Fugue, который весной того же года остановился на цифре 3570 (размер: 16х16). 352 иконки из бонуса Fugue (32х32 и 24х24) не в счет (как повторы). Но дальнейшее развитие иконок FatCow заморожено. Увы, мы не увидим круглой цифры из 4000 иконок (работы осталось на месяц), не увидим выпуска для ретины дополнительных размеров уже существующих иконок, разработки прекращены из-за отсутствия бюджета. Успели сделать пробу для retina и только.

Да, это не мега-фото-реалистичные-3D еще-одни-никому-не-нужные-иконки, это старая пиксельная школа. Где в почете был маленький размер и ограничение цветовой гаммы. Пройдут еще 10 лет… и, мы искренне верим, пиксельные иконки так и останутся в ходу. И если Вы ценитель древних видов искусства, дней зарождения компьютерной графики, пожалуйста за ширмой!
Подробности
Total votes 66: ↑63 and ↓3 +60
Comments 52

Встраиваем бэкдор в публичный ключ RSA

Reading time 4 min
Views 111K

Привет, %username%!
Когда я увидел, как это работает, сказать, что я был в шоке — ничего не сказать. Это довольно простой трюк но после прочтения этой статьи вы больше никогда не будете смотреть на RSA по-прежнему. Это не взлом RSA, это нечто, что заставит вашу паранойю очень сильно разбухнуть.
Читать дальше →
Total votes 135: ↑125 and ↓10 +115
Comments 75

Padding Oracle Attack или почему криптография пугает

Reading time 7 min
Views 66K
Все мы знаем, что не следует самостоятельно реализовывать криптографические примитивы. Мы также в курсе, что даже если мы хитрым образом развернем порядок букв во всех словах сообщения, сдвинем каждую букву по алфавиту на 5 позиций и разбавим текст случайными фразами, чтобы сбить атакующих с пути, наш замечательный шифр скорее всего вскроет любой мало-мальски знакомый с криптографией человек (а в данном случае с задачей справится и в меру умный 12-летний подросток).

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

Мой посыл не в том, что убедить вас отказаться от самостоятельного использования криптографических средств или пойти и нанять консультанта с зарплатой от $1000 в час всякий раз когда вы задумываетесь о шифровании.
Частично я веду к тому, что вам никогда не следует расслабляться, всегда нужно быть начеку, изыскивая пути, которые злоумышленник может использовать для получения дополнительной информации о вашей системе, а частично к тому, что Padding Oracle Attack является крутой демонстрацией всего этого. Итак, начнем.
Читать дальше →
Total votes 73: ↑70 and ↓3 +67
Comments 61

Пошаговая инструкция: залог для сделок в bitcoin

Reading time 6 min
Views 36K
Bitcoin очень удобен и надёжен для хранения денег, но как проводить в нём сделки? Традиционные способы включают привлечение доверенной третьей стороны. Оказывается, bitcoin так могуч, что это вовсе не обязательно. Ниже я расскажу, как двум людям, не доверяющим друг другу, провернуть сделку в bitcoin без привлечения третьих сторон.

esrowbitcoin

Читать дальше →
Total votes 43: ↑36 and ↓7 +29
Comments 70

5 самых нужных дополнений к Laravel 4

Reading time 3 min
Views 20K
image

Когда заходит речь о разработке, мы все пытаемся найти более эффективные и быстрые способы программирования, порой не замечая, что кто-то уже сталкивался с похожей задачей, и изящно её реализовал. Что вы скажете, если мы сократим на 3/4 наш говнокод, всего лишь добавив несколько простых и эффективных зависимостей?

Для тех, кто не знает что такое Laravel 4 — это PHP фреймворк для быстрой разработки. Этот фреймворк с открытым исходным кодом на github, сделан для настоящих ремесленников веб-программирования такими же ремесленниками. Как говорится, «для программистов от программистов». Но статья не о прелестях Laravel, и не о его преимуществах перед другими фреймворками, об этом я с удовольствием расскажу в других статьях. Здесь я расскажу о пяти наиболее значимых и важных дополнений к Laravel 4, которые сэкономят вам драгоценные минуты кодинга.

Приступим...
Total votes 20: ↑18 and ↓2 +16
Comments 27

Поднимаем упрощенную провайдерскую сеть дома

Reading time 23 min
Views 69K
Изначально эта статья была дневником по лабораторной работе, которую я придумал сам для себя. Постепенно мне начало казаться, что данная информация может быть полезна кому-то еще. Поэтому я постарался преобразовать заметку в более-менее приличный вид, добавить описание некоторых команд и технологий.

В статье рассматривается построение простейшей сети с несколькими провайдерами и клиентами, в частности, такие технологии, как NAT, OSPF, BGP, MPLS VPN. Многое, естественно, будет не учтено. Например в статье почти нет описания проблем безопасности, т.к. на эту тему можно говорить бесконечно, а текст и так получается довольно объемным. QoS тоже оставлен в стороне, т.к. в лабораторных условиях его особо не проверишь.

По поводу целевой аудитории. Совсем новичкам в сетях статья, боюсь, будет непонятна. Людям, обладающим знаниями хотя бы на уровне CCNP – неинтересна. Поэтому я примерно ориентируюсь на сертификацию CCNA R&S.
Читать дальше →
Total votes 39: ↑39 and ↓0 +39
Comments 11

Ремонт БП FSP Epsilon 1010, принцип работы APFC

Reading time 10 min
Views 212K
Идея написать родилась после очередной непредвиденной поломки блока питания, чтобы поделиться опытом да и самому было где почитать в следующий раз, если попадётся на ремонт подобный блок питания (далее — БП) или понадобится вспомнить схему.



Сразу скажу, статья рассчитана на простого пользователя ПК, хотя можно было и углубиться в академические подробности.
Несмотря на то, что схемы не мои, я даю описание исключительно «от себя», которое не претендует не единственно правильное, а имеет целью объяснить «на пальцах» работу столь необходимого устройства, как БП компьютера.

Необходимость вникнуть в работу APFC у меня появилась в 2005 году, когда я имел проблему с произвольной перезагрузкой компьютера. Комп я купил на «мыльной» фирмочке не вникая особо в тонкости. В сервисе не помогли: на фирме работает, а у меня перезагружается. Я понял, что пришла очередь напрячься самому… Оказалось проблема в домашней сети, которая вечером просаживалась скачками до 160В! Начал искать схему, увеличивать ёмкость входных конденсаторов, слегка попустило, но проблему не решило. В процессе поиска информации увидел в прайсах непонятные буквы APFC и PPFC в названиях блоков. Позже выяснил, что у меня оказался PPFC и я решил купить себе блок с APFC, потом взял ещё и бесперебойник. Начались другие проблемы — выбивает бесперебойник при включении системника и пропадании сети, в сервисе разводят руками. Сдал его обратно, купил в 3 раза мощнее, работает по сей день без проблем.

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

Блоки питания FSP Epsilon 1010 представляют собой качественные и надёжные устройства, но учитывая проблемы наших сетей и другие случайности, они иногда тоже выходят из строя. Выкидывать такой блок жалко, а ремонт может приблизиться к стоимости нового. Но бывают и мелочи, устранив которые, можно вернуть его к жизни.
Читать дальше →
Total votes 77: ↑73 and ↓4 +69
Comments 41

Постраничная верстка rel=«next|prev»

Reading time 3 min
Views 29K
Наряду с использование атрибута rel=«canonical» для указания поисковому боту на дублирование контента, теперь возможно использовать для HTML ссылок значение rel=“next” и rel=“prev” для обозначения положения текущей страницы в отношении соседних в рамках навигационного блока. В рамках веба встречаются различные варианты использования постраничной навигации — статья, разделенная на несколько страниц, либо категория товаров распределенных по нескольким страницам, либо ветка форума, разделенная на последовательность URL-ов. Теперь, включив rel=“next” и rel=“prev” в верстку страниц, мы можем указать Google:
  • Создать консолидированный индекс страниц, чтобы ссылки не рассеивались между отдельными страницами page-1.html, page-2.html, и так далее
  • При поиске направить пользователя на наиболее релевантную страницу среди всех остальных, например в начало статьи, разбитой на несколько страниц
Подробности и нюансы использования
Total votes 80: ↑77 and ↓3 +74
Comments 25

Золотой ключик от Google Adwords — Памятка по (за)ведению кампаний

Reading time 9 min
Views 5.1K
imageAdWords, сервис контекстной рекламы от корпорации неравнозначия Google, ещё не так хорошо приживается на российском рынке. Рядового пользователя-держателя небольшого интернет-магазинчика, набитый словно бабушкин пирожок черникой на областной станции, интерфейс сразу отпугивает. Да и проблемы с русской морфологией, а также неудобство расчёта месячного бюджета рекламной кампании, для мало-мальски среднечастотных запросов обычно перерастающее в невозможность, зачастую служат разочарованием начинающего предпринимателя и основанием для окончания знакомства с сервисом на самой ранней стадии. Агентства относятся к AdWords более лояльно и даже с пониманием, но всё равно жалуют не часто. Тут против них играют неудобства при расчёте без НДС, платный API и, конечно же, отсутствие агентских комиссионных от Google. Но всё-таки, если ещё и учесть поисковых партнёров Google (тот же Mail.ru), кусок от аудитории предлагается достаточно приличный, чтобы его полностью игнорировать.

Хотя клиентов, соглашающихся вести рекламу в AdWords, раза в 3-4 меньше, чем в Яндекс.Директ, наше рекламное агентство всё равно научилось ценить эту систему контекстной рекламы и мы стараемся быть в курсе всех её нововведений. А благодаря недавнему звонку от агентского консультанта Google, по-крайней мере, я смог более структурировано определить необходимые основы для заведения новой рекламной кампании в AdWords и правки существующей, основы, которые могут существенно увеличить Ваш CTR, конверсии, а соответственно и прибыль.

Предлагаю этот полезный материал и вам...
Total votes 38: ↑37 and ↓1 +36
Comments 13

На пороге дополненной реальности: к чему готовиться разработчикам (часть 3 из 3)

Reading time 10 min
Views 13K

Третья и заключительная часть стенограммы-трилогии (см. часть 1 и часть 2) доклада про Дополненную Реальность.

Речь пойдет об обработке изображений в применении к дополненной реальности:
  • детектирование маркеров и меток;
  • многокамерные системы маркерного захвата движений;
  • структурированная подсветка;
  • Z-сенсоры (в частности, Kinect);
  • использование баз данных поз;
  • чисто оптические системы захвата движений.

И на закуску — субъективный взгляд на будущее дополненной реальности, который прояснит смысл картинки с собакой.
Читать дальше →
Total votes 53: ↑47 and ↓6 +41
Comments 11

Information

Rating
Does not participate
Registered
Activity