programming languages

name from to use cases
Scala 2015 now Backends for web applications
Erlang 2014 now mostly OTP
JavaScript 2012 now Not only client-side, also server-side with Node.js
Objective-C 2011 2014 I created some iOS apps for the iPad with Objective-C
q 2009 now array-processing language for big data processing
Java 2008 2015 with and without frameworks like Spring
C 2008 2010 I used C to program an interface to Deutsche Börse
PHP 2000 2010 My first sites were in PHP.


name from to use cases
DynamoDB 2013 now NoSQL on AWS
Elasticsearch 2013 now search everything
Hazelcast 2013 2014 in-memory data grid
Redis 2012 now powerful in-memory with enhanced data structures and Lua support
Infinispan 2011 2012 distributed HashMap for Java
CouchDB 2011 2015 interesting view based database that is very powerful
kdb+ 2009 now most powerful time series database available
PostgreSQL 2008 2014 SQL compliant database
MySQL 2003 2010 mostly SQL compliant database

Amazon Web Services (AWS)

AWS Certified Solutions Architect – Professional Level

I’m certified AWS Solutions Architect – Professional Level

name from to use cases
AWS Lambda 2015 now serverless everything (mostly Node.js)
Amazon API Gateway 2015 now serverless REST APIs
Amazon Kinesis 2015 now real-time data streams
Amazon RDS 2013 now mostly PostgreSQL
Amazon DynamoDB 2013 now NoSQL on AWS
Amazon ElastiCache 2013  now mostyl Redis
AWS CloudFormation 2013 now infrastructure automation
Amazon EBS 2013 now network attached block level storage
Amazon CloudWatch 2013 now monitoring
Amazon CloudFront 2013 now content delivery network (used by this site)
Amazon VPC 2013 now virtual networks inside AWS
Amazon ELB 2013 now load balancer
Amazon SNS 2013 now topic
Amazon SQS 2013 now queue
Amazon EC2 2013 now virtual compute power
Amazon Route 53 2013 now DNS (used by this site)
Amazon Glacier 2013 now long term storage
Amazon S3 2013 now object store (used by this site)
Amazon IAM 2013 now identity and access management
Amazon CloudWatch 2013 now monitoring

web backend

name from to use cases
Play 2015 now Scala web framework
Cowboy 2014 now Erlang REST framework
Node.js 2013 now event-driven server-side JavaScript
AWS 2013 now Amazon Web Services
stunnel 2012 2013 SSL encryption wrapper
HAProxy 2012 2013 load balancer & proxy

web frontend

name from to use cases
Hugo 2015 now generate static sites (used by this site)
Angular.js 2014 now all my new web apps are based on Angular
Bootstrap 2012 now mobile first frontend framework (used by this site)
jQuery 2010 now JavaScript that works on all browsers

operating systems

name from to use cases
iOS 2008 now iPhone and iPad
Mac OS X 2008 now I code on a Mac, Lion to Yosemite
Linux 2003 now Gentoo, Ubuntu, Debian, CentOS, Amazon Linux
Windows 1998 2012 Windows XP, Windows 7

IDEs & editors

name from to use cases
IntelliJ 2014 now Java IDE
Sublime Text 2012 now simple editor
Xcode 2011 2015 iOS app development
WebStorm 2012 2014 IDE for web development
vi 2008 now simple editor
Eclipse 2008 2014 Java IDE


name from to use cases
Slack 2015 now simple team communication
BaseCamp 2015 2015 simple project management tool
Trello 2014 now Kanban style project management tool
Bitbucket 2012 now git as a service
GitHub 2012 now open source collaboration with pull requests
Git 2012 now all my code is in Git
oDesk 2011 2014 outsourcing of all kinds of activities
Redmine 2011 2014 project management tool
JIRA 2011 2012 issue tracker
Scrum 2009 2014 sprint based project management approach
CodeBeamer 2009 2011 project management tool
SVN 2008 2012 software versioning and revision control system

Java frameworks

name from to use cases
Jackson 2012 2015 JSON to Java
Guava 2012 2015 makes Java easier to use
Ektorp 2012 2014 access COuchDB with Java
Spring 2012 2014 mostly dependency injection, JMS and DAOs
Primefaces 2012 2012 JSF component library
java.util.concurrent.* 2009 2015 only use if you read Java Concurrency in Practice by Brian Goetz
Java EE 2008 2014 mostly JMS, EJB, JPA