The ClarionDesktop.com suppliers area has been down for a couple of weeks now, because Rails crashed and once again I was left fumbling around in the dark, hacking away at obscure configuration files, and SSH’ing my Linux server.
So yesterday I made the decision to ditch Rails and look for an alternative. Even coding it myself in PHP and Notepad seemed attractive compared to having to fiddle around with Rails. I found a few alternatives to Rails, and ended up going with CakePHP.
CakePHP is a web application framework, written in PHP (as all decent web tools are), and is in many ways very similar to Ruby on Rails.
Except it’s lighter (less cluttered), better supported (documentation, examples, etc), and deployment basically involves uploading 2MB of PHP files into a subfolder on your website (considerably easier than getting a Rails APP to run).
I really enjoyed working with Rails, but the deployment issues ruined it for me. It breaks to easily, and when the framework does break (which happened four times in two years on ClarionDesktop.com) there is practically nothing in terms of documentation, FAQ’s, community assistance, etc. When it goes down (which it does), you’re on your own.
CakePHP seems to offer everything that Rails did in terms of functionality, plus you get stability, example code, docs and community support. Here are a couple of useful links…
- CakePHP Website
- CakePHP Cookbook (official docs)
- CakePHP Google Group
- CakeForge.org (download CakePHP itself, docs, and numerous CakePHP projects)
- The Bakery (CakePHP Portal, with tips, articles, etc)
- In addition to that, I found this article on implementing User Authentication particularly helpful in gaining numerous insights into the language.
I’ve only begun to scratch the surface in terms of what CakePHP can do, but in less than three hours I downloaded it, learnt the basics, and build and deployed a fully functional suppliers area on ClarionDesktop.com, complete with user authentication, adding / editing products, session handling, etc. And the site even looks reasonably good. I’m sold. CakePHP it is.


Question for you… why not build the site in Clarion with Nettalk?
Hey Gary, I’m really glad you’re enjoying CakePHP. We’ve worked really hard to make it easy to grow into, so to speak.
Documentation is one area in particular where we try to solicit feedback from developers new to the platform, so if you notice anything that’s lacking or could be explained better, be sure to leave a note or an edit on the Cookbook, or drop us a line on the mailing list.
So, welcome, and good luck.
Hi Nate,
Wow! That’s service! Thank you! I’m loving it so far.. Granted, at this stage I’m very much a dabbler, but I plan on getting more into CakePHP over the coming weeks and adding many bells and whistles to the project I’m working on. No doubt I’ll find many places to use CakePHP in the future. Thanks to you and your team for the work you’re doing, it’s greatly appreciated..
I’ll add comments about my learning curve here on my blog, and also on your site.
Best Regards,
Gary.
Hi David,
Good question.. To be honest the thought did cross my mind.. I’ve been itching to spend time with NetTalk4, but the bottom line is that I’m a believer in the magic Linux / Apache / MySQL / PHP combination.
NetTalk4 is no doubt a great tool (it did come from CapeSoft after all
), but I don’t see Windows-based web servers, especially proprietary ones, as being viable for most of what I’m doing. I’d certainly love to build something for a corporate LAN using NetTalk4, I’m just waiting for the right client / project.
Cheers,
Gary.
While I’m digging on Cake so far (and consider myself language-agnostic) I find it a far cry from the truth to say that Cake is “better supported” than Rails. There are /tons/ of docs, tutorials, and 3rd-party reference material for Rails, with very little for Cake.
I was pleasantly surprised to find a few books for Cake when I decided to use it for the current project I’m working on, and while I’m enjoying “Beginning CakePHP: From Novice to Professional” a good bit, it’s not the best-organized book I’ve read.
Deployment and initial setup are the main things I think are attractive about Cake, and simplicity of setting up actions, hybrid dynamic/static/overridable scaffold is great for getting up to speed. Having played with Symfony and one or two other PHP frameworks in the past I definitely found Cake to be the easiest to just drop into and work with.
That being said, I’m excited to see future work on Akelos, which looks to me to be the closest thing to Rails in the world of PHP. I just wish it was more stable/worked out of the box with my Mac/MAMP setup! Configuration is a bit trickier than with Cake, it seems, and with only one or two devs working on it, it’s a bit brittle/early to count on.
Hi Nick,
Thanks for the comment.. To be honest I can’t really comment either way on Akelos, but I’ll look into it. So far (8 days since writing this original blog entry) I’ve had no issues with Cake. No downtime. No problems. That’s how IT is supposed to work…
I agree there is info on the web about Rails, but most of it (at least from my experience) is outdated, and no longer works with the latest version of Rails. That’s what puts me off, Rails seems to continually change the goalposts and break old APPs. Not cool.
G.