Jose Sandoval Google
 Resume     Book     Software     Drawings     Home     Subscribe to RSS feed Search Web Search

Now he belongs to the ages
Thursday, October 27, 2005

O Captain! My Captain! our fearful trip is done;
The ship has weather'd every rack, the prize we sought is won;
The port is near, the bells I hear, the people all exulting,
While follow eyes the steady keel, the vessel grim and daring:

But O heart! heart! heart!
O the bleeding drops of red,
Where on the deck my Captain lies,
Fallen cold and dead.

O Captain! My Captain! rise up and hear the bells;
Rise up-for you the flag is flung-for you the bugle trills;
For you bouquets and ribbon'd wreaths-for you the shores a-crowding;
For you they call, the swaying mass, their eager faces turning:

Here Captain! dear father!
This arm beneath your head;
It is some dream that on the deck,
You've fallen cold and dead.

My Captain does not answer, his lips are pale and still;
My father does not feel my arm, he has no pulse or will;
The ship is anchor'd safe and sound, its voyage closed and done;
From fearful trip the victor ship comes in with object won:

Exult, O shores, and ring, O bells!
But I with mournful tread,
Walk the deck my Captain lies,
Fallen cold and dead.

Walt Whitman

8:16 AM | 1 comment(s) |

We want order
Friday, October 21, 2005

Even at a young age, we try to order things to our liking.

Gabriel, my son, is the typical 5 year old: He plays XBox video games (Shrek, SharkTail, Sonic); He plays with imaginary friends; He surfs kids web sites; He doesn't know how to read yet, but he knows the alphabet; He knows how to count up to a 100; He knows how to write his name, however, the letters are backwards. I.e. They are in the right order, but they are mirror images of the correct letters; Basically, his a normal kid.

He's started asking the hard questions in life: "Dad, why do I have to wear underwear?" I couldn't explain it to him. I know it's a social convention, but beyond that I really don't know why.

He is also trying to put order where I thought there was none.

Yesterday, we were reading his bed time story "I Know a Rhyno." In this particular book, a little girl encounters eight animals throughout the story. In the last page she's fallen asleep with all her stuffed animals around her bed. Gabriel likes to count things, so he started counting the animals.

After counting four animals, I noticed that he had to go back to the middle of the book - He kept looking for something.

I realized then that Gabriel was counting the animals in the same order that we had encountered them while reading. He was going back to page where he saw the animal and he needed to corroborate the next animal in the "sequence."

Why did he do that? My only guess is that he's at the age when he's starting to have control over certain things. I.e. He controls what he wears to school; He controls what shoes to put on; He controls which game he wants to play; He can also control a bit of our reading time, as he's in charged of picking the books to be read. He likes "zilly bookz," as he calls them.

In general, I don't think we (humans) are used to look for "out of the ordinary" patterns in our daily life.

We tend do most things subscontiously. For example, I put my socks in exactly the same order everyday: left first and then right; The last thing I do before going to bed, is brush my teeth; etc. We seem to grow patterns into habits that help us make sense of our world.

I personally like a bit order in my daily goings (My GF may disagree on this one: I can't convince her that it is chaotic order), but I also like my days to be different.

I wonder what kind of patterns we would find in our surroundings, or realize we follow, if we paid more attention.

8:33 AM | 0 comment(s) |

Turn on JavaScript debugging
Thursday, October 20, 2005

Lately, I've been seeing quite a few JavaScript errors on a great number of web sites. One reason, is that we figured out to make HTML pages do all sort of tricks with the aid of JavaScript.

However, more code means more opportunities to introduce bugs in the end product.

So, if you are a developer using JavaScript, you should always turn on the "Disable Script Debug" (or similar) check box in your browser settings. I.e. You will always know if your perfect HTML/JavaScript code is actually perfect.

By default, script debugging is turned off. As an end user you want to see the information you have clicked for, so having debugging capabilities turned off allows you to see the web page without missing much. I mean, once you've seen a fading effect, you've seen them all (They all look the same and they're annoying).

I'm guessing that some developers turn this off (I some times do) because it gets frustrating to click the "Ok" button in order to get rid of the little grey critters.

I've seen JavaScript errors in high profile web sites: Some News web sites seem to have them quite often; I've even seen a few errors on google's search result pages - And they're the masters of JavaScript - Have you seen the stuff they do with google maps?; IBM's ecommerce site can't get rid of them - Everytime I go price laptops (I never buy them), I encounter those JavaScript errors.

So, if you are a developer, turn on the JavaScript debugging capabilities in your browser. As an end user, I expect perfection in every page I visit. I should get the experience I'm paying for :)

12:54 AM | 0 comment(s) |

Wednesday, October 19, 2005

An inteview with THE SMARTEST MAN ALIVE:
    Far too few people know about the existence of THE SMARTEST MAN ALIVE, and still fewer have elected to benefit from his wisdom. THE SMARTEST MAN ALIVE lives in a book-filled ivory tower, deep below the surface of the earth. He permits only select visitors, but I have been lucky enough to be on his guest list. After negotiations and a hefty cash settlement, he has agreed to let me spread his powerful wisdom. If you have a question that's been nagging you, please feel free to send it in, and I'll ask him for you and put it on the website, provided that the answer is somehow funny. E-mail me at today - or whenever you think of a clever question. In the meantime, take a gander at my previous chit-chat with THE SMARTEST MAN ALIVE, so you can see for yourself just how smarty his pants really are.

8:30 AM | 0 comment(s) |

Ten thousand meters later
Sunday, October 16, 2005

When I grabbed the last cup with water in the watering station, my stop watch read 00:30:23. I realized I was at the 5K mark. I thought to myself that if I kept the same pace, I could finish the race under 1 hour.

I didn't break the 1 hour mark. Today though, was my best time so far in a 10K race.

My official time: 01:01:00 (1 hour 1 minute - Look for number 480 in the "Overall Placement" column).

I averaged around 6 minutes per kilometer. Although, I did the last two kilometers in 11 minutes. I.e. At the 8K mark I was at around 50 minutes - I pushed for that under one hour 10K run with the help of a personal trainer I befriended about 6 kilometers into the race - Thanks Roberta from Personal Edge Training. Roberta, aside from being great with people, is also the co-founder of the company.

In past runs, I've had to slow down due to a nagging shin splint problem. This time around, I felt well throughout the race. I had good rhythm, no pain anywhere, and the weather was cool enough to avoid extreme perspiration.

Overall, I think I can actually push harder and make up a few seconds per kilometer in order to finish under 1 hour. However, I'm not experienced enough to properly ration my energy consumption, yet. Either I run too fast, burning all my oxygen quickly, or I run too slow, ending up with left over energy.

How have I been training this summer? I've done a few 10Ks races before: a couple of Terry Fox runs (I still question if the Waterloo course is 10 kilometers - I measured it unofficially and it was 8.5K - I could be wrong, though), and the RunTO in 2003, which I finished in 1:10:00 (1 hour and ten minutes). My training was a bit erratic. I.e. I'd run a couple of times a week for 25 minutes at my fastest pace (Which was very slow).

This summer I wanted to train for time, rather than distance. I mean, I know I can run 10 kilometers non stop, but the question is now, if can I run 10K under one hour.

I did some research on the subject of running and proper training and I found out that in order to run faster I needed to get some speed work in my training. My typical training week went as follows:
    Sunday: LSD (Long Slow Distance) - I maxed out at 1 hour and 20 minutes - That's around 9 to 10 kilometers at a very slow pace.

    Monday: 20 minutes slow recovery run - I average around 3 kilometers each time.

    Tuesday: weight training - I do 30 to 45 minutes of weight lifting. I do something called HIT (High Intensity Training) - It involves 1 set of major muscle building exercises with the heaviest weight you can handle.

    My typical work out:
      Squats: 1 x 230 lb for 12 reps (That's 4 x 45 lb disks + 2 x 25 lb disks + 45 bar)

      Pull Over: 1 x 100 lb for 12 reps (One 100 lb dumbbell - I could go heavier, but my gym only has 100 lb dumbbells). In case the benches are busy, I do 175 lb with a Nautilus machine

      Wide grip chin up: 1 x body weight for 10 reps

      Dips: 1 x body weight + 45 lb disk for 10 reps

      Barbell curl: 1 x 50 lb for 10 reps (2 x 25 lb disk + 45 lb bar)

      Shrugs: 1 x 230 lb for 20 reps - Depending on the mood, I do 6 x 45 lb plates. I.e. 3 on each side for 10 reps

      Straight leg dead lift: 1 x 90 lb for 10 reps (Go easy on the back with this one)

    Wednesday: speed work - I switch between fartleks and interval training every other week.
      - Start with 10 minutes easy run
      - Run fastest speed I can maintain for 4 minutes (Usually 85% of my max heart rate)
      - Run recovery run for 1 minute
      - Repeat 4 to 5 times
      - End workout with 10 minutes easy run

      Interval training (On a track):
      - Start with 10 minutes easy run
      - Stretch for 5 minutes
      - Repeat four times: 200 meters at max speed, then walk for 200 meters
      - After the 4 x 200 m at max speed, repeat 6 times: 300 meters at max speed, then walk 300 meters
      - After the 6 x 300 m at max speed, repeat 4 times: 200 meters at max speed, then walk 200 meters
      - End with 10 minutes easy run

    Thursday: Rest

    Friday: 4 to 5 kilometers of moderately fast running. I.e. 5K in 30 minutes or 4 km in 30 minutes - It depends how I feel

    Saturday: Rest

    I then repeat the cycle, starting again with Sunday...
I've been able to avoid injury with this training schedule. It isn't as intense as I've seen around, but it has worked for me.

If you like to try my 10K training schedule, I wouldn't recommend it you try it cold turkey, if you are just starting. I'd say, you build up a bit of running (a few weeks at least) before trying the speed work - Those workouts are pretty intense (At least for me).

Note, that you can adjust things here and there: Add more running days; Or add some cross training either by swimming or biking on rest days; etc. Be careful not to over train: The best training advice you can get (and I can give) is to listen to your body. If it hurts, stop; if you feel too tired to go out running, chances are you are too tired. And of course, consult with your Dr. before starting any strenuous type of activity.

You can also add some hill work in your training week. I didn't do any hill work this summer, as I was trying to avoid overtraining and I've also been recovering from a nasty ankle injury. I tore the tendons of my left ankle (the inside part - A very rare injury) playing soccer. Running actually hurt a bit, but nothing too serious to have stopped me from the running sessions. I'm a bit stubborn (and perhaps a bit idiotic) by believing in the old mantra: "no pain, no gain."

Is running worth it? Running is a useless endeavor - We have cars and public transportation, now a days. I.e. No need to run anywhere. I do it only because I'm hooked on it. After a very long run (or hard work out), you get this endorphin high that you can't get doing anything else.

Whatever everyone else says about keeping active for a healthier life, may not even be true. But don't listen to me, I'm not a trained physician nor a running shoe maker (Which are the ones most interested in the general population to be running around) nor a governamental health department trying to save money in the future.

What's next for me? I'd like to build up my endurance to run a full marathon next year (more realistically, two years from now).

I'll try to keep running during the Winter season in order to be ready for a half marathon next year (That's 22 kilometers). I've ran in the Winter before, but I don't like it too much: my lungs contract and I find it hard to breathe; I also, don't have the nifty and sexy long legged spandex pants; And the slush from all that melting snow, doesn't help either.

Why do I keep running, if I think it's such a useless activity? Simply, because I can. You should try it, too.

11:52 AM | 0 comment(s) |

Connect back end to front end
Monday, October 10, 2005

I've never been able to explain to my mom what it is I do professionally. I actually stopped trying after the first co-op job I held at Hewlett-Packard (Then called Hewlett-Packard, Panacom Division).

It wasn't always hard to explain - In my last year of high school, I was a dishwasher. As my title said, I washed dishes. I.e. People ate at the local Red Lobster restaurant and used plates while eating and I, as the dishwasher, cleaned them by the process of washing them: I used a little water, some soap, and voila, a clean dish.

As time ran its course, my professional activities got a bit more complicated to explain in one sentence.

However, if you do something similar to what I do and I give you the elevator pitch, you'd understand right away when I say "I implement new functionality for a FIX engine"; or "I helped port (for the Bank of Montreal) a Tango application to a J2EE architecture implementing the MVC pattern using Struts"; or "I contracted at CIBC developing the back end infrastructure of a Brio Datawarehousing application using Java (J2EE and J2SE) and Brio APIs."

I used to be the guy at chic parties explaining what I do for a living. In between the caviar scooping and the martini drinking, most people glazed over and some were polite enough to node affirmatively and kept asking for more details.

I now don't like to talk about it too much and say "I do computer stuff." To which answer you can get various type of responses - The most common ones I get are as follows:
  1. "Ah, You are programmer."

    I cringe to hear that - I do program, but I'm not a "programmer." But, I node, smile and say "Yes, I am a programmer." Inside of course, I keep wondering what's taking so long to get my Manhattan made and I also keep counting in my head the many specifications I've written and the few systems I've architected, etc., etc.

  2. "Ah, you work with computers - I have this problem with my computer. How do I fix...?"

    To which, I say: "I heard about your problem, but I do the other type of computer stuff." I think its polite and vague enough to continue on with the more interesting topics: how about those Brazilians in the qualifying rounds for the World Cup?
Mind you that I don't like to talk about what I do, not because I'm not proud of my chosen field, because I am, but I don't like to bore people anymore: It's my gift to society.

    And speaking of society, we are a society of specialization - At some point, each of us will be so specialized that we will know nothing about anything outside of our field. More or less, like the PhD joke: they eventually know so much about one thing, that they will end up knowing nothing about anything else :)
So, what am I working on now? For this one time, I can actually explain it with a picture: if you look at the red squares in the image below (taken from, that is exactly what I'm currently working on:

The more elaborate answer:
  1. There is some client that is used to place orders in this massive world wide network of computers - I haven't changed much in this application, but I've used it to do some testing of a few changes that I made in #2.

  2. FIXConnector is a C++ application that serves as a bridge between a FIX Engine and the yellow cloud called "SWIFTNet Link." This is an existing application that our team is now encharged of updating and fixing.

    This past week, a colleague of mine and I had to figure out a way to test some new functionality that was added by someone else. For obvious reasons, I can't go into details, but suffice to say that it was a change that modified some communication stuff between the yellow cloud and the blue boxes - Extremely interesting stuff.

  3. SWIFTNet FIX Hub, is a complex application that does a lot of things. Among them, handling messages that implement the FIX Protocol - In this application, I actually made a few changes to all the FIX protocol versions (4.0, 4.1, 4.2, 4.3, and 4.4)
Anyway, if your mom or grandma asked you about your daily work, how would you explain to her what do you for a living? Considering that your job title didn't exist 10 years ago. Or that your industry hasn't been around for more than 3 years or so (I.e. Wi-Fi or VoIP anyone?).

11:54 PM | 0 comment(s) |

This page is powered by Blogger. Isn't yours?

© Jose Sandoval 2004-2009