Roadmap to #1

After talking with Pasha last night, I managed to further fine tune the picture of what I want to do with this new site which I will be devoting my entire time andd effort to for the next two years. It is a whole hearted commitment on my part to this idea I have been envisioning for the longest time. The first prototype ( seemed be getting rather popular amongst the locals, as well as nationalities from multiple countries that frequent Singapore.

By November 2010, I will stop all commercial activites relating to providing customized IT solutions to external third parties as well as all social activites that does not lie in the path I decide to thread.

Now what is aims to be a community platform that allows the easy sharing of location based information that will help make exploration fun and easy for travellers in various parts of the world. Being a natural extension to the original vision behind, this platform will be one that is by the people for the people.

One of the main challenges which me and Pasha have identified is the presentation of information of various forms.Thus far these are the types of content objects we have identified:

  • Bus stations
  • Travel routes
  • Accomodation Types
  • Scam and Rip offs
  • Border crossing procedures in remote parts of the world

With no intention to recreate the wheel, I started the initial prototype with the Joomla Content Management System with the use of the JomSocial component.

I envision that the various content objects will be described with the use of XML documents. A modular struture will be enforced. This will allow for easy system extension to accomodate more content object types as the platform progresses to later stages.

One of the main features for the content insertion process will be use wizards. The main intention behind this is to increase usuability for end users. I am currently pondering on how the use of XML could be used to provide a comprehensive description of a wizard content entry process.

A few months ago while I was less occupied, I did create a component for the Joomla 1.5 called the workflow component. It is somewhat similar. However due to sudden increase in commercial activites on my part, this project was left half baked and never released to the open source community. One of the main things I hope to accomplish now is to salvage chunks of the existing codes into this wizard engine I will be building for

Thus far these are my thoughts which I will slowly make reality over the next few weeks.

I thank my lucky star

Just a few evenings ago after devouring this most valuable book by Robert Kiyosaki (Rich dad’s prophesy) which I happened to pick up free of charge from this stack of soon to be discarded books, I decided to sit down and sort out all the financial statements for all my current on going projects. All these projects were in the healthy range in terms of cash flow, however none of them were profitable.

“How so?” one upon hearing this might ask me, being  seriously puzzled ” didn’t you made money and now have more cash in your pocket? ”

“Yes I did have cash in my pocket after being engaged in the these projects. However my profit from these projects is still zero. ”

“Huh. I still don’t get you? ”

“The cash receipts for these projects are called wages, not profit. Profit is the premium derived after deducting all expenses incurred in the process of finishing the project, in which cash includes wage expenses as well. ”

Wages is an exchange of per unit time of effort for per unit quantity of money, one only has 24 hours per day. Thus one can make so much of one’s time for money. If one is satisfied sticking with this business model of exchanging per unit time of effort for per unit time of money, one can simply forget the idea of his bank account hitting the range of millions in this life time.

Like Johnson said last year “bro don’t waste your time with being a self employed, build a proper business model. You techies are talented people when it come to machines. However when it comes to money, you have no idea what the hell is happening!”

I thought I understood him then. However that understanding was still too superficial.

After receiving an advice by Peter, an in depth study of a classical doctrine and the chance encounter of a serious bottleneck, I finally saw the lights.

Peter’s advice “don’t try to do everything yourself, free up your own time, get an expert who is more capable than you to handle what needs to be handled, then you can handle more.”

The truth in the classical doctrine called the book of changes (I Ching) states, do not compete in terms of wisdom with the wise, do not compete in terms of capability with the capable, but rather acknowledge their strengths and humbly seek their assistance in your cause.

The bottleneck when a prolonged through put of more than 24 hours worth of effort per day was required was really the catalyst.

Thinking back to my days in the army, in the university as well as till just a few months ago, this character of mine was the perfect individual belonging to the S category defined as the self-employed in Robert Kiyosaki’s cash flow quadrant.

In his book, Robert states people belonging to the S category, in contrast to people belonging to the E (employees) category who are just concerned about job security, are the perfect individual’s to be assigned a task and given full autonomy. Being self driven and highly motivated by nature, you can rest assured they will accomplish their mission. However such are not people you can hope to keep in your company for long, since what they seek in contrast to Es, is independence instead of job security. They will more likely leave an organization in seeking a path of their own interest instead of stay due to high levels of wages.

One of their major flaws which prevents them from advancing into the B quadrant (business owners) is their inherent urge to do everything themselves, their need to be perfectionist. It is a flaw, I deeply understand and has been a weakness that I had been constantly trying to keep in check.

Now that I finally see th light, it is time to finish the last part of my business model I have been building over the last 2 years. To accomplish this, I will need to take all the task this position of mine is handling and write them down in strict standard operating procedures. Once done, I will need to source for a few talents that belongs nicely to the E quadrant in terms of mentality to fulfill the roles I crafted.

In a nut shell, I will need to craft carefully the algorithm that dictates the roles of the business analyst, the project manager and the sales manager to handle the all aspects of the operations. Thereafter, I shall step out of this system that I have so nicely crafted and monitor its functioning from outside.

Meanwhile since my time will be freed up by then, I will direct my resources and funds into the crafting of the next business model and go through the process of building my next money making machine.

Haha. I am a most fortunate person indeed. It seems like everytime when I am in need of something, whatever I seek will always land right in my lap.

Some how my game got switched

After some changes to the existing business processes within my company, I soon realized that I have more time on hand now to ponder and consider the deployment of manpower available at hand.

My chief concern now is not getting the work done myself but coming up with a logical and structured method to explain to my collaborators the kind of work that needs to be done. Metaphorically speaking, it is somewhat similar to writing a program that instructs people clearly and concisely what they need to achieve for each particular task assigned to them. Its like playing command and conquer all over again. You have troops available at hand. If you have them deployed wrongly, they get wiped out and the enemy will soon be at the gates. However if the deployment is done properly, the enemy will have problems stepping out of their own gates!

Funny, all along I had this notion in my mind that I play this game of life in the fashion of Baldur’s Gate or Diablo. It is a super cool way to live life. Just go explore what is around in search of quests and vanquish monsters encountered during the adventure, helped some times by Non-player charaters (NPC) of course. Now suddenly, it seems some bloody joker removed Baldur’s Gate or Diablo and inserted command and conquer in its place. I can no longer be  myself  concerned about finishing a quest, it became a huge campaign.

Counting off hand, I have unknowingly increased the team I am managing at the moment to 11 people split into different groups, each group concerned with the accomplishment of a single quest. Thanks to the possibilities that arose due to the flat world I am getting quite an interesting team. Lets see the head counts thus far:

2 Russians
1 Ukrainians
2 Indians
3 Singaporeans
2 Filipinos
1 American

Blame this on my novelty seeking spirit, but I am absolutely curious which other nationalities will I have the opportunity to collaborate with in the near future…

Review of Ektron CMS system and a analogy on the Windows operating system

For the past four weeks I have been working on Ektron CMS400 build This is the copy that is currently available over the internet from the main Ektron site. As with all newly released patches there were a few bugs, some of them were pretty major ones.

Each time I was asked to do a demonstration of the product to prospective clients I was at the back of my mind crossing my fingers. This was especially so when a page started taking more than 30 seconds to load. Thankfully being extremely familiar with such occurrence during my work in the events and entertainment industry, I came prepared with a bagful of magician tricks. Yes, that is right! Direct the attention of the crowd to something else, while I got the w3svc service restarted. While I would leave the demonstration session with the clients quite happy ( and somewhat entertained) with the presentation, I normally have this foul taste in my mouth.

A few days ago, I finally managed to obtain a link to a prior version, the  Ektron CMS 400 8.00 SP1(Build and had it installed. This time it worked like magic. This is truly interesting. In spite of the fact that the version came with all the necessary bug fixes, version without any of the required bug fixes seems to perform better and faster.

Thankfully Build is the build one of our client is using hence I will have no need to worry about the existing bug issues in build Thank God!

There is this chinese saying that seems to apply nicely to this scenario “A ginger that is older is still the spicier one”

Suddenly I occurred to me, inspite the fact the windows operating system has advanced to windows 2008, I am still working on Windows XP. In fact I have little or no inclinations to start working on a latter version unless some new technology I have to work with comes up that requires a latter version of the windows operating system. Even then, instead of messing up my current configuration, I would instead choose to create all the mess in a VPC (virtual pc), where the removal of all these mess is just but a click away.

taking a leap of faith

Johnson my cousin once told me during our drinking session that faith is a very important element in any business venture. You can always go about gathering as much information as you can, do as much research as you want, at the end of the day there will always exist a gap between what you already know and where you want to be.

Within a few days after taking a leap of faith and testing out this new methodology for my operations, the problem I am pondering over now has shifted from “where to look for quality human resource” to “how to more effectively collaborate and communicate with the available human resources“.

Already I am having some semi-concrete notions of how to segregate work and minimize the turn around time for each development project that comes through the pipeline.

The problem of work segregation inevitably lead me to recall one particular module I took during my days in the National University of Singapore. Every week I would attend a lecture pertaining to the subject called Discrete Mathematics and each time after the 2 hour lecture, I would feel totally drained out mentally.

One of the problems posed by the professor during one of these lectures was the issue of countability. There are infinite numbers between 0 to 10, but there are finite number of integers between 0 to 10.

Suppose given a range of problems, and each problem is metaphorically represented by the numbers that exist between 0 to 1, there will then be no end to the amount of solutions required to solve all the problems between 0 to 10.

Suppose metaphorically speaking if we are able to impose units in terms of integers on this range of problems between 0 to 10, we could effectively solve all the problems within this range by supplying in 11 solutions.

Out of the metaphorically realm and back into this real world, suppose we are able to take any programming question and segregate it into discrete units, in this instance we will thus be able to count the number of solutions we will potentially require to solve this programming question.

If the above assumption is true (which actually is if you take each unit to represent a use case scenario) and further assuming there are unlimited human resources available (or some what close to unlimited) then we will theoretically be able to engage each unit of human resource to one use case. Suppose there exist not dependencies between any use cases, this would mean that a programming problem of a 1000 use cases could in actual fact be solved within the period required to solve just one use case.

Theoretically speaking, this seems to be a sound and workable solution, however I am now still keeping my fingers crossed. Who knows what kind of exception might happen in this system which I have thus far envisioned in my mind and am slowly weaving into reality.

The importance of knowledge management within an organization

Lawrence dropped by at my place this evening, he had some issues with a few of his software packages he apparently had problems solving. In the name of  friendship, I solved it for him. It took but a while.

I was asking about his recently operations and soon realized that he was being extremely occupied of late. Majority of the problem revolves around available resources (time Lawrence has available to him) not capable of existing supporting needs (requirements of his customers)

The secondary problem revolved around the inefficiency of information transfer based on the current most predominant long distance channels of communication, namely voice conversation and text email messages.

Suddenly it occurred to me, that a lack of proper knowledge management system might be a contributing source to his problem. He expressed that supposed he got sick one day and one of his colleagues had to take over his duties, that colleague would be suddenly lost in the midst of a strange environment his is not aware of. He said he had the same problems as well when he first took over the duties of one of his colleagues who departed to join another company.

Also there would have been no need for him to drop by at my place had he been able to effectively transfer his knowledge of the problems he was facing to me via traditional channels of communication.

Thinking back, I realized it was such a waste of the time to have to travel from one place to the next to convey a message simply because long distance communications failed.

Further pondering on this issue of knowledge transfer, it suddenly occurred to me weren’t there multiple instances of developers (me inclusive) around wasting more time than they should because of failure in the knowledge transfer process? To draw a simple example from my experience, there were in deed a few times when I had to commit hours to solve a problem that had already been solved by another of my colleague simple because his knowledge of how to solve the problem could not be effectively transferred to be. Had the transfer been successful I would have to waste tons of time attempting to figure out the solution to a problem and he would not have to waste the same amount of time attempting to guide me through the problem over the phone in real time.

What if there is a knowledge repository over the internet where people could go to for detailed instructions of how to solve their problems? What if someone could solve a problem once and thereafter have his knowledge effectively packaged, stored and there after transmitted to the people who need it without as ambiguity?

There have been past attempts to do so over the internet with the use of forums. However, ambiguity often results due to the difference in the way a message was encrypted in words for storing and thereafter decrypted from these same words for usage. The only site that came close to fulfilling this function over the internet thus far is YouTube which is actually becoming quite popular as a self learning tool used by many.

Just for experimentations sake, and partially due to the inspiration I acquired from my reading of the book “the world is flat”,  during my next IT project, I will attempt to engage a friend in India to aid me in the development of a few functions and components on Joomla. If this method which I envision to use to further promote effective long distance communications works, I might have for myself a viable outsourcing model. Then again fingers crossed.

Installation of the MSSQL server

Just a few days ago, I managed to get a cracked copy of the MSSQL 2008 server from Ibraheem, I decided to try and install it on one of my laptop just for fun. Apparently during the installation process there were so many configurations to be made I missed out on something. So basically at the end of the day, the screenshot below shows the exact configuration I decided upon to get myself a basic standalone MSSQL server with the client tools to manage the MSSQL server.

mssql configuraiton screen

A possible solution to an interesting problem

A few months ago I was having supper with Steven and Pasha. That night we were discussing about how to make a site grow organically. Steven raised a very interesting question. Most new websites face the problem of generating new and meaningful content on a timely basis.

The ability to constantly generate new and meaning content on a site requires that the site be in the first place in the form of a content management system. [1]

The second requirement is that either the administrator or his team of people constantly login to the system to create new contents. There is the problem of training and gaining familiarity if we are engaging a team of people new to the system.[2] Also suppose if it is just one person generating the content, that person will be required to commit alot of time and effort to generate such a content. [3]

The obstacle is a formidable one for budding webmasters.

I have been helping Jim with the administration of SingaporeRental for close to a year now. Apparently we were constantly met with problems 2 and 3. This resulted in a bottle neck which slowed down the content generation speed on SingaporeRental.

Today finally being somewhat free and unoccupied with things I decided to do a little RnD. This little RnD process which I got myself engaged in proved to be fruitful afterall. Hopefully with this new implementation problems 2 and 3 can be solved for

I have meanwhile setup the same architecture for a few more the sites under my ownership just for RnD purposes only.

Surprise popularity of Joomla 1.5 Component Simple Thickbox Gallery

After being frustrated having spent a long time looking for a simple gallery component on the site to display my portfolio, I decided that I should write my own. To do so, I simplying incorporated the jQuery library, the Thickbox library and created a Joomla 1.5 component that required almost zero configurations.

Users simply installed the components, select the section or category they want displayed and Viola! the page was automatically created for them.

I used it for my own company site to display my portfolio and suddenly had an interesting thought. I might as well have it packaged nicely and submitted to the Joomla Extensions directory.

It took me two weeks and some minor changes here and there (mostly paperwork) to finally get it approved.

After a few days I went and had a look at my Google analytics account which I had installed for my company site a long time ago.

I was in for a surprise. Site traffic surged from a daily volume of less than 10 visitors a few months ago to as high as 400 daily visitors these past few days. It was totally crazy. Visitors were mostly from the US and Europe. So I guess my idea of coming up with solutions to solve potentially painful situations does seem to be a very sound.

Currently I have identified a painful situation that is being experienced in SMEs. I am working on coming up with a solution for them via the use of technology. Hopefully it will help them save time, effort and lead to increased effeciency in their work process.

SWFupload and Joomla integration revisited

After trying 1 hour and getting no where integrating SWFupload fully into the Joomla Administration backend. I finally called it quits.

The problem is that while the SWFupload component shows up nicely in the front end any call by the component to the scripting backend always results in a login request page. This is despite attempting to follow official instructions on the Joomla Documentation Site.

Finally I created a fileuploader.php file that does not have foreign access restricted by the Joomla CMS permissions.

To prevent crackers from exploiting this file as a possible entry point to crack any Joomla systems installed with my soon to be launched Joomla 1.5 component, I have limited file upload type to just XML types only. Now it works fine.