Drupal for Journalism School?

Events happening in the community are now at Drupal community events on www.drupal.org.
parakeet's picture

I've made test installations of Drupal before and, frankly, found its philosophies and implementation confusing, unfriendly and unnecessarily techy (concepts not explained in English). The prospect of editing themes and tinkering to achieve custom results seemed daunting.

Now I see this group, I'd like to ask your views on using Drupal to run an online news(paper) for journalism school students. That is, something with which undergrads can be introduced to and would practice the fundamentals of online journalism, from story publishing to blogging.

I was considering a Wordpress/WordpressMU installation for this as I'm more familiar with it at this point. But, though there is probably a plugin, Wordpress presents articles in chronological-reverse order; Drupal probably has a plugin that lets authors present stories in a human-specified news agenda (which extension is this?) but also allows for newsroom-like draft/edit/live workflow, I recall.

So are there any views on the suitability of Drupal as a j-school testbed - both to me as someone who would be installing it with a pretty quick turnaround, and to students, based on its similarity to pro online newsroom CMSes?

Are there any good themes out there that could be used for this purpose (otherwise, it just looks a bit like a blog)? Drupal theming looks complex and most existing ones look ropey.

How about the new v5? Does that make editing any easier?

Thanks

Comments

Many Admin Interface Improvements in Drupal 5

kreynen's picture

We use Drupal in both the undergrad and graduate programs at the Reynold's School of Journalism at the University of Nevada Reno. I spent most of my winter break porting our Drupal installs to the release candidate versions of Drupal because the interface improvements are that good. Now that 5.0 has been officially released, I wouldn't even look at 4.7.

Be sure to install a good WYSIWYG editor like TinyMCE or FCKEditor. One of the biggest advantages to these are they allow formatted imports from Word documents. I'd also recommend EXIF for pulling meta data from photos.

One of the drawbacks to Drupal 5 is how complicated the new default theme is. Garland is really powerful, but modifying the template and the CSS that goes with it can be a real pain for even seasoned developers. Unless you're only planning on making modifications with the Color module and the Admin settings, I'd look for a theme that is easier to update.

Drupal flexibility and theming

yelvington's picture

Wordpress is a fine blogging tool for plugging into a broader news site, but I wouldn't take it beyond that.

Drupal is an extremely powerful, flexible content and community management platform. That flexibility introduces some complexity.

Simple page theming actually isn't hard. Writing a generalized theme for distribution is not trivial, but converting a well-crafted HTML design into a Drupal template for a single site is close to trivial (not more than half an hour of work). In a gross sense, the only required PHP is "print $somevariable" sprinkled into the right content places in a design. You can make it more complicated by fussing with detail, such as changing the format of blocks in ways that go beyond simple CSS styling, but you don't have to do so.

The Views and Nodequeue modules, working together, can be used to create a very easy to use site management system for a news site with precise control over story placement. I'd suggest you call Darryl Kotz at the Savannah Morning News and talk with him about how his staff likes the Nodequeue system.

The most obvious improvements in Drupal 5 are in the installation and module management tools.

The key is in selecting the right contributed modules. We generally make great use of front page, image, img_assist, nodequeue, views, buddylist, tagadelic, htmlcorrector, mysite and a couple of custom modules for integrating with our proprietary registration and photo blogging systems.

Totally agree

jeb-1's picture

I'm with you. Drupal is hella confusing. The theming is complicated. People say you can theme anything you want, but really, you've got to start hacking the core to have any control.

e.g. if you want to change the login form, you've got to tweak the function user_block() in user.module. (which is i guess why you see so many people saying, "we're thinking of upgrading to version x.xx..." but can't because they would have to redo all their custom changes in the core.)

I recently looked at Wordpress after working on a Drupal site, and was so pleased at how easy it was to theme in comparison. WP operates on the idea that the core is a library, and you just call methods in your theme to build your various pages. It can still get a little snakey with all the PHP code mixed in with the HTML, but at least all the HTML is in one place instead of sprayed around in various files like with drupal. (I would say the ease of theming is why there are so many gorgeous WP sites.) The WP documentation is also superb.

