Difference: RecommendedReading (2 vs. 3)

Revision 32009-11-24 - DavidWebber

Line: 1 to 1

Recommended Reading

Line: 9 to 9
    • hep-ex, nucl-ex, nucl-th, "the physics arXiv blog", "Physics - spotlighting exceptional research"
    • David Webber uses google reader

Programming Topics

  • This list comes from a conversation between David Webber and his engineer friend Dennis Lin on about Nov 20, 2009. This list is in no particular order, although there are some dependencies.
  • Learn C. Figure out how to munge pointers and handle recursion.
  • learn C++. Meaning learn how to structure a program and write objects
  • learn the standard template library (STL). Use vectors instead of arrays
  • Look through the boost libraries. They are a very nice set of high-powered libraries that do everything from regular expressions to serialization. In particular, look at boost::shared_ptr, which will eventually be a C++ standard
  • Learn design patters so your code is maintainable
  • take an algorythms course so you can learn what you can do
  • take computational theory so you learn what you can't do
  • take an architecture course so you know what's actually going on in the hardware (speed improvements)
  • learn a functional language to broaden your perspective (http://en.wikipedia.org/wiki/Functional_programming)
  • Learn python (or perl or ruby.) It's nice to have something to bang out code quickly in. Depending on your situation, that "go-to" language might be shell or MATLAB.
  • learning some sort of version control (e.g. CVS, subversion, GIT)


  • Deitel and Deitel, "C++ How to Program"
    • Get the 6th edition or later. Covers the basics of programming and C++ and Object Oriented Programming specifically. Detailed examples. Discusses what you should and shouldn't do, beyond the allowed syntax.
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2021 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback