
Parasol Boards has the basic functionality that is desired of a forum, however most of how Parasol Boards is done based on my philosophy of how forums should work. Parasol Boards is a free (as in beer and speech), open-source bulletin board solution that is backed by Pylons, a web framework written in the Python language.
Get Parasol Boards
Were you expecting a download link? If you were, then I'm sorry to disappoint. Parasol Boards hasn't met my standard for stable software; until then, if you want to use or play around with Parasol Boards, you're going to have to download and install git, then run the command below to download the latest code:
git clone git://github.com/faltzer/parasol-boards.git
The Philosophy behind Parasol Boards
What is the reasoning behind Parasol Boards? What makes Parasol Boards more formiddable software than others such as phpBB, vBulletin, MyBBoard, et all? The answer to this question can be summarized with: Parasol Boards is not the Swiss-army knife for those in search of a do-all forum solution that caters more to the generic structure and needs that consumers of forum software have adapted. If you are looking for a forum that does it all, then Parasol Boards is not for you, unfortunately.
A qualm that I have with all other forum software available over the Internet is that there is no real room for extensibility. The primary reason for this is because there is no adaptation of already existing code (modules) to approach a problem that has already been solved. Not in favor of the concept of recycling code, they choose to go as far as to write their own convoluted, over-engineered, non-supported implementations instead of taking advantage of the projects that actually want to help programmers write better code. This is akin to what MyBBoard and phpBB do with their codebase, opting to write their own "database modules"; this is harmful to the developers that will eventually want to extend the system, because now instead of actually having accomplish something, they have wasted valuable time attempting to learn how the database module works and attempting to work-around it. Picture a scenario where if there is only one database module, and both parties decide to use the same one; it would mean that if a user was to make a transition to either one, it would be painless to extend it, because all the user would really have to know is the schema of the database, and not have to sort through an inconsistent API which is most likely bug-ridden and sub par. Thus, the first point made in the Parasol Boards philosophy is that the reinvention of the wheel is only useful when one wants to learn how the wheel works, but nothing more.
Another issue is the one of identity; forum systems have too little decentralization for their own good. Every other forum system has a registration system all its own, and this brings the user to have to type the same redundant information over and over again (centralized login systems). Using more open and seamless technologies such as OpenID enforces the idea of a decentralized web, where things are not too tightly coupled and there is more room for everyone to work together to build a more open web. The consensus speaking against OpenID states that its complexity makes it useless to the average Internet user. The only reason for this is that its presence has not been that well established amongst the average Internet user. Thus, the only way OpenID will ever rise to become a prominent fix to the issue of identity on the Internet is if there are more consumers, and less providers when it comes to authentication. The convenience of adapting OpenID over a centralized login system besides what has already been stated is that most users will already have an OpenID available for use. AOL/AIM users have an OpenID, Google Account users have OpenIDs, Yahoo! users have OpenIDs, LiveJournal users have OpenIDs. Parasol Boards does not have any plans for adapting a centralized login system. Why register twice?
Parasol Boards does not sport a User CP, Admin CP, Mod CP nor any exclusive area where data management is done. This idea emphasizes that the user interface should keep data modification as seamless as possible. Consider user profiles, and consider a user viewing his own profile. If the user is viewing his/her own profile, then he/she should be able to edit it there with a simple click and a save. While vBulletin and Invision Power Board employs the concept of inline profile editing, it later becomes inconsistent because there are two methods of accomplishing one action. Python's motto is "There is one, and preferrably only one way of doing it"; why only apply that concept to programming and not to other branches of design such as interfaces? Seamless interfaces are a great idea; let's use more of those.

