Helpful error messages

I thought I would start a page (which I expect to update) that records the error messages that have taken me the longest time to figure out and what they turned out to mean.  Obviously if someone else gets the same message it may be for a different reason, but knowledge is never a bad thing.  Anyway, this is mostly for my own benefit as my memory seems to have taken its leave of me sometime in the last decade.

Running a cucumber scenario that depended on javascript I saw the following output:

NoMethodError: undefined method `node_name' for nil:NilClass
./features/step_definitions/web_steps.rb:53:in `/^(?:|I )press "([^"]*)"$/'

Which as any fule no means “You have forgotten the @javascript tag”

The really scary looking

NativeException: org.apache.http.NoHttpResponseException: The target server failed to respond
(druby://127.0.0.1:40607) org/jruby/RubyKernel.java:2071:in `send'
(druby://127.0.0.1:40607) org/jruby/RubyKernel.java:1419:in `loop'
(druby://127.0.0.1:40607) org/jruby/RubyProc.java:268:in `call'
(druby://127.0.0.1:40607) org/jruby/RubyProc.java:232:in `call'
./features/step_definitions/web_steps.rb:53:in `/^(?:|I )press "([^"]*)"$/'

while running a test turns out to mean “When you press that button you get an exception, but I thought I would confuse you with this instead”.

Advertisements
Posted in Uncategorized | Leave a comment

From small beginnings…

Having been fortunate to come into enough money to be able to afford unemployment for a couple of years I decided several months ago to “do” a tech start-up (though a not-for-profit one, which doesn’t really fit the model).  I used to be a developer (several years ago) but the world has moved on, and the number of languages and technologies that I was familiar with that have survived, never mind could still be considered current, could be counted on the fingers of one hand (after a serious chainsaw accident).

My grand idea (which I have still to figure out precisely how to make self-sufficient) is to set up an organisation that encourages and supports the use of open source software and open data in adult social care, particularly in the UK.  The good cause that this not-for-profit enterprise will support (in the event that there are any funds to make donations with) is dancing for the elderly (‘seniors’ if you hail from the US).  In my opinion this is the best way, bang per buck, to defuse the demographic time bomb we hear so much about.  It keeps people mobile, prevents social isolation and generally enhances quality of life.

I decided that my start-up was going to be a Rails site using all the newest of everything, so I could attract developers who liked to do funky things with new tools.  This would mean learning Ruby, Rails, Javascript, Linux, HTML5, CSS3 and a vast number of libraries and tool sets.  All at the same time.  And I have, frankly, struggled.  At times I wonder whether there is any possibility of ever getting even semi competent.  I have invented my own acronym to beat myself up with – “tonce” (too old, not clever enough).  I haven’t yet given up, but there are days when I come quite close.

Aside from a computer, I have spent very little money (apart from a couple of AppSumo deals that looked good enough to buy now and use later, ignoring the nagging voice whispering “YAGNI” in my ear) because almost everything I use is open source.  And because the project I am working on is going to be open source, is a “good cause” and not for profit (decidedly so at the moment!) I was able to get the non open source product I use for free as well (a big thank you to Balsamiq).

This open source stuff is not without its challenges.  I almost gave up on the whole project when trying to install Ruby and Rails – you have to compile your development language?!? on an operating system you only just saw for the first time that evening?  My timing sucked – both Ruby and Rails were at the time of major releases and were particularly unstable.  I believe this process has been considerably simplified (so I had to pull out what little hair I had left and now my competitors get a free ride – grrr!).

Like commercial software, open source can only improve if people know it is broken, so reporting bugs is of tantamount importance.  On more than one occasion I have struggled (sometimes for hours) thinking that I was being stupid, only to eventually come across a posting on some obscure website / blog from someone who had the same problem, eventually figured out it was a bug, blogged about their workaround AND THEN DIDN’T *&^%ING WELL REPORT IT.  Though having said that I can’t think of a single one of the bugs that I have reported that has actually been fixed in a live release yet….

I am though, a firm believer that open source is the future – I just wish that I could either have been there at the beginning, when the walkway was gathering speed, or step on at the end, when everything has stopped changing so quickly.  Jumping on when it is moving at the current speed is quite hard for an old bloke!

So, despite my best intentions to do it all myself I have started employing people (and they are not cheap!).  This has severely cut down the length of time at my disposal to get the project finished, unless I can get some additional funding.  Since the project is in the area of doing good for people I asked some charities about funding, but (while they were very encouraging about my idea and would have loved to help) they don’t have any money.  The UK government has had to cut all kinds of funding because of the irresponsibility of the bankers so charities are having a hard time.

The fact that actual money has started changing hands has focussed the mind very firmly on being lean – initially going back to look at features that seemed absolutely essential when I thought I was going to write them and deciding that the first release can survive without them.  I am about to read the Lean Startup Book, Running Lean and anything else that I can get my hands on that will come up with ideas that will increase the chance of getting the site public.

So for now we have a battle between dwindling funds and paid coders with the unfancied outside chance of me suddenly getting good enough at coding that I can make a difference… Time will tell.

PS If you are a Rails developer with time on their hands who is interested in helping please let me know in the comments.

Posted in Uncategorized | Tagged , , , , | Leave a comment