Open-Source News CMS being Developed by The Texas Tribune and The Bay Citizen
knightfoundation.org
knightfoundation.org
https://github.com/texastribune/armstrong.base (base functionality)
https://github.com/texastribune/armstrong.esi (edge side includes)
https://github.com/texastribune/armstrong.apps.couchdb (couchdb views)
Spoken like someone who's tinkered with Wordpress for 20 minutes and decided that was grounds to make sweeping assumptions. Drupal's internals are tight. You ever hear a developer complaining about coding against it, guaranteed it's because they don't know what they're doing.
It's just that, for various reasons, when good programmers are given their choice of language for a project they tend to choose Python and not PHP, or Java, or BASIC. And that's just my experience, but I don't think I'm the only one who's observed that.
Speaking of sweeping assumptions though: I've been a PHP developer since version 3 and have deployed many WordPress sites, themes and extensions, going back to version 2.1. I'm quite familiar with its internals, and while not to the same extent, I am also experienced with Drupal.
I can say with certainty that if you are the kind of web developer who likes a cleanly enforced separation of logic from presentation, or who enjoys being able to predict with high accuracy the flow of control, you will be frustrated with WordPress and Drupal -- and PHP apps in general. On the other hand, if you like writing hook functions and embedding business logic in your templates, you're in luck because the APIs of both do a very good job of making this the default mode for development.
If we continue down this thread, we're going to have a language war; my main intent was to disabuse you of the notion that people who criticize PHP speak from ignorance, as I have been paid very well for a long time to perform all sorts of PHP-related mental gymnastics. I absolutely refuse to use it for personal projects and have scaled back the extent to which I use it at work, by finding a job where I have more freedom with my projects.
I could go on about the nastiness of PHP, but if you don't believe that this is the state of PHP CMS development -- perhaps you think that it's not bad to write code this way, or perhaps you think all the hoops that one has to jump through to do things The Right Way are not actually burdensome -- then we simply disagree on what it means to have a good programming environment.
If you feel that way, I'd recommend a couple of PG's essays to you:
http://paulgraham.com/avg.html http://www.paulgraham.com/pypar.html
EDIT: Another thing occurs to me: there are a ton of environments and frameworks where a 5 minute screencast is plenty convincing to someone looking to try it out. You can show off some great concepts and capabilities in 5 minutes. So yeah, 20 minutes of trying to do something trivial in WordPress is enough to get the gist of things -- if you can't find at least one great, if minor, experience in 20 minutes of using a tool, it's probably a good indication of things to come.
1. You can't afford the talent required to pull off a bespoke CMS.
2. You can't afford the cost of lifecycle maintenance on a bespoke CMS.
3. Newspaper editors make horrible PM's on software development projects.
Now that we've estabished your efforts are (at best) doomed to mediocrity drop what you're doing immediately and go check out Pressflow. If that isn't sufficiently "geared towards the newsroom" hire a couple of freelance developers to cook up a few custom modules and you're done for 1/100th the cost. Have a nice day.
> 1. You can't afford the talent required to pull off a bespoke CMS.
> 2. You can't afford the cost of lifecycle maintenance on a bespoke CMS.
Us at The Texas Tribune or potential Armstrong users? We're doing pretty fine with our CMS. Armstrong users won't have to pay to maintain an entire CMS since community maintenance should take care of most of their needs. They'll have to pay to maintain their templates and additions to the CMS, but they're already paying for those with their current CMS. I think Armstrong will end up saving many news organizations money over going with a proprietary solution.
> 3. Newspaper editors make horrible PM's on software development projects.
Is this in regard to the Armstrong project itself or implementations of it? There's little editorial interaction with Armstrong. We know what the two newsrooms involved need, and we've already built a CMS that satisfies those needs. Now we're abstracting out our unique needs and trying to anticipate the places where other implementors will need to make customizations. I think it'll work out fine.
Now that we've estabished your efforts are (at best) doomed to mediocrity drop what you're doing immediately and go check out Pressflow.
No thanks. I and many other developers are more productive in Python than in PHP. If there's a barrier between your CMS and the news applications you want to integrate with it, you will be even less productive, and many possible projects will be written off from the get go. (We could do everything in PHP/Drupal, but no.) For more on that, see Matt Waite's recent article: http://www.niemanlab.org/2011/03/matt-waite-to-build-a-digit...
No developer in a news organization wants to be faced with an "All these worlds are yours, except the CMS. Attempt no landings there" type of situation. A news CMS built using the tools that developers want to build news applications with is a huge win.
From a business perspective there's no money in humoring the guys in the development department on this one. Money's too scarce. It's cheaper and more effective to can any dissidents, swap in competent PHP developers and go with an implementation that minimizes wheel reinvention and the amount of code the organization is responsible for maintaining.
Armstrong users will only have to maintain their templates and customizations. This is a requirement no matter which CMS you pick.
Basically my point boils down to this: there are freely available, insanely flexible, totally customizable CMS's that have been under active development for a decade or more. Given how long it takes to create truly polished software of any kind, starting a CMS project from thin air doesn't make sense, you're hundreds of thousands of developer hours behind existing projects on day one.
This is absolutely true. Find good PMs, developers and designers you trust to do good work, give them authority and time.
[1]: http://www.documentcloud.org/about [2]: http://www.documentcloud.org/opensource
We'll see how it pans out, but I for one would love for Armstrong to integrate with the DocumentCloud API, in order to provide seamless document management, OCR, search, and annotation for the primary source docs behind Armstrong articles. I've been talking to Travis about it -- perhaps it's a bit of code we can contribute to the project.
Other recent Knight-funded open source includes the excellent TileMill project:
http://mapbox.github.com/tilemill/
... which, in another bit of cooperation, uses Backbone.js for its editing interface: http://developmentseed.github.com/TileMill/docs/tilemill.htm...
That focus is what's sets us apart from many of the other open-source offerings out there, in my opinion.
Maybe it would be more fruitful to invest that $975,000 in improving Drupal and/or creating a installation profile for newsrooms?
Not to mention a 2-1/2 year head start on understanding and actually delivering on user needs.
And a vastly larger developer base than this project will ever dream of having.
It drives me friggin nuts when people declare the need to build new customized WAFs and CMSs to meet their highly unique needs.
If OpenPublish doesn't meet your your needs, you can customize it for a lot less than $1M.
Edit: Here's a good white paper from MediaCurrent
http://www.mediacurrent.com/guide-large-scale-publishing-dru...
And the distribution site:
Should be interesting to see what they come up with. Are there plans to do new/innovative things, such as automating inclusion of crime data, as the author in that article talks about?
Is there any further information about costs? $975,000 seems like a lot to develop a CMS, but perhaps that's not all going to pay for development...?
Edit: I see now that although the linked article from the OP says "will develop", the Armstrong site says the first release will be this June and that the 'base of Armstrong' has been powering the contributing organizations' websites since 2009.
EDIT: Ah, I see my GitHub search-fu is not strong, but jashkenas' is ( http://news.ycombinator.com/item?id=2313737 ).
"The Nation", "The New Republic", "Japan Week" and a bunch of others use it.