Pull to refresh
42
0
Винокуров Роман @Chaos_Code

User

Send message

Foreman — менеджер процессов для ваших веб-приложений

Reading time4 min
Views33K
Все более популярной становится модель разработки веб-приложений, основанная на идее масштабирования с помощью процессов. Современное приложение представляет из себя набор выполняющихся процессов, не хранящих состояния, причем каждый изолирован друг от друга. Каждому такому процессу назначается свой локальный порт, что позволяет прозрачно экспортировать ваши сервисы для последующего их потребления кем-нибудь еще, возможно даже, что друг другом (например, один обслуживает http-запросы от пользователей, принимая url-адреса видео, а другой медленно, но верно, загружает их и конвертирует). Как правило, в большинстве случаев http-сервисы просто ставят за reverse proxy в nginx, но возможны варианты.

Не секрет, что у каждого разработчика есть свой арсенал инструментов, позволяющий ему так или иначе сделать свою жизнь проще. Сегодня мы поговорим о таком инструменте, как Foreman. Используя его, вы можете объявить в одном месте все процессы, которые необходимы для запуска вашего приложения. Для этого используется так называемый Procfile, который выглядит как-то так:

web:    mono ./awesome-app --port $PORT
api:    node ./api.js -p $PORT
worker: bundle exec rake resque:work QUEUE=*
habr:   bundle exec ./bin/thin -a localhost -p $PORT

Как видите, все довольно просто, в каждой строчке файла содержится по названию типа процесса и строка для его запуска.
Так зачем оно нужно и что же там есть такого вкусного?

4 ошибки, которые я допустил как технический директор

Reading time6 min
Views148K
На самом деле, ошибок было, безусловно, больше, но сейчас, спустя два года после начала работы в должности технического директора одного крупного мобильного аутсорсера, именно эти 4 кажутся мне главными.

На позицию CTO я пришёл не через стандартный путь “Developer -> Senior -> Team lead -> CTO”, а через гуманитарный вариант – “PM -> Senior PM -> CTO”. В этом были как свои плюсы, так и минусы, и трудно сказать, чего больше, но персональных вызовов хватало всегда и техническое прошлое часто спасало, однако, сейчас не об этом.

4. Вынужденные оценки


Помимо того, что я вынес в подзаголовок, сразу скажу, что первой ошибкой было всё-таки желание участвовать вообще во всех оценках, что отнимало у меня 60-70% времени поначалу. Постепенно я от этого отказался и стал заниматься только крупными лидами, оставив более мелкие оценки полностью на откуп тимлидам, которым научился доверять.

Оценка потенциальных проектов в аутсорсе – это то, от чего сильно меняется восприятие процесса разработки и может поехать чердак.
Читать дальше →

Сравнение Angular, Backbone, CanJS и Ember

Reading time7 min
Views95K
(Дата публикации оригинала — 12.04.2013)
Выбор JavaScript MVC фреймворка — тяжёлая работа. Нужно учесть много факторов, и число вариантов выбора может быть огромно. Достаточно взглянуть на проект ToDoMVC (о нем по-русски).

Я работал с 4 фреймворками: Angular, Backbone, CanJS и Ember. Поэтому решил сделать сравнение, чтобы помочь вам решить, какой из них использовать. Я выделю несколько факторов, которые вы можете использовать при выборе. Каждый фактор будет иметь оценку от 1 до 5 (больше — лучше). Я старался быть беспристрастным, но, конечно, оценки основаны на личном опыте.


Читать дальше →

Hopscotch: азы программирования для детей на iPad

Reading time2 min
Views12K
Как заинтересовать женщин программированием? Наверное, предлагая им доступные средства обучения в самом раннем возрасте – видимо такая идея витала в головах создателей приложения Hopscotch для iPad, новой визуальной среды для создания простых приложений.

Hopscotch это объектно-ориентированный язык, который сделан намеренно ярким и цветным, подходящим для детей 8-12 лет. Вместо того чтобы грузить детей бесконечными строчками кода, создание программ Hopscotch это перетаскивание разных объектов и скриптов, которые умеют работать с ними. Объекты – милые персонажи, а скрипты можно выбирать из выпадающего меню или из левого меню. Результатом работы детей могут стать короткие анимации и игры.

Читать дальше →

Хорошая беседа о борьбе с прокрастинацией

Reading time1 min
Views61K
Давно знаком и являюсь поклонником Яны Франк (ака Миумау в ЖЖ — www.miumau.lj.ru). Был на ее встрече позавчера, записал всю встречу на видео. Что мне понравилось: много дельных советов о борьбе с творческим кризисом, прокрастинацией в личном развитии и астенизацией. Все эти подходы применимы не только среди «художников», или тех чьи профессии считаются «творческими», но и вообще среди людей, которые хотят получать удовольствие от работы.

Вначале пару минут вступления-хождения.

Нужна ли кастомизация для bootstrap?

