RubyFlow : The Ruby Community Blog

Home   Submit   Sign Up   Log In   leaders   Twitter   RSS Feed  

jodosha — 16 posts

Most of the Lotus frameworks was released in the past months.
The main Lotus gem isn't out yet.

This gist has a simplified version of Lotus, and it shows how to build a full stack application today.
Moore's law is over. Modern computation is exploited by running processes on multiple cores.

Ruby has always ignored this trend, and the community didn't put enough attention on this topic.

The VM allocates a memory heap, which is shared and writable by threads. If incorrectly coordinated, those threads can lead to unexpected behaviors.

[Continue reading]
Introducing Lotus::View
The missing part of all the Ruby web frameworks is the distinction between views and templates.

Keeping things separated, helps to declutter templates and models from presentation logic. Also, since views are objects they are easily testable. If you ever used Mustache, you are already aware of the advantages.

Lotus::View is based on these simple concepts.
[Continue reading]
MRuby is a lightweight Ruby. It was created by Matz with the purpose of having an embeddable version of the language. This article covers how to enable Redis scripting with Ruby.
Lotus development is going well. This month, I’m proud to announce Lotus::Controller. It’s a small, powerful and fast Rack framework.

Read the article
Watch me during a short TDD session, while I create routing helpers with Lotus.
The beauty of Lotus is the composition of its frameworks. Each of them is well designed to achieve one and only one goal. The main advantage of this architecture is that delevopers can easily use and reuse those frameworks in countless ways.
Lotus::Router accepts anonymous functions as endpoints. This feature can be used to build Sinatra with it.

Read the article
Lotus::Router is an HTTP Router for Ruby, it’s fast, lightweight and compatible with the Rack protocol.

It’s designed to work as a standalone software or within a context of a Lotus application, and provides features such as: fixed and partial URL matching, redirect, namespaces, named routes and RESTful resource(s).

Read the announcement
I’m pleased to announce Lotus: the Open Source project I’ve conceived, hacked and built during the last year.

Lotus is a full stack web framework for Ruby, built with lightness, performances and testability in mind. It aims to bring back Object Oriented Programming to web development, leveraging on stable APIs, a minimal DSL, and plain objects.
I just open sourced Minegems: a multi-tenancy private gem hosting deployable on Heroku.
Redis Store is a successful OSS project, it aims to be a multi-purpose toolkit for Ruby and for the most popular web frameworks.

After four years, I'd like to focus on something else. Would *you* give back to the Community? If so, please ping me on Twitter (@jodosha).
Article about HTML5 Geolocation API testing with Cucumber and Capybara.
How many times do you heard you should separate content from behavior? Never? Hmmm don't try to cheat me.. So, why do you still use :confirm option for link_to helper? Here a little snippet to archive our goal, and as extra bonus, we get it i18n.
Memoria is a tiny Sinatra web application for Redis statistics.
When we have released adva-cms 0.2.0 we have migrated all the Prototype code to jQuery. What I noticed was the lack of a valid automation support for QUnit, the test framework used internally by the jQuery team. So, in a couple of days I built what we need, just creating a custom version of jstest.rb and changing a little bit QUnit, in order to communicate with it. The result is Hanoi, a general purpose test runner for JavaScript.
As announced in my previous post I'm working to update my Open Source projects. Today's the time of Click to Globalize.
For all of you who don't know what I'm talking about, Click to Globalize is a Rails plugin for in-place translations. Now it's compatible with Rails 2.3 and It's also the most clean and polish version of ever, let me explain what's changed. read more..