> Congress shall make no law [...] or abridging the freedom of speech, or of the press
552 karma · joined July 2, 2014
> Congress shall make no law [...] or abridging the freedom of speech, or of the press
The Linux community is missing the forest for the trees.
- Drupal has to bootstrap itself and all modules on every request.
- Drupal makes waaaaay too many SQL queries
- Drupal generates horribly performing SQL queries
PHP is a slow abomination. The entirety of Drupal and all modules have to be bootstrapped and run on every request. It runs far too many SQL queries and those queries look atrocious (nested selects, tons of joins, etc).
Same with Magento Commerce. I was always shocked at just how slow it is.
We're using Haskell for server-side programming at my work and it's been fantastic. Functional programming is so well suited for stateless web services.
The HTTP server is by its very nature a pipelined or layered application. Requests are turned into responses through a series of transformations. They go down the layers as they work their way to your database, and back up the layers as they are built into responses. This is, incidentally, why functional programming is such a great fit for web servers.
However, Actors are not threads, so in a way it's like user threads. One million actors will be scheduled to run on a pool of OS threads.
How many more of these comments do you have to read?
Most people are not capable of running their own mail server. The convenience of services like Google, plus the risk of turning your mail box into a spam machine, vastly outweighs the downsides for most people.
Given the way Facebook, et al, are evolving however, I think the market will make this question moot faster than we can answer it.
The type-checker prevents certain classes of bugs, inconsistencies in types, lots of silly typos and mistakes. But it doesn't fix errors in our logic or algorithms. The type-checker doesn't know you should have added instead of multiplied, nor does it fix conversion errors at the borders of our programs where we, say, write a Haskell data structure into a JSON file.