As I sit into my desk for a new working week, I say to myself – “Code and Design OR Die”. The need and passion to do something new, exciting and fulfilling shouldn’t die and hence I forced myself into a tiny meeting room all by myself and set myself an agenda. The agenda was random but the thought behind it was sane – “to breathe like a true programmer over the next 7 weeks”.
Code and Design or Die
1. Write C++ code *daily*
a. Implement serialization of medium to complex data structures.
b. Design and develop an object oriented framework for managing database objects.
2. Write N/W clients and servers
a. Dive into issues within Nix and *absorb* them.
b. Learn and code alternate client and server designs.
3. Jump into Linux FS code
a. Browse the code and categorize
b. Learn modular level code for Linux Kernel.
4. Design a Pattern
a. Implement a wide gamut of well known patterns
i. [A] Factory
ii. Proxy and Façade
5. Go inside the Oracle Database Architecture
a. Dive into Memory structures
b. Browse Locking and Latching as we know it – How oracle implements it
c. How is the ACID implementation of Oracle done
d. Performance characteristics
e. How does Query tuning work?
There are other topics like Database Concepts which includes Normalization, Storage structures, ER modeling, Deadlocks and Transactions that also should find favor with the true programmer.