I wrote this article in 2005 but I think for someone it still might be interesting.
Let´s say you want to start a new community/project (herein after referred as project) how would you approach this task?
- STEP 1: Finding the Main Topic
- Spend some time thinking about your major topic:
- STEP 2: The Concept
- STOP HERE
- Things you should think about are…
- STEP 3: Finding Help (if you don´t need help skip this Step)
- Ok, how to get help when you can´t pay?
- Step 3.1
- Step 3.2
- Step 3.3
- Step 3.4
- Step 3.5
- Step 3.6
- Step 3.7
- Step 3.8
- Step 3.9
- Ok, how to get help when you can´t pay?
- STEP 4: Building the Project
- The Code
- The Design
- A Forum for Community building
- Coordinating work
- Method 1
- Method 2
- Method 3
- Method 4
- The Content
- STEP 5: Launching and Promoting your Project
- FINALLY: Always remember
Ok let´s get started.
STEP 1: Finding the Main Topic
The most important thing for a successful new project is the major topic your project will have.
Most likely you already have an idea about what your project will be.
If you don´t have one start thinking about what your interests are.
If you start a project about something that doesn’t really interests you (let´s say because you have a cool sounding domain about aircrafts but you hate flying :D)
it will most likely don´t work because any project needs leaders that actively participate in the project live and spend quite some energy on building the project and make it a success.
Spend some time thinking about your major topic:
- Is the major topic interesting enough to build a project around it?
- Are there any other projects already existing about this topic?
- If there are already others, how many?
- Do I miss anything important on these projects that I could implement in mine or would mine be just a copy/alteration of the other projects?
You need to offer your new members something special that makes them want to be part of your project.
The more “unique” your topic is and the less other communities exists about your major topic the more likely your project will be a success.
Starting a project with no major topic will end up for over 99% in an unsuccessful attempt.
There are literally millions of “General Chat Communities” (only a few of them are really successful) so why the heck would anyone be interested in joining another new starting project without a major topic? Would you?
STEP 2: The Concept
Most Users who want to start a project have an Idea and are so excited about it that they get on building a website or forum right away.
Of course you could… but believe me, it is better to make some additional thoughts first.
Sit back and start thinking about what you want to achieve.
Make a text file like “Concept.txt” and start making notes.
Things you should think about are:
- What is my major topic?
- What are my target users/usergroups?
- Who are my competitors?
- What do my competitors offer?
- What will differ my project from my competitors?
- What are my goals?
- What do I want in my project?
- Do I need a Website?
- Do I need a Forum?
- If I need a Forum which one is the right one for me?
- Do I need additional Software/Scripts/something else?
- Are there any open source/free scripts that would do things I need?
- What content can I offer at start of my project?
- Do I need help?
- Do I need someone that can program PHP?
- Do I need someone for the Design of the Project?
- How will the structure of the project be?
- Structure of the Website
- Forum Structure
- Community Structure
- How will the structure of the project be?
- What features will be project offer the users
- What problems could occur in the future?
- How can I prevent/solve/avoid these problems?
- How much will it cost me? Can I afford it?
- How should the project look like (design ideas)?
- Do I need a logo?
- What will the name of the project be?
- Is there a domain available that fits the name of my project?
You can keep this relatively simple or make it complex by outlining the whole project and it´s structure.
If you will need help like from a php programmer to build your project for you it really helps to have good concept so that he understands your ideas and get an idea how to make them possible. This will also later come in handy if you lost your track a little because you can always read this and get back on track.
The Concept is also important for getting help in the first place.
The more time you spent thinking and outlining your project the more likely it is that you will get help (explained in Step 3) and can avoid future problems.
STEP 3: Finding Help (if you don´t need help skip this Step)
After you have made a Concept for your project you most likely realised that you need help on one or more things regarding your project.
Let´s say you have no clue how to write a php script and are no crack in working with graphic programs either but you are not that rich to afford paid work either (If you are it´s much easier to find help cause people love payment :D).
Ok how to get help when you can´t pay?
First thing you need now is, to find places where people hang out that could help you.
For PHP Programmers this would be forums about PHP 😉
Start to google for forums about php and php programming.
Look for forums with an active community and lots of posts because on small communities you´ll probably wont find anyone willing to help you.
After you found 3-5 communities you need to make a help request thread.
There are several keys for a successful requests:
1) Look for the right forum to post in and respect the rules of the forum!
If a forum has a “Job offers” forum post there. If they don´t have a specific forum for requests post in the one that you think most likely fits.
Simply posting in a forum like “PHP Professionals” wont get you help when there is a “job” forum because your thread gets deleted
2) Make a descriptive topic!
A topic like “need help” will not work! Make a topic like “Need a php programmer for a “your Topic” Project”
3) Introduce yourself.
Tell them your name, how old you are, what your experiences are and everything you think they need to know about you.
4) Describe in as much detail as possible what you are going to build without giving away any specific secrets.
Describe the Idea you have, how you want to achieve this.
Tell them if you intent to earn money with it (if you intent to, you most likely need to offer them a percentage of your earnings)
or if it will be a non commercial project.
Here your concept comes in handy. The more unique your Idea is and the more effort your spend on thinking your project through, the more likely you find someone that will support you because he likes the idea.
Simply saying “I want to do a browser game” wont get you any help but if you have a full concept of what you want to achieve you might get lucky.
5) Describe your requirements of the programmer skills as detailed as possible.
It is a huge difference if you need someone that can program a guestbook or someone who can program an online shop from scratch for example.
And always make sure that there are no free/open source scripts available for what you are asking help.
If you want someone program an online shop for you, you wont find one (unless you pay) because there are free online shops available and it would be a waist of time for the programmer.
6) Describe what you already have or will haveTell them what you have, like a server or host for the project, that you already have or will get a domain (you don´t need to name it, just that you have one or planing to buy one). If you really are serious about this project don´t use free domains or webspace. No programmer (most likely) will spend time working on a project that don´t even has it´s own domain.
7) Offer them something in return.
If you can´t offer money offer them advertising. Or let them use your project for there portfolio.
Offer them to name them in your “About Us” section with email and homepage link.
Or anything else you think would be interesting for them like if you expect to earn money with the project later a share of the future money.
8) Leave as much contact details as possible!
Give them the possibility to contact you in different ways if they are interested or have questions:
- by PM in this forum (make sure you activate email notification for new PMs)
- by Replying to this thread (make sure you activate email notification for new Replies)
- by Email
- other means like Instant Messangers (ICQ, Yahoo, MSN,…), IRC,…
9) Post your request in more than one forum (about 3-5)
The more you post the more likely you will find someone that helps you. But don´t post in to many forums at first.
If you have posted your request in 3-5 forums wait a while (a few days) before you start posting in additional forums.
With “forums” I don´t mean more than one forum on a single website!
I mean DIFFERENT Websites!
After you have posted your request you will most likely get TONS and TONS of replies like
- “you never find one helping you for free” or
- “who would work for free if he can get paid” and so on and on.
Just ignore these replies or answer FRIENDLY (even if they don´t!) why you think someone would still help you.
In my experience I often looked for help that I could not pay for and I always found people helping me because they liked my ideas.
But it takes quite some efforts and patients to find them.
The more details you give about what you have in mind and the more unique your idea is the more likely you will find help.
STEP 4: Building the Project
Ok now that you have your concept and found a php programmer and a designer to help you, you start working on your project.
I would suggest make a “to do” list.
Note down every feature you want your project to have and describe what it should do as exactly as possible.
Make the to do list structured. Mark important features and features that you don´t need right away.
It most likely helps to describe the whole project in the to do list with all it´s features as detailed as possible.
This helps your programmer to write the code for your project.
A good Design is functional and is connecting this functionality with a good “look and feel”.
To be functional it needs a good concept (see STEP 2).
A good concept is well thought through and has “aged” for some time.
Only after the concept is done the designer starts to work.
Talk to the designer and tell him hat you have in mind for the design.
If you don´t have an idea about how the design should look like give the designer free hand on the design (if he is good he will find the right design for your project).
For this he needs to know which kind of users are the targeted usergroup and what the prospective users expect.
A good Designer knows the Color theory – Wikipedia, the free encyclopedia and shapes.
He also knows to only discreetly use signal Color – Wikipedia, the free encyclopedia and in which case to use emotionalising and in which not.
A good design looks professional, is easy on the eye, it is unique and doesn’t need to be packed full with graphics.
A good design survives the trend.
“Form follows function” should be the nuts and bolts.
Especially for dynamic webpages and during the development the designer needs to pay attention to stylistic methods, if they are convertible and useful.
(X)HTML has besides its features also many austerities which sometimes can´t be bypassed or only with complicated Java scripts or Flash animations.
Because of this the designer needs to work close with your programmer if he doesn’t have adequate knowledge about programming himself.
Talk with your designer about a Logo for your project.
Not every project needs a logo but it helps a lot for branding your project later.
Logos need to be simple, memerable and not to big.
Depending on your targeted usergroup it could be important to factor in handicapped users into your Design concept.
On the other hand normal Users shouldn’t be sub challenged or bored to death with the design and functionality.
The most important thing about designs is (besides the good look) the page navigation.
A user must be able to find it´s way through your project by it´s first visit without much problems.
Otherwise he will leave and not come back if he didn’t find what he was looking for.
Structure your menus in a good way. Make them easy accessible and self explaining.
Also don´t forget cross-browser-compatibility! A design should look the same on Internet Explorer, (Resource no longer exists) and Opera.
Making a design that looks good on an Internet Explorer but not on Mozilla is not a good design at all.
And remember: There are still quite some users out there that use a resolution of 800×600
There is no nostrum for a perfect Design you need to think of it more like a process.
This process depends on many factors which are bound to it.
A Toy website for example wouldn’t be good if you made it black and white it also makes no sense to create a rainbow color design for an insurance company website.
- Color – Wikipedia, the free encyclopedia
- Color theory – Wikipedia, the free encyclopedia
- Color psychology – Wikipedia, the free encyclopedia
- Form follows function – Wikipedia, the free encyclopedia
A Forum for Community building
A Forum highly increases the build of a community because it helps getting members in touch with each other and make them feel being part of the community.
Do you want a forum for your project?
Then start thinking about which software you want to use.
There are quite some Forum softwares out there that offer good functionality and are for free ((Resource no longer exists))
or you can buy a forum license for a paid forum software ((Resource no longer exists)).
Which one is the best for your project, you have to find out for yourself.
Maybe start with a free forum and if it doesn’t work out switch to a paid forum.
If you have installed a forum start working on the forum structure.
Put the important forums about your major topic on top and more general forums at the bottom.
Make the name of every forum as self explaining as possible and write a description to what you want the posts to be about in this forums.
Always remember when creating forums: Less is more!
If you have a forum with 100 subforums and each has 10 threads it still looks empty but if you only have 10 forums and the same amount of posts your forum looks busy 😉
Always keep in mind what your major topic is. Not every forum needs subforums like “Jokes”, “Politics”, “Hardware”, “Software”, etc.
Users are on your site to talk about your major topic, most likely a “Small Talk” forum for the rest is sufficient.
Now that you have a good forum structure get your designer working on the forum design as well.
Nothing makes people leave a forum right away more than a standard out of the box forum design.
Make the forum fit your project design. Create your own buttons and graphics if possible and make it look unique.
For more tips on how to structure, organise and running a forum use the SEARCH from TAZ 😉
If you work with a lot of people together on your project you may want to start coordinating the work.
There are several methods:
The easiest is, if you have a forum, create a private section for your “workers” to communicate.
Make a “To Do List” thread and let them mark which task they currently work on, which they have finished and such.
A Bug Tracking System like the open source Mantis Bug Tracking System can be used to coordinate work as well.
It is easy to set up, you can assign tasks to your “workers”, you can note down new ideas, report bugs and so on and on.
The most professional way to really coordinate work on a project, especially if you have more than one programmer working on your code, is a “Version Control System” like “CVS” (Concurrent Versions System) or “Subversion” or git.
Working with a “Version Control System” is not an easy task if you never had contact with one before and you will need quite some time to learn and understand how it works but there is no real alternative for (bigger) projects with more than one programmer.
It is really worth the energy. A “Version Control System” keeps a file history for every file you have in your repository.
Programmers can download the newest files from the “Version Control System” and update files after they have changed them.
With a “Version Control System” you can prevent the accidental overwrite of new code by another programmer if he forgets to update his files to the latest version for example.
Beside all above options I find it very helpful to keep in touch with my colleagues via Instant Messangers or IRC Chats.
Email contact is one thing but if you can chat live with your colleagues it´s always helpful
After you have set up the forum, the programmer has written the basic code for your project and your designer has made and implemented the design you need to fill your project with content.
NEVER EVER use something like “Site under construction”!!
You don´t need to have all features ready right away but you need content to make your project ready for launch.
So start filling your project with content. It doesn’t need to be much at start but you need to offer something to your first visitors.
Write some articles like about your project itself, the idea behind it, the people who worked on it and such.
I can´t give you any more tips here because I don´t know what your project is about 😉
One of THE MOST IMPORTANT THING for any project are backups.
However most people don´t care much about them because “until now nothing ever happened to my site”.
They make backups once every 2 weeks or once a month or even less.
I strongly suggest you make backups as often as possible.
Before you start working on any files of your site or graphics or anything backup your files.
Make a folder on your local harddrive. Name it like your project and make date folders in it so you know when you made the backup.
Databases ALSO need backups! If a database is corrupted and you don´t have a backup your whole content is gone for good.
You will not be able to recover it and believe me when that happens you will thank god for the backup you did 2 days ago 😉
BACKUP is everything!
You may never need it, but when you need it you will be thankful for every day that you don´t lose because of regular backups!
STEP 5: Launching and Promoting your Project
It is hard to tell when a project is ready for launch. There is no overall answer to this question.
It all depends on how complex your project is.
The minimum requirement for launch is that all the basic features work and you have a ready design.
If you have many more extra features that you want to implement in your project but don´t think they need to be in right away for the launch, call your site something like “beta status”.
Adding extra features after a launch can have positive effects because that shows your users that you are constantly improving your project.
But don´t offer to less at start because then users will be more likely one time visitors only.
After you have arrived at a certain point where you think your project is ready for the first visitors you need to spread the word.
After you got your first visitors ask them about what the like and what they don´t like on your project.
Make them feel part of your community and be interested in there opinions and ideas for how to improve your project.
Get your programmer to work on extra features that you couldn’t finish for the start.
A constantly improving project is always better than a project that is not improved over quite some time.
Think about additional things that you didn’t thought of before and put them on your to do list.
And most important continue to add content to your project. Get your members involved in helping you find new content.
FINALLY: Always remember:
- Be the most active member of your community
- Always be friendly and patient
- Encourage others to participate
- Constantly improve your project
- Don´t stop promoting your project
- Get help if you can´t handle it alone
- Regular BACKUPS can save your a** 😉
- Don´t give up
I hope this article gives you a basic Idea for how to approach a new project that you have in mind.