Login

OnSmalltalk is Now Written In Smalltalk

OK, this blog is finally written in Seaside; no more chasing the latest Wordpress version. Just makes more sense for a blog mostly about Smalltalk and Seaside to be written in Smalltalk and Seaside. I haven't felt like writing for a long time so I'm hoping this change will make the blog more fun and get me paying attention to it again; she's been neglected for a while.

The code tops in at just under 800 lines so far for the Seaside, database and data migration, rss and atom feed, and google sitemap code. It could have been less if I didn't have to support the atom feed or deal with all the existing links or data from the old Wordpress site without breaking them, but that wasn't an option.

Hopefully, it's not full of bugs, but it supports clean URLs and a nicer threaded Ajax comment system. It'll be interesting to see how managing it compares to managing Wordpress. No more huge library of plugins or community to turn to, just my own simple Smalltalk code with the features I need and only the features I need. Just hope the spam doesn't kill me, guess I'll find out soon enough.

Comments (automatically disabled after 1 year)

EstebanLM 5794 days ago

Hi Ramon, Congratulations for the new site!

One question... How do you get the nice urls, using seaside?

Thanks, Esteban

Clarence Westberg 5794 days ago

Congrats, hope to see many posts on your experiences developing and maintaining this blog

Ramon Leon 5794 days ago

> How do you get the nice urls, using seaside

Guess I'll have to write a post about that.

NeXT 5794 days ago

yes, you have to :)

Wrameerez 5794 days ago

Cool, Have you used Pier at all?

Ramon Leon 5794 days ago

Yes I've used Pier, though I don't anymore. Nothing against Pier but it's just more fun to write the code myself and this site is after all a hobby I do for fun.

cdrick 5794 days ago

nice to see you back... Waiting your post about rest url :) Did you use seaside 2.9 ?

Ramon Leon 5794 days ago

No, haven't found the time yet to dig into 2.9; this is all done in 2.8.

Mike 5794 days ago

I'm impressed: the site seems very snappy.

Could you talk about the hosting environment (hardware, software, persistence, etc)?

Nice to see you back.

Ramon Leon 5794 days ago

It's nothing fancy, just a personal server of mine; an old Dell dual proc PIII 1.4ghz sitting in a co-lo.

Software is just vanilla Squeak 3.9/Seaside 2.8 on Ubuntu Linux in a single Squeak image using SandstoneDb for persistence.

NeXT 5794 days ago

I know it's number of objects what determines loading/starting time, how long does your image(with sandstone db) take to finish?

Ramon Leon 5793 days ago

A couple seconds, nothing big, blogs are tiny. You'd need thousands of objects before you started even noticing load time. Besides, if your app is stable, startups should be rare.

EstebanLM 5793 days ago

Thanks a lot! I was needing something like this :)

Cedrick 5793 days ago

Thanks a lot for writing this... Really nice as always ! So basically, we need two subclasses, one for the session (+inst var for the root component) and one for the specific RenderLoopMain... Then for each "clean" url (using #url:), #initialRequest: must handle them accordingly.

This makes me wonder how well usual urls (with _k at least) and clean urls behave together. Are there some limitations and first, is it possible to mix both ?

To me, if url are specified -> clean url otherwise usual urls. Anyway, I'll try that soon to have a better idea ;)

Thanks again...

Ramon Leon 5793 days ago

Yup, and all my apps have a custom session class anyway, so it's only one extra class, the custom render loop.

As for how it behaves when mixing with callbacks, well so far it has seemed fine and cmsbox uses this technique but doing this blog was partially to help find out. We'll see how it goes.

Geert 5794 days ago

How about making the code of this blog public?

ps. Can you add a screenshot on the My Squeak Image page?

about me|good books|popular posts|atom|rss