Reading time1 min
Views23K
imageВ своих проектах часто использую bootstrap. Он великолепен. И для того чтобы сделать его еще более универсальным у меня появилась мысль сделать сервис для его кастомизации. Прежде я конечно поискал аналоги и был приятно удивлен обилием ресурсов использующих bootstrap. Есть и сборники готовых тем. Нашел сервис который позволяет серьезно изменить внешность bootstrap'а. Но он немного перегружен деталями и для создания удобного варианта темы у меня должны быть заготовлены готовые цветовые палитры. Прикольно, но не очень юзабельно как по мне. Вот и решил я состряпать свой сервис с удобным и простым интерфейсом, который отдавал бы пользователю архив последней версии bootstrap с сохраненной цветовой схемой.
Читать дальше →

LangPrism – сервис краудсорсинг-перевода веб-содержимого

Reading time5 min
Views5.3K

Здравствуй, уважаемое хабрасообщество!

Хочу представить вам наш проект по народному переводу Интернета LangPrism. Краудсорсинг уже давно и уверенно входит во все сферы деятельности человека и применение краудсорсинга для такой области, как перевод, не является чем-то особенно новым, однако мы решили взглянуть на это несколько с иной стороны и хотим представить вам свою точку зрения в виде нашего проекта. Возможно, многим он уже знаком по нашим переводам здесь, на Хабре (перевод, перевод, еще перевод), но, тем не менее, я решил опубликовать отдельный пост, чтобы рассказать о нем более подробно.

Под катом вы также узнаете о новом Хабре на японском языке, не пропустите!
Читать Хабр на японском...

Пара слов о книге «Professional TDD with C#»

Reading time3 min
Views19K


Хотел бы сказать пару слов о книге Professional Test Driven Development with C#. Выбрать книгу по популярным технологиям и техникам программирования не так сложно. На каждом форуме написано, что если хочешь познать .NET – не обойтись без Рихтера. Сложнее с менее популярными темами. Итак, TDD…

Очередной труд про TDD.

Перевод Angular.js на русский язык

Reading time1 min
Views61K
Фреймворк Angular.js видится весьма перспективным, но, к сожалению, материалов на русском по нему почти нет. Чтобы поспособствовать формированию русскоязычного сообщества, начал перевод руководства разработчика. Подключайтесь angular.ru

Добавка
Читать дальше →

Генерация случайных лиц в PaperJS

Reading time1 min
Views27K


Синтетические изображения обычно выглядят неестественно, не по-человечески, и тренированный глаз сразу их отличает от настоящих. Проект Weird Faces Study — это попытка объединить традиционную технику «человеческого» рисунка и компьютерные алгоритмы. Результат — сгенерированные компьютерные лица, каждое из которых уникально и выглядит как оригинальная авторская работа.
Читать дальше →

Javascript Interface Abstract Notation

Reading time6 min
Views14K
Здравствуйте всем, этот пост о библиотеке, а вернее философии разработки приложений на Javascript которую изобрел пару месяцев назад. Постоянно использую сам, раздал всем друзьям. Отзывы положительные, поэтому решил рискнуть открыть более широкому сообществу.
Сама библиотека работает как подстройка к jQuery. Практически зависимость от jQuery условна и ее можно разделить с самой библиотекой, пока не было необходимости.
Jiant позволяет создавать клиентские приложения любой сложности, значительно упрощая их поддержку и развитие.
Читать дальше →

Ripple: первая в мире распределённая глобальная валютная биржа

Reading time2 min
Views69K


Стартап OpenCoin, основанный создателем E-Loan Крисом Ларсеном и Джедом МакКалебом(Jed McCaleb), создавшим файлообменную сеть eDonkey и крупнейшую биржу Bitcoin Mt. Gox, вокруг которой последние дни так много шума, получили инвестиции от именитых венчурных фирм на разработку Ripple — первой в мире распределённой глобальной валютной биржи. Так же Ripple включает понятие ripples(XRP) — новой электронной валюты. В системе будет содержаться фиксированное число единиц ripples. Если быть более конкретным — 100 миллиардов.
Подробности

CodingDead — события, технологии и новости Ruby/Rails/Javascript сообщества

Reading time1 min
Views4.2K


Чуть больше года назад мы открыли информационный поток на Google+ посвященный Ruby/Rails. Не смотря на разные отзывы в духе «а давайте здесь рекламировать группы Вконтакте» и скромный +1 посту, к сообществу присоединилось более 500 разработчиков, которые и по сей день получают (более или менее регулярно) новости, ссылки и пищу для размышлений.
Читать дальше →

65 статистик из мира мобильных игр, чтобы впечатлить друзей

Reading time4 min
Views61K
Мы любим игры для мобилок, а ещё очень ценим цифры. Но когда мы ищем в вебе статистику о трендах в разработке мобильных игр, мы быстро понимаем, что в общем-то нет единого места, где бы всё это добро было собрано. Так что вот оно, куча статистики индустрии мобильных игр, которая сделает вас очень популярным на следующей игровой конференции, или коктейльной вечеринке, когда вас спросит какой-нибудь скептик…

“Неужели люди действительно тратят так много времени на видео-игры?” Да, мы действительно тратим.

