Archive

As a web application developer I made the switch years ago to Mac. My decision was heavily influenced at the time by the fact that tools I use in my development environment. I needed a new computer anyway, so at the time, I figured it would be easier to use the Apache and MySQL that were built-in to OS X. My first Mac was an old PowerBook G4. In fairly short order I was able to get my development environment up and running with ColdFusion, Apache, and MySQL. I came to really like working with that set up, but at some point it was clear I was going to need to step up to an Intel based MacBook to keep up with software requirements. And that’s when I really took the plunge into the Apple ecosystem with my first MacBook.

I’m now on my 3rd MacBook. This one’s a 13″ MacBook Pro with 16gb RAM (that’s not a typo). It came with Snow Leopard and I ram ColdFusion 9 and MySQL to do my web development. Of course by this time Apple had ditched MySQL so I had to download and install it myself. Not a huge deal. Soon after, Lion came out and with it quite a few new problems. With Lion came a new version of Apache and new permissions settings. I may be a web developer but I do not spend my time configuring web servers. After quite a few hours of trial and error with the httpd.config file and the virtual hosts file I thought I’d ask Apple. I take my shiny Mac to the Apple Store and for the first time a Genius could not help. Even better, I call Apple support and am told that they don’t offer this type of support. I may be crazy but if you’re gonna package Apache with your OS, your people should expect customers to use it and you better be ready to support it. I did eventually get it figured out and had been running my ColdFusion under Apache for some time even through upgrades to both ColdFusion 10 and OS X Mountain Lion.

Enter Mavericks. I thought pretty hard about whether I wanted to upgrade. I knew the potential for problems. But I figured I’d made it through Mountain Lion easily enough that I could handle it. That as a mistake. As soon as the upgrade was complete, I couldn’t hit any of my local development sites. I couldn’t figure out if it was a permissions problem or what. Nothing seemed to work. For about 3days I tried everything I could with no luck.

Finally, I gave up and just installed MAMP Pro. It is now my web and db server. I was also able to get ColdFusion 10 running under it. It only took about 90 minutes to get everything back up and running under MAMP Pro. In order to get support for virtual hosts, I had to buy the full version which costs $60. But it is so worth it to not have the frustration that seems to accompany the built-in Apache. I don’t think I will be going back any time soon. It seems to run counter to Apple’s mission to be simple. For me this has not been simple. But I am glad I can get back to writing code.

I have been looking to either create my own CMS or find an open source CMS for use in my church’s web site. I have found several that look promising, but I have consistently found documentation for installation and customization lacking. Then I stumble across Jason Sheedy’s ByteSpring CMS, a simple but surprisingly capable little CMS with great documentation.

Simplicity is key for me as I have little time to train the parish staff. Much like Contribute, which we currently use, simply navigate to the desired page to edit, make your changes, click save and that’s it. No HTML required.

Bytespring CMS is built on ModelGlue and ColdSpring, both of which are provided with Bytespring. Installation was pretty simple. Drop the files into your web root and navigate to home page. I have not tried skinning yet, but it looks like pretty straightforward CSS. I feel confident I could have this thing up and running inside of an hour.

User management is there and it looks like we can expect some expansion on that in the future. There are two user types currently–Administrator and guest. Guest doesn’t appear to do much of anything right now, but I suppose it’s just a matter of time. There currently is no workflow to allow for a content approval process, but as with user management this could be up and coming.

There is no database required at all. Content is stored in XML files in the go2 folder, while user, news, and menu data is stored in a WDDX packet, which means plaintext. This might be a deal breaker for some. For a simple church web site, I don’t think it’s an issue.

Bytespring, simple as it is, offers plenty for the small mom & pop operation wishing for a web presence without the headaches. My testing so far certainly makes it a viable candidate for our relaunch later this year. I’ll be putting other CMS packages through their paces this summer as well, but Bytespring certainly was a good start.

So I’ve gotten the Selenium Core installed on a staging web server where we run development code. Additionally, I have installed the Selenium IDE Firefox extension to record test scripts. I have been recording a few test scripts on some very basic functionality of an application I have been working on, then uploaded the test suite to a testing directory within my application directory structure. Then it’s time to run the Selenium TestRunner and access my test suite. For some reason, I get small failures that while not indicative of a problem with my code, but rather idiosyncracies with Selenium or my JavaScript deficiencies. I’m getting very minor errors about elements not being found which I’m fairly sure is due to me not being in the habit of assigning an id attribute to everything especially form elements, so that Selenium can find them. I’m also wondering if it is better to manually write test scripts for Selenium, which sounds too time consuming, or is it OK to just use the Firefox extension to record them. I’ll do a bit more digging to see what I can find. Selenium is available at http://openqa.org.