Dave Winer eloquently explains the
bootstrap concept as it applies to computer science AND business.
"So many people want to start by boiling the ocean."
Words to live and work by.
Posted by Justin on Aug 10, 2010
It seems Mike and I have become obsessed lately with making open source projects using the suffix Upper.
Fixer Upper, my first addition to the Upper family, it a little plugin for rails aimed at fixing up database column names and converting them into a more friendly Rails naming convention.
Initially Fixer Upper was created by me as an application exploring some of the basic principles of Ruby meta programming. It eventually expanded to a giant bloated ruby gem that did a lot of 'nothing', but did that 'nothing' programmatically using things like
method_missing, and other great goodies ruby provides. Eventually this massive application was set to the side once I was content with the amount of Ruby goodness I learned, but like most academic adventures I was able to apply what I learned into something functional, useful and fun.
Not to long ago, Fluid Media was tasked with rebuilding a client site in Ruby on Rails. Resurrecting an old .Net 1.0 site into a shiny new Rails app. Obviously their old data was very important to them, and so was their old database, along with their oddly formatted column names. This would be eventually become the inspiration for Fixer Upper.
Check it out @
github/fixer_upper
Posted by Danny on Jul 30, 2010
In March of this year, I released the Koala Encoding Server as an open source project on Github. The project was my attempt at creating a lightweight web service with an exposed API for encoding videos into a number of different web formats.
My idea for the project came after having spent some time configuring the Panda Video Server for an ongoing project our company is involved with. There were certain aspects I thought could be improved and certain features I wanted implemented so I started thinking about what it would take to roll out my own implementation.
I wanted the the application to be light and decided to build it using the Sinatra framework. I also wanted to implement a worker queue where computationally intensive tasks could be implemented in the background assuring a quick response from the API. My one big complaint with the version of Panda we were using was that there was no good way of seeing what was happening when an encoding request was sent to the server. You could log on and tail the logs but even that provided limited information. Therefore, I wanted a way to monitor current encoding jobs and see if and why they failed. My initial thought was to use Delayed Job and just write an interface for querying the queue; however, I soon discovered Resque, a Redis-backed library for creating and queuing background tasks that also had a built-in monitoring interface.
The rest of the pieces fell into place rather smoothly thanks to the Monk framework. It had Sinatra, used Ohm as an ORM for Redis, came with a testing framework, and a generator for creating project skeletons (ala Rails). After about two months of on-and-off coding I finally had something I could commit to github and share with the open source community.
Since that time, we've replaced our instances of Panda with instances running Koala and have been very happy with the results. I continue to make minor improvements to the code and am currently working on a re-write, having learned from some of the mistakes I made with the original ;)
Try it out
If you'd like to give Koala a try, or better yet contribute to the project, it's available on our open source github page. The README has been recently modified to contain more than enough information to help you get started and you could always drop me a line if you run into any problems or have some questions.
Screenshots
Some screenshots of Koala in action
Posted by Bart on Jul 16, 2010
It seems as though the longer I am in this industry, the more and more I hear about
noSQL. I'm not going to go into the details of what NoSQL, that's why I gave you a wiki link... But what I am going to do is provide you a tool to migrate your data from a SQL database to
CouchDB.
CouchDB, an enthusiastic Apache project lead by Damien Katz, just recently released
version 1.0. Version 1.0 represents a huge stepping stone for the CouchDB project and continues to push the point that CouchDB can be a viable document-based data store for high scaling applications.
With such a large user base using sql services already, the migration to a document-based data store can seem a bit intimidating, but sometimes NoSQL is truly the way to go. Fortunately LazyBoy is here to help alleviate some of the data migration pains. It can even be used as a backup tool.
LazyBoy is written in Ruby, powered by ActiveRecord and RestClient. The configuration options for database connections will be very familiar with Rails developers, and are easy enough for people who have never used rails.
Check it out @
github/lazyboy
Posted by Danny on Jul 16, 2010
Fake is a new browser for Mac OS X that makes web automation simple. Fake allows you to drag discreet browser Actions into a graphical Workflow that can be run again and again without human interaction. Fake Workflows can be saved, reopened, and shared.
Todd Ditchendorf is the creator of Fake. He incorporated the ideals of
selenium and
fluidium in the design of Fake.
Features include:
- Native to Mac OS X
- Action drag-able library
- Recurring repeat actions
- User agent customization
- Automatic screen-shot support
- Multi-tab function
Fluid Media will continue to monitor the progress and growth of this fantastic tool and use it in development of our own projects.
Posted by Josh on Jul 08, 2010