Saturday, October 06, 2007

2007-10-06 Saturday

I'm doing some development this evening on a small Open Source project that I'm planning to release - and I'm comparing the implementation between a PostgreSQL and a MySQL implementation.

Whereas PostgreSQL supports the common RDBMS concept of a SEQUENCE - MySQL does not (at least for the version I'm running: mysql Ver 14.12 Distrib 5.0.24a). However, MySQL Forge has a suggested workaround.
"MySQL Forge is a place for the MySQL user and developer community to contribute content, suggestions, code, projects, and other MySQL-related goodies."

A better way to handle this would be as an abstraction layer - such as implemented by a library (e.g. ADOdb for PHP and Python).

* Designed for speed. It is probably the fastest open source database abstraction library available for PHP. See benchmarks.

* Provides extensive portability support such as date and type-handling and portable schema creation. See portable sql tips

* Support many enterprise features such as database backed sessions (with session expiry notification), SQL code generation, pivot tables, SELECT LIMIT emulation for all databases, performance monitoring.

* Easy to learn, especially if you have Window's programming experience, as it uses many ADO conventions.

* Extensive QA, every release is unit-tested on Access, MySQL, PostgreSQL, MS SQL, Oracle 9.

* Mature, continiously developed since August 2000. Has a large community of users.

* Very reasonable licensing terms (BSD). This means that you can incorporate (and even compile) it into your software applications royalty-free without asking the author's permission, provided you include license.txt in your release. Also dual-licensed (Lesser GPL).

Some Open Source Code Resources
OpenLogic Exchange
"OLEX makes it easy to find and download certified, enterprise-ready open source software packages."
"Koders helps software developers explore the collective intelligence of more than 15 million programmers and 50 years of computer science..leader in code search for enterprises, communities and software developers...allow programmers to quickly find and leverage existing source code assets to bring new software applications to market faster, with fewer defects, and at substantial cost savings."

I've made some decisions in the last week on adopting some new Open Source tools for a client engagement:



+ Wiki
+ Forums
+ Newsletters
+ Blogs
+ Articles
+ Link Directory
+ Community development of 200+ plugins


- I liked MediaWiki's Wiki Syntax better

Flyspray: Task / Bug / Risk / Issue Tracking System


+ Clean, Simple, Intuitive User Interface
+ Customizable (e.g. Status, Task, Category)
+ Support for multiple projects


- Not yet integrated with webSVN
- Not yet integrated with Subversion
- Doesn't support explicit component association with a bug / task entry

Hudson: Extensible continuous integration engine


+ Clean, Simple, Intuitive User Interface
+ Simple configuration
+ User Interface is a core component of the application
+ Supports Ant or Maven build processes
+ Supports execution of Unit Tests
+ Email notification on build failure
+ Scheduled builds - with Source Code Management integration with Subversion


- TBD?

Coding Horror Stories


Setting up a Windows Service for Glassfish v2

Apache JMeter is a 100% pure Java desktop application designed to load test functional behavior and measure performance.

FunkLoad is a functional and load Web tester whose main use cases are functional testing of Web projects (and thus regression testing as well), performance testing, load testing (such as volume testing or longevity testing), and stress testing. It can also be used to write Web agents to script any Web repetitive task, like checking whether a site is alive.

WebLOAD is a load and stress testing tool that is sponsored by RadView. It can load-test any Internet application, including applications that use Web 2.0 and AJAX. Screenshots

WAPT 4.0 is a load and stress testing tool for websites and web-based applications. It uses a fully customizable set of virtual users to simulate a real-life load.

Load Testing 101: ASP.NET Web Applications

How do I stress test my ASP application?

Web Performance Suite™ Version 3.3 is a testing tool targeted at web sites that use standard technologies such as web forms, J2EE, ASP, .NET/C#, PHP, Ruby, ColdFusion, Java, etc

DB2 Connect Personal Edition

No comments: