It seems you're using an old browser...
We're sorry, but your browser is out of date. In order to view this site correctly, you may want to:
- Upgrade your browser to a newer version of IE.
- Try Mozilla Firefox, is fast, secure, and free!
hacking
The Road to deninet 6.0 Part 2: Unabashed UI Ranting
As a departure from previous site upgrades, I'm stressing a high amount of usability in deninet 6.0. By nature, I tend to be a UI snob, preferring to tweak and tune aspects of the user experience that would make everything easier and more intuitive. While this is commendable, Drupal itself is not making this easy.
Creating a strong UI experience was a key aspect of deninet 4.0. I was able to tweak nearly everything in the experience. Form organization, buttons, site layout, and so on. At the bottom of nearly each page was a two column section labeled "Where to go", providing links or actions for the current page. Each option was explained with clearly written text. While I made the blunder of using javascript links as opposed to standard Submit and Reset form buttons, I loved the site I had created. Deninet 4.0 was a clear evolution from versions 2 and 3, and easily the most refined deninet experience yet created.
While working on deninet 6.0, I pulled up my archives and reviewed my ideas from that period. I began to think, Wouldn't it be nice if we could provide the a strong UI experience for the next version? The biggest problem, unfortunately, was that tweaking that experience is no longer a simple matter. All versions of deninet prior to 5.0r were build on a custom content manager (or no content manager at all). I had maximum control of each individual page. If I wanted to implement a particular feature or change the presentation of a page, it would simply be a matter of making the necessary code changes.
Now that we are using Drupal, things aren't nearly as easy. For example, I recently had an idea to modify the Create Content page to be a table of icons and friendlier descriptions as opposed to the current definition list of links. To my annoyance, there appears to be no way to nicely modify this page short of ugly theme hacks or module development. Web searches show that few people have even considered such a thing. I'm not even sure it is possible to write a module to modify the page. It's possible to supplant the entire page with a custom one, but without hooks into the content types, it would be no better than a static page.
Block and breadcrumb themeing is particular annoying, as both are provided to the theme as a scalar variable containing HTML. If I'm unhappy with the output, I have to resort to string or regular expression replacements that would execute for each page display. If that doesn't work, the only means available to me is complex string manipulations and HTML parsing. As someone experienced with PHP development, I'm sensing a serious lack of separation between the data and presentation layers.
It's possible I will have to accept what I can when it comes to UI in deninet 6.0. As long as I continue to use Drupal to power the site, I will need to continue researching just how far I can modify it.
- tess's blog
- Login to post comments
Manga Module
Submitted by tess on Mon, 2007-12-10 01:20
It's been some time since I've written software on my own time. The last project I attempted was the ill-fated Yin content manager. Before that, it was Gazelle and the Internet Idea Database. I decided to stop so I could focus on developing Paper Girl. Now that I'm starting script-writing, one would think me mad for starting a software project at the same time.
One reason I decided to put down software development was that I didn't want to divide my time between two projects. A major undertaking like a content manager would take too much of my limited free time. This was the motive for switching to Drupal over a year ago. In essence, I wanted to "out-source" the content manager, so I could focus on what was important to me.
When I did switch to Drupal, every possible functionality was covered. I had blogs, users, forums, and image galleries. One function was the management of webcomic content. The Webcomic Module was designed explicitly for that purpose. The module had some bugs at the time, which I reported to the author. Eventually a new release came out that resolved these issues. Unfortunately, the module was seriously lacking in a number of different ways. I ignored these for the time being. After all, I wasn't going to draw comics any time soon, was I?
Eventually, I uploaded the few comics I have produced over the years. The original 24 episodes of Novella: College Journal Manga remain to this day, the only Webcomic managed content on the site. I never bothered to create a top-level link out of a sense of personal shame. I am a much better artist today than I was back then.
A year ago, Drupal 5 was released. In addition to several feature enhancements, the module API was changed. This necessitated rewriting all modules in order to use them on the new version. I was hoping that the Webcomic module would be among them, but I've come to the conclusion that the project has been abandoned by its maintainer. This leaves me with no upgrade path for those 24 episodes and any other future content. That is, of course, unless I decide to fashion my own solution.
Since I switched to Drupal, I've wanted to learn how to write modules. Developing my own version of the Webcomic module provides me a ready excuse. The Manga module will be my implementation of a webcomic content module. My plan is to first replicate core functionality of the Webcomic module. This includes basic content management, image uploading, and sequential browsing. Drawing from the Webcomic module, I've implemented most of these features already, learning how the module system works as I go along.
I spent most of this afternoon implementing image management in the module. This brings it to 75% functionality compared to the Webcomic module. I suspect a few more days of work will close that gap. I've decided not to implement the module directly in Drupal 5. I want to replicate as much functionality from the Webcomic module as possible before attempting an upgrade.
- tess's blog
- Login to post comments
- « first
- ‹ previous
- 1
- 2
- 3
deninet @twitter
- deninet: A Decision: Addendum: I wasn't terribly comprehensive in terms of my idea for content types in my last post. I bla... http://bit.ly/ccgzwY
- deninet: A Decision: It's Saturday night and I'm watching Dr. Who while Pazi plays games on our XBox. After checking my fee... http://bit.ly/9gue0v
- deninet: Eventually, writing: I nearly finished de-plotholing my 'novel' by the end of August, the latest self-imposed dead... http://bit.ly/cLi2Fa
- deninet: My Preconceptions are Being Challenged -- It's a Good Thing: I usually don't write much about what I do for a livi... http://bit.ly/boIX1R
- deninet: When you think about it...: Yesterday I watched a Care Bears movie (Care Bears Movie II: A New Generation), becaus... http://bit.ly/cik5Bg
Tag Cloud
Channel Updates
Stranded in Trainlight
-
14 weeks agoBlog entry
-
24 weeks agoBlog entry
-
27 weeks agoBlog entry
deninet staff
-
15 weeks agoBlog entry
-
23 weeks agoBlog entry
-
28 weeks agoBlog entry
-
28 weeks agoBlog entry
deninet dev
-
23 weeks agoBlog entry
Paper-Girl
-
28 weeks agoBlog entry
Art de la Neige
-
28 weeks agoBlog entry

