Alex Kroman's blog

New in elementalClinic: New theming system

November 20, 2008

One of the issues with the old emC theme system is that when you wanted to modify the look of a feature you had to copy over all the layout files into a new directory to make the edits you needed. This led to an extraordinary amount of redundant code which made upgrades not as enjoyable as they could be.

The new theming system was worked on by Randall, Ryan, and Dieter and allows you to simply pick and choose the pieces of a theme you want to replace. Now if you want a custom intake system you just need to modify the intake files rather then copying over all sorts of files you weren't even interested in changing.

As always, you can grab the new code here

Getting Started with Git

August 20, 2008

At OpenSourcery we use Subversion for all of our version control but lately I've been using Git on some personal projects. A lot of people consider Git to be the next evolution of version control and I definitely agree. Some of the unique advantages that Git has over Subversion include:

Much easier branching and merging

Since Git makes branching and merging so simple I will often create a handful of "feature" branches on a given project and work on them whenever the mood strikes. When they are stable and tested they get merged back into the master branch and pushed out to the other feature branches. This method of branching and merging fits the schizophrenic approach that I naturally want to take toward development.

Easier Collaboration

Git allows you to track all your colleagues branches and pick out just the pieces of their code that you want. It also makes handing a volume of patches coming from mailing lists much easier.

Local development

Git allows you to save locally. This allows me to create lots of savepoints in my code at points where the test suite might not be passing and I wouldn't want to be committing into the trunk repository. When my code is tested and more stable I can push it out for the other developers to look at.

Getting Started

Let's say you have a development project in the directory devproject. Let's start using Git to manage this project.

First off install Git. In Debian and Ubuntu we just need to do "aptitude install git"

cd devproject
git init
git add .
git commit -m "My first commit"

At this point you have all the benefits of a local version control system but no one can see your work. To make it available to other people we'll need to install a remote repository on your server. At home, I only allow people to access my code through SSH so that's the method I am going to talk about here.

ssh alex
mkdir -p /var/git/devproject.git

Lovdbyless: New Social Neworking Platform for Rails

March 28, 2008

Lovdbyless is the first open sourceOpen source software is computer software for which the human-readable source code is made available under a copyright license (or arrangement such as the public domain) that meets the Open Source Definition. social networking platform that has come out for RubyRuby is a dynamic, reflective, general purpose object-oriented programming language that combines syntax inspired by Perl with Smalltalk-like features. Ruby originated in Japan during the mid-1990s and was initially developed and designed by Yukihiro "Matz" Matsumoto. on Rails. The platform has the following functionality right out of the box:

  • User registration and logins
  • Private messaging
  • Blogs
  • Photo galleries
  • Profiles
  • Searching

By building your application on top of Lovdbyless you don't have to worry about "basic" functionality and can spend all of your money creating features that differentiate you from the competition.

Check it out at: http://www.lovdbyless.com/