Thu 24 July 2014

Filed under Eudyptula Challenge

Tags Linux Eudyptula Challenge

After finally completing task 01 of the Eudyptula Challenge, I'd like to share a few things I've learned, without divulging any crucial details about the task or solution.

tl;dr Pay attention.

Patience...

Maybe it's just the timezone, but the turn-around time for a response to a submission meant that I could only send one message per day. That fits with my experience on the netdev and iommu mailing lists.

Paying attention to detail.

Having a longer turn-around time really discourages small, quick changes and "is it good enough now?" messages. This is a Good Thing. It makes you think about what you're doing. It reinforces the concept that it's good to take as long as you need to do things properly and double check your work, because submitting rubbish will waste a lot of your own time, not just reviewer time.

Pay even more attention to detail, or, email clients suck.

It took me four attempts to complete the first task. It's embarrassing.

The task involves sending plain text attachments, as opposed to base64 encoded attachments. To achieve this, I first went through some effort to get this domain up and running and get back some of the control over email that gmail doesn't provide. Then, I thought I'd use Alpine as a safe bet for an email client, but it turns out Alpine always uses base64 encoding for attachments. Sigh...

So, for the first attempt I submitted a patch instead of a simple attachment. I thought I could cheat, just a little, and avoid a problem with base64 encoded attachments. Unfortunately the script wasn't expecting it and by submitting an unexpected result I wasted my time as well as my anonymous teacher's time.

So, I switched to Thunderbird.

The second attempt was rejected, because I didn't read the requirement properly. I won't go into more details, but doh!

The third attempt... this is where the email hiccup came in. For the second attempt I carefully tested that Thunderbird was creating plain text attachments, as follows:

--------------040002060807090301030305
Content-Type: text/plain; charset=UTF-8;
 name="Makefile"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="Makefile"

It turns out that the character encoding of the email influences what Thunderbird does with the attachment. Of course I didn't know that and I didn't think to check it. After all, the previous message had the correct attachment encoding. So, for the record, don't use UTF-8 encoding for the message body, or your attachment will be base64 encoded.

Conclusion

The Eudyptula Challenge requires careful attention to detail, more than the standard expected of me in my day job. It encourages me to pursue a higher standard of work.



rationali.st © Andrew Cooks