This year marks the twentieth anniversary of the BusinessMind for Jewelers application. BusinessMind for Jewelers was first released in 1994. It was the development effort of a small team of programmers at DCIT Corporation, whose goal was to consolidate the commonalities found across multiple applications which had been custom developed for jewelry businesses.
From 1991 – 1993, DCIT had offered only custom developed applications for manufacturing and wholesale jewelers. It was soon realized that even though much of the specifics of the manufacturing control process were indeed very different across companies, other parts were not. For example, in most cases, everyone maintained customers, vendors, invoices, consignments, and even inventory in ways that were similar enough that a core application could be developed. The idea was that this core application could then be extended and customized as needed. By using the core BusinessMind for Jewelers application as a starting point, hundreds of hours of programming time and cost could be saved on each installation. The development effort to build a standard BusinessMind for Jewelers application began in early 1993 and ended with the version 1.0 release of the BusinessMind for Jewelers application in 1994.
With BusinessMind for Jewelers 1.0 released, DCIT was able to deploy custom jewelry manufacturing and wholesale systems in half the time and cost it previously required. In addition, BusinessMind for Jewelers 1.0 was able to serve the needs of many other jewelry businesses who required little to no customization. By 1998 BusinessMind for Jewelers had seen seven major releases and had tremendously expanded its core feature list, including adding support for the requirements of retail jewelers.
Having been created in the early 1990′s, BusinessMind’s technical underpinnings depended on a proprietary database technology called 4th Dimension (4D). Tools like 4D, FoxPro, Microsoft Access, Paradox, Et al., became known as 4th Generation Programming Languages (4GL). Today, these would be more accurately described as proprietary scripting languages with proprietary runtimes. The term proprietary is used because each of these “languages” and their associated runtimes, were owned and developed by a single company which completely controlled the fate of the tool and charged licensing fees to developers who used them to create applications. Tools like these enabled developers to create database driven programs and simple user interfaces much more quickly and easily than could be achieved if using one of the common programming languages of the day such as C or Pascal. Because of this, these tools remained popular throughout the 1990′s, but ultimately, the simplicity came with a price other than that of the licensing fees.
In the late 1990′s the internet began to make its way into households across America in the form of dialup services offered by local Internet Service Providers (ISPs) and the technological landscape began to change drastically. Computers were evolving quickly in terms of speed, form, and function, and many different networking technologies would all eventually give way to IP networking in homes and businesses. By 1999 it became clear that the 4D underpinnings of BMJ at that time would be a severe deterrent to keeping up with the modernization of networks and computers. Our ability to progress BusinessMind was tied to the limitations imposed by the company which produced the 4D runtime. In consideration of these and many other factors, the decision was made that BusinessMind for Jewelers would need to be rewritten from scratch in an entirely new language.
Needless to say, this was no small feat. Tens of thousands of lines of code had been written since 1994. All of it would have to be completely reimplemented from scratch, including all the custom code written for customers who would want to continue with BusinessMind as it evolved. In addition, the decision was made that a 4GL would not be the basis of the rewrite. It would be rewritten in a “real” programming language and this meant that most of the previous platforms built-in functionality would also need to be re-invented and re-implemented, from scratch. It was a daunting task for a small development team. The work took 2 years to complete and BusinessMind for Jewelers was released as version 1.0 once again in 2001 with enough backwards compatibility to be able to convert the databases of older 4D based versions. The application was written in the, then young, Java language, while utilizing the open source MySQL database platform as the backing data storage system. It certainly was a triumphant moment at the completion of an enormous task.
BusinessMind underwent another complete rewrite in late 2006 and released as version 5.0 in 2008. The rewrite was to update and improve upon code and architecture that was showing its age 5 years after its initial release. Being mature and capable technologies, Java and MySQL remained as the underpinnings of the 5.0 release.
Many other jewelry business applications on the market today are still based on the proprietary runtimes which were popular in the 1990′s, such as Microsoft Access and FoxPro. When these applications don’t scale well, or require a per-seat licensing fee, or have DOS windows popping out of them in various places, those old technical underpinnings are the reason why. Some of these applications can still be useable in certain cases. However, as sweeping change once again is upon us, I think its fair to say that the futures of these applications are severely threatened.
The cost of progress is very high in the business of software development. Application rewrites are no easy task and require years to plan and execute. However, the consequences of doing nothing can lead to the end of an application. At DCIT, as we have in the past, we welcome the challenges, opportunities, and the reward of achievement that progress brings with it as we count down to the twentieth anniversary of BusinessMind.