Pull to refresh
15
0
Марсель Абдрахманов @marsABD

User

Send message

Что такое semantic-release и как с ним работать

Level of difficultyMedium
Reading time7 min
Views3.4K

Привет! Я — Алексей Бондаренко, работаю в команде Платформа Банки.ру. Сегодня хочу рассказать о semantic-release и его практическом применении на примере упрощения разработки и внедрения библиотеки в проект. 

Читать далее
Total votes 13: ↑11 and ↓2+15
Comments5

ИТ Стажировка в продуктовой компании? Казнить(,) нельзя(,) помиловать

Reading time11 min
Views5.6K

Привет! Меня зовут Павел, я Head of Mobile в финансовом маркетплейсе Banki.ru. Сегодня я хочу остановиться не на mobile и нашей внутренней кухне направления, а рассказать про опыт создания программ стажировок на базе наших продуктовых команд. Поговорим о подходах, подводных камнях, первых результатах, да и вообще о целесообразности создания подобных программ.

Читать далее
Total votes 8: ↑5 and ↓3+4
Comments3

Где Agile ужасен, особенно Scrum

Reading time15 min
Views95K
Гибкость — без сомнения хорошая вещь, и в манифесте Agile есть смысл. По сравнению с хрупкой практикой под названием «водопад», Agile заметно лучше. Тем не менее, на практике гибкие подходы часто наносят глубокий вред, и в действительности вряд ли здесь уместна дихотомия Agile/Waterfall.

Я видел, как множество вариантов Agile, называемых Scrum, реально убивают компанию. Под «убивают» я имею в виду не «ухудшение культуры», а скорее когда акции компании падают почти на 90% за два года.

Что такое Agile?


Agile вырос из среды веб-консалтинга, где он приносил определённую пользу: при работе с привередливыми клиентами, которые не знают, чего они хотят, обычно приходится выбирать из двух вариантов. Или одолеть клиента: установить ожидания, соответствующую оплату за переделки и поддерживать отношения равенства, а не подчинения. Или принять некорректное поведение клиента (как, скажем, приходится многим дизайнерам) и ориентировать рабочий поток вокруг клиентской дисфункции.
Читать дальше →
Total votes 87: ↑66 and ↓21+45
Comments214

Клавиатура для профессионалов: всё об UHK по-русски

Reading time5 min
Views26K
Привет, GT! В спорах об эргоромичности тех или иных клавиатур преломлено множество копий, но, кажется, есть одна клавиатура, которую можно по праву назвать ультимативным решением практически любых проблем с «заводскими» эргономичными решениями. Судите сами: угол поворота одной части относительно другой настраивается (причём выставить можно реально любой, хоть 180 градусов). Расстояние между «половинками» — тоже. Кинематика работы свичей — на выбор покупателя. Продуманная до мелочей раскладка. Занимает минимум места на столе. Оптимизирована под слепой десятипальцевый метод ввода. Пригодность к моддину и установке дополнительных акесессуаров. Заинтригованы? Встречайте: Ultimate Hacking Keyboard!

Читать дальше →
Total votes 45: ↑39 and ↓6+33
Comments167

Быль о типографе

Reading time2 min
Views15K
Было время, когда каждый веб-разработчик писал свой типограф или думал о нём. Я не стал исключением и написал типограф на PHP. Но как сделать типограф без нормальной поддержки UTF-8, в то время я не представлял, в итоге забросил идею.

Прошло время, но идея создания типографа не оставляла, и я решил написать его уже на JavaScript.
Читать дальше →
Total votes 29: ↑26 and ↓3+23
Comments12

Учебник AngularJS: Всеобъемлющее руководство, часть 2

Reading time22 min
Views191K
Часть 1

4.1 $rootScope


$rootScope не сильно отличается от $scope, просто это объект $scope самого верхнего уровня, от которого происходят все остальные области видимости. Когда Angular начинает создание вашего приложение, он создаёт объект $rootScope, и все привязки и логика приложения создают объекты $scope, являющиеся наследниками $rootScope.

Обычно мы не используем $rootScope, но с его помощью можно обеспечить передачу данных между разными областями видимости.
Читать дальше →
Total votes 33: ↑29 and ↓4+25
Comments23

Очень субъективный обзор JS фреймворков. AmpersandJS, часть 0

