LISTSERV mailing list manager LISTSERV 16.5

Help for CODE4LIB Archives


CODE4LIB Archives

CODE4LIB Archives


CODE4LIB@LISTS.CLIR.ORG


View:

Message:

[

First

|

Previous

|

Next

|

Last

]

By Topic:

[

First

|

Previous

|

Next

|

Last

]

By Author:

[

First

|

Previous

|

Next

|

Last

]

Font:

Proportional Font

LISTSERV Archives

LISTSERV Archives

CODE4LIB Home

CODE4LIB Home

CODE4LIB  May 2014

CODE4LIB May 2014

Subject:

Re: Very frustrated with Drupal

From:

"McHale, Nina" <[log in to unmask]>

Reply-To:

Code for Libraries <[log in to unmask]>

Date:

Thu, 15 May 2014 15:37:05 +0000

Content-Type:

text/plain

Parts/Attachments:

Parts/Attachments

text/plain (275 lines)

Good morning, Josh and everyone, and thanks for the shoutout, Andromeda!

Josh, I didn't take your OP as abrasive at all. We've ALL been up on that ledge, man!

If you know me at all, you know I'm pretty pro-Drupal. Pretty sure I still have KoolAid stains on my face. This is mainly because I'm a developer, not a programmer. Ten years ago, I was a reference librarian who stumbled into web site development and management because my colleague who had taken care of our website left the organization. This is still a pretty common scenario for many of us working full-time on library web sites now. I have absolutely felt all of the pain that is described here--the theme of my career in recent years is "inherited hacked Drupal 6 sites"--and I take the point that the Drupal learning curve can be as serious an investment as learning some of the other languages/frameworks/options mentioned.

But. That said, as far as the "bus scenario" (Josh! Nooooooooo!) goes, a web site developed in The Drupal Way will be much easier for someone else who is Not A Programmer to take over or assist managing. I assume you're a solo developer at your organization? If yes, others could continue to manage things even if, say, you wanted to do something crazy like take a long vacation. Or help you out with stuff through the UI. I have also inherited several homegrown CMSs over the years, and I would always take (weeeelll, with ONE particularly nasty exception) a Drupal site over that because I have some frame of reference versus something completely hand written by one person. Also, how future-proof is something you'd write yourself? Are you willing to take on the security implications and commit the time (and will your management support your time used that way--don't burn yourself out!) and effort keeping your code up-to-date, or would it be better to know that you can lean on the Community for that update to core at the end of each month? All things to consider, and as pro-Drupal as I am, I freely admit that it's not always the right choice.

Josh, can you describe some of the functionality that you're concerned about? One of my biggest concerns right now (that I think related directly to what you're experiencing in your house of cards scenario) about Drupal use in libraries is that library-specific module development isn't happening in the "official" Drupal way, by modules getting vetted and contributed back to drupal.org. (And I know that this is complicated; a colleague and I did some research on the barriers to contributing code back.) Anyone with basic knowledge of the Drupal UI can build a pretty complex site, including adding modules, but if the modules don't exist, non-programmers aren't left with much. I'm especially concerned about this as D6 drifts toward EOL, since, the last time I really tallied things up, anyway, a lot of the really cool stuff that had been developed for libraries as modules in D6 hasn't made it to D7, with D8 now looming for late 2014/early 2015. (Previous practice has been to retire the second version behind the new release, i.e., 5 was laid to rest as 7 came out, although there has been some discussion about extending the live of 6 because there's such a critical mass of sites still using it.)

Some of my evidence for this is anecdotal, too; at Drupalcons in Denver and Portland, and other birds-of-a-feather Drupal events, I've asked, "Hey, what if we all coordinated and developed a module for X?" (X=any number of common web functionality that libraries of any type would find useful.) And then several people in the room raise their hands and say, "Yeah, I've done that/I'm working on that!" I ask them if it's on d.o, and they say "No, but I'll share it..." and then their voices kinda drift off and they stop making eye contact. The thing is, if the code is "just" put on GitHub (I've got no beef with GitHub, but it's an audience/user problem) or shared in any way other The Drupal Way, you've lost a whole set of potential non-programmer users. (Sidenote: this is on my mind because I'm writing a proposal for the journal about library-specific Drupal module development. I think I've just written a good chunk of it. Thanks, Josh!)

Finally, I can also add, FWIW, that all of these pains are felt by developers outside of our library sphere as well. I worked briefly for a Drupal dev firm, and the amount of time we spent discussing whether or not we should still be a dedicated Drupal shop, or build/look into other frameworks, surprised me. The split, as you might imagine, was typically between the backend developers and sysadmins who were tired of all the things discussed here, and the developers and graphic design/developer/UX folks who relied on their existing knowledge of the Drupal UI and theme layer to get their work done efficiently.

Nina

Nina McHale
Digital Experience Consultant
Colorado State Library


________________________________________
From: Code for Libraries [[log in to unmask]] on behalf of Joshua Welker [[log in to unmask]]
Sent: Thursday, May 15, 2014 8:47 AM
To: [log in to unmask]
Subject: Re: [CODE4LIB] Very frustrated with Drupal

Thank you all for the responses. I hope my original email did not come off
as too abrasive.

The issue for me is that I am having a hard time figuring out what exactly
is the use case for Drupal. Do you want a dead-simple website? Use
Wordpress. Do you want to add some complex custom apps? Use a framework. Do
you want the worst of both worlds? Use Drupal. Getting a non-trivial Drupal
site up and running requires as much work as learning a full-fledged
framework like Rails, Laravel, or Django. And the experience you gain using
Drupal is not going to carry over at all into any future non-Drupal
endeavors because the Drupal platform is completely unique and doesn't seem
to follow any basic paradigms like MVC. When doing something like basic
data manipulation requires overriding core functions using custom PHP
functions in my theme, the entire point of using a CMS in the first place
has just been defeated. If I get hit by a bus, not only will someone have
to relearn Drupal and all its modules, but they will also have to wade
through my spaghetti-code efforts at patching functionality into Drupal.

What I would love is a CMS based on plain SQL tables, ActiveRecord, and
simple CRUD controls instead of abstract "entities" and "fields" that try
to be everything to everyone (and fail to be anything for anyone). But I
don't think such a thing exists, so I am interested in rolling my own with
a framework.

Right now, my framework choices are narrowed down to Ruby on Rails, Laravel
(PHP), Django (Python), and Flask (Python). For anyone who has used these,
do you have any insight into how maintainable your projects are and how
easily they are managed/inherited by others?

Josh


On Thu, May 15, 2014 at 9:02 AM, Jason Bengtson <[log in to unmask]>wrote:

> When I came into this position I inherited some work the former tech
> manager had done in installing and experimenting with Drupal as a tool to
> replace our current CMS-less ColdFusion environment. I also quickly grew
> unhappy with it. I've been experimenting with MODX, which I like so far. If
> you're a PHP developer, MODX will be of particular interest (and PHP is a
> pretty common server-side technology if you worry about the bus factor). I
> haven't had as much time to mess with it as I'd like, but I've built some
> wireframes with it and so far I like it.
>
> I second the low quality of most of the commercial, enterprise stuff. We
> used Cascade Server at UNM and it was absolutely wretched. It's been a long
> time, but when I last built a WordPress site I remember that as being easy
> to use and I think it's gotten more flexible/powerful. I've got a fiend
> who's really sold on it and HAM/TMC uses it for their website.
>
> Best regards,
>
>
>
> *Jason Bengtson, MLIS, MA*
>
> Head of Library Computing and Information Systems
>
> Assistant Professor, Graduate College
>
> Department of Health Sciences Library and Information Management
>
> University of Oklahoma Health Sciences Center
>
> 405-271-2285, opt. 5
>
> 405-271-3297 (fax)
>
> *[log in to unmask] <[log in to unmask]>*
>
> *http://library.ouhsc.edu <http://library.ouhsc.edu/>*
>
> *www.jasonbengtson.com <http://www.jasonbengtson.com/>*
>
>
>
> NOTICE:
> This e-mail is intended solely for the use of the individual to whom it is
> addressed and may contain information that is privileged, confidential or
> otherwise exempt from disclosure. If the reader of this e-mail is not the
> intended recipient or the employee or agent responsible for delivering the
> message to the intended recipient, you are hereby notified that any
> dissemination, distribution, or copying of this communication is strictly
> prohibited. If you have received this communication in error, please
> immediately notify us by replying to the original message at the listed
> email address. Thank You.
> <[log in to unmask]>
>
>
> On Thu, May 15, 2014 at 8:47 AM, Jason Sherman <[log in to unmask]> wrote:
>
> > Joshua,
> >
> > From my perspective, the module ecosystem is the greatest strength that
> > Drupal has.  Modularity is one of the central design goals of the system,
> > so if you if you want to avoid all third-party modules, you aren't going
> to
> > get any real advantage over something like wordpress.  Having said that,
> > I've experienced module dependency hell with Drupal, and it can be
> > frustrating.
> >
> > I tend to take a hybrid approach.  I try to limit myself to just a few
> > modules with any site.  Things like Views, cck, chaos tools, and entity
> > reference are modules I use for almost any site.  For functionality that
> is
> > specific to the site, I usually create a local module to store code and
> > configuration. I find that this kind of setup gives me the most of the
> > advantages of the modules, while limiting the potential for update
> > problems.
> >
> > Another option that a lot of people use is drupal distributions. These
> come
> > with quite a bit of customization for specific use cases ready out of the
> > box.  I haven't used a distribution, so I can't speak to their
> usefulness.
> >  I'm sure that their quality can vary just as much as modules and themes.
> >
> > Now for something completely different. Depending on what your
> requirements
> > are, you may have better luck using a narrower-purpose tool for the job.
> > Have you considered something like SubjectPlus?
> > http://www.subjectsplus.com/
> >
> >
> >
> > On Wed, May 14, 2014 at 8:35 PM, Joshua Welker <[log in to unmask]> wrote:
> >
> > > Warning: incoming wall of text.
> > >
> > > I've been working for the past several months on building a library
> > website
> > > with Drupal. This is my second try building a website with Drupal. I
> > chose
> > > Drupal for two main reasons: CCK/content types, and its ubiquity in the
> > > library community.
> > >
> > > Theme development was going relatively well, if a little overly
> > > complicated. But once I started trying to do anything beyond developing
> > > static pages, I have become more and more frustrated with Drupal.
> > >
> > > Drupal supports custom content types out-of-the-box, which is great,
> but
> > if
> > > you want to actually do anything with that custom content other than
> have
> > > it function as a plain page, you have to use the Views module. Views is
> > > great, but views can easily become very complicated, with custom
> > rewrites,
> > > grouping, relations, contextual filters, etc. Plus, a lot of
> > functionality
> > > in Views requires more modules (for instance, basic data manipulation).
> > > This is to build rather run-of-the-mill list features like a database
> > list
> > > or a list of events. And a lot of the advanced features in Views
> require
> > a
> > > solid understanding of SQL (groups, distinct, joins, etc), which kind
> of
> > > defeats the notion that it is easy for non-developers to administer.
> > >
> > > Now, at this point, I have modules extending my modules. And those
> > modules
> > > have multiple dependencies on other modules. I am getting worried now.
> It
> > > feels like my website is a house of cards. I've run into several
> > instances
> > > already where one of these plugins is updated and breaks compatibility
> > with
> > > the whole stack, and there is nothing to do in this case but open an
> > issue
> > > on the project tracker and pray for the best. I have looked into
> building
> > > my own modules, but the umpteen APIs and hooks required to do something
> > > simple as perform some regex on field data completely overwhelmed me
> > (and I
> > > am fairly experience with web app development).
> > >
> > > It's not just Views, either. Anything more complicated than static
> pages
> > > and navigation menus requires relying on the module ecosystem.
> > >
> > > Not only is the whole thing quite precarious, but it defeats one of the
> > two
> > > main purposes of a CMS: ease of administration. I want to know that if
> I
> > > get hit by a bus tomorrow, someone will be able to come in and take
> over
> > > without too much difficulty. But when I go back and look at my views, I
> > can
> > > sometimes barely understand the work I did a week ago. It is very
> > difficult
> > > to keep straight which functions are coming from which modules, and all
> > > those modules have separate (often poor) documentation.
> > >
> > > At this point, I am seriously contemplating dumping Drupal and moving
> to
> > a
> > > full-fledged framework like Django, Flask, or Laravel and adding some
> > > WYSIWYG CRUD controls for pseudo-CMS functionality. ActiveRecord-like
> > > systems are much easier to use IMO than fiddling for hours with Views,
> > and
> > > I have full control of what is happening. I honestly think it would be
> > just
> > > as easy for someone to inherit a custom-built framework app as it would
> > be
> > > to inherit my already-convoluted Drupal site. At least the framework is
> > > well-documented and should allow my app to be understandable to anyone
> > with
> > > some programming experience.
> > >
> > > Does anyone want to talk me off the ledge here? I know a lot of you are
> > > using Drupal for your websites. What are the killer features that keep
> > you
> > > using Drupal? If any of you have experience building websites using
> > > frameworks, what are your experiences? I really want to like Drupal,
> but
> > it
> > > seems to be more trouble than it's worth.
> > >
> > > --
> > > Josh Welker
> > > Information Technology Librarian
> > > James C. Kirkpatrick Library
> > > University of Central Missouri
> > > Warrensburg, MO 64093
> > > JCKL 2260
> > > 660.543.8022
> > >
> >
> >
> >
> > --
> > Jason Sherman
> > Systems Librarian
> > University of Science and Arts of Oklahoma
> > 405.574.1340
> >
>



--
Josh Welker
Information Technology Librarian
James C. Kirkpatrick Library
University of Central Missouri
Warrensburg, MO 64093
JCKL 2260
660.543.8022

Top of Message | Previous Page | Permalink

Advanced Options


Options

Log In

Log In

Get Password

Get Password


Search Archives

Search Archives


Subscribe or Unsubscribe

Subscribe or Unsubscribe


Archives

February 2020
January 2020
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
January 2004
December 2003
November 2003

ATOM RSS1 RSS2



LISTS.CLIR.ORG

CataList Email List Search Powered by the LISTSERV Email List Manager