Как стать автором
Обновить
22
0
Артур Столяр @NekR

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

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

Использование React JSX вместе с TypeScript 1.6

Время на прочтение7 мин
Количество просмотров45K
Не так давно Microsoft объявила о выпуске TypeScript 1.6 Beta, одним из интересных, на мой взгляд, нововведением является поддержка React/JSX, что в совокупности с особенностями TypeScript'а открывает новые возможности.



Я расскажу о личном опыте — как начал использовать связку TypeScript + React, с каким проблемами столкнулся и как их решал. А так же покажу примеры gulp-тасков для того, чтобы это все заработало и продемонстрирую код минимального todo приложения на TypeScript + React (ссылка на Github).

Если вам это интересно — пожалуйста, заходите под кат.
Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии5

(Не)безопасный frontend

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

Интро


Не так давно я выступал на конференции FrontendConf 2015 (РИТ++) с темой данной статьи. И при подготовке доклада начал искать информацию, а кто вообще выступал на данную тему и что есть в Сети на данный момент.

Оказалось, что информации совсем немного, более-менее можно было бы отметить доклад mikewest.org/2013/09/frontend-security-frontendconf-2013 от Mike West из компании Google, но какой-то «непентестерский» взгляд и уж совсем мало материала. И www.slideshare.net/eoftedal/web-application-security-in-front-end где тема раскрыта более детально, но выступление 2011 года. А за 4 года технологии и атаки на месте не стояли.

Долго и сложно выбирая темы, что же все-таки рассказать разработчикам фронтендов про безопасность, при этом минимум касаясь бекэнда (местами все-таки это неделимо), получился доклад, а здесь — его текстовый пересказ.

О чем вообще разговор?


А действительно, о чем тут вообще можно разговаривать? Говоря про взломы и безопасность невольно приходят в голову тезисы — слили базу, получили доступ к выполнению команд ОС на сервере, прочитали чужую переписку. Но это все — server side код. А что ж может «нагородить» фронтэндер? Главная опасность, конечно же, в обходе атакующим SOP — Same Origin Policy, главной политики безопасности браузеров, которая регулирует работу в разных Origin. Но не только, давайте разбираться.

Читать дальше →
Всего голосов 64: ↑63 и ↓1+62
Комментарии4

Очередной умный дом, в трех частях. Часть первая, железная

Время на прочтение5 мин
Количество просмотров137K
Хочу рассказать и показать результаты проекта, который развивается примерно 10 лет. Развивается как хобби, поэтому бывает, что за неделю делается новое устройство, а потом за полгода – не делается ничего. Я очень не люблю словосочетание «Умный дом», поэтому дальше оно не встретится. Также тут не будет схем, примеров кода, опутанных проводами макетных плат и прочих скучных вещей. Будет много фото и рассуждений на общие темы.

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

Размышления о стандартной библиотеке JavaScript. Core.js

Время на прочтение64 мин
Количество просмотров104K
Один пацан писал все на JavaScript, и клиент, и сервер, говорил что нравится, удобно, читабельно. Потом его в дурку забрали, конечно.
— С просторов интернета

К чему это я? Занятная штука — JavaScript. Основа современного web и на фронтэнде альтернатив как таковых не имеет.

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

Ванильная стандартная библиотека JavaScript, в целом, неплоха. Это не только стандартная библиотека по спецификации языка ECMA-262 актуальных версий — от 3 до черновика 6. Часть API вынесена в отдельные спецификации, например, API интернационализации ECMA-402. Многие возможности, без которых сложно представить JavaScript, например, setTimeout, относятся к web-стандартам. Консоль не стандартизована вовсе — приходится полагаться на стандарт де-факто.

Вот только не такая уж она и стандартная — везде разная. Есть старые IE, в которых из коробки мы получаем стандартную библиотеку ES3 90-бородатого года даже без Array#forEach, Function#bind, Object.create и консоли, и есть, например, Node.js, на которой многие уже вовсю используют возможности грядущего ES6.

Хочется иметь универсальную, действительно стандартную библиотеку, как на сервере, так и в любом браузере, максимально соответствующую современным стандартам, а также реализующую необходимый функционал, что (пока?) не стандартизован. Статья посвящена библиотеке core.js — реализация моих соображений по поводу стандартной библиотеки JavaScript. Кроме того, эта статья еще и шпаргалка по современной стандартизованной стандартной библиотеке JavaScript и заметки о её перспективах.

Содержание, или что получим на выходе:


Читать дальше →
Всего голосов 87: ↑82 и ↓5+77
Комментарии40

Запуск Android-приложений под Windows, OS X, Linux в Chrome

Время на прочтение1 мин
Количество просмотров75K
archon

Корпорация Google довольно давно добавила Android-приложения в каталог Chrome Web Store, позволяя запускать ряд таких приложений на Chromebook или Chromebox. Не так давно несколько разработчиков сообщили, что есть возможность запускать и другие Android-приложения, не из каталога Chrome Web Store. Правда, перед запуском такие приложения нужно специальным образом подготовить.

Благодаря такой подготовке Android-приложения можно запускать не только на Chromebook, но и работать с ними в Windows, OS X, и Linux. Причем приложения запускаются, как нативные.

