" /> Factless: July 2008 Archives

« June 2008 | Main | August 2008 »

July 16, 2008

Parallel programming, getting started

Two suggested resources for getting started in parallel programming, which a suitable degree of abstraction to allow you to focus on algorithms and programming rather than implementation details are open source projects, Intel's Threading Building Blocks and OpenMP.

Something to investigate at some time in the future.

Programmers need to know about hardware

One of the biggest differences, after raw talent, to a programmer's abilities is writing appropriate code with suitable data structures and algorithms, which in the real world means having a practical understanding of the computer system's underlying hardware, which are often "silent" or heavily muted details in the specification and requirements documentation in software development.

Here's a talk by Herb Sutter, noted C++ book author and ISO C++ committee member, entitled, "Machine Architecture: Things Your Programming Language Never Told You."

A useful resource is Randy Hydes' Write Great Code series of books. As well as classic computer organization and architecture textbooks like Structured Computer Organization by Tanenbaum, and Computer Architecture: A Quantitative Approach by Hennessy and Patterson.

Some programmer quality factors (IMHO):


  • raw talent (hard to measure)

  • knowledge of data structures and algorithms (i.e. education, often formal)

  • knowledge of computer architecture and organization (i.e. hardware)

  • real self-confidence, not shallow vanity, but comfortable with one's own abilities to withstand constructive criticism

July 6, 2008

Programming languages

I have wanted to spend to some time looking at some of the increasingly popular programming languages, particularly Python and Ruby, although languages like Scheme (in case lambda is more than a logo in a video game) and Haskell are also on my radar.

I thought this tour de babel by Steve Yegge was an interesting view. Steve's pontifications or verbiage is generally worth reading, both his old (while at amazon) and new (now at Google) blogs.

Another gem from Steve is Get That Job at Goggle on interview tips for software developers. Apparently some companies like programmers who remember some of their CS class content, rather than merely their Java prowess or line count.