Bay Area Startups and Technologies Marina's Web Scale Coral Reef

Tuesday Jun 23, 2009

Most of today's startups are building their solution on the open source LAMP stack or Open Solaris AMP stack. However, some of the startups as they grow and expend, look for commercial alternatives. I've seen startups and smaller companies deploying Oracle back end as their database of choice. Small and mid size companies may be familiar with SAP Business One applications, which is an ERP solution for SMB market. When using the application, often times companies have to customize the application and develop a web based interface for their users to extend the ERP functionality for specified business needs. We've simplified the developer job by easily integrating B1 Web Services into the IDE via the NetBeans Plugin. The Plugin powers up developers with Business One Web Services integration, drag and drop visual editor, and Glassfish auto-deployment features. The details of how to use the plugin, refer to the Building Web Applications with NetBeans IDE and SAP Business One Web Services article published on SDN site.
At this month's LAMP meetup we had an educational talk on Unit Testing by Jakob Heuser, a web engineer from LinkedIn. In PHP, there are a number of frameworks used by developers including SnapTest, PHPUnit, SimpleTest, and Tesrilence. The main principle behind Unit Testing is to validate application requirements.  This includes checking application logic that implements a give requirements, making sure the fault flows are managed accordingly, and various conditional boundaries are satisfied. Unit testing focuses on testing smallest component of the program, such as function, public method, or an include file. With SnapTest, it is pretty straight forward to get started. After implementing PHP classes to test the application you can start multiple tests simultaneously to expedite the testing process. While SnapTest has a low starting barrier, testing frameworks like PHPUnit is a much more comprehensive framework. But regardless of the framework that you pick, here is an ideal order in which you should be building and testing your application:
  1. design your class/API
  2. create a test suite
  3. implement the class/API
  4. run the test suite
  5. fix failures or errors and go to #4 again
After all test suites were ran and errors have been fixed, it's a good time to do refactoring and simplify the application logic, create a more elegant implementation, and then obviously run the tests again to make sure that newly introduced logic doesn't break anything else in the program.

Jakob maintains and contributes towards SnapTest framework and his presentation is available at:
http://www.slideshare.net/Jakobo/unit-testing-first-steps

Monday Jun 15, 2009

Expanding iPhone developer community had their monthly meetup in June in Palo Alto. A couple iPhone apps, OfferPal and TapJoy, were followed by the book announcement on Cocoa Design Pattern.
[Read More]