Archive for the ‘General’ Category

Friday, July 4th, 2008

John Gruber finds a great example of iPhone UI design. Sometimes you
have to wonder what goes through people’s heads.

http://www.flickr.com/photos/gruber/2635257578/

Filed under General | No Comments »

Thursday, July 3rd, 2008

Maybe it’s just me but I think Microsoft’s branding is awful. “Equipt”
means you are getting two unrelated products with names totally unlike
the one on the box you are actually buying.

Wednesday, April 16th, 2008

I recently went on holiday. To Spain. It was good.

Apart from it took me about four days to switch out of work mode. Constantly worrying about checking my mail. Has Basecamp been updated? What’s happening on Twitter? Given that I was only away for seven days, four days in work mode was not the best.

I made up my mind to try and keep things under control from now on. After a day of work, switch off. No reading blog entries, no checking emails, no tweets. Do something else, talk to a person who is physically present, watch the TV (OK, maybe that’s pushing it), play the guitar, get mauled by the cat. Just stop thinking about work!

Then, on my return, I was faced with the prospect of opening my FeedReader.

I remembered how my heart would sink when, opening it on a morning would reveal a red badge with a three digit number in it. “500 unread articles? I’ve only been asleep for six hours. It will take me that long to plough through those articles!” Imagine the unread count after being away for a week

I didn’t want to go back there.

So I made the choice not to open it. Ever.

Two weeks in and I don’t miss it.

I’ve got podcasts for the car through iTunes (yeah yeah, a glorified feed reader, but with six or seven “unread” items, not thousands).

I’ve got Northpack.

I’ve got the Geekup mailing list.

And I’ve got Twitter.

Thank buggery for Twitter.

People are always posting links in their tweets. I don’t have to read them. I use Twitterific, so it pops up on-screen for a couple of seconds. If I miss it, I miss it. If I see it I can choose to look at the link or ignore it. Decision made in less than five seconds.

No stress about the stuff I’ve not yet looked at. No stress about the stuff I’ve missed. In fact, no stress at all.

That’s how I’ve been dealing with the overload. How do you manage it?

Thursday, March 20th, 2008

A while back, I wrote a post moaning about RSpec.

My basic point was that there is something that feels wrong about it, and at the time, I couldn’t put my finger on it.

Now I have been using RSpec solidly for a week, on a new project, I think I have it. It’s the syntax.

Everytime I start writing expectations I put my spaces and underscores in the wrong place.

@person.name.should_not be_blank versus @person.name.should not_be blank. The latter is what my fingers think it should be.

I understand that be_XXX is a particular RSpec construct. And should or should_not marks an expectation.

But somewhere in there, the word breaks feel arbitrary and wrong.

In RSpec’s defence, however, there is one advantage that puts it way ahead of Test::Unit.

You see, because of the above, I find RSpec hard to write. I keep getting bits wrong and having to retype lines.

However, when looking back through some Test::Unit code I had written for another project, I came across RSpec’s real advantage. Test::Unit is easy to write but practically impossible to read. I had no idea what was going on, and if a seemingly trivial change caused a cascade of errors, it took ages to root out the problem.

But RSpec is easy to read.

it "should not have a blank name" do
  @person.name = ''
  @person.should_not be_valid
end

And, ultimately, that means RSpec wins.

Filed under General | 3 Comments »

Tuesday, March 18th, 2008

It may seem stupid, given that 3hv has one employee, but I have just created my Organisation Chart.

3hv Organisation Chart

Why?

Well how else can I swan about on a golf course like a real corporate executive? You’re not no-one until you’ve got an Org Chart.

Well, actually, there is a real reason for it. And it’s nothing to do with golf (thank goodness).

You see, this Organisation Chart isn’t about heirarchy or reports or line management. Instead it’s about communication. Who needs to communicate with whom. And as I grow my team it’s important to have an understanding of who does what and who they need to support them. I’ve already started outsourcing some of the bits I’m not too keen on (more on this another day) and if I really want to do a Ferris then I need to know what’s going on before it gets out of control.

Even this simple chart has shown me stuff that I like to do (grey) and stuff I’m not interested in (white). With the light grey development box being something I like to do but will have to (somehow) hand over - it’s the core of my business so I need to keep my hand in, but it’s also the single biggest bottleneck.

It’s also brought about some surprises. Who would have thought I would want to do QA? There’s a story to that - and that will probably be coming soon as well. As for marketing, I know very little, but I’m going to find out.

So why not give it a go? See which of the many functions you perform within your business; then decide which you like and which you would do well to get rid of.

Friday, March 14th, 2008

Over the years I have had a number of Macs (I was late to actually own a Mac - my first one ran OS9, despite having been a Mac user for many years before that).

I’ve already talked about my heavy heart as I freecycled my iMac (G3, 500Mhz).

But last night, my 12″ Powerbook G4 died. It had been my workhorse machine for four and a half years, spending the last six months in retirement as my daughter’s DVD/Youtube/iPlayer box. She woke it from sleep, it clicked, clicked, died. Repeat. Click, click, died.

The reason it was retired was because it was bruised and battered to fuck. Four and a half years of being lugged about, every single day, to and from work, to and from clients, upstairs, downstairs, all over the shop. The combo-drive didn’t work. The hard drive had been replaced once, as had the (removable) memory chip. The clasp was nearly unusable as the metal was buckled around it.

It was replaced late last year by a shiny (refurb) Macbook Pro. An Intel dual-core 2.3Ghz job. Appearance-wise, not too disimilar (although this was a 15″, not 12″). Spec-wise, it beats the pants off the Powerbook (1Ghz G4). Rails tests took seconds instead of minutes to run on large applications. Nothing seemed to beachball. Multi-touch scrolling on the trackpad is fantastic (and something I really miss when I use other computers).

But (and it’s a big but) - the Macbook Pro does not feel anywhere near as nice. I don’t know exactly what it is.

The Powerbook was personal, intimate - it was mine. The MBP is just another, expensive, computer.

The Macbook Pro has no soul. The Powerbook had bags of it.

Sunday, October 21st, 2007

http://microisvjournal.wordpress.com/2007/10/21/developing-linkbait-for-a-non-technical-audience/

The general idea is to so overwhelm my visitor with abundance that they think “Wow, I can’t possibly take it all in right now, but I’m going to remember this place because its sure to come in handy later!”

I really hope this works for him because, firstly, it’s a genius idea and, secondly, he has a great blog.

Filed under General | No Comments »

Tuesday, July 10th, 2007

No posts in a while … there’s a reason for that (very exciting for me, maybe not so much for you, dear reader) - I’ll be telling you my news soon enough.

In the meantime, many thanks to the good folks at the North West Ruby User Group mailing list (I don’t live in the North West but it certainly seems to be a hotbed of Rails action) for helping me out with this one.

It started simply enough. Another day, another controller another functional test.

fixtures :thingies, :wotsits

def setup  super  @thingy = thingies :my_thingyend

def test_something  get :something  assert_response :success  assert_equal @thingy.name, assigns(:page_title)  assert_equal @thingy, assigns(:thingy)end

Open Terminal, type ruby test/functional/thingy_controller_test.rb. Runs fine. All tests pass.

Happy developer.

A bit later, just before committing my changes, type rake test:functionals. Fails. No such method on nil. Nil? Nil? Where does nil come from?

Try running the test on its own? Works fine. Try it in rake? Fails.

I then edited it and added some puts statements in each test and in the setup method. Ran the test on its own - all my text appears as expected. Ran rake - all my text appears except the text from setup. So setup is not being called? But why?

Well, I never found out why but the NWRUG members pinpointed the problem. It was the call to super in setup - apparently there is no method in the super-class and under certain circumstances it never seems to return from this call to the non-existent method. Remove the super and everything runs fine.

Still no explanation as to why it works one way and not the other but at least it works.

Filed under General | No Comments »

Thursday, July 5th, 2007

I came across Ed Bott’s column reading an article about how his Steveness is going to rule the world by selling Mac OSX and Windows side-by-side.

And then I stumbled upon his article about how his brand-new (OK, to be fair, refurbed) computer broke shortly after installation. As part of a BIOS update. I don’t know about you but I wouldn’t care whose fault it was … if I had shelled out several hundred dollars on a new piece of kit I would expect it to work - not break within 24 hours.

Filed under General | No Comments »

Thursday, July 5th, 2007

Apple is the new Microsoft. iTunes is the new Word.

Filed under General | No Comments »