Software Development / Programming

| last update: 2017-08-11

Development Tools

Integrated Development Environment (IDE) and Compiler



Version Control Systems

Subversion is a kind of de facto standard regarding source control. It clearly overtook CVS. Subversion is centralized, that is a single authoritative repository holds the project code.

Git is a distributed revision control system. Git has shown to be scalable and technically mature as it is used for source control of the Linux kernel. Linus Torvalds ist the initial developer of Git and fiercly advocates its use. As well worth seeing is this Webcast on Git. Many open-source-projects use Git and are hosted on GitHub.

Documentation, Bug-Tracking & Debugging

Andreas Zeller's talk"Learning from Code History" is a good introduction to automatized bug finding:

Secure Code

CERT: Secure Coding Guidelines

Software Internationalization and Localization

Manish Bhargava did a interesting talk on "Developing for a global audience" at the Google I/O Conference 2013.

Google also has a dedicated website on this topic.

Programming Languages

  • C++
    Bjarne Stroustrup (the designer of C++) collected some useful information on his homepage.
    The Boost library is outstanding. Many times parts of it git integrated into the official language standard.
  • Java
    official Java Homepage (by Oracle)
  • Python is a modern and elaborate scripting language.
    Notes, videos and other materials from Google's Python Class are freely available!
      Mike Solomon (Youtubes Python Expert) delivered a talk "Super Sizing Youtube with Python". He did another talk at PyCon that handels also more general issues of scaling web applications (one should skip the marketing and start watching the real talk at 09:36).
    The Django-Framework (Open source, BSD license) is popular for developing web applications with python. A python-interpreter can even be integrated into C-programms.
  • PHP
    It is indeed possible to build large scale websites using PHP (for example parts of Wikipedia and Facebook). It is important to beef up security with the right setting in php.ini and maybe with suhosin. HHVM (developed by Facebook) and PHP7 show impressive code speed gains.

Web Development

Javascript und AJAX

  • jQuery is the most widely used JavaScript-Library. There exist another version for User Interface Elements and even another one optimized for touch interfaces.
  • Bootstrap is a popular HTML, CSS and Javascript framework.
  • other less common libraries: dojo toolkit / qooxdoo / Mootools
  • AngularJS

Code compression can save a whole lot of bandwith. Dean Edwards' Packer and JS-Min can reduce the size of javascript files.