(прим. переводчика: автор частенько повторяется, простим ему это)


(Примечание к фото: мы никогда не смотрим выше)
Читать дальше →

Три самые ненавистные вещи в компьютерах

Reading time4 min
Views48K
Всё ниженаписанное касается не только и не столько опытных пользователей, сколько выражает обобщённые причины неприязни к современным компьютерам (то есть к компьютерным интерфейсам, так как внешний компьютеров вид не вызывает особых нареканий) со стороны малооптыных пользователей, которые не хотят тратить много времени на получение компетенции.

Итак, три самые ненавистные вещи для пользователей: изменения, неожиданности, разрыв контекста.

Во всех своих рассуждениях я буду основываться на понятии «интерфейс для решения задачи», потому что единственная причина, почему пользователь использует компьютер — потому что он может решить ту или иную задачу, который я и буду называть «интерфейсом».

В качестве альтернативы я буду сравнивать несколько других интерфейсов: автомобиль, пианино, печатная машинка.

Изменения


Компьютеры позволяют менять интерфейс (напоминаю, речь про интерфейс для решения задачи) очень быстро и легко. Появление новых функций ставит программиста/разработчика интерфейса/etc перед проблемой логического переупорядочивания элементов. Например, было три функции в top level, теперь их стало семь, давайте разделим их на две логические группы (3 и 4) — всё ок, никакого хаоса.
С точки зрения пользователя: раньше было три логические функции, теперь они куда-то исчезли, на их месте появились два меню, причём одно действие в первом меню, а оставшиеся два во втором. Ад, ужас, погибель, проклятье программисту.
Читать дальше →

Повторяющийся зубчатый фон на CSS

Reading time2 min
Views45K


Давно на хабре не было постов про CSS и я решил восполнить этот пробел. Сегодня мы учимся готовить зубчатый фон используя только средства CSS и никаких изображений!

Важные требования к такому забору:

  • Никаких изображений!
  • Он должен спокойно тянуться по горизонтали
  • Обязательно должен поддерживать неравномерный фон у подложки
  • Фон не должен требовать никакой экстра-разметки. Лучше всего будет избегать псевдо-элементов (экономия — хорошо).

Поддерживаемые браузеры: Chrome, Firefox (> 3.6), Opera (>= 12), Safari (>= 5), IE10.

Для IE 7, 8 у нас будет фоллбэк в виде обычной заливки. А вот с IE9 проблема — он не поддерживает градиенты, но при этом понимает hsla и rgba цвета. Воистину «великолепный» браузер. Что ж, его пока придётся игнорировать. Если кто–то подскажет хороший фоллбэк для IE буду только благодарен.
Читать дальше →

Дайджест новостей из мира мобильной разработки за последнюю неделю №9 (8 — 14 апреля 2013)

Reading time6 min
Views10K
Одним из главных событий этой недели стало удаление AppGratis из App Store – глава компании недоумевает, в то время как некоторые его оппоненты говорят, что на самом деле AppGratis не больше, чем Black Hat маркетинг. Также Google начал распространение новой версии магазина Play, наш коллега поделился своим опытом как увеличить загрузки сыграв на имени приложения, а автор SQUIDS подсчитал, сколько на самом деле денег приносят мобильные игры (развенчав, попутно, пяток устоявшихся мифов).

image
Читать дальше →

Веб-чат от Mozilla на JavaScript

Reading time1 min
Views23K
Фонд Mozilla из недр своей тестовой лаборатории выкатил новую возможность Tow Truck в альфа-версии, который представляет из себя интегрированный прямо в веб-страницу чат, который практически не требует от разработчика поддержки — при этом присутствуют возможности обмена текстовыми сообщениями и голосом, а также разделения контента страницы в реальном времени.

Схема работы следующая — на страницу требуется добавить JS-библиотеку:



и кнопку для включения работы TowTruck примерно так:.

Start TowTruck

Узнать подробности

Уязвимость на Habrahabr или как украсть инвайт

Reading time2 min
Views165K
Все началось с попытки получить инвайт на хабр белыми методами, но, увы получилось иначе и инвайт достался совсем нечестным способом, об этой истории я и хотел бы поведать храброчитателям.
Читать дальше →

Как сделать самую лучшую посадочную страницу: чеклист из 50 пунктов

Reading time5 min
Views98K
Мы в Alconost предоставляем услуги создания и ведения контекстной рекламы и, по долгу службы, иногда занимаемся разработкой посадочных страниц (landing pages). Мы были очень рады найти и перевести статью, в которой автор изложил все требования, которым такая страница должна соответствовать. Но есть в этой статье и большой минус. Пунктов аж 50, каждый можно отметить в чеклисте, но после доступен лишь результат в баллах, которым можно разве что похвастаться перед друзьями.

Мы против таких способов анализа информации. Потому каждый желающий может скачать подготовленную нами гуглотаблицу, ответить на вопросы “Да” или ”Нет”, отфильтровать ответы и получить результат и план действий.

Те, кому в гуглотаблицу не хочется, просим под кат. Там перевод.



Читать дальше →

Information

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