OSCON 2007: Day 2
Yesterday, I mentioned a “super secret” announcement party that Intel was throwing for bloggers and the press. So, what did they announce? Well, in short, they are releasing a fully open source version of their Intel Threading Building Blocks (TBB) C++ template library. It’s under the GPLv2 (and not an Intel OSS license). The TBB simplifies development of software running on multiple cores (in parallel).
The announcement itself doesn’t really apply to me and the work I do. I am a PHP programmer, and I rarely hack at the PHP core. Even if I did contribute to the PHP core, it’s all in C, so using TBB, which is for C++, isn’t an option. Still, TBB might be useful for PHP extensions written in C++, so there is that.
Today, I sat in on the OpenID Bootcamp and Simple Ways To Be a Better Programmer sessions.
The latter was by far the most entertaining session I’ve attended thus far, and it wasn’t anything that I expected. It focused more on “people hacks” than programming principals. The basic gist was to be a better programmer by being a member of the programming community, communicating more effectively in the community and with your co-workers, looking in the right places for help, taking part in community discussions, and meeting other members of the community. I can attest from experience that these all do really make you a better programmer.
Tomorrow the official conference begins with opening keynotes and regular sessions. Lots of great sessions to attend, but, for now, I’m heading to the Zend/MySQL party.
1 Comment
I'll open with a disclaimer, just to keep things clear: I work for O'Reilly, specifically investigating and blogging about TBB.
I'm writing, though, in response to your comment about TBB and C. I have over a decade of experience in multithreaded development, usually taking old code written in Fortran and C and applying the traditional low-level threading methods. It's my view (and I'll be actively experimenting with this) that wrapping code written in C and other languages with small C++ TBB snippets will be relatively easy and highly efficient. Of course, the ease will depend on the structure of the underlying code (it's "natural" potential for parallelism).
So, TBB can wrap other code. I also believe that TBB has great potential to be applied for special purposes to create multithreaded libraries that can be called by many other languages. I plan to experiment with this in the very near future as well.