|Column Tag:||More tools for your toolbox
Developing 4th Dimension Databases
Can Be Lucrative
Will your next application framework be a database?
By Ellen Ankuda, ACI US
About this article
Developers have a number of tools at their disposal for building what their clients need. Databases are to the point where you can build certain kinds of applications without the need to write your own database code. Not only that, the demand for developers who know the database tools is higher than ever, and there are not enough developers to fill that demand. In this article, Ellen Ankuda (of ACI US) talks about some of the money-making opportunities in the database field, as seen from the perspective of a provider of a popular database, 4th Dimension - Ed stb
So youre looking for the best way to spend your time, and in todays market you have to have an edge. An advantage. Some reason why youre more qualified than the next programmer. And once you have that certain something that sets you apart from the rest, you wouldnt mind a market thats teeming with opportunities.
For a C or C++ programmer, where do you get that edge? 4th Dimension can give you one. The relational database from France supports hundreds of developers and VARs in North America, thousands in the world. Those 4D enthusiasts range from custom consultants to VARs to in-house programmers. Consultants make their living creating custom database solutions for companies, the government, educational institutions, and almost any organization you can imagine. Their jobs typically involve travel; contracting work can bring them to far reaches of the computer world (one 4D consultant even made a database for a school district in the North Pole). Custom 4D developers typically make between $50 to $200 an hour, depending on the area and project.
Since VARs sell their shrink-wrapped applications developed in 4th Dimension, the job of a VAR tends to be somewhat more local. In addition to being a database, 4th Dimension is an application generator that allows people like VARs to create tangible software programs from good business ideas. And because most of the work is already done in 4th Dimension, development time for special applications is relatively short (meaning that time to market is a lot faster!). The programs can have any look and feel, depending on the needs of the target market and the personal tastes of the VAR. Currently, ACI VARs market off-the-shelf applications such as accounting packages, personal information managers, and network administration programs.
And lastly, in-house programmers might have a little less independence than the other two (of course, that all depends on the company), but working for companies has its advantages, too. 4th Dimension can be found in thousands of companies worldwide, including many Fortune 500 companies. Often working with people throughout the company to design tailored solutions, in-house 4D programmers benefit from immediate user feedback.
Learning the 4D programming language is generally a relatively elementary task for C and C++ programmers. ACI provides training around the country, as do various independent training organizations (yet another possible opportunity for you). For extra help, various publishers circulate books and magazines to help you learn the new environment and give you programming hints or tips to accomplish tasks with a minimum of effort.
If youre not interested in learning the 4th Dimension language, there are still developer opportunities with 4D. C, C++, and Pascal programmers can write externals for 4th Dimension that can be integrated into any 4D database. These externals can be anything from time-tracking devices to mail messaging systems. Or you can even write externals that work with 4D via AppleEvents, such as geographic querying tools. The potential external programs for 4D are limitless - you decide what specific users might need and integrate your idea into a working database. With its ability to work with external programs, 4th Dimension is highly extensible. You can use your C/C++ expertise to significantly extend 4Ds functionality, states Rich Gay, President of Foresight Technology, a software consulting company in Fort Worth, Texas. But the biggest benefit of 4th Dimension for C and C++ programmers is that its so much faster to get applications up and running in 4D, and that translates into higher profitability.
In a similar vein, you can develop 4D Open connections to different products that enable interaction between foreign clients and 4D Server. 4D Open is the programming interface for connectivity to 4D Server, ACIs client/server database, and has a set of Pascal and C libraries. With the basic libraries, you can interface almost any product with 4D Server. Use your imagination: what type of product would benefit from a multi-user data engine?
For programmers whose livelihood depends on a software program, the technological aspect of the program is probably the most important. The procedural language of 4th Dimension is designed to parallel the built-in features of the database. Almost everything that can be done automatically can be further controlled procedurally. All of the built-in editors and generators, such as Search, Sort, Report, Label, and Graph, can be used in a custom application with a single-line procedure. You can create an incredible front end with a great GUI in a fraction of the time required by traditional programming languages, reports Jim Alonso, President of Montage Software Systems, Inc. in Wilton, Connecticut. There are virtually no limits to what can be accomplished using 4Ds built-in tools, and by creating extensions written in C to enhance that environment.
You can use the 4th Dimension language to automate repetitive tasks, control the user interface, manage data, and create applications. The commands in 4th Dimension are structured to allow a precise response to a demand, often with very few lines of programming. For example, the command MODIFY SELECTION can present a list of records and allow the user to double-click a record for data input.
All users programming in C, Pascal, or any other language that can be compiled to 68000 code can add routines to applications in the following forms:
External procedures that can accept and pass parameters.
External areas on layouts that are completely controlled by external routines.
External functions that return a 4th Dimension value.
Added routines transparently blend with the regular 4D commands and behave in the same manner.
4th Dimension is a programmers database. If the 4th Dimension language cant accomplish a task, then you can program an external that will perform the required function. To increase your databases marketability, you can also localize applications for dozens of languages, and that serves to increase the scope of your potential customer base.
Also important for developers are the benefits they can receive from the company itself. All registered 4D developers, no matter what type of programming theyre doing, get special care from ACI. Probably the most important benefit for developers are the business leads and referrals that Developer Services personnel provide. Any time a caller asks for a local developer, or a specific product or service, ACI sends a list of the appropriate developers. Referrals are also given to interested trade show attendees.
Annually, ACI prints and widely circulates a Solutions Guide book and CD that list all registered ACI developers and the products or services they provide. Being featured in the 800-page book is an impressive and credible sales tool for many developers.
Additionally, 4D developers receive priority technical support from senior engineers. Complex questions can be answered quickly. ACI also provides co-marketing possibilities in its newsletter or other mailings, in magazines, at trade shows, and many other areas.
The best news is that people need 4D programmers. Especially recently, ACI has been hearing from all sorts of companies, large corporations down to small consulting firms, who are looking for 4D programmers to develop an application. The time is right, and the opportunities are plentiful.