WP is much more than a blog. It handles static pages nicely. You can even include a "page" in other pages (similar to Drupal's blocks). So you can make a non-bloggy homepage. Also the query_posts() (i think that's what it's called) function which you drop into your templates lets you specify different categories. So you can group articles like "Sports", "International", "Opinion" or whatever for a newspaper overview.

In short - I find almost every aspect of WP superior to Drupal. The only place where drupal only the more sophisticated access control mechanism, but I believe WP supports multiple authors and a simple publishing workflow out of the box. There is a lot of hype and enthusiasm for Drupal currently - but i cannot understand what the big deal is.

btw, from what i saw in drupal v5 - theming is unchanged. still messy.

I'm with you. Drupal is

merlinofchaos's picture

I'm with you. Drupal is hella confusing. The theming is complicated. People say you can theme anything you want, but really, you've got to start hacking the core to have any control.

This statement is incorrect.

e.g. if you want to change the login form, you've got to tweak the function user_block() in user.module. (which is i guess why you see so many people saying, "we're thinking of upgrading to version x.xx..." but can't because they would have to redo all their custom changes in the core.)

The login block at http://www.angrydonuts.com is nicely themed...and no core hacks were made.

This really didn't seem to be a useful post, so much as an ad for Wordpress. If Wordpress does what you want, that's great. I won't argue that Wordpress does some things very well.

But please don't spread lies about what Drupal can and can't do. Get your facts straight.

Leave core alone

jimsmith's picture

I have no where near the experience with Drupal that merlinofchaos has (he's one of the masters!), but I have to echo what he says.

There are all kinds of techniques and tricks to theme a site without hacking core. I'm only beginning to scratch the surface and I've been working with Drupal for about a year.

I'll also quickly add that learning some of this stuff doesn't come easy. Or at least it doesn't for me. Right now I'm struggling to figure out why my user icons aren't showing up correctly.

I admire WP a lot and use it extensively too, but I wouldn't want to build a robust, full-featured news site with it.

If you want to customize the login, check out this page. It helped me.

tweaking

jeb-1's picture

the login block was just an example of something basic that someone might want to theme. The difficulty with Drupal's approach is the idea that some HTML should be generated deep within code. So you can't just tweak a template or two, but have to go looking around in the core to figure out how something works. Then, if you don't want to diddle with the core, you go through a few more steps and create a block, or a bunch more steps to create an entire module.

A comment about the block technique. This is basically storing PHP in the database. A bit of a pain to edit since i have to use a browser instead of a text editor. Yes you can make a custom new login with the block technique, you still have the ugly default login in the system. So you gotta admit - it's not the most elegant solution. e.g. Using the site you mentioned, you still can see the default login: http://www.angrydonuts.com/user

So, yes, you don't have to hack the core. But that's probably the fastest way to getting the job done. I've also been trying to get the menu and the breadcrumbs to work the way I want and i don't see any other way other than making some messing around in there. (Or just accepting that the menu has a mind of it's own!)

The original poster was asking if drupal was the a better choice for a journalist students' website than wordpress. i don't think so, and the ease of theming WP is the main reason I would recommend he stick with WP. You can make it look and work how you want with minimal fuss. (And layout/design is damn important for a newspaper.) If that's an advertisement for WP, then so be it.

The difficulty with Drupal's

merlinofchaos's picture

The difficulty with Drupal's approach is the idea that some HTML should be generated deep within code.

That is not Drupal's approach. That is a problem of leftover items of Drupal transitioning to a more fluid environment. Some parts of Drupal's HTML are, in fact, still generated too deeply within Drupal, but it's not as bad as you make it sound.

you still can see the default login: http://www.angrydonuts.com/user

Only because I made no effort to theme that page, because it's rarely seen. I'm not sure what you're suggesting. Because I didn't theme it, it can't be done?

I also didn't use either of the techniques you named. It's not a new block at all; it's the same block. I did use hook_form_alter() to change the form a little bit, which unfortunately still requires a module, but I hope to have that changed by Drupal 6.

Yes, I fully admit that Drupal theming is complex, and there are places in Drupal where things are not exposed properly. In fact, that is something I am personally working on improving as Drupal moves forward.

Creating a small custom module for a site is not actually a lot of steps; though it does require some understanding of what's going on, and is certainly going to be beyond your average user. Again, I admit the complexity here, but not the impossibility.

Wordpress is much easier to theme. I grant that and continue to grant that.

The problem is, for large, robust, multi-editor news sites, Wordpress isn't going to be adequate. Drupal is barely adequate but can be made to be so. You couldn't do Savannah Now or Bluffton Today with Wordpress. It's not just a matter of going in and changing some theming, there's simply a lot more functionality needed than Wordpress has to offer. Of course, Drupal out of the box can't do those things either. They took a great deal of design and development.

Also, here's a silly question -- if you're so down on Drupal, why are you hanging out here anyway?

Theming isn't that hard.

agentrickard's picture

Theming isn't that hard. And changing theme defaults is built into Drupal core.

See : http://drupal.org/node/55126
Using Theme Override Functions

And: http://drupal.org/node/112358
Using Theme Override Functions For Forms

--
http://ken.therickards.com/
http://savannahnow.com/user/2
http://blufftontoday.com/user/3

WP weakness

agentrickard's picture

Well, I think you have a fundamentally different opinion of ease-of-use.

A comment about the block technique. This is basically storing PHP in the database. A bit of a pain to edit since i have to use a browser instead of a text editor.

The four items that make Drupal ideal as a platform over WordPress (which I also use) are:

1) Access Control -- you nailed that one.
2) Modules. Drop. Click. Configure.
3) Blocks. Click. Configure.
4) Extensibility through a well-doumented API (though WP has one, too).

