Saturday, March 31, 2012

iTunes Download stopped (err =9006)

It's pretty frustrating to see this error in iTunes when you have spent a long time downloading some stuff over a slow network. You hit that re-download button, hoping that it will just immediately mark it alright after it has found the already downloaded content, but it starts the download all over again.



Don't click that re-download icon.

In my case when I saw the above error after the download was complete, I found the files hidden in the iTunes folder. I could copy them elsewhere and open the content in VLC.

The folder you will find it in is
$HOME/Music/iTunes/iTunes Media/*

Sunday, March 18, 2012

Good essay on user centric software design

Came across this long post "#46 – Why software sucks" by Scott Berkun via Hacker news.

It discusses how software developers don't think about software design from their users' point of view and eventually create a product that sucks. There is nothing new in the writeup that I haven't read elsewhere before, but it's well written and it seems to explain the problem quite clearly. Here is a quote that I especially found appealing - it addresses the difference between good code and good product.
One illustration of the philosophical differences between love of construction and love of good things is the belief that code should be beautiful. I’m a fan of beautiful things: the world can use more of them, including more lines of beautiful code. But the trap is that code is an artifact of constructing software. When code is well written (beautiful or homely), it compiles. And it’s the output of the compiler (or browser) that people see. It’s the complied code that changes the world. The beauty of the code is relevant only to people that look at code. To worry about code aesthetics more than the aesthetics of the product itself is akin to a song writer worrying about the aesthetics of the sheet music instead of the quality of the sounds people hear when the band actually plays.
...
Computer science is taught with a construction mentality. Even the theory and philosophy that are covered support construction, not higher level design, or how to make good software in the sense I’ve described. Aspects of design are covered, but at an internal level, the design of object models, data structures and networks, not at the level of what happens when the technology meets the world or the people in it