Rails I18n – презентация
Неплохая и самое главное познавательная презентация.
Примеры rails-приложений
Решил составить список open-source приложений на Rails, который как я надеюсь поможет начинающим (и не очень начинающим) программистам в написании красивого и функционального кода.
Redmine - система управления проектами
TeamBox - еще одна система для проджект-менеджмента, twitter-like
FatFreeCRM - CRM
Video App - аналог YouTube на Rails
Panda - еще одно приложение для стриминга видео
GemCutter - репозитарий gem'ов
CommunityEngine - Социальная сеть
LovdByLess - и еще одна социальная сеть
RailsCasts - ну кто не знает Ryan Bates и его RailsCast-ы? Это - исходники его блогового движка
Tracks - система GTD, управление задачами
Retrospectiva - снова проджект-менеджмент
Restful Authentication Tutorial - отличный туториал по реализации системы аутентификации, recaptcha, логгирование неудачных попытов аутентификации и многое другое
Shapado - аналог stackoverflow.net с использованием MongoMapper (thx 2 undr)
Open Source Rails - много различных приложений (thx 2 Alexey Osipenko)
Если у вас есть чем поделиться - присылайте, буду обновлять список
JQuery plugins. part 2
Еще немного плагинов для JQuery и туториалов по их ипользованию
JQzoom - "лупа" для картинок.
prettySociable - еще один достаточно интересный аналог addthis-ов
JQuery powered tag cloud - ну это в пояснении не требуется ![]()
Apple-like search suggestion - урок как сделать красивое выпадающее меню для search-бокса
jquery tabbed interface - очень красивая навигация
digg-style signup form
twitter-like follow/unfollow
jQuery Thumbnail with Zooming Image and Fading Caption Tutorial
Making A Cool Login System With PHP, MySQL & jQuery
Dynamic Drag’n Drop With jQuery And PHP
Используем braid для RoR-приложения
Еще одним полезным инструментом для RoR-разработчика можно назвать braid. С помощью этой утилиты можно сильно облегчить свою жизнь, контроллируя внешние git- и svn-репозитарии, которыми могут например являться плагины и edge rails. Все внешние репозитарии также прописываются в git-конфиге как submodules.
Все необходимое для работы детально описано в wiki проекта, поэтому я вкратце пробегусь по основным командам:
$ braid add git://github.com/rails/rails.git vendor/rails
- cтавим edge rails
$ braid add -p git://github.com/mbleigh/seed-fu.git
- добавление rails-плагина
$ braid add -p http://xss-shield.googlecode.com/svn/trunk/xss-shield/
- добавление плагина из svn-репозитария
$ braid add -p --type svn http://xss-shield.googlecode.com/svn/trunk/xss-shield/
- добавление плагина из svn-репозитария, но уже с прямым указанием, что это svn-репозитарий
$ braid update
- обновляем все установленные submodules
$ braid update vendor/plugins/cache_fu
- обновляем cache_fu
$ braid diff vendor/rails
- просмотр локально сделанных изменений
Если вами внесены изменения в код и вы пытаетесь сделать update - процесс обновления остановится, чтобы вы могли разрешить конфликт между локальным и удаленным репозитариями. Далее просто делаем
$ git commit
Чтобы откатить изменения
$ git reset --hard
В принципе на первое время этого достаточно
Если вым чего-то не будет хватать для работы - добро пожаловать в wiki.
PS: не забывайте, что файл .gitignore не должен содержать в себе записей типа .*, которые запрещали бы отслеживание файла .braids
Системы аутентификации
Недавно ко мне обратился один из коллег проконсультироваться по поводу аутентификации пользователей и я бы хотел узнать у читателей блога - а что вы используете? Какие системы, какие библиотеки, ваши про и контра?
От себя скажу, что использовал пока что только самописные системы, но используя Spring Security для java-приложений и before-filter для рельсов
Backbase on Rails. Part 1 – simple Hello World application.
Начиная с этого поста я постараюсь познакомить читателей блога с нюансами интеграции популярного AJAX-фреймворка BackBase и Ruby on Rails.
Первым делом подготовим скелетон нашего приложения
# rails backbase-on-rails
# cd backbase-on-rails/
Скачиваем Backbase Client Edition с оффсайта и копируем директорию web/backbase из архива в public/javascripts. Далее - подготовим layout нашего приложения
# cd app/views/layouts/
# touch main.html.erb
В файле main.html.erb прописываем namespaces и загрузчик для BackBase. Например так:
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:b="http://www.backbase.com/2006/btl"
xmlns:e="http://www.backbase.com/2006/xel"
xmlns:c="http://www.backbase.com/2006/command"
xmlns:smil="http://www.w3.org/2005/SMIL21/">
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<%= javascript_include_tag "backbase/4_3_1/engine/boot" %>
<title>Backbase on Rails</title>
</head>
<body>
<%= yield %>
</body>
</html>
Теперь нам необходимо создать контроллер и вьюшку для него.
# ruby script/generate controller HelloWorld hw
В принципе на данном этапе у нас нет необходимости что-то писать в контроллере, поэтому идем срузу во вьюшку, в которую добавляем следующий код
<script type="application/backbase+xml">
<xi:include href="/javascripts/backbase/4_3_1/bindings/config.xml" />
<div>
<e:handler event="click" type="text/javascript">
alert('Backbase says hello!');
</e:handler>
Click me
</div>
</script>
Давайте рассмотрим поподробнее что же такое мы добавили. Когда мы делаем какое-либо backbase-приложение мы должны все используемые элементы заключать в
<script type="application/backbase+xml">
</script>
Чтобы использовать Backbase Tag Library (BTL) необходимо подгружать config.xml с помощью директивы
<xi:include href="/javascripts/backbase/4_3_1/bindings/config.xml" />
Теперь, запустив наше приложение
# ruby script/server
и обратившись на http://localhost:3000/helloworld/hw мы можем увидеть наше первое приложение
Антон Попов “Блоги. Новая сфера влияния” и немного про блоги
Впервые я познакомился с блоггингом в феврале 2003 года, когда один из моих друзей, the best chibis, прислал мне инвайт в livejournal.com. С тех пор много всего было - сменялись аккаунты и френды, интересы и аватары, но смысл оставался одним и тем же - я рассматривал блоггинг как способ отвлечься от насущных дел, получить моральную и интеллектуальную разрядку, написав какой-либо несерьезный пост, пообщаться с единомышленниками и найти компанию попить пива в ближайшие выходные. Это продолжалось до сравнительно недавнего времени, пока мне Костя Ковалев (aka Constantiner) не посоветовал завести standalone blog, который вы сейчас читаете, а любимая супруга не предложила почитать книгу Антона Попова.
Первый раз, когда я увидел эту книгу - она на меня впечатления не произвела, казалось что это очередное творение из серии "ЖЖ для чайников", или "ЛИ для клинических идиотов"
Признаюсь - я ошибался
Информации для размышления оказалось очень много - использование блога как инструмента public relations, проведение кампаний вирусного маркетинга с использованием блогов, что дают компании ведение корпоративных блогов итд. Как приложение к книге есть "блог в помощь" - блог автора, где время от времени можно почитать интересные статьи по теме профессионального блоггинга. Вынося вердикт о полезности книги - полезна на 120%, must have и must read.
PS: Прочитав биографию автора - порадовался. Он закончил один университет со мной (СГУ) и учился в здании напротив.
Link Shot #3
Development in general
Ода редактору vi
Java
Создание pluggable решений при помощи Java.
Blogging
SEO-оптимизация блога на базе Wordpress
System Administration
Управление сессиями Windows Server из коммандной строки





