Итак, у вас есть чистая Ubuntu, в консоли открыто ssh-соединение с сервером и консоль вас заманчиво приглашает — «root@my-awesome-host:~#» — и больше ничего нет. А хочется запустить и показать всему миру какое-то рельсовое приложение. Поехали от супа до орехов.
Михаил @UseRifle
Пользователь
Как присоединить свой Ruby-проект к Travis и приготовить Мартини за 15 минут
3 мин
2.7KПеревод
![image](https://habrastorage.org/storage1/5f872247/b478d6c4/d804fcbd/462f9ff3.jpg)
Налицо тенденция, что каждый проект на Ruby присоединяется к Travis. Travis — очень простая, опенсурсная система непрерывной интеграции. Нам обычно лень подключать все свои проекты к автоматическому тестированию билдов. Travis позволяет сделать это за считанные минуты.
Это пошаговая инструкция, как присоединить свой проект к Travis и приготовить вкуснейший коктейль с Мартини примерно за 15 минут. Следует заметить, что на приготовление Мартини уйдет минут пять, так что часть про Travis займет 10 минут вашей жизни.
+33
Молодым программистам на заметку: Как правильно писать «Помоги»
3 мин
9.1KТуториал
За те 9 лет, что я занимаюсь программированием, в мою асю пришло несколько сотен просьб о помощи, от менее опытных, начинающих программистов. И вот, когда сегодня, в очередной раз, незнакомый человек попросил помочь ему написать плагин для вордпресс (код которого, честно говоря, я в глаза ни разу не видел), я решил написать небольшой гайд, который бы помог начинающим программистам правильно обращаться за советом к более опытным.
+186
Новая версия Rusrails.ru — перевод официального руководства по Rails 3.1
2 мин
754Как уже многим известно, сегодня вышел релиз Ruby on Rails 3.1 (про это событие на Хабре наверняка еще кто-нибудь напишет).
Я, в свою очередь, к этому событию приурочил выход новой версии сайта Rusrails.ru, на котором публикую свои переводы официального руководства по Rails.
Над новой версией Rusrails я работал где-то с начала лета в свободное от работы время.
Я, в свою очередь, к этому событию приурочил выход новой версии сайта Rusrails.ru, на котором публикую свои переводы официального руководства по Rails.
Над новой версией Rusrails я работал где-то с начала лета в свободное от работы время.
+59
Бот для Flash-игры / Внедряемся в Flash
5 мин
58K![](https://habrastorage.org/getpro/habr/post_images/af0/689/bb5/af0689bb517e5b715fdd76e84e8760bf.png)
В рамках недели ботов для браузерных игр.
Эта неделя богата на статьи о ботах для бразуерных игр.
Во всех статьях для управления ботом использовался AutoIT. Это простой и хороший способ чтобы начать делать бота «в лоб», он не требует никаких знаний об игре, кроме как знания правил и графического интерфейса. Для серверной части игры такой бот вообще будет выглядеть как обычный пользователь, если не брать во внимание невероятную усидчивость и производительность такого игрока.
Но этот способ требует распознавания мира, что добавляет много ошибок, а иногда определить необходимое значение вообще не представляется возможным.
В первой статье я наткнулся на комментарий со ссылкой на пост Adobe Profiler Fail, что побудило меня исследовать эту возможность в целях автоматизации действий в Flash-играх.
+75
Oauth 2 провайдер за 30 минут
2 мин
11K![](https://habrastorage.org/storage1/04061670/1f596785/471f274c/989b34dc.jpg)
+34
$пасибо!
1 мин
6.9K![](https://habrastorage.org/storage1/f996ac01/77661a48/b4045eab/a37c8838.png)
Эту проблему призвана решить кнопка $пасибо, интегрированная в WebMoney Advisor. Для пользователя все выглядит максимально просто — если у вас уже установлен плагин Advisor, то, заходя на любую страницу в Интернете, вы просто раскрываете меню плагина и выбираете пункт «Передать сайту $пасибо».
+5
Элемент input в html 5, мультиаплоад
3 мин
56KУ элемента input в HTML 5 появился атрибут multiple, с помощью которого мы можем выбрать для загрузки несколько файлов. Этот атрибут принимает только одно значение «multiple», в живую будет выглядеть так:
Обратите внимание на name, мы явно в нем указали, что это массив.
Сразу появляется вопрос, какой браузер это новшество не понимает, ответ легко предсказуем, это семейство Internet Explorer. Начиная с 9 версии и ниже, они не поддерживают этот функционал и просто проигнорируют атрибут, искренне надеюсь что в финальной 10 версии они это поправят.
Кроме того что, мы дали пользователям загрузить сразу много файлов, мы должны позаботиться о них, и дать им возможность загрузит именно те файлы которые нам необходимы. И тут на помощь приходит еще один новый атрибут accept. Который принимает "MIME Media Types".
<input type="file" multiple="multiple" name="files[]" />
Обратите внимание на name, мы явно в нем указали, что это массив.
Сразу появляется вопрос, какой браузер это новшество не понимает, ответ легко предсказуем, это семейство Internet Explorer. Начиная с 9 версии и ниже, они не поддерживают этот функционал и просто проигнорируют атрибут, искренне надеюсь что в финальной 10 версии они это поправят.
Кроме того что, мы дали пользователям загрузить сразу много файлов, мы должны позаботиться о них, и дать им возможность загрузит именно те файлы которые нам необходимы. И тут на помощь приходит еще один новый атрибут accept. Который принимает "MIME Media Types".
<input type="file" multiple="multiple" name="files[]" accept="image" />
+91
Связка rvm + Rails + Nginx + Unicorn или деплоим рельсы правильно
9 мин
55K![](https://habrastorage.org/storage/263722fa/68d4808e/bad30747/f721e883.png)
+58
RubyGems — подробно
4 мин
44K![](https://habrastorage.org/storage/347ea76d/5a7cc66a/1e47549b/dc3a04cb.jpeg)
Для начала определимся с понятиями:
RubyGems — фрэймворк для установки и запаковки Ruby библиотек и приложений.
gem — пакет(файл) с библиотекой или приложением. Имеет стандартизированный вид и расположен в хранилище в сети.
gem command tool — RubyGems предоставляет утилиту «gem» для работы с gem пакетами из командной строки. Она интегрирована с Ruby и позволяет получать доступ к установленным gem'ам как к библиотекам.
В чем же предназначение RubyGems?
До того как появилась RubyGems, для установки новой библиотеки нужно было найти, скачать её, попытаться установить, часто лишь для того, чтобы убедиться в отсутствии нужных зависимостей. Если же библиотека запакована с помощью RubyGems, достаточно попросить RubyGems сделать это за нас и получить установленную, интегрированную библиотеку со всеми нужными зависимостями. В дополнение ко всему утилита gem — платформонезависима, неважно какую ОС вы используете, везде механизм установки библиотек и приложений будет одинаков. Здорово, правда?
Под катом будут описаны:
1) Поиск, получение деталей, установка gem's
2) Доступ документации по установленному gem
3) Использование установленных gem's
4) Работа с версиями gem's
5) Создание собственных gem's
+43
Упрощаем регистрацию и вход на сайт
7 мин
34KТуториал
Представляю вашему вниманию перевод статьи под названием "Innovative Techniques To Simplify Sign-Ups and Log-Ins" от Anthony T. Перевели в компании UXDepot специально для пользователей Хабрахабра с одобрением издания Smashing Magazine.
Существует множество различных способов создания форм регистрации и авторизации. Большинство дизайнеров знакомы с традиционными способами.
Однако, зная и используя некоторые инновационные техники, можно сделать формы понятнее и легче для заполнения.
![](https://habrastorage.org/getpro/habr/post_images/48f/95e/dcf/48f95edcf5d65df560218c8d0ee6764c.png)
Форма авторизации на сайте Basecamp
В этой статье мы представляем несколько идей, которые могли бы оказаться полезными для ваших проектов. Но, собираясь использовать их, пожалуйста убедитесь в том, что правильно понимаете контекст, в котором их следует применять. А еще мы будем рады увидеть результаты юзабилити-тестирований, подтверждающие или опровеграющие советы, изложенные ниже.
+227
Пять бесплатных инструментов для выбора цветовой схемы сайта
2 мин
233KПеревод
Один из самых важных факторов при создании уникального и узнаваемого дизайна — цвет. Грамотный выбор цветовой схемы может определить успех или провал сайта. Когда посетитель бросает первый взгляд на веб-страницу, то выбранные вами цвета посылают ему мгновенное сообщение об этой странице. К счастью, существует много инструментов, которые помогут выбрать правильную цветовую схему. Вот пять лучших из них.
+120
Как стать героем (Яков Сироткин на ADD-2010)
15 мин
2.4KТуториал
Яков Сироткин, известный блогер и опытный разработчик любит раскрывать глаза молодых программистов на порой нелицеприятные стороны работодателей, объясняя при этом природу этих фактов.
Проблемы о которых не любят говорить на интервью, но с которыми приходится сталкиваться.
Проблемы о которых не любят говорить на интервью, но с которыми приходится сталкиваться.
- Как успешно разрабатывать программное обеспечение вопреки трудностям?
- Понравится ли это начальству?
- Что за это будет?
- Как жить дальше?
+40
Оптимизация показателей конверсии
9 мин
2.6KВашему вниманию предлагается перевод статьи Франка Пашера. Перевод одобрен для публикации для уважаемых читателей Хабрахабра.
![](https://habrastorage.org/getpro/habr/post_images/62a/0a1/40d/62a0a140d8a8e00f392bea4337203a13.jpg)
Юзабилити имеет серьезное значение для показателей конверсии в электронной коммерции. Однако юзабилити означает не только улучшенное визуальное руководство или улучшенную иерархию сайта. Это также означает и больший контакт с потенциальным покупателем посредством профессионально сделанного серьезного дизайна, преподнесения верной информации тогда, когда она нужна. Это общение с пользователями вместо того, чтобы забрасывать их рекламными лозунгами.
![](https://habrastorage.org/getpro/habr/post_images/62a/0a1/40d/62a0a140d8a8e00f392bea4337203a13.jpg)
Юзабилити имеет серьезное значение для показателей конверсии в электронной коммерции. Однако юзабилити означает не только улучшенное визуальное руководство или улучшенную иерархию сайта. Это также означает и больший контакт с потенциальным покупателем посредством профессионально сделанного серьезного дизайна, преподнесения верной информации тогда, когда она нужна. Это общение с пользователями вместо того, чтобы забрасывать их рекламными лозунгами.
+52
Принципы дизайна страниц оплаты для интернет-магазинов
14 мин
22KТуториал
Перевод
Представляю вашему вниманию перевод статьи под названием "Fundamental Guidelines Of E-Commerce Checkout Design" от Christian Holst. Перевели в компании UXDepot специально для пользователей Хабрахабра с одобрением издания Smashing Magazine.
Грустная статистика систем электронной коммерции — согласно последним исследованиям, по крайней мере 59,8% потенциальных покупателей покидают сайт на этапе оформления заказа и его оплаты (у разных исследований разные показатели — от 59,8% у MarketingSherpa до 83% у SeeWhy).
Основной вопрос заключается в том, почему пользователи так часто и массово покидают свою корзину, не закончив оформление заказа? Причина заключена в какой-то фундаментальной ошибке дизайнеров, создающих интернет-магазины? А быть может есть какие-то формальные правила, которые усложняют жизнь простым пользователям и мешают им покупать продукты? Существует ли какая-то возможность улучшить ситуацию и повысить конверсию электронных магазинов?
+162
Iconizer.net — перерождение бесплатного генератора иконок
2 мин
1.6K![](http://iconizer.net/temp/beforeandafter.jpg)
Первое что мы сделали это начали изучать лучшие проекты в этой индустрии. Нормальных генераторов мы не нашли, но зато нашли очень многое в поисковиках иконок. Собрав самое лучшее, и улучшив на что хватило фантазии, мы создали довольно неслабый поисковик с огромной базой. Мы собрали свыше 50 000 уникальных иконок (под словом «уникальный» имеется ввиду реальная уникальность, а не 5 000 иконок 10 размеров каждая).
+90
Ruby Cross Reference
1 мин
1.1K![](https://habrastorage.org/storage/bdcb9d82/6c543fa3/b9a1f050/456a7a95.png)
Ruby, как известно, просто выглядит, но сложно работает. В особенности это относится к официальному интерпретатору, Ruby MRI: документация на многие детали реализации, например, на байткод или GC, отсутствует даже на японском.
Я попытался упростить исследование кода, открыв сайт Ruby Cross Reference по мотивам LXR. Кроме MRI, проиндекированы еще JRuby и Rubinius.
+28
Информация
- В рейтинге
- Не участвует
- Откуда
- Россия
- Дата рождения
- Зарегистрирован
- Активность