How much money do you need to start a Web 2.0 business?
- Posted by Tengku Zahasman on June 8th, 2007 filed in Web App Development, Thoughts, Entrepreneurship, Financing/funding
- 5 Comments »
- (1,115 Views)
There’s actually no definitive answer to how much capital you need to start a Web 2.0 business. How much you need may depend on so many factors that it can sometimes be a thousand bucks, 5 thousand bucks, 10 thousand bucks, 20 thousand bucks, or down to only a few hundred bucks. Those factors include what type of application you’re building, your own skillset, existing resources, whether you need staffs (if you need then how many of them?), whether you need an office, outsourcing, additional machines, servers and whatnot. Even though I can’t really estimate how much you need to start a Web 2.0 business, I can roughly say that if you spend more than 10 thousand bucks just to develop and launch your web application, then I think you’re overspending. And you better think of how you can mitigate your spending fast because touching that 10 thousand threshold shows that you’re spending too much on unnecessary things. Spending too much money before you even start making money is bad because that means it’ll take longer for you to be in profit. Not only that, if things doesn’t turn out the way you planned it to be, you may even go bankrupt for spending more than you need on the beginning phase.
Sometimes I find it rather disturbing when some of the new Internet startups claimed to have spent over millions of bucks just to get their Web 2.0 ideas developed and launched. That is totally unacceptable in my opinion. Even the overall cost of development, launching, marketing and maintaining of the web app should not take up to millions or even hundreds of thousands of dollars a year. Why? Because we’re on the INTERNET business. And when I say INTERNET that means things that used to be 10,000 bucks in real life can be absolutely FREE in the cyber world. Consider some of things below:
- Development tools are free (Komodo Edit, PHP+Apache+MySQL, Linux?)
- Open source scripts (which are free) can be leveraged for creating your app’s blog, forum or support center.
- Communication is free via E-mail, Skype, IRC or Instant messaging.
- Outsourcing is cheap.
- Existing programming components can be reused. Think about rapid PHP frameworks and Ajax frameworks
- Google is your library for doing researches
- Advertising can be free by leveraging search engine marketings, social networks, blog marketings, forum marketings, the good-ol “word-of-mouth” marketing. Or even if you purchase advertisings on certain websites, Google Adwords, Advertlets, or other PPCs, it won’t take up so much to kickstart the hype.
There you go. I just can’t help but wonder what have some of these companies spent on that took up millions of dollars for their web application business. Internet business is meant to be cheap but highly profitable. Let’s just keep it that way… Truemors did it with 12 thousand bucks overall. They could’ve spent way less… 
Develop like an architect, not like a cowboy
- Posted by Tengku Zahasman on May 16th, 2007 filed in Web Programming, Web App Development
- 4 Comments »
- (926 Views)
Few years back when I was still in University, one of my lecturer who taught us Software Engineering said, “Don’t be a programmer, be a developer.” I was a bit confused back then. In my head I asked, “What’s the difference? Don’t developers also write codes?”. I’m pretty sure the other students in the lecture hall were as confused as I was at that time. But now I know for sure that programmers and developers are from different planets.
In software development, there is a term called “Cowboy coding” which implies the method of writing softwares where the programmer start coding the application without doing any sort of proper “planning”. They just picture in their head how the application will look like in the end and start coding straight away…. do whatever they think is right. They hate planning. They think planning is boring and a waste of time. The idea of writing codes straight out from the head may sound cool, but in reality, applications that are written by cowboy coders are typically sluggish, full of bugs and very troublesome to maintain. I know this because I used to be one of them (in certain cases I still am, but well that’s a different story
).
An experienced developer will plan his project out before he even writes a single line of code. Knowing the basics of UML (Unified Modelling Language) is an advantage. Now you don’t have to plan out too detail until you had to prove the cowboy-coder’s point - wasting time. No. The best thing is to balance your planning phase so that you have a firm base to start writing the code. For me, I like to use UMLPad to plan for my project. It is a very lightweight program, free, easy to use, very straight forward, and eliminates the complexities of other more sophisticated UML tools like Rational Rose or maybe, ArgoUML. Since PHP is not really a pure Object-Oriented programming language, all you need before you start writing an application are:
1. a simple Class diagram - to define your classes/objects and the relationships between them,
2. an activity diagram - to define your application’s flow, and
3. a state diagram - to define your application’s behavior.
UMLPad provides exactly that. Alternatively, planning the traditional way (ie: sketching on papers or white boards) is also very recommended because many finds it to be more comfortable and allows us to think out of the box. What about the rest of the diagrams in UML? No need to worry about them for now. Is UML hard? Trust me, UML is just common sense. Do you need to plan in detail about everything? If you can do that very quickly, go ahead, but you probably don’t need to. Remember, we don’t want to waste too much time on planning, but we also understand that no planning is planning to fail. So if you respect yourself as a person, be a developer who plans, not just a programmer who cares about nothing but codes.
Craft and optimize your friendly-URLs
- Posted by Tengku Zahasman on May 8th, 2007 filed in Web App Development, SEO
- 1 Comment »
- (528 Views)
Using friendly-URLs in your web application is essential when it comes to SEO (Search engine optimization). Friendly URLs (or some might refer to it as “Clean URLs” or “Pretty URLs”) help search engines’ crawlers to read your URLs and understand better what the page is mainly about. It acts as an additional option to look for keywords apart from looking in the page’s content itself.
There are a few strategies of how people make their friendly URLs to look like. Consider the three examples below:
1. Using IDs without descriptive keywords
http://www.domain.com/items/23 <– that’s the ID of the item in the database
2. Using descriptive keywords without IDs
http://www.domain.com/items/the-name-of-the-item <– (eg: a blog post’s title)
3. Using both IDs and descriptive keywords
http://www.domain.com/items/23/this-is-the-name-of-the-item.html
Explanation
#1 doesn’t explain much…. so while it is cleaner to the eyes, it’s not really friendly to the search engines’ crawlers. You lose a lot of points by not utilizing keywords in your URL to describe your page item. However, this technique is not all useless because for links that doesn’t need descriptive URLs (eg: when doing paginations), this technique can be pretty handy.
#2 is what most people like to use for linking items. The idea is to make the URL “very friendly” so that every part of the URL is descriptive and contains only keywords. No numbers. No IDs. However, this is gonna bring some problem because by using this technique, the application will search for the item in the database based on its name, not the ID. It takes out the slug “the-name-of-the-item” from the URL, chop it, slice it, and then use the string to search for the exact name of the item in the database. What if in the future you decided to change the item’s name? At that point of time, the application won’t be able to look for the item anymore using the old URL. And this is not good. Because if your URL has already been indexed by a search engine, or if someone has linked to that item from his website, users who click on the link will reach an “Object not found”, unless they use the new URL.
#3 is my favorite technique when creating friendly URLs and one that I recommend the most. Always include the ID. And always use the ID to look for the item in the database. The keywords at the end just describes the link. It doesn’t need to do anything else. This way, not only you save time (because you don’t have to write codes to slice the URL and look for the item based on the name), you also ensure that the item will be reachable no matter how many times you change its name. Afterall, that’s the main reason why people create IDs in the first place. 

If I've provided some info that you find to be useful, don't hesitate to