July 2012
1 post
Using a REPL to debug Capybara/Selenium
The Problem In the past I’ve always used ruby-debug (or more recently debugger) to set breakpoints and debug my rails integration tests built with Capybara and Selenium. A problem I’ve continually run into is that when the debugger launches it suspends all threads, including both the thread Capybara is running on as well as the rails server thread, so when trying to do something with...
Jul 30th
April 2012
1 post
Using multiple Capybara sessions in RSpec request...
Doing integration tests on apps with real-time multi-user features like chat is incredibly useful since it’s a pain to hop between multiple browsers with different users logged in to test them manually. It wasn’t immediately obvious to me that this capability is built into Capybara, but after spotting this post I adapted it slightly for RSpec request specs since that’s what I...
Apr 11th
July 2010
1 post
Routes and Responders in SproutCore: the Routes...
Previously we looked at a very simple sample application that uses responders to manage application state. Now that our responder-fu is strong, we can take a further step of using SproutCore routes to manage history via states. The Underlying Technology As amazing as SproutCore is, it did not in fact invent the methods it uses to handle history for single-page applications. Applications like...
Jul 8th
8 notes
June 2010
1 post
Statecharts and Responders in SproutCore: a simple...
You’ve made it through the Todos tutorial and believe SproutCore is the Next Big Thing, so you start to dig deeper. The term statechart keeps popping up here and there, but it’s not entirely clear how to model and implement one for your app (see discussion). Now there are some excellent writeups on using statecharts in SproutCore, and in fact I highly recommend reading them prior to...
Jun 15th
February 2010
1 post
1 tag
Keeping up with popular web frameworks:...
I spend most of my time using Ruby on Rails, but enjoy exploring other web application frameworks. There’s a wonderful diversity of frameworks out there, with more popping up all the time, but there are two challenges I’ve found with trying to find ones I want to investigate: Keeping track of them all: This isn’t terribly hard, but I find myself subscribing to a number of news...
Feb 9th
January 2010
3 posts
Comparing Cappuccino, RestfulX and SproutCore:...
When implementing a trivial timer application in Cappuccino, RestfulX and SproutCore, one thing that struck me was how varied their approaches were to handling interaction with a server back end. Cappuccino has the lowest level abstraction here, while RestfulX takes care of more of the process and SproutCore has a high-level and somewhat complex system for server interaction. Cappuccino The...
Jan 27th
Comparing Cappuccino, RestfulX and SproutCore:...
Now that I’ve finished implementing a trivial timer application in Cappuccino, RestfulX and SproutCore, I want to delve into and compare a few aspects of developing in these frameworks. Of course all of my comparisons will be biased by my choice of application to implement, so I’ll certainly miss exciting parts off these frameworks that I didn’t have the opportunity to explore. ...
Jan 7th
Cappuccino (Client side web application...
Cappuccino is the third framework I’m including in my project to implement a trivial time tracking application in multiple client-side/rich frameworks. Cappuccino was created by the guys over at 280 North, and originally showcased by their 280 Slides application. Like the SproutCore framework I recently explored, Cappuccino has its roots in Cocoa, but while SproutCore just draws on Cocoa for...
Jan 5th
December 2009
1 post
Ubuntu 9.10 on the new Vostro 1220
You can never be completely sure of how well a Linux distribution will work on a laptop until you actually give it a whirl. I just got a new (well, refurbished) Dell Vostro 1220, crossed my fingers as I installed the latest Karmic Koala (9.10) Ubuntu release, and was extremely pleased with the results. So far I’ve verified that all the following work without any tweaks: Hibernate and...
Dec 16th
5 notes
November 2009
4 posts
SproutCore (Client side web application...
SproutCore is the second framework I’ve used in my project to implement a trivial time tracking application in multiple client-side/rich frameworks. SproutCore, the framework behind Apple’s MobileMe, is one of the heavyweight contenders in the desktop-like web application arena. Originally released last year in version 0.9.x form, it has undergone major changes over the past year+ to...
Nov 20th
Flex + REST => RestfulX (Client side web app...
The first client-side/rich web application framework I’m tackling in my attempt to explore various frameworks of this sort is RestfulX. While RestfulX is not well known yet, I decided to give it a go since it has an intriguing set of features: Strong support for multiple RESTful backends (e.g. Rails, CouchDB) Built on Flex Uses Ruby for code generation and build tasks Offline...
Nov 19th
One server to rule them all
Previously I described a new project to explore a few different client-side/rich web application frameworks such as SproutCore and Cappuccino, by implementing a fairly trivial application in each of them. In order to see just how loosely coupled this arrangement can be, I’ve implemented a fairly stock Rails application to serve as the back end for all of the front end implementations....
Nov 18th
Thick and Rich: Exploring delicious client-side...
Web applications were originally (and necessarily) server-centric, using the web browser as a thin client that just displayed the view. As the use of AJAX has become popular, application behavior has crept onto the client, but is often achieved by Frankenstein methods such as serving HTML snippets with embedded JavaScript that provide some application behavior. Over the past couple of years...
Nov 17th