Friday, October 31, 2008

Close But No Cigar

I have been trying to get the production server ready for a November 1st launch but it doesn't look like I am going to make it. My sysadmin skills are suspect and things that work just right in test seem to be yielding different results in production. Support at Layered Tech has been great. They are very responsive and have taken care of everything I've asked. Tickets get handled in a few hours and it doesn't seem to depend on the time of day. Now I just need to figure out why things aren't working the way I expect them to.

Monday, October 27, 2008

How Soon Can We Launch Q2OH?

I want to launch very soon. Testing has gone well. We still need to configure the production server. It is a race to the finish. Can we make it happen by November 1st? Stay tuned.

Thursday, October 23, 2008

Now This Is Cool

This sounds like an interesting demo. Sun has GlassFish playing two-player Tic Tac Toe over the Internet in a browser. Check out the blog post here.

Monday, October 20, 2008

Have a Test Server Ready

If we are trying to take advantage of free hosting, how did we happen to have a test server ready? Motivated by an excellent article, Build a (Very) Inexpensive Solaris 10 Workstation, I built a server out of spare parts and $150. One of the things that kept the cost so low is the long list of compatible hardware for OpenSolaris. We re-used a case (including power supply), optical drive, and hard drive. Newly purchased for the project were motherboard, CPU, CPU cooling fan, and memory. The easy-to-use package manager made installing GlassFish and MySQL a breeze, even without much experience running Solaris. Configured with a static IP address instead of using NWAM and an account at DynDNS the test environment was a lot less expensive then paying monthly hosting costs for a virtual server with similar specs.

Thursday, October 16, 2008

Grails Searchable Plugin is Awesome

I am working on adding search to the Q2OH web site. Getting it to work took about 20 minutes. Getting it to work just like I wanted it to took a day. All thanks to the Searchable plugin by Maurice Nicholson. It does exactly what it says it does and it does it well. I did run into a slight setback getting the suggested queries to work correctly. It was a syntax issue and once I got the spellCheck option correctly included in the closure it performed as advertised.

static searchable = {
only = ['content', 'author']
content: spellCheck 'include'

Now when you search for "sea", if there are no results it will ask if you want to search for "see" instead.

Thursday, October 9, 2008

First Failure

Well that didn't take long. Filters seem to be working differently between the development and test environments. This is why we test, right. Dev is a Windows XP notebook running Jetty. Test is an OpenSolaris x86 box running GlassFish. I am glad to have a test server running OpenSolaris and GlassFish so this didn't happen on the production site. I am using a filter with a uri which works fine in dev but appears to not do anything at all in test. It should force all requests to the login page for any user that is not already logged in. I will switch to using (controller:'*', action:'*') in the filter and see if that changes the behavior on GlassFish. I suspect the way GlassFish uses domains might require the uri to be different from what works on Jetty. Or I could have done something that works for one OS and not the other.

Wednesday, October 8, 2008

Quote of Tomorrow

What would you get if you made a Quote of the Day site with Web 2.0 features? How about the Quote of Tomorrow, or Quote 2.0? Better yet, Q2OH. In an effort to get something shipping now we are working on a very simple web application. The goal of Q2OH is to practice. Make sure the hosting is configured, the development process is working, we have the ability to test, and maybe have some fun along the way.

Monday, October 6, 2008

Create Database

I'll need to remember this information to set up MySQL in production.
mysql> create database qotd_prod;
Query OK, 1 row affected (0.00 sec)

mysql> grant all on qotd_prod.*
-> to 'prod_user'@'localhost'
-> identified by 'password';
Query OK, 0 rows affected (0.05 sec)

Friday, October 3, 2008

Trying Is The First Step Towards Failure

Homer Simpson said that. I found it while searching for quotes to add to the quote of the day application I built following Glen Smith's instructions. Glen is part of an excellent podcast on Groovy and Grails (and Griffon?) and is now also teaming up to write a book on Grails. I think I will find inspiration in Homer's sage advice and get on with failing. If I do it enough times I just might suceed.

Thursday, October 2, 2008

I Am Not Alone

Maybe this web thing will catch on. In researching blogging tools I found someone kicking off a new Grails project that plans on blogging how it goes. Hmm, sounds familiar. Feel free to follow along and see who finishes first.