Recently, I decided there was something of a hole in my programming toolbox – a good tool to develop websites. Now I want to change that so I have a number of options. I’ll group them into three main categories.
- Choose a framework that works for one of the languages I know already, e.g. Catalyst
- Choose a framework for another language, e.g. Rails or Django
- Choose a tool that is specifically designed for the web, e.g. Seaside, GWT or HaXe
For various reasons, I like option 3, and as I’m not interested in Java, it comes down to a choice between Squeak/Seaside or HaXe. This puts me in the unenviable position of making a choice between two technologies I know almost nothing about. Let me try and enumerate the pros and cons that I’m aware of at my superficial level of understanding.
Seaside positives
- HTML/CSS generation using Smalltalk only
- Better debugging
- Image development – install pain is a thing of the past
Seaside negatives
- Squeak is difficult to integrate with C.
- Documentation is not as good as HaXe
HaXe positives
- Language looks more familiar
- Relatively bigger community
- There is going to be a book available soon
- Seems to be improving rapidly (in comparison with Seaside)
- Integrates with C
HaXe negatives
- You still need to write HTML/CSS (I think)
- Not quite so easy to install
The big points here are obviously the integrates with C – e.g. if I want to use a Sqlite (ignoring the single-threaded blocking FFI version) or Sybase library then I have a lot of work to do. On the other hand:
- I’m not sure I’ll ever need that functionality
- even if I do, there are ways around it.
- I love the idea of not writing HTML/CSS directly.
I think I’m going to go with Seaside and keep HaXe as backup.
Update: Looks like you do still need to know/write some amount of CSS which weakens my primary reason for choosing Seaside over HaXe.