Principles and practices for picking powerful programmingplatforms, packages, and plugins Abe Gong CSAAW Jan 2012
Picking programming packages Getting the right tools matters.
Picking programming packages It matters a lot, but we never talk about it.
Picking programming packagesIt is a decision we will each face many times.
Picking programming packagesIts a lot like another decision we often face... "What should I wear to the thing?”
What should I wear to the thing?Clothing SoftwareAccesorizes well Does it work with other software and tools that you use? Is it extensible?Matches others Is it a popular package? Are there active forums to get help and updates?Comfortable Is it well-documented and easy to debug?Reasonably priced It is open source? Does the University already have licenses?Fits the occasion Does it do what you want it to do? Really?
Tools I would think about using D3 – A souped-up replacement for protovis Ruby on Rails – More popular alternative to Django. Doesnt use python, though. Repast – ABMs with python support PANDAS – A python-based replacement for R?
Tools I would never use Java – A perfectly decent programming language, but it does nothing that C++ and python cant do better. PERL – Like python, but not for humans. NetLogo – A horrible, legacy language that is difficult to understand and almost impossible to debug. In exchange for sliders, NetLogo will give you bad habits and make you afraid of programming.
Other links and sources Picking programming languages: http://www.tundraware.com/Technology/How-To-Pick-A-Programming-Language/ http://www.awaretek.com/atesterea.html http://newbiehacker.wordpress.com/2010/01/23/how-to-choose-a-programming-la http://blog.aegisub.org/2008/12/if-programming-languages-were-religions.html http://en.wikipedia.org/wiki/Comparison_of_agent-based_modeling_software Kinda random: http://www.inc.com/guides/choosing-accounting-software.html http://www.mb-guide.org/medical-billing-and-coding-software.html http://www.qualitydigest.com/july01/html/gauging.html http://3d.about.com/od/A-Guide-To-3D-Software/a/Buyers-Guide-To-3d-Software. http://www.lingualogue.com/language-software-reviews.html
Picking powerful programmingplatforms... >> Python Powerful Flexible << Extensible Very popular Very free