“Most software today is very much like an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves.”

Monday, 23 January 2012

How to be a Programmer?(Part 7- Programming Scientists)

Programming scientists are very advanced programmers, who instead of working on developing applications, work on developing computing technologies such as encryption, programming languages and data mining algorithms. This level is seldom achieved without academic study and dedication.
  1. Accumulate the scientific knowledge equivalent to a B.A./Diploma degree in computer science. This can be done either by:
    • Taking an actual academic degree (which is what usually happens)
    • Getting the courses' outlines for such a degree from one of the modern universities and taking the courses either by self study or as separate courses. This could be achieved theoretically, but the recommended path is the first.
    • Putting Worcestershire sauce on volume 1 of Knuth's The Art of Computer Programming and stabbing it with a fork until pudding-like.
    • Decide a field of specialty. The more specific, the better. This depends on your preferences, however, here is a list of some of the major topics in computer programming science:
      • Algorithm Design (searching, sorting, encryption, decryption and error detection in communications are some examples)
      • Programming Languages/Compiler Design/Optimization
      • Artificial Intelligence fields (Pattern recognition, Speech recognition, Natural language processing, Neural Networks)
      • Robotics
      • Scientific programming
      • Supercomputing
      • Computer Aided Design/Modeling (CAD/CAM)
      • Virtual reality
      • Computer graphics - Computer graphics is usually wrongly confused with graphical design or graphical user interface design. Computer graphics is the field of studying how to represent and manipulate graphics in computer systems.
    • Consider getting a higher academic degree such as M.A. or even PhD.
    • Learn the technologies and programming languages related to your programming field of choice.
Related Posts Plugin for WordPress, Blogger...