Skip to content

Instantly share code, notes, and snippets.

@WhiteBoardDev
Last active March 9, 2018 19:16
Show Gist options
  • Save WhiteBoardDev/3a13095462e960d051b775850deff6fa to your computer and use it in GitHub Desktop.
Save WhiteBoardDev/3a13095462e960d051b775850deff6fa to your computer and use it in GitHub Desktop.

Working plan for sharpening programming skills

Methods to Learning

Collaboration

Pair program with other developers X times per week for N minutes per session. The intent of pair programming is to discover day to day coding practices from others. Makes notes about confusing parts and be sure to look them up later.

Unit Testing

Unit testing is extremly important to become a better developer. When writing unit tests try to break the code and look for edge cases. Spend at least as much time writing test code as writing source code. Unit testing can be difficult when the code is not structured to be testable. Don't just write tests against whatever code is there; unit tests will provide feedback to your code. When a method is difficult to test, don't just trudge through it, refactor the code to be easier to tests.

Code Reviews / Reading Code

Reading code makes you better at writing code! Sounds simple right? Reading code can take the shape of code reviews or simply poking around in a new code base you are unfamiliar with. Look for patterns in other people's code to see how they solved problems. Look at code bases that people closely around you did not write.

Topics to Learning

Concurrency

Aspect Oriented Programming (AOP)

AOP is the core concept behind the magic annotations which you discover day to day.

Design Patters

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment