|« November 2002||January 2003 »|
I'm Ryan Lowe, a Software Engineering graduate living in Ottawa, Canada. I like agile software development and Ruby on Rails.
I write this blog in Canadian English and don't use a spell checker. Typos happen.
» Full-time Ruby on Rails freelancer
» Full-time with Rails since May 2005
» Former committer for RadRails (now Aptana)
» I also have a few Rails side-projects in development:
1. wheretogoinTO.com Toronto nightlife
2. Hey Heads Up! TODO list and sharing
3. Layered Genealogy family history research
4. foos for foosball scoring
5. fanconcert for music fans (on hold)
Hiring Rails developers? I can telecommute by the hour from Ottawa, Canada
»» Email: rails AT ryanlowe DOT ca
Now hosted on Hey! Heads Up -- check it out!
Derek Lowe's (Ryan's older brother) words at Ryan's funeral
firstname.lastname@example.org no more
Forging Email Headers: Good, Bad or Ugly?
Sarcastic Dictionary (Part 1 of Many)
Twisting Rails is Risky Business
Risky Business? My Take on Early Alphas
Whoa, it's August 2007
A Postscript to "Growth at the grassroots"
»» All Blog Posts
David Heinemeier Hansson
James Duncan Davidson
Signal vs. Noise
Amy Hoy: (24)slash7
Luis de la Rosa
# Modern Platforms
Here are a few things I'd like from a modern development platform:
1. Everything is Automatically Testable
Test scripts exercise the software in a predictable way, to automatically detect code regressions. Must also be able to detect UI regressions. Defects are reproduced in script and henceforth are verified as fixed as part of the test suite. If a known defect reappears, the test fails. These types of end-user tests are called acceptance/customer/functional tests.
2. Quick Defect Turnaround
New defects are immediately reported to the development team. If the software detects an error it automatically sends the report (and script). Otherwise the user may choose to send a log of their past actions (also in script) to be verified as a defect by the team.
Far too much time is spent stabilizing software. The same problems appear and reappear, wasting time. Rather than having a destabilization and stabilization period in the development cycle, we need to be mostly stable all of the time.
The only way to do this is to constantly barrage the software with testing. Automatic testing methods are the only way this is practical, quick and inexpensive. So methods for all types of automatic testing must be built into the platform itself, especially in the GUI. Anything that may be done manually in software must be able to be done in a test script that can be used for regression purposes.
These feauteres would dramatically improve software quality and development speed. The only question is who will be the first to do it?
# How to Get a Virus
Here are a few simple steps you can take to effectively get a computer virus. Not all steps are necessary.
Step 1 - Use a Popular Email Client and Operating System
Forget web mail like Hotmail. Use a mainstream email client and operating system like Outlook and Windows like everyone else does. Then you get everyone else's Outlook viruses, especially the viruses that automatically mass mail to everyone in your address book. Those are the best ones and they spread the joy of viruses even faster.
Step 2 - Open Every Email Attachment You Get
Viruses aren't just for EXE files any more. Open every email attachment you can get your grubby little hands on. Those Macromedia Flash games are good little virus carriers and you can have fun at the same time! w000!
Step 3 - Blindly Trust Virus Scanning Software
Don't worry if you have anti-virus software installed, even if it is updated regularly by some crazy person that doesn't want a virus (what's with those people?) or automatically by services like Microsoft Hotmail. Old viruses are boring anyway. New viruses take weeks or months to be properly detected and repaired by anti-virus software so you don't have to worry at all.
... and finally, if all else fails ...
Step 4 - Make Your Own Virus
If you followed Step 1 and you use Outlook, through the magic of Visual Basic for Applications you can easily create your own virus. There are plenty of resources on the Internet and you can improve your programming skills at the same time! Truly Amazing!
Added 1:34am ...
Step 5 - Don't Worry
A lot of people use email every day and yet they don't know anything about email. Not educating yourself about the technology you use is probably the best way to use it improperly or unsafely. Blindly trust the email fairy and you will get fantastic viruses!!
# Mass Windage
Ahh, the sweet sound of nothing. There's a huge difference in noise level between the iBook and my AMD box, aka "the wind tunnel". I might actually be able to hear myself think when I'm in the same room as the computer I'm using. How scary is that ...?
... although the sound of a gerbil scurrying may be distracting. There, I beat you to it. :P
# In Rotation
It's been a while. Here's what's in rotation ...
# Wow, nothing
Ok, I've got nuthin. Just been playing with the new machine the last few days and I don't want to bore you with those mundane details. Pretty much it's:
1. Wonder how something is done.
Rinse and repeat.
Xmas will probably be slow around here, as I'll be moving around visiting the family, etc. More content in the new year ...
Oh Mac Goodness! I can't believe I just did that ... I must be insane. AND I PAYED CASH. ACK. Help me, I've lost it.
# Mac Fanac
Ok, the iBook investigation is proceeding .... slowly. Went to BMac on Merivale this weekend to check out the floor model and Galen gave us a great demo, answered a lot of questions. I don't keep up with the Mac scene, but computers are computers.
He suggested I might want to wait until a G4 iBook comes out in six months - maybe. I don't think I can, or want to, wait that long. If I don't get an iBook now, I'll get an IBM notebook ... ahh, decisions decisions.
I think I do need a change though. Wintel is boring me.
# Another Trek
I think the TNG clan could do just about anything and I'd think it was interesting to watch. When you watch a series that much you become connected with the characters on such a high level.
But the new movie was pretty good. Some parts were ridiculous, some concepts were off the wall and the ending was shocking and got me half teary-eyed. HALF. heh.
I give it 7/10. See it in the theatres, the special effects will look better.
Why do we cling to the desktop paradigm? What is it about windows, widgets, textboxes and icons that float our boats? Honestly, I have no idea. It's almost as if all of those UI critics out there bitching about software usability never said to themselves "why is a window on a desktop? That makes no sense whatsoever." Maybe it's a figurative window onto your data. Whoa, that's deep.
Throw the window out .... of well, itself. Let's start with a completely blank slate and see what we come up with.
# (software == complicated)
Joel is right, software is too complicated. But it is for a reason. Software is complicated because customers demand it. Each one has their own set of unique requirements which lead developers to use different tools, languages and APIs in completely different ways with different priorities.
# Crazy Stylin
My mangled site.
# That's SE, Not IT!
Why is it every time I try to help someone with their computer and I can't figure it out I get grief? "Aren't you supposed to be a computer expert?" "Isn't this what you're going to school for?". In fact, no it's not.
I have nothing against the IT profession, but figuring out some company's terrible software and making it work nicely with other terrible software doesn't exactly mesh with my personality. I'd rather pump out more terrible software myself. ;)
Now THAT I can do.
# Abandoned what?
This is too cool.
# Bye Bye CDNOW
CDNow is no more. It is part of the Amazon.com megastore and the old interface and information is gone. This is a shame, because it was such a great site (even though I admit I never bought anything from them). Where am I going to get my album info from now? :)
Wow, this happened today.
# Wireless on the Way
A little momentum behind broadband wireless. Too bad Canada doesn't have the population density to make this practical any time soon. Of course, that's what they said about cell phones ....
Maybe it's just me, or Apple is getting more press lately. Is it a coincidence that people are inundated with products in December?
It doesn't matter - I'm sold. I'm getting one. Now the only question is "when?" ... pre or post-Xmas craziness? My view is that the price can only go down, and there's certainly no rush. Just anticipation. :)
# Martin Fowler Interview
Artima has a very interesting interview with Martin Fowler in six parts:
Part I: Refactoring with Martin Fowler
A good quote from Part V:
"One test I've come up with since the Refactoring book is asking if there is any line of code that you could comment out and the tests wouldn't fail? If so, you are either missing a test or you've got an unnecessary line of code."
Also, some Slashdot comments on the interview.
# Make Something Useful
Making something useful to customers will make you money. Seems obvious, but maybe not during the high-tech "bubble".