Items #2 and #3 are at direct odds with your quote above. It is not -- definitely not for most users -- easier to paste PHP code into a text file than to activate blocks and modules. The great complaint I have with WP is that one must copy/paste raw PHP code and learn function parameters that must be written explicitly into template files to add any new functionality.

In Drupal, configuration is designed to be point-and-click, not copy-paste. Any major changes should be done not by hacking core, but by adding modules or theme functions that extend core.

Let's take Merlin's Views module, for example. It allows administrators to define new 'views' of data through a point-and-click interface. It is a replacement for a whole host of theme snippets, core hacks, and other copy/paste approaches.

With Drupal, functionality should be handled at the module and theme level -- and both you and Merlin are right, there are additional places where theme functions should be used to separate html from data. In WordPress, functionality is almost entirely in the theme (in that you have to paste various PHP functions directly into the theme files).

The result, oddly, is that WP is easier to theme -- because your theme logic is all bound together with the PHP code that renders the page. It makes the logic easier to see. Oh, you say, if I paste print show_this('post', 3), then WP shows the three most recent posts in that spot.

Drupal takes a different approach and tries to separate page-theme logic from page-generation logic. Surprisingly, this means that a lot of new users are totally confused by print $content in their template files.

But it also means that we have block configurations that say "select how many nodes you wish to show here" and then "where on the page should we put this content?"

The real original question is: What are the j-school students trying to produce?

See Steve Yelvington's post further down to get back to the main point.

--
http://ken.therickards.com/
http://savannahnow.com/user/2
http://blufftontoday.com/user/3

The road to hell

yelvington's picture

So you can't just tweak a template or two, but have to go looking around in the core to figure out how something works.

No, you have to stop and read the documentation and take the time to understand how the system works. You can override pretty much every default behavior through the templating and module systems by using documented methods. Shortcuts are the road to hell.

The original poster asked about Drupal as a tool for J-students. I think journalism students need to learn how to interact in a community setting, how to use that interaction to feed the reporting process, and how to apply the principles embodied in the NewspaperNext Blueprint for Transformation, especially jobs-to-be-done analysis and agile development/testing of concepts. We've found Drupal to be a useful tool for those purposes, but the technology is not really the point. I'd prefer to see students leave the microformatting of breadcrumb trails and login blocks alone, and focus on bigger issues.

scripps foundation semester in washington

darthcheeta's picture

The Scripps Howard Foundation Wire Service runs a Semester in Washington program, which recently relaunched their site using drupal: www.shfwire.com. They are using it more for straight up story delivery and not tapping the social networking potential.

while it may not be straight up j-school, i think of the most impressive drupal mods in deployment currently is student-run radio station KPSU in portland, oregon: www.kpsu.org.

one of drupal's great hidden advantages is the native potential to share logins across multiple sites using the cms. the power for this in terms of networking sites of college papers, student groups, community radio stations or public broadcasting together is phenomenal.

if everyone is thinking alike, chances are no one is thinking.
www.davidandrewjohnson.com

if everyone is thinking alike, chances are no one is thinking.
www.davidandrewjohnson.com

Newspapers on Drupal

Group organizers

Group categories

Topics - Newspaper on Drupal

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: