Hacker News new | comments | show | ask | jobs | submit login

Maybe different lists can be prepared for different career tracks. The items enumerated in the main article obviously has a Web development feel to it. For perhaps another track, I feel that the following tasks, actually performed by someone, can be re-formed into a similar list.

* modifying the Linux implementation of strace to implement system call interposition for CDE

* modifying the official C implementation of the Python interpreter to create IncPy and SlopPy

* prototyping Python interpreter extensions by hacking on PyPy, a Python interpreter (written in Python!)

* enhancing Klee, an automated test generation and bug-finding tool based on the LLVM compiler infrastructure (written in C++)

* performing quantitative data analysis using SQLite for data storage and retrieval, Python for ad-hoc data munging, and the R project for statistics

* creating lightweight interactive data visualizations using HTML and JavaScript with jQuery

* writing lots of Python scripts to automate routine tasks and to administer computational experiments

* writing a custom memory allocator for C programs

* creating dynamic program analysis tools in C using the Valgrind code instrumentation framework

* building components of a software simulator for semiconductor tester hardware using C++ within the Microsoft Visual Studio IDE

* creating an interactive image filtering application in C++ using OpenGL and GLU for image rendering and Qt toolkit for GUI.

* building graphical applications for Palm OS handheld devices in C using the Metrowerks CodeWarrior IDE

* writing a GUI for a handwriting recognition application in C++ using the Qt GUI toolkit

Programming, and indeed all of computer science, is a very mixed bag!

Source: http://www.stanford.edu/~pgbovine/academic.htm

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact