Abuse of power

March 27th, 2006 § Comments Off on Abuse of power § permalink

We hadn’t even reached half of the way till our destination when the MP3 player batteries drained. Despair ensued. Until we thought about a solution: plugging the MP3 player on the USB port of the laptop. Copying the files wouldn’t have solved the problem, since the player earphones could not be dettached from its body. Anyway, bliss.

Presenting applications

March 25th, 2006 § Comments Off on Presenting applications § permalink

Recently, I spent a week helping in the presentation of an application developed for the internal use of a client of mine. The project, although nicely specified, suffered with the change of key people during its implementation phase, and, because of the problems resulting from those changes, I wasn’t particularly confident in the outcome of the presentation.

Fortunately, despite the error screens occurring at the most unappropiate moments of the presentation, the general impression of the end users of the application was very positive, and I believe the corrections that will be implemented in the next phase of the project will be sufficient to finish it in satisfactory way.

The most problematic point about the presentation, in my opinion, was the use of test data. After seeing how much doubt and confusion the use of test data caused, the first point in the checklist for presentation from now on is: never, never, ever again, use fictitious data in a presentation system. It’s a obvious rule, but I guess it only became clear to me now because of particularities in this system which make test data especially bad. And there is always the possibility that some developer will have written something really embarassing in a text field which will cause a bad impression on the users.

Another point is the use of primary keys in the interface. Primary keys are an implementation detail that doesn’t belong in the presentation tier. Some developers seem to like using them as record identifiers but users will only become confused by such “random” numbers appearing in the midst of other data.

Presenting applications, I’m now realizing, it’s a really complex task for engineers types like me, because it depends on skills that belong in the area of management. But life is like this: you only learn things by experience.

At least, I finished the presentation with the certainty that the application is doing what it was supposed to do: radically simply the work of the users and promote processual changes in the way that work is done. It would only be better than that if the application did all the work by itself.


March 23rd, 2006 § Comments Off on Lag § permalink

Okay. After almost one year using the Internet with a minimum download speed of 600kbps and a maximum speed of 4mbps, going back to 56kbps is, to say the least, torture. Hotels without broadband should be outlawed. See you Friday.

RSS as a platform

March 18th, 2006 § Comments Off on RSS as a platform § permalink

With the recent developments in the RSS world, including the launching of Windows RSS Plataform, the discussions about the use of the format as real platform is undergoing a change. Now, there is a lot of talk about how developers can maximize the potential of the format e how they can solve the existing infrastructure problems.

In all that I have read, I didn’t see much discussion about mutable RSS feeds, that is, interactive feeds that allows users to pass data through the aggregator itself, changing the future behavior of the feed based on their choices.

Obviously, support for such interactivity isn’t present in the current crop of aggregators — at least, in none of the many I know and/or tried. In fact, a persistent fear of security problems that could be caused by such interactivity pervades the entire area. XSS and similar exploits caused most aggregators developers to completly eliminate the use of objects, forms and JavaScript inside RSS feeds.

Such an approach puts extreme limits on what you can do with RSS, of course. More than an year ago, answering a question posed by a friend of mine, I wrote here about interactive RSS feeds. The application I designed to test the concept at the time (a very simple prototype) is still running and can be accessed in the test area of this site. It’s a RS feeds that instead of simply presenting content, allows users to act on its entries. Given the limitations present in the current generation of feed readers, you will probably need to open each entry in the browser to see the feed in action.

The big question is: what can we really do with RSS? Is a read-only platform enough? I don’t think so. Considering the context in which I created the application mentioned above, that of a course served through RSS, a read-only plataform is not that interesting. A typical course has an activity tree that’s completely dependent on the students’ choices. A read-only format would not provide a complete experience in such a scenario.

As mentioned before, there are real security concerns involved in allowing users to interact with a feed. Allowing any kind of content can lead to episodes like the one caused by Mark Pilgrim a couple years ago, whose RSS feed “took control” of hosting computer with a clever use of HTML. The text he wrote later about the subject impacted the development of an entire generation of aggregators. Yet, browsers handle the same issues today and — despite some problems — they do just fine.

Before I start repeating what I already said in the other article, I believe RSS can evolve a lot beyond what it is today. New applications — especially in the much hyped Web 2.0 style — depend on a bigger possibility of interaction than that offered by aggregators today. Since the competition in the area seems to be big, I guess it won’t take long until we see changes.

Star Trek: The Original Series

March 18th, 2006 § 2 comments § permalink

For the past fews days, I’ve been watching Star Trek: The Original Series in DVD. I bought the boxes as soon as they became available here in Brazil, but had not seen many of the episodes until now. I guess I was a bit afraid I would be disappointed if I saw all episodes — after all, the series is very dated now.

I remember staying awake, when I was a teenager, until much past midnight waiting for some random episode to air in a local TV station. I had to wash my face constantly to keep myself from falling asleep, always anxious because of the station’s tendency to scrap Star Trek everytime another program run late. Most of the times, I would sleep frustrated, because that had happened again. But when I managed to see an episode, oh, the glory of it.

I still marvel at how much sense of wonder the series evoked in me. Today, seeing those old episodes, it’s funny and fascinating to see how much the producers accomplished with so few resources. I can’t help but laugh at the poor techniques used in some episodes. Science on the series is mostly technobabble, a heavy mixture of reality and pseudo-theories, but it works, because it’s not the most important thing.

