Svitla Systems приглашает на RubyC-2014

апреля 11, 2014  |  Published in Новости

Svitla Systems приглашает на RubyC-2014

31 мая – 1 июня 2014 года в Киеве пройдет вторая конференция RubyC,
посвященная Ruby и Ruby on Rails

Svitla Ruby Conference 2014

Посетить RubyC 2014 будет полезно тем, кто хочет:

  • пообщаться с лучшими рубистами со всего мира;
  • увидеть лучшие варианты практического использования Ruby на примере реальных проектов;
  • услышать все о последних трендах в Ruby и Ruby on Rails;
  • с пользой провести два дня среди талантливых, умных людей, набраться новых идей и почувствовать вдохновение для дальнейших достижений .

В этом году RubyC вновь собирает звездный состав докладчиков из Америки, Европы и стран СНГ. Среди приглашенных гуру: Стив Клабник (США), Бен Ловелл (Великобритания), Хавьер Рамирес (Великобритания), Александр де Оливера (Бразилия), Дэвид Хеннер (США), Джереми Эванс (США), Константин Теннахард (Германия), а также Богдан Гусев (Украина), Тимофей Цветков (Россия), Евгений Пирогов (Украина).

Подробнее о спикерах и их темах можно узнать на сайте http://rubyc.eu/.

Организаторы приглашают всех желающих поделиться своим опытом и стать спикером конференции. Заявки могут быть поданы на сайте конференции. Прием заявок продолжится до конца апреля.

Полезности:

  • Продажа билетов уже открыта на сайте конференции!
  • Место проведения конференции: БЦ «ИНКОМ», ул. Смоленская, 31-33, Киев.
  • Рабочие языки конференции – английский, русский, украинский.
  • Присоединяйтесь к группам RubyC на Twitter и Facebook.

Впервые RubyC состоялась в 2011 году, став одним из наиболее значимых событий для руби-сообщества того года, поскольку собрало вместе не только высококлассных докладчиков из разных уголков земного шара, но и около 200 посетителей из Украины, России, Беларуси, Латвии и США . Спикерами RubyC среди прочих стали: Райан Бигг (Австралия), Стив Клабник (США), Джонас Никлас (Швеция), Дарси Лейкок (Австралия), Алексей Найден (Россия) и многие другие. Подробнее о том, как прошла первая конференция RubyC можно узнать тут.

Организатор RubyC — Svitla Systems Inc., американская аутсорсинговая компания, которая занимается разработкой приложений на Ruby, .NET, PHP, Java, Magento, Flash, а также мобильных приложений. Офисы компании находятся в Киеве, Львове, Харькове, Севастополе, Черкассах, Черновцах и Тернополе. Головной офис располагается в Сан-Франциско.

Контакты:

PR менеджер
Надежда Береговая
n.beregova@svitla.com
+38 097 852 86 71

Tags:

Le Roi est mort, vive le Roi!

ноября 22, 2013  |  Published in Новости  |  10 Comments

Будем честны, RubyDev — весьма скучный блог, я имею ввиду, что в нем нового? Введение в Ruby, введение в Rails, ничего принципиально нового и заставляющего включить мозг. Просто справочная информация для новичков, за что они довольны, но меня не слишком прельщают похвалы новичков.

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

Ам-м-м… Думаю, достаточно аналогий. RubyDev больше не будет блогом для новичков. Я собираюсь опубликовать новый, исправленный и действительно «православный» учебник по Ruby и это будет единственным моим подарком тем, кто называет себя новичками в программировании или junior’ами.

Мне не интересно писать введения, но по Ruby действительно отсутствует качественная литература. Не только по Ruby. Я имел удовольствие прочесть несколько книг по различным языкам программирования: Scala, Java, Erlang, Clojure, Ruby, Rails, JavaScript, но я не сумел найти среди них таких книг, которые мне бы понравились, разве что только книги Николаса Закаса. Это не камень в огород их авторов, точнее не камень в огород авторов, как разработчиков, но камень в огород авторов, как, эм…, авторов. Изложение либо скучно, либо непонятно, либо это просто рассказ о синтаксисе языка. В общем унылая тягомотина на 600-800 страниц, которая годится лишь для тренировки силы воли. Таким образом я постараюсь написать новый учебник по Ruby таким, чтобы он был интересным и учил не только синтаксису, но и вообще программированию.

RubyDev больше не будет блогом для новичков еще и по той причине, что нынешнее состояние блога несколько дискредитирует меня. Это и огромное количество ошибок в статьях, и уровень, на который они рассчитаны. Создается впечатление, что я сам вечный новичок. Да, все мы ученики от рождения и до смерти, но вы понимаете о чем я.

Статьи о Rails? Признаться, я не люблю Rails. Я был восхищен его возможностями после перехода с PHP, но сейчас я вижу в Rails много неудачных решений. Чтобы быть совсем честным, что аналогичными недостатками изобилует абсолютное большинство фреймворков того же назначения. Я работаю с Rails и они позволяют мне заработать на хлеб, но Rails — это лишь инструмент. Как плотник не обязан обожать молоток, а сантехник испытывать нежные чувства к вантузу, так и я остаюсь хладнокровен к Rails. Мне не интересно писать учебник по Rails. У Rails есть хорошая документация по API и Rails Guide. Тем не менее у меня есть идея написать несколько статей критикующих Rails. Я напишу об антипаттернах в коде и API самого фреймворка и об антипаттернах тех, кто его использует.

После того, как я напишу первые 7 статей из учебника Ruby, я начну их публиковать по одной в день, а все старые статьи будут удалены (сейчас их 209).

Что такое SOLID?

мая 4, 2013  |  Published in Новости  |  3 Comments

SOLID — это аббревиатура, в которой содержатся 5 принципов ОО-дизайна.
  • S (SRP) — Single Responsibility Principle
  • O (OCP) — Open/Closed Principle
  • L (LSP) — Liskov Substitution Principle
  • I (ISP) — Interface Segregation Principle
  • D (DIP) — Dependency Inversion Principle

WTF do you mean?

Read the rest of this entry »

Tags: , ,

Let’s use PostgreSQL #1 Installing PostgreSQL on Ubuntu 12.10 & Getting started

января 8, 2013  |  Published in In English, PostgreSQL, Базы данных  |  2 Comments

postgresql_logoA few months ago I throught about migrating from MySQL to PostgreSQL. PostgeSQL has more features and is fast, stable and secure relative DB. And it is also free, open-source and has many different extensions. The main drawback of PostgreSQL is that it is more complicated than MySQL, so you should spend more time to learn how to work with it or hire an admin.

In this series of articles I want to describe how to drop MySQL, start to use PostgreSQL and how to be happy with this powerfull solution without hiring a DBA (only if you doesnt work with big and high-loaded projects).

Let’s start by installing PostgreSQL on your development machine.

I work on Ubuntu Linux 12.10 so I will describe process of installing PostgreSQL on Ubuntu 12.10. To install PostgreSQL 9.2 on your Ubuntu you should use this command in your terminal:

$ sudo apt-get install postgresql-9.2

After installing PostgreSQL you can check PostgreSQL version on your machine:

$ psql —version
psql (PostgreSQL) 9.2.2

So now you have PostgreSQL installed on your Ubuntu 12.10 machine. Read the rest of this entry »

Tags: , ,

<irony>Майкл Хартл — самый ужасный программист в мире!</irony>

ноября 18, 2012  |  Published in Best Practices, Уголок философа  |  11 Comments

Не раз ко мне обращались с какими-то вопросами, вроде помоги найти ошибку или что-то вроде того, когда я находил в годе копрокод, точнее, когда я находил, что весь код в целом — копрокод, то мне в лицо бросались ссылкой на ставшую популярной книгу Майкла Хартла. Последний такой случай сподвиг меня на написание этой философской статьи, которую многие по праву могут назвать водой, а автора которой мудаком, который должен облить себя бензином и поджечь.

Собственно из-за того бросания в меня ссылками на Хартла и родилось это название <irony>Майкл Хартл — самый ужасный программист в мире!</irony>. Я надеюсь, что использование тега <irony></irony> спасет меня от «Ты сам мудак! Хартл — няша!» ибо, как показывает практика, людей обидчивых и не понимающих иронию очень много. К Майклу Хартлу я отношусь очень хорошо, он написал хорошую книгу, которую я рекомендовал бы к прочтению всем и хотя у меня есть несколько мелких разногласий с автором, я все же считаю его отличным программистом, а его книгу обязательной для прочтения. Read the rest of this entry »

Tags: , , , ,

О культе карго и хранении денег

ноября 15, 2012  |  Published in Best Practices  |  7 Comments

Вы должно быть знаете о культе карго (cargo cult)? Если нет — в Википедии есть замечательная статья. Культом карго также стало модно называть любое подражание без понимания сути. Члены культа карго подражают человеку или группе людей, которые добились успеха в чем-либо, рассчитывая на то, чтобы добиться аналогичных результатов от своего повторения.

Разумеется, подражание не есть плохо, но когда это глупое подражание, подражание без понимания сути, тогда это подражание становится глупостью и может сыграть с подражающим злую шутку. Почему? — Потому, что любое следования заповедям — это глупость. Поведение должно быть ситуативным и осмысленным, а не основываться на каких-либо догмах.

Если спросить — Чем тушить пожар? — Большинство не задумываясь ответят — Водой. На самом же деле не всякий пожар можно тушить водой. Например, нельзя тушить водой электротехнику, нельзя потушить водой горючие жидкости, например, бензин или керосин и т.д. Водой также нельзя тушить воспламенившиеся щелочные металлы и много-много чего прочего.

Read the rest of this entry »

Tags: , , , , , ,

Self в Ruby

сентября 8, 2012  |  Published in Ruby, Расширения, Уголок философа  |  5 Comments

Честно сказать, достали меня уже вопросом о том, что такое self. Особено странно, что некоторые люди начинают работать с Ruby on Rails не разобравшись с самим языком Ruby. Ну как так можно? А?! Если лень читать книгу на 600 страниц — есть статьи на RubyDev, они не полностью корректные так как я писал их достаточно давно, но в общем достаточно годные, как мне кажется. Если нет желания прочитать краткие статьи, которые я пытался написать более чем понятным новичку языком, то, я думаю, что программирование — это не ваше. Ну да ладно. Напишу отдельную статью о self, хотя то, что такое self много где упоминалось в статьях на RubyDev.

self — это ссылка на текущий объект.

У каждого метода должен быть приемник — на то он и метод, а не функция, а если приемник не указан, то подразумевается, что приемником является self.

Read the rest of this entry »

Tags: , , ,

Tips&Tricks: Установка gem’ов без генерации документации

сентября 5, 2012  |  Published in Ruby Gems, Tips&Tricks  |  5 Comments

Зачем?

Все мы знаем, что при установке gem’ов часто генерация документации занимает куда больше времени, чем сама установка gem’а, при этом никто не пользуется оффлайновой документацией. Зачем открывать новую вкладку и запускать gem server, если вся документация доступна онлайн? Если вы не пользуетесь оффлайн документацией, то зачем засорять ею жесткий диск и тратить время на ожидание ее генерации при установке gem’ов?

Для отключения генерации документации с командой gem install используют флаги —no-rdoc и —no-ri, например, так:

$ gem install rails —no-rdoc —no-ri

Однако есть вариант получше — использовать файл .gemrc в вашей home/ директории.

Просто добавьте в него следующую строку:

gem: —no-rdoc  —no-ri

И вы забудете о генерации документации навсегда!

Tags: , , ,

Tips&Tricks: Превращение строки в константу

сентября 3, 2012  |  Published in Ruby, Tips&Tricks  |  1 Comment

Недавно в статье о Переменных и константах в Ruby я упомянул о том, что из строки можно получить константу используя Kernel.const_get, на что получил в комментариях целых два замечания. Первое касалось того, что следует использовать Object.const_get, вместо Kernel.const_get, а второе касалось того, что нужно учитывать неймспейсы, а потому получение констант из строки несколько сложнее реализовать. Та статья была о другом, потому, я решил добавить отдельную статью в Tips & Tricks о том, как правильно получать из строки константу.

Код выполняющий это действие я решил поместить в метод #constantize, метод называется так же, как аналогичный метод в Rails, и создать для него псевдоним #to_const. Собственно вот его код:

class String
  def constantize
    constants = self.split("::")
    main = Object.const_get(constants.shift)
    constants.inject(main) { |full, nested| full = full.const_get(nested) }
  end

  alias :to_const :constantize
end

Пример работы:

module SuperExtensions
  module MySuperExtension
    class Extension
      def self.hello
        puts "Hello!"
      end
    end
  end
end

klass = "SuperExtensions::MySuperExtension::Extension".to_const
klass #=> SuperExtensions::MySuperExtension::Extension
klass.hello # Hello!

Вот и все! Удачи!

Tags: , , ,

RubyDev Ruby Tutorial > Копирование объектов в Ruby

сентября 3, 2012  |  Published in Ruby, Основы  |  3 Comments

В Ruby переменные — это просто ссылки на объект в памяти. Присваивая переменной значение, вы не самом деле ссылаетесь ей на объект. Присваивая переменной значение — другую переменную вы просто создаете две ссылки на один и тот же объект:

original = {
  :ruby => ["rails", "sinatra"],
  :erlang => ["chicago_boss", "nitrogen"]
}

another_var = original

Одинаковый object_id — значит и переменные ссылаются на один и тот же объект:

original.object_id #=> 72411200
another_var.object_id #=> 72411200

original[:ruby][0] = "Ruby on Rails"
another_var[:ruby][0] #=> "Ruby on Rails"

Для создания нового объекта — копии используют два метода — #dup и #clone. Ниже преведены примеры использования обоих.

Read the rest of this entry »