Читать дальше →
Всего голосов 48: ↑45 и ↓3+42
Комментарии27

Изменение правил конкурса Tizen App Challenge

Время на прочтение1 мин
Количество просмотров3.2K
Добрый день, Хабр!

В связи с переносом на неопределенный срок выхода смартфона Samsung Z на Tizen, мы вынуждены изменить правила конкурса. Номинации теперь связаны исключительно с умными часами Gear 2 и Gear 3 (они же Gear S), сроки продлеваются, но призовой фонд остается неизменным. Обновленные правила можно изучить ЗДЕСЬ.

Всего голосов 11: ↑6 и ↓5+1
Комментарии17

DigitalOcean добавил возможность использования CoreOS

Время на прочтение2 мин
Количество просмотров18K
logo DO-CoreOS

Буквально позавчера DigitalOcean объявила о возможности использования предустановленного образа CoreOS.

По заверениям DigitalOcean их интеграция с альфа-версией CoreOS предоставит мобильным и веб-разработчикам, заитересованных в использовании Docker, простой и быстрый путь для выпуска приложений и экспериментов с контейнерами. В CoreOS docker-контейнеры могут стартовать за миллисекунды, обеспечивая беспрецедентную гибкость в управлении нагрузкой на кластер дроплетов. Среди дополнительных плюшек — автоматическое обновление, автоматическая настойка сети и интерграция с etcd.
При этом DigitaOcean выпустила ряд статей по запуску и настройке CoreOS:


Читать дальше →
Всего голосов 34: ↑28 и ↓6+22
Комментарии15

Редактор CSS Shapes для Chrome

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


Спецификации CSS Shapes позволяют красиво оформить обтекание текстом на веб-странице. Средствами CSS можно создать произвольную форму, но это обычно весьма трудоёмкая задача. Новое расширение CSS Shapes Editor для Chrome кардинально облегчает процесс. Это интерактивный редактор CSS Shapes, где контуры указываются простым перетягиванием точек с помощью мыши.
Читать дальше →
Всего голосов 61: ↑58 и ↓3+55
Комментарии17

oDesk (Upwork). Мой опыт за полтора года

Время на прочтение12 мин
Количество просмотров445K
Вот уже полтора года я зарабатываю фрилансом на бирже oDesk. За это время у меня накопилось много материалов по данной теме. В данном топике я собрал все в одну статью и адаптировал для аудитории хабра.
image
Читать дальше →
Всего голосов 192: ↑185 и ↓7+178
Комментарии321

Как пароль изменил мою жизнь

Время на прочтение4 мин
Количество просмотров377K
«Как она могла так поступить со мной?» — спрашивал я себя. Каждый день. Все время.

В 2011 году, когда еще были популярны градиенты, а Ай-ОС иконки задавали направление в дизайне и люди пользовались дезодорантами, я был в депрессии из-за своего развода.

К счастью, я оказался достаточно находчивым, чтобы выбраться из нее. (Еще мне помогли замечательные люди, которые меня окружали.)

* * * * *

Как-то раз, я пришел в офис и взглянул на свой монитор. Все было классно, пока я не увидел это сообщение:

Ваш пароль устарел.
Кликните на кнопку «Изменить пароль», чтобы изменить пароль.


Да ладно! А я-то думал кнопка «Изменить пароль» предназначена для чего-то другого.

Я прочитал это дурацкое сообщение про себя голосом ворчливого старика: «Чертов пароль устарел».

На моей работе Microsoft Exchange Server требовал менять пароль каждые 30 дней у тысяч сотрудников.

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

Я был в ярости этим утром вторника в 9:40. На улице было настолько жарко, что я вспотел еще до того как приступил к работе. Я опоздал. Я был все еще в своем шлеме. Я забыл позавтракать. Во рту был вкус напоминающий сигарету. Мне предстояло разобраться с этим до начала совещания в 10 часов. Впереди меня ожидала необходимость потратить на это кучу своего времени.

* * * * *

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

Вскоре, немного успокоившись, я вспомнил про метод, который слышал от своего бывшего начальника Расмуса. Он объединил список дел с паролями. А я решил использовать расширенный вариант этого метода.

Я решил использовать пароль, чтобы изменить свою жизнь.
Читать дальше →
Всего голосов 344: ↑283 и ↓61+222
Комментарии232

Gremlins.js — monkey testing библиотека для веб приложений

Время на прочтение6 мин
Количество просмотров36K
NPM version

Это первая из двух статей, рассказывающая о тестировании с помощью gremlins.js и grunt-gremlins. Первая статья — перевод официальной документации gremlins.js. Вторая — опыт внедрения gremlins.js в реальный проект при помощи grunt-gremlins.

Gremlins.js это monkey testing библиотека написанная на JavaScript, для Node.js и браузеров. С ее помощью проверяется надежность веб-приложений под полчищем гремлинов.

Kate: What are they, Billy?
Billy Peltzer: They're gremlins, Kate, just like Mr. Futterman said.


image
Читать дальше →
Всего голосов 74: ↑71 и ↓3+68
Комментарии13

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность