Hari's Corner

Humour, comics, tech, law, software, reviews, essays, articles and HOWTOs intermingled with random philosophy now and then

Geeky and Meeky 4 - Xorg issues

Filed under: Geeky and Meeky comic by Hari
Posted on Sun, Apr 29, 2007 at 08:37 IST (last updated: Thu, May 7, 2009 @ 21:24 IST)

Here's my next Geeky and Meeky issue. It's entitled Xorg issues. :)

Geeky and Meeky - Xorg issues
Comments (2)  

Staying with WordPress

Filed under: Site management by Hari
Posted on Fri, Apr 27, 2007 at 19:51 IST (last updated: Thu, Oct 4, 2007 @ 15:14 IST)

My blogging friends are aware that I've been extremely displeased with WP for a while now. I don't need to go into the reasons for this. Suffice to say that I wanted to move my blog to a different system.

After a lot of hunting around for blogging systems, I narrowed it down to a couple of software for deep consideration. TextPattern and b2evolution. After taking apart both these in great depth, I've found that while each is great in its own way, neither are really suitable to port this blog over for different reasons entirely.

There are a couple of reasons why I absolutely cannot move to b2evolution directly: it doesn't have support for WordPress permalinks, which means that if I ditch this blog completely, links to archived posts would break. On the other hand, I could have merely discontinued this blog with a forwarding address and then started afresh in a new URL. But after giving that idea a lot of thought, I decided against it (at least for now). I might revisit this idea later, though. The other main reason why I am hesitant about b2evolution is that it's so rich in features, yet it misses some features that WordPress has, e.g. static pages and optional post excerpts (not the "more" tag). The lack of a mass-edit mode for articles and comments in the admin panel is another issue. These might sound like small problems, but I use post excerpts for the sake of RSS feeds to avoid syndicating the entire article and I also use static pages for my "About" and "Articles" page. Again, as I mentioned in the past, the templating system is a major pain, even for a PHP coder (which I can claim to be :P ).

With TextPattern the problems are entirely different. It does support WordPress permalinks, so I can directly overwrite this blog without losing any back-links. But at the same time, it lacks a calendar and date-based archives (which I consider a must for a long-time blogger). Importing posts works fine, but it isn't perfect. I lose my uploaded files. Categories are also broken since TP supports only 2 categories per post (while I've marked several categories for a post at times). TP also breaks some of WordPress's formatting in posts like HTML entities - for instance, the symbol for less than ( < ) and greater than ( > ) is replaced by the HTML code &lt; and &gt;. Besides paragraph breaks are awry and sometimes there are large gaps between paragraphs (probably due to TP's extra work in formatting). Again, another drawback is that smilies are permanently removed, since TP doesn't use a smilie system.

I could go on with how I considered Serendipity, NucleusCMS, bBlog and even Drupal at one point. When I got as far as Drupal, I realized it was time to stop. I was going way off in a tangent.

The long and the short of it is this - I could fix all these issues - some are minor hassles, but some are real buggers. It's also funny how exactly "that exact feature I badly want" is missing in each of these blog software - even if it is a minor one. The more I look at the alternatives, the more I'm convinced that I have to cook up my own blog solution sometime in the future (just as I did with my own CMS for harishankar.org).

So I'm sticking with WordPress for now after giving all the alternatives due consideration. If I come back later to consider other blog software, this post will give me an idea as to why I decided not to move at this time.
Comments (6)  

b2evolution review

Filed under: Software and Technology by Hari
Posted on Tue, Apr 24, 2007 at 13:26 IST (last updated: Thu, May 7, 2009 @ 21:06 IST)

Now it's b2evolution's turn to face the fiery and critical eye of Papa Hari. :P

Before I begin this review, I have to mention that I've been playing around with b2evolution for a while and seriously considering it as an alternative to WordPress. But I may never end up using b2evolution for two reasons. Firstly, because there simply is no way to import my blog from WP at present (and maybe in the forseeable future) and secondly, its messy, cluttered templating system. But more on that later.

b2evolution is a monster blog software (the developers call it a multilingual, multiuser multiblog engine) that's not for the faint of heart. Having said that there are actually two ways of looking at b2evolution if you're an intermediate or advanced user who doesn't mind a bit of a learning curve.
  1. Bloated, extremely unwieldy and needless complicated as a pure blogging system, or
  2. Extremely flexible, powerful and full-featured CMS that can also run as a multi-user blog engine.
It really depends on which way you look at it. How do I look at it? Read the rest of the review and judge yourself ;)

Installation and administration

Installation is fairly routine for a PHP script of this kind. It has a wizard-like installation routine which does most of the work including setting up the b2evolution tables in the database specified.

The initial setup is what could frighten off most bloggers. The admin panel is a real monster. And the multiple blogging interface of b2evolution is intimidating and quite unintuitive until you get used to it. But after a little bit of tweaking around I found out how to set up a simple blog without much effort. This is actually the easy part, but it does take some time. Setting up the default blog options is time consuming but not really rocket-science. One thing I don't like about b2evolution is the lack of immediate, context-sensitive help for the admin panel. That is a big minus, considering that it's quite complex and the meaning and scope of some of the options are far from obvious.

I'd like to mention one specific aspect - there is no separate link-management feature to include a "blogroll" in the sidebar. For that you need to create a separate blog for links and then use that as a linkblog for your main blog. That's a bit clunky in my opinion, but that's the way b2evolution is set up to work and I guess it requires quite a mindset change if you're used to a pure blogging system.

Overall the admin interface is very powerful if a bit unwieldy at times. The absence of a mass-edit mode for posts and comments is a big drawback in my opinion. Too much clicking around necessary for removing multiple posts or comments.

The "backoffice" has a definite learning curve, but it's not unmanageable.

Theming and templating system

b2evolution has quite a few skins and themes found in the main site b2evolution.net. But if you want to customize the look and feel of your blog, including the page elements, you will have to dig a bit deeper. If the admin panel confused you initially, then template and theme customization is where things get really ugly. If you don't know PHP - forget it. Customizing the template files require PHP knowledge. If you just want to tweak the CSS file, it gets a little easier, but the number of page elements that define a b2evolution theme can still scare any new user.

From an advanced user's perspective, theming is not quite as satisfactory either. You see, when I wanted to customize certain page elements, I found that the PHP code used in the theme tends to insert its own XHTML into the blog. This means that I have no easy way to customize certain elements the way I want to. For example the date being displayed for blog entries has <h2> </h2> wrapped around it. Now I don't want it to be a heading. Guess what - I have no easy way to change that since the function used to display that element automatically generates the XHTML code. Likewise, I noticed that there are other places where the PHP functions seem to insert its own formatting code into the template, which makes templates less customizable and more messy.

Other than that, templating is not too hard for an experienced pro. I managed to recreate my WordPress theme (used currently on this blog) from the "custom" theme without too much effort and too much messing around with the XHTML code. However, I did have to remove some of the page elements which I felt got in the way too much.

Overall, the templating system is less than satisfactory. Too much PHP code makes it confusing and difficult, although it's really not that hard to take an existing theme and modify it to suit your needs. The real trouble is when you want to really customize the page elements in depth and that's where you find that the PHP code gets in your way seriously.

Support and extending b2evolution

I haven't really looked deeply into community support for b2evolution, but it does have a theme and plugin repository in the main website. Pre-built community themes are decent, but nothing much to talk about. There are also plenty of plugins if you are inclined to complicate an already large blogging system with more features :P

The website itself is quite well organized and easy to navigate. The documentation system is based on MediaWiki and appears better organized than the WordPress community documentation system.

Overall impressions

b2evolution is quite impressive as a multi-user CMS system. Maybe it's a bit overkill for a single user blogging system with the gzipped download package being more than 2 MB in size. If you're not worried about disk space utilization and you don't mind the initial learning curve, I think b2evolution has a lot to offer. The disappointing aspect is the over-complicated templating system, but then many CMSes are guilty of this, even WordPress to an extent.

The biggest disappointment about b2evolution in my opinion is that it has no converters/importers from most other popular blogging systems (except b2/cafelog and Movable Type). Seriously when you consider that most people start off with Blogger or WordPress, I would have thought that a converter from those systems would really help in b2evolution adoption. There's a todo in the developer site that's nearly three years old, but it appears that nobody's really interested in making one, which is a real pity since I would seriously have considered switching to b2evolution otherwise.
Comments (14)  

TextPattern review

Filed under: Software and Technology by Hari
Posted on Sun, Apr 22, 2007 at 09:12 IST (last updated: Thu, May 7, 2009 @ 21:06 IST)

The background

In the last few days, I've been getting very blog-itchy. I've been slightly miffed with WordPress for a while now, mainly because of the nutty auto-save feature for writing posts which cannot be turned off from the admin panel. To be honest, I've been really irritated by it, because it keeps creating unnecessary draft pages whenever I start typing even a few sentences and I am somebody who is extremely finicky when composing articles. I have this tendency to keep rejecting a hundred drafts so this autosave feature forces me to have to delete unnecessary drafts every time.

So in my discontent with WordPress, I was seriously considering a change. I evaluated a few options including b2evolution, but unfortunately b2evolution doesn't seem to have a WordPress importer currently. And as I mentioned earlier in an earlier review, it also has too many features I don't need on my blog. Having said all that I decided on TextPattern as an excellent replacement for WordPress. Having read so many great reviews of TP, I wanted to really give it a try on my local host to see whether it fits my needs and whether I can smoothly and safely import my existing WP blog into TP. And even though I regretfully decided against the move after playing around with it for a couple of things, I still think TP is an excellent, customizable publishing tool that can be tweaked in an infinite number of ways without too much effort.

Before I go on with my review, I must mention a strange quirk I found in my TextPattern installation. I found some admin panel options missing in my setup, in particular the admin options related to comment settings. How those settings were missing I have no idea and I had the latest version installed. Everything else seemed to work absolutely perfectly. :? (Update: This FAQ entry is the key to the mystery)

Importing from WordPress

Initially I had problems with importing the WordPress content into TextPattern. When I first tried it, I imported without specifying the section and the imported articles showed up as 404 whenever I clicked on their permalinks. However, once I imported them into a section, it seemed to work well. However, the biggest problem was that commenting was disabled on all the imported articles. When I tried to look for the admin settings related to commenting, they were missing. When I went to edit individual articles for re-enabling comments, the comments settings showed up as "expired" and I couldn't change that. So altogether, I had to conclude that importing from WP is not yet perfect in TextPattern.

But apart from the import, I am pretty impressed with TextPattern in many aspects.

The positives

  1. It's really lightweight. The gzipped download package is only 257.5 KB!
  2. Textile, textile, textile. This markup is so much better than a WYSIWYG editor or XHTML code for formatting blog posts. It's clean and it's very easy to learn.
  3. The admin panel - it's pretty well organized and powerful. Unlike a lot of CMS systems, TP doesn't overwhelm the new user with a bewildering array of choices. Within a few minutes I was able to get it up and running. Pretty easy learning curve.
  4. The "tag-builder" for editing templates. This feature really makes it easy to customize each and every aspect of the website without having to learn all the code involved.
  5. The templating code format is really very simple and straightforward. No PHP knowledge necessary for editing templates.
  6. The ability to organize content into "sections." This is the feature that really sets it apart from the regular blogging tool. I can see infinite ways to use this feature to organize huge amounts of content in a meaningful manner.
  7. The image and file upload interface - this is a major plus over WordPress with its clunky upload facility.
  8. Last but not least, W3C standards compliance (XHTML 1.0 Transitional by default, which is good).

The negatives

Apart from the tacky import from WordPress, here are some of the quirks I noticed in TextPattern:
  1. Templates stored in the database. Personally I hate CMSes that store the display templates/themes in the database. I am forced to edit them using a web interface which is very inconvenient in my opinion. There's nothing quite like using my favourite editor (Quanta Plus) to modify XHTML and CSS files and uploading them right at the end, after I make sure that all the changes are correct and to my liking. That saves so much of copying and pasting around. Database templates suck!
  2. Inability to have multiple, unique themes. I know that it's possible to have multiple style sheets for the templates, but that's not quite the same as separate, unique themes which can be maintained separately and applied with a single click. Since I'm somebody who's constantly tweaking and creating new themes for my blog, I found this a major limitation
  3. Too many kinds of categories - article categories, image categories, link categories, file categories - they can get a little overwhelming to organize.
  4. Inability to have more than two categories per article is another big limiting factor. Particularly because I tend to use categories more as "tags" and have several categories applied to a single article.
  5. No date-based or calendar-based archives as far as I can see. Again, a major issue for a long-time blogger with lots of older posts.
  6. Some missing admin panel options. I don't know whether this is peculiar to my installation or that the online documentation is outdated (I am running the latest version - 4.0.4 as of this moment).
Overall I'm a big fan of TextPattern and I think the pros outweigh the cons to a large extent, but I think that I'll stick with WordPress for the moment until the developers sort out the issue with the import.
Comments (9)  

IDEs versus plain text editors

Filed under: Software and Technology by Hari
Posted on Fri, Apr 20, 2007 at 15:42 IST (last updated: Wed, Oct 29, 2008 @ 22:27 IST)

Here's my take on the IDEs vs. plain text editors issue. In my opinion, these are the pros and cons of both. No solution is the best solution for all occasions and all programmers and I myself have been torn on this issue in the past. So to clarify myself here's what I think of IDEs and text editors.

IDEs

In my opinion, a great IDE is one that reduces programming time by half and provides significant advantage for development in a particular language. I don't believe in general IDEs for all programming languages and if I use a C++ IDE, I believe that I should be a more productive C++ programmer (depending on my own level of competency). Likewise, a PHP IDE should provide all the features I need to build complex and intricate PHP/XHTML scripts with significant development advantages over plain editors (by the way, Quanta Plus is the best web development environment I've come across till date).

Here are my list of pros of good IDEs:
  1. Provides significant benefits like project management to keep things organized, seamless integration with other productivity tools like debuggers, profilers, versioning systems and GUI editors for particular libraries.
  2. Provides editing convenience for specific languages. For instance, a C++ IDE should provide me with function auto-complete for library functions, function tool-tips, class browsers, code folding to browse code easier, integrated help system for that particular programming language and other minor things like auto-indent, syntax highlighting and so on.
  3. Provides quick code generation and templates for commonly used programming projects - for instance, a GTK project, a KDE project, a OpenGL project and so on.
  4. Provides a sane build environment without manual intervention, the necessary compiler and link flags and switches for successfully building an application; provides convenient organization of frequently used project settings and so on.
  5. Usually provides extensible plugins which allow programmers or third-party developers to add more useful features as necessary.
And the list of Cons
  1. Proprietary project formats might make it difficult for programmers to work with other IDEs or tools simultaneously.
  2. Adds more bloat to smaller projects - usually creates a whole lot of extra files and an entire project tree. Might also add unnecessary features which programmers might not want in their projects.
  3. Memory and resource hogs. Some IDEs are so memory hungry that even 512 MB of RAM might not be enough to run them without a significant slowdown.
  4. Sometimes becomes too complicated and so the programmer spends more time fighting with the IDE than with the problem at hand.
  5. Are not always stable. Some IDEs are known to crash frequently when handling huge projects and might be prone to memory leaks.

Plain Text Editors

Plain text editors are quite useful for programmers in that they usually get out of the way and allow programmers just to write code. In my view, they're extremely useful because they aren't tied down to a specific programming language and many of the modern ones also come with some benefits of IDEs without all the bloat.

Here are my list of pros for plain text editors.
  1. Usually not tied down to a particular programming language. Allows freedom for the programmer to write all programs in a single favourite editor and compile them from the command line.
  2. Are small, lean and responsive. Also many of them are oriented to editing features which programmers find hugely convenient.
  3. Most modern text editors provide a whole lot of syntax highlight support with the ability to customize.
  4. Most text editors focus on ease of use and simplicity. So programmers spend less time in fighting the features and can focus more on the task at hand.
  5. Many text editors are also highly customizable and extensible through scripts and plugins.
And the list of cons:
  1. No context-sensitive help for programmers. In particular no function tool-tips or auto-completion, no project management, class browsing and other useful IDE features like debugging. Programmers will spend more time in browsing the online documentation separately for all such issues.
  2. Usually doesn't take care of providing a sane build environment for programmers. No Makefiles, no language specific settings, doesn't take care of compiler and linker switches, library settings and so on. In short all these have to be handled by the programmer separately which can be a significant waste of time.
  3. For large projects, some text editors might not be suitable - particularly when editing multiple files at the same time and some kind of file/class organization is needed.
  4. Programmer might waste more time in customizing the text editor to be more productive wants rather than focus on writing code.
It will remain a never-ending debate for generations to come. ;)
Comments (2)  

Commenting system on my reviews site

Filed under: Site management by Hari
Posted on Thu, Apr 19, 2007 at 20:20 IST (last updated: Thu, Jul 17, 2008 @ 10:45 IST)

I've now hacked up a simple commenting system for my home-made CMS on my reviews site, harishankar.org. It now works fine. I had some initial hiccups because I used a PHP 5 specific function on my local development environment (which has PHP 5 with Apache 2). Drew kindly helped me trace the issue through his server logs and I replaced that function with regular PHP 4 functions.

It's not possible to post comment on individual articles, but you can mention the article URL in the "subject" line and post your thoughts. :)
Comments (6)