TD CanadaTrust sucks

In case I haven’t mentioned it before, I despise banks and their bureaucracy. I withdrew £200 before my recent trip to London and ended up not spending any of it. I’m sitting in the branch today and they are telling me that they are unable to accept my request to deposit the funds back into my account because half of the bills they issued me a month ago are out of circulation.

Are you f*cking kidding me, TD??? #facepalm #epicfail #tdsucks #bankssuck

Posted in Uncategorized | Leave a comment

Frameworks and code simplification

Recently, I was tasked with the job of porting a PHP application over to an environment without any previous PHP installation.  How hard could it be, right?  Set up the Web root for the application files and install all the prerequisites – piece of cake!

Not so much as it turned out.  Because the old environment was running in a pure LAMP setup and the target environment was Windows, SQL Server, and IIS, virtually nothing worked and there of course were no easy replacements for the required frameworks and drivers.

So instead, I took it upon myself to rewrite the app using ColdFusion, our application server of choice.  Since the front-end was not going to change, I was able to reuse the existing HTML (minus embedded PHP code), CSS, and JS files pretty much as they were.  Only the PHP code remained.  The original vendor had used the CodeIgniter and PHP ActiveRecord frameworks to code the app yet all the data that was brought in from the database was done so at first request and then ran in the user’s browser memory.  Why then, use an ORM such as ActiveRecord?  A read-once and never-write use certainly wasn’t made any easier by using the framework.  Perhaps the vendor simply was what Joel Spolsky refers to as an “Architecture Astronaut”, always using technologies like these even when they aren’t really required.  As for CodeIgniter, all I could figure out (being a non-PHP programmer) was that it took one page of code and turned it into twenty for no good reason.

Slowly I worked my way through the desired logic and recoded the back-end services in ColdFusion and what I ended up with was shocking.

The PHP and framework code that was delivered to me totalled 416 files, 99 folders, and 12.2MB of space.

What I wrote, no frameworks used (or required really), fully duplicating the functionality of the old app, amounted to 12 files, 2 folders, and a stunning 72KB(!!) of space.

Somehow, all those frameworks made a simple site incredibly complicated and I’m certain they didn’t make the developer’s lives much easier.  Given the time it took the vendor to deliver the site in the first place, it certainly didn’t make them any faster.

I’m sure there’s a time and place for pre-written frameworks and design patterns that have abstracted reality to the n-th degree, but sometimes you just have to write some code (shoot from the hip coding as it were) because that’s all that’s required.  And the space and time savings can’t be ignored either.  Also, because I didn’t have to install PHP and countless other dependencies on my servers, the administration of those machines has been kept simpler and therefore more secure.

Sometimes I wonder if the big minds of programming over the years, giving us OOP and then ORM’s and design patterns, abstracted things to such a degree, they forgot what the original goal was (write a bunch of code that solves a problem for a business) and got caught up in their own cleverness.  There are times I just shake my head and what I’m hearing or reading and wonder who pays these good folks to sit around and think up some of this stuff instead of being, you know, productive!

Here endeth the rant. Anyone who reads this will probably flame me for being an ignorant savage who still uses GOTO’s in their code, but I see myself as someone who uses the right tools for the job.  Maybe I am a dinosaur, but I still solve problems for my customers quickly and I’ve never heard any complaints about my solutions being unmaintainable – except from the Architecture Astronauts of course.

Posted in Uncategorized | Tagged , , , , , | 1 Comment

Finally, another blog entry

It’s been a while since I last blogged and wow, has life changed. Kiran is nearly 14 months old and I can barely remember life before he came along. He’s asleep on my arm as I write this (because he still isn’t sleeping on his own through the night) and is quietly snoring!

I just attended the visitation for Gordon Pape’s wife Shirley who passed away unexpectedly on June 2nd and seeing all the pics of her surrounded by her many grandkids made me wish we had shots like that with Mom and Jordon and Eric. It would obviously have been nice to have Dad and Helen’s late father Paul represented in pictures like that too, but c’est la vie as they say.

Enough rambling for now, I’m totally exhausted after putting in my first full day at work since coming down with shingles on April 28th, playing in my first game of the season on the JHRPS team in the Manulife company league and then going to the funeral home. More later.

Posted in Uncategorized | Leave a comment

Moving in, moving out, and moving on

It’s 11pm on Friday March 30th and I’m waiting for Helen at City Hall. This is her last day at work before the baby comes and she stayed this late to clear out her office. Moving out.

I’ve moved all my essentials in to her place and have a spiffy new Pax wardrobe from IKEA with a chest of drawers insert that holds just about all my clothing. Just have to provision faster Rogers Internet service and cable TV at her place and then I can set up the home network and Apple TV. Moving in.

Baby is doing great and we’re exactly one week away from our due date. We still have to clear a space for the crib, but we’ve got the essentials. In a blink of an eye, the adventure begins! Moving on.

Posted from WordPress for BlackBerry.

Posted in Uncategorized | Leave a comment

Moved in

So, the vast majority of my clothing and my computers are now settled at Helen’s place. We built a chest-of-drawers insert for her IKEA Pax wardrobe yesterday and it hold nearly everything. I will need another drawer and will then resort my stuff more logically, but I can find the important stuff.

Next is to figure out the home networking options and plug in the computers. Their home will likely be the guest bedroom that we’ll adapt to serve both guest bed and home office roles after the dust has settled from the baby’s arrival. Not sure yet how to get a wired connection to the Apple TV but I can live with slower Wi-Fi syncing in the short term.

Posted from WordPress for BlackBerry.

Posted in Uncategorized | Tagged | Leave a comment

Sitting with a cat

Hazel, after peeing all over her mother and then the rug, climbed up on the couch and me and has settled nicely into my lap and fallen asleep. This after we stuck her with a needle for her nightly regimen of subcutaneous fluids to help manage chronic renal failure.

It’s nice to see her curious and active of course, but it was only for a minute or two before slipping back into nap mode. I hope she either fades quickly from this point or miraculously improves so she can meet he baby brother, due in six weeks.

We’ve picked out the car seat and likely the crib and are just settling on a stroller before making those major purchases. After this, its clearing out space for the baby and me as I’m going to try and get my essentials moved in this week while I’m off work.

Posted from WordPress for BlackBerry.

Posted in Uncategorized | Leave a comment

Hello world!

Welcome to WordPress.com. After you read this, you should delete and write your own post, with a new title above. Or hit Add New on the left (of the admin dashboard) to start a fresh post.

Here are some suggestions for your first post.

  1. You can find new ideas for what to blog about by reading the Daily Post.
  2. Add PressThis to your browser. It creates a new blog post for you about any interesting  page you read on the web.
  3. Make some changes to this page, and then hit preview on the right. You can always preview any post or edit it before you share it to the world.
Posted in Uncategorized | Leave a comment