Reading time20 min
Views61K
От переводчика: когда я начал разбираться с MVC-фреймворками для фронт-энда, каким-то чудом попалась на глаза эта статья Henrik Joreteg. Сейчас дошли руки перевести ее для Хабра, тем более, что об AmpersandJS на Хабре вообще не слышно. Попробую организовать цикл статей по этому инструменту ребят из &yet, мне кажется, он достоин внимания.

котики и велосипеды

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

Angular.js


за

  1. очень легко начать использовать. можно просто вставить тег script, добавить немного ng- атрибутов в ваше приложение, и вы волшебным образом получаете нужное вам поведение
  2. Angular хорошо поддерживается его основной командой разработчиков, многие из которых работают в Гугле на постоянной основе
  3. большая аудитория/сообщество

Читать дальше →
Total votes 45: ↑42 and ↓3+39
Comments104

Развертываем свой сайт на Heroku

Reading time4 min
Views163K
Здравствуй, Хабрахабр! Недавно у меня возникла необходимость развернуть свое Rails web-приложение на Heroku и я, к своему удивлению, не нашел почти ничего об этом на просторах не только Хабра, но и рунета в целом, поэтому я решил поделиться с вами своим опытом. Подробности о том, что и как я делал находятся под катом!


Читать дальше →
Total votes 22: ↑12 and ↓10+2
Comments13

ReactJS для глупых людей

Reading time5 min
Views484K
Пытаясь разобраться с библиотекой от Facebook ReactJS и продвигаемой той же компанией архитектурой «Flux», наткнулся на просторах интернета на две занимательные статьи: «ReactJS For Stupid People» и «Flux For Stupid People». Решил поделиться с хабравчанами переводом первой (а чуть позже и второй) статьи. Итак, поехали.

ReactJS для глупых людей


TL;DR В течении долгого времени я пытался понять, что такое React и как он вписывается в структуру приложения. Это статья, которой мне в свое время не хватало.

Что такое React?


Чем отличается React от Angular, Ember, Backbone и других? Как управлять данными? Как взаимодействовать с сервером? Что, черт возьми, такое JSX? Что такое «component»?

СТОП.

Остановитесь прямо сейчас.

React — это ТОЛЬКО УРОВЕНЬ ПРЕДСТАВЛЕНИЯ.
Читать дальше →
Total votes 47: ↑44 and ↓3+41
Comments17

Будущее JavaScript MVC фреймворков

Reading time6 min
Views32K

Представляем Om




Нам, в нашем ClojureScript-углу, это было известно уже давно — все наши структуры данных неизменяемы и основаны на оригинальных коллекциях из Clojure, написанных на Java. Современные JavaScript движки в настоящее время достаточно оптимизированы и мы часто наблюдаем производительность этих коллекций в пределах 0.4X от JVM.

Стоп, стоп, стоп. А какое же отношение может иметь производительность неизменяемых структур данных к JavaScript MVC? — Достаточно существенное.

Возможно, объяснить это будет не очень просто, но все же я постараюсь. Дело в том, что неизменяемые структуры данных, представленные в новой библиотеке Om позволяют создавать приложения на порядок производительнее, чем на популярных JS MVC фреймворков, таких как MVC Backbone.js (без ручной оптимизации). Om построен на прекрасном фреймворке от Facebook — React. Если вы не слышали о нём раньше, рекомендую посмотреть видео с JSConf EU 2013. Интересен тот факт, что из-за неизменяемых коллекций Om может продемонстрировать результаты лучше, чем при использовании React без каких-либо модификаций.
Читать дальше →
Total votes 61: ↑43 and ↓18+25
Comments26

Краткое руководство по React JS

Reading time5 min
Views411K
Статья даст вам краткий обзор того, как строятся интерфейсы с помощью React JS.
Вы можете параллельно писать код с помощью starter kit, или просто продолжать читать.
Читать дальше →
Total votes 23: ↑20 and ↓3+17
Comments15

AngularJs. Отложенная загрузка модулей

Reading time5 min
Views34K
AngularJs – великолепный фреймворк для разработки web-приложений. Разработка бизнес-логики приложения полностью отделена от сопутствующей суеты вокруг DOM. Angular модульный – это замечательно, но так же является источником проблемы. Количество модулей быстро растёт. И если директивы ещё можно упаковывать в отдельные пакеты типа angular-ui, то с контроллёрами бизнес-логики всё сложнее. Всё становится ещё хуже, когда требования безопасности в принципе запрещают загрузку на клиента контроллёров с бизнес-логикой, которые недоступны текущему пользователю. При развитой ролевой системе доступа к приложению масштаб проблемы становится очевиден.
Решение
Total votes 23: ↑21 and ↓2+19
Comments22

