Apr 09

Search Engine style websites

One of our biggest projects right now is called the Knowledge Manager (KM), it’s an internal working name that comes from its roots – managing multiple large databases of knowledge through search engines. Part of the the KM project is creating our own search engine technology that works at a paragraph level and is extremely flexible. The original intent was simply to be able to provide search results from multiple databases or other sources in one hosted application. Its purpose has now grown to being a very flexible solution, not only hosting searches but also acting as a very robust content management system. We’ve built in some really cool features – one of the most useful is a centralized management architecture. From one location, you can manage the layout (of both plugin modules and CSS) of any site that is using the KM – and we plan to have hundreds of sites that are using it.

There are several really cool advantages about using a centralized codebase for web sites: whenever we spend time working on any site, fixing bugs, adding features, building new capabilities, all of that work is immediately available to all of our sites. As we build more and more sites that are based on the KM, we are reducing the time it will take for each succesive site to be installed, configured and have powerful features. Once the main codebase is completed (its nearly there), the KM will be packaged and deployment of a new site will literally take only a few minutes. Once a new site has been installed, customization of the site can be done by almost anyone – it won’t take a programmer to select a template and adjust the CSS or to add functionality.

The great thing about the design is we are able to utilize portions of open source CMS systems and pieces of other open source software , like web controls, in our plugins. In fact, the original design was based on the plugin architecture for WordPress and customized for our needs with searching. Some people who are a little familiar with the project have questioned whether we are ‘reinventing the wheel’, someone recently put it best by saying ‘some wheels are for 18 wheelers, some are for bicyles. You can’t put a bicycle wheel on an 18 wheeler. We needed a different kind of wheel, but used existing wheel design features.’ WordPress is a great platform but it lacks some of our basic needs, a centralized management system for example. I don’t want to imagine having to manage 100 WordPress installations – each one existing in its own installation. We designed a system that will have a central plugin repository and a central codebase. That way, when changes are made they are immediately available to every installation of the KM, if a new plugin is brought online we can easily add it to several sites – all from the same page. WordPress is a blogging platform with a page platform built on top of it. We needed to build a Search platform. It has been suggested that we could have done so by building a plugin for search into WordPress, and that is true. However, a plugin for WordPress would have had to be adapted to the existing WordPress architecture and could at some point severely limit our options. It also would have hampered, possibly even prevented, us from being able to build our latest initiative, PlugNSearch. We also wanted to allow any administrator to completely manage the GUI layout (the plugin locations and the CSS) – that’s not possible in WordPress – you have to know how to program.

As for re-inventing the wheel – I find this almost humorous because we really haven’t put any plugins together that would qualify for ‘re-inventing’ anything. So far, we have about 5 pages of code that run the entire architecture – the rest of the code has been plugins focussed on searching and displaying search results, something we would have had to write whether we were in the KM or in WordPress. We have been completely focussed on those plugins because we know that it will take very little time and effort to build the other plugins we are going to need because we will simply wrap open source controls into the plugin. There has also been a lot of effort expended on CSS. This effort has been focussed around designing a CSS layout that will be friendly enough that anyone can manage it. The CSS layout for WordPress is already done – and you have to be a programmer in order to do anything with it. The great thing is that any plugin that has been written for WordPress can very quickly and easily be adapted to the KM layout.

The reason we are creating the Knowledge Manager is to build a great platform that is designed from the ground up to be centered around Search and centralized management. In doing so, we will build in the best that is available from multiple open source applications like WordPress, PHPBB, Drupal and PHPNuke. We will also include several web controls that are open source. The Knowledge Manager application is more akin to Google or Yahoo than anything else – can you imagine Google being built on WordPress?

1 ping

  1. Paul Allen (The Lesser) » Provo Labs: Business Incubator

    [...] Next the developers will be working on our PlugNSearch technology for the next few days. I described what PlugNSearch will enable in a post on March 24th. Phil Burns described how PlugNSearch fits into our web site management software framework on April 9th. [...]

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>