Working with Rails

Last fall I had written a post where I noted that I had a problem to solve at work which I thought might be well suited for Ruby on Rails.  Like a lot of side projects, this one never went anywhere but I did end up playing around with RoR enough to get an idea of how it works and how quickly things can be developed with it.

I do some volunteer work with our High School Booster Club and last year built them a WordPress based site which is largely used to facilitate the purchase of memberships.  While it seems like overkill, the plan is to use the web site to host more content relevant to the various athletic teams.

A couple months ago I was approached about how the Booster Club’s mobile app could be improved or replaced as the currently technology is being withdrawn and no longer supported.  I learned that the back end for the mobile app was extremely cumbersome to use and was a source of frustration for the people who maintain rosters, schedules, results, etc.

I am now working on a replacement for the Mobile App and the backend infrastructure.  Because we already have a WordPress site, I had considered using the WordPress site to host all of the data and leverage the WordPress JSON REST API plugin to serve content up to a Mobile App.  But I had some reservations.

jQueryMobileBookI’ve never done Mobile App development and in the interest of time, am not sure I want to take that on right now.  Based on my jQuery experience with WordPress, I thought a jQueryMobile web app might be a reasonable compromise.  I picked up a copy of jQuery Mobile Up and Running a while back when I had heard it referenced on a Podcast.  At the time I didn’t have an immediate application for it but it was interesting reading.  I dusted it off and realized jQuery Mobile would be a good solution for building a prototype mobile web app.

So now I have some thought in my head of a mobile web app I want to build but wasn’t sure about how to feed it.  While I could see putting all of the data in WordPress, I was worried about maintaining it.  I need something dead simple to enter rosters, teams, schedules, results, etc. into a system.  Ideally it should be accessible from a phone so scores can be quickly entered by unsophisticated users.

What I’ve decided to do is build a mobile first (maybe only) application using Ruby on Rails.  I have made all of my HTML views based on jQuery Mobile.  Within a week or so of working on it for a few hours a day, I have the basic application up and running on my Ubuntu VM.  I can set up teams, coaches, and athletes, and assign coaches and athletes to teams.  I have started on venues.  There is a ton left to do – events, schedules, user login, Google Maps, and a lot more.

While I am excited about how much progress I have made in a relatively short time frame, I am worried I am “doing it wrong” or have made a decision that will be difficult to unwind.  I’ve learned a fair amount about Rails in the past two weeks and much to my surprise, have not had to learn a whole lot of Ruby yet.

The ability to quickly add database columns and connections in RoR is pretty slick.  During my first couple of scaffold generations I was worried about getting the database “right” but having dropped some columns and added others, I’ve found it relatively painless.

While I am impressed with RoR, I am really impressed with jQuery Mobile.  It is pretty amazing how quickly a mobile web app can be assembled.  I’ve been using a regular web browser for developing my app and even using jQuery Mobile with a regular browser is pretty nice.  I had forgotten that the laptop I borrowed while my Vaio was being repaired has a touchscreen.  Using the app on Chrome with a touch screen is pretty effective at mimicking a mobile device.

I still have tons more to learn as I get ready to deploy the first build for some people to play with and populate with dummy data but I can already see other uses for Ruby on Rails.  I am still not a big fan of the Ruby syntax but I can live with it for the benefits and development efficiency I am seeing with Rails.

Finally Finished Brisingr

It took me a little longer than normal, actually a lot longer than normal, to finish Brisingr, but I did finally finish it last night.  Typically when I read a book, I read it very quickly, staying up late or getting up early.  I have been wrapped up in our battle with the Wake County School Board’s Reassignment plan which moved our high school so I have actually haven’t done much reading except on the days I go to the gym and use the elliptical machine, usually twice a week.  It takes a while to read a book when you only spend 45 minutes reading it a couple times a week!

So I finally finished it and it was a bit of a let down because the story doesn’t end!  About 100 pages from the end I figured it couldn’t end because the story would have to wrap up really quickly which would have been a real disservice to the story.  So I would rather it flow into a fourth book than have a rushed ending.

There was a quite a bit of character development for Eragon’s brother which should be interesting as it appears he will be a central figure to the conclusion of the story.  This book is a less tedious read than the second book (Eldest), much of which took place with the elves and thus had lots of odd words which can be tedious to read.

If you have enjoyed the first two books you’ll like this one too but it would have been nice to know ahead of time that the story wouldn’t end in this book.

Brisingr

A number of years ago one of my children received Eragon as a gift and we ended up reading together.  I am not a big fan of Fantasy (e.g. I couldn’t get going with Lord of the Rings) but I enjoyed reading Eragon.  When Eldest (the second book) came out my family gave it to me for my birthday.  I didn’t think Eldest was as good as Eragon but it was still a good story.

Brisingr came out a few months ago and I added my name to the waiting list at the library.  I got an email a couple weeks ago that a copy was available for me so I stopped by and picked it up.

I haven’t had much time to read it yet – lots of other stuff going on but I am now about 100 pages into it and the story is keeping me engaged.  Since I am invested in the series, I will finish the book for sure.  It has been a while since I read Eldest so I had to get reacquainted with the story and this book does a nice job of providing a summary of the first two books before the story picks up.