Настройка рабочего окружения для Ruby On Rails на Vagrant

Стави последнюю версию Vagrant:

http://www.vagrantup.com/downloads

Ставим последнюю версию Virtual Box:

https://www.virtualbox.org/wiki/Downloads

Создаем папку с нашим проектом на хостовой ОС, заходим туда. Добавляем бокс убунты в вагрант:

vagrant box add ubuntu/trusty64

Инициализируем вагрант:

vagrant init ubuntu/trusty64

Будем делать всё из-под рута, потому что мы можем. Заходим на виртуалку с помощью:

vagrant ssh

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

Стартап или бизнес?

Хочу немного пооффтопить о том, как можно подходить к разработке продукта. Как стартапер или как бизнесмен.

TL;DR Стартапы сосут, бизнес рулит.

Если заинтересованы, добро пожаловать под кат.

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

Настройка бэкапов базы данных для Ruby on Rails на Ubuntu 14.04

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

Для начала поставим гем backup.

sudo apt-get install libxslt-dev libxml2-dev build-essential
gem install backup

Сгенерируем "модель бэкапа".

--trigger — название модели,
--storages — куда будут сохраняться бэкапы,
--databases — тип базы данных,
--encryptor — метод кодирования данных,
--compressor — метод компрессии данных,

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

Деплой приложения Ruby On Rails на сервер с Ubuntu 14.04 (с Mac OS X)

Еще одна инструкция по деплою рельсового приложения.

Настройка окружения сервера

1. Добавляем юзера deploy с правами админа.

# server
sudo adduser deploy
sudo adduser deploy sudo
su deploy

2. Добавляем SSH-ключи на нашу локальную машину и авторизуем этот ключ на сервере с помощью утилиты ssh-copy-id, предварительно установив ее. (IPADDRESS — айпи адрес для доступа по SSH).

# local
brew install ssh-copy-id
ssh-copy-id deploy@IPADDRESS

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

Используем Gulp для автоматизации сборки js-проектов

Gulp используется для development окружения моего проекта, поэтому я прописал необходимые для моего пакета зависимости в package.json:

{
  "name": "vtree",
  "version": "0.1.2-alpha",
  "author": "Sergey Shishkalov <sergeyshishkalov@gmail.com>",
  "description": "Library for automated initialization of backbone views",
  "devDependencies": {
    "coffee-script": "",
    "gulp": "~3.6.2",
    "gulp-util": "",
    "gulp-coffee": "",
    "gulp-concat": "",
    "gulp-uglify": "",
    "gulp-header": "",
    "gulp-rename": "",

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

Вью хелперы и генерация страниц в Middleman

Продолжаю рассказывать о замечательной тулзе Middleman. Расскажу о двух еще очень важных вещах, а остальное можете вычитать из официальной документации.

Хелперы

Вью-хелперы можно использовать в любом шаблоне нашего приложения. Стандартные хелперы типа link_to известны всем rails-девелоперам. Хороший пример этого хелпера:

<%= link_to 'My Form', '/form.html', query: {foo: 'bar'}, fragment: 'deep' %>

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

Установка и настройка Middleman

Middleman — удобный инструмент для генерации статических файлов из псевдодинамических исходных данных. Вы задаете набор страниц с переменными, значения этих переменных в виде массива. Эти переменные становятся доступны в шаблонах. Во время разработки middleman работает в качестве простейшего приложения на мини-фреймворке Sinatra. Потом вы просто генерируете все возможные странички и заливаете их на сервер. Вот такая получается псевдодинамика.

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

Переход по словам с помощью Alt+влево и Alt+вправо в iTerm2

На маке очень удобно переходить по словам с помощью альта и стрелочек туда-сюда. Но вот только в консольке по умолчанию такое не работает. Надо настраивать горячие клавиши... Сейчас мы узнаем как это сделать грамотно.

Не все знают, что, находясь в консоли, можно совершать некоторые действия с текстовой строкой с помощью клавиши esc. Жмешь ecs, потом жмешь спец-символ и происходит какое-либо действие.

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

Vtree — небольшая библиотека для автоматической инициализации вьюшек Backbone.js

Решил заморочиться и зарелизить нулевую версию небольшой библиотеки Vtree (ссылко). Если вкратце, она автоматически ининциализирует набор бэкбоновских вьюх, на основании полученного от сервера хтмл.

Получаем хтмл —> парсим его на наличие вьюшек —> инициализируем эти вьюхи.

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