15 лучших JavaScript-библиотек для построения диаграмм и сводных таблиц

Reading time6 min
Views308K
Практически невозможно представить себе информационную панель без диаграмм и графиков. Они быстро и эффективно отображают сложные статистические данные. Более того, хорошая диаграмма также улучшает общий дизайн вашего сайта.

В этой статье я покажу вам некоторые из лучших JavaScript библиотек для построения диаграмм/схем (и сводных таблиц). Эти библиотеки помогут вам в создании красивых и настраиваемых графиков для ваших будущих проектов.

Хотя большинство библиотек являются бесплатными и свободно распространяемыми, для некоторых из них есть платные версии с дополнительным функционалом.

Читать дальше →
Total votes 71: ↑65 and ↓6+59
Comments17

Karma — тестируем javascript в консоли

Reading time3 min
Views54K
Здравствуйте. Признаюсь честно, я пишу тесты редко. Т.е хотел бы чаще, но все как-то не получается. Вроде и руководство в принципе не против даже, но все равно находятся задачи посрочнее и поважнее. Тем не менее на днях заглянув в redmine обнаружил что задач практически нет (точнее они были, но требовали сперва дождаться бэкэнда).
Что ж, самое время вспомнить про тесты (конечно нужно было раньше о них думать, но лучше поздно чем никогда).
Вообще я до этого уже пробовал писать тесты, в том числе и на бэкэнде, а конкретно django. Я еще тогда подумал что было бы здорово запускать тесты из консоли а не в окне браузера. Ну а поскольку с недавнего времени я активно слежу за развитием angular, то почему бы не посмотреть как это сделано у них. Тем более как-то краем глаза я зацепил момент, что там тесты как раз запускаются в консоли. Плюс к тому же с нуля разбираться в премудростях тестирования не хотелось и я решил взять какой нибудь готовый проект с тестами, посмотреть как оно сделано, и погонять собственно тесты на нем. Мой выбор пал на angular-ui, а точнее на один из его модулей ui-utils.

Скачиваем, заходим в корень видим папку test а в ней файл karma.conf.js
Да и в самом ридми написано, что тесты запускаются так karma start —browsers ….
Гуглим karmajs и находим то что нам нужно karma-runner.github.io/0.8/index.html
Утилита для тестирования. Итак что она может?
  • Запускать тесты из консоли
  • Автоматически прогонять все тесты при каждом сохранении!!!
  • Возможность писать тесты на множестве фреймворков, таких как jasmine, qunit и др.
  • Прогонять тесты сразу на нескольких браузерах. (в том числе виртуальных, например fantomjs).


В общем то мне этих возможностей уже оказалось достаточно, чтобы взяться за нее. Но там есть и другие, в которые я пока не вникал, например интеграция с jenkins
Попробуем запустить тесты?
Total votes 10: ↑8 and ↓2+6
Comments2

Несколько интересностей и полезностей для веб-разработчика #35

Reading time7 min
Views51K
Доброго времени суток, уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

Front-end Job Interview Questions


Репозиторий с самыми актуальными вопросами на собеседовании на позицию фронтенд разработчика. Проект от команды знаменитого HTML5 Boilerplate и набрал уже более 7500 звезд на GitHub.

ShareDrop



В «Америках» почему-то часто критикуют веб-стандарты и работу консорциума W3C в целом. Но не знаю как вас, а меня современные возможности очень даже радуют, особенно когда я вижу их реализацию. Встречайте P2P сервис для передачи файлов, основанный на технологии WebRTC и Firebase. Это веб аналог яблочного AirDrop. Лично я открыл оффлайновый учебник «Постройка.ру» по HTML лет 7-8 назад и по сравнению с тем, что мы видим сейчас — это небо и земля. Даже невзирая на объем и некоторую путаницу в спецификациях.

Читать дальше →
Total votes 65: ↑61 and ↓4+57
Comments15

Logitech выпустила клавиатуру для нескольких устройств

Reading time1 min
Views52K
image

