Why I Don't Write Web Apps (if I can help it)
This is what happens when I try to pick a language.
Note: If I didn't think it was possible to create a development environment without any of these issues (which I consider "major" for the most part), I would not have written this list.
C/C++
- NOTHNX.
Node.js
- Javascript is weakly typed.. boo.
- Cooperative multitasking.. booo.
- No threads, V8 memory limits, all the joys of a browser VM.
- The Java influences can still be felt.
Ruby (Rack)
- Sloowwww..
- Doesn't have language-level I/O concurrency & scheduling (Fibers don't count).
- Crappy package management.
- Classical OOP meh (although it is probably my favorite implementation of classical OO).
- Too much magic, even in the language itself.
Ruby on Rails
- brb—forgot my saddle.
Python
- Sloowwww..
- Doesn't have built-in language-level I/O concurrency & scheduling.
- Classical OOP meh.
Clojure & Scala
- The Java ecosystem.. stab, stab.
Note: Clojure might be the perfect language, if it didn't run on top of Java.
Erlang
- The fucking records.
- The fucking stack traces. (Haven't tried R15 yet)
- The fucking stdlib.
Note: This is my current choice for large applications.
Haskell
- That would be like using a bat-mobile to go grocery shopping.
- It also feels like a bad fit overall, looking at code from yesod etc.
.NET
- m$
PHP
- LOLPHP
Go
- Too young
- Disregards 30 years of programming language design.
Lua
- Not ready for the web
PHP isn't on this list.