With the arrival of the holidays and some time off, I was able to spend some time coding on my personal Phobos project. The fourth quarter months were so busy, I was not able to devote much time to coding. I have developed a starter web site, but wanted to develop a simple CMS to make it easy to make additions to the site. I have integrated the open source FCK editor and laid most of the groundwork. I am in the process of working out the bugs now. Instead of posting code samples, I hope to post all of the source code and maybe even a project file. I am pursuing it as time permits.
On another note, on a work related project, I have had to review a large amount of shopping cart software for selection for a new site. The languages covered were Java, PHP and .Net. One of the big requirements was the ability to get data in and out of the system easily in real time for integration into other business systems. After that, there was a need for a large amount of shopping features. Access to source code was also a must have feature whether it be open source or closed source. The system also needed to be somewhat economical for small business.
The two main Java options seemed to be KonaKart and SoftSlate. The KonaKart integration looked promising and the shopping system had plenty of features, but while it is free, they do not release the source code for their server side application. SoftSlate is an economical package with access to source code, but they do not expose web services and from what information I could gather, you would need to write your own integration code for external connections.
There were many php carts out there such as osCommerce, ZenCart and X-Cart. All of these are powerful, feature rich systems. Most of the integration features however consisted of importing data from a text file. While this is nice for total web based applications, it does not fare well interconnecting different business systems. Unfortunately, there wasn't much in the way of documentation as to how to get data in and out of these systems. It would be easy enough to write your own code, but on a complicated system, you wouldn't expect to write data directly to tables without having clear instructions on what data needs to go where. Many of the php carts say that they are working on data and layer abstractions.
I reviewed a few dotnet systems and the one that seemed to shine was AspDotNetStorefront. It was reasonably priced, you have access to source code and external integration in real time is extensive. It is based on proprietary technology, but it does provide advanced features, integration, and source code.
Out of the systems reviewed, it was interesting that depending on the language used, greatly affected the ability of others to work with a complicated system created by someone else. Most Java programmers abstract data access and other tasks. The object oriented nature of Java forces you to do this. The same principle would apply somewhat with dotnet. With PHP and Classic ASP, nothing is abstracted and the code is very free flowing. The nature of these languages make it quick to get stuff done, but as a system gets complicated, maintenance can become difficult. It also makes it much harder for someone who is not familiar with the system to come in and be productive because there isn't a built in blue print. Obviously there are exceptions to all rules because everything is still programmer dependent.
How does this affect Phobos? JavaScript is a very free flowing language and you can get things done very quickly with it. However, the Phobos architecture lends itself to write blue printed code. I think you can have the best of both worlds with Phobos. Of course this can be done in PHP now that it is object oriented as well as other languages, but the only language still that runs in the browser natively is JavaScript.
I think there is still room for a good open source shopping cart out there as well as simple CMS systems. The web is constantly changing and integration is becoming key. I believe Phobos fits the bill for small and large applications. Simplicity backed by the power of the Java infrastructure.
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment