- Windows Push Notifcation Services (WNS), Apple Push Notification Service (APNs), Google Cloud Messaging (GCM)
- Qt Managed WebSocket (http://qtcloudservices.com/products/managed-websocket/)
- OAuth2 authentication
- Play (http://www.playframework.com) - Java/Scala lightweight, stateless web framework
- vert.x (http://vertx.io) - Polygot lightweight, high performance application platform for modern mobile, web, etc applications.
- MEAN (http://mean.io) mongoDB, express, angularJS, node.js
- Susy (http://susy.oddbird.net/) semantic grid system (web styling)
- phalcon (php)
- Google web starter kit (https://developers.google.com/web/starter-kit/) - Boilerplate & tooling for Multi-Device Development
- Vagrant (http://www.vagrantup.com) - Virtual Machine Manager
- docker (http://docker.io) - uses kernel cgroup nad lxc namespacing to isolate environments and resources in a single host (Linux)
- Grunt (http://gruntjs.com) - JavaScript Task Runner, automate repetitive tasks like minification, compilation, unit test, linting, etc.
- Gradle - Java build automation (based on Groovy)
- Apache Avro - Protobuf, Thrift like data serialization library, created and used internally by Hadoop.
- GulpJs (http://gulpjs.com/) - JavaScript Build automation built on streaming (pipe) concepts
- Chef/Puppet - Software configuration management
- mypy (http://mypy-lang.org/) New python variant with static and dynamic typing Load Testing
- Gatling - Written in scala
- tsung - Written in erlang, low memory consumption, able to simulate users from different IP
- jMeter - Java based
- [Leaky abstraction] (concepts/leaky_abstraction.md)
- [The Joel Test] (concepts/the_joel_test.md) (link)
- CQRS (Command Query Responsibility Segregation)
- Event Sourcing
- AOP (Aspect Oriented Programming)
- SOLID (http://en.wikipedia.org/wiki/SOLID_(object-oriented_design))
- Feature creep (http://en.wikipedia.org/wiki/Feature_creep) - Extra features go beyond the basic function of the product and so can result in over-complication rather than simple design.
- YAGNI (http://en.wikipedia.org/wiki/You_aren't_gonna_need_it) - a programmer should not add functionality until deemed necessary
- MoSCoW (http://en.wikipedia.org/wiki/MoSCoW_Method) (1.) Must have, (2.) Should have, (3.) Could have, (4.) Won't have
- There is No Spoon (http://blogs.agilefaqs.com/2009/06/15/there-is-no-spoon-objects/) There are no real-world objects, its all how we perceive things. If we try to model our software based on our understanding of the real world, the software would also be as complex as our understanding of the real world. Since in software we are dealing with creating abstractions, we really want to focus on behavior rather than Objects.
- [Bertrand Russell’s Inductivist Turkey] (http://mashimo.wordpress.com/2013/03/12/bertrand-russells-inductivist-turkey/) - It doesn’t matter how many cases we list during our inductivist reasoning, nothing guarantees that the next case will lay in this inference we deducted from our observations, as the possible experiments and observations are infinite by number and type. Clouds
- Cloudflare - CDN
- Material design (Google) (http://www.google.com/design/spec/material-design/introduction.html)