This is to test the Twitterlive - Ping.fm integration I have setup. I used to used Twitterfeed, but Ping.fm has blocked the API calls from TwitterFeed due to spam problems.
If all goes well, my Twitter, Facebook and other social media accounts should get a snippet of this post and a link back to this page.
Why am I doing this? In today's information age, people are going to "google" you when you apply for a job, funding, business partnership, etc. What do you want them to find?
Sunday, June 13, 2010
Company Website Revamped
After the company website has been hacked a couple of months ago, I have quickly migrate the content from Joomla 1.1.x to Joomla 1.5.x. It only took a few days, but I had to drop a few plugins and hack a very scripts. The abundance of plugin in the open source ecosystem is both a bless and a curse. It is a blessing because at the moment, the ecosystem allow small business to move into market quickly and cheaply. However, often times the plugin may not be of the best quality, such as poor code which allow hacker to remotely exploit the website. Furthermore, for less popular software/plugins, the development may cease and may not have compatibility issues with other components you relied on. This is the case for a lot of the Joomla 1.1.x plugins we have been using.
After successfully migrating to the new platform, I still not happy with the layout. Luckily, Joomla 1.5.x came with some very professional template and I have based our new website on one of the templates which came with default package.
The new platform also came with some new features which used to be a plugin in the previous version and therefore allow me to retire a few of the plugins such as the LxMenu plugin for Joomla 1.1.x.
After successfully migrating to the new platform, I still not happy with the layout. Luckily, Joomla 1.5.x came with some very professional template and I have based our new website on one of the templates which came with default package.
The new platform also came with some new features which used to be a plugin in the previous version and therefore allow me to retire a few of the plugins such as the LxMenu plugin for Joomla 1.1.x.
The most tedious process is cleaning up the platform for the new platform. The old website use to have a plugin allowing the display of "tabs" to hold the content. I decide not to use the "tabs" display format because I believe this is not good practice for the web. For example, when user search for text, the browser may find it, but because it is not on the current tab at the top, the user may not be able to see it, which may confuse some user.
The website has been up and running with this new template for a good few weeks now, however I don't think we have complete the clean up of the content yet. There are still pages with dead images, links or old content formating code.
With our current state of business, I don't think we can afford to hire a full time web-developer/designer. I could delegate some of the work to my colleagues, which I already have for the simpler task. However, to take-over the maintenance of the website, I don't think we have an employee with that kind of skill set yet.
In order to justify hiring a web-developer, I need to find a way to turn our website into a revenue generator.
At the moment, we are getting roughly 70-80 visits a day. Since we are a very niche market company, I don't think our goal is just eyeballs.
Perhaps e-commerce? With niche market products and a small market, will e-commerce work?
Sunday, June 6, 2010
Broken links for product additional files in Virtuemart 1.1.4, Joomla 1.5.15 and SEF turned on
We still have to run our website in legacy mode because Virtuemart is still natively incompatible with Joomla 1.5.x. The migration to Joomla 1.5.x is obviously incomplete as there is still minor bugs here and their. One of the bugs which I was unable to find an answer to on the web is the shop.getfile bug. In virtuemart, you can upload downloadable files against a product, and it will appear to be available for download.
Adding the above code back in and the additional file links for products works again!
I would like to submit a patch to Virtuemart. Unfortunately, it appears the development issue tracker at http://dev.virtuemart.net is not open to public submissions. Hopefully this problem is eventually spotted and fixed by the Virtuemart development team.
After adding the additional files, there is a link which appears on the bottom of the product details page allowing the user the download the file you just added.
Unfortunately with our setup, the generated URL for the downloadable file was incorrect. Debugging this issue was painful as I was unable to get XDebug to work properly. The Apache child process on my local development environment just keep crashing when ever I have the debugger attached, but this is a long story possibly for another separate entry. It turns out the components/com_virtuemart/router.php was missing the shop.getfile entry and I have to manually added it back it. Inside the virtuemartBuildRoute function add the shop.getfile case into the switch statement. It will look something like this:
case 'shop.getfile'; $segments[] = 'products_getfile'; $segments[] = $query['product_id']; $segments[] = $query['file_id']; unset($query['product_id']); unset($query['file_id']); break;
Then in the virtuemartParseRoute function, add the corresponding code to handing the routing statement created above. It will look something like this:
case 'products_getfile':
$vars['page'] = "shop.getfile";
if(isset($segments[1])){
$vars['product_id'] = $segments[1];
}
if(isset($segments[2])){
$vars['file_id'] = $segments[2];
}
break;
Adding the above code back in and the additional file links for products works again!
I would like to submit a patch to Virtuemart. Unfortunately, it appears the development issue tracker at http://dev.virtuemart.net is not open to public submissions. Hopefully this problem is eventually spotted and fixed by the Virtuemart development team.
Sunday, May 30, 2010
Access Northwind used in real life
With an out-date inventory management system, keeping on top of what is flowing in & out of the company became a chore. Coming from a techie background, my desire to use the latest and greatest took a back-stage to rational mind to use some practical to get the result quickly. After all, my goal was to have some simple dashboard, which we can easily see what customer orders are coming in and what purchase order we are making. When necessary, we need to be able to tracing our purchases back to their purpose, which in most cases, it is for a customer order. It is also important to collect as much information as possible while remain as non-intrusive as possible. This means customizing the workflow to match the business with the proper prompts and proper validation at the right time.
With all that in mind, the old days playing with Access 97 and their Northwind example came back to mind. Although the Widget set from Access was fairly restrictive, it was sufficient to satisfy the simple requirement of this application. The single file-base database was fairly insecure, but it is something I am willing to give up for now in exchange for a rapid development model. One pleasant surprise was its ability to support concurrent user, and so far we have as much as 3 people access the database at the same time without too much problems.
After 3 weeks of hard work, the application went live on April 5th 2010. A good chunk of the time was spend migrating the data from an old Fox Pro database an Excel Spreadsheets into the database.
Access proved to be a good choice. We have been using the application for the last month or so, and adding more features and customization as we go. The latest module is a service report module which allow us to collect data correlating service calls by our support team back to the customer. In the beginning, it will seem like a chore. Hopefully over time, it will allow us to gain better insight in our business and better serve our customer.
I was very tempted to move the database to a SQL Server in the near future, and my justification is better security and better support for multi-user. The first issue regarding security is valid, but I am not sure it justifies the time and investment required at this stage. The second issue is simply my techie side talking, since the Access database should be able to support the current load without any problem.
Microsoft publish a great document to help user rationalize the decision of when to migrate from Access to SQL server. The document is simply named "When to migrate from Access to SQL Server" Inside the document, it has a fairly nice pie chart illustrating how many application will actually need upsizing:
SQL Server Salesmen are probably not too help with the Microsoft employee who wrote the document :)
With all that in mind, the old days playing with Access 97 and their Northwind example came back to mind. Although the Widget set from Access was fairly restrictive, it was sufficient to satisfy the simple requirement of this application. The single file-base database was fairly insecure, but it is something I am willing to give up for now in exchange for a rapid development model. One pleasant surprise was its ability to support concurrent user, and so far we have as much as 3 people access the database at the same time without too much problems.
After 3 weeks of hard work, the application went live on April 5th 2010. A good chunk of the time was spend migrating the data from an old Fox Pro database an Excel Spreadsheets into the database.
Access proved to be a good choice. We have been using the application for the last month or so, and adding more features and customization as we go. The latest module is a service report module which allow us to collect data correlating service calls by our support team back to the customer. In the beginning, it will seem like a chore. Hopefully over time, it will allow us to gain better insight in our business and better serve our customer.
I was very tempted to move the database to a SQL Server in the near future, and my justification is better security and better support for multi-user. The first issue regarding security is valid, but I am not sure it justifies the time and investment required at this stage. The second issue is simply my techie side talking, since the Access database should be able to support the current load without any problem.
Microsoft publish a great document to help user rationalize the decision of when to migrate from Access to SQL server. The document is simply named "When to migrate from Access to SQL Server" Inside the document, it has a fairly nice pie chart illustrating how many application will actually need upsizing:
Source: When to Migrate from Access to SQL Server - Microsoft
SQL Server Salesmen are probably not too help with the Microsoft employee who wrote the document :)
Wednesday, May 26, 2010
Sunday, May 16, 2010
Back to PHP
A long long time ago, I started working on a prototype project for a mobile payment system using PHP. If memory serves me right, it was PHP3. Almost a decade later, I am back to PHP. It was not fun. Between these times, I have worked mostly on Java and have got use to the ecosystem around the Java language, and it was not easy letter or those go.
I have been listening to the StackOverflow podcast, and Jeff Attwood cannot seems to contain his hatred for the PHP language. I am not a big fan of weakly typed language or scripting language used in large scale applications. And this is exactly what I am faced with now. My companies website is using Joomla + VirtualMart + a whole bunch of plugins, and long and behold, it was hacked recently. Some module with remote exploitable flaw was load on the website and it wasn't long until some hackers program found us and dumped a JPMorgan Chase phishing site on our page.
It was long until RSA contacted our hosting provider and they shut us down. We haven't updated our Joomla installation for quite a while and it came back to bite us. After a day of work to try and remove the phishing site and purge the hackers code, our site was shutdown again because I was unable to purge it properly. It appeared the hacker also manage to turn our server into a SPAM server. After a few more hours of struggle, I decide to conclusively patch the existing site from all malware is going to be futile and went about upgrading our Joomla installation.
Boy it was a pain ...
It is getting late, I should rant about this some other time.
I have been listening to the StackOverflow podcast, and Jeff Attwood cannot seems to contain his hatred for the PHP language. I am not a big fan of weakly typed language or scripting language used in large scale applications. And this is exactly what I am faced with now. My companies website is using Joomla + VirtualMart + a whole bunch of plugins, and long and behold, it was hacked recently. Some module with remote exploitable flaw was load on the website and it wasn't long until some hackers program found us and dumped a JPMorgan Chase phishing site on our page.
It was long until RSA contacted our hosting provider and they shut us down. We haven't updated our Joomla installation for quite a while and it came back to bite us. After a day of work to try and remove the phishing site and purge the hackers code, our site was shutdown again because I was unable to purge it properly. It appeared the hacker also manage to turn our server into a SPAM server. After a few more hours of struggle, I decide to conclusively patch the existing site from all malware is going to be futile and went about upgrading our Joomla installation.
Boy it was a pain ...
It is getting late, I should rant about this some other time.
Wednesday, May 12, 2010
110 Visit in Oct?
It has been a long time, but I have been working diligently at my new endeavor. It has been an tough, but exciting time. However, this topic is for another post.
My work has took me back to Google Analytics, and when I logged in, my selfprofessednerd blog analytics popped up. I almost forgot I have added Google Analytics to my blog. I didn't really pay much attention to it back then, but after a while, it slowly and diligently collected visitor data. Woohoo! At one point, I had 110 Visitors!

Google has really transform the way the web works, and had made a lot of highly sophisticated tools available for free. It is time to revisit Google tools and see how I could apply it to the business I am working on!
Subscribe to:
Posts (Atom)








