…but Mercurial is even better
- Posted by admin on May 10th, 2008 filed in subversion
- Comment now »
I posted the other week about how great Git is - It took a while for me to get the point. I'm generally the last to figure this stuff out so forgive me if I'm preaching to the converted. For anyone still unconvinced this video presentation by Linus about Git helped a lot. It was the point at which he said: "no politics, no access rights". Sweet, sweet freedom. It suddenly dawned on me how simple and easy it's been to manage my Git repos.
This was again compounded when I had to implement a patch in my Asterisk PHP API which is Subversion hosted. As the current version was out of date the patch failed so needed to be done manually. If on the other hand we'd been using Git or Mercurial I could simply Pull the contributors changes. Nice and simple! No fuss, no bother, just get on with it.
So now to the point of my post: Mercurial.
Now Git was great but I think I've found a new friend in Mercurial. Although Mercurial is still lacking in some areas (named branches still can't be deleted nicely) I think it's future is much brighter. For starters its ported to more platforms. This is an advantage gleaned form it being developed in Python. Which is my major point here - being in Python makes it nicer, easier and cleaner to deal with. Writing extensions to Hg is a snap with a nice built-in API. So its immaturity in features is more than made up for its potential.
It has all the advantages of Gits distributed methodology but with the flexibility to grow beyond its existing state easily and rapidly.
Free Mercurial Hosting
Git - Sold
- Posted by admin on April 27th, 2008 filed in general, subversion
- 1 Comment »
I've posted a few times about my lack of enthusiasm for Git and other distributed version control systems (DVCS). I never thought there was any point in it unless you were part of a large-scale and very geo-diverse set of developers. When its just a project with me and maybe a few others it seems pointless.
However, I did promise I'd give Git a go.
Verdict? My god! How could I have been so naive! I feel like I've unshackled myself. Here's why:
Tagging and Branching - In the past I never bothered with Subversions branching and tagging. It seemed clunky and I saw little point in all honesty. Linus said he believed one of the major reasons people didn't bother with branching much was for precisely that reason. Now using Git branching is immensely easy! It suddenyl makes sense to use it and flitting and flying around my source is a snap.
Speed - This is a killer. Git flies! It really does bloody fly like the wind. Its locally hosted but even so I've not come across another source control system with this speed.
Intuitive - Ignoring files and removing files form your repo are simple processes. I always found doing this in Subversion to be sketchy at best. Most of Gits commands are very simple and easy to deal with with nice clean output.
I've currently got two Django projects on the go and one is using Subversion, the other Git. I'm seriously considering scrapping svn entirely and switching to Git. I've got another Django project on the horizon that I'll give Hg a try with.
User’s Bill of Rights?
- Posted by admin on April 21st, 2008 filed in general
- Comment now »
Why did I never get this taught at university, college, school, work? I think it needs to be! Too often the user is blamed and condemned as the source of all the industry's ills!
1. The user is always right. If there is a problem with the use of the system, the system is the problem, not the user.
2. The user has the right to easily install software and hardware systems.
3. The user has the right to a system that performs exactly as promised.
4. The user has the right to easy-to-use instructions for understanding and utilizing a system to achieve desired goals.
5. The user has the right to be in control of the system and to be able to get the system to respond to a request for attention.
6. The user has the right to a system that provides clear, understandable, and accurate information regarding the task it is performing and the progress toward completion.
7. The user has the right to be clearly informed about all system requirements for successfully using software or hardware.
8. The user has the right to know the limits of the system's capabilities.
9. The user has the right to communicate with the technology provider and receive a thoughtful and helpful response when raising concerns.
10. The user should be the master of software and hardware technology, not vice-versa. Products should be natural and intuitive to use.
Parsing Time Using Python
- Posted by admin on April 20th, 2008 filed in python
- Comment now »
I've spotted a great little Python module available at the Google Project hosting site. It enables you to parse English date and time information into Python date objects. Similar to the feature of many online calendars where you can say "2 days from now" and have it know what you mean.
Get it here.
Your To-Learn List?
- Posted by admin on April 20th, 2008 filed in Uncategorized
- Comment now »
I read this blog post and thought it was a good idea. Having a list of what technologies, languages, etc you plan on learning for the year. I had one last year but forgot this time round. So I know it's April but I thought I'd throw together my list:
CodeIgniter Framework - A lightweight PHP framework similar to Cake, Symfony, etc. I've become a big PHP framework fan recently. It enables me to code using an MVC architecture but without alienating any non-PHP coders in the office.
(Re-learn) Django - I only played around with this and managed to produce one production website. I really want to get back into it and produce a site that's going to stay on the net for a time (the last one came down a few months back). I've got a site planned and its looking quite diverse. With a gallery, blog, etc. I'll post the details when its finished.
Smalltalk - I'm told Ruby has borrowed a lot form this so it just begs to be played with. I've seen some on my travels and it's pretty to look at. I just hope its nice to use. I'd like to get into using it's major web framework too: Seaside.
NGinx - Everyone keeps raving about this so I thought I'd give it a go. For anyone not, in the know, it's simply a lightweight webserver most often used by Rails people.
Git & Mercurial - After I promised to learn these since my post on them I've not done it yet! I will do though - give me time. Don't rush me!
RAGI & PHP AGI - The Asterisk PBX system has an Application Gateway Interface for controlling it remotely via apps. I've already been tinkering with the Ruby version (RAGI) but I also want to use the PHP product. Both seem to have a huge amount of promise. If only Asterisk was more widely used! I'll be setting up an example system soon and providing tutorials on this very blog!
LISP (either Scheme or Common Lisp) - I made a half-hearted attempt to learn this a few months back but gave up after seeing the quntity of parentheses. Call me chicken but it just seemed masochistic at the time. I will conquor my fears thoguh and get it done.
So now I've done my list - whats everyone elses?
Google App Engine
- Posted by admin on April 8th, 2008 filed in python
- Comment now »
I didn't manage to get into the first 10k people so I had to make do with the goodie bag (SDK) and be on my way for now.
Form what I'm reading it looks incredible!!! Is anyone else realising how amazing this all is? It's a playground!!!! A big Googlely playground for developers to play in!!!
For anyone not in the know:
It's an online dev server for you to upload and test out your Python-based web apps. The SDK comes with Django for you to get your feet wet too.
Playtime!!!
6 Ajax Frameworks in Seconds
- Posted by admin on April 8th, 2008 filed in javascript
- 5 Comments »
Lets skip the big comparisons here and get to brass tacks. Here's the rapid review of Ajax frameworks:
- YUI -Stable and comprehensive but a little verbose.
- jQuery - Clean, fresh and perky but plenty of hacked, cruddy plugins to be wary of.
- Ext - Beautiful to look at but agonising to use.
- Prototype/Scriptaculous - Only popular because its used by Rails and CakePHP, but you can do better with jQuery.
- Dojo - Meh.
- MooTools - Trying to be like Prototype, little realising its picked thewrong one to copy.
MOG - Ruby Music Lovers
- Posted by admin on April 8th, 2008 filed in rails, ruby
- Comment now »
Git and Mercurial Hosting
- Posted by admin on April 6th, 2008 filed in general
- 2 Comments »
With all the clammering for free SVN hosting at the moment its easy to forget there are other services available. I wanted to try out Mercurial and Git since they recently became increasingly popular and with Rails switching to Git it just begged to be given a try.
Well here's a few free source hosting services using alternatives to Subversion.
- Mercurial by freeHG
- Mercurial hosting has also been available since October last year at Asembla.
- Free Git hosting
- Gitorious free hosting
- TuxFamily provide much more than just Git hosting.
- Nice looking hosting by GitHub.
I'm still unconvinced of the distributed source repository method. Maybe I need to be part of a larger development team but for small teams (3-4) located geographically close it seems pointless to use distributed. Unless someone's found it to be useful otherwise?
Ruby Forums List
- Posted by admin on April 6th, 2008 filed in rails, ruby
- Comment now »
I don't get involved anywhere near as much in the Ruby community as I probably should but I thought I'd put together a listing of the top Ruby forums I've come across in my time:
- The Original Ruby Forum
- OCS Ruby Forum
- UK Ruby Forum
- SitePoint Ruby Forum
- MySQL Ruby Forum
- Nabble Forum
- Rails Forum
It's always a good idea to stay in touch with the community. Not only to learn form but to help others out.

