This page includes useful tools that I have used and recommend.

Languages and Frameworks

  • WinPython: Python distribution package for Windows
  • Anaconda: Cross-platform Python distribution package
  • npm: Package manager for Node.js
  • Weka: Java library for Data Mining
  • NLTK: Python toolkit for Natural Language Processing


  • Eclipse: IDE with support for different languages
  • PyDev: Plugin for Python support in Eclipse
  • Visual Studio: IDE for multiple languages
  • RStudio: Integrated Development Environment for R

Source Code Analysis Tools

  • srcML: Source code parser that extracts ASTs in XML format
  • ASTExtractor: Abstract Syntax Tree extractor for Java source code (disclaimer: created by myself)
  • SequenceExtractor: Statement sequence extractor for Java source code (disclaimer: created by myself)
  • java-callgraph: Extractor of static and dynamic call graphs from Java programs
  • DP-CORE: Design pattern detection tool for Java source code (disclaimer: I am the main contributor)
  • SourceMeter: Static source code analyzer that extracts metrics
  • PMD: Analyzer for detecting source code violations