Building an Online Community Part One: So You Wanna Build a Website?
In this series of posts I'll be discussing the building and creation of online communities, based on the experiences I've had running NJPineBarrens.com for the last five or so years.
I don't advertise myself to be an expert at web design (I'm not), nor do I pretend that I have all of the answers or a magic formula for creating an online community. What I do have is a very active community based around several websites sharing a common theme -- the history of the Pine Barrens region of New Jersey. NJPineBarrens.com is the largest - but not the oldest - site devoted to the Pine Barrens on the internet. We average about 20,000 unique visitors and 6GB of traffic each month. Out of those 20k users, slightly over 12% stay on the site for more than five minutes - an eternity in web time. Our discussion forums have over 500 registered members, and if I did not purge inactive accounts every now and then, that number would probably be doubled. Compared to other communities on the internet it's quite small, but for what it is - a niche site about an area of land that takes up about one million acres of land in South Jersey - it's pretty big.
There are three important rules when considering building a website:
- It's hard to make a good website. Don't let anybody fool you, the average person can't sit down and come out with a nicely designed website. There's too much technical knowledge needed. There's too much required in the way of design skills required. There's too much experience needed. There's too much talent needed.
- It's really hard to make a good website that people want to come back to. You may make a great website that gets a lot of buzz, but once people experience what you have to offer, what else makes them want to come back? Perhaps that's not what you're after. The Ted The Caver site(s) are a great example of this. A really compelling story, but nothing to draw the reader to come back. A good example of a site that draws people to return would be Amazon, Woot, or a news site like CNN.com.
- It's really, really hard to make a good website that people want to come back to and contribute to. Web surfers are lazy. They want information in small burts, and presented in easy to read chunks. It's rare for a web surfer to use the keyboard, except to directly type a URL or enter a search term. Engaging your users, having them want to come back, and having them want to add content to your site (and at the end of the day, things like discussion forums, blog comments, etc. are just user generated content -- no different than Flikr or Digg) is a challenge - and what this series of articles are all about.
SO YOU WANNA TO BUILD A WEBSITE?
Great. Start by being a member of another community website. It doesn't matter if it has anything to do with the community site you want to build. You need to spend a lot of time in a community to understand how it works.
Before I started my website, I was a voracious consumer of the website SomethingAwful. I read all of the articles penned by the webmaster Rich "Lowtax" Kyanka. I spent hours on their discussion forums posting in various threads. I watched the site grow, contract and grow some more. From here I learned how important it is to keep a steady - but firm - handle on your website. I also learned how important it is for a website owner to participate in their own community.
I was also a member in two other Pine Barrens related sites. One had a lot of good information, presented well, but wasn't updated often. The message boards got 1-5 posts a week, and most of them were trolls or flames. Another site had a more lively discussion, but was only discussion - no content to back it up. In addition, every third click or so you'd be presented with a full page ad for something. Every message posted had an ad tacked on the bottom. It quickly became unusable.
So, I figured there was a need for a new community website with a lot of content (articles, downloads, etc.) and active discussion forums that were free from trolls and overboard advertising.
Now is the time to point out some other gotchas for building a community. Aim small, and find a niche. It's highly unlikely that your idea for a new Star Wars Fan Club will get more than a smattering of visitors, unless it offers something really better than the handful of big sites, and thousand of other small sites offer. With the NJPB site, I knew that I was going to be serving a limited audience and was only "competing" with two or three other sites. My challenge would be to build something better, and attract visitors.
I'll be talking more about web design, software, and the steps to building a community in the next article.
More like SLOWlaris AM I RITE?
Create Database on Sunfire v210 with 1 x 1.2ghz CPU and 2GB RAM: 45 min
Create Database on Sunfire T1000 logical domain, with 3 virtual CPU's and 1GB RAM: 2h 20m
Something ain't right here.
Sun Logical Domains
We got a Sun T1000 server in last week to give Solaris Logical Domains a whirl. The idea is that if we can reduce the number of physical boxes we need to run Solaris 10 testing, we'll save on power and heat. (And have cheaper machines, too.)
My first impression of Logical Domains is that it's very, very beta. They may have released it, but they're still working the kinks out. The bulk of the release notes document is made up of known bugs, two of which so far have bit me. Despite this, though, I still have this crazy, unnatural fondness for Solaris. I'm writing this not as a Solaris sysadmin (which I am definitely not) but as a technology professional who could be accused of being chronically lazy and wanting a laymans explanation for a lot of things.
The Sun hypervisor seems to be this crazy hybrid of a hardware and software based hypervisor. It only runs on boxes that have the SPARC T1 processor, which includes the T1000, T2000, Enterprise versions of the T1000 and T2000, Netra 2000, Netra CP3060 Blade, and the T6300 Blade Module. I'm not going into any great in-depth discussions about how to install it, since the documentation does a pretty good job of explaining it - up until you need to load the OS.
Anyway, in my case, I took a T1000 and did a standard Solaris 10 (11/06) install. I upgraded the firmware of the box (more on this in a second), and installed some Solaris patches to add support for LDom's. The firmware upgrade is necessary as the hypervisor itself runs out of hardware, as opposed to VMWare which runs in software. Additionally, all of the configs for VM's live in hardware memory, and not as files on the OS. You then install the Solaris security hardening software, and the Logical Domains software. Presumably the security software prevents you from "breaking" the host OS to the ok> prompt and thereby halting your VM's. It also flashes an ominous MOTD when you log in.
Once all that is done, you create a primary domain. This is your host OS, which will handle your disk I/O, network I/O, and generally handle all of your resources. You assign it a number of virtual CPUs, memory, and configure it's networking. Like VMWare ESX, you configure virtual switches, which is just a fancy name for bridging interfaces like you do in VMWare workstation and server. In the case of my environment, I have bge0 (the first nic in the box) and bge1 (the second) configured. They both become vsw0 and vsw1 (virtual switch). Configuring the number of virtual cpu's and memory sets a limit to how much the domain can eat up and frees up other resources for the virtual machines. Normally, the OS would consume all of the resources in the box -- setting these limits puts a hard stop on how much it will use. The primary domain also acts as a terminal server - it opens various ports for telnetting into virtual consoles for the guests, as well as acts as a virtual disk server.
Now you create your guest domain. Like the primary domain, you assign virtual CPU (at a rate of 4 per core), RAM, disk, and network. You then bind the domain to the server, which then allows you to telnet to the port that it gets assigned. You're then looking at a ok> prompt just as if you were connected to any other Sun box.
The only way to install Solaris (and, by the way, it can only be Solaris 10) on a guest domain, is to Jumpstart it over the network. Normally you would issue a command such as:
ok> boot net:dhcp - install
But in ldom's it doesn't work. The virtual nvram doesn't have an entry for "net" so you have to make one. I found that out in a PPT marked "Sun Confidential" I found on the web. With that down, I was able to install Solaris 10.
In my next blog entry, I will complain about what has gone wrong since I installed Solaris, including why you probably don't want to add more physical RAM to your Sun box after you have this set up.
WordPress as a CMS / NJPineBarrens.com Fun – Part 2
So far I am really happy with my decision to switch from Joomla to WordPress for the site. Already editing an older article was much easier than it would have been with Joomla, and I'm just a huge fan of how clean the design looks.
I spent most of today making a new theme for vBulletin to match the style on the front page.
I also ditched the WordPress file repository and used one for vBulletin. Much nicer.