Skip to content

Using Xojo For This And That...

So I did something I don't normally do and invested my own money into a development toolchain for writing commercial applications.

In the early part of my career (when I didn't know any better), I spent a great deal of time learning as many open source technologies as I could to compensate for a company with a very limited technology budget.   It wasn't a complete waste of time...I managed to run a smaller non-profit organization completely on Ubuntu Server, PHP5 and a MySQL instance for nearly 10 years. 

At some point, I moved on from the company and my personal income got a little it was time to look at some commercial tooling.   

After a whole lot of research, trial periods and asking a ton of questions on the forums -- I came to the conclusion that Xojo really isn't the be all, end all of paid-for development tool chains BUT for what it's pretty damned good.  Let's be honest:  Xojo is an odd duck. It's not particularly popular, it's not particularly cheap ($699 for the full blown professional edition) and the coding syntax feels like I'm using very old school VB6 (underneath the hood it's just modernized 'basic').   

What IS absolutely great about Xojo is the level of support within the community AND directly from the developer.  Their online documentation is fantastic and very easy to navigate.   Having spent a whole lot of time in open-source land I can tell you that there's a lot of information / code-snippets out there ranging from decently well-written to horrifyingly unstable and insecure.  I spent a lot of time trying to solve previous programming issues by fabri-cobbling various code snippets together without much help.   As much as people in the developer world hate to admit it, good-quality commercial AND community support can be a godsend when you're stuck.   The Xojo forums are a wealth of information. 

Xojo is also remarkably easy to be productive in -- the default / standard libs can all be referenced directly within a project without adding any additional include, use, or import statements.

This makes it stupid simple to do things like connecting an application to external database sources.  You just instantiate the database object, pass in the connection string and call the connect() function.  No extra libraries, no dlls, no addons.  I was able to establish an authenticated session with mysql, query a record and then bring in the database row for use in my form with 3 lines of code.  Very convenient!

I'm sure I will learn more of the quirks of the IDE and shortcomings as I go...but for the current requirements I have (rapidly developed, throwaway apps for internal business use), I'm really digging it.