The Vienna Ruby User Group meetup yesterday felt a bit like a home-coming party to me as I actually cofounded it. I am happy to see that many Rubyists make their way to sektor5 every month to share a drink and knowledge. Let’s get straight to the summarizing the talks part!
iPhone Apps with RubyMotion and ProMotion
Jan Jezek showcased how to combine RubyMotion, ProMotion and Teacup to create iOS apps, ‘Ruby-style’. Jezek: “RubyMotion is Ruby compiled into native Objective C, during development you run REAL iOS, not a sandbox or something else.” Indeed the ProMotion scaffold generates .rb files. RubyMotion uses Rake, is extendable with both 3rd party Objective C libraries and gems especially written for RubyMotion (and there are a LOT of those). Jezek: “And the real cool thing is that RubyMotion has access to all iPhone native features like sound, camera, gps and datastorage!”
Jezek praised how RubyMotion is fully supported by RubyMine, including a debugger and code completion, and how TDD and BDD (using frank-cucumber) are considered. That it’s a commercial product and priced as such is one of the cons Jezek mentioned. He’d additionally like to see RubyMotion adopt the MVC pattern from Rails and (better) support for game development.
Skimming over Teacup’s features, Jezek mentioned its CSS like behavior, how it fits nicely into ProMotion and how it enables you to use constraints.
Setup & deploy an Octopress blog in 5(ish) minutes
Aaron Cruz then made an attempt to setup an Octopress blog and deploy it to GitHub Pages in under 5 minutes. Octopress is a framework designed for Jekyll. To get your blog up and running, clone the repo and install the dependencies:
git clone git://github.com/imathis/octopress.git octopress
gem install bundler
_config.yml you get to configure your Octopress Blog (read: change the url, title, subtitle and author of your blog):
Third party integrations – like a list of your Github repositories and a button for sharing of posts and pages on Twitter – are already set up for you. Simply fill in the configurations and they’ll be added to your site.
Next, head over to GitHub and create a new repository named username.github.io, where ‘username’ is your GitHub username. Go to the folder where you want to store your project, and clone the new repository. Enter the project folder and add an
index.html file. Then add, commit, and push your changes, fire up a browser, head over to http://username.github.io and marvel at your accomplishments.
The 12 Factor manifest – sane guidelines or utopian devop fantasy?
A new concept at the vienna.rb meetups is the group discussion. This time around Andi Fink kick-started a discussion about the 12 Factor App manifest, that lists a number of best practices for building software-as-a-service apps.
The tl;dr for those of you getting the creeps only browsing to 12factor.net:
A 12 Factor app uses declarative formats for setup automation, minimizing time and cost for new devs joining the project. They have a ‘clean contract’ with the underlying operating system and maximum portability between execution environments. 12 Factor apps are suitable for deployment on cloud platforms, minimize divergence between development and production, which in turn enables continuous deployment.
The next vienna.rb meetup will take place June 5th, and you should drop by.