Компания Logitech объявила о выпуске Bluetooth-клавиатуры Logitech Bluetooth Multi-Device Keyboard K480, которая может одновременно работать с несколькими устройствами — одновременно к ней можно подключить три девайса (компьютер, планшет и смартфон). Для переключения между устройствами используется специальное колесико на клавиатуре.
Читать дальше →
Total votes 40: ↑38 and ↓2+36
Comments60

Эмуляция NES/Sega/etc в кармане: Обзор/настройка EXEQ Ray 2 (JXD S5110b) — прошивка, софт, управление

Reading time8 min
Views48K
imageВ этой статье я расскажу о своем опыте в эксплуатации и настройке игровой консоли на android "EXEQ Ray 2" (близнец JXD S5110b). При чем рассказывать я буду не о том, как она работает в качестве андроид-девайса, а исключительно в качестве эмулятора старых игровых консолей — Sega, NES (денди), SNES, DS, и т.п. Ведь именно в качестве портативного эмулятора я ее и покупал.

Быстро пробежимся по скучным техническим характеристикам:
  • Габариты: 195х87х17 мм, 232 г
  • Android 4.1.1 с root-правами «из коробки»
  • Экран 5'', глянцевый, TN, 800x480, эмкостной тач на 5 касаний
  • 8 Gb памяти + microSD
  • 2-ядерный 1.5 GHz CPU
  • Wi-Fi, mini-HDMI, акселерометр, камера 0.3 MPx
  • Два аналоговых стика, два бампера (шифта), D-Pad, 4 кнопки, start, select
  • Аккумулятор: Li-Ion 2200 mAh (3 часа игры)
  • Стоимость: ~4200 руб.

В видеоролике ниже я покрутил приставку в руках, немного рассказал о ней и показал, как она работает:



Для всех, кто заинтересовался, далее я расскажу о всех проблемах, с которыми я столкнулся и расскажу, как их решал.
Читать дальше →
Total votes 52: ↑47 and ↓5+42
Comments29

Один день в офисе 500px. Фото-рассказ

Reading time3 min
Views109K
Этим летом мне посчастливилось быть в Торонто. Именно там, а не в привычной всем Долине, находится офис стартапа №1 в Канаде — 500px. Конечно, нельзя было упускать шанс побывать в гостях у известного на весь мир проекта, который, кстати сказать, создали и развивают два «наших» фотографа — москвич Евгений Чеботарев и киевлянин Олег Гуцол. Так что, в одну из пятниц я отправился в гости.

Что такое 500px?


«500px — is a photo community powered by creative people worldwide», — так о своем проекте говорят сами авторы. Я бы добавил, что это лучший сайт с самыми красивыми фотографиями, которые я когда либо встречал.

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

Побывать в офисе у такого проекта и окунуться в рабочую атмосферу было по-настоящему интересно.

Офис


Основное рабочее пространство — open space в большой комнате. Столы расположены «фермами» в несколько рядов по 4-6 рабочих мест в ряду. Рабочие места — друг на против друга.



Читать дальше →
Total votes 71: ↑62 and ↓9+53
Comments42

Microsoft взяла на работу дизайнера, создавшего футуристический бренд

Reading time1 min
Views136K


Дизайнер Эндрю Ким (Andrew Kim) наделал много шуму летом 2012 года, когда создал свой вариант брендинга для Microsoft. Бренд The Next Microsoft основан на научной фантастике, футуристическом развитии человеческого вида и освоении космоса.

Несколько дней назад Эндрю Ким написал в своём блоге, что после шести месяцев переговоров компания Microsoft взяла его на работу, в подразделение Xbox. Эндрю приступит к работе после окончания учёбы в университете, летом 2013 года.
Читать дальше →
Total votes 160: ↑129 and ↓31+98
Comments90

Lenovo показала 10 килограммовый планшет

Reading time1 min
Views152K
На выставке бытовой электроники CES 2013 которая сейчас проходит в США, компания Lenovo показала планшет размером с небольшой стол. IdeaCentre Horizon Table PC имеет диагональ в 27 дюймов и весит 10 кг. На первый взгляд IdeaCentre Horizon Table PC выглядит как моноблок, только без подставки. Как говорит Lenovo, устройство представляет собой «межперсональный компьютер», то есть устройство, которое изначально задумано, как решение для одновременной работы нескольких человек.



Читать дальше →
Total votes 69: ↑61 and ↓8+53
Comments125
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity