That's a good article for the simple reason that it is written by someone who still had enough 'outsider perspective' that it can help guide other people new to the material in ways that old hands never could. It is impossible for me to tell a person new to this material what the pitfalls will be because most of what they will be struggling with is obvious to me and it would never even occur to me to explain it.
The site is a bit slow to load but if you are new to working with Arduino's and other small boards like that and want to play around with them it is worth the wait.
Title nit-pick: I'd have used 'low level programming' rather than 'hardware programming', programming hardware has a different meaning.