What really mattered, and what really made me crave for another episode, was the way the series managed to break conventions and perceptions — sometimes contradicting itself, but breaking them anyway. Robert J. Saywer, in the introdution of his recent book, Boarding the Enterprise, writes:

“As William Marshall, who played cyberneticist Dr. Richard Daystrom in the episode ‘The Ultimate Computer’ (Season 2, Episode 24), said in an interview shortly before he passed away, it’s impossible to overstate the impact it had in the 1960s when white Captain Kirk referred to the black Daystrom as ‘Sir.’ Was it any surprise, two decades later, that NASA hired Nichelle Nichols, who played Lt. Uhura, to help recruit the first minority astronauts? Star Trek gave us an appealing vision of a tolerant future that included everyone.”
Without doubt, this is the great merit of the series. That’s what make it interesting enough to be seen forty years after its creation, despite the poor makeup, the bad scenarios, and the comically exaggerated acting: the fact that it spoke, and still does, of the human condition, something that will never be dated and will always be needed.

Murphy Week

March 15th, 2006 § Comments Off on Murphy Week § permalink

Murphy decided to camp in my office this week. Considering he was an engineer, I’m not surprised he always prefers to wreak havoc on areas were machines and humans collide.

To begin with, I managed to delete root’s home directory on my server. You know how. Not surprisingly, it was the only home directory not in the daily backup — ironic, considering the daily multi-level backup of the home partiation where all other users are. To make things worse, the directory contained three very important scripts which I had to recode promptly. At least, I took some time to optmize them. At three o’clock in the morning. Next, I upgraded MySQL from release 4.0 to release 4.1. Everything fine, except that I forgot to restart the most important service using MySQL: the e-mail server. It took me three days to realize no e-mail was being sent or received by the system. Fortunately, it was a weekend, and only one customer called to (kind of) complain. Restarting the e-mail server fixed the problem.

At last, today, after working on a project for almost six hours, I overwrite everything I had done with a single command. On the only of my projects which is not under version control. It figures.

Murphy is decidedly hanging around.


March 11th, 2006 § Comments Off on AWOL § permalink

After a long time AWOL, this blog is back again. If there’s someone still subscribe to my feeds, many thanks: you are indeed a most excellent and dedicated reader.

The backend has been moved from MovableType to WordPress, which is a much nicer and cleaner tool. It imported my old entries flawlessly, and I’m very impressed with its editing capabilities. Its superb usability and performance also help a lot.

I redirected everything I could from the old site, including the feeds, and I hope everything is working. WordPress’s permalink arrangements are almost identical to those of my old blog, but since I moved it to another sub-domain, I expect things will probably break at some edge cases.

Anyway, let’s see how this blog fares. Here I go again, still powered by a contradiction in terms, trying to stay ahead of future shock.


March 11th, 2006 § 2 comments § permalink

My name is Ronaldo Melo Ferraz, and Reflective Surface is my personal weblog. When I write here, I write as a private citizen, and I am solely responsible for what’s written. My current employer has no affiliation whatsoever with this weblog.

The name of the site comes from a common Web phenomenon: the reflection of information. When I was searching for a good name for my personal site, I thought about thousands of names but quickly found out that most good domain names were already taken. (To tell the truth, not so quickly. I only gave up after I had tried almost all Greek and Latin words in my lexicons.) At the time, I was thinking about how weblogs are much like a room full of mirrors that reflect information back and forth ad infinitum, and thought about the name Reflective Surface. Coincidentally, I came across an entry in a weblog that had just been born at the time, and in the entry the blogger talked exactly about that. The rest is history.

A few personal bits

I’m a 28-year-old Brazilian, living in Belo Horizonte (Beautiful Horizon), capital of the state of Minas Gerais (General Mines) and the country’s third-largest city — which is also were I was born and raised.

Now that you know that I’m not a native English speaker, don’t worry about any spelling or grammar errors you may find in this site. I read somewhere that anybody who started learning a foreign language after infancy will take about 32 years to master the language completely. I still have more than three quarters of the way to go. Never having taken classes, I’m learning as I go–mistakes included.

I’m happily married to beautiful Alessandra (who I still couldn’t convince to have a weblog) and have a son, adorable Marcus. I’m a Christian — a Baptist to be exact.


My interests are too diverse to enumerate, so I will list only a few.

As a programmer, I’m obviously interested in all things relating to technology. I’m mostly interested in programming languages, compilers and related technologies. In the future, I plan to publish a few projects of my own in this site.

Also, as you can see from one of the categories in my blog, reading is one of my passions. I try to read at least ten books each month. I miss the time when I was younger and still could read one or two everyday. I read anything I can get, but I tend to read much more science fiction and fantasy. I don’t have favorite authors, or rather, every good author becomes a favorite.

My tastes in music are very eclectic, but I prefer rock. My favorites artists are Petra, Dire Straits and The Alan Parsons Project. I’m currently learning to play the guitar. Two months ago I bought a Danelectro DC-3 from a friend. It’s an incredible sounding guitar that already gave me countless hours of pure enjoyment.

Contact me

Well, I guess that is all I can indulge to write about myself. For futher information, jobs offers, or anything else, you may contact me at mtblog@reflectivesurface.com.

Where am I?

You are currently viewing the archives for March, 2006 at Reflective Surface.