Archive for the tag 'Ruby'

Screencast: How to Build a Blog in 15 Minutes with Seaside

OK, I’ll make this short and sweet. Here’s a screencast of me building a super simple blog in Seaside in 15 minutes, similar to the Ruby demo screencast.

I use two frameworks here, Seaside, and Magritte, with a few custom extensions to my code browser to generate accessors with Magritte descriptions for me.

I tossed in a few required fields, and one business rule about duplicate post titles, to demo Magritte’s abilities. I used the image for persistence, something I think greatly enhances development speed and enables rapid prototyping in a pure OO fashion; something you can’t do if you’re futzing around with database mappings and schemas.

This is my first time using screencast software, so there’s no sound, and everything is real time, I didn’t edit or speedup the video. I used a freeware capture program called CamStudio, it’s very simple and doesn’t allow editing. In the future, I think I’m going to need to find some better screencast software, the whole experience was a bit painful, but this will do for now.

If anyone knows any better free screencast software or formats to use, drop me a line.

UPDATE: The screencast is now in Quicktime and only 7 megs thanks to a reader Manuel Blanc re-encoding it for me.

UPDATE: In the video, I use a method called #contains: on the BlogPost collection, this method comes from the Refactoring Browser and is for compatibility with Visual Works. It may not be in your image, the equivalent Squeak method is #anySatisify: which #contains: simply delegates to.

UPDATE: For anyone who’d like an explanation of what I’m doing, Kevin Kleinfelter was kind enough to transcribe all the steps as if I’d done a voice over.

Featured Resources

When we try to build blogs, we also might consider making our own website some day. It’s a piece of cake building one for you with so many website templates available online. Neither is it an uphill task to get a cheap website hosting for your site. Different packages exist from good companies such as ipowerweb, that will provide you with all the necessary facilities for hosting your website. You can easily browse through names such as anhosting that will have the right solution for your needs.

Rails vs Seaside From a Java Developer

Here’s an interesting post from a Java guy trying to decide between Ruby on Rails and Seaside. He has quite a few interesting things to say concerning the shortcomings of Ruby on Rails, and how well Seaside handles that complexity with ease.

He also has a few complaints about Seaside, most of them valid. Seaside still isn’t the full stack solution that Ruby on Rails is. We still have to handle object relational mapping, something Ruby on Rails gives you for free. Nor does Seaside deal with object validation and errors, I use Magritte for this. Magritte rocks, but I’m not sure the average guy trying out Seaside will find it, or learn how to use it. From an outside point of view, Ruby on Rails looks like a much more complete solution.

We have Glorp, which can do this, but only against Postgres Sql in Squeak. Nothing against Postgres, but seriously, in the real business world, it’s either Microsoft Sql Server or Oracle; and it’s also usually a legacy database, so we really need something like Glorp for those databases, because something like ActiveRecord is just too brain dead to work.

Most of the schemas I have to work with suck, and can’t be changed because people used the database as an integration point for multiple apps (God I’m tired of seeing people make this mistake). Doing a simple class = table, object = row mapping just doesn’t cut the mustard for legacy development against existing databases.

Seaside is far more advanced than Ruby on Rails, and is a much better web framework for doing anything complex, but we’re still missing the market on CRUD apps. CRUD against a popular business database is still far too difficult using Squeak. I’m sure Visualworks has far better database support, but I want something free… I want Squeak, I want Squeak to work with Sql Server, I want a Pony… :(

Featured Resources

There are different programming languages for different purposes. For advertising the one that has the best features becomes bit difficult as they usually have their own purposes to fulfill. Similar competition applies to the hosting companies, like ipowerweb, or another best one would be dot5hosting to choose from. With the cheap internet phones comes the cheap call rates. Taking a 350-001 test got easier with preparation guides available online.

Seaside and Smalltalk Interest Spreading

Here’s a nice quote from a Java/Ruby programmer’s recent blog entry on Seaside…

Frameworks like Struts or Webwork tries to model this kind of flow in static XML configuration files, which is at best, a hack. Rails tries to do this in its own code by convention, which is a good attempt but the way Seaside does it is the best I’ve seen so far.

That’s the kind of thing I like to see because I still think Seaside is the Smalltalk killer app. If Smalltalk is going to come back into the mainstream, Seaside is going to be the vehicle of that change.

Popular Posts

Here are some of my more popular posts. It’ll save you a little time if you don’t want to search the archives.

« Previous PageNext Page »