soledad penadés
repeat 4[fd 100 rt 90]

Archive for March, 2007

20070316 CDmon rules!

It has taken longer than it should have done, but at last I can say that my domain (soledadpenades.com) is registered and managed in a good place - that is: CDmon!

I registered it for the first time around seven years ago. By that time, I hardly knew anything about domain registrars and so just went for the first one that someone recommended me - directnic. It was also the "it doesn't matter if it's hard to use" times, so even if the interface was a bit clunky to use, it didn't make any difference. At the end, it was a place which you just visited once a couple of years, for renewing the domain.

I also didn't even have my own hosting, I depended completely on free hostings like geocities first, and the nice hosting provided by scenesp later, so my domain acted basically as a redirection to whichever my current hosting was.

But then I moved to textdrive and started learning a lot more about server side configuration and tweaking. Directnic didn't provide much functionality, so I decided to switch to cdmon as soon as possible, since they have been giving me an absolutely excellent service for domain registrations and hosting (see xplsv.tv for an example of cdmon-hosted site).

I went to directnic and modified the contact details for my domain, since they were still using my old university account (which was cancelled some years ago). I clicked update and began all the procedures for transferring the domain.

CDmon warned that I should pay special attention to a confirmation e-mail that I should click for beginning the transferring process. Days passed, nothing ever reached my inbox. I was like crazy scanning all the folders, just in case it had gone to the junk folder. Where was my e-mail? Almost one month later I wrote to cdmon. For some reason they had sent the confirmation e-mail to my old university account. How come? Hadn't I just updated it in directnic prior to beginning the process? Weird…

I apologised to cdmon (since it was none of their fault) and went back to directnic control panel. Shockingly, my old university e-mail was still there. What's going on here?!, I asked myself. I repeated the process, entered the data again. But before asking cdmon to request the transfer again, I checked again the data. Guess what: the old e-mail was still there. I was beginning to get angry. Quite angry actually. But I managed to control my anger and opened a ticket in directnic. Enter the absurd world of directnic:

Me:

I'm trying to modify the contact details in order to have a working e-mail address in it, but each time I try to update it, it just rejects the changes and shows the old values in the form, without giving any error whatsoever.

Since this is really urgent, I'd really appreciate help in this topic.

Thanks!

Answer:

To modify your Account Information, please follow these directions:

1. Log into your directNIC account at https://secure.directnic.com/myaccount/
2. Select the 'Customer Settings' tab on your main menu.
3. Click on the 'Account Information' link
4. Enter the changes in the Account information that apply
5. Click on the 'Update' orange radio button toward the bottom of the page
[...]

At this point I felt like: Ok, did they really read my question? Ok ok ok… let's calm down, they aren't assuming that I know how to use a form, maybe they have really clumsy tickets to solve, or whatever… let's explain them the problem again, more wordily:

Me:

Sorry, this does not solve my problem. What I can't change are the contact details for my domain soledadpenades.com

If from here (https://url1) I click on "Modify contacts" and then proceed to modify the contact Soledad Penades (at https://url2), no matter what I do, it doesn't get updated. I click the orange button at the bottom which is labelled as "Edit Contact", the form appears again with the newly entered data but if I repeat the process, I still get the same OLD data which was at the beginning.

There's something wrong in your system which is rejecting my data, I don't know why, since I removed all "strange" characters like accents and so on from the inputs.

If you need any further information I'll be glad to help you in order to solve this issue.

Thanks!

Answer again:

Hello

Try removing the "+" out of the phone number. Often the change will be rejected because of a strange character or the system cannot recognize the number format (like a phone number). Also where you changed your name, I see a "?" where an "e" should be in your last name.

The system is functioning properly because it shows an attempt to modify, unfortunately, it is rejecting the strange characters or the format of the phone number.

Hope this helps, please don;t hesitate to reopen the ticket if you are still having issues and we can revisit the problem.

Hold on! Read that one again: The system is functioning properly because it shows an attempt to modify, unfortunately, it is rejecting the strange characters or the format of the phone number.

At this side of the world, a system does not work properly when it can't do what it's expected to do and even worse, it doesn't give any feedback at all. If I was the developer for that back-end my cheeks would be flushing in red just by reading at this ticket.

First they change their encoding so that my surname mutates from Penadés to Penad?s, and then they decide that +'s in the phone numbers (which are international phone numbers) aren't going to be acceptable anymore, all of this, without giving any note of warning whatsoever.

I couldn't believe it.

I really mean it, I read their answer like three times, thinking: they are an internet company, they do not sell any physical goods, they may have lots of international clients, they may know there are things like accents, they may know that there are more countries other than USA, or was I expecting too much from them? This can't be happening but it is indeed happening, so let's try again.

After removing all "strange" characters and leaving it all with just plain alphanumeric characters, I could finally save the data and get them really updated. Funnily enough, it did confirm that the changes had been saved.

Wrote them again:

Hi, seems that it worked.

But I really think you should consider to give *at least* a note of warning. Something like "Hey, could you please remove what are not numbers from the phone field?", instead of just returning to the form again, which is not what I would label as "functioning properly". I couldn't change my "?" because your system was rejecting any single change I did, but wasn't able to tell me what was wrong (which was the + in the phone number).

It would really help people in this situation, since it's not weird to enter the number with a +, specially for this type of international businesses.

Thanks for your help!

Never got any response.

Yesterday was supposed to be the D-day, my domain was going to be at its new home (cdmon) definitely and so it showed in the control panel. There it was! my sweet little domain… I could modify it and block it again, using cdmon's interface. But then I thought: will it still show at directnic?

I logged in again at directnic. Guess what: the domain still appeared there. And it might have stayed there forever if it hadn't been because I have sent them a ticket asking why was it still there if I had transferred it to another registrar, then they have deleted it.

Conclusion: CDmon rules. If you need domains or hosting, buy them there. They are professional and they care about their clients.

20070313 London Ruby Users Group brings you back to uni

After three failed attempts, I managed to go to yesterday's lrug meeting. It was intended to be a kind of experimental collective code review, so people would contribute with pieces of code and get it dissected and improved collectively. There was an special obsession with Hashes, most of the code submissions were improvements and/or workarounds for the Hash class. I understand it. Hashes are cool! The other topic was using continuations for (I believe) solving sudokus. Backtracing and fibonacci were also mentioned in the session, and Rob McKinnon made one of his quick presentations, this time proposing a way of getting data from different sources into a generic shareable format (and using upcoming as an specific example, and hpricot and hashes, of course!).

I must say it was pretty interesting, even if I got lost at some points (my ruby knowledge is still too poor). I specially got lost with the continuations stuff, which at the same time brought me back uni memories, of those times in which I skipped some lessons and then went back to the classroom with lots of knowledge gaps and tried to follow the teacher (with no luck, usually). Hehe! But fortunately, this time the teacher was interesting and deserved to be listened to.

This reminded me as well of the beauty of programming and talking about pure concepts and abstractions. It was ages since I felt that, so thanks to all who did it possible. I think we all need a good dose of abstraction from time to time. Keeps the brain working.

One of the books which was strongly and fervourously recommended is Structure and Interpretation of Computer Programs, which I believe I read some years ago (again, in the uni :-)). So you can see, ruby is not about rails only!

20070311 The next captcha generation for myspace forms

myspace captcha

I have had to register in this website and holy crap, I hardly could finish the process! I'm amazed there's so many people registered even with captchas like this one. Is it an V or a X? or an N?

But I presume they might be having lots of spammers overcoming their captchas so that's why they need to push it further and make it more and more complicated, even if that means that us the mere mortals can't use the site. Not that I care (except when I need to register, obviously) but I have been working on something which I think it's what they'll need in the future. Without further ado, here it is: the next captcha generation for myspace forms!

Featuring absolutely unreadable text, horrible colours, distorted and unexpected music which clashes violently with whatever you're listening to (I've added several songs playing at the same time so you can feel the pain even if you're not listening to anything right now).

The colour scheme is carefully designed to fit perfectly with every single page in myspace and therefore it requires Flash 9, so it can push the adoption of Flash 9 amongst the internet community thanks to thousands of teenagers willing to show their intimate side to the world, while also making the linux 64-bit system and other exotic systems guys get angry because they don't have a player for watching this monumental piece of crap.

Isn't it nice?

20070307 Being understood

(This is an extended version of the minispeech I gave at BarCampLondon2, "Being understood", and here are the slides just in case you're willing to see some bullet points goodness).

We are failing to make ourselves understood. We can be speaking the same language as our listeners and failing miserably in communicating even simple concepts properly.

I'll show you a couple of real life examples, taken from a web design and development forum:

  1. Thread A: New website by xyz.
    When approaching a new website by xyz announcement, different people pay attention to different stuff. Designers which need to work with HTML tend to focus only on the design and the flashiness of the end result. On the other hand, developers and people which are really involved with the bare bones web tend to look minuciously at the implementation details and the use of technology, kind of ignoring the end users of the websites.Hence, you get answers like these ones:

    • Designer: it's so cool! I like the design!
    • Concerned-with-standards person: it sucks! they use tables and it is not valid! they should use layers and CSS only!

    In truth, that website was visually great but the implementation was a terrible abomination.

    Normally there are lots of lurkers in the forums and they tend to read way more than they write. Occassionally, someone which is just starting in web development read this thread and got confusing information, which led to the next thread:

  2. Thread B: Help with a CSS design!!!
    I'm trying to do a CSS-with-layers-only design but I'm stuck on something. I'd like to show a list of prices, it should be something like this:

    LOREM IPSUM
    Dolor 10
    Amet 12

    I thought of solving it with something like this:

    <div class="table">
    	<div class="first_cell">
    		<div class="blue_3px_border">
    			LOREM
    		</div>
    		<div class="blue_3px_border">
    			IPSUM
    		</div>
    	</div>
    	<div class="row">
    		<div class="value">
    			Dolor
    		</div>
    		<div class="value">
    			10
    		</div>
    	</div>
    	<div class="row">
    		<div class="value">
    			Amet
    		</div>
    		<div class="value">
    			12
    		</div>
    	</div>
    </div>

    … but I'm having some problems for getting it all well aligned…

    Obviously someone got terribly confused here. There are real examples, like the main page of any forum using phorum's default skin, which is built using div's instead of using a table for what is a good table use.

And then we also have the magic word: accessible. That word. Each time it's used nobody gets its meaning right. You can find discussions like this one:

  • this site is not accessible
  • … but I can access the site, what's wrong with it?

… which should start ringing all the bells in our brains but instead of stopping and trying to clarify things before it's too late, we just contribute to increase the uncertainty and fear with more misunderstandings, like for example these ones which are very common:

  • cookies will steal all the data from your computer
  • javascript will steal and publish your compromised pictures in flickr
    • and tag them
    • and geotag them
    • and send an e-mail to all your friends
    • ok, just joking!

There are multiple sources of confusion for each person, even technically savvy ones. While browsing any website, we get bombarded with lots of acronyms and terms which not only can be completely unknown to us but also increase the probabilities of misunderstanding the rest of the content, because we get confused and our brain is still trying to figure out what those terms mean. Think of things like:

  • RSS
  • CC
  • XFN
  • ATOM
  • Tag cloud
  • XML
  • AJAX
  • Web 2.0
  • W3C
  • WSG
  • WAI
  • etc

Is this something to worry about? I would say deffinitely YES, specially if we look at some absolutely subjective facts that I've come up with:

  • Only 5% of sites do not make my eyes bleed when looking at their source code
  • 60% of people claiming they follow standards do not really understand what it means
  • Is the result of trying to follow standards worse than a step backwards? Look at all the cases of:
    • divitis < div class="table">< /div>, because someone understood he should just use div's in a tableless design
    • classitis < h2 class="title02"> < /h2>, < div class="h2"> </div>, because people don't understand html semantics nor css really
    • self proclaimed "valid html generators" CMS's and alike, e.g. Joomla!/Mambo, Postnuke, vBulletin, phpBB, subdreamer, etc - the default template from each one of them may pass an automated test but it's not "valid HTML", and not semantic HTML either (which I believe is way more important than passing an automated test). Unfortunately, people with limited technology knowledge may choose one of these believing they are doing the right thing, thus contributing to the global disaster.
  • W3c icons are perverted. Most of the times you find them in sites generated with the aforementioned CMS's, when not in governmental websites, and a simple test shows zillions of errors, which creates these two feelings amongst concerned users:
    • they are kind of useless
    • they guarentee nothing

    Ultimately, non-technology people do not have a clue about the meaning of those icons, which are part of the confusing elements I referred to before


So what can we do?

I think we, as technologists, need to take a different approach. Although we are responsible for building the www, it's not us who are going to use it most of the times. Common people are going to enter the content, to play with the systems, to use them, and maybe extend them. If we don't make ourselves understood and aren't able to educate them on how to do things properly, we are failing.

We need to think out of the box, putting ourselves in their place, and trying to understand their goals and concerns. And while some of their concerns may look ridiculous to our eyes, we must be patient and not overreact. It's like the "THIS SITE SUCKS" response to a posting in a forum. It doesn't help, it's not constructive, and just produces frustration.

But convincing people to use something abstract is very, very hard. Nobody's going to take your new and shiny standards-based approach if they have something which works for them and you just have philosophy and words theorising about the benefits of standards and all that stuff. You need to demonstrate movement: be an early adopter, stop theorising and start building practical solutions right now. Show real applications of standards which give real advantage over the old practices.

(Obviously, you'll need to assume risks but that's part of the game.)

Finally, the most important rule of all is: be accessible - yes, YOU! Do not scare people away with a cloud of meaningless (for them) words when they come to you, and speak their language, not yours.

————————————————–

Some context:

This was inspired by an article which Ricardo wrote, "The accessibility is inaccessible". After lots of comments and the discussion which followed outside the blog comments, and reaching a point in which I was almost getting angry I realised there was something very wrong about the whole discussion, and the "Think outside the box" sentence made me understand why me and the rest of the people which was against Ricardo had got it wrong, because we were failing to think in "non developer terms". Extrapolate it a bit more and you've got a fantastic source for a BarCamp talk :-)