Disruptive Technologies Ecosystem Machine Learning Product Management Software Development Software Product Management Strategy

Some of the best solutions are Open Source

If you are looking for a good technology platform for your business, it makes good sense to research the open source market in addition to the paid market. Many times, you will find projects that fill a specific niche much better than any paid product. And, many times, you will find a paid support offering for the open source project.

I’ve been rolling up my sleeves and diving back into C++ lately. I guess it’s kind of like riding a bicycle. I haven’t “coded” in several years, but I was a hard core programmer for 15 years before I got into marketing and the business side of software.

I decided to spec out a software project that has been consuming my time for a few months on the requirements side. The more I dug into the requirements, the closer I got to the implementation of the code since there is heavy math involved at the core. (Neural networks and optimizations) This type of programming lends itself best to a compiled language like C, and I am most familiar with C (and PL/I and COBOL from my IBM days). I’m relatively familiar with Java, but it seems to always carry just a bit more baggage than I’m willing to tackle, and it’s not the fastest at crunching large amounts of data through complicated algorithms.

At first, I was considering using C++ for the core math, then using PHP or Java to communicate to the web application layer via JSON with GWT or GXT at the front end. Someone also mentioned using the Spring framework to tie everything together.

Whew….

Then I found Wt (pronounced witty). This is a C++ toolkit for developing web applications. It leverages javascript, WebSockets and Ajax and hides all of the complexity of communicating between the browser and the C++ code. It’s almost like Ruby for Rails for C++ programmers, except it’s really fast!

User’s don’t have javascript enabled on the browser? No worries, Wt handles it. Worried about cross-site scripting? Wt protects against this security worry. Need to handle multiple languages (National Language Support)? It handles it through XML files.

It’s cross platform, which means you can target many types of deployment scenarios. It also has it’s own built-in web server if you don’t need the additional power of Apache or other web server.

Most importantly, it has a strong developer community, the founders have been actively supporting the project for several years (free AND paid), and there has been funding activity out of Silicon Valley, which suggests real traction has been achieved to keep the project around for awhile. Worst case scenario, they close and stop supporting the project, but I still have the source code which mitigates some of the risk to building a product on top of the framework.