Saturday, December 29, 2012

I am trying to improve my skills at design and web development

I built my first simple web page at SAIC in 1992 when my good friend Gregg Hanna set up a publicly accessible web server for my working group. Since then I have had a lot of people suggest that my web sites could look better but frankly I have always been more interested in content and developing cool web application functionality.

Recently I have been putting some effort into improving my design skills and the best resource that I have found is "The Non-Designer's Design Book" by Robin Williams

The author Robin Williams does a fantastic job at explaining four basic concepts of design: contrast, repetition, alignment, and proximity. She then provides good examples that show the reader how to recognize bad design and how to correct design errors.

I spent some time redesigning my main web site and really enjoyed the process. I started by determining the worst aspects of the old design based on Robin's advice and then tried to correct the design flaws using her examples.

I understand the technical aspects of using HTML5, CSS, and JavaScript but I was having some problems attempting to build effective web applications for both mobile devices and web browsers. As I have blogged about before, I have experimented and used the following tools on customer projects: plain old JSPs, Rails, Play Framework, and most recently Hiccup with Clojure web applications.

I have purchased several good books on CSS, HTML5, and JavaScript in the last few years but the one that has helped me the most has been "RESPONSIVE WEB DESIGN" by Ethan Marcotte

Ethan's short book on responsive design really helped me a lot because he efficiently covered what I needed to know about media queries and effective CSS and HTML5.

I have been using Dojo Mobile and more recently Twitter Bootstrap which did a lot of the heaving lifting for me in my first attempts at creating responsive multiple platform web applications. Reading Ethan's book helped me understand some of what Dojo and Boostrap were doing for me "behind the scenes" and also gives me some confidence in writing one page web applications from scratch without frameworks that might do more than I want and add unnecessary complexity.

Thursday, December 27, 2012

Technology tire kicking: trying Rails 4.0 beta

As I mentioned in my last blog article I am (mostly) shutting down my consulting business in order to have time for work on writing projects and to try to develop three business ideas. All three involve web apps/services and I want to use Clojure for two of them and Rails for the third.

Rails 4 should be released early in 2013 but I thought I would get a leg up and start experimenting with Rails 4 now. Fairly easy to set up and try:

git clone
cd rails
gem install sprockets
rake build ; rake install
And then version 4 beta is installed:
✗ rails -v
Rails 4.0.0.beta
✗ rails new testapp -d postgresql
I had to comment out the assets group in the generated Gemfile before bundle install but otherwise everything worked fine.

Monday, December 24, 2012

Happy Holidays and my future plans

I would like to wish you Happy Holidays! I hope you are with family and friends enjoying yourself over the holidays.

I wanted to share with you my plans for the future. Starting in January I am planning on mostly shutting down my consulting business. I have been consulting for about 14 years and consulting has provided me with a great life style but it is time for a change. Before consulting I worked at SAIC, Physical Dynamics, and Angel Studios. I will still provide some consulting services but will limit the time directly helping customers on very small projects.

I plan to spend most of my "work" time writing and developing a few software as a service business ideas.

I have written published books for some great publishers (Springer-Verlag, McGraw-Hill, Morgan Kaufman, APress, Sybex, M&T Press, and J. Wiley) but because I prefer writing on niche subjects (things that are of special interest to me!) I will probably only write free books published as PDFs in the future. I don't really need the income generated by publishing books and I would prefer writing on "smaller topics" that likely would have a small market. My wife Carol is an excellent editor and she will help me as will volunteers who read early versions my books and provide technical feedback.

One book idea that I have been planning is titled "Single Page Web Applications in Clojure" - this is a niche topic that few people will be interested in but I have a personal interest in writing an open source framework and writing a short book around my software will hopefully make the whole project more useful.

I have had a lot of people help me in my working life. So much of what I have accomplished so-far in my life has been made possible by other people mentoring and helping me! When my writing (or open source projects) helps other people I feel like I am paying back all of the people who have helped me.

I plan on making writing my main priority and activity but I also hope to spend a significant amount of time developing some ideas I have for software as a service products. I have always been a polyglot programmer to fit in with whatever languages my employers/customers use: Java, Ruby, Common Lisp, Clojure, Scheme, Scala, Prolog, C/C++, and Python. I will probably just use Clojure on my own projects, with some Ruby glue code for little utilities. I will write more about this when I have prototype web apps in place for people to try.

Happy Holidays and a Happy New Year!

Sunday, December 23, 2012

Home from our Amazon River vacation - here are some pictures

I took a ton of hi-def video and pictures. Here is a Google+ photo album of a few of the pictures (small representative sample)

I have a Canon T2i camera with a nice 24-105mm L-lens. I mostly take hi-def video hand held. If we were in the same place enjoying a glass of wine together I would show you the hi-def video, but the pictures in the linked photo album are OK as a representation of the experiences Carol and I had.

Sunday, December 16, 2012

Problem fixed with Holland America: they offered a nice refund

Note: update: Holland America gave us a fair refund - I withdraw my complaints listed on this blog article

My wife and I have been on 15 cruises and the service provided by Holland America on the 23 day cruise we are on right now is so much worse than the other 14 cruises we have been on that I feel motivated to write up our experiences.

Note: our cruise was up the Amazon River and we did have some memorable experiences which I will blog about in the next week or so and provide links to some of our pictures and videos.

In order of "worse things first":

  • We booked a tour to Santarem (large industrial city) and Alter do Chao (a pretty little town on the water with amazing beaches). The tour guide was from Santarem and spent all 4 3/4 hours of the tour in her home town and blew off taking us to the scheduled stop in Alter do Chao. She did give us lots of unwanted shopping experiences, and wasted time stopping the bus by a new highway project and going into lots of detail about that. Many other cases where she was just killing time. She did have the driver stop on a road for one minute above Alter do Chao so we could catch a glimpse of the beautiful town that we missed. I formally asked Holland America for a partial tour refund but I received a negative response from them to my written request: no partial refund.
  • Our toilet did not work for over seven hours. This was not quite a ship wide occurrence since we talked to a few people who were not affected. Just hearsay, but we heard people talking of having their stateroom toilets out of order from a few hours to two days. When I first asked the front desk about this I was told it was a ship wide occurence and to be patient. After about 6 hours I asked again and was told that our toilet might be fixed that day. I got fed up, went back and told the lady at the front desk that this was a health violation and guess what: an engineer came and fixed our toilet within about 20 minutes. Sometimes complaining helps.
  • We booked an expensive 7 hour small boat tour and because of shallow water could not get to our destination. We were warned about this by the tour office the night before the tour and we decided to go anyway, so that was our own fault, but the tour should probably just have been cancelled.
  • We did not have any hot water in our stateroom for several days.
  • The ship had been in dry dock until the morning of the cruise and the exterior was filthy. The port side of the promenade deck was not fully reconstructed and was in particularly bad shape. However, within about 24 hours everything was cleaned up, so not such a big deal.
  • A nit pick: sometimes there were just paper napkins in the formal dining room, and they were not very good paper napkins.
Those were our own experiences. While drinking and having dinner with other passengers, we heard their complaints also; for example:
  • People's stateroom air-conditioning was not working, often for days. One couple took their pillows and sheets up to a public bar area and slept there because the bar had working air conditioning.
  • Complaints about the dirty state of the ship, toilets, and hot water issues.
One couple who we often met for drinks during happy hour are long time Holland America customers who have logged almost 300 days with this cruise line. They made it very clear that they will not be traveling again with Holland America. Another friend I made on board ship is also a long time customer and explained that this situation being caused by Holland America being bought by a larger company and they still charge a very high premium price for non-premium service.

I would like to say that we have had excellent service by our stateroom stewards and the food waiters. Also the food has been very good.