So I’m back from that silly 4-day trip two Lisbon and Brussels. Kevin and I got up and headed for the airport Friday morning to catch a 7am flight to Lisbon. We showed up and it was pouring rain. I forgot to check the weather forecast the night before. When I was packing, I was two neurons short of voting my left hand to reach for my raincoat and stuff it in my backpack for the trip. The stupid thing is my raincoat is an expensive ultra-lightweight one designed for back-country expeditions and it weights only 200 grams and can packs down to the size of fist.
So we spent the morning in the shopping mall next to our hotel, looking for either a bloody umbrella or cheap raincoat. We finally found I think the only raincoats in the entire mall at the sporting goods store. They were cheap, non-breatheable, and fugly.
Then we went out and walked around on the super-slippery white-tile sidewalks that nearly everything is made with there, and despite our raincoats we still managed to get soaked completely on the lower half.
We wandered for hours down towards the waterfront and back up some of the main touristy streets and couldn’t find a single decent restaurant. We finally gave up, being super hungry and settled for a really dodgy tourist trap. You know, the ones with the big picture menus of unappetizing seafood and the staff that stand out on the street and aggressively try to get you to eat there as you walk by.
The waiters in Lisbon also constantly try to bring out appetizers and drinks to your table that you did not order. If you don’t aggressively wave them off, you’ll find it on your bill. So you spend the entire meal eating expensive bad food and fending off pesky waiters. They don’t care, they have no repeat customers anyways.
The best thing about Lisbon is that the taxis are dirt cheap to hire. I don’t even know how they cover the fuel. We took a taxi to the Expo park area that evening to go see Dave Matthews Band. The taxi cost under 10 Euro. Our comparatively long trip to the Dublin airport cost 40 Euro. Our driver didn’t speak a word of English and we didn’t speak a word of Portuguese outside of obrigado.
The show was good. I won’t really comment beyond that — they are great musicians and a few songs totally had me going, but generally they are way to safe for my tastes. Kevin, who is a huge fan, thought it was the best show he’d seen.
The next day we slept in and the weather was a little sunnier and we took a taxi down to the docks area, where there are a lot of bars and restaurants. Still a little touristy but we had a passable Italian meal and a massive jug of cheap wine. We ended up leaving and passing an Irish pub, and couldn’t resist the irony of stopping for a pint. We sat down on the patio next to some extremely inebriated Irish guys who were in Lisbon on a stag trip. A little later we were joined by some English and Scottish folk and we got along famously. As sad as it was to spend an entire day in Lisbon at an Irish pub, it was good craic. Well after 14 hour session, we finally stumbled to a taxi and got back to the hotel for a three hour power nap and then woke up at 7am to go catch our flight to brussels. I think I was still a little drunk on the plane.
Brussels airport was really big and shiny and clean and new. I liked it. We rode a train into city center and upon stepping out into the street we were inundated with the smell of waffles. The old center is really cool — and we stayed in a cheap 2-star hotel right in the center, next to the Grande Place, a square with fabulous ornate buildings. We caught the tail end of the Jazz festival. We stopped for sushi and then went to Delerium, a bar that has 2004 types of beer available. Belgian beer is really tasty and very strong (close to 10%). In the evening we hopped a tram to the venue for that night’s Dave Matthews show. It was a much smaller theatre, and I enjoyed the show more than the previous Lisbon show which was in a massive stadium.
Monday, we did more wandering and ogling of architecture, ate omelets and waffles for breakfast, and sampled many (many) more belgian beers. Then it was back to the airport and off to Dublin. I rolled into my apartment around 11pm.
Oh, I almost forgot the best part — the hotels in continental Europe have these absolutely lovely little drinking fountains in the washrooms. I guess it’s so you can properly hydrate after a long day of drinking beer:
Tomorrow morning, fellow Tilter Kevin and I are flying to Lisbon. Kevin is a massive fan of Dave Matthews Band, so we’re going to see them play in Lisbon Friday night. We’ll do some sight seeing on the Saturday and then Sunday morning fly to Brussels and see Dave Matthews Band play there as well. Again, Monday we’ll hang out in Brussels and fly back to Dublin that night. Did I mention Kevin saw Dave Matthews Band play last night in Dublin? Yes, he is a big fan. This will be interesting since I can probably hum maybe one of their songs, if that. Anyhoo, looking forward to a whirlwind action packed four day trip. Christine’s sitting this one out as she’s back in Edmonton visiting family and packing up our house.
I have a monster backlog of e-mails I haven’t replied to lately. If you’re one of the poor souls who has been wondering why I never email you back, rest assured I will feel guilty about ignoring them when I get back too. I mean, I hope I’ll find some time to start replying when I get back next week.
A recent genetics article got the mad scientist in me thinking. Chinese scientists have identified one of the mutations in human DNA that causes an important structural difference in the brain between old world monkeys and humans. The mad scientist in me wants to genetically engineer a monkey with this mutation, and as we discover more of these important mutations, continue adding them until we’ve step-by-step engineered a monkey into a pseudo-human.
Okay, totally unethical.
But maybe we can someday gene-hack a Chihuahua into a Bulldog, showing how each small mutation can cause large physiological changes. As much was achieved through selective breeding on a much smaller time-scale than human evolutionary history, so it shouldn’t be too hard.
And then after that, monkey-dogs. Mwuahahahahhaha.
Last weekend Christine, myself, and a co-worker took a trip to Barcelona. The cheap flights with Ryanair drop you in Girona airport — a small airport over an hour from Barcelona, but then there’s a connecting bus into the city center. We arrived late Friday night, around 11pm. Our introduction to Barcelona, a sort of foreshadowing if you will, was trying to catch a taxi from the bus to the apartment where we’d be staying. The taxis in the queue tried to hustle us by charging €10 per person, so €30 for what we knew was a relatively short trip. We ended up walking a distance to hail a taxi on a side-street, and get a normal metered ride. It ended up being only €10 to get us to the apartment.
We had been recommended to try these short-term stay apartments instead of an expensive full-service hotel. We had a three-bed apartment in the Eixample district just north of the more touristy older part of town. This was a great location nestled in by the University and many excellent markets, gritty bars full of locals, and fantastic Tapas bars. The owner checked us in late, showed us some maps of the areas and gave us some tips for our stay. He apologized that he only had a single set of keys for us, instead of the two we were expecting. The other pair had gone missing, so he would check for them the next day with the cleaning staff.
As we sat down at a tapas bar at 1am that night, it dawned on me that I know approximately six words in Spanish, and none of them describe food. We all played roulette with the menu and waited to see what they brought us. At least it was easy to order the wine.
The next morning Christine & I went down to the street and picket up fresh fruit from a small market and some croissants at the bakery along with some bottled water. We brought it all back up to the apartment for breakfast. As we were eating, it dawned on me how expensive Dublin is. This breakfast for three had cost me €10. In Dublin, it could have easily been triple that.
We then walked around the area, sat down for coffee, and caught the hop-on hop-off bus to zip around the city and see some sights, ended up by the ocean-front for a lengthy delicious dinner in the hot sun. We walked all the way back to the apartment, traversing Los Ramblas, a good mile or so of touristy flea markets and open-air shops. We went clubbing that night — the clubs there don’t even get started until close to midnight, and the go strong until 5am. Naturally, we slept in on Sunday.
We got up around noon and went out again to find some breakfast. To our surprise, everything was closed. They take Sundays seriously. We learned that things would be open later in the afternoon, and the touristy areas would still be open. We again found the hop-on hop-off bus and zipped up to Gaudi’s Sagrada Familia Cathedral, which is still under construction. The cathedral looked amazing. Downright demonic — in some areas. We were starving at this point so we wanted to find food. The area surrounding the cathedral is 100% certified tourist trap, so we wandered at least 10 blocks away trying to find something appetizing. Everything was closed, except for really seedy bars, so we headed back with our tails between our legs and ate an absolutely terrible meal at a restaurant next to the cathedral. The only comparison I can make is that it was the Spanish equivalent of a greasy-spoon truck stop, but with Spanish food instead of burgers and fries. Even the wine was bad.
The rest of the bus tour was pretty lame too. It just goes into the north part of the city which is mostly generic cityscape stuff. We ended up taking a taxi to the national palace which is up on a hill with a stunning view of the city. The museum there was closed though, so we hung around a bit taking pictures and then walked up to the Olympic park for a bit and hopped back on the bus, and rode it through stuff we’d already seen the previous day. We hopped off at the gothic area and got lost in the labyrinth streets. Again, almost everything was closed so there wasn’t much to see or do, save for wander up and down the narrow streets. We found our way back to Los Ramblas and ate at a fantastic restaurant there, then wandered back towards our apartment around midnight. We had a lot of wine, and we overshot our street by several blocks and as we were walking we heard live music down some narrow steps so we ducked in to check it out. It was a tiny little bar no bigger than a small apartment and it was open-mic night. So we listened to some excellent local music and drank some more and around 2am found our way back to the apartment feeling pretty good.
I struggled to unlock the door because…..the deadbolt was not in, and I knew I had dead bolted it before leaving. Hmm. I opened the door and the lights were all on, which I knew we had left off. And it didn’t take me long to see that my laptop was no longer out on the table. Fuck. We’ve been robbed. I quickly surveyed the apartment, and walked into the bedroom to see that my laptop back was gone. Shit, I had left my passport in there. I’d also left my wallet in there since Barcelona is notorious for pickpockets I just took cash and some cards with me that slip easily in a shirt pocket. My bag had also had my iPod, and the Nintendo DS I had just purchased the week before. Christine’s iPod was gone too, and V’s cell phone and her fancy sunglasses, and so on. Even my phone charger had been unplugged and taken (despite the fact I had my phone with me). More than anything, I was upset about my passport. It was too my relief that I found my passport and wallet (minus the Canadian & American cash), and even my return bus ticket to the airport had been removed from the bag and placed in the bedside drawer. I don’t know if they were being “kind thieves” or just being careful not to have any such incriminating ID on them if they were caught.
The whole thing stunk. No forced entry, so they had a key (remember that missing set of keys?). Nothing belonging to the apartment was taken — not even the flat-screen TV. We didn’t even know if we could trust the apartment owner or his company. Since this was an apartment, we had no concierge to call, and the owner’s cell phone was turned off. So V called around to her family to find a number of the police. She had to call about 4 numbers and no one spoke any English at all so it was tricky to converse. Around 4am two officers arrived who spoke a tiny bit of English. They didn’t do much other than tell us the location of the police station to go to in the morning where we could file a report with a translator.
So Monday morning, instead of having fun, we packed up and went to the police station. The translator wasn’t going to be in until 11 so we waited at a nearby cafe and had breakfast and coffee. We had a long wait again before making the final report. We got a copy, in Catalan and went for lunch then took a bus back to the airport where we waited until our 9pm flight back to Dublin. Bah.
Now we’re trying to see what we can get covered by insurance. With no obvious break-in or forced entry, we don’t know how well the insurance company will treat us as we just have our police report. I’ve never had to claim insurance before, so we’ll see. It sucks to lose a laptop too. I’ve changed all my passwords on everything I can imagine, and every day I realize some little snippet of code or important file that didn’t have a fresh backup. I had a new laptop my first day back to work. My walk to work is now sans-music, and I have a couple of DS games I haven’t even played yet and now no DS to even play them on. But it was just stuff, and for the most part it’s just a rude thing to be robbed like that. It causes a lot of inconvenience — all the work of filing the report, replacing the items, making insurance claims, and losing a day of our vacation.
Bastards.
So Barcelona was a really cool city with awesome food and a great vibe. The tourist traps were god-awful and abundant as anywhere, but there was lots of authentic culture and grit to make up for it. Despite the culinary delights the city has, we left with quite a bad taste in our mouths.
Not much to say for now, but I thought I’d post to keep the cobwebs off the site. Outside of work, I’ve been pretty lazy this past week. No coding on side-projects, or blog posts obviously. Keen readers might note that I did have time to make this page background a darker blue. I much prefer it.
One of the interesting things in working at a highly-technical high-stakes high-pressure 24/7-uptime mass-market company is you get some pretty big fires to fight. The last 48 hours are a blur, as I spent most of them in the semi-awake state. I’ve had some sleep now, so I can look back at it and laugh.
I had an ordinary busy day on Tuesday and on top of working late, stayed at the office until about 10pm, trying to work out my taxes and other such personal chores. Around midnight I was just getting into my pajamas. I was dog-tired and eagerly looking forward to crawling into my warm bed and dozing off. My phone went off — RED ALERT. Something wonky was going on with our tournaments and while tournaments were starting, and happily collecting people’s registration money, it was failing to sit them down at actual tables and dealing them cards.
Ruh-Roh.
We quickly gathered diagnostics and discovered the cause of the problem. Within a few hours we had a fix for the problem, but had to do extensive testing through the night to make sure it was safe. When you have software that is pushing millions of dollars around and is concurrently serving 50,000 people at any one time, you can’t just hack something together and toss it up on the server. It’s a major task to deploy, and requires careful handling. The other issue of course was cleaning up the huge mess made by the problem. All those players had to get refunds and all those wacky tournaments had to be cleaned up. That was a big task itself. Deploying a new version of the site is always a big job requiring a lot of coordination between many people, and we finally got things deployed after working more than 24 hours straight on the issue. Since this all kicked off right before my head was about to hit the pillow, I ended up being awake for over 40 hours straight.
Towards the end of the stretch, when we were all getting a little loopy, it got kind of fun. I’m not sure if our wise-cracks were getting more clever as we got more sleepy and deranged, or if we just found them funnier. It was a stressful time, but the team came together well. It’s not exactly like getting shelled or nebelwerfered for two days, but our little band of brothers did well under fire.
Ahhh yes, the hours are ticking down to my first vacation of 2007. Tomorrow morning at 7am, we fly to Malta for 5 days in the sun. w00t w00t!
UPDATE: Naturally Christine has posted voluminous details of our trip. All you’ll get from me besides name, rank, and serial number, is some fun facts like that Malta is crawling with stray cats, and I think instead of Mice they hunt little lizards (geckos?), which Malta is also crawling with.
At work we have many server development systems for internal testing, and of course the main production server. We have internal server administration tools to do all manner of things like starting and stopping the servers, administering accounts, and everything admin-ish you can imagine. Its very common throughout the day to be connecting to all the various environments, including the production server, and sometimes you can forget which server you’re logged into. Naturally, it would be devastatingly bad if you forgot you were actually connected to the live server, and started mucking around, thinking you are on your development server. So when we’re connected to the production server, we make it look very different, so you cannot easily make that mistake. Normally that’s just making the background color a garish pink.
For a new tool I was developing I wanted a cooler looking warning border to put around the window, or any other component that could be dangerous to muck with. So this evening I wrote a Swing Border that looks like police tape.
I’ve been scatterbrained this weekend. I’ve got a burning itch to work / play with so many things, I end up spinning my wheels between them all. There’s a lot of cool things being worked on at SwingLabs.org to try out. The whole Filthy Rich Client programming movement is tantalizing to me. At the same time, I want to play around learning some OpenGL to write a little 3D n-body gravity simulator (I remembered back in the old Mac days, this totally cool 2D n-body grav simulator I used to play with). And at the same time, I have many little projects related to work that I’d like to do…. but as a matter of principle, I need to resist the urge to work on them in my spare time.
I’ve been doing a lot of thinking about what to do next (in a few years). I’ve been bouncing around startup ideas with J. I’m a control freak, so starting my own company has always had a lot of appeal for me. I’d much rather be dealing with the consequences of my own incompetence, than dealing with the consequences of other’s incompetence. I spent the morning reading a great thread at Slashdot on The Dilbertization of IT. Lets just say a lot of it sounds very familiar. I am actually having a lot of fun at work, and learning an incredible amount not just about technology, but business, and office politics. As an engineer, one cannot help but analytically dissect the mechanics of the organization and laugh at the inconsistencies and inefficiencies wrought by human nature. At times it really becomes downright comical — a real life instantiation of Dilbert.
Needless to say, part of the appeal of starting a new business is to re-engineer the structure of business, to fix what is broken everywhere else. The only way, I think, is to structure the culture and policy of the business to have an immune-system to bullshit. It has to be an objective meritocracy with no chance for nepotism, mediocrity, or point-haired-bosses. Google is the shining example of this new type of structure. It is very flat, fluid, and centered around accomplishments.
I’ve often though that engineers would make the best politicians and business leaders, when it comes to policy-making. They absolutely suck at the pre-requisite shmoozing and soclal aspects, but if you put engineering minds into solving big problems, we’d have much more efficient and effective governments and businesses. As a softwa..
Wow, it’s snowing right now! WTF!
… Anyways, as a software engineer I deal with huge complex abstract systems. These are invisible systems that exist only as concepts and electrons flowing through silicon gates. They are on massive scales that our minds don’t deal well with — billions of bits, millions of calculations per second, terabytes of data. It can be like assembling an invisible jet engine. Then you power it on and if it doesn’t work, you have to debug it from a few clues (i.e. it made a funny sound before it exploded).
So, maybe Google should run for president.
And now it’s not snowing — it’s sunny. Strange.
Well it has been another roller-coaster couple of weeks at work. Unfortunately, that leads me little to blog about. It’s not that I have nothing interesting to talk about — but it would be inappropriate to blog about work here, so I can’t. Oh but if I could, there is so much to say!
I’m loving my new breakfast concoction: MegaPorridge.
30g Whole rolled oats, 10g Raisins, 10g Goji Berries, and a 15g mix consisting of Hemp Protein, Flax Seeds, Sunflower seeds, Wheat Germ, and Brewers Yeast to bump up the nutrition. Cooked with water and then topped with a sprinkle of cinnamon, brown sugar, and skim milk. It’s soooo good. I would eat it three times a day if I could.