Round 3: Carlos Anderson
Sep 26, 2012 • Carlos Anderson
- How do I make my code more readable (not spaghetti code)?
- Novice: Comment code, better variable names
- Intermediate: Split up code into modular functions
- Expert: Refactor code into decoupled modules, perhaps create a library
- How do I minimize bugs in my code?
- Novice: Use print statements to check program
- Intermediate: Check for boundary conditions in code, use assert statements
- Expert: Unit testing, debugger, code tracing
- How do I collaborate (computer code) with others?
- Novice: Coordinate when each person can edit code, e-mail updated code back and forth
- Intermediate: Use a version control system in a basic way
- Expert: Use more advanced features of a VCS, like branching, merging, and tagging; use issue tracking
- How do I organize my data files?
- Novice: Dump all files into one directory
- Intermediate: Organize files into directory structures manually
- Expert: Use the shell to automatically organize files into directories
- How do I modify my raw data into a different format?
- Novice: Use Excel or a text editor to manually re-format data
- Intermediate: Use some command-line tools, like cut and paste
- Expert: Use awk, sed, or a programming language to automate conversion
- How do I search through my data?
- Novice: Use a program’s find tool
- Intermediate: Simple use of grep
- Expert: Use regular expressions