Today, we are going to get into the meat of the subject: picking database engines, development languages and why this is important. Critical even.
Environment
Clustered v. Non-clustered
For the purposes of this book, we are going to imagine that we are running separate instances of the various servers as virtual machines either on a single server or on a cluster of servers. This can be achieved simply and cheaply with a company like Arvixe, or done at the enterprise level in your office or datacenter. Further, for the purposes of this book, there is no difference between physical and virtual servers. Whatever works for you and strikes the right balance between affordability, performance and scalability is what you should do.
Environment
Clustered v. Non-clustered
For the purposes of this book, we are going to imagine that we are running separate instances of the various servers as virtual machines either on a single server or on a cluster of servers. This can be achieved simply and cheaply with a company like Arvixe, or done at the enterprise level in your office or datacenter. Further, for the purposes of this book, there is no difference between physical and virtual servers. Whatever works for you and strikes the right balance between affordability, performance and scalability is what you should do.
Technology Silos
What we mean by a “Technology Silo” is the imagined
container for a vendor’s offerings.
Delphi and Oracle offer several packages in their ‘silo’ including of
course a database engine, but also prepackaged applications like Taleo, Seibel
and PeopleSoft. Oracle also owns the
Java framework but it was purchased from Sun Microsystems and it doesn’t come
with an Integrated Development Environment (IDE) to help with development.
IBM has several offerings as well with hardware, operating
systems, database engines and several packaged applications like WebMethods, so
they seem like the full end to end provider.
They, however, do not offer a modern development language and depend on
Oracle’s Java to develop their procedural code.
What this causes is a fragmentation outside the ‘silo’ in
that java programmers are only guaranteed to have Java. It is kind of in its own silo. That causes java developers to come up with
admittedly innovative solutions to ameliorate this lack of a database engine,
but also causes much unnecessary work and extra coding that just takes up time
and resources and is the basis for the many tools and design patterns to make
java do what it is supposed to. There
aren’t too many good Java programmers who have any experience with database
engines you have to have staff for doing all the various tasks of development
with little to no overlap. Further, with
a mix of technologies you have to duplicate this staff for each ‘silo’ meaning
that your technology staff could be six or eight times it’s optimal size due to
this duplication and not overlapping
That pretty much leaves Microsoft. Microsoft is the only vendor that sells
operating systems, both server and desktop, server software, desktop software
and the .NET platform to build and host applications from start to finish. Consequently, this book will focus solely on
the Microsoft family of technologies.
Tomorrow, we are going to start discussing design philosophy and why we write the code we write and where it goes. Our patterns are different (and better. Don't argue, it is a statement of fact) than anyone else's out there. That we have seen anyway.
Visit us at http://sentiasystems.com or send us an email to info@sentiasystems.com.
No comments:
Post a Comment