4D Databases
Volume Number: 10
Issue Number: 7
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 you’re looking for the best way to spend your time, and in today’s market you
have to have an edge. An advantage. Some reason why you’re more qualified than the
next programmer. And once you have that certain something that sets you apart from
the rest, you wouldn’t mind a market that’s 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 you’re 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 4D’s 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
it’s 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, ACI’s 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?
Available support
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 4D’s 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 programmer’s database. If the 4th Dimension language can’t
accomplish a task, then you can program an external that will perform the required
function. To increase your database’s 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 they’re
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. E specially 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.