Miško Hevery thinks so: Singletons are Pathological Liars
It actually discusses how Singletons allow APIs to be the liars (they depend on objects that aren’t explicitly advertised as dependencies).
I agree with Martin Probst’s response, but I’m actually more interested in this question by okoman.
The response is apparently answered in the post Dependency Injection Myth: Reference Passing
What do you think?
First, the teaser:
Swarm is a framework allowing the creation of web applications which can scale transparently through a novel portable continuation-based approach. Like Map-Reduce, Swarm follows the maxim “move the computation, not the data”. However Swarm takes the concept much further, allowing it to be applied to almost any computation, not just those that can be broken down into map and reduce operations.
This is pretty cool. It is accomplished using Scala delimited continuations, which are confusing.
Delimited Continuations Explained (in Scala)
I found that link to be pretty helpful, but wanted to jot down my notes because otherwise I’ll have to start from the beginning when I try to understand it again. So this blog post is essentially just a journal entry. Read on if you dare!
In the comments on my post about part-of-speech tagging, Manu asks
Can you post a legend what the pos tags stand for? At the moment I’m working on a project where I use this and I dont know at the moment how much tags there are and what e.g. “JJ”, “IN” and the rest of them means. This would be very helpful.
Ask and you shall receive!
These are the Penn English Treebank POS tags. Here’s the list that I found in an answer at StackOverflow, but you’re on your own for finding out what each of these really means:
- CC Coordinating conjunction
- CD Cardinal number
- DT Determiner
- EX Existential there
- FW Foreign word
- IN Preposition or subordinating conjunction
- JJ Adjective
- JJR Adjective, comparative
- JJS Adjective, superlative
- LS List item marker
- MD Modal
- NN Noun, singular or mass
- NNS Noun, plural
- NNP Proper noun, singular
- NNPS Proper noun, plural
- PDT Predeterminer
- POS Possessive ending
- PRP Personal pronoun
- PRP$ Possessive pronoun
- RB Adverb
- RBR Adverb, comparative
- RBS Adverb, superlative
- RP Particle
- SYM Symbol
- TO to
- UH Interjection
- VB Verb, base form
- VBD Verb, past tense
- VBG Verb, gerund or present participle
- VBN Verb, past participle
- VBP Verb, non3rd person singular present
- VBZ Verb, 3rd person singular present
- WDT Whdeterminer
- WP Whpronoun
- WP$ Possessive whpronoun
- WRB Whadverb
Are you seeing that nasty FTP page when trying to do an Automatic Update from within WordPress? I create new blogs frequently enough that this is a constant pain, but rare enough that I never remember how to do it.
Updating WordPress tells you how to identify the correct user:
If you do not know which user runs the httpd the output of
ps auxw | grep -E 'http|apache|www'
And thanks to Greg in the comments over at Linode’s Manage Web Content with WordPress page for the succinct description:
To make wordpress updates and plugin installs function properly, you need to set the entire public directory structure to www-data ownership, like so:
chown -R www-data:www-data ..../yoursite.com/wordpress
After a brief (*cough*cough*) delay, I’m back to figure out how in the world to use this Open NLP Parser. First, a quick refresher:
How to use the OpenNLP 1.5.0 Parser (surprise, you’re reading it)
Making Coreference Resolution your bitch with OpenNLP 1.5.0
I’m only going to warn you once: this is a long post. Go grab a beer or a glass of wine or some coffee before starting. It’s long. Now I’ve warned you twice.