A Life with Xojo: The Story of MonkeyBread Software
In the early 90's, at a friend's place in his neighborhood, Christian Schmitz came across Microsoft's QBasic. This Basic development environment, included such sample projects as "Nibbles" or "Gorillas" and came bundled with DOS 6.0. Christian developed some early programming skills which soon proved valuable on his first computer. In the course of a year, on a used Commodore C64, Christian developed, among other projects, his first game, a computer simulation similar to the well-known "Sim Tower", but with Joystick control. Not much later, a programming workshop at High School introduced him to Turbo Pascal and his first "IBM-compatible", a venerable "286" PC.
Eventually, an Apple Performa 6200 became Christian's introduction into the world of Macintosh. Christian continued with Turbo Pascal, but under SoftWindows. All his friends at school were using Windows-equipped PCs, and, at the time, there weren't many suitable or powerful development tools on the Mac. Finally, with a price tag of 1,000 Deutsche Mark, Codewarrior, the premier C compiler for Mac OS, was far too expensive for a student's tight budget.
Xojo -- A Perfect Fit
A short review in the German "MacWelt" magazine, got Christian hooked onto Xojo as an alternative development suite, offering the highly-motivated student-turned-developer two distinct advantages: Windows-compatible, cross-platform compilation for applications written in Xojo had already been announced as an upcoming feature. Also, the Xojo package itself matched the family budget just nicely: Christian received the first version box for Christmas -- and started programming immediately, right on Christmas Eve.
He completed the QuickStart project in less than an hour -- a full-blown text editor. And it didn't take long for the first self-designed projects to appear on Christian's own Web page: www.christians-software.de still hosts most of these early titles, even if many of them are nowadays certainly outdated. According to Christian Schmitz, one key advantage of Xojo, from the start, has been that windows and controls, as well as all the classes, did not have to be written from scratch. This ready-to-use concept, together with Xojo's cross-platform capabilities, are a crucial feature set.
"Xojo makes software development truly easy and takes care of many things. Whenever a given function in Xojo does not run fast enough, one can still get down to work and write an optimized function in C. This saves an enormous amount of work and allows the developer to make use of the best of two worlds: Quick and easy development in Xojo, combined with access to low-level and time-critical functions, made available via plug-ins, written in C or C++."
First Commercial Success
When the ophthalmic clinic of Prof. Reinhard Koch needed a program for the calculation of intra-ocular lenses, Christian Schmitz living practically next door, combined with him being an active member of the Xojo newsgroup and mailing list, as well as the visibility of his own Web page, resulted in the first commercial contract. More contracts ensued, eventually, Christian established his software firm while still in high school. But soon, projects evolved in complexity.
Enter Xojo Plug-ins from MonkeyBread Software
Xojo as a development environment is fairly complete, but imagination and ingenuity of developers are a continuous drive for innovation. Christian Schmitz hired two young C programmers to write-up those missing features for him to use in Xojo. Soon, the MAC address of a built-in network adapter, as well as a webcam's video stream could be retrieved. Whenever required by his projects, Christian purchased more functions in the form of readily-available third-party plug-ins, such as "Super Socket" or the video plug-in from James Milne.
Creating and selling his own plug-ins was the obvious next step. So, as early as 2001, Christian Schmitz set out to develop his first Xojo plug-in. GetSystemFont made system font information available, the second plug-in, GetPhysicalMemory returned the size of installed RAM on a computer. In these early days, Christian received valuable assistance from Thomas Tempelmann. Thomas jumped in whenever needed, tracking down, solving or working around unexpected and unknown problems. But by December 30, 2001, MonkeyBread Software's first "MBS-RB-Plug-ins" package became available. For just $10, it contained all plug-ins created so far by Christian Schmitz under the label "MonkeyBread Software".
26,000+ Functions And Counting
Over time, the collection of plug-ins grew considerably. By the year 2002, all 940 functions were sold with fully-valid commercial licenses for $80. Today, the MonkeyBread Software bundle of plug-ins comprises a wealth of more than 26,000 functions. For Mac OS X 10.6 "Snow Leopard" alone, over 2,000 new functions were added in about one month. A thorough overview of the complete collection certainly requires a few days of reading. But the sheer size of the package is also the reason for its success: Whatever function a developer requires -- it is either already included or bound to be added sooner or later to then be available to all customers.
But MonkeyBread Software are more than just plug-ins for Xojo and Filemaker. Consultancy, educational workshops and projects of various sizes, including some thriving shareware applications, are among their activities, with "Combine PDFs" currently being the best-selling program. And, most recently, development of iPhone apps has also been added to their portfolio.
All in all, Christian Schmitz has successfully made a job out of his hobby. And after 10 years with Xojo, he considers his software firm a true success.