For source code, see projects in Machine Learning, Systems, and Security. I enjoyed working with both Python and C, however for very different reasons. Python allows for such easy access to lists and simple interface with objects. I could comfortably convert an idea of data organization to code. And of course, not having to manage memory was a joy. C on the other hand allowed me to muck with memory and easy use of Linux systems calls. I felt powerful, and it was shocking to see how much of a system you really can control. Yet quickly I realized the power imposed a cautious responsibility for the low level moving parts.
For research papers, see MiddleburyTheses and Security.
-eparton