Careers: Interviews
Development and MS Access--international expert...
This week, Stephen Ibaraki, I.S.P.,
has an exclusive interview with the internationally renowned author,
programmer, and consultant, Roger Jennings.
He has been a beta tester for all versions of Access, and
virtually all versions of VB and Windows plus contributing as a founding
member of the
former Access Insiders group and is one of Microsoft’s 15 “Access
Heroes.”
With over 25 years of experience and more than 1.25
million English copies in print plus translations into more than 20
languages, Roger’s papers, articles, and 21+ books span the entire range of
client/server technology, XML/XSLT, database development and applications,
Visual Basic, Access, XML Web
services and Windows operating systems.
Roger is a principal of OakLeaf Systems, a software
consulting firm, and a contributing editor for Fawcette Technical
Publication’s Visual Studio Magazine and a columnist for .NET
Insight and XML & Web Services newsletters. His
work has appeared at Microsoft’s Tech*Ed, on their Developer’s Network CD
ROM, and in Microsoft’s Developer Network News. Together with all his
accomplishments, Roger is the developer of the OakLeaf XML Web Services
development site and his OakLeaf US Code of Federal Regulations (CFR) XML Web
services demonstration project won the 2002 Microsoft .NET Best Charter
Award for horizontal solutions.
Discussion:
Q: Roger,
considering your very tight schedule, we are fortunate to have you come in
to do this interview—thank you!
A:
You’re welcome, Stephen. I appreciate the opportunity.
Q: What
prompted you to get into each of these areas and what processes did you use
to do so: computing, consulting, development, authoring books, writing
whitepapers and articles, and starting a company?
A:
Over the years, I’ve started and sold several companies. The first (Polytron
Corp.) was a chemical company involved in the urethane foam business. The
second (Fluidyne Instrumentation) manufactured specialty flowmeters,
urethane elastomer processing systems, and computer-based data acquisition
and control devices. Fluidyne started with Wang 700 programmable
calculators, migrated to Wang 1100s, and finally to DEC minicomputers. We
used Commodore CBMs for accounting, production scheduling, and inventory
control. After selling Fluidyne, I set up and ran Safegate Aviation, Inc.,
the U.S. subsidiary of Sweden’s Incentive A.B. -- then a Wallenberg family
company. Safegate used networked PC clones for designing aircraft passenger
boarding bridges with AutoCAD, construction scheduling with Harvard Project
Manager, accounting with Lotus 1-2-3, and word processing with WordPerfect
and Microsoft Word.
I became disenchanted with traveling
40% to 50% of the time and
tried retirement; that idea
lasted about a month. I’d
become interested in BASIC programming
at Fluidyne and Safegate and was fascinated by
PC--based
relational databases.
I started with
the
dBASE 3.1
developer
version,
moved to Clipper, and took on a few programming projects for
Bay Area
organizations.
Along the way I wrote a large Clipper app for a franchiser, which
turned out to be
reasonably successful.
My first Windows programming projects involved WordBASIC macros.
I’ve enjoyed writing since my high school days, and Ron Person -- then a
very successful QUE Books author --
recommended me as the author of their first Access title.
After Special Edition Using Microsoft Access hit the shelves, I
began consulting with
local
Fortune 500 firms who
had adopted
Access 1.0.
One of my projects for a major semiconductor firm was featured at
Tech*Ed 1994.
By the time Access 2.0 arrived,
I’d started writing
database columns for Fawcette Technical Publications’
Visual Basic Programmer’s Journal
(VBPJ), and I’m still writing for its
successor, Visual Studio Magazine.
Q: How does one
become a beta tester and what did you learn over the years working with
pre-release versions of Access, VB, and Windows operating systems?
A:
Microsoft added me to the Access 1.0 beta program
(“Cirrus”)
because
I had a
book in progress.
They later added me to the
“Access Insiders,” a group of Access developers that
had been
involved
with the program’s
development
from the
early days.
Beta programs taught me
to be patient. Cirrus
took so long to emerge that I wrote QUE’s Discover Windows 3.1 Multimedia
while waiting for successive beta drops.
As a former musician, I was fascinated by MIDI
and synthesizers. My first synth was a Yamaha DX-7,
and I’m
still partial to Yamaha products,
such
the
SW1000
XGFactory
and the
DS2416
DSPFactory.
Most books I’ve written
start with
beta
(or
sometimes
alpha)
software
releases, and updates for later versions occur in multiple
author-review
passes.
Mid-course corrections with major changes to feature sets
and user interface
alterations
drive authors
like me
nuts.
As an example, the Window caption on
the technical refresh
version (equivalent to a release candidate)
of
Access
2003,
on which my new book is based,
was “Microsoft
Office Access 2003.”
The release version simply displays “Microsoft Access,” but InfoPath 2003’s
window caption remained “Microsoft Office InfoPath 2003.”
This
inexplicable
change
is
an addition to
the many “Microsoft Mysteries” I point out in the book.
Q: You have
such an extraordinary history with so many milestones. Please share your
most important challenges and how you overcame them.
A:
One of the “milestones” I’m most proud
of
was
participation
with Toronto’s Hospital for Sick Children, Abbott Laboratories,
and Wang
in
the development of the first
computer-automated
screening program for Tay-Sachs disease.
Fluidyne
provided the interface and low-level,
device-based
programming.
Later, the project expanded to sickle cell anemia screening.
My
most challenging projects had nothing to do with computers. Polytron had
developed and patented a method for raising sunken ships with urethane foam,
which led us into some interesting projects
for the U.S. Navy.
Our largest project was
floating
the U.S.S. Frank Knox
(DDR-742),
which was stranded on
Pratis Reef in the South China Sea.
The Navy’s challenge was chopping and scraping the
foam out of the vessel.
You won’t find that episode in DD-742’s official history, but there’s
a brief account on the Web at
http://www.destroyersonline.com/usndd/info/infdg742.html.
Q: You have
authored so many best-selling books. Which books are your favorites and for
what reason?
A:
The nine editions of Special Edition Using Access
were the most fun to write, with the possible exception of Discover
Windows 3.1 Multimedia, and
have sold about a million copies in English
so far.
Next in line is
SAMS Publishing’s
Database Developer’s Guide with Visual Basic 3.1,
which -- along with participation in VB 3’s
“Rawhide” (professional extensions)
beta -- hooked
me on Visual Basic
as a language and a
database
development platform.
Q: One of your
most recent books is, Using Access 2003. What’s unique about this
book?
A:
I think what differentiates my book from the other
1,500-page
Access behemoths is full coverage of new features
in each edition.
For example, Special Edition Using Access 2003 has chapters on
Access’s
new
XML-related
features,
plus
interaction
with
Windows
SharePoint
Services and Microsoft Office InfoPath 2003.
I’ve been an SQL Server user
(and ardent fan)
since it ran under Microsoft’s
version of OS/2,
and
I’ve been
a beta tester since version 6.0. Thus,
my book
has several chapters on
working with the Microsoft
SQL Server
Desktop Engine (MSDE), which is a far more robust database backend than Jet.
The book also delivers more VBA content than most of its competitors,
and
provides
detailed
ActiveX Data Objects (ADO)
programming examples.
There’s a chapter devoted to
using
Access as an XML Web service client, with instructions on how to create your
own Web service
from an MSDE stored procedure with Microsoft’s SQLXML 3.0 add-in.
Q: How does
Access 2003 differ from prior versions? Why would businesses want to
upgrade?
A:
Access 2003
has only a few newly
added
features
-- XML export
now
supports related tables and
the ability to link SharePoint lists to Access tables
of Jet and SQL Server databases
shows
promise.
New Access users probably will appreciate added task panes, such as Object
Dependencies,
and Smart Tags
for error reporting.
Most business users
appear to be
running Access 2000 or earlier, so
upgrading
also
delivers
Access 2002
benefits, such as
PivotTable and PivotChart views.
Access 2000 users also benefit from major improvements to data access pages
and the
capability
to
create
Web service client
apps.
Q: From a
development standpoint, what are the strengths and weaknesses of Access
2003?
A:
Rapid application development (RAD) for SQL Server 2000 databases is Access’s
primary
claim to fame. I recently wrote a full-featured Access 2003 subscription
maintenance program for a non-profit scholarly journal in less than a week.
On the weakness side, I’m disappointed that Access 2003 didn’t
receive
the .NET Framework hooks that Microsoft added to Word and Excel.
Now that I’ve made the transition to Visual Studio .NET,
I’d
much
prefer to
write
Visual Basic .NET
code
to automate Access apps.
Q: Can you
speak more about using VBA in Access 2003?
A:
VBA is a mature application programming language with
very
few
bugs, warts, or surprises.
If
versatility,
reliability, predictability, and
stability are your watchwords, you can’t
beat VBA for automating Access apps.
Those
probably
are some
of the reasons that Access 2003 is missing the .NET Framework hooks.
Access developers should check out
the Office XP Web Services Toolkit,
an add-in
for
Access 2002 and 2003.
The
Toolkit generates most of the client code for consuming basic Web services
that don’t
have mandatory headers. I used the Toolkit to connect to a public Web
service for
subscriber
address
verification.
It took me less than two hours to write and test the client-side code.
(My book’s
CD
includes an
Access 2003
demonstration client
that consumes the same service.)
Q: Please
detail the specifics of your award-winning development project? What were
the unique differentiators that resulted in the recognition?
A:
I became interested in Web services when Microsoft released version 1 of the
Web Services
toolkit, which included a wrapper to generate Web Service Description
Language (WSDL) files from COM objects. I
was in the process of getting better acquainted with XML and decided to test
feasibility of
Web services for
large-scale, document-oriented applications.
I wrote an
experimental
VB 6 app to translate the SGML version of
the
Code of Federal Regulations (CFR) from
the U.S. Printing Office’s Electronic
(eCFR) beta to XML
and, optionally, transform it to XHTML.
A few weeks later I had a 1 GB SQL Server 2000 database with full-text
indexing
and VB 6 COM components to deliver
formatted
data to
a
Windows client
and ASP pages.
My only regret is use of mixed
content
for
XML
text documents; support
for
mixed content
is limited in many
XML-based
development platforms
and programming tools.
Converting the
COM components to an rpc/encoded
Web service and adding an ASP Web service consumer was the next step,
which proved that Web services were practical for delivering very large
(200-KB and larger) documents
to a variety of clients. During the Visual Studio 1.0 beta program, I
upgraded the COM components to Visual Basic .NET,
rewrote the data access elements to
ADO.NET
and the SqlClient managed provider,
moved to ASP.NET’s standard document/literal
SOAP messaging format,
and gained at least 25% better overall performance.
The
development
project convinced
me
that Web services
are the way to go, even for large-scale, text-based applications.
The project was one of the largest -- if not the largest --
publicly-available
Web service of its time.
Give the
CFR
service a test-drive at http://www.oakleaf.ws/cfr/.
Q: How about
Windows operating systems, .NET, VB, XML and Web services? What can you add
in these areas?
A:
I’ve
beta-tested and
written books
about
most
major
Windows OS
releases,
starting with
Windows 95.
Writing Special Edition
Windows 2000 Server
was
my most challenging book; it required setting up four
semi-production
servers
just to test Windows NT upgrades and 2000/NT interoperation.
I wasn’t satisfied with testing
Active Directory
and Group Policies
with a few test users, so I wrote a VB6 application that created 30,000+
users
in 20+
Windows NT or 2000
security groups. (You can download the
Windows NT and 2000 versions of the
GroupPol program and its source
code from http://www.admin911.com/books/win2kgp_updates.asp.)
My favorite topics, aside from SQL Server
2000
database programming,
are Visual Basic .NET and ASP.NET
XML Web services. I’m
convinced that
SOAP-based
Web services are the “Holy Grail” of distributed systems and enterprise
application integration.
ASP.NET
makes creating
basic Web service wrappers
for .NET functions
a point-and-click process.
Microsoft’s Web Service Extensions 2.0 add security, routing
(addressing),
and transaction support, albeit with considerable added code,
much larger
message size,
and deployment
complexity. I’m encouraged by
the
cooperation between Microsoft and IBM to demonstrate interoperability of
.NET and Java implementations of the
WS-Security and other recent WS-series specifications.
The primary goal of
Web services
is platform and language-independence;
Microsoft and IBM have proved this goal can be realized. I’m hoping that
the
other
major players in the Web services sector will join Microsoft and IBM in
future interoperability bake-offs.
(Go to http://www.oakleaf.ws/articles.aspx for links
to articles I’ve written on Web services and related topics.)
Q: Where is it
all heading? What do you see as the major technologies in the future? How
about predictions about their implementation? Who are the winners and
losers?
A:
Obviously, I see XML in general and Web services in particular as the major
growth technologies during the next five years.
The original vision of
XML and
Web services
was for
server-to-server
communication, but
products like InfoPath will bring XML to the desktop.
For a demonstration of what InfoPath forms can accomplish, check out the
new
Microsoft Office Accelerator
for Recruiting, which combines
InfoPath forms,
SharePoint Web parts,
and an SQL Server back-end database to
automate
interview scheduling and applicant evaluation.
Microsoft claims InfoPath is the “premier Web services client.”
The jury’s still out on this statement, but
setting up a
basic Web service as an
InfoPath
data source is a simple point-and-click operation.
SQL Server Reporting Services offers another
demonstration of the power of
XML Web services. All interaction with Reporting Services
occurs
though a SOAP-based API.
The report designer is a work of art.
One of Access’s claims
to fame is the
capability
to quickly generate fully-formatted reports from SQL Server back ends.
I’m betting that
SQL Server Reporting Services
will become the
basis of the
reporting engine for the next version of Access.
Like most other folks at the Microsoft Professional Developer’s conference,
I’m
anxious for a briefing on “Indigo” -- the code name for Microsoft’s
forthcoming
Web services messaging bus.
I hope
we won’t need to wait for “Longhorn Server” to arrive to take advantage of
Indigo.
Q: Do you have
comments about Web services, its impact on traditional business models,
current trends in business models for Web services, creating a successful
long-term Web services business model, and its impact on ROI?
A:
The number of lines of text in Web service-related articles, analyst
reports, books, and magazine articles
probably
outnumber by at least a couple orders of magnitude the number of lines
of
production
Web service
code.
It’s an encouraging sign,
however,
that the Web services hype appears to be waning.
Most of today’s Web service projects are exploratory;
Web services
won’t become
ubiquitous
until
interoperable,
standards-based
digital signatures and encryption,
authentication, authorization, message routing,
transaction, orchestration,
and quality of service features
are in place
and accepted by all stakeholders.
I estimate
that
we’re
about a year away from achieving this goal.
If your acceptance criterion is a Web Services Interoperability Organization
(WS-I)
profile, add another year (or two).
To
gain
an
acceptable
ROI,
development
platforms must
simplify
the
developer’s
job
of
implementing
and testing
these
critical Web service
features.
Low-cost,
easy-to-administer use
of
Web service
application servers and management/logging
systems
are another key to deployment of production Web services.
I
expect this hurdle
to be overcome
for Windows and UNIX/Linux
shops
in
two or three years, assuming that Indigo arrives
in
2006
or earlier.
Q: Which ten
resources do you find the most useful?
A:
1)
Microsoft Knowledge Base for bugs, workarounds, and code examples.
2)
MSDN for articles on XML, Web services, and, to a lesser extent, data access
techniques.
3)
Fawcette Technical Publications’
weekly
online newsletters -- .NET Insight, Java
Insight, and XML and Web Services Insight (http://www.ftponline.com/).
4)
Visual Studio Magazine for articles on
ADO.NET and ASP.NET topics (http://www.fawcette.com/vsm/).
5)
Jon Udell’s blog for an analyst’s view of XML, Web service, RSS and other
current industry trends (http://weblog.infoworld.com/udell/).
6)
The PerfectXML Web site for the best
and most current
coverage of XML-related articles,
tutorials, code
examples, and press releases (http://www.perfectxml.com/technews.asp).
7)
Don Box’s Spoutlet for current XML and .NET
commentary,
plus reminiscences of COM things past (http://www.gotdotnet.com/team/dbox/).
8)
Clemens Vasters’
blog
for .NET service oriented architecture and distributed services (http://staff.newtelligence.net/clemensv/).
9)
Ingo Rammer’s blog for the same topics, but especially for .NET remoting (http://www.ingorammer.com/weblog/).
10)
The GotDotNet.com
and Asp.net
Web sites
for
.NET community topics and XML and Web services tools.
X)
Office
2003 online help files (dead last).
Q: Why do you do what you do?
A:
What else would I do?
I tried retiring and that didn’t
work.
Q: If you were doing this interview,
what three questions would you ask of someone in your position and what
would be your answers?
A:
1)
What percentage of Office users will upgrade to 2003
during the next two years?
25% at most.
2)
When will Longhorn RTM?
2005 for the client; 2006 for the server version.
3)
What are ObjectSpaces
in 10 words or less?
An
overly
complex
way to
hook business objects to data tables.
Q: It was a
pleasure interviewing you. Thank you for sharing your wealth of knowledge
with our audience.
A:
You’re welcome. It was fun.
|