NunoNunes.org

Loading
Entries by year
Entries by month
December
Sun Mon Tue Wed Thu Fri Sat
       
Powered by Blosxom
Creative Commons License

Buh

As requested by some people, here is a new post.

Enjoy!

About this entry

Originally written on Dec 29, 2005 @ 20:14
Read article on it's own page (permalink)

A couple of sites

A couple of sites caught my attention lately:

  • Gtalkr, Google web interface to Google talk is, obviously, a great piece of web service design. The interface is good and the integration with your Gmail account is very interesting indeed. Of course I won’t be dropping my desktop IM client in favor of a web-based one anytime soon, but Google is definitely realizing all the potential of all the services it is offering and the whole Web2.0 shebang. Update: As was pointed out in the comments, Gtalkr is not affiliated with Google so it is really more of a triumph of the remix culture than Google’s.
  • Pandora, a music service based on the Music Genome Project was brought to my attention by Mind Booster Noori and so far (after a whole morning of listening!) :-) I must say I’m quite impressed. The gist of it is that the service learns from you what kind of songs you like to listen to and tailors it’s streaming “channel” to your preferences. You can, of course, have multiple “stations” with different kinds of music playing in each one. What I like best about it is that, so far, it seems to be spot on with it’s choices. I have marked some songs with “I don’t like this” and others with “I like this” and it seems to be getting extremely good at guessing what I want to listen to. Also the flash interface is sober, clean, effective and very easy to use. Definitely something to keep an eye out for and an ear to.

Well, now that I’m done with the hype, it’s back to work…

About this entry

Originally written on Dec 05, 2005 @ 13:00
Read article on it's own page (permalink)

Lisbon.pm first tech meeting

The meeting went on yesterday evening and this is just a quick note to recap on it.

  • People seemed to like it (as far as I can tell);
  • Three talks were had, they covered testing (Cog), the backpack command-line tools developed by Melo and the Flickr-Tools distribution by me. They will eventually be made available on the Lisbon.pm website (won’t they Melo?);
  • Audio recording and video recording took place. Expect both an audio (podcast) and a video version of the talks to be available in the… erm… (not-so-near?)-future. I have in fact already talked to Pedro Custódio (the one who recorded the audio version) about how we could do the video version based on the podcast one, so now that I have committed to it I have to get it done!
  • We already have enough speakers for another meeting (in fact I think we could already fill up two more, but let’s take it one step at a time) so we are aiming at doing another one in a month or so.

On a partially related note, I’m not actually sure if I can say I belong to Lisbon.pm. I mean can you belong to more than one Perlmongers group? Being a founding member of Cascais.pm (and 50% of it’s membership) can I say I also belong to Lisbon.pm? Oh well, such are life’s little dilemmas… :-)

So here we all are, except for Pedro Custódio which unfortunately was too far back from the table and so was hidden away by Francisco (and José who took the shot):
Lisbon.pm first tech meeting

Technorati Tags:

About this entry

Originally written on Nov 17, 2005 @ 13:01
Read article on it's own page (permalink)

Gosh, maybe I overdid it…

I just finished up making the slides for my presentation later this evening on the Flickr-Tools distribution for the Lisbon.pm first tech meeting.

I am alloted 45 minutes and having almost no experience in producing talks I decided to keep it simple, do a small presentation and fill up the time with explanations and maybe a Q&A…

So I just looked at the final result and I have 40 slides. 40!

Brevity? Hah! :-)

I will of course make them available soon.

About this entry

Originally written on Nov 16, 2005 @ 19:48
Read article on it's own page (permalink)

Stats by Google

Yes, Rui is right, I am having fun with the new Analytics service provided by Google.

The site is wired up, the data is hopefully being collected and in a few days there should be something interesting to look at.

A shame they don’t have a way to serve up the access logs to fill in the back history though.

Ah… outsourcing goodness!

Technorati Tags: , ,

About this entry

Originally written on Nov 15, 2005 @ 11:49
Read article on it's own page (permalink)

No more trackbacks on this weblog

That’s it, from now on trackbacks are turned off on this weblog.

If I ever decide that this feature is particularly important for a specific post I’ll enable it for that post only but as a default it is now off.

I just haven’t the time or the patience to deal with trackback spam right now. I got fed up.

About this entry

Originally written on Nov 10, 2005 @ 18:12
Read article on it's own page (permalink)

All the small things

Even though I haven’t posted anything in quite a while I’ve been producing video at a steady stream especially during and right after the recent vacation week in NY.

Until this weekend I’d only ever finished video projects in iMovie. I had tried using Final Cut for a few but when push came to shove I just wanted it done and fell back on iMovie “just this one more time” in order to get it done in a reasonable amount of time with everything I wanted in it.
What kept me from going FC all the way was not knowing how to do what I already know how to in iMovie and the steep learning curve associated with FC. I have bought a beginner’s book on FC, but never decided to go ahead and take the plunge.

So this weekend I decided to just go nuts and try it out and I must say I’m quite pleased. My goal at this point is not to do any fancy stuff with it, I’m simply aiming at using it just as I do iMovie, because limited as the later is, I know how to get almost everything out of it and when I get to that point in FC, then I can evolve at my leisure. And of course, if you want to learn how to use something just stop stalling and use it! So that’s what I did and I’m quite pleased with the results so far. I see a future not that far off where I’ll revert to using iMovie while in road warrior mode (FC on a G3 900MHz iBook is not very appealing to me) and Final Cut as my main editing platform at home.

So other than that I tried to get my latest photos into some kind of order but being sick didn’t help at all so not much got done on that front.

Also, on the whole personal site ball of wax, I’ve been looking with longing eyes at bloxsom for quite some time and this weekend I got another run at it. Some day, some day…

Oh and my ADSL wireless modem/router decided to go nuts and require a hard reset to start working again, so a part of my time was spent happily (not!) restoring it’s configuration from memory (and through a great deal of trial and error, of course). What do you mean configuration backups? Well yeah, now I have them… :-)

About this entry

Originally written on Nov 07, 2005 @ 12:45
Read article on it's own page (permalink)

Row that boat

Row row row the boat
Gently down the stream;

Merrily, merrily, merrily, merrily
Life is but a dream.

Just because I felt like it…

About this entry

Originally written on Oct 28, 2005 @ 19:32
Read article on it's own page (permalink)

Across the pond

Well, here I am, across the pond. You now the one, they call it the “Atlantic Ocean”?

Anyway, things are great here in NY. It’s been almost a year since I’ve been here last time and since it was in late November things look rather different.
For starters there are no christmas decorations around. Another thing is that there is no snow and the temperature is not even conducing to it.

Which leads to even more walking around. Which leads to really tired legs and feet. Which leads me to be writing this at a nice Barnes&Noble’s café (it’s a Starbucks actually) while Tuxa is out shopping at the Fifth. Nice arrangement if you ask me, I get to stay with the books and my iBook and Tuxa gets to do what every woman likes best! :-)

Not that she hasn’t had reasons to be happy on that department —her birthday is Wednesday and she got to pick out her present(s) earlier today. And some presents she chose: considering this is a rather special birthday she finally caved in and went for the diamond ring and (more or less) matching diamond earrings… This is so not her… But then it is a rather special occasion!

This time around I decided not to bring my camera (well, OK, I brought the point-and-shoot, but mainly for Tuxa’s benefit) and bring the camcorder instead. We spent yesterday walking around town looking for the street fairs and on Central Park and I got some footage which I think is OK, but since I had to re-install the iBook after all the trouble I’ve had with it and I never got to use iMovie after that I imported everything I had into it and then, since I had told it I wanted this movie to have a 16:9 aspect ratio, it started to happily letterbox everything, even if it was captured in native 16:9 format. So I had to forcefully abort the operation. Which aloud me to get the footage in it’s original shape. But all the clips were out of order. All 115 of them!

I wanted to do a small movie (videoblog-style) yesterday about our first day back in NY, but I was just too damn tired and the footage scrambling around was just too aggravating to even try and touch it so lets see if I get something done now…

Oh the books at Barnes&Noble… Already bought a couple of O’Reilly’s I was looking at, but bought them at US prices Yay!
Also bought a wide-angle converter for the camcorder and while I was looking into buying some glass for my EOS 10D I just discovered this morning that B&H is closed starting today and until the 26th. Major bummer!!

Well, back to the movie now.

About this entry

Originally written on Oct 18, 2005 @ 02:53
Read article on it's own page (permalink)

Last month re-cap

I’ve been very quiet for almost a month. For various reasons I’ve had neither the mood nor the time to blog.

Well, during this time lots of things have happened and so I thought I’d write up a small recap here.

But before that I’m off to New York for a week’s vacation tomorrow so I probably won’t be blogging a lot there also.

Anyway, here are the most relevant (for a given criteria at least) stuff that happened these last weeks:

  • Got the PVR up-and-running almost completely. I now use it to record and watch TV shows and to watch videos I ripped from my DVDs or got from other sources. The only thing that is missing is configuring the DVD player which needs some tweaking. Is is actually very cool to be able to download NerdTV’s episodes or any of the Revision 3 stuff (especially TWiT episodes) and watch it on the TV. Oh and of course BitTorrent rocks for getting this stuff in;
  • Got to not learn more about Final Cut Pro, although I’m itching to dive into it, especially now that I have a book on it. There just wasn’t enough time;
  • Attended a small (4-hour) workshop on Photoshop CS (2) as the hub of the digital workflow. Most of it was pretty basic stuff, but it was interesting to see my workflow validated nonetheless. Could do with something more advanced, though, the meaty stuff such as color management and so on was kind of breezed through. Still, I guess the workshop was geared toward a more uninitiated crowd so it did it’s job there…
  • Learned a lot about darcs and conflict resolution. Luckily it is pretty good on that respect, so no horror stories there;
  • Got to see the full Firefly show (a whooping whole first season!) and the film serenity. It rocks!
  • Got to see the Hitchhicker’s Guide to the Galaxy movie, which was pretty much better than I expected (which is not all that difficult, considering my low expectations);
  • Missed the first Lisbon Perl Mongers’ social meetings;
  • Consumed a lot of podcasts and not that many video-blogs. While I like video-blogs I don’t usually have the time to devote the kind of attention they deserve. On the podcasting front, I’m gearing more towards music podcasts lately. Of course I still consume almost all of the IT Conversations shows, but I’m starting to get more and more really good music podcasts. I have to start cutting back on some of them soon though, there just aren’t enough hours in the day!

Some other stuff happened, some of it good, some of it bad and sad but this is the more techie stuff. I hope this entry will kick-start me into getting some things up here. I haven’t even created any new videos or photos, although I have been collecting photos and footage for it.

And now back to packing. I’m feeling awfully tired so if I don’t do it soon I’m sure something will get left behind… :-)

About this entry

Originally written on Oct 14, 2005 @ 20:54
Read article on it's own page (permalink)

Avast, me hearties!

Not that I’ve followed the tradition like, ever before, but I’m not failing to aknowledge the International Talk Like a Pirate Day this year.

Shiver me timbers! :-)

About this entry

Originally written on Sep 19, 2005 @ 18:55
Read article on it's own page (permalink)

Spreading the geekness

Tuxa (that’s my wife in case it isn’t obvious) has just assembled her first PC!

I finally managed to get a little bit of free time (the help-desk-like-stuff pile is getting definitely smaller) to get around to assembling the Pundit-R which will be my living-room DVD player and PVR. My current DVD player has been warning me that it will not put up with my demands much longer and so this was the perfect opportunity to go for a full-blown PVR.

So I bought all the components some two weeks ago and it has all been laying around, waiting for me to have the time to put it together.

The curious thing is that Tuxa was so curious about it that she asked me if she could help out with the assembling. Well of course I had nothing to object, quite the contrary.

In the end I opened up the case, got the manual in hand and just told her what to do while she had a blast assembling it all.

So now, after I’ve had all the software installed and put the box in it’s place, Tuxa will have a PVR which she built herself! How cool is that?

Oh and all this fuss is derived from the fact that while she is far from technologically-challenged she is not a geek, not by far. Although I may have to revise that last statement given the recent developments… Oh my, could I be about to loose the status of alpha-geek in my own home? ;-)

About this entry

Originally written on Sep 14, 2005 @ 00:53
Read article on it's own page (permalink)

Goo

“I Stole my sister’s boyfriend. It was all whirlwind, heat and flash. Within a week, we killed my parents and hit the road”.

For some unfathomable reason this stuck inside my brain, seemingly forever.

I just got to listen to Goo again, after an ungodly amount of years and by the 3rd or 4th chord of Dirty Boots it just came back to me.

And I can’t remember what I had yesterday for lunch…

About this entry

Originally written on Sep 13, 2005 @ 18:03
Read article on it's own page (permalink)

Nuno’s helpdesk hot-line, how may I help you?

What a couple of weeks the past ones have been!

I’ve been so busy (I’m talking out of work of course, work-related stuff is something I usually don’t discuss here) I’m actually starting to miss photographing or filming stuff!

Just a quick recap of things I’ve done lately for my own records-sake:

  • Ported most of the stuff from my noisy Intel-based home server to the oh so quiet Mac mini. There are still some things to be finished on that front, but most of it is done and I now have the old server turned off most of the time, much to my ears’ relief);

  • Setup automatic external disk backup software for both of my parent’s laptops;

  • Completely installed and setup my mother’s new laptop (including the above mentioned backup solution);

  • Installed a brand new iBook for my mother and did a full length introduction to Mac OS X and the “Apple Philosophy” for my parents. My mother’s brand new laptop had a hardware problem and the store she had bought it from was so obtuse in dealing with the problem that she decided to just get her money back and in the end decided to go the Mac way. Way to go FNAC, just keep on driving your customers away!

  • Did a full credit-card payment gateway integration on my brother’s site (not yet on-line);

  • Helped a number of people with an unusually high number of winblows-related problems. People still largely think that the guy who works “in computers” and with a degree “in computers” must surely know why their computer has turned so slow and stopped doing this and that and (worse) started doing this and that, even if the aforementioned guy doesn’t use winblows himself and in fact tries to avoid it like the plague. 99.9% of the time the anti-virus hasn’t been updated in oh… more than 6 months or so and anti-spyware is still an alien concept so the guy actually ends up knowing full well what the problem is, which doesn’t help his credibility much when he tries to say “but I don’t use the stuff, how am I supposed to know what the problem is?”;

  • Some other random things that needed doing which I now forget.

So still on my plate for next week is:

  • Finishing up the home server migration;

  • Formating the old server, installing XP on it and shipping it to it’s new owner;

  • Doing a full disisfestation of a laptop running winblows which (by the sound of it) must be crawling with virus and spyware and educating it’s owner on the dangers of the Internet and protective measures that must be taken (and in this instance I know that the lecture will actually help so that’s not so bad);

  • Assembling the new PVR machine (whose components I bought a full week ago but which are still lying in their respective boxes due to my lack of time), installing it, putting Freevo on it and configuring everything before my current DVD-player finally gives in and gets to join it’s brethren in the big sitting-room in the sky;

  • Try to get some free time back in order to actually get to use the new PVR!

But now, for a full weekend of beach, with practically no connectivity!

See you all monday!

About this entry

Originally written on Sep 09, 2005 @ 18:11
Read article on it's own page (permalink)

iBook reincarnation - take two

Just got my iBook back from the shop today.

Yep, the previous logic board substitution solved the problems I had but gave me a whole set of new ones.

Still I have to commend Interlog (again) for letting me keep my Mac while the new logic board was en-route (which only took 2 days this time around) and then replacing it from 18h00 one day to 9h30 the next day.

Way to go, really!

Now I just hope this board is actually fully working…

About this entry

Originally written on Sep 09, 2005 @ 17:04
Read article on it's own page (permalink)

XMPP - Extensible Messaging and Presence Protocol

This is a page that I created to hold some information I have gathered on the subject (while working on setting up a server) and will have to be revised to make it “cleaner”.

Some relevant links:

DNS configuration to support XMPP

SRV records:

  • _xmpp-server._tcp.domain
  • _xmpp-client._tcp.domain
  • _jabber._tcp.domain
  • _jabber-client._tcp.domain

For clients and for older servers the A record of the domain is often used.

Helper scripts

#!/bin/sh

domain=$1

(
    dig srv _xmpp-server._tcp.$domain
    dig srv _xmpp-client._tcp.$domain
    dig srv _jabber._tcp.$domain
    dig srv _jabber-client._tcp.$domain
    dig a $domain
) | perl -ne 'next if /^;/ || /^\s*$/; print'

About this entry

Originally written on Sep 07, 2005 @ 17:30
Read article on it's own page (permalink)

Changes on portions of the site

Well, now that the Mac mini is finally here, I’m trying to get rid of the big noisy Intel tower ASAP.

Right now I’ve moved a few sites out into the geek-nest server (most notably the wiki which also suffered a software upgrade which may break things a bit) and de-activated some others.

I wanted to try out CenterStage on the mini before putting it to definite use as a server and I did. So now I know it will take a huge time for it to even start to be useful so no problems there. I’ll probably just put the mini to work this weekend, if I have the time. I’m actually active in the whole pvr/media center arena but that is a subject for another time when I’m not so sleepy.

I apologize in advance if anything breaks in the mean time in my site. Migrations usually do that! :-)

About this entry

Originally written on Sep 02, 2005 @ 01:12
Read article on it's own page (permalink)

Mac extravaganza day!

I can stop holding my breath.

One month on the nose (OK, OK, 2 days more than a month) after my iBook went to the shop with a defective motherboard (logicboard in Apple talk) I got it back. Hurra!

And I also have it’s little brother, the Mac Mini I ordered a few weeks ago.

I was notified yesterday that the Mac Mini had arrived and was waiting for me, and I decided that once I was there anyway I should ask about the iBook (after all I was informed it would take an abnormal 2-3 weeks at this time of the year, not that I believed it anyway, of course).

Well lo and behold, to my amazement they just handed it over and said they finished up assembling it last evening and were going to call me today to let me know. What perfect timing! Of course it was a good think I did ask for it, otherwise I’d have probably just arrive in the office from getting the Mac Mini only to receive a call saying I could go and collect the iBook… :-)

Since my bandwidth at home is rather limited I unpacked the Mini here at the office in order to get it all updated and synchronized. The first thing that comes to mind after these initial 30 minutes with it is (unusually, I suspect) quiet! Indeed, I want this box to replace an oldish Intel tower I have at home acting as my home server, not because of the size of it but more because of the damned noise it makes! The Mini I couldn’t even hear it in the office at lunch time. Now I know it does make some noise and it will be apparent in the silence of my home office, but the current server feels more like a plane taking off than anything else, so this will be a nice improvement to the home environment!

I’ll transfer my home sites into the little Mini, I’ll make it fetch my podcasts and vlogs all day long and I’ll probably run my bit torrent clients there. This way I can shut the iMac down when I’m not actually using it. Also having another Mac in the home network is great for playing around with the Xgrid. I don’t have much use for it right this moment, but I suspect Final Cut will make it worthwhile soon enough.

About this entry

Originally written on Aug 31, 2005 @ 18:32
Read article on it's own page (permalink)

Mogwai on Lisbon Soundz

Went to see part of the Lisbon Soundz show last night.

We went there mainly because Tuxa wanted to go see Franz Ferdinand and although the full show featured 4 bands we arrived there later on and only caught Mogwai and the aforementioned Franz Ferdinand.

So while Franz Ferdinand is an OK band and is rather good at live shows (even if they could work on their new material, maybe trying to get the singing tuned between the two singers) ;-), for me it was Mogwai that made the night.

I didn’t expect them to actually be that good on a live performance, for the kind of music they play. I don’t know why, I’ve never actually thought about it, I just didn’t think that it would be worth it.

Boy was I wrong! Mogwai live is a revelation. Not only because of the powerful sound they create, but also because of their attitude towards the whole thing. They are just a relaxed bunch of musicians, thoroughly enjoying themselves while playing their music.

Also fun to notice was that the crowd that was gathered to watch Mogwai was comprised of people from the early twenties to maybe their thirty-manies, but right after they finished their performance most of them faded to the back and a rush of kids on their teens to early twenties filled in the space just front and center from the stage.

As it would happen Tuxa was on that kind of a mood too, so we also ended up right there in the middle of all the teen-fueled jumping, waving and shouting while Franz Ferdinand played. Ah the memories… :-)

Tuxa thoroughly enjoyed it though and the fact that many of the people there were maybe half our age didn’t stop her from joining the singing, waving, jumping crowd. A good show altogether.

Next up, barring any surprises, is Sigur Rós in November.

About this entry

Originally written on Aug 29, 2005 @ 09:34
Read article on it's own page (permalink)

Help from above

As is well known by now, most Portuguese forests are in flames from north to south.

Right now there’s a huge fire in Figueira da Foz, near Coimbra and Melo has filmed some CanadAir planes who are up there fighting the fires, refilling their water tanks in the river right by his office.

So far there were no accidents despite their flying insanely close to the bridge, although Melo tells me that when they started coming in 5 at a time there were some acrobatics in order to avoid each other…

He put up the videos straight from his still digital camera and I took them and stitched them together in this little film for easier consumption.

By the way, if you ever need to edit MPEG1 Muxed footage filmed by a still digital you will have trouble getting the sound out of it.

The best way I found to do that was to use the fabulous MPEG streamclip software to export the clip to DV format and take it from there.

About this entry

Originally written on Aug 27, 2005 @ 20:38
Read article on it's own page (permalink)

Trackbacks, spam and Technorati

The trackback mechanism, while a good idea at first view, does have a few ugly design flaws that render it a perfect target for spammers.

In fact I spend way much more time cleaning trackback spam than I do posting on my weblog. People like Melo who posts rather less frequently than me have an even bigger problem than I do in that spam trackbacks usually are made in old entries and as such they don’t have that much visibility at all, but in Melo’s case they usually appear right on the front page of his weblog which is pretty bad.

So lately many people have been getting fed up with it and are starting to decide to drop trackback support on their weblogs and are pronouncing that trackback is dead. Sometimes in the most amusing ways. Others have never really caught on to it and have some very good reasons for it.

Anyway, while I’d gladly let go of trackbacks on my weblog I do enjoy the benefit of automagically having a notification appear on each article when people refer to it.

So what are the alternatives to trackbacks?

Well, one alternative which has been mentioned around is simply to go to the original article you’re elaborating on and post a link on the comments (assuming comments are turned on for that weblog, otherwise you’re essentially out of luck) and say you’re continuing the discussion there. This surely works, but people do have to take the time and effort to do it and given the natural predisposition of people towards laziness I’m guessing it would almost never get done.

Another alternative, one which I like better because it is automatic, is to use a service like Technorati to keep track of links to your weblog or to a specific post on it. This sounds like a much better alternative because it doesn’t require any human intervention and is therefore, much more effective.

But…

Technorati in particular is in trouble and people are leaving it too.
This is rather unfortunate because, as far as I can tell, Technorati’s problems are problems of scale, rather than problems inherent to the mechanism itself.

Even yesterday I was chatting with Melo and I started talking about how Technorati’s service sucks and he told me that no, Technorati’s service doesn’t suck at all, they just have scalability problems which, he told me, derive from lack of funds for the massive hardware upgrades they require right about now. And, of course, he’s right, the service itself is awesome, it’s just the implementation that is lacking in performance.

Now I don’t follow Tehcnorati’s development weblog so I’m really not into the know here, but if it is money they need why doesn’t anybody just buy them and give it to them? Isn’t this a great service to have? Just this morning I was listening to the Gillmor Gang’s August 12 episode and, once again, there was Robert Scoble saying loud and clear that if it was up to him Microsoft would just buy Technoraty and make it everything it could be. And why not? Scoble has surely been very vocal about it for a while now and I do believe that under his guidance it could be a great leap up for Technorati so why don’t they? Or any one else, for that matter?

Technorati has the potential to be a very big service and, particularly relevant to the topic of this post, a very good alternative to the trackback mechanism so would someone just please give Technorati the money they need (and then preferably get out of their way so they can do their thing as they should)?

And yes, I know there are alternatives out there, Ice Rocket being the latest and greatest to get under the spotlight but I do feel sorry to see something which started so long ago with just the right idea get left behind like this. Money surely isn’t the issue, there’s plenty of that to go around when people see the value in things, so what is the issue? Lack of awareness? Well, if that’s it then go Scoble!

About this entry

Originally written on Aug 26, 2005 @ 09:15
Read article on it's own page (permalink)

Spin

Vinyl records are a big part of my youth.

I’m not, by any means, a vinyl fanatic, defending it’s superior sound quality over digital media as many do. In fact I’m quite a digital-media kind of person myself, as should be quite apparent from my weblog and my activities.

No, what drives my fondness for vinyl records is the memory of countless hours spent listening to them.

Cleaning them from dust before playing them, cueing the head on the track I wanted to listen to with great care, getting up every half-hour or so to turn the record over or to put a new one playing…

There was a time when all that was as familiar and a “matter-of-fact” kind of activity as putting on a CD nowadays.

Of course today I know of a lot of (very young) people who don’t know what a “record” is, much less an LP. Even more people know of records, but only as that media some DJs use and have never actually touched one. It’s fun to be an old geezer like that!

Anyway, I decided to put on some of my old records (yes, I do have an operational turn-table and it is really connected to my stereo) and make a video of it.

Don’t you just love the enthralling effect of a spinning vinyl record?

Technorati Tags: ,

About this entry

Originally written on Aug 21, 2005 @ 01:50
Read article on it's own page (permalink)

It’s not just Apple, retail is horrible for most products and brands!

This is a rant. I’m in a foul mood about what I’m going to expose next and I have to vent somewhere. So this is the place to do it. You may want to skip this post if you are having a nice day and want to keep it up.

Me and a few other people have already talked about the frightening experience people have while trying to buy Apple products in Portugal. Well, after my bout with the iMac and it’s hardware problems I tried to go down the Mac road once again and here I am again deep in the muddy path.

I’m not going to expound all the problems I’ve had while trying to get me a Mac mini, suffice it to say that I wanted it with just a memory upgrade and after 5 months of waiting and several interactions with the store I was trying to buy it from I still don’t have it. Now the new models came out with the amount of RAM I was looking for so I ditched my old order (which would even become more expensive!) and got a new order in another store. After putting the order in I sent an email asking for delivery estimates. Then another mail. And nothing came back as a reply. This was a week ago.

But then, this is only something that affects Apple and it’s retailers, right? And Apple is a very bad example and things like that don’t usually happen, right?

Well, wrong!

FNAC, a large international retail store chain is practically the reference store for consumer electronics in Portugal. It sells lots and lots, it even sells Apple products (and suffers from the same problems all other retailers do around here). But it also sells products from lots of other brands. Like Canon. A big brand, right?

Yes, Canon is a big, important brand, of which FNAC sells a lot of. So I went in there one day, as I was passed by and ordered (because they didn’t have it available on that particular store) two items, both from Canon: a battery pack for my camcorder and a cable release for my digital SLR camera. No problem, they said, we have it in some other store and we will get it here for you. So they took my data, took a note of my order and told me it would take, at most, 4 to 5 business days. OK, great, they’ll just call me when they have the stuff and I’ll come by and get it.

Yeah, right… As if!

Two weeks later I was passing by the same store and decided to check out what had happened to my order. So I explained the situation to a very helpful person who proceeded to take some 30 minutes looking in all the binders, trying to find my order (yes, FNAC keeps all it’s customer’s order in paper sheets in binders, with no tracking number of any kind. Welcome to the 21st century). He couldn’t find it. So he went to check out the items that were awaiting collection from the customers who has ordered them to see if my items where there. They weren’t.

There had obviously been some problem with my order; They had essentially lost it. So I made a new order for the same products, right there and then and the helpful and, by now, apologetic person told me he would definitely call me in two days (at most) with news about the order, even if only to say it wasn’t there yet.

It’s been another two weeks. No phone call.

Today I happened to have lunch with the usual suspects and, as luck would have it, we decided to have lunch near one of Canon’s importers which also happens to sell retail.

So I got my battery pack and I am now waiting for the cable release to arrive as they are out of stock. As for the Mac mini, who knows what I’ll have to go through to get one and which version I’ll end up getting…

Retail stores have a huge problem. I don’t know if they can’t cope with the tough economy or just don’t care about their customers or what the problem might actually be, but either way trying to get some decent service, let alone decent products, is a very frustrating exercise all around. Don’t these people want our money? I mean, come on, even a phone call or a simple email saying “we don’t have anything yet, please hold on” is better than nothing! Oh and getting repeated emails asking for information about delayed orders and not even deigning to reply really doesn’t go down well you know? It’s not even pampering your customers or trying to keep them happy, it’s basic human decency!

It’s just sad…

About this entry

Originally written on Aug 10, 2005 @ 22:04
Read article on it's own page (permalink)

iPhoto and freeing up space in your hard-drive

Today I was having a conversation with Vasco over lunch and we brushed on the subject of his having to free up some space on his iBook prior to going away on vacation with some friends. You see, he is the closest one to a geek on that particular group (not that he is much of a geek per-se, but you know what I mean) and he will be the only one carrying a laptop, so he just knows he will end up downloading all the photos from every digital machine every day into his computer and, as always, space is at a premium.

Now, as I said, he isn’t all that geeky and therefore he doesn’t have the multi-layered backup strategy I have with my media and all he wants is to be able to take some photos out of iPhoto, but be able to load them in and view them at a later time, while retaining names, comments, tags and so on.

At lunch I though up a way to do this which, while not overly complicated is way too much trouble and, of course, it turns out there is a better way of doing it.

What I thought about was that he could create another Library (you know you can hold down the option key while iPhoto is starting up and you can create and choose new libraries don’t you? ;) ), move the pictures he wants out of the way into that library, being careful to keep it below the available space on the selected medium of backup, and then just transfer that library onto the medium. This is probably a CD we are talking about here.

It works, it keeps all the information available but it is also over-work.

I mulled this over in my head during the afternoon and it just didn’t feel right that you had to do something like this on an Apple product. It felt weird… So I decided to investigate and, lo and behold, there is in fact a better way, which was right under my nose all this time!

You just make a album with the photos you want to take out of the computer, go to the “share” menu and select “Burn Disc”. Put in a CD (or, I assume, a DVD) and there you go. Everything is transfered into it.

When you later put the disc in your computer it automagically runs iPhoto and you get a new source alongside your albums with everything that is on the disc. Cool, huh?

The downside, of course, is that the disc has the structure that iPhoto knows about so if you want to get those files on another computer you have to dig in the directory structure and look for them, but then you have the originals untouched, the edited pictures and all the information about the photos on a (hopefully) open enough XML-based data file (have to check this one out to be sure).

I knew there had to be a better way of doing it. It was just a feeling, but there had to be “the Apple way” of doing it. And for the casual user it is, of course, way better. Nice job!

Update: Aparently I spoke too soon… It seems that this procedure doesn’t keep the tags you assigned to your images when you move them to the CD, even if you keep the tags in iPhoto. I don’t know about the descriptions or comments. I thought it kept the tags because it appeared to do so for me, but the only tag my test pictures had on them was ‘RAW’ and it seems that it is an automatic one so it doesn’t count for the test.

Technorati Tags: , ,

About this entry

Originally written on Aug 09, 2005 @ 20:55
Read article on it's own page (permalink)

Searching the Flickr API and iterators

I’ve been slacking off on the Flickr-Tools project, mainly because it serves all my purposes as it is right now.

But then someone pinged me regarding the photos method in the Flickr::Person class (the one that will return all the photos for the user) and that was the incentive I needed to finally get to writing that method.

So now I remember why I left it half-way through…

The thing is that this method must use the flickr.photos.search method to get it’s info and it could return a lot of info.

So flickr.photos.search has a mechanism for managing the potentially huge volume of information —it forces you to break up your request into “pages” of results— which, of course, is the right way to do it.

But how do I map that onto my Flickr::Person class in a nice way? I surely don’t want to make the user have to control things like results per page and current page and so on, that would defeat the purpose of the whole thing, but I sure as hell can’t just go and fetch everything from Flickr because for a user with many photos I would blow up the computer’s memory fast!

So after thinking about it for something like 10 seconds I knew that the right way to do it would be to use an iterator. Instead of returning an array of Flickr::Photo objects I should return a Flickr::Photogroup object (or somesuch) and it should have a few simple methods like next, previous and total. You know, a classic iterator. When it ran out of results it should then invoque the Flickr::API::Photos::search method to get the next batch of photos.

OK, that is a bit more work than I bargained for but it is the right way to do it.

But then all of the other methods which I’ve already written and which return groups of things (mostly photos) should also return this kind of object. And each instance should know how to get more results when it needs it, so it should be rather smart about what it is representing.

This means two things:

  • I have to rewrite the interface for methods which are already out there (major turn-off)
  • I have a lot more work ahead of me in order to do it
  • So I will make this re-write and, unfortunately, I probably won’t be able to have it done by tomorrow as I told the poor soul who is expecting a new version of Flickr-Tools with the new method and, probably, no interface changes.

    Should have though of that before, now shouldn’t I? Duh!

    Technorati Tags: ,

    About this entry

    Originally written on Aug 07, 2005 @ 18:47
    Read article on it's own page (permalink)

    Blur

    After being cooped up at home with the flu for 3 days I wanted to get a new video out but didn’t really have any new footage. So I just scrounged around on my tapes for some bits I hadn’t used yet and threw some of them together to make a short story (if I can call it that).

    These are pieces of random footage I recorded on several days for the past two-three weeks.

    About this entry

    Originally written on Aug 06, 2005 @ 20:15
    Read article on it's own page (permalink)

    (Sing to a well known tune) Someone gave me fever…

    Well, bingo! I’m running a fever, it feels like a steam roller just ran me over and my head is both full of cotton and hurting like hell so not only will I stay home, I’ll probably stay away from the computer most of the time as well.

    This is no fun. And on one of the hottest days so far this year to boot. Marvelous! :-/

    I’m available on my IM accounts, I’m just not looking at the monitor all the time, lest my eyes do what they feel like they are doing and swell out of their sockets, so if you want to reach me via IM try it but don’t hold your breath…

    About this entry

    Originally written on Aug 03, 2005 @ 10:58
    Read article on it's own page (permalink)

    Sick @ home

    Today I was booted out of the office by my coworkers.

    I have the flu and it was getting worse with the air-conditioning and not only was I starting to bother everyone around me with my sneezing but they where also afraid I’d spread the germs around, so they kicked me out and I went home in the middle of the afternoon.

    The god news is that apparently it is just a simple case of flu. The bad news is that it is not getting all that better, so I’m in for a rough night and, possibly, a sick day telecommuting from home tomorrow (which is not all that bad since I have my iMac here).

    In the mean time, while trying to delay going to bed (I can’t breathe all that well lying down when I’m like this) I’ve edited and posted another video.

    I’ve decided to try out my DV camcorder as source to iChat this afternoon and it worked perfectly which is good news.

    Also, after trying out Delicious Library with the camcorder acting as my barcode reader, I had no choice but to get the software. Now if I can only get a preference for setting the search order of the Amazon shops (it finds almost everything in the german shop and it gives me info in German which doesn’t do me any good) I’ll be a happy man indeed!

    About this entry

    Originally written on Aug 03, 2005 @ 00:46
    Read article on it's own page (permalink)

    Tea, toast and “Pattern Recognition”

    I spent last weekend in Algarve, at the beach, with my family and when we drove back, Sunday evening, Tuxa was tired and not feeling hungry at all (we eat way too much whenever we are with the full gang in Algarve) :-) and so she went straight to bed.

    I, on the other hand, wasn’t all that tired and didn’t feel like going to bed on an empty stomach, so I decided to have a light supper.

    Toast and some freshly boiled tea for the stomach and the newly started “Pattern Recognition” for the “little gray cells” (I wonder how many people will actually get this reference…)

    This is the setting (and a perfect excuse) for some more experimenting with video editing in the videoblogging format. This time around I have fun with extreme cutting.

    This was actually a 18+ minute shoot without interruptions and trimming it down to the 3 minute-something which it ended up with, while trying to make it interesting and somewhat funny was a really interesting task.

    It was a fiercely windy night and you can hear it, especially towards the end of the video. I also decided not to add any music or sound effects at all and it shows the poor quality of the built-in mic. No surprises there, of course, but I still think it is rather passable.

    About this entry

    Originally written on Aug 03, 2005 @ 00:30
    Read article on it's own page (permalink)

    Fedora and Palm syncing

    I have been away from this for so long I didn’t really remember what it was like.

    The pain, the horror!

    I just can’t get my Palm to sync with Evolution on my Fedora Core 4 box.

    Even syncing it with pilot-xfer was a pain, but now gpilotd is dying like crazy.

    < sigh >

    We should be sooooo over this kind of thing by now. I could spend some time looking into it and kicking it into some kind of working order but you know what? I just want it to work damn it!

    Please, oh please bring back my Mac. Pretty please, with a cherry on top!

    About this entry

    Originally written on Aug 01, 2005 @ 13:16
    Read article on it's own page (permalink)

    Random things going through my mind right about now

    Just got back from a weekend in Algarve with my family (who are there for their monthly vacation in the sun). The weather was not all bad, but the water was cold as ice, especially today. When I was down there in June it was a whole lot better. Go figure…

    Anyway, as for my iBook’s saga, to make a long story short, friday it went to the shop to get repaired. It seems that it belongs to a series which is known to be prone to logic-board problems and in those cases the warranty is extended to 3 years. So now all I have to do is wait for the replacement logic-board to arrive.
    Now for the fun part: they said this is usually a matter of 4-5 business days, but being this time of year I’d better be prepared to wait for maybe 4 weeks.
    Anyone cares to bet how long it will take? I’m betting it wouldn’t take 4 weeks even in a regular working month, it would certainly take a whole lot more, so now it will surely be much more than that, but lets see.

    For now I’ve setup my working environment based on a Fedora Core 4 installation. Oh, and as far as I can tell I was able to make a full backup of the iBook’s disk prior to formating it and taking it to the shop, so if it really went well I haven’t lost anything at all.

    I don’t know what’s worst, knowing I’ll be without a Mac laptop for a few months or the disruption it caused me trying to revive it and finally giving up on it. Still, at least my fears that it might have been the OS going bonkers were not founded. This is a huge relief; Windows begone and take your foul behavior with you!

    I know I had something interesting to say about the iPod and it’s ergonomics, but I seem to have forgotten what it was and since the draft of the post was on my iBook and is now on the backup I guess I’ll get to it later.

    I’ve also started to read “Pattern Recognition”. So far it looks very interesting, but then I’ve only read through three chapters.

    And while on the topic of reading, after a conversation I was having with Tuxa while we were driving home this afternoon I started to think about the books I haven’t been able to finish reading in my life. So far I only have two of those: “Quicksilver” and “Wuthering Heights”. While “Quicksilver” was set aside temporarily, I know I’ll finish it eventually and then start with “The Confusion” which I already have on my pile.
    But “Wuthering Heights” is a different matter altogether. I just stopped reading it and set it aside a lot of years ago and never returned to it. This bothers me a bit so I’ve made up my mind that soon(ish) I’ll just have to take it up again and go through it. Nothing bothers me more than something incomplete, and as far as I remember the story wasn’t all that bad.

    About this entry

    Originally written on Jul 31, 2005 @ 22:31
    Read article on it's own page (permalink)

    cvs ci life

    Quick recap of the last few days.

    Finished reading Ender’s Game. Amazing book, it gripped me in a way no sci-fi book has been able to do in years! I’m now contemplating buying the sequel —Speaker for the Dead— but I’m not sure about that. Ender’s Game was really very good with an incredible ending —it could do without the last couple of pages, but very good anyway— but I’m not sure about a sequel… If it is not as good as the first one I’ll be pretty sad about it…

    Of course finishing the book took a lot of late evening time which I could not, then, devote to editing some more video. I have some footage I’d like to use on one or more videos, and I have to try out some of the advice people like Paulo are giving me, but I do need time for that. Reading until high hours of the night isn’t exactly helping, not at all!

    Anyway, another major distraction seems to be under way, as my iBook is now acting up, first refusing to admit it has am airport card installed (which breaks my wi-fi connectivity), then refusing to admit it even has an ethernet cable connected to it when it does have it (which breaks my wired connectivity) and then deciding to stop recognizing the trackpad sometimes. Isn’t it nice? At least it still knows it has USB ports and I’m cloning the relevant parts of my disk to an external drive as I write this.
    Poking around the logs the only thing I could see that was wrong was that it gave out an error message about not being able to load the network system’s kernel modules on startup. Then I always have an error during the login procedure (for every user) which means it couldn’t start up the NetInfo services. Then I noticed some of my settings where lost, such as the keyboard layout, of which one out of three layouts I had chosen where gone.
    It may be the disk, it may be the controller, it may be the logic board… All I know at this time is that the hardware test app doesn’t find anything wrong with it at all. Typical…
    So on the remote chance that it may just be a screwed-up filesystem, I’ll format the drive and reinstall everything from scratch, see if that helps. In a way it would be great that it did, but on another level it would be very bad that it did. This is a *nix system after all, things are not supposed to just go awry so bad that you have to format and reinstall. We have another group of OS for that.

    Oh well, on with things…

    About this entry

    Originally written on Jul 27, 2005 @ 11:09
    Read article on it's own page (permalink)

    Books and video shooting in the dark

    The title may be a bit misleading…

    I wanted to try out the video camera’s night mode and decided the best way to do it was to just use whatever subjects I had around me in the house at the moment.

    I was in the office and my main bookshelf is there. I love reading and I love books, so there was plenty of opportunity to film there…

    So there you have it.

    About this entry

    Originally written on Jul 24, 2005 @ 20:06
    Read article on it's own page (permalink)

    Beach sighting on my daily drive to work

    One of the things I like best about living where I live and working where I work right now is the fact that I have to drive to work and I am able to do it via a route that follows along the coast-line for the majority of the way.

    I love the sea and I’ve always been near it. I guess I’ve been lucky. So my rides to work and back from work are something I deeply enjoy and never stop to cherish.

    Someday this might well change so I figured this would be a good opportunity to make a small video about some of the beaches I pass on my way to work and the sights I see.

    The road I take is called “Marginal” and it goes all the way from Cascais to Cruz Quebrada (or very near it, I’m not exactly sure where that road ends and the next one begins). For the most part it follows the sea into the river Tejo’s estuary and although I get on the road nearly half way there (in Parede) I still get to have the company of the sea for quite some time.

    This, then, is an experiment in video making, editing, and videoblogging in general.

    About this entry

    Originally written on Jul 23, 2005 @ 18:01
    Read article on it's own page (permalink)

    It’s Scott’s fault!

    I’m sleepy.

    I stayed awake way longer than I should yesterday and it’s all Scott Card’s fault.

    I started reading Ender’s Game and couldn’t bring myself to stop reading for a long while.

    On the one hand I feel sorry it took me so long to find out about it, but on the other hand I get to have some great reading now and that’s great.

    I wonder how this could have slipped under my radar for so long, but then when I was a teenager things were quite different and I didn’t have the Internet to dig this things up…

    The book has been on my “to read” pile for almost a year now and I feel that I will be adding to it shortly with the rest of the books on the Ender saga…

    Technorati Tags: ,

    About this entry

    Originally written on Jul 22, 2005 @ 11:46
    Read article on it's own page (permalink)

    iMovie HD

    Lest I forget, after my initial bout with iMovie I’ve been trying out iMovie HD —the newest version— and, so far, there doesn’t seem to be that many new things.

    Of course there is the HD and 16:9 format support, a couple more sound effects and a few more transitions and image effects, some controls where moved on over to the effects group (like clip speed, for example) so a few changes did occur, but nothing really groundbreaking.

    Yes, support for the new formats is a big deal, indeed, but on the application front itself there where precious few developments.

    Still, it is a good app, as I’ve said before, so what can you improve on it without biting into the Final Cut pie?

    Oh, and as far as I’ve seen until now, 16:9 is definitely my favorite format for video creation. I can capture it in native format in the camcorder and iMovie eats it up like a charm. I guess I like it better because of my photography background, I’m used to think of the world more like a rectangle than like a square (and yes, I can do my math, 4x3 is not a square, you know what I mean, get off my back, will ya?)

    Still now, as before, iMovie is a great app. I’ll be kind of sorry if and when I outgrow it.

    About this entry

    Originally written on Jul 22, 2005 @ 00:07
    Read article on it's own page (permalink)

    Video

    I’ve been kind of quiet here lately as I’ve had many things to keep me busy, but the good part of it is that many of them are actually fun.

    One of them is playing around with my new Canon MVX330i.

    Another one is getting to know about the videoblogging scene and how to get into it to try it out for myself.

    On that front I must say I found it pretty easy to get going once you find the right group of people.
    In my case I was looking for the cool Creative Commons tag clip that Steve Garfield adds to the end of his videos. So I just wrote to him and a few minutes later I had a reply essentially pointing me to The List. Steve seems like a really nice guy, by the way, and was really helpful. Thanks Steve!

    The videoblogging list is a Yahoo! groups mailing list regarding videoblogging (what else…) which is filled with people who really know what they’re doing and are really helpful to beginners. I didn’t even have to actually post any questions there, just by searching through the archives and the documentation and files related to the list I was able to find answers to all my questions.

    Great stuff.

    Now I’ve cobbled together a video which I will post as a first try at videoblogging but I still have to hammer enclosures into my feeds, so it may take me a couple of days more (or maybe not, I laid eyes on a plugin for Movabletype which seems to do what I want for my RSS2 feed. The ATOM feed will just go without it for now…)

    So I’m almost there, trying my hand at videoblogging.

    The time I spend preparing the infrastructure will not be wasted, as I already have footage for maybe one or two more posts (erm… video posts?) so by the time I’m actually able to post I’ll just have more content.

    Oh and just for the record (read: big disclaimer), I am a Geek, I love tech stuff and I know about it. But I am no artist, not by a long shot. I love photography, music and possibly video editing, but I really have no clue as to what I’m doing in this department.
    On the other hand, many people who are videoblogging right now (from what I’ve been seeing) are actual artists and professional editors and so on and some really wonderful stuff is being produced and put out there, you just have to look for it.
    So I figured I might just as well get on the boat now and play around for a bit until the big wave hits and many people with actual talent come into town and then I’ll probably just quietly take me leave. Unless I’ve become hooked on it.

    Either way, watch this space, as it were, and when they come, download and watch at your own risk! :-)

    Technorati Tags: , ,

    About this entry

    Originally written on Jul 21, 2005 @ 23:53
    Read article on it's own page (permalink)

    Today’s update for Mac OS X

    I don’t know if “surreal” is actually the best word to describe this, but if it’s not, then it must be very close indeed…

    This evening when I turned on my iMac G5 at home up popped the Software Update window with a new update I hadn’t seen all day on my iBook.

    In fact the update is iMac G5 specific and the title is “iMag G5 Sleep Light Update”.

    That intrigued me, but it was a specific iMac G5 update so of course I went on and installed it but before, as always, I read the description. And I just couldn’t believe my eyes…

    The update, then, makes the sleep light on the iMac go fainter in the evening, while maintaining the usual brightness during daytime.

    Yes, that’s right, I’ll repeat that: the little pulsating “I’m alive but sleeping” light will pulse as brightly as ever during the day but will be softer in the evening.

    Sometimes Apple just cracks me up! It almost (but not quite) makes up for the nightmarish distribution problems they have around here. (Not quite, no, I’m about to give up on buying my Mac Mini, after almost 5 months’ wait for one with a memory upgrade. Grrr!).

    So, surreal is not that far off, is it?

    Technorati Tags: ,

    About this entry

    Originally written on Jul 21, 2005 @ 23:48
    Read article on it's own page (permalink)

    The question…

    Will I ever be able to post something on my weblog and not have to re-edit it a minute later for some typo I found out after the fact or some minor point I forgot to make, I wonder?

    Sheesh!

    About this entry

    Originally written on Jul 17, 2005 @ 23:21
    Read article on it's own page (permalink)

    Another weekend gone by in a flurry of multimedia creations

    Spent the better part of the day with Tuxa making some photos of her bead works.

    They didn’t turn out half bad, actually, especially considering that my “home studio” is as improvised as you can get and most of the props are held in place by hand by Tuxa herself. Still, we all have to do our bit and suffer for our art…

    What I didn’t have time to work on, though, was on the footage I collected yesterday during my evening walk on Sintra’s “Parque da Liberdade”. Now that I have got me a new toy I was so eager to try it out that I took it for a test drive without even having read the manual first… Well, these things are supposed to be easy to use. And indeed they are, I think I have some good footage for a short movie, judging from what I saw while importing it all to iMovie. Still it took me long enough to figure out the right combination of camera and iMovie settings that allows me to work with DV 19x6 format. The trick, by the way, is to create the new project in that format and then import the footage you captured in that same format with the “Automatic DV Pillarboxing & Letterboxing” turned off, otherwise it will shrink your footage until all you have is a really narrow band filled with really fat dwarves.

    Anyway today I also collected some footage of the photo-shoot session so will be able to make a “making of” of the pictures. Family loves that stuff and I get to practice.

    A nice relaxed weekend all around.

    Well, except for some friends who send other friends some MMS messages with nice pictures of their home and try to make you jealous. Well, just so you know: it worked, OK? ;-)

    Oh and I almost forgot, I seem to have reached some weird limit on iPhoto at around 11200 pictures. It just started to act really crazy on me (mind you, painfully slow is no longer crazy, it is just normal at this point) and started bombing out and doing strange and unpredictable stuff to my photos. It is definitely time to look for something better for long-term storage, indexing and handling of pictures. I guess at my rate, iPhoto is good for maybe a year or so of photos, everything else will have to go to some beefed up app. I did try, I was really happy when iLife’05 came out with the new iPhoto, but it just doesn’t cut it for me.

    About this entry

    Originally written on Jul 17, 2005 @ 23:13
    Read article on it's own page (permalink)

    WebDAV woes… actually Winblows woes to be fair.

    I know this has been beaten to death but I just have to join the mob…

    Oh my God!!

    Windows’ (XP at least) implementation of the WebDAV protocol is just soooo lame!

    Every other single client on the world can connect to a plain and simple Apache2+mod_dav2 combo without a hitch. No problem at all. It just works.

    Now try and get your apache2+mod_dav2 WebDAV server to do all the show and dance that the Winblows client requires in order to work and you’re in for one hell of a ride!

    Anyway, for the brave souls that wish (or must) take this painful road in the future, you may find my notes on getting it to run in an acceptable way (not the full monty, at least not for now, but something you can at least use) in my wiki.

    And may you be blessed with a ton of patience, you will need it.

    About this entry

    Originally written on Jul 15, 2005 @ 17:47
    Read article on it's own page (permalink)

    Férias diferentes

    Aviso à navegação: post intimista e obscuro, podem ignorar em segurança.

    Terminaram as minhas férias de verão.

    Viajar é, provavelmente, a maior das minhas paixões, sempre que posso aproveito as férias para viajar e conhecer sítios novos ou rever locais que me agradam particularmente. Pode-se dizer que é o meu maior hobby.

    Habitualmente volto das minhas viagens de férias de rastos, depois de calcorrear muitos quilómetros seja onde for que tenha estado. Cansado mas feliz, claro.
    No entanto, desta vez optei por umas férias mais “tradicionais”.
    Andei por Portugal —uns dias em Caminha, uns dias no Algarve e finalmente uns dias no Alentejo— e fiz sobretudo descanso.

    Fiz muita praia (muito mais do que costumo no verão inteiro!), passeei, descansei muito, até dei por mim a dormir sestas de tarde, algo que nunca fiz na vida sem uma razão extrema.

    Foi bom.

    Mas isso não foi sequer o melhor. Estas férias foram uma altura de reavaliação e de reencontros.

    Há alturas na vida em que é preciso parar e pensar. Esta foi uma delas e, até ver, correu muito bem. Agora é fazer os reajustes necessários e mudar atitudes e, sobretudo, o modo de encarar alguns pormenores da vida do dia a dia.

    É preciso dar a importância ao que é realmente importante e deixar o que é secundário nesse papel.

    Se isso for feito tudo o resto acaba por encaixar no seu lugar devido e as mudanças mais positivas acontecem por si.

    Eu avisei que era intimista e obscuro… É o mood das férias. :-)

    Mudanças (para melhor) esperam-se e desejam-se. E as melhores são as que acontecem espontaneamente, sem forçar. Sinto que se avizinha uma época boa.

    E em Outubro New York, New York de novo!

    About this entry

    Originally written on Jul 11, 2005 @ 10:42
    Read article on it's own page (permalink)

    The learning process

    In this post I present some thoughts about the way people around me and myself learn new things. Specifically, how to go about learning new programming languages from the perspective of an experienced programmer.

    The boring introduction

    When I was learning to program computers for my own entertainment I did it because there where things I wanted to accomplish with the computer. It was fun to do it and I was eager to learn how to do it and experiment with it, but in order to learn I always tried to do something “real”. Later on in school I took a subject on computer programming and there I learned a new language (Pascal was the language of choice at the time) and, of course, I had assignments to do. Now both my own goals and the assignments where very helpful because they made me focus on experimenting with the language rather than scatter my thought about what to do with it.

    Especially at school, the method I was taught with was one which fit me very well: the teacher would dictate a section of the text-book to us (we didn’t actually own the text-books, the only material we had was the dictations he gave us). Then he would go over that section again, maybe on the next class, and explain things in detail, give examples, and so on. I had a notebook which I kept thoroughly organized, with the theory the teacher dictated and then examples, tips and tricks, notations on the side of it, next to the relevant bits, the works.

    Then there where the class assignments, which where very helpful because, not only where they aimed towards being best accomplished with the parts we had just learned about, but they provided laser-sharp focus for thought. The fact of the matter is that I was lucky. While most kids where getting to grips with the notion of algorithmic solutions and language constructs I already had some notions of all that and I could take each assignment as a personal challenge: I had to find the best way to do it for whatever measure of “goodness” I chose. The “Best Way” could be the fastest, or it could be the one with less lines of code, or even the more “elegant” way. This last concept of “code elegance” actually caused not a few frowns from my colleagues who considered themselves lucky to have hammered together an answer in as little time as possible and then got on with playing ball or talking about clothes and hair… :-)

    But anyway, I got to experiment with the language, a bit at a time, adding more bits as I learned them and experimenting with multiple solutions for a given problem, learning the best way to solve each issue and combine solutions in the process. I had all the time in the world to learn it and it counted as homework, not “fun and games” time. What a bonus!

    Real life

    Fast forward to this day, many years later, after having gone through a computer science course in university and a number of years on the field, not actually as a full-blown programmer, but mainly as a systems architect which also does quite a bit of programming.

    Things are a bit different today. There are, of course, new languages springing up every so often and some of them are actually quite appealing. Now after a respectable number of years on the field I am much more able to grok a language by skimming through some discussions and explanations of it and talking with people who use it. Algorithms are the same in every language, data structures are more or less equivalent across them (yes, I know I’m generalizing like crazy, but if you take a high-enough view of things it tends to look like this) and in the end, taking into account the big “classes” of languages and their fundamental differences (which I won’t go into here) you are left with the choice of the best language for each specific task you want to tackle. Some make it easier to work with a given data structure you wish to use by providing better modeling for it, others provide the control structures you need to use and so on, but in the end, if you put enough effort into it you can solve most problems with almost any language you care to use.

    How do you make a choice then? Well, it isn’t enough to just read the blurb, talk to some programmers and see a few “hello world” examples, you really have to know the language you are contemplating in order to ascertain if it is indeed better than the other ones. (Almost) all of them can do it, but one may be better. The problem is that being better is probably in the details so you really have to know your languages.

    And then, of course, some people like to learn new languages just for the fun and challenge of it. Nothing wrong there, I find it very entertaining actually.

    The problem then becomes how you can go about learning new languages, with the limited time you have at your disposal, and with the tools you already have installed in your brain.

    I found that myself, and people I know, usually take one of the following approaches:

    By the book

    People like Melo take the “read the book on it” approach (link to the post about reading the Ruby book).

    This method assumes you can actually read through a book on a new language and probably without writing a line of code (remember the time constrain), be able to get all the relevant information into your brain. I couldn’t do this when I was younger and I certainly cannot do it now, if I don’t experiment with it somewhat it just doesn’t stick.

    On the other hand, assuming you get a good book, this way you get the most important facts and techniques on the new language and you can map your mental tools, best known algorithms, tricks and so on onto the new language and also get a structured and correct insight into the right way to do things with it.

    You’ll end up using the language more efficiently and making things work with the least effort.

    Just do it

    Other people, like Rui Carmo take the “tackle a real project with it and enlightenment will come your way” approach.

    The typical hands-on approach, where you sit down with a task or assignment, some tutorials, examples and/or cookbooks for the specific language and just start trying to write the code you want in it.

    Things you learn this way tend to stick better in your brain (in my case at least) and the difficulties you encounter trying to map your mental tools into the language and the way you solve those problems will give you a good insight into the language’s capabilities. Of course I’m talking about a non-trivial and especially interesting assignment. For all the tradition they carry around, “Hello Worlds!” are rather useless as a learning experience in any language you care to think of.

    On the other hand, this way you may (and usually do) and up trying to coax your way of doing things into a language which may have other, more efficient ways of doing them. It is not that rarely that I find a piece of code on a language I know very well, which is behaving or performing badly. Upon examination of the code, I can immediately tell which language the programmer that wrote it used to work on. After that it is usually a matter of minutes the re-writing of the offending piece of code to make it work better/faster/whatever. Clearly the programmer might have been a good programmer on the other language and even a good programmer “per-se”, but not knowing the language in enough depth made his code sub-optimal, even if it did work.

    The rhyme and the reason

    So properly learning a new language is rather important if you’re ever going to use it, but learning it properly takes time and effort and not everyone can afford to spend that time. What is the best way to do it then?

    Personally I like the book approach a lot, because someone who already knows the programming concepts can get the right idea about their implementation on the specific language and can then be more effective when writing code in it. You just do things right the first time instead of battling with the language to make it do what you want in what can turn out to be the wrong way to go about it in that specific language.

    But then, given the shortage of time people (and me in particular) have to devote to these things, spending the time reading about rather than doing it is rather painful and, of course, geeks love to play with things hands-on don’t they? I mean, learning what was inside the radio was interesting, but not half as interesting as actually opening it up and seeing for yourself. Even if there where some pieces left over after re-assembling it… :-)

    Gone are the days when I was a good boy for working so hard on my homework assignments and was spoon-fed with the language facts at school, while left with enough time to play around with it afterwards, so I guess the mixed approach is the way to go now: find a good introductory book on the new language, find out the interesting chapters in it and read them with care (typically a good introductory book will explain how you work with general structures and how you implement some basic algorithms you already know, while giving some light insight into the inner workings of the language and why this way of doing things works best). Then choose a project (your assignment) and go for it using the new language. If you can get a “cook book” for the language it is really helpful because you will then learn about different ways of solving each problem you have to solve and why one way is better than the other for a given situation (assuming, once again a good “cook-book”).

    This way you get the benefit of the “lecture” from the text-book and follow it with some useful hands-on experience. And the key here is useful, because if you just try and follow the introductory book’s assignments you end up ditching them because of lack of time and never actually get around to using the language properly and getting to know it better.

    Anyone has some thoughts or tips on this topic?


    Note: This has been sitting in my laptop waiting to be finished for quite some time now. Fortunately I was able to find the time during my vacation to write some more, but I still think the overall post is a bit confusing. But then, I don’t want it to just sit here and rot so I’ll just post it and get it over with. Hey, I’m on vacation, just relax! ;-)

    Technorati Tags:

    About this entry

    Originally written on Jun 30, 2005 @ 23:09
    Read article on it's own page (permalink)

    The whole desktop video editing scene

    Phew! What a ride I’ve been on since late last week!

    After struggling to get something done on Flickr-Tools late last week I’ve then had a rather full weekend. First, on saturday, there was the wedding of one of my brothers-in-law, then there was the show we put on for the end of the dance-school year (32 years old and I’m doing this kind of stuff… And I’m in the lowest half of participants, age-wise). After the show I went back to the wedding so the day was a rush. Then on sunday there was a second running of the show… Busy, busy, busy!

    But I digress, the main point of this post is to talk about my experiences with desktop video editing. So anyway, I’ve been flirting with this particular media format for a while now, but never got around to doing anything tangible on the actual video front and kept myself pretty much to slide-show type stuff (for a very loose definition of slideshow that is). So following the advice of people who know their stuff (even if the advice was given for a slightly different field but hey, good practices are universal anyway) I’ve decided that this weekend’s shows were the perfect opportunity to get myself some hands-on experience in the area by means of an assignment. So I just took my parents’ miniDV camera with me to the backstage and told everyone I’d make a DVD of the whole event for them (committing to yourself is just fine, but it helps to commit to others also) ;-). Now I’ve had my father record the show itself on saturday, another person recorded the whole event (our show and all the others) on sunday and then I shot my own footage backstage.

    So now I had footage of the show itself (two instances of our own show and one of the whole event), some 20 minutes of footage of our group, a few pictures taken saturday on the backstage and some other pictures taken a while ago on our last exam. Sounded good so I decided to go with that.

    People who know me and/or follow this weblog know I’m a Mac user for some time so, naturally, I decided to use iLife tools for this particular job. I didn’t want to go with fancy stuff and it’s steeper learning curve so I opted for the basics —iPhoto, iMovie, iTunes and iDVD. Oh, and I also had to use Garage Band for a little sound editing. It was way overkill for what I wanted, but it was just sitting there and I had never used it, so it sounded like a good opportunity to just fire it up and see if I would be able to use it for the first time and get it over with in under 5 minutes. It’s Apple software. So I was.

    The experience was a pretty good one. Even using nothing but what comes pre-installed on a new Mac I achieved some pretty amazing results (given the time, effort and talent available, of course). So following are some thoughts, notes and just general ideas about using the iLife suite to create a truly home-video style DVD. This information will eventually be ported to the wiki, but since I want to revamp it in a major way it just sits here in the weblog until I come for it.

    And now, without further ado and in no particular order, some notes and thoughts on iLife ‘04-based desktop video editing:

    • iMovie is quite limited in it’s raw video editing capabilities. This is a good thing for people like me who have lots of crazy ideas and absolutely no experience whatsoever with this kind of media. It keeps me in check and lets me get things done in a “good way” instead of letting me get bogged down in menus and buttons trying to make it the “perfect way”. The “good way” turns out to be pretty good almost all of the time, actually.
    • iDVD is very limited in what it lets you do to the structure and menus of a DVD. This is not so hot. I know the DVD itself has a lot of stupid limitations, but there are tools out there which allow for a lot more flexibility than iDVD. Still, it gets the job done, for the most part, even if you have to nudge, push and kick it in the right direction over and over again sometimes…
    • In iMovie, when you cut out a piece of a clip whose speed has been altered, take the remaining piece back to it’s normal speed and then back again to the faster/slower speed or else iMovie won’t take the piece out of the sequence and weird things happen.
    • Why oh why can’t I make a theme (and I mean a full theme, not an adaptation that I then save as a favorite) in iDVD? Huh? Why can’t I see or edit the grid position for items on menus? And why can’t I assign the browsing order to the items on the grid? Whyyyyyyyy?
    • iMovie will crash on you when you’ve been at it for a number of hours. Even with a good CPU, plenty of RAM and so on, if you’ve messed with your clips until they cannot be recognized, you edited the hell out of them, you’ve cut, pasted, undid it, did it all over again, synced audio, un-synced it, messed with it’s volume, added pictures, changed clip speeds and all that jazz then you should really just save your work, close iMovie and open it up again. It’s only happened to me once, but I lost maybe one and a half hours of work and it took me another 45 minutes or so to get it back (it was easier, of course, because the decisions where already made, I just hat to do it again).
    • Re-doing your work for whatever reason (yeah, even because of software crashes) does have it’s advantages. Things really turn out better the second time around. The morale tends to slip a bit, but in the end your work is a little bit better. Of course after you’ve done this a million times and you are already really hard-core with the software this will probably just get annoying to death, but then you won’t be using these apps anymore, now will you?
    • In iDVD’s menus just KISS. iDVD has it’s own structure of menus and menu grids (which are very helpfully hidden by the way) and it will make a royal mess of things if you just give up on it’s (often idiotic) automatic placements of items and try to go the “manual placement” way. Just either use it’s default themes and find one which has a good placement matrix or, if you really must go with a “customized” theme (as I had to because I am one of those persons) make the menus as simple, nay, spartan as you possibly can and then keep insisting on the proper location of the items each time you visit that particular page. You will not get the items exactly where you want them, oh no, but eventually they do settle in a place which is “good enough” and it’s 5 in the morning and you have to get up for work early and suddenly it just looks OK. Seriously, this is major, major hassle and the one case where the apps’ “good enough” is far from good actually.
    • Do try out the DVD in a living room DVD-player before committing to more copies of the DVD or to declare the project “done”. The DVD player in Mac OS X is very forgiving as regards to actual viewable screen-size. Living-room DVD players are not. Also, the “show TV safe area”, while helpful as a general guideline, errs on the side of caution. If limits where like it shows you you’d have no room in the TV to view your movie. I aim for the middle ground and it seems to work out pretty well.
    • Given enough media with good (DV or somesuch) quality, encoding the assets will take time. Plenty of it. Get ready for it.
    • iMovie uses a kind of “movie” file which is miniscule but seems to be (and as you may be able to tell, I am definitely not an expert here) essentially a collection of indexes and pointers to other media files. Quicktime and all of it’s derivatives can play this file as if it where a single movie, which is rather cool. Now for the not so cool part: when you “export to iDVD” from within iMovie, what it will do is create a folder called “Shared Movies” on the project’s folder and, inside it, another one called iDVD. Therein it will create one of those tiny “movie” files pointing to the movie you are currently editing. This is cool because every change you make to your movie is immediately reflected on the movie you see in iDVD. Now even if you don’t export to anything, iMovie will also create a similar file on the project’s root folder. Same name, same content. What sometimes happens is that the root folder’s version of the “index” movie will get updated but the one on the “Shared Movies” folder will not. Not fun. Not at all! Of course, just copying the file over solves the issue, but most certainly defeats the purpose of the whole system…
    • When you throw media inside your DVD just throw it with the highest possible quality. Worry about available space later because iDVD seems to be perfectly able to manage the DVD’s space and compress accordingly if you use the right setting (encode for top quality instead of encoding for speed). This is, obviously bound to some common sense, the medium does has a fixed size limit.
    • It is possible to have a movie with chapters et al in a folder (not on the main page). Just create the movie in iMovie (or whatever) and then import it (in the case o iMovie import the tiny “movie” file) into the menu you want it to be on. iDVD will create two links for you: one with the movie itlsef and another to a folder with the links to the chapters.
    • It appears that you cannot create new pages for the chapters links in iDVD. So if you import a movie with, say, 10 chapters and iDVD makes them fit on two pages, should you want to have more pages with fewer chapter links in them you’re basically out of luck. I just cannot beleive that this could be possible, but the truth is that I did not find a way to add an extra page (and make it be linked with the “next” “previous” arrows) anywhere. If you can do away with the arrows then you can create folders and just cut and paste the chapter links, but you loose the arrows. Also you cannot create links to the chapters yourself, should you delete a link you’ve lost it for good. These items are just so dumb that I’m praying that someone will tell me what an idiot I am that I didn’t figure out that the way to do it is this and that. I can only hope…

    These are some of the main points I gathered from three nights of precious little sleep but much fun editing my footage. Take everything I said above with a very large grain of salt. I usually know what I want to achieve before trying to materialize it and in this case I have no clue how to get there, so I just try to coax the software into doing what I want. Sometimes it works, sometimes it doesn’t. Other times I give up, let Apple take me by the hand and I’m pleasantly surprised. A few times (luckily very few of them) I just can’t do what I want and hit some twisted bug, misfeature or just a plain limitation of the software. When it is a bug or misfeature it is annoying but I can live with it. When it is a limitation, well, this programs are pretty basic stuff and the goal is for your granny to be able to use them, so it doesn’t bother me in the least. If I come to a point where I think I am able/want to take the heat I’ll step into the kitchen and get Final Cut or some-such. Until then I’m perfectly happy with my “basic consumer” stuff.

    I may be adding things to the above list until I make a wiki page out of it. Or, then again, maybe not.

    About this entry

    Originally written on Jun 23, 2005 @ 00:59
    Read article on it's own page (permalink)

    New version of Flickr-Tools

    Since I know I’ll be off-line and unable to do much development on the next few weeks, I’m trying to get as much features as I can in there right now, so even small enhancements like the ones I did today are going to be pushed out to CPAN as a new version.

    Release early, release often, they say…

    For version 0.02 I cleaned up some documentation bugs (yes, I do take some care with the documentation) and added a couple of methods which where no brainers to implement but I hadn’t had the time to put in there.

    There is at least one other method which would be really useful (get the list of all the photosets a given photo belongs to) but I’m waiting to see if the good folks at the Flickr API developers team can give us that method so as not to force me to do a lot of API calls just for this one. I do hope they find the time, but with all the buzz surrounding the new auth specs proposal I’m not that confident they will. First things first, I guess…

    Anyway, let’s see how much more I can do before going away on vacation at the end of next week.

    Technorati Tags: , ,

    About this entry

    Originally written on Jun 17, 2005 @ 18:34
    Read article on it's own page (permalink)

    Flickr-Tools is up on CPAN

    Well, that’s just it, Flickr-Tools is up on CPAN and should be made available any time now.

    I’ve decided that I just can’t sit on it any longer. It is far from complete but I’ve just looked at a big thread on the Flickr developer’s mailing list with the promising title of “Big changes to the Flickr API” and which I’m guessing has something to do with the authentication methods or somesuch.

    So, given that I’m rather pressed for time as of late (contrary to what I’d expected, sigh…) I’ll just post it as-is, limited and all, and start work on version 0.02 ASAP.

    As it is, it already allows people to get information on persons, photos and photosets and to manipulate high-level…ish objects with this info.

    With the modules structure I’ve put in place it is really easy to add support for more core API methods so now it is mostly a question of filling it up with what’s missing.

    Oh and I have to read the thread carefully to see how the authentication stuff will be handled (if that is what the thread is really about).

    Getting this out the door is basically a way to get some testing for free on other platforms and to give anyone out there curious enough about this a chance to see my main design ideas for this distribution, so suggestions are always welcome. Help in the form of code is also greatly appreciated, but I’m not holding my breath… ;-)

    Technorati Tags: , ,

    About this entry

    Originally written on Jun 16, 2005 @ 17:55
    Read article on it's own page (permalink)

    The big weekend

    Yesterday was a national holiday in Portugal and Monday will be a regional holiday in Lisbon, so this weekend is a whooping 4 day mini-vacation.

    So yesterday I’ve spent most of the day working away on DVDLX. PHP really starts to suck after a certain level of complexity! I knew that already, but it is always bad when you have to go through it again. Still, I have no great choice in the matter at this point so it does no good to wallow in it…

    Even busy as I was I caught a movie on TV, at dinner, and ended up watching it all the way through. The movie was Phone Booth (IMDB) and I’d never seen it before. What a great movie. Truly riveting!

    So today it’s relaxing day and I’m going for a drive with Tuxa. Not sure where we’ll go, we’ll just get on the car, take out the map and decide.

    About this entry

    Originally written on Jun 11, 2005 @ 12:15
    Read article on it's own page (permalink)

    Week’s-end

    Flickr::Photo is good enough to go. Flickr::Person is also good enough to go. Flickr::Photoset is almost done. The underlying modules and classes are also OK for the first beta. Just a little bit more clean-up and I should be able to post it in a day or two. Thank goodness for that!

    On a totally unrelated story, today something funny happened to me. For the first time I experienced something which made me laugh my head off: software update woke up, as usual, and noted that there was a new security update for panther (yes, I’m still using panther). Of course, being in the office with great connectivity I told it to install the update immediately. So a-fetching it went, until it got the update on the disk and started to do the actual installation. And then the “software update” program just died. It just bombed out! The software update program! It cracked me up! Now of course I have no idea whether the update actually got installed or not, but running the software update by hand tells me that there’s nothing new out there so it must be… Oh well, if we are going the Intel way we may as well start to act a bit more like Windows… :-)

    So far I’ve been able to resist the temptation to go out and get myself a video camera to fool around with and make some stuff happen on iMovie and iDVD. Maybe I just need to borrow my parent’s camera for a few days and lug it around to make it forget about it once and for all. Then again maybe I’ll just get hooked but then I’ll now for sure I must get one. Oh well…

    Oh and another tidbit: the batteries on the iPod do empty out! Just discovered that as I was leaving the office and the thing died on me. So no podcasts on the way home for me this time, just plain old radio. Which serves the important purpose of reminding me why I love my iPod so much while driving around!

    Technorati Tags: ,

    About this entry

    Originally written on Jun 09, 2005 @ 17:17
    Read article on it's own page (permalink)

    And so it goes

    This has been quite an interesting day…

    First off I went for a swim at lunch break at the big pool (50m olympic-style).
    Man it feels good to swim there. Glad to be in sufficient shape for it again. And I did get my 1000m time down by a few minutes in there, so not a bad run altogether.

    Getting back to old, half-finished code is a pain! Even if I only left it for a few weeks. Anything unfinished will take me so long to get back into the swing of it again… Sheesh!

    And Pedro (who was tracking the event) is rather hysterical about Apple’s announcement of leaving IBM and going with Intel in a year from now. But even in his state of agitation he still got the funniest part of it all. Oh the unfortunate things geeks say sometimes… :-)

    And now gotta get home as my parents are coming by for dinner and my father is bringing the laptop and the DV camera for the first session of desktop video editing phun.

    About this entry

    Originally written on Jun 06, 2005 @ 19:50
    Read article on it's own page (permalink)

    Upgrade

    I almost forgot about this: I’ve upgraded this weblog’s software. It is now running on Movable Type version 3.17 (upgraded from 3.15).

    As a drop-in replacement upgrade everything should be just fine and dandy. But then we all know how this things tend to go so if you notice anything wrong with the weblog do let me know. Thanks!

    About this entry

    Originally written on Jun 06, 2005 @ 16:59
    Read article on it's own page (permalink)

    Catching up

    My, my, I just turn my attention the other way for a bit and all of a sudden there’s a gap of more than 10 days in the weblog…

    Well, I’ll just make a quick recap on how things are going, then. I have a feeling this can potentially turn into a rather long post so I’ll try to keep it short and to the point, in an itemized sort of way.

    First off, the Perl Flickr API is just the same as it was when I last wrote about that. Some other stuff has gotten in the way. I do have a deadline I’d like to respect for it, since I’ll be going away on my summer vacation in a couple of weeks and I don’t expect to do much coding or to even have any sort of connectivity while away. So expect to have the first version up on CPAN by then, followed by a nice two weeks’ silence from me.

    I’ve been a bit swamped at work which has bit into my personal time and has thrown me off the track with both the Flickr API project and all the stuff I have to get ready for DVDLX as well.

    Other than that I’ve been listening to a lot of podcasts recently. I’ve discovered the TechPodcasts network and with it a lot of great podcasts to listen to. Thankfully this can be multitasked with doing other stuff, otherwise I’d just have no time to listen to all of it. So now I’m trying to reduce the number of podcasts I listen to from the huge number of potentially good ones I found there, but it takes time to listen to two or three shows from each source and then decide wether it is worth keeping or not.

    One podcast which I did find out about (not from the TechPodcast network, though) is Tips From The Top Floor (RSS feed here). This show is just awesome! Everyday, simple tips for digital photographers. Not extra-advanced stuff, for sure, but just simple stuff which are incredibly useful and which I can use to be reminded of or learn about. It is also short enough to listen to on my commute which is a big plus. Kudus to Chris for a really excellent show.

    Something else that got my already too thinly stretched attention is video blogging or vlogging as people sometimes call it. I’ve taken the easy way into this and just downloaded FireAnt and looked at some of the feeds that come in the default config. Now I don’t think I’ll get much into it since it does take up more time than blogs or podcasts, simply because you can’t multicast it (at least no so much as the other two), but there is definitely some interesting stuff going on there. Then again there is also a lot of trash, but that’s just the natural order of things, I guess…

    And, speaking of video, my father want’s to get in on the desktop video-editing stuff. He has had a DV camera for a while now and shoots tape after tape of my nephew (as any self-respecting granddad should, of course) and being the intelligent person that he is, he knows no one is ever going to watch hours on end of Diogo sleeping, Diogo trying to eat his tows, Diogo crawling around, Diogo eating and so on and so forth. So he want’s to edit all that stuff and just make some cool DVDs with it. Since he and mom recently got a god laptop they now have all he needs to tackle it. Except for the software and the know-how.
    Enter me, who has zero experience with video editing, trying to learn as much as I can about it (strictly beginner level, of course) in order to get dad up to speed and running with it on his own. Now the good thing about this is that I know that if it takes to it he’ll do a great job and we’ll have great family video stuff to watch from now on. The dark side of things being that I’ve always resisted entering the digital-video arena and now with all the studying and trying out of the tools I’ve got in order to help dad I hope I don’t get caught into yet another time sink.
    Must resist the power of the dark-side, even if we both could run the family-video galaxy as father and son.

    Which reminds me, I must go see episode III again!

    About this entry

    Originally written on Jun 06, 2005 @ 12:41
    Read article on it's own page (permalink)

    And we have photos… Almost.

    Following yesterday’s post and in the interest of getting something out as soon as possible, I’ve made some headway into the Flickr::Photo class today.

    Of course this was after some cleanups and slight changes to the Flickr::Person class.

    I can now instantiate a photo object, see (part of) it’s info and get an object representing it’s owner, all auto-magically. Rocks!

    In the mean time, it is a good thing I decided to leave the write part of the read/write equation for later as I noticed today (two days late!) that there was an email on the Flickr developers list informing that the ‘setters’ (the write methods) where changed and that they now all have to be done via POST instead of GET.

    While this makes perfect sense, I’m pretty sure it will warrant some changes in the Flickr::API and until Cal makes those changes I’ll keep the write part on the back-burner. (As if it weren’t already there…) ;-)

    The hardest part of making something like Flickr-Tools is that you just know that the second you put it up on CPAN there will be a ton of changes to the object’s API which will become immediately clear.

    Oh well, release often, release early, warn your users, listen to the community feed-back and all that jazz.

    I really wish I could make the first release during the coming weekend… I’m not sure I’ll be able to do it though, as real life is getting in the way. But I’ll surely try.

    (Did I just say “real life”? Hum… It seems my moo/mud-user personality is trying to take over when I’m not looking!)

    About this entry

    Originally written on May 25, 2005 @ 21:26
    Read article on it's own page (permalink)

    How does it feel?

    This is what was blasting in my car today on the way to work:

    How does it feel
    To treat me like you do
    When you’ve laid your hands upon me
    And told me who you are

    I thought I was mistaken
    I thought I heard your words
    Tell me how do I feel
    Tell me now how do I feel

    Man, I’m old… fashioned.

    About this entry

    Originally written on May 25, 2005 @ 11:04
    Read article on it's own page (permalink)

    We have people!

    I just couldn’t resist and after having finished the first version of the Flickr::API::* classes I just had to try and implement one of the high-level modules to test it out.

    So I now have Flickr::Person full implemented (no tests just yet, though, I went way about this one the impatient way).

    It took about 30 minutes to do it and works like a charm! It was extremely easy to write, it is lazy in getting data and, once it actually has to get any data, it caches it for future reference.

    It’s great when things ‘just work’ like this. Quite a rush!

    Well, but now I’ve got to be a good boy and go to bed, tomorrow I have a chiropractor’s appointment really early and I will pay for staying up late working on this.

    Can’t wait to get the other three modules finished. This version of the modules is read-only (you can only get information from Flickr, and not all available information at that) but once I get it out the door and into CPAN I’ll start implementing the write part of it. And filling in the gaps on the read methods, of course.

    Technorati Tags: ,

    About this entry

    Originally written on May 25, 2005 @ 01:09
    Read article on it's own page (permalink)

    Mock objects

    Mock objects essentially rule.

    With them I can trick my modules into asking my mock object for the data they would receive from a call to a third object (of which I know nothing about, except for the output it returns for a given input) and they are none the wiser about it. This is incredibly easy to do, and I’m not even sure I’m using it in the best and most efficient possible way!

    So I’ve basically put aside the problems of testing with live data, with all that entails about having to have a live connection to the Internet, hopping that the Flickr API is responding, having to setup test data and so on.

    Some people did make the point that this way, should the Flickr API change in the future, my module will still pass all the tests and then bomb out on the poor unsuspecting users. Which, of course, is absolutely true, but it is not what module testing is about. Module testing is about making sure that the code runs as expected on the platform it is being installed on. The API may change in the future, but this is something I have to find out by myself and make the necessary changes to the modules and release them again.

    So now I’ve got a bunch of modules which take the results from the Flickr::API calls and turn them into a saner structure for a few selected calls (no time to do them all so far, but I’ve got the infrastructure set up so now it is just a question of filling up the gaps). All the calls I wanted to include in the first release of the distribution are done. Now to get the higher-level modules working with these and abstracting the User, Photo and Photoset concepts and off they go to CPAN.

    This is actually fun!

    Technorati Tags: ,

    About this entry

    Originally written on May 24, 2005 @ 19:41
    Read article on it's own page (permalink)

    Something new everyday

    The responses to my post yesterday about testing with Flickr, both at use Perl; and here at nowhereland were great.

    I made the post rather in a hurry and right after I’ve come across the issue so I really hadn’t given it much thought.

    Had I thought about it, I would surely have gotten to the solution that some people pointed to, which is that I should just setup an account for testing or even ask the Flickr crew to set one up for the community to use. And that would have been acceptable, even if I weren’t totally happy with it. It would always feel like a kludgy solution which could require tweaking if ever someone made changes to the user data or it’s photos (which people would be able to do given the info on the module’s testing scripts). It would also mean that you’d have to have connectivity when you where installing the module (or force-install it which I’m always loath to do).

    In the end it is a good thing that I did make the post in such a rush manner because another solution came up which has a lot of promise.

    Two people pointed me to the concept of “mock objects” which, as Melo puts it, “represents an ideal Flickr, which always gives me the response I need”. This seems just perfect for this situation.

    So now I have a new goal: learn how to use _ Test::MockObject_ and integrate it into the Flickr-Tools development process.

    Who would have though it? It actually pays off to be lazy! Oh wait, all geeks know that… Right…

    About this entry

    Originally written on May 20, 2005 @ 12:06
    Read article on it's own page (permalink)

    On testing modules

    I’ve been getting some good progress on the Flickr-Tools distro, mainly on the lower-level modules (Flickr::API::Photos, Flickr::API::People, etc). At this point I can already rewrite the pet project which got me into writing this group of Perl classes in the first place, using only these classes. Admitedly this is not much to boast about, but it feels nice anyway… :-).

    On the way I’ve met some dead-ends and had to track back a few times, but nothing too alarming.

    Only now I’ve come across a real stumper.

    While developing the modules I’ve taken the “build your tests before writing any code” approach which is all fine and dandy while I’m working on it, but I just don’t know how I’m going to release the modules with the tests as they are now.

    The problem is that testing anything useful at all requires not only the usage of a Flickr API key but also some rather precise information on a person’s info, a few test pictures, photosets, and so on.

    Of course I’m using my own information for the tests, but I’m not really happy with releasing a module into the wild with all that information on it!

    I know I could just capture the result of the original Flickr API response for each instance I needed it, change some values around and test my modules against that result but that is just evading the problem and a whole lot of extra work.

    I just don’t know how I’m going to tackle this one…

    About this entry

    Originally written on May 19, 2005 @ 20:24
    Read article on it's own page (permalink)

    Depressing times

    Indeed, depressing times…

    Yesterday I filled out and filed in my tax return. It always breaks my heart. It is bad enough each month when I see my salary receipt, but when I actually do the math at the end of the year it just depresses the hell out of me. Not only the taxes themselves, but also the money that goes into social security, which sucks badly for people who are using it today and will not even be there for me when I retire anyway… Well, I’ll not delve into that anymore, I really have no wish to discuss it further, only to forget.

    Right now I’m in the middle of installing all the Perl paraphernalia required to develop stuff in the iMac. I had forgotten what a pain it is to setup a Perl installation to develop XML related stuff. But things are going along at a good pace, nonetheless and soon I shall have Flickr::API and Flickr::Upload installed. I still had to force install SOAP::Lite and I do hate to do that, but I just can’t be bothered to track the problem down, I’ve already done enough of that during this session and I have a splitting head-ache which is urging me to go to bed ASAP, so that’s just how it’s going to stay.

    The upturn of things is that I already have tickets for the Startwars premiere at a mega-screen cinema room. I’ve never actually been on that particular room and some people said that the screen on it is just too big for comfort, but I’m betting on the fact that there is no screen too big for Starwars so let’s see how that turns out.

    About this entry

    Originally written on May 17, 2005 @ 23:30
    Read article on it's own page (permalink)

    More thoughts on Flickr API

    After some more thought (nothing like a bad day to get your brain working in the background…) I came to this conclusions about the classes and namespaces that make sense for the Perl Flickr API.

    First I think there really is room for the two sets of modules/classes I discussed: a lower level one which simply models the published Flickr API directly on Perl structures of hashes and arrays, and a higher level one which models the “logical” level of users, photos, photosets, etc.

    Then I seem to have reached a reasonable naming structure for them. My current plan goes along these lines:

    The lower-level API-mapping classes

    These should go into the Flickr::API namespace and should be named following the Flickr API’s naming convention, namely there should be the following classes:

    • Flickr::API::People
    • Flickr::API::Photos
    • Flickr::API::Photosets
    • Flickr::API::

    Each of these classes should then implement the functions that are published on the API, for instance Flickr::API::Photos::getInfo(), Flickr::API::Photos::search() and so on.

    The higher-level concepts-mapping classes

    Then there are the classes which map concepts such as a user or a photo. As I described in the previous post, these objects should rely on the previous ones to manage the communication with Flickr for them and should implement a representation of all the information that Flickr has on each item.

    The way I see it now, the namespace for these objects should be the base Flickr namespace itself and there should exist the following classes:

    • Flickr::Person
    • Flickr::Photo
    • Flickr::Photoset
    • Flickr::

    I’ve already started writing some code, mainly the tests (aren’t I a good little programmer?) and even though I will be away for the weekend on a small family gathering I’ll try and have something done by monday when I’ll have Internet access again and can try out my code on live data.

    Technorati Tags: ,

    About this entry

    Originally written on May 13, 2005 @ 21:07
    Read article on it's own page (permalink)

    First post

    Well, it is done: my previous entry made me create my first post on my use Perl; Journal. Cool! :-)

    About this entry

    Originally written on May 13, 2005 @ 12:41
    Read article on it's own page (permalink)

    An easier Flickr API in Perl

    Sooo… Last night Tuxa went to a farewell dinner she and her friends threw for a colleague and I was left home alone without the usual many urgent things to do, so I took a stab at the Flickr modules I’m starting to write.

    And now I’m trying to decide which is the better approach to take.

    One possible approach would be to create a Flickr object which has a method for each of the Flickr API calls, such as $flickr->photosgetInfo_ or $flickr->peoplefindByEmail_ and so on.
    The object should then return a hash structure that closely resembles the documented result for that call, so for example the $flickr->photosgetInfo_ method (described here) should return something along the lines of the following:

    {
      id => "2733",
      secret => "123456",
      server => "12",
      isfavorite => "0",
      license => "3",
      rotation => "90",
      owner => {
                 nsid => "12037949754@N01",
                 username => "Bees",
                 realname => "Cal Henderson",
                 location => "Bedford, UK",
               },
      title => "orford_castle_taster",
      description => "hello!",
      visibility => {
                      ispublic => "1",
                      isfriend => "0",
                      isfamily => "0",
                    },
      dates => {
                 posted => "1100897479",
                 taken => "2004-11-19 12:51:19",
                 takengranularity="0",
               },
      permissions => {
                       permcomment="3",
                       permaddmeta="2",
                     },
      editability => {
                       cancomment="1",
                       canaddmeta="1",
                     },
      comments => 1,
      notes => [
                 {
                   id => "313",
                   author => "12037949754@N01",
                   authorname => "Bees",
                   x => "10",
                   y="10",
                   w="50",
                   h="50",
                   content => "foo",
                 },
               ],
      tags => [
                {
                  id => "1234",
                  author => "12037949754@N01"
                  raw => "woo yay",
                  content => "wooyay",
                },
                {
                  id => "1235",
                  author => "12037949754@N01",
                  raw="hoopla",
                  content => "hoopla",
                },
              ],
    }
    

    This kind of approach appeals to me because it gives me access to just the plain data, in a easy way, without all the XML-parser-generated-cruft, in a much more “perlish” way.

    But while I consider this an improvement over the current Flickr::API module (which is great, by the way, and will be used as the foundation for all of this), it may still be too low-level for many people to use.

    So there is another possible approach (OK, there are many other possible approaches but I’m focusing one on in particular) ;-) which is to create a set of higher-level objects which represent an entity like a “person” or a “photo” or a “photoset”.

    Then the user would simply ask the object to instantiate, say, the Flickr user whose email is something@somesuch (using flickr.people.findByEmail on the background) or the photo whose id is someid (using flickr.photos.getInfo). Then, if the user wanted some more information on the photo, for example, she could ask for the lens aperture used ($photo->apperture()) and the object would fetch the EXIF information for the photo in question (using flickr.photos.getExif), load it into the $photo object and return the information.
    A major point to make here is that the object would fetch information in a “lazy” manner, so as to limit the number of interactions it has to have with the Flickr server.

    My immediate needs are more than adequately met by the first approach to the modules and, therefore, I guess I’ll surely implement them right now, but the second approach could be very interesting indeed…
    But then, now that I think about it in a more structured way, the second way depends on the first one to process all the results from the raw API and convert them into useful data, so I may well end up implementing it too in the future…

    What I haven’t figured out just yet is which name-space to use.
    Should I go for Flickr::API::Methods (as in Flickr::API::Methods::peoplefindByEmail()_ or Flickr::API::Methods::photosgetInfo())?
    Or maybe go for _Flickr::Tools

    Or I could go with Flickr::Photos (Flickr::Photos::getInfo() for instance), Flickr::People (Flickr::People::findByUsername()). Actually I think I like this last version best…

    As for the higher-level modules I’m not entirely convinced they should even be in the Flickr namespace at all… But then I don’t have to decide on it just yet so let’s see what my mind is aimed at when I get to it.

    If anyone reading this has any kind of comment, remark, idea, suggestion or tough about the subject I really would appreciate feedback. (Hey, I guess this is the first time I explicitly ask for feed-back here… Let’s see how it goes. I should probably start using the use Perl; journal —which I’ve never used at all— for this though… maybe I’ll cross-post there.)

    Technorati Tags: ,

    About this entry

    Originally written on May 13, 2005 @ 12:19
    Read article on it's own page (permalink)

    So while keeping with my

    So while keeping with my latest “keep fit craze” (actually that’s not very correct, it’s more like a “get fit craze” but let’s roll with it), today I went back to my old love —swimming.

    Since I’ve been essentially a couch potato for quite a long time now, I decided to get back into it very gently. So I decided to try out the gym’s pool which is only 25m, instead of going for the pool I used to swim at, which is an olympic, 50m pool.

    Also I decided to not do a real workout today, but just swim around in the three easy styles and see how I felt and what kind of shape I am in.

    And the verdict was really fast to come by, so here it is, together with some notes and comments:

    • The shape I’m in is bad, of course, but not as bad as I expected. It took me almost half an hour to do a measly 1.000m, but I didn’t die doing it, so that’s not so bad;
    • I absolutely need a scheme to follow. If I just go to the pool and see what happens I will muck around and not do anything useful at all. I’ve felt this before, so this is only confirmation of what I already knew. It’s a good thing I kept a record of my workouts from when I was trying (already without great success) to take swimming seriously. I guess I’ll just have to print out some sessions and stick to that for the time being;
    • The 25m pool really breaks your rhythm when you don’t do your turns right. Of course for now it is more than adequate for me, but I need to build my resistance up to the level where I can swim non-stop (including decent turns at the ends of the pool) for a whole 500m or 600m, which where once my warm-up routine. When (if) I get back to that point I may get back to the big pool at Estádio Nacional in Jamor;

    About this entry

    Originally written on May 13, 2005 @ 10:53
    Read article on it's own page (permalink)

    AJAX

    AJAX is (yet another) acronym which is short for “Asynchronous JavaScript + XML”.

    But what AJAX is about is using a group of technologies which are already out there and which are well understood, and combining them in order to provide better, more responsive and more powerful web applications.

    In a nutshell AJAX makes use of the following technologies:

    • XHTML and CSS for presentation and design;
    • The DOM for interaction with and dynamic display of data;
    • XML (and, of course, XSLT for data manipulation and transmission;
    • XMLHttpRequest for asynchronous data fetching;
    • JavaScript to bind it all together and control everything.

    Resources

    About this entry

    Originally written on May 11, 2005 @ 12:06
    Read article on it's own page (permalink)

    The circus without a clown

    Just came back from the circus. But not just any circus, no, this time I went to see a Chinese circus.

    For the first time in a long, long time I’ve felt like a child. I caught myself gazing at what was happening in the ring, jaw ajar and eyes wide open so many times during the show I just couldn’t believe it.

    For three years I’ve been trying to go and see this circus and there was always some thing or other that got in the way, but this year Tuxa and I decided to just go and the only thing I can say about it is that I feel really stupid about not having gone before.

    I really enjoy the circus and every year I at least go to the Christmas circus, but from now on it will be very difficult to ever again face the “eastern” circus the way I’ve always done. The fact is that apart from the “Cirque Du Soleil” nothing comes close to this. Not even remotely! (And the “Cirque Du Soleil” is a different kind of show anyway so the only possible comparison is in the spectacularity of each show).

    And the best part of the chinese circus is that there are no clowns and no animals! Hurray for that!!

    I won’t go into much detail because today was a rather long day and I’m really tired, but I just want to relate the following story: we ran into an old friend of Tuxa’s at the circus and after the show we talked for a few minutes before the cold drove us away. One of his remarks about the show went something along these lines —“Well, now we know what the Chinese do with at least some of the many superb athletes they have, which don’t make it into their olympic teams”.

    Yes, it really is that good.

    About this entry

    Originally written on May 08, 2005 @ 00:20
    Read article on it's own page (permalink)

    Flickerize My Photolog

    What is This then?

    This page contains a script for getting all the photos from a given flickr photoset and some HTMl and CSS to display them in a nice way.

    Introduction and Motivation

    This script was born out of my desire to use Flickr as a “storage engine” for my photolog.

    I wanted to take a specific photoset from my Flickr account and display those photos as a photolog, on my site, with my own design.

    The best way to do it (OK, it may or may not be the best, but it sure is the most fun) was via it’s API, specifically, the Flickr::API Perl’s API.

    At the time of this writing the script goes out and fetches the information on the photos but doesn’t do anything intelligent with it. It is a work in progress and it is getting late…

    Source Code

    This version of the source code still has it’s own functions to parse the response from the Flickr::API::Response object. This job will be moved to a new set of modules and will be removed from here but until then here it is.

    One more note: this script outputs something which is very specific to my own test site and it expects to have a combination of pages which include the files it outputs and also a CSS style-sheet to make it all look good.

    In this page you will also find the companion files for my test setup.

    #!/usr/bin/perl -w
    
    use strict;
    use Flickr::API;
    use Data::Dumper;
    
    my $DEBUG=1;
    my $flickr_api_key='<YOUR API KEY>';
    my $flickr_username='<YOUR FLICKR USERNAME>';
    my $desired_photoset='<YOUR PHOTOSET NAME>';
    my $api = new Flickr::API({'key' => $flickr_api_key});
    my $local_photos_path='<LOCAL PATH FOR THE SITE>';
    my $local_index_file=$local_photos_path.'/photolistbody.html';
    my $local_individual_photos_path=$local_photos_path.'/photos';
    
    
    # Get the nsid from the username
    my $findUser = $api->execute_method('flickr.people.findByUsername',
               {
             'username' => $flickr_username
               });
    testError($findUser);
    
    my $goodies = $findUser->{tree}{children}[1]{attributes};
    my $nsid = $goodies->{nsid};
    print STDERR "Got nsid: $nsid\n" if $DEBUG;
    
    # Now get the required photoset's ID
    my $getList = $api->execute_method('flickr.photosets.getList', {
               'user_id' => $nsid
               });
    testError($getList);
    
    my $photoset_id;
    foreach $goodies (@{$getList->{tree}{children}[1]{children}}) {
      next unless (defined($goodies->{name})
               and ($goodies->{name} eq 'photoset'));
      my $found_photoset=0;
      foreach my $this_photoset (@{$goodies->{children}}) {
        next unless (defined($this_photoset->{name})
                 and ($this_photoset->{name} eq 'title'));
        if ($this_photoset->{children}[0]{content} eq $desired_photoset)
        {
        $found_photoset = 1;
        last;
        }
      }
      if ($found_photoset) {
        $photoset_id = $goodies->{attributes}{id};
        last;
      }
    }
    print STDERR "Got the ID for the '$desired_photoset' photoset: $photoset_id\n"
      if $DEBUG;
    
    # Let's finally get the pictures from the photoset
    my $getPhotos = $api->execute_method('flickr.photosets.getPhotos', {
               'photoset_id' => $photoset_id
               });
    testError($getPhotos);
    
    my @photos;
    foreach $goodies (@{$getPhotos->{tree}{children}[1]{children}}) {
      next unless (defined($goodies->{name}) and ($goodies->{name} eq 'photo'));
      unshift @photos, {title => $goodies->{attributes}{title},
             flickrurl => photoFlickrURL($goodies->{attributes}),
             localurl => photoLocalURL($goodies->{attributes}),
             flickrthumb => photoFlickrURL($goodies->{attributes},'s'),
             id => $goodies->{attributes}{id},
             secret => $goodies->{attributes}{secret}};
    }
    
    foreach my $photo (@photos) {
      my $getInfo = $api->execute_method('flickr.photos.getInfo', {
            photo_id => $photo->{id},
            secret => $photo->{secret},
            });
      testError($getInfo);
    
      # Get all the relevant data for each photo
      my $info_data = readInfo($getInfo);
      foreach my $data_item (keys(%$info_data)) {
        $photo->{$data_item} = $info_data->{$data_item};
      } 
    
      my $getExif = $api->execute_method('flickr.photos.getExif', {
            photo_id => $photo->{id},
            secret => $photo->{secret},
            });
      testError($getExif);
    
      # Get all the EXIF data for each photo
      $photo->{exif} = readExif ($getExif);
    }
    
    # Finaly write the index file and the individual photo files
    open INDEX, ">$local_index_file" or die "Could not open index file for writing: $!";
    print INDEX "<ul id=\"thumbList\">\n";
    my $index=0;
    foreach my $photo (@photos) {
      open PHOTOFILE, ">$local_individual_photos_path/".$photo->{id}.".html" or die "Could not open photo file for writing: $!";
      print INDEX "<li><a href=\"".$photo->{localurl}."\"><span class=\"thumbNail\"><img src=\"".$photo->{flickrthumb}."\" alt=\"".$photo->{title}."\" /></span><span class=\"thumbNailTitle\">".$photo->{title}."</span></a></li>\n";
      print PHOTOFILE "<ul class=\"photoNav\">\n";
      if (exists $photos[$index+1]) {
        print PHOTOFILE "<li><a href=\"".$photos[$index+1]->{localurl}."\"><--</a></li>\n";
      } else {
        print PHOTOFILE "<li>|--</li>\n";
      }
      print PHOTOFILE "<li><a href=\"ispy.html\">index</a></li>\n";
      if ($index) {
        print PHOTOFILE "<li><a href=\"".$photos[$index-1]->{localurl}."\">--></a></li>\n";
      } else {
        print PHOTOFILE "<li>--|</a></li>\n";
      }
      print PHOTOFILE "</ul>\n";
      print PHOTOFILE "<h1 id=\"photoTitle\">".$photo->{title}."</h1>\n";
      print PHOTOFILE "<div id=\"photoBig\"><img src=\"".$photo->{flickrurl}."\" alt=\"".$photo->{title}."\" /></div>\n";
      print PHOTOFILE "<p id=\"photoDescription\">".$photo->{description}."</p>\n"
        if defined $photo->{description};
      print PHOTOFILE "<div id=\"photoData\">\n";
      print PHOTOFILE "<p id=\"photoDate\">Photographed on: ".$photo->{date_taken}."</p>\n"
        if defined $photo->{date_taken};
      if (exists $photo->{exif}) {
        print PHOTOFILE "<ul id=\"EXIFData\">\n";
        foreach my $exifItemName (keys(%{$photo->{exif}})) {
          if ($exifItemName eq 'cameramodel') {
        print PHOTOFILE "<li>Camera model: ".$photo->{exif}{$exifItemName}."</li>\n";
          } elsif ($exifItemName eq 'shutterspeed') {
        print PHOTOFILE "<li>Shutter speed: 1/".eval($photo->{exif}{$exifItemName})."s</li>\n";
          } elsif ($exifItemName eq 'aperture') {
        print PHOTOFILE "<li>Lens aperture: f/".eval($photo->{exif}{$exifItemName})."</li>\n";
          } elsif ($exifItemName eq 'ISOspeed') {
        print PHOTOFILE "<li>ISO speed: ".$photo->{exif}{$exifItemName}."</li>\n";
          } elsif ($exifItemName eq 'focallength') {
        print PHOTOFILE "<li>Focal length: ".eval($photo->{exif}{$exifItemName})." mm (35mm equivalent: ".eval($photo->{exif}{$exifItemName})*1.6."mm)</li>\n";
          } elsif ($exifItemName eq 'exposurebias') {
        print PHOTOFILE "<li>Exposure bias: ".eval($photo->{exif}{$exifItemName})."EV</li>\n";
          }
        }
        print PHOTOFILE "</ul>\n";
      }
      print PHOTOFILE "</div>\n";
      close PHOTOFILE;
      $index++;
    }
    print INDEX "</ul>\n";
    close INDEX;
    
    
    
    # print STDERR Dumper(\@photos) if $DEBUG;
    
    print STDERR "Got ".scalar(@photos)." photos\n" if $DEBUG;
    
    
    
    
    
    sub testError {
      my $response = shift;
    
      die "Error getting data from flickr: got error ".
        $response->{error_code}.
        " (".
        $response->{error_message}
        .")" if (!$response->{success});
    }
    
    
    
    
    
    sub photoFlickrURL {
      my $attributes = shift;
      my $size = shift || 'o';
    
      # Check out http://www.flickr.com/services/api/misc.urls.html for
      # the URL translation algorithm. At this time it takes this form:
      # http://photos{server-id}.flickr.com/{id}_{secret}_[mstb].jpg
      # 
      die "Error getting photo attributes" unless $attributes;
      my $photo_id;
      if (defined($attributes->{id})) {
        $photo_id .= $attributes->{id};
      } else {
        die "Didn't get a photo ID at all!";
      }
    
      my $server_id;
      if (defined($attributes->{server})) {
        $server_id .= $attributes->{server};
      } else {
        die "Didn't get the server_id from the photo with ID $photo_id";
      } 
    
      my $secret;
      if (defined($attributes->{secret})) {
        $secret .= $attributes->{secret};
      } else {
        die "Didn't get the secret from the photo with ID $photo_id";
      } 
    
      my $url = "http://photos$server_id.flickr.com/$photo_id\_$secret\_$size.jpg";
      return $url;
    }
    
    
    
    
    
    sub photoLocalURL {
      my $attributes = shift;
    
      die "Error getting photo attributes" unless $attributes;
    
      my $photo_id;
      if (defined($attributes->{id})) {
        $photo_id .= $attributes->{id};
      } else {
        die "Didn't get a photo ID at all!";
      }
    
      my $photo_title;
      if (defined($attributes->{title})) {
        $photo_title .= $attributes->{title};
      }
    
      my $url = "photo.html?phototitle=$photo_title&photoid=$photo_id";
      return $url;
    }
    
    
    
    
    
    sub readInfo {
      my $infoData = shift;
    
      die "Didn't get the photo info!" unless $infoData;
    
      my $photo_info;
      foreach my $photo_data_item (@{$infoData->{tree}{children}[1]{children}}) {
        my $a = $photo_data_item->{name};
        if ((defined $a) and ($a)) {
          if ($a eq 'description') {
        $photo_info->{description} = $photo_data_item->{children}[0]{content};
          }
          if ($a eq 'visibility') {
        $photo_info->{public} = $photo_data_item->{attributes}{ispublic};
          }
          if ($a eq 'dates') {
        $photo_info->{date_taken} = $photo_data_item->{attributes}{taken};
        $photo_info->{date_posted} = $photo_data_item->{attributes}{posted};
          }
    
        }
      }
    
      return $photo_info;
    }
    
    
    
    
    
    sub readExif {
      my $exifData = shift;
    
      die "Didn't get the EXIF data!" unless $exifData;
    
      my $photo_exif;
      foreach my $photo_exif_item (@{$exifData->{tree}{children}[1]{children}}) {
        my $a = $photo_exif_item->{name};
        if ((defined $a) and ($a eq 'exif')) {
          my $label = $photo_exif_item->{attributes}{label};
          my $content = $photo_exif_item->{children}[1]{children}[0]{content};
          if ($label eq 'Model') {
        $photo_exif->{cameramodel} = $content;
          } elsif ($label eq 'ISO Speed') {
        $photo_exif->{ISOspeed} = $content;
          } elsif ($label eq 'Shutter Speed') {
        $photo_exif->{shutterspeed} = $content;
          } elsif ($label eq 'Aperture') {
        $photo_exif->{aperture} = $content;
          } elsif ($label eq 'Exposure Bias') {
        $photo_exif->{exposurebias} = $content;
          } elsif ($label eq 'Focal Length') {
        $photo_exif->{focallength} = $content;
          } 
        }
      }
    
      return $photo_exif;
    }
    

    The main index file

    This file is called ispy.html and it is the main entrance page.
    Mostly it just includes the main page generated by the script.

    And a quick note: Yes, I do use PHP for this. It is just so right for this task… ;-)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>iSpy</title>
    <link rel="stylesheet" href="style.css" type="text/css" />
    </head>
    <body>
    <? include "photolistbody.html" ?>
    </body>
    </html>
    

    The individual photo page

    This is the file which includes each individual photo (whose content is generated by the script).

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <?
      $phototitle = $_GET[phototitle];
      $photoid = $_GET[photoid];
    ?>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>iSpy - <? print $phototitle ?></title>
    <link rel="stylesheet" href="style.css" type="text/css" />
    </head>
    <body id="photoDisplay">
    <? include "photos/$photoid.html" ?>
    </body>
    </html>
    

    The Style-sheet

    This is the style.css file. I’m no CSS wizard, so this is essentially a test of my own.

    #thumbList {
      list-style-type: none;
      width: 100px;
      /*margin: 0 auto 0 auto;*/
    }
    
    #thumbList li {
      margin-top: 20px;
    }
    
    #thumbList li a {
      text-decoration: none;
    }
    
    #thumbList li a:hover {
      text-decoration: underline;
      color: #ab5518;
    }
    
    .thumbNail {
      display: block;
      text-align: center;
    }
    
    .thumbNail img {
      border: none;
    }
    
    .thumbNailTitle {
      font-family: verdana, arial; 
      font-size: 80%;
      display: block;
      text-align: center;
    }
    
    #photoDisplay {
      width: 800px;
      margin: 0 auto 0 auto;
      font-family: verdana, arial;
      color: #999999;
      background-color: #333333;
    }
    
    #photoDisplay h1 {
      text-align: center;
    }
    
    .photoNav {
      list-style-type: none;
      text-align: center;
      margin: 20px auto 0 auto;
      /*border: 1px solid red;*/
    }
    
    .photoNav li {
      display: inline;
      /*border: 1px solid yellow;*/
    }
    
    .photoNav li a {
      text-decoration: none;
      color: #999999;
    }
    
    .photoNav li a:hover {
      text-decoration: underline;
      color: #ab5518;
    }
    
    #photoBig {
      margin: 0 auto 0 auto;
      text-align: center;
    }
    
    #photoBig img {
      border: 35px solid #222222;
    }
    
    #photoDescription {
      width: 600px;
      margin: 20px auto 0 auto;
      padding: 15px;
      border: 2px solid #222222;
      background-color: #2f2f2f;
      font-family: verdana, arial;
      text-align: left;
      font-size: 100%;
    }
    
    #photoData {
      width: 600px;
      margin: 20px auto 50px auto;
      padding: 5px;
      border: 2px solid #222222;
      background-color: #2f2f2f;
      text-align: left;
      font-size: 75%;
      font-family: verdana, arial;
    }
    
    #EXIFData {
      list-style-type: none;
    }
    

    About this entry

    Originally written on May 06, 2005 @ 02:08
    Read article on it's own page (permalink)

    A frase

    Dizem que uma imagem vale por mil palavras, mas desta vez a coisa aconteceu ao contrário.

    A frase do momento (e candidata a frase inspiracional do ano, no meu ranking pessoal) é a seguinte: “Não temos falta de recursos. Não temos; O que existe é falta de ideias”.

    Deixando de lado o óbvio, esta frase faz-me vir à cabeça uma imagem muito clara que eu, por não conseguir desenhar nem que a minha vida dependa disso, não consigo reproduzir, mas cuja ideia é muito fácil de transmitir: Imaginem uma cena passada num restaurante ou snack-bar em que um homem claramente identificado como activista do movimento “Acabem com a violência, Salvem Os Ovos” está a encomendar para o seu almoço uma bela omelete dupla.

    Rebuscado? Surreal? Pode ser que sim, mas por outro lado não temos de ser (mais) idiotas?

    About this entry

    Originally written on May 05, 2005 @ 10:50
    Read article on it's own page (permalink)

    The Feed Joiner

    tags: coding,programming,scripting

    While waiting for the rest of the lunch party, I decided to check out the feed joiner script and, to my surprise, things appear to be a-OK!

    So much so that I’ve decide to integrate my wiki’s recently edited pages feed to it, just for the heck of it. And it works! It doesn’t have any useful information on this particular feed, but it worked like a charm first time.

    Also, I’ve put up a small page about it, with the source code, on the wiki. It is here.

    And now: to lunch!

    About this entry

    Originally written on May 03, 2005 @ 14:08
    Read article on it's own page (permalink)

    Feed Joiner

    What is it?

    Feed Joiner is a script that joins several RSS or ATOM feeds into a single ATOM feed.

    Introduction and motivation

    I’ve had the need to take all the feeds that I create from the various instances of my on-line presence and clump it together into a master feed for some time now.

    Well, one day I just decided to get to work and just do it.

    This is the result. So far it is very experimental and it is kind of ugly.

    Whishlist and To-Dos

    This is what I hope to improve in the near future:

    • Make it auto-detect whether a feed is ATOM or some kind of RSS and treat it accordingly;
    • Sort all the feed items on the master feed (the date on each individual item is good enough for a good reader to sort it, but it would be more elegant to pre-sort them in the feed itself);
    • Handle failings in some sort of sensible way (which I still have to figure out what it actually means: do I drop the items from a source feed that has a problem? Do I use the previous version of the source feed (I’d have to cache it somewhere for that)? Do I just fail to create the master feed?);
    • Make it easier to configure. Especially take out all those hammered in strings and options;
    • Make it all around more robust.

    The source code

    Anyway, here is the current source code for your perusal (and no, I never claimed it was pretty, but it sure gets the job done!):

    #!/usr/bin/perl -w
    
    use strict;
    
    use LWP::Simple;
    use XML::RAI;
    use XML::Atom::Syndication;
    use XML::Atom::SimpleFeed;
    
    my %urls = (
      'http://nowhereland.nunonunes.org/atom.xml' => {
        type => 'atom',
        name => 'Nowhereland',
      },
      'http://www.flickr.com/services/feeds/photos_public.gne?id=92591068@N00&tags=nunonunesispy&format=atom_03' => {
        type => 'atom',
        name => 'iSpy',
      },
      'http://del.icio.us/rss/nunonunes' => {
        type => 'rss',
        name => 'Links',
      },
    );
    
    my @newsitems;
    
    # Let's get all the data from all the sourcess
    print STDERR "Starting the master feed refresh...\n";
    
    foreach my $url (keys %urls) {
    
      my $content = get($url);
      my $type = $urls{$url}{type};
      my $feed_title = $urls{$url}{name};
    
      die "Error getting the feed from $feed_title: $!" unless $content;
    
      if ($type eq 'atom') {
        my $atomic = XML::Atom::Syndication->instance;
    
        my $doc = $atomic->parse($content);
        foreach ($doc->query('//entry')) {
        my $newsitem = undef;
    
        $newsitem->{title} = "[$feed_title]";
        $newsitem->{title} .= " ".$_->query('title')->text_value
          if $_->query('title');
    
        $newsitem->{content} =  $newsitem->{content}->text_value
          if $newsitem->{content};
    
        $newsitem->{link} = $_->query('link/@href')
          if $_->query('link/@href');
    
        $newsitem->{modified} = $_->query('modified')->text_value
          if $_->query('modified');
    
        $newsitem->{summary} = $_->query('summary')->text_value
          if $_->query('summary');
    
        $newsitem->{content} = $_->query('content')->text_value
          if $_->query('content');
    
        $newsitem->{issued} = $_->query('issued')->text_value
          if $_->query('issued');
    
        $newsitem->{id} = $_->query('id')->text_value
          if $_->query('id');
    
        $newsitem->{created} = $_->query('created')->text_value
          if $_->query('created');
    
        push @newsitems, $newsitem;
        }
      }
      elsif ($type eq 'rss') {
        my $rai = XML::RAI->parse($content);
    
        foreach my $item ( @{$rai->items} ) {
          my $newsitem = undef;
    
          $newsitem->{title} =  "[$feed_title] ".$item->title;
    
          $newsitem->{link} = $item->link if $item->link;
    
          $newsitem->{content} = $item->content if $item->content;
    
          $newsitem->{issued} = $item->issued if $item->issued;
    
          push @newsitems, $newsitem;
        }
    
      }
    
    }
    
    # Now let's build the aggregate feed...
    
    my $atomfeed = XML::Atom::SimpleFeed->new(
      title => "Planet Nuno Nunes",
      link => "http://nunonunes.org/",
      tagline => "All things regarding Nuno Nunes - A collection of all the relevant feeds.",
      author => {
        name => "Nuno Nunes",
        url => "http://nunonunes.org/",
      }
    )
    or die "Error creating the aggregate feed: $!";
    
    foreach (@newsitems) {
      $atomfeed->add_entry(
        %$_,
        author => {
          name => "Nuno Nunes",
          url => "http://nunonunes.org/",
        }
      )
      or die "Error adding item (\"".$_->{title}."\") to aggregate feed: $!";
    }
    
    $atomfeed->print;
    
    print STDERR "Done refreshing the master feed.\n";
    
    1;
    

    About this entry

    Originally written on May 03, 2005 @ 13:50
    Read article on it's own page (permalink)

    A bit of evening hacking

    Having stayed home this evening (one of the few evenings when I actually have nothing planned outside), I decided to see if I could do something about a particular hitch I’ve been having for a while — getting all the relevant feeds I generate consolidated into one big feed.

    I have the weblog (Nowhereland) and it’s feed, I have the links feed (powered by del.icio.us), I have the (sorry excuse at an attempt at a) photolog - ispy [Update: This site is no longer alive] (which is being changed in order to be powered by flickr) and a few more which I’m not sure I’ll want to get into the main feed right now.

    These days I haven’t been really inspired to write in the weblog, but I have been active in both the photolog and the links gathering arena (not to mention the wiki, but this will have to wait until a second round), so it really bugs me that it appears as if I am just slacking off and fall bellow the radar when I’m actually getting stuff out there.

    Also I now my readers want to know everything which is happening to me, not just each part individually. All three of them. Me included. And my mom. And my wife. Or maybe not…

    So while I will almost certainly retain the individual feeds for each source, I will start to push the aggregate feed as the master feed for my site.

    This will help with the outsourcing of parts of my site, as it allows me to change providers of services if and when I see fit without affecting (much) the way people get my content.

    So anyway, I just did a quick round up of interesting Perl modules and clobbered a prototype script together to get the ball rolling. It most certainly will fail in spectacular and exciting ways before I can trust it enough to urge people to make the switch, but in the mean time it is already up at http://nunonunes.org/atom.xml. It is alpha code (I’ve written it, copied it to the development server and now I’m going to go to bed without even trying it out because otherwise this would last until very, very late) and it will be up and down as I toy with it and kick it into some sort of shape, but if you want to play with it too the source code is up in the wiki.

    It is actually kind of fun to see how this sort of stuff still gets me in a zone (briefly, of course, as it didn’t take that long to write this). I was hacking away in front of the TV (something I rarely do) and I was watching Eurosport. The finals for the world snooker tournament where on and I love to watch those.
    But then I got my head up and the tournament was over (didn’t even get to know who won!) and there was a football match on (that is soccer if you are of the American persuasion).
    What’s so funny about that you ask? Well, I absolutely hate football. The only good thing I find about the game is that on match days the streets tend to be a bit more clear of traffic, and yet I was coding with a match going on on the TV and didn’t even notice it for a good few minutes.
    Amazing! Now if it where a few years ago this kind of concentration could have gone on for hours but for now this is good enough anyway. :-)

    Update: Turns out my old(ish) RedHat 9 installation didn’t have all the modules I needed to get it working. And installing all the modules required me to upgrade the version of libxml. At this hour I just wasn’t up to it, so the prototype lives instead at http://nowhereland.nunonunes.org/full-atom.xml. And let me tell you, installing Perl modules on a machine with this kind of CPU power is a serious turn-on!

    About this entry

    Originally written on May 03, 2005 @ 01:52
    Read article on it's own page (permalink)

    Venice - the day after

    Well, here I am, back home.

    I’ve kept quiet about my views on Venice so far because quite frankly I don’t quite know what to say.

    The town, for all it’s (former) beauty leaves a bitter-sweet feeling about it and I’m not actually sure how to put it into words.

    So I won’t. Not for now at least. I’ll post something about it when I figure out exactly what I want to say and how I want to say it.

    In the mean time, photos will be up in flickr in a few days and daily life will return to normal about now.

    Technorati Tags: ,

    About this entry

    Originally written on Apr 26, 2005 @ 12:24
    Read article on it's own page (permalink)

    Off I go

    After a rather chaotic week, I’m on vacation!

    Both dancing examinations went surprisingly well (or so I think anyway, since the grades and comments will only be handed out when we return from our trip, which is sure to make me and Tuxa very popular among our classmates…) ;-) Oh and I finally found out the name of the entity which made the international examination this afternoon: it’s the U.K.A.. So, for the record and for me to remember later, the quarterly exam in the class covered the Waltz, Jive and Quickstep and the U.K.A. exam was a simple start to star and covered only basic Waltz and basic Cha-Cha-Cha.

    And now I’m going to try and sleep real early because I have to be at the airport at around 4h45 (that 4h45 AM!) to catch the flight to Amsterdam and wait there for about 4 hours to catch the flight to Venice. That’ll definitely be fun…

    About this entry

    Originally written on Apr 17, 2005 @ 21:28
    Read article on it's own page (permalink)

    What a week so far…

    It’s only just Wednesday and already I can say: what a week!

    First there was some home improvement works on the weekend, which (naturally) slid into the week nights. Things are going OK but, as expected, we are now on plan B on a few things and making it up as we go along. Damned master walls, hard as steel and impossible to perforate…

    Then there are the preparations for the trip to Venice. Not that I’ve had much time to devote to it because of all the other stuff going on, but it is something that is on the back of my mind and which I’ll have to attend to sooner or later.

    Oh and don’t forget the family dinners. Because we are going away on a vacation everybody wants to have us over for dinner this week.

    At work things are a bit more chaotic than usual, mainly due to the fact that I’m going to be away for a week and I have to let things sorted out back here, but also because there where some changes going on with some services that took me a lot of time.

    Then the new server for my sites got ready to roll (thanks to Pedro) and I made the most urgent transition during the week (i.e. this weblog is already there). That’s about as far as I expect to go for now, when I get back the wiki will follow but probably not before then.

    And to top it off I just had my ballroom-dancing exam for this quarter today and I will have the international exam next Sunday (actually that’s the reason I’m only flying out on Monday instead of going on Saturday).
    This was the second exam I’ve ever had (in two years of classes) and it’s funny how a bunch of full grown adults get so nervous and nearly resort to biting their nails over a simple thing like this.
    It really doesn’t get to me all that much but Tuxa, for example, is a real mess… I can only guess the state she got in when she had her oral exams at the university! :-)

    Amongst all this I still have to find (and have found) a bit of time to do some work for the dvdlx.com project, sort my music collection (iPod oblige) and catch some sleep. Of course the gym is what gets left behind, but I’m only human…

    About this entry

    Originally written on Apr 14, 2005 @ 00:42
    Read article on it's own page (permalink)

    The move

    Nowhereland has moved.

    It is now hosted on a server outside of my home, in a real datacenter.

    I feel like it is all grown up and ready to go out into the world on it’s own.

    I feel so proud… :-)

    If you notice anything out of whack say something, the move might not have gone as smoothly as I think. Come to think of it, this was all rather easy so there is probably some bug problem just waiting to be found.

    And now back to our regular scheduled programing.

    About this entry

    Originally written on Apr 12, 2005 @ 18:35
    Read article on it's own page (permalink)

    A new look for the iMac

    Two and a half months later, the replacement parts for my defective iMac finally arrived.

    From what I was told when I asked about the repair, only the disk, memory and outer shell are the same. Instead of replacing just the problem part (which I am assuming is something like the video inverter) they replaced almost the whole computer —motherboard, display, CPU— the works!

    The good news is that so far I haven’t spotted a single dead pixel (always good to check for those with extreme care) and the screen is now legible with the brightness set to half the scale. It was getting to the point where full brightness was too dark even at night so this is a welcome change.

    It also felt like the boot-up was much faster, but it might just be that I am hallucinating this due to being really tired and happy that the screen is so bright and pretty…

    The next few weeks will be nail-biting as I wait for the screen to become darker and darker, like when I first got the iMac… Hope it doesn’t happen!

    What I didn’t have time to do was to run the full hardware test on it. I have this thing about making sure that everything is really OK and I ran the test on the previous computer, but since this is mostly a new incarnation of it I will have to run them again. Of course with the memory I have installed running the full tests will take around two hours and last time it set off the fan at full blast for the full duration of the tests. Given the hour and my being dead-tired and the noise that the fan makes, I think I’ll leave it for the weekend when I’m out running all the million errands I have to run.

    Time for bed now.

    About this entry

    Originally written on Apr 09, 2005 @ 00:38
    Read article on it's own page (permalink)

    The continuing media spring-cleaning saga

    The photo organization is almost done. I still have to tag and date the old photos that where digitized from negatives (some from my wedding and also a lot of them from the USA coast-to-coast road trip, just to name a few examples) and this will take a while, since I’ll have to extrapolate from other (digital) photos and some other bits and pieces of information. But this is a mere detail and the big organization is effectively done.

    And this leaves me with just one other major re-organization to do: the music files.

    Now this I was leaving behind because, being the meticulous kind of freak I am, I know that once I start it I will not be able to sleep well until this task is done, and done properly. And this means not only grouping albums and ordering the songs in them, but also collecting all the cover art I can from the Internet and digitizing those which I cannot find on-online. And also, of course, filling the gaps left on some albums from the less than ideal approach I’ve taken so far to archiving. I will also have to finally go through the “assorted” folder and all its little sub-folders and choose what I’ll keep, what I’ll throw away and organize what will be kept. A lot of work, then.

    But this weekend I just had to start it. And that’s because I’ve apparently been a “good boy” (tm) this year and so on my birthday my wife got me an iPod Photo. So now I have all of my 10.000+ pictures in it and also about 5.000+ songs in it. But I want to have all the songs in there, and I want them well organized. That is why I couldn’t put it off any longer. A double edged-sword of a gift the iPod… ;-)

    About this entry

    Originally written on Apr 04, 2005 @ 12:13
    Read article on it's own page (permalink)

    The early birthday present

    Today I received a great present, even before my actual birthday.

    After a few months doing some stuff I really hated I will finally get back to systems development.

    Doing the technical interfacing with the “business-side” and managing the technical side of software development projects may be very interesting to a lot of people (and I know quite a few who actually like it very much) but for me it was just plain bad.

    I did learn quite a lot from the experience, though, and got a new-found respect for people who do it or have done it for a long time. Even if they actually like it and consider it “a lot of fun”. I just happen to think you are crazy, that’s all. You know who you are! ;-)

    But seriously this a very worthy job and a very important function. Vital, even. But it must be performed by the right people.

    So today it was officially announced, among a larger batch of changes, that I will leave the technical counseling and project management jobs and will get back to being a systems architect.

    I know I have my work cut out for me. I know there is an awful lot to do. I know I will have to deal with some things I have no knowledge in. I know I will be deep in it. And I can’t wait to get to it!

    This won’t happen tomorrow, of course, there will be a transitional period when I have to continue doing what I am doing now but this doesn’t seem so gruesome now that I know that in a few months I will be back to being full-time systems architect (or computer screen rat, whatever you prefer to call it).

    At some point it was all I could do to stop me from dancing around the table. But then you don’t do that when you’re a hard-core techie. After all we all have a reputation of nerdiness and bad temper to maintain, right?

    (Professional) life is in balance once more.

    About this entry

    Originally written on Mar 31, 2005 @ 23:52
    Read article on it's own page (permalink)

    Done reading Zeldman

    Well, I’m done with “desingning with web standards”.

    Like I though, a great book all around. It could be a bit less “preachy” though…

    Very nice reading indeed. Now I feel more apt to dive into the more advanced chapters of “the Zen of CSS design”.

    About this entry

    Originally written on Mar 29, 2005 @ 01:11
    Read article on it's own page (permalink)

    Easter weekend

    I spent the Easter weekend visiting relatives, from the Algarve to the Alentejo but anywhere I went the weather was mostly this bad.

    About this entry

    Originally written on Mar 28, 2005 @ 19:45
    Read article on it's own page (permalink)

    Another weekend, gone…

    … and, as usual, it was a good one. They (almost) always are, weekends.

    I managed to finish tagging, rotating and generally cleaning up my photo collection. In the end, and after deleting duplicates and so on, I ended up with a bit less than 10.000 photos, none of them in Canon RAW format. This allows me to use iPhoto to manage the entire collection without any problems which is a good thing TM.
    I decided to stop importing Canon RAW images directly to iPhoto because 1- They where just too big and iPhoto would choke on them (even with 1GB of RAM); 2- iPhoto processed the information on the pictures wrong and always assumed they were taken one month earlier than they had actually been taken on; 3- I had no real benefit in using Canon RAW on iPhoto.
    So now I have the original files (I call them my “digital negatives”) on the server’s disk and on the CD and DVD backups and if I ever need them it’s quite easy to locate them, but for picture browsing, selecting and desktop- or web-viewing the JPEG versions I have on iPhoto are more than adequate, so that’s that.
    I found out about a neat feature of iPhoto which allows the switching or libraries at startup if you press and hold the option key when you launch the application. This is extremely good because if (or rather, when) my collection outgrows iPhoto’s ability to deal with it I can just move some pictures to another library and leave the latest months or years in the “current” one. Very cool feature!

    I’m also making good headway into the two design books I’m currently going through.
    “designing with web standards” is indeed a great resource. Even if I already knew (or had guessed by now, through trial and error) most of what it teaches, it does consolidate what I knew in a very precise way and, of course, I’m learning a lot from it.
    “the Zen of CSS design” on the other hand is not so much a “text book” as it is a “learn by example” one and it is just so inspiring! I absolutely love to read it. I’ve always liked the CSS Zen Garden a lot, but actually seeing an explanation of all the nitty gritty that’s behind it is beyond cool, not to mention educational.

    Saturday, being father’s day, there was lunch with my father at his home (always a good excuse to get the family together around the latest newcomer) ;-) and dinner with Tuxa’s father and her brothers here at home (always a good excuse for her to experiment and explore alternative cooking. This has become a much harder task since she became a vegetarian as none of her brothers are particularly adept at anything of the “vegetal” persuasion. Still, she manages to do well every-time and this instance was yet another success!)

    There was also some advance on the home-renovation department. We have chosen the colors we needed to choose and we have gotten the paint. This was a difficult process and from here on there are really no more tough choices to be made, so it was a good development.

    Vasco and Sofia came back from their first-ever snow trip, so this evening there was the usual display of pictures and small movies. Man, I miss the snow already! I know I say this every single year, but I do wish I could ski more often. I really love it and I really miss it. One week a year is not nearly enough, but any means.
    But then I’m not crazy enough to drive to Sierra Nevada on the weekends. Not only do I absolutely hate skying on the weekend with all the crowd, but I also have severe problems with making all those long car trips (8 hours each way). Much as I love road trips, I don’t like having to make this kind of a trip in order to ski for a day and a half and come back again. My back would kill me.
    And after seeing what Serra da Estrela has to offer I also pass up on that. You don’t mitigate your craving for riding a motorcycle with a weekly ride on a kiddy tricycle.
    Sigh…

    Oh, almost forgot, today, finally, I got to watch “High Fidelity”. I know it is far from a new release. I know everyone and his mother has seen it. I know most people I know think it is a great movie and can’t believe I’ve never seen it, the fact is that I hadn’t seen it.
    And they where right. What a great movie! I loved it, absolutely loved it.
    I already loved it’s soundtrack, which I’ve had for a rather long time and I thought I would probably enjoy the movie. I was right about that.
    But now it’s late (of sorts) and I won’t go into much detail about the movie or why I like it so much because I’m going to try and go to the gym tomorrow before going to work and so I have to get up early… ish…

    About this entry

    Originally written on Mar 21, 2005 @ 01:47
    Read article on it's own page (permalink)

    Dungeons and Dragons, old style, with a twist

    I’m not (any more) in the habit of making posts that basically only link to other pages, as I’ve started using del.icio.us for my link management quite some time ago, but this one deserves to be considered an exception.

    As an old-school D&D fan I’ve tried many of the video-games that derived from it. Much as I do like some of them Neverwinter Nights being the supreme ruler of these), they never came close to the feeling you got when you took an afternoon off to sit in a crowded room with your friends playing with pen and paper and real dice.

    The pen and paper were mostly used to draw out the maps of the places we were traveling in (OK, not “we”, our characters; but this blending was the real fun part of the game so bear with me here) and the DM would draw them out as we progressed.

    Now, invariably there would be times when we would disagree over something like proportions, positioning, who can see what from where and in the end of any good gaming session the maps would be all but unreadable and totally scratched out.

    This was something we had to live with because there was nothing better available and in the next session we would have to re-draw out the map as we knew it at the time and take it from there.

    But now there is something much, much better. Something I wish I did have back then…
    Via boingboing I’ve come to know about the [computer-controlled digital map projector](http://www.d20srd.org/extras/mapProjection.htm.

    The idea is pretty simple, even if there are a couple of issues left to be ironed out as pointed out in the page linked above: you create your map in your computer (a laptop suits this function rather nicely), in photoshop or some-such, and then you hook up a projector to it.
    You then put the projector over the gaming table and with a clever use of photoshop layering and real-time editing you can reveal the parts of the map you wish to reveal, while leaving the other parts hidden.

    This is brilliant! You get the absolute correctness of a digitized map (which cannot shrink or expand just because you wish it to, you can make annotations on a piece of paper stuck to the table and later re-use the original map because it was not ruined from your annotations and battles (both imagined and real ones —over the rules and so on) and the drudgery of drawing things in real-time disappears as the DM only needs to erase bits of the masking layer to reveal whatever it is he wishes to reveal.

    Kinda makes me wish to have another go at those games again…

    About this entry

    Originally written on Mar 15, 2005 @ 15:46
    Read article on it's own page (permalink)

    Taking the reigns over the photo collection

    Now that I’ve finally decided on a way to deal with my photo collection (I’d call it huge at a little over 10.000 photos, but I’m sure there are much bigger collections out there, so I won’t) I’ve been taking some time going over the existing ones and tagging them and whipping them into some sort of shape that resembles order.

    It’s a huge effort and even after two evenings of minimal tagging, rotating the ones that need it and leaving much to be done for some other day (read: never) I’ve only gotten as far as December of 2002!

    I sure have my work cut out for me. But tomorrow I have an obscenely early meeting and so it is time to call it a night.

    Good night, then.

    About this entry

    Originally written on Mar 15, 2005 @ 00:35
    Read article on it's own page (permalink)

    Keep the geek stuff coming

    This morning I arrived in the office to my newly arrived copy of “the Zen of CSS design”.
    A good omen indeed.

    So then, inspired by this sign from above, I decided to finally take the plunge and I’ve ordered myself a Mac mini.

    The only thing that’s really bothering me is that between the iMac and now the Mac mini and their memory upgrade needs, I’ll end up with three spare 256MB DIMMs in my hands.

    About this entry

    Originally written on Mar 14, 2005 @ 17:08
    Read article on it's own page (permalink)

    Weekend wrap-up

    Another interesting weekend.

    Went to the gym saturday and caught up with all the IT Conversation podcasts I was falling behind on. Not bad that.
    While I was there I ran into a friend I hadn’t seen in an obscene number of years and the conversation that ensued was… well, I can’t think of the right adjective now but it was something along the lines of (him to me): “So, we seem to be growing along the same general lines here: we’ve both grown beards, both come to the the gym in the weekend, both with visible spots of grey hair, both with an extra 10Kg!”.
    Nice… (grr)

    The rest of the saturday went well enough, we bought some nice things for our home (you may notice I’m actually trying the flickr thing for good, even became a paying member), made all the arrangements for our wedding anniversary getaway (what a great excuse for yet another trip! If only we had some better choice about the dates… But we have a dancing exam the day before our anniversary so we must fly out on the exact day. Still we will be able to dine in Venice which is not too shabby at all) and we finally made a list of re-decorating to-dos.

    We thought about moving a while ago but decided against it because, quite frankly, we haven’t spent enough time in our current home and we haven’t made all we can make out of it and it would be hard to leave so soon.
    So instead we decided to go ahead and actually go through with some of the projects we’ve had since we moved in. We have made a list, checked it twice and made a (rather sketchy) plan to go about every item in there.
    I’ve taken some pictures of the areas we are going to change more dramatically so that we can post some “before and after” pictures after the deed is done. It will be some time though, so if anyone is actually curious, please don’t hold your breath over this one…

    Also on the topic of changes, I’ve decided once and for all that I no longer wish to maintain my huge (and noisy) home server (especially now that I’m about to move a major part of nunonunes.org —including Nowhereland— out of it), and so I’m going to buy me a Mac mini to host the sites I want to maintain at home and do the old file/streaming/whatever-server around here.

    Back to the weekend, sunday was also a good day, we did everything we had planed for today in the list, I’ve done some work on dvdlx.com and I finally took the time to learn a bit more about photoshop’s actions and, especially, made my first photoshop droplet: a Canon RAW to JPEG converter.
    Now this is something that is rather heavy on a machine, so it is exceedingly cool to see it churn away at a huge number of pictures while I edit this and listen to my MP3s and not feel a hint of a slowdown.
    The iMac G5 rocks.

    About this entry

    Originally written on Mar 14, 2005 @ 00:33
    Read article on it's own page (permalink)

    The next trip

    Just made all the reservation for our next trip. Did I mention I love traveling? :-)

    So this time we will enjoy a week in April in Venice, Italy.

    I’ve never been to Italy and I expect it to be great.

    We booked a hotel on the beach, near the Lido instead of in the city centre, as this is supposed to be a relaxing vacation and not a full fledged city raid as we usually do. So we will be staying in Villa Beatrice and we hope to enjoy the beach a little.

    Our initial plan was to do a 5-day trip but we’ve extended it to a 7-day one so there should be plenty of time to get to know the city, catch some sun (if there is any that time of the year) and do some heavy-duty relaxing.

    Oh and the trip has a theme. The dates were chosen so that we will be able to dine in Venice on our wedding anniversary.

    Can’t wait to go!

    About this entry

    Originally written on Mar 12, 2005 @ 21:10
    Read article on it's own page (permalink)

    Oh Apple, why do you (mis)treat us like this?

    As I’ve mentioned before, my iMac G5 came with a hardware problem. The screen is way darker than it should and sometimes has fits and starts flickering.

    Considerations about this kind of problem being there for far longer than is reasonable in the iMac line apart, Apple does know this happens and is well aware that lots of people suffer from this problem.

    So anyway, I talked to the retailer where I got my iMac from and reported the problem. They acknowledged it promptly and told me they would order the required part (I’m guessing it is the video inverter, as this is what usually breaks). They have to get it from Apple Europe and they gave me an ETA of 10 working days.

    This was a month and a half ago.

    Anoying? Damn right! The screen is getting darker as time goes by and there was even one occasion when it refused to wake up from the sleep state.

    Frustrating? Of course. I have this new dandy machine which is supposed to be all great and cool and stuff, and I can’t even edit my pictures in it properly, not because it isn’t up to the job but because the huge 20’ display looks like it was covered with a black stocking.

    Typical? Hell yes, I’m not in the least bit surprised.

    Sad? Well… not anymore, I’m starting to become more or less apathetic to this kind of thing from Apple. At this point I just wished there was a real alternative. And that is sad.

    About this entry

    Originally written on Mar 10, 2005 @ 13:32
    Read article on it's own page (permalink)

    Home network

    Yesterday evening was spent doing some changes at home.

    I changed the layout of the office to make it more comfortable to work there and doing so entailed moving all the computing and networking equipment I have in the house.
    It went rather well and I ended up taking out a number of devices that where just sitting there, accumulating dust, disconnected and out of service.

    Just a note to self, though, if your dual homed box says it doesn’t have network access don’t bother fighting it. Even if you are absolutely sure that you connected the network cable to the right NIC. Don’t spend that half-hour fiddling with network configurations and whatnot. Just change the cable (which you know is right) and it will work. Because it was on the wrong NIC all along. The hardware is always right, stupid!

    Anyhow, I ended up taking down quite a few services that were runing on the former-gateway-current-webserver in the process, so it was all for the best…

    Oh and another interesting note, UPnP rocks! I was able, for the first time, to take full advantage of it using Azureus (now that I have a wireless router which supports it, even if not totally well) and it sure is sweet!

    About this entry

    Originally written on Mar 10, 2005 @ 11:57
    Read article on it's own page (permalink)

    Aolynk WDR814g

    The Aolynk WDR814g is a ADSL2+ capable wireless router.

    It has a number of interesting features built-in such as a DHCP server, support for UPnP, firewall capabilities, DynamicDNS client capabilities and more.

    Notes on firmware version “V1.00.15beta.1   Feb. 1, 2005  15:39:35”

    • The UPnP seems to work quite well (tried it with Azureus) but there are still some kinks to be ironed out such as not cleaning up the assignments table after the connection is terminated and giving out information on the whole table, regardless of each entry being enabled or disabled;
    • DynamicDNS support is not quite all there yet. It seems not to support protocol 2 of the [DynDNS.org)[http://dyndns.org/] service (which I use);
    • The list of connected wireless clients is always empty, regardless of the number of clients actually connected;
    • The logs are sparse and rather uninteresting. there is no detail on packets dropped from the WAN port, for example, only the indication that they where dropped;
    • The data collected via SNMP seems to be mostly OK, except for the reported speed on the interfaces. No matter what speed I connect to my ADSL line or switch ports (10MBPS ou 100MBPS) I always have the same value for all of them (100MBPS).

    Resources

    About this entry

    Originally written on Mar 10, 2005 @ 11:26
    Read article on it's own page (permalink)

    MP3Slicer — cut up your podcasts

    [Update (June 23rd, 2009)]: This script has been removed during a site clean-up.

    So today I spent almost two hours waiting in the lounge at the doctor’s office. Quite usual, as a matter of fact but this time I decided to get the lemons life gave me and make some lemonade (as it where…)

    And as I happened to have some podcasts just waiting to be recorded on a CDRW to take to my car I decided to try and finish up a little script I’ve been trying to put together for a while.

    As it turns out I nailed it today before I got my allergies checked up and while I can’t say I’m terribly proud of the job I’ve made (so far) it does do the job, so you can find my MP3Slicer script here (at least for the time being).

    As I state in the scripts page I just had to cut up the podcasts into manageable chunks to make it practical to listen to them while on the car or at the gym and this is my first stab at it.

    I can’t remember how long I’ve been trying to get this done so the long wait turned out to be a good productivity enhancer. Who’d have thunk it, heh? ;-)

    About this entry

    Originally written on Mar 08, 2005 @ 23:10
    Read article on it's own page (permalink)

    CPAN - The Comprehensive Perl Archive Network

    CPAN is a place where most of the freely available (as in Free Beer) Perl modules are to be found, along with many other resources such as scripts and the like.

    I actually have a developer ID at CPAN and hope to one day be proud of the work I may have posted there… My ID is NFMNUNES.

    The most useful interface to CPAN is the http://search.cpan.org/ site.

    Resources

    • The PAUSE server - The management interface for CPAN authors.

    About this entry

    Originally written on Mar 08, 2005 @ 22:57
    Read article on it's own page (permalink)

    The trip

    Yet another trip down memory lane this morning on the way to work.

    It started out with:

    “I’m going to the darklands
    to talk in rhyme
    with my chaotic soul
    …”

    Quickly followed by:

    “Deep one perfect morning
    as the sun is heading up
    into the sky
    …”

    And on to the mythic:

    “Step back and watch the sweet thing
    breaking everything she sees
    she can take my darkest feeling
    tear it up till i’m on me knees
    …”

    Ah, the angst, the gloom, the despair… Those where truly the days!
    Can’t wait to get back home and listen to the rest of it.
    This was a christmas present which I’ve only come around to appreciate now.

    “you were my sunny day rain
    you were the clouds in the sky
    you were the darkest sky
    but your lips spoke gold and honey
    that’s why i’m happy when it rains
    i’m happy when it pours
    …”

    About this entry

    Originally written on Mar 08, 2005 @ 11:31
    Read article on it's own page (permalink)

    Random geekness and other assorted tales

    This weekend I finally found the time to replace my Alcatel Eazy Touch ADSL modem, my Linksys Ethernet switch and my US Robotics AP with Huawei’s Aolynk WDR814g, the super duper ADSL2+ Wireless Router/LAN Switch combo which treats my ultra fast 256K/128K ADSL line as it should!
    OK, so at least I got read of three boxes and replaced them with a single one, so there!
    Up until now it seems to be generally OK, I had to let the former gateway know that the traffic would now be coming from the other interface and it was indeed legitimate, thank you very much; the dns cache had to be told to behave too; the DHCP server was shut down; the gateway also had to stop trying to establish the PPPoE connection, thank you for all your effort, you are now obsolete and, of course, all the IPTables rules on that particular box had to be revised, but other than that everything is A-OK.
    What I lost was the fine control I had over the ACLs as I now have generic rules on the router (using the self-assigned term with the due grain of salt) instead of the reliable IPTables and the router doesn’t seem to really know how to talk to dyndns.org to update my domain’s address, even though it says it should (and there is a place to configure it).
    I expect these and some other small annoyances to be fixed with future firmware upgrades, though, and the fact that my PPPoE, DHCP and routing (in short: my connectivity) is handled on a dedicated “dumb” box instead of a PC is most reassuring.

    On the near (I hope) future my site will also be out of here and on a dedicated server on a place with good connectivity and better conditions for the hardware to live. The geek-nest is getting ready and after some initial hick-ups I now have no fear about any of it (what a dreadful pun… even if only a couple of people will get it).

    On a related note, Zeldman’s “Designing with Web Standards” has been my most intense reading material of late and even though I already knew or had a gut instinct about most of what the book explains and proposes it is really excellent material and it helps clarify and cement the ideas on one’s brain. Expect a (not so major as I already have most of it nailed down today) change in the site’s structure soon. Hopefully at about the same time I port it to it’s new “physical” home.
    The only beef I have with that book is that the bulk of the first 4 or 5 chapters is spent trying to convince people of the value and correctness of the ideas it conveys. Now while I’m all for branding the clue-stick about whenever it is needed, I do think that to spend so much time hammering over how this is really a good idea and how it will help you live in a better tomorrow is just plain wasteful.
    By all means, do tell people that this is a better way. Show them why this is a better way. Teach them to write web sites in a better way. But don’t spend such a big part of your book preaching to them. If they are reading it they already have some idea of how important or good it is. If (like me and so many other people, I’m sure) they already know how good and important this is you just annoy them. If they are skeptical about it give them examples, show them how it works and why it works. Don’t lecture them in a book, lecture them on live lectures, but show them how in the book.
    Anyway, as I said, this is my only beef with the book, the rest of it is just great, as I fully expected it to be.

    On the gaming front, I’ve tried the “Second Life” and even though it seemed like a fun thing to do I’ve dropped out of it after the trial period. I simply wouldn’t have the time for it.
    It reminded me so much of my MUD and MUSH days! It is not actually a game, but more of a virtual environment where the best time I think I would have would be in building things and exploring things built by other people. On the MUD/MUSH days you did it with a text interface and your imagination, in “Second Life” you do it with a full-fledged 3D graphics interface and a powerful building system, but the end result is the same: I already have too little time in the first life, I really can’t handle a second one right now.

    “Vendetta Online” now, that’s a different story…
    It is in fact a game, even if a MMORPG one, and I have decided to stay with it for the time being. Until now it doesn’t require that much time from me and it does feel good to just jump on the ship and relax while I cruise the galaxy for a while in the evening.
    And if I can’t play it every single evening no harm comes to anyone, I just come back whenever I have some time and play whatever I feel like. I can blow some steam on some dog fights or just chill and do some trading or exploring missions. All the time I’m building up my character’s (a single one for now) ranks until I have enough of a standing to get some more interesting options on the game.
    Then I’ll have to see what comes about and decide if the little time I have available for it is enough or if I should just quit it. But until that time it does help me relax and I can always just create new characters and remain on the “easy” part of the game…

    And on yet another huge subject change: I’ve finally decided to try out flickr on a more serious way. So I am now a paying member and I’m putting some pictures in there, little by little, and I’ll start delving into it’s API to see how far I can go with it in terms of a possible fotolog or even a basic photo-album app.
    Let’s see how it goes…

    And that’s about it for now, there are many more things I’d like to write about, to help clarify them in my own head, but alas the hour is late for one who has slept as little as I did yesterday and who will (hopefully) be up bright and early tomorrow to go to the gym.
    Which reminds me: music is OK while you I am working out, but to really get my mind off the mind-boggling stupidity it is to waste so many hours running in place or lifting heavy things just for the sake of one’s (lack of a) belly, nothing comes even close to sticking some interesting shows on your MP3 player and listening to them.
    I mean things like the “IT Conversations” podcasts for example (especially “The Gillmor Gang” regular series and other temporary ones like the “Web 2.0” or the “Accelerating Change 2004” ones).
    It engages your mind in a way that no music ever can and so, not only do you end up making your time really count for something worthwhile, but you also don’t notice it slipping by, so when it’s time to hit the Sauna or the Turkish Bath in the end, you actually feel a little sorry that the session is about to end because you will have to wait until next time to get to have so much time to just listen to those shows again.

    About this entry

    Originally written on Mar 08, 2005 @ 00:53
    Read article on it's own page (permalink)

    Because memory is Crucial

    That (or something quite similar) is (or used to be) Crucial’s moto.

    And they’re right, of course, when you buy memory for your computer you really want things to go right and not have the dreaded compatibility issues.

    And you also want the memory like, yesterday! After you make the decision of shelling out for it you want it immediately.

    Enter Crucial. It’s always been a very good shopping experience buying at Crucial and again I ordered 1GB of RAM for my iMac Friday at about 16h00 and got it delivered Monday before 10h00. It came from the UK to Portugal in less than a business day. You usually can’t get a delivery that fast inside Portugal itself, let alone from abroad.

    Go Crucial!

    About this entry

    Originally written on Mar 01, 2005 @ 11:04
    Read article on it's own page (permalink)

    Sick @ home

    Actualy more like recovering at home. Sick during the weekend and too weak to go out to work today.

    Well, I did manage to go through the whole winter without no more than a slight cold or two while all around me people where falling sick with the flu and other season favorites, so this is not bad at all.

    About this entry

    Originally written on Feb 28, 2005 @ 10:12
    Read article on it's own page (permalink)

    Weekend wrap-up

    Well, nothing extremely exciting happened this weekend, but I’ll make a quick recap nonetheless…

    Started reading “The design of everyday things” and “designing with web standards” (can’t be bothered to find the links, but they should be easy enough to find on amazon.com). Like I’ve said before, I can’t do design to save my life, but I sure like it a lot. And the “designing with web standards” is more than a plain design book anyway… On the reading front I’m almost done with the “Elric saga” too, which is a good thing. Only “Quicksilver” seems to endure

    Yesterday I let loose the help-desk guy in me and re-installed a Windows XP computer for a regular user. Always a good reminder of why I love *nixes and the like.

    Also spent a large amount of time debugging and going over the latest changes requested for dvdlx.com. Changes never seems to stop coming, even on the end of the deadline, but that’s always the case anyway…

    Friday afternoon I started to feel a bit off and thought my allergies where acting up. Turns out it is much more than that and after a weekend of pain it doesn’t seem to be much better. Let’s see how I wake up tomorrow and if I’m fit to get out and go to work.

    Didn’t manage to find the time to install my new ADSL wireless router. Now that the hardware I’ve been dreaming of (kinda) ;-) fell into my lap I just leave it in it’s box until I can play around with it. Sheesh! Anyway, this is a Aolink ADSL2+ Wireless Router which promises to be the next best thing after sliced bread and I just can’t wait to plug it in and kill the dependency I have on my home network on the (extremely noisy) gateway PC.

    That’s about it for now.

    Oh yeah, I’ve been considering some rather big changes to the layout and design of nunonunes.org for some time and now with the kind of literature I’m reading and also with the plans for the upcoming hosting change (you’ll see, just hold on) it seems like the time is at hand for it. Hopefully cascais.pm will also get on it’s feet at the same time.

    About this entry

    Originally written on Feb 27, 2005 @ 22:11
    Read article on it's own page (permalink)

    All is well, strangely enough

    No bruises, no strains and no broken limbs. What an unusual ski trip this was!

    But that was not all that was unusual this year, we were caught on a severe storm and couldn’t leave the hotel other than on foot to go the slopes for 3 days. And on the first day even the slopes where closed.

    But on the other two days they were partly open and after that the whole mountain was open for skiers again. I did end up buying and using snow-chains for my tires in order to get to the town, though.

    Another first this year was the fact that Tuxa and me actually managed to get to Caldea this year. It is a very good idea to spend some time there, all the soreness from skiing hard leaves your body and if you like water as much as I do it is a very good time.

    Apart from that, I was extra careful on the slopes this year (I always am, but this year I was really really careful) and it paid off since I haven’t got a single injury. Hurray!

    The ski was good but limited since most of the time we were limited to a small number of slopes while the storm spent itself on the upper portions of the mountains. And we took a day off to rest in the mean-time.

    All in all a good trip this year. Bruno and Paulo also seemed to like Andorra even if they were less than happy because they couldn’t actually sample the better slopes high in the mountains, so I’m not actually sure if they like it better than Sierra Nevada.

    So today is a day for getting in gear again and preparing for the coming week. When we arrived yesterday I was very tired and slept 14 hours straight without even having diner and the upshot of it is that, without having planned it, I woke up in a great mood and with some important resolutions made up in my head. Somehow I got a great sense of perspective this night and got some priorities straight. It actually seems like the new year’s resolutions I’ve never cared to make. :-) Well, let’s see how it goes and if my resolve lasts. It would be good if it did last, since it would greatly improve my life and my morale.

    And now off to wash those chains and put them away until next year.

    About this entry

    Originally written on Feb 20, 2005 @ 13:30
    Read article on it's own page (permalink)

    Off to the snow

    And so it is that after a particular tough and frustrating couple of weeks I’m off to this year’s ski trip.

    And not a moment too soon I say.

    This year there are two friends coming along so I’ll have some company on the slopes.

    The CDs have been burned, the relevant waypoints have been downloaded into the GPS, the bags are packed… It’s road-tripping time! One and a half days to get there, 5 days of skiing and another day and a half to get back.

    I do wish I’d live nearer to ski-able country but you’ve got to go with what you’ve got.

    This year I’ll really try and come back without anything bandaged or in a cast. I really will. Honest!

    Oh and the plans for the 14th of February are coming along nicely. The reservations have been made for Caldea have been made and there’s just a few more details to take care of. Things are looking good.

    Anyone in Andorra care to make me an offer I can’t refuse to stay there, by the way? ;-)

    I don’t expect to have Internet access in the hotel there (I’ve never had it in the past) and I can’t be bothered to lug the laptop around into town just for that so I’ll talk to you all (yes, you and you) in a few days. Be good while I’m away now…

    About this entry

    Originally written on Feb 11, 2005 @ 23:51
    Read article on it's own page (permalink)

    Books rule

    I just couldn’t help copying the following from the Stray Toaster (with all the due apologies, of course):

    If you take a book with you on a journey’ Mo had said when he put the first one in her box, ‘an odd thing happens: the book begins collecting your memories. And forever after you have only to open that book to be back where you first read it. It will all come into your mind with the very first words: the sights you saw in that place, what it smelled like, the ice-cream you ate while you were reading it…yes, books are like flypapers. Memories cling to the printed page better than anything else.

    This rings so true… It’s actually something I really love about books and one of the things that keep me from being able to forego the dead-treeware editions.

    Taken from this post and apparently originated from this book. Must get it!

    About this entry

    Originally written on Feb 10, 2005 @ 15:48
    Read article on it's own page (permalink)

    usenet, then and now

    There’s an article over at Corante entitled “Many-to-Many: When usenet was the world…” which has struck a chord with me. It talks about how AOL has stopped offering usenet access because it is just not worth the cost of keeping the servers running.

    The fact that usenet has become nearly useless these days (unless you’re a virus writer) and that it is ultimately doomed to go away and be forgotten is hardly news to me. My own company (an ISP) looks at the service in a funny way these days and I won’t be at all surprised when the order comes to axe the service. This will probably not happen very soon, but it will happen eventually, that’s for sure.

    So what really got to me was the way in which the article at Corante is written. And this is because I too was a heavy usenet user for a long time. I too remember when usenet and email was nearly all there was to the Internet and it gave me a glimpse of the world through a perspective I could not have gotten any other way. Maybe it was because of this that I was so glad when I got to be in charge of the service at my company some years ago.

    Yes, AOL created the “long September” and it may have ultimately doomed usenet in the process but let’s face it, it would probably have happened anyway. AOL is not single-handedly responsible for the Internet boom and the inevitable newbie plague that ensued. So maybe usenet could have continued to be a useful service for a few more years if AOL hadn’t opened the floodgates, that doesn’t mean the flood wouldn’t have come anyway, it might have been a bit delayed but it would have come anyway.

    The fact is that when the Internet stopped being the playground of college students and a few other “elite” people and when we got to the point where granny at home uses the Internet to chat with her grandson across the globe and look at the pictures of his day-trip at school then a few basic Internet services of old where ultimately doomed. The newbies came and they did their best to get to grips with what there was available. Some things they understood, some others they didn’t. But most importantly, some things they just took for granted and didn’t care about.

    In the end usenet was a very week structure in that it was very open. Anyone could abuse with great ease. For something like usenet to function people had to follow some simple civility rules. Oh sure, there were flame-wars, and memorable ones at that, usenet was the precursor of all those things, but in the end people used to follow some code or some “basic common sense” rules if you will, which allowed the debate to carry on, silly as it may have been.

    But when too many people start barging in, creating a mess and then leaving without the slightest respect for other people and their discussions, when people who want to keep on talking and discussing things that interest them have to put up with more and more spam, one-time anonymous flamers and all the random junk that some people throw at them, then it is just not worth it.

    In the end my view of it is that newbies (in particular AOL’s newbies) didn’t kill off usenet; stupid, inconsiderate people —either spammers or single individuals— did it. I truly believe that usenet could have withstood a barrage of newbies and the “long” or even “continual September”, what it could not withstand, not by a long shot, was simple, basic human stupidity.

    It’s really kind of sad hanging around usenet nowadays, when most groups are filled to the brim with spam, others are just part of a huge virus-spreading or virus-updating network and only a few of my once favorite groups have any real traffic at all. On the other hand, those groups do tend to be coming back to what usenet was all about: just a bunch of people talking about something they like with people who share the interest. There are fewer people by far than there were a few years ago, but the fact is that the signal-to-noise ratio is higher now than I remember it being for a really long time.

    Not that I believe in the resurgence of usenet as something useful, but I do get some comfort in seeing that there are others out there like me, old buffs who remember how it was once and how it could be so great.

    There are many alternatives to usenet in the form of forums, specialized “chats” and even to some degree weblogs, but it’s just not the same. Not really.

    About this entry

    Originally written on Feb 10, 2005 @ 01:30
    Read article on it's own page (permalink)

    This is new — trackback spam

    Well now, the comment spam problem is apparently contained for now (I still get a lot of it but it doesn’t get posted due to my more or less rigid comment policy) but now I’m getting something I’ve never gotten before: trackback spam!

    This is something I’ve never had before. Comment spam I’ve had by the bucketful but even though I’ve heard a lot about trackback-spam problems I’ve never had it happen to me until quite recently.

    Unfortunately MT-Blacklist isn’t quite as good at handling trackback spam as it is with plain comment spam, but it’ll get there eventually, for sure.

    What a sad little world we live in.

    About this entry

    Originally written on Feb 09, 2005 @ 14:01
    Read article on it's own page (permalink)

    KeepAlive=1

    It’s been an interesting few days since I last checked in.

    The decision about moving to a new house is turning out to be a really tough one to make. Still, whichever way things turn out the process has been very… instructive. There are a few things I’ll never do this way again. But it is an interesting ride nonetheless.

    I’m less than a week away from this year’s ski trip and this time a couple of friends are coming along to meet Andorra, so it should be extra-fun. There is the detail that Valentine’s day will be in the middle of the vacation and Tuxa is a sucker for those things, but I have my plans drawn up, yessiree!

    And on a happy, happy note I’ve finished yet another (and seemingly never-ending) iteration of development for DVDLX. There is still a lot of testing and debugging to be done before the new version goes on-line but the brunt of the development is finished. The most annoying part is that this will still not translate into any visible new features, this was essentially still a lot of code-cleanup and the new features will not be activated right away. Oh well, baby steps. ;-)

    About this entry

    Originally written on Feb 08, 2005 @ 21:19
    Read article on it's own page (permalink)

    Vendetta online

    Vendetta online is a space opera-style MMORPG.

    It has clients for multiple OSs, it has an interesting back-story, the universe in which it is set appears to be quite interesting but, more importantly… Much more importantly: it looks gorgeous on a 20’ screen.

    The only problem I anticipate is that the initial 8 hours of free playing-time will go by in a blur. ;-)

    About this entry

    Originally written on Feb 01, 2005 @ 12:43
    Read article on it's own page (permalink)

    Melinda and Melinda

    Just came in from the movies.

    Tuxa, always the cinema-lover, suggested we’d go see Woody Allen’s latest —Melinda and Melinda.

    I knew absolutely nothing about this film. Actually (and this is a little embarrassing for me to admit) I didn’t even know he had a new film! I really like his work and I think I can actually say I’m a fan. As much as I can be anyway, given my general disregard for the cinema…

    But anyway, on the way there Tuxa told me a few facts about this particular film. First, Woody Allen didn’t appear in it, which takes a bit off the excitement but it is not such a big deal. Secondly there were critics who loved it. Thirdly, there were critics who said it was Woody’s worst. From these two last facts it was clear that it was indeed Woody Allen in it’s most classic. Which is a good thing.

    And in fact it was a very enjoyable film.

    Not his greatest work, for sure, but still, a very good movie, with some beautiful moments, the characters are very catchy, very compelling, you feel a connection with most of them from the moment they appear…

    All in all a film very much worth seeing. Even if you don’t actually go to a theatre, see it on DVD later on, it’s well worth the time.

    But then the fact that we went to this small old-style theatre, where you have no publicity before the film, very few teasers, the session still has a break in the middle and —my favorite— the room is small enough that you actually hear the projector rolling the tape in the quietest moments of the film… That just blows me away. What better way to enjoy good old Woody Allen? All the neurotic characters, the insane dialogs, they just come to life on a setting such as this.

    What a great evening! And I was needing it too.

    About this entry

    Originally written on Feb 01, 2005 @ 00:27
    Read article on it's own page (permalink)

    iChat conferencing

    As much as I love technology for it’s own sake (yes, I know it shows), I love it even more when you use it in real world situations and it just fits.

    Case in point: last evening we (at our home) and another couple (at theirs) needed to talk in order to discuss some strategy and business. There where four of us on two homes, each home has an ADSL connection (from different providers, by the way) and has a NAT setup.

    We had a iBook on each side and I had my USB webcam (with the required software installed) connected to the iBook.

    All it took was for us to fire up iChat, start the (one way) video conf and we spent an hour just chatting as if we where all there. If the other party had a webcam it would have been better but hey… ;-)

    So in effect it is voice conferencing in a totally convenient way, you just put the iBook down and talk away.

    What a great technology. What a great use for it.

    About this entry

    Originally written on Jan 27, 2005 @ 11:23
    Read article on it's own page (permalink)

    Instant Messaging Madness

    While I’m a big fan of instant messenger both for personal and for professional use, the current state of affairs can sometimes lead to some quite absurd situations.

    In order just to be able to communicate in the way with everyone I want or need to communicate with, I now have 8 different accounts in a total of 6 different services.

    Madness, I tell you!

    About this entry

    Originally written on Jan 27, 2005 @ 10:50
    Read article on it's own page (permalink)

    Shocking!

    Sorry to mislead you this is not that kind of a post.

    In fact it is quite literally about shocking events. As in static electrically shocking.

    It is a fact of life (well, of my life at least) that sometimes I go through some periods when I’m quite electric. Meaning that I can’t get in or out of my car without getting shocked when I touch it. Sometimes it even gets worse and I get shocked while touching other objects or even people, but the car is a sure fire way of knowing I’m in one of those “electric moods”.

    For a few days now I’ve been like that and, sure enough, I’ve already picked up all the protective habits I slip myself into when this happens. This is not a deliberate effort, but I do hate getting shocked and so my head starts instructing my body to just defend itself without triggering any real awareness of it.

    So now I’ve gotten to the point where I always get out of the car without touching it in any way while exiting it, then I touch the outer paneling of the door with my hand. But not in any way, oh no! You see, I’ve already decided that to touch it with the middle section of the fingers is the most painful way, because the finger “joints” (right word?) really hurt for quite a while after the shock. So I either touch it with the tip of the fingers or with the back of the hand. And in a quick slapping or brushing way to get it over with ASAP.

    I’m actually adapting to the fact that I do get electric shocks and I’m researching the least painful way of going through it and I’ve never even been fully aware of it. In fact , I’ve just became fully aware of this this morning. Funny how the mind works, heh?

    About this entry

    Originally written on Jan 27, 2005 @ 10:47
    Read article on it's own page (permalink)

    Babylon 5 - o fim de uma era

    Chegou hoje o pacote com a série 5 de Babylon 5.

    Comecei a comprar as séries em início de 2003. Foram dois anos à espera que as cinco séries fossem lançadas.

    E agora, o que é que uma pessoa tem para ficar à espera do lançamento?

    Ah espera, os Harry Potters, os Terry Pratchetts… Bom, parece que a minha vida afinal vai continuar a ter sentido. Falando do ponto de vista do consumidor inveterado, claro! ;-)

    About this entry

    Originally written on Jan 25, 2005 @ 20:18
    Read article on it's own page (permalink)

    Ch-ch-ch-ch-changes

    A while back I mentioned I have been contemplating change. This was a (as of yet) conceptual exercise and it applied to my professional life.

    But life has a funny property about it. Change happens!

    So now, while not disregarding my contemplations entirely, I’m presented with the opportunity of change on a whole different level.

    I may be on the brink of moving.

    The (prospective) house is great, the timing is right, the values are amazingly even more right, the conditions look perfect…

    I’m starting to get suspicious because things are just going too great. You know when it feels like everything is just right and even the stars are aligning in just the right way? Yeah, I feel spooked too.

    But then that’s just what’s happening. Let’s see what the next few days bring about.

    Oh but of course there’s a down side to it. We just love our current home, so it will be hard to leave it.

    Having said that, there is even a chance that it may end up in the family anyway, so it will be even easier to part with it, knowing it will be in good hands and we may be able to visit once in a while. ;-)

    About this entry

    Originally written on Jan 25, 2005 @ 17:57
    Read article on it's own page (permalink)

    Spam and the comment policy

    The new version of MT and MT-Blacklist haven’t been deployed for 24 hours yet and already I’ve had dozens of attempts at spamming my site silly.

    Let’s see how long this holds until I may have to finally decide to forgo comments altogether.

    Anyway, since interfering with the comment-flow of my readers is something that disturbs me, I’ve made public a page detailing the comment policy on NunoNunes.org as a whole (which applies most strongly to Nowhereland at this time).

    It’s the least I can do…

    About this entry

    Originally written on Jan 22, 2005 @ 19:13
    Read article on it's own page (permalink)

    Be careful young man, that music you listen to today will come back to haunt you!

    It was the end of a long friday at the office. Everyone was getting ready to go home. There was almost only us at my department in there and only a few other people from other departments around.

    Someone decides he is too tired to continue working and, as the other people continue doing the kind of things you do on a Friday evening (which don’t require too much attention otherwise you’ll just screw something up just before the weekend, and we all know what that means), the conversation starts to drift towards the musical realm.

    Someone brings up the memory of an old 80’s song. A bad 80’s song. The guy who has stopped working still has his Mac turned on and has this huge music collection just at his grasp.

    So he finds the song and starts playing it. Only his iBook speakers aren’t all that powerful and some people want to listen to it without having to come over to his desk (this is all open-space but we are quite a few so there is a lot of space between us).

    Well, it just so happens that I brought my old 4.1 speaker set (complete with subwoofer) to the company a long time ago and I too have a Mac. So I just look for the music he is playing on his shared list (iTunes rocks, you know?) and play it on my bad-ass speakers.

    And now everybody on the department gets to listen to it. The people on the other departments also get to listen to it, but not too much as there is a cabinet barrier between us and I haven’t turned it up that loud anyway.

    But then something starts to happen. This song reminds someone of another, even worse one. And he gets it. And it gets played on my speakers.

    And it goes on and on until after a while we have the speakers blasting bad 80’s music, we are all joking around as if in a party, people who have decided to leave for home an hour ago are still there enjoying it and we have covered everything from the likes of Modern Talking to Sandra, Lionel Ritchie, Samantha Fox, Rick Astley, Bananarama, Falco, Nena, Stevie Wonder… You name it, we probably listened to it!

    And every time a new song starts to play people are just rolling with laughter and trying to remember all the other songs this one reminds them of.

    We even had a couple of friends chiming in, via IM, with suggestions, once they found out what we where doing at the office.

    I did get some work done in the meantime, sure, but it was one hell of an evening and a great time.

    But you want to know the thing that scares me the most about this? While nowadays I have to write everything down because I have a terrible, terrible memory, I still remembered almost every single song we listened to. And I could name the group or song that someone was thinking about given the song name, the group or even by listening to them hum it, on an instant’s notice. How crazy is that?

    I guess al those garage parties I went to as a teenager did leave their mark after all…

    About this entry

    Originally written on Jan 22, 2005 @ 01:43
    Read article on it's own page (permalink)

    Back to normality (or so I hope)

    After a bit of work on performing a somewhat esoteric upgrade, Nowhereland is, once again, open to comments.

    Now for the not-so-good news: since I can’t live with spam, I had to take measures against it which will sadly also impact the legitimate users.

    From now on I will only allow direct posting from users who are authenticated via TypeKey. Users who do not wish to authenticate using this service will have their posts held until I can look at them and approve them by hand.

    I intend to approve everything as long as it is not spam. Well, almost everything, this is my weblog and I will exercise discretion while moderating the more “extreme” posts, but you get the idea. I apologize in advance for the delay this will introduce to your posting experience, but I just couldn’t live with hundreds of spam posts every 3-4 days. And believe me it was that bad!

    In fact, after the upgrade to MT3 I put the site on-line to try out a few things before installing the MT-Blacklist plugin and guess what? In those 15 minutes the site was up with no protection (but with every post moderated) I was hit with 26 spam posts. I didn’t post anything new, so I didn’t ping any aggregator or anything. I just put it online again, that’s it!

    Well, I’ve installed the Blacklist plugin, I’ve changed the comment CGI’s name, I’ve added extra fields to the comment form, I’ve done all that was practical to do on a short amount of time. Now I sit back and watch what happens.

    Let’s see if this is enough. After all this isn’t exactly a high-profile weblog. I’m hopeful. But carefully so.

    Let the games begin. Again!

    About this entry

    Originally written on Jan 22, 2005 @ 00:50
    Read article on it's own page (permalink)

    Educating your users

    In the company I work for some types of requests for miscellaneous things arrive through the ticketing system. In fact everything should be sent by this channel but this is not my point now.

    Some requests are quite common, others are more rare, some are trivial to respond to and then some are a real pain to accomplish.

    I’ve just got one of the latter, it really is a time waster and involves lots of really unpleasant log-licking.

    But my point in all of this is that you know you are doing something either very right or very wrong when a ticket like this starts with the following sentence (translated from Portuguese): “Hi there. I’ll gladly accept every insult you will send in the reply to this ticket once you’ve read it :)”.

    Just so you don’t think I eat small children for breakfast, the smiley was his not mine! ;-)

    About this entry

    Originally written on Jan 20, 2005 @ 18:05
    Read article on it's own page (permalink)

    Cascais.pm taking off soon?

    The good news is that the migration of the hosting service of the pm groups is over (mostly).

    The not-so-good news is that we lost the ability to have dynamic content on the pages, so the page we (me and Paulo) where planning to put up won’t be possible to do after all.

    So now we have to decide weather to do a simpler, static page, create the page somewhere else and upload it regularly (cronjob type of thing, of course) or just drop the hosting offered by perl.org and just host the site on my own server.

    This last option doesn’t appeal to me because my site is hosted at my home and I have this understanding with myself that when the line comes down the site goes out and no big deal about it. For my personal site this is OK, but I’m not so conformable about doing that with a site that is supposed to belong to “the community”.

    About this entry

    Originally written on Jan 20, 2005 @ 13:20
    Read article on it's own page (permalink)

    Apple’s love-hate relationship with Europe

    The roles on this relationship are, unfortunately, quite well defined. It goes like this: Europe loves Apple’s products and hates it’s policy towards Europe. Apple must surely love Europe’s money but hates having to work at it’s distribution there.

    So how do we have in Portugal? Well, it’s bad. Real bad. And it’s been like that for ever. When I first bought my iBook roughly a year and a half ago I had to get it from a friend who had connections and could find me one. I couldn’t get it with optional components and had to get them separately. But even getting things like an airport card and a portuguese keyboard were quite an adventure.

    Needless to say that when new models came out and people around me tried to get them it was also a painful process to watch.

    After a year and a half you’d expect things to be gradually improving. After all we now have an Apple store in Europe so Apple must be trying to do the right thing… You would expect.

    And maybe they are but definitely not at an acceptable rate. Not by a long shot.

    After some wait, and again with a big stroke of luck, I was able to get ahold of a 20’ iMac G5 recently. I had to wait a while but in the end I got it in what passes in Portugal for a very timely fashion (read: I didn’t have to wait 7 or 8 months for it). The problem is that my iMac has a hardware defect and since there are no iMacs for sale in this country I can’t trade it for a good one. So I’m stuck waiting with a faulty computer on my hands or with no computer at all. Great choice, huh? I’ll get back to you on this when I actually start trying to deal with it, I haven’t had the heart to do it yet.

    But this was for a standard hardware configuration. All the wait, all the hundreds of backorders are for standard hardware configurations. Because when you come to built to order computers you add injury to insult and have to deal with the type of thing that Rui is dealing with right now.

    Ridiculous doesn’t even begin to describe Apple’s way of treating Europe in general and Portugal in particular.

    So Cupertino, can we please, PLEASE! give you our money?

    About this entry

    Originally written on Jan 18, 2005 @ 13:02
    Read article on it's own page (permalink)

    Weekend wrap-up

    Not a bad weekend altogether…

    As I intended I did do lots of programming, not enough, but when is there enough time anyway?

    Didn’t actually get to finish porting the weblog to MT3. Ricardo pointed out that MT3 does very well with plain MT2’s templates and, of course, he’s absolutely right, the thing is that I’ve messed those up so bad that now it will take me a bit longer. Still, no big deal, I’ve just been more absorbed by other stuff so when I get around to it it should be quick enough.

    I slept quite a bit, which was part of the plan and quite necessary. Also on the relaxing front I was still able to catch The Incredibles at the theatre (when I though for sure I was doomed to only see it on DVD later on). What a great movie. I thoroughly enjoyed it and not only because of the technology (something which has already been beaten to death in every other blog so I won’t go into here) but also because of the sheer entertainment value of the story. What a cool old 007-type story. very funny indeed, it had me in stitches quite a few times. Just was I was needing!

    Had some unexpected news this weekend. Not bad news, mind you, just unexpected.

    I’ve been contemplating change. It seems to be something that comes up more and more often nowadays so it must mean something. More on that later too.

    How’s this for a secret-ridden post, then, he? :-)

    About this entry

    Originally written on Jan 16, 2005 @ 23:14
    Read article on it's own page (permalink)

    5.1 sound on the iMac

    Maybe it’s just me being dumb, but I’ve yet to find a way to get 5.1 sound out of the iMac. I expected to find lots of USB or even FireWire sound cards out there but none seemed to support the Mac.

    Enter the Firewave from Griffin. A shame it is not yet available.

    This is exactly what I wanted: a way to use my current 5.1 speaker setup (which I’m wasting on my PC at home since it became only a server) on my iMac G5 for my gaming pleasure.

    Kudos to Melo for finding it.

    About this entry

    Originally written on Jan 14, 2005 @ 12:15
    Read article on it's own page (permalink)

    .plan for the weekend

    After the holiday season’s echoes have finally died down I’m in for a full weekend now.

    First off there will be a good old coding marathon. I’m just so incredibly far behind on schedule for a project I have, it is just pornographic. The fact that the customer isn’t all that mad about it doesn’t even make it any better. I’m mad enough as it is.

    Then there’s the weblog. I’ll finish up the transition to MT3 this weekend for sure.

    This should keep me well occupied for the next two days.

    Update: One more thing I have to do: get plenty of sleep. I have been kind of lacking it lately and today’s splitting headache must be a product of that. Please don’t talk so loud.

    About this entry

    Originally written on Jan 14, 2005 @ 11:20
    Read article on it's own page (permalink)

    Some quickies

    Some quickies for you today.

    Nowhereland vs. “the evil spammers

    The comments are still frozen. I will go the Movabletype 3 way, it’s just easier that way. I have a test prototype up and running but I still have to figure out which plugins to add and the anti-spam strategy I’ll use (by the way, thanks to Pedro for pointing out this excellent piece of advice, and just in time too!). Then I’ll have to deal with the templates to get the look that I already have for my site and I’ll be done.

    There are some upsides to this process, not the least of one being that the guys over at PT geekBlogs have been asking me for an ATOM feed from my blog to integrate there for some time now and I haven’t had time to do that yet. Now with MT3’s template for ATOM feeds I’ll get it for free. Real soon now guys, thanks for being patient! ;-)

    iLife

    Take pictures.

    Process them the way you want to.

    Import them into iPhoto.

    Make a slide show of them in iMovie. Make it interesting with some animation, some nice captions, and so on.

    Get some great music from iTunes and stick it in the movie.

    Open up iDVD and master a DVD with one or more of these movies.

    Burn the DVD.

    And now for the fun part: even though you know right from the start that this is going to work, there’s something quite magical about the moment when you take your first ever DVD, load it into your dumb living-room DVD player and voilá —just like every other DVD you’ve ever bought. There is animation in the menus, there are menus. The movies are flawless. It just works! And the effort spent in it was mainly directed at choosing the pictures, ordering them, choosing the music… In other words, the time was mainly spent with the content, not with the technology. This just rocks my world!

    Podcast mania

    I’ve been listening to some podcasts lately to get a feel for the whole thing.

    I know I’m a latecomer to this trend but I just couldn’t be bothered with it until NetNewsWire started sending the casts directly into my iTunes. What can I say, I’m lazy…

    My reaction to it is rather curious in fact: while I tend to like to read more personal blogs and less “formal” ones, in the podcast universe I feel quite diferently. I find the IT Conversations podcast to be a very good listening experience but things like the Loft405 or the Evil Genius Chronicles are best read than listened to. I really don’t know why that is. Funny, heh?

    The keynote

    Well, everyone is talking about it so why not join the crowd?

    I’m watching the keynote now and I am at about a quarter of it (just about to go into the iLife bit which, quite frankly is the part I’m most interested in) and because real life took over yesterday (condo meeting the whole evening… sheesh!) I really am not aware of what went down. Apart from some major highlights which Melo couldn’t help himself calling me about, that is.

    So until now this is basically what I think of it:

    • The Mac mini is a good entry level Mac… But it is awfully limited. Still it will most surely be a big seller;
    • Spotlight rocks and may fundamentally change the way I use the computer. Not the app by itself but the way it is integrated with the OS and the way it is present in every app. A very good one there;
    • The iPod shuffle will probably sell lots and lots of units but apart from it being magically integrated with iTunes it is really nothing that special; ;-)
    • Dashboard sucks. It sure is nice eyecandy but not much more than that. Maybe when more plugins start to appear it will get more interesting but for now I just can’t see it fly with me;
    • HD spreading is a “good think“(tm);
    • Many-way video conferencing is technically very well achieved by iChat (at least judging from the demo) but I still believe the concept is not good. At this demo people knew they were there to be part of a demo and should make it look good but still what little they talked, they did it all over each other. It is just hard to do an efficient multi-way video-conf, i guess…
    • Oh and Mail.app’s new found love of pictures if cute.

    This weekend I was just this close to finally buying iView Media Pro, because iPhoto just doesn’t cut it for me, but then I decided to test it out some more (I still want to try out some things). Now I find out that this decision might have been a lucky break because I’m told I will be amazed with iPhoto.

    Well, let’s see, back to the show then.

    About this entry

    Originally written on Jan 12, 2005 @ 12:48
    Read article on it's own page (permalink)

    The blog is broken for a while. Sort of…

    That’s it then, I’m turning off comments for the whole weblog until I decide and implement whatever mechanism I will put in place to stop spam.

    They won, hurray for them.

    If you have a weblog of your own and wish to contribute anything you can still use the trackback mechanism (if I don’t start getting spammed that way, of course) but other than that sorry, no luck.

    Yes it is sad, very sad indeed.

    I will eventually settle on some way to deal with this and I hope it will be as little intrusive as possible. I also wish I could tell you that in a day or two everything will be fixed but I know myself and we wouldn’t want to turn me into a liar now would we? ;-)

    I am really, really sorry about this. Not that this will affect many people but on a principle I hate having to do this. But then my time is much to valuable to spend chasing spam comments all over the weblog.

    The upside of this is that now I know I won’t get the same comments I get every time I post something about spam comments, telling me to read the documentation and to use mt-trackback and so on even if I already stated time and again that yes, I have every single bit of possible protection in place short of upgrading the software version.
    Hum… So there is a silver lining after all! :-)

    About this entry

    Originally written on Jan 10, 2005 @ 16:20
    Read article on it's own page (permalink)

    In other news… Mac still rocks

    After the bad news some good ones to try and maintain the balance. (But I’m still really put off, do you hear me Apple?)

    Even with a measly 512MB of RAM the G5 already lets me fully experience and enjoy a few things I had given up on on the iBook.

    iView Media

    One of them is iView Media Pro. I had already tried it and given up on it but with the G5 and lots of disk space it really flies!

    I have tried it with some 1000+ photos and it was faster than iPhoto both in importing the photos and later in managing them, managing their meta-info, arranging them and so on. I need the pro version instead of the “light” one because for me Canon RAW support is a must and even managing these behemoth files it is amazingly fast.

    A keeper then.

    iMovie

    Then I tried looking at iMovie again for a pet project of mine.

    I don’t do “home videos” or any of that stuff. What I do is take lots of pictures when I’m on vacation.
    The kind of pictures I don’t count as “photography” per-se but as vacation pics. You know what I’m talking about.

    And after the vacation is over what do I do? I make a selection of them in iPhoto and if any poor soul (most likely family) asks to see the vacation pictures I just put the iBook in front of them (or connect it to the TV) and play the slide-show until they collapse of boredom or the slide show ends (whichever comes first).

    Some time ago I had this idea that it could be nice to make a movie with the pictures, put some music in the background and maybe try not to bore people to death (not so much anyway). The thing is that after importing some 20 pictures, some of them with effects (Ken Burns, of course) :-) the iBook started freezing at each mouse click so I abandoned the idea as not practical.

    Enter the iMac and whoa!, not only did I make two movies with 7 to 14 minutes duration (and I made them really fast) but I also did a DVD project with them, all really easy and I’m now ready to burn the DVD (which I’d have done had I not spent my entire DVD-R stash making backups of my pictures).

    While I’m not going to be a regular user of this kind of applications I’m definitely won by the power and especially the simplicity of them. And yes, I know things like Final Cut are way better then iMovie but for my purposes iMovie still cuts it. If and when I out-grow it I’ll look into Final Cut.

    The shell, the shell

    This is probably what I do most on any of my computers: program. And for me programming means (for the most part) lots of terminals running vim (often many instances of it, one active and others in the background but hits is not relevant here), so screen real-estate is a big issue for me.

    And guess what: I can now have something like 6 terminal windows open, a browser window and some other random things (like iTunes and so on) and see it all at the same time! Now this is programming nirvana.

    About this entry

    Originally written on Jan 10, 2005 @ 13:11
    Read article on it's own page (permalink)

    Cupertino, we still have a problem

    First off, the title was shamelessly stolen from a friend’s blog.

    And it applies perfectly! :-(

    My shinny new iMac G5 20’ has a display problem which apparently is quite common. My computer’s problem in particular is the brightness dropping after a few minutes of uptime and there is no way to get it back to the normal level.
    Now this doesn’t prevent me from using the computer but it is a big ergonomic issue and I most assuredly want to get it fixed.

    “Well then why haven’t I?” you may ask. And I’ll answer you. The best way to deal with it right after the purchase is to just swap the computer. Only in Portugal there are no computers for sale! All the stocks are empty and there is no way to know when we will have them for sale.
    So if I decide to trade mine I’ll just be left iMac-less for God knows how long! :-(

    And so I endure it and wait for the Apple gods to decide to look at this part of the world and send some iMacs our way and then I’ll try and get it fixed.

    And you know what’s even sadder? In the USA Apple is simply sending people the replacement part and the users are fixing their iMacs themselves thus keeping their iMacs with them all the time (as described in the forums I linked to above). Now I’m trying to imagine this happening in this our country of Portugal.
    Well, I may be just being too pessimistic, but I don’t see it happening in Portugal. Not at all, which will mean some time without the iMac.

    The only thing that keeps me a bit cheered up is that when it comes to Apple’s support in Portugal, their partner (Interlog) has left me and many other people happy with them in the past so I’m hoping for some more of that. One can only hope…

    About this entry

    Originally written on Jan 10, 2005 @ 12:34
    Read article on it's own page (permalink)

    The prize

    Can someone please tell me what the prize for being the first off a plane is?

    I know there is one, without a doubt, because every-time a plane I am in lands everyone just jumps out of their sits and sometimes even before turning their cell phones on (imagine!) they take their luggage out of the overhead compartment and get ready to leave. Those who were not quick enough just stand on their sitting spots, all curved up, with their backpacks all set on their backs and then… they stand there. And stand. And stand. (Remember, most times the “fasten your seatbelts” sign was still on when they jumped for their luggage as if jumping for dear life). And after quite a few minutes of waiting the doors open and the people near the exits start leaving and guess what? The people in the middle of the plane are still there, still standing like dopes, still waiting. The ones on their sitting spots are still bending with the weight of their packs on their backs and contorted like hell to fit in there.
    But they do not sit, they do not budge. In my mind I hear Gandalf saying unto them “You Shall Not Sit”. (It should really be thou but that’s Hollywood for you).
    And then, predictably, when the ends of the plane start getting devoid of people, then these people start to leave. After everyone who was closer to the exit has already exited the plane.

    So I just know that there must be a prize for the first one to get off the plane and I have a strong suspicion that the people closer to the exits must be the ones who get this prize but the prize must be so good that lots and lots of people just have to jump off their sits, before the engines are even turned off, and stand there crowding each other for such a long time in hopes of maybe by some obscure and unnatural phenomenon being able to pass everybody on their way to the exit and get there first.

    Only I’m a really simple kind of guy and I’ve never felt the urge to join the dope race and so I just sit calmly until I do have enough room to stand up and get my things and exit the plane at my own pace. Therefore I’ve never even known what the big prize is. Can anyone satisfy my curiosity? Or is it best that I don’t know, lest I join the crowds next time?

    About this entry

    Originally written on Jan 03, 2005 @ 23:46
    Read article on it's own page (permalink)

    It was good but it was short. Isn’t it always, though?

    We’re back at home after four days in England (yes, England because this time around we spent a day out of London, more below).

    Three days were spent in London. Sweet London, I love that town. I have absolutely no connection to it. No family ties (that I know of but It would be really farfetched), no friends, I’ve only been there the first time when I was almost 20 years old, so there are no fond childhood memories, but still I feel so much at home there it is startling. I wonder why that is…

    After new year’s eve Tuxa got a whole lot better (her voice took a day off but at least she could get out into the street and stroll around) and so we could watch the new year’s parade and visit all the other places we so love.
    We even got out at night one day (fully equipped for the cold which struck all day on sunday) and took some fine pictures to prove it. A shame about the cold as there was a very good busker near the Thames that night and I would have enjoyed sitting there and listen to him play on his sax for a bit but for us it would have been madness. Of course we did meet the usual assortment of (usually very young) girls with a very skimp attire who seemed to be pretty impervious to the cold, but that is always the case in the cold countries, us in full winter gear, up to our eyes in warm clothing and some of the natives wearing something I only wear at night in August in the Algarve.
    And speaking of buskers, my favorite buskers were at it again in the same place I caught them last time: Covent Garden. This time I decided to buy their CD so now I know what they’re called, it is The Metropolitan Ensemble. Their performances are quite unique, totally out of the ordinary, they play around with the music and the people in a show of what I think demonstrates true love for the music. I bought the CD not so much for the musics but in the hope that it will remind me of that place and those people from time to time.

    Then there was Oxford on Sunday. It was my first time there and I can tell you this: If I had ever studied at Oxford I think I would have enjoyed my studying so, so much more. We did visit a couple of colleges and while we where only permitted to see a small fraction of it, the atmosphere, the buildings, the gardens, the rooms, the architecture… It is just overwhelming, so beautiful, so peaceful, so inspiring…
    Definitely a place I would have liked to spend some time at.

    And now I’m tired so I’ll end my ranting here. Oh and as for photographs, this time I decided not to lug my big camera around because it is heavy and I’ve been there many times before anyway but of course I still took Tuxa’s small camera and shoot lots of pictures anyway. I just can’t help myself! :-) So there will be pictures, in time. Keep watching this space.

    About this entry

    Originally written on Jan 03, 2005 @ 23:29
    Read article on it's own page (permalink)

    The content of this site is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 2.5 License.