Everyone Writes Code
Whether it's simple HTML, scripting in
into machine instructions.
Social Collaborative Coding
The barrier to learning about software development has been iteratively lowered by communities who crave open development. Open source isn't just a buzz word, it's one of the best ways for young people (or old foggies like me) to learn about real world collaborative software development. While universities focus on complex theory, open source projects are a learning process by doing. Linus' vision of evolutionary engineering is integrated into the DNA of open source initiatives. Heck even I got involved by adding a simple set of batch files to install a scala/lift friendly Google App Engine project to a git repository. It's impressive because my few months of learning web programming has resulted in learning dozens of acronyms, and inventing new curse words while installing build environments.
In a distributed computing world, bandwidth is King
Just this weekend I had the pleasure to read a presentation about Google's massive compute and data storage servers by Jeff Dean. Their architecture of mapping problems into segmented table systems allows for reuse of the mega computer for many parallel applications. A few weeks back I tuned into an Nvidia CUDA parallel web seminar for how to leverage the massively parallel video card structure for computation. There were micro similarities in the CUDA grid control system to the massive Google server farms. Much like the biological trait of sight, the technological evolution of parallel processing structures appears in many shapes and sizes. This type of parallel evolution is sure to put a smile on one of my favorite authors Kevin Kelly's face. If you haven't read kk go read the Technium!