Thursday, February 25, 2016

Play more sports!

PlayCity matches you with nearby people who want to play the same sports you do. We are in beta and we are looking for test users for our iOS app. You will also require an active Facebook account. 
Please email support@wannaplay.ca with your Apple ID if you'd like to be included in our beta group. Thanks!

Friday, November 6, 2015

Stop Writing Bugs

Recently I watched Douglas Crockford's New Developer's Conference 2014 talk. (Is there a more up-to-date version out there?)

It reminded me of something: most of the great programmers I've admired over the years were the ones that seemed obsessed with not writing bugs. Crockford's talk starts with the motivation for JSLint (I run all my JS code through this great tool)... help the world avoid bugs.

It seems like such a basic tenet but many programmers and even more managers/owners don't seem to value this hygiene factor enough.

Many of the other principles I strive to work by are inextricably linked to bug avoidance:

* DRY:  Needless duplication and redundancy increases the chances of writing a bug
* KIS: Simple, elegant designs lead to fewer (or at least easier to find) bugs
* Only build what you need: If you focus on minimum viable products, minimum viable implementations, etc., you are much less likely to add bugs.
* Test oriented/driven development: As a last resort, most of us also need a thorough test harness and coverage to help us avoid writing bugs.

(On a side note, I was inspired by Crockford's talk to try writing some JS without using "this" -- I updated the http://sbrew.com/puzzle page to avoid "this" and use the object creation technique Crockford described).


Wednesday, November 4, 2015

Affordable and improved alternative to deadmanswitch and pingdom

Now in public beta:  wdt.io (Watch Dog Timer) -- a new utility to monitor your systems!

Thursday, March 27, 2014

Tile Puzzle

I just put together a quick HTML5/Canvas example page at sbrew.com/puzzle.  Its purpose is to demonstrate the Canvas and some basic javascript usage including prototypical inheritance.  There are probably a lot of these out there but I tried to keep this one relatively simple and clean.  I'll probably keep tweaking it over the next little while.

Friday, August 10, 2012

Upmarket Akimichi Corp.

A few years ago I wrote a test data generator that included company names.  At the time I remembered the story of Ashton-Tate, which I believe was a made-up name chosen more for its euphonics than any connection to the founders.

The name generator uses up to 3 real words and names and an optional suffix.  Working with the test data, it came up with a remarkable number of amusing, intriguing, and interesting sounding company names.

Perhaps with all the simple one-word company names already taking up the .com namespace, we will see more two-name or three-name companies in the future.

I've translated the generator to javascript and posted it here:  http://sbrew.com/namer.html.

Thursday, July 19, 2012

Rails 4 iOS developers -- new date

New Rails for iOS course announced: Join us for the weekend of September 22-23, 2012 if you want to get a head start on your mobile solution's Ruby on Rails backend! http://rails4ios.com

Friday, May 25, 2012

Rails for iOS developers Course

Need to get a backend quick for your iOS app? A weekend workshop for iPhone and iPad developers to learn Ruby on Rails:
http://wndxlori.github.com/rails4ios/