Barbarians at the Gate

db4objects has recently released a replication tool called dRS that
lets you exchange data not just with other db4o instances but with
relational database systems as well. This makes it easy to design
systems where a large enterprise data store contains information that
workers need to access from disconnected devices. This is a common
problem - a salesperson on the road needs customer data; someone
working in a warehouse needs to collect and propagate inventory
information; medical devices need to gather and process vast amounts of
data from a patient. In all these cases, mobile devices have limited
resources and have to exchange information with larger systems. db4o
excels at this.

Christof Wittig, CEO of db4objects, explains his company's decision to
release its software this way: "We live in a post-materialist world.
People don't have long lead times to do everything themselves. It's
only through collaboration that we can empower each other to succeed."
Asked why they support Open Source, "That's easy," he said. "We owe
everything to the community. From the outset, the user and developer
community have helped shape and refine the product design and
direction. We wouldn't have had that if we weren't Open Source. Even
more important, our product is already easy to use; Open Source means
that db4o is easy try and that in turn wins us customers."

db4objects, Inc. releases db4o under a dual-license model.
Manufacturers can choose a commercial license if doing proprietary
embedded work for a surprisingly modest price per unit. And if you want
to evaluate its use, are doing in-house work, or want to use db4o in
your own Open Source projects then you can use db4o freely under the
GPL.

Obviously we've been talking Java here, but developers who have to do
cross-platform development in heterogeneous environments will be
interested to know that there's a .NET version of db4o available as
well. The two are entirely binary-compatible; a number of its customers
are running db4o as the storage back-end on Java application servers
while writing their clients in little .NET programs. Yet-another
example of Open Source bringing communities together.

Open Source to Change the World For most people,
Open Source means cost free. But a growing number of people have come
to believe in the freedom that the Free Software movement preaches.
Freedom to innovate. Freedom to modify and to help others with your
work. It's the way the information age began.

Over the last few years an increasing amount of effort has been
invested in what I'll call Free Java. As ever, the word free is a tad
inadequate; the Open Source movement encourages you to realize that
their essential message is freedom as in liberty (to modify a program,
to enhance or reuse it as you see fit to redistribute) in addition to
the notably useful property of being free as in price (though many of
us gladly pay our distributor or vendor to package it all up and
provide us support).

Sun's Java VM is, of course, not free or Open Source and until recently
its license forbid redistributing Java binaries. So, not unexpectedly,
the free software community has been creating an implementation of Java
that does give you those freedoms.

The GNU Classpath project is working towards providing a fully
compatible set of class libraries and supports a dizzying array of Java
Virtual Machines - from research VMs like Kaffe and SableVM to the
quaint little JamVM to the rocketing CACAO and JikesRVM and the truly
radical GCJ project.

GCJ deserves special mention. Five or six years ago, hackers at Cygnus
(now part of Red Hat) realized that one way they could look at Java
would be to consider it a specifically defined subset of C++ (in the
same sense that XML is a specifically defined subset of SGML). They
reasoned that if they wrote a first-stage compiler that would take Java
in the front-end and spit out the tree representation used by the gcc
compiler internally, they could take advantage of the tremendous power
of the whole GCC suite behind it to optimize that code and link it to
binary executables that would run on any of the many platforms that GCC
already supports.

And, ta-da, one of the consequences of the Free Java effort is that you
can run Java programs on virtually every architecture out there. You
are no longer limited to the few platforms that the major vendors
create their runtimes for - a significant factor for embedded
developers. Concurrent efforts to create a tight but highly performing
garbage collector have meant that you can now create efficient and
optimized programs with small footprints that - gasp! - are written in
Java.

Ahead-of-time compilation (AOT) is somewhat unusual for us to think
about - we're quite used to the just-in-time compilation (JIT) that has
been part of commercial VMs since Java 1.1 days. JITs have a particular
challenge though - they have to turn the intermediate representation
(Java bytecode from a .class file) into native machine code fast enough
that the user doesn't notice. That's a tall order, yet it's amazing how
well modern VMs do it. There is, nevertheless, a limit to how much
optimization a JIT compiler can achieve because of the limited time it
has available. There's also a question of how much computing power is
taken to do JIT compilation - horsepower that may not be available,
especially on resource-limited machines like small embedded devices. By
doing the compilation of native machine code ahead of time, GCJ isn't
constrained by having to provide near-instantaneous compilation and has
the luxury of being able to try more in-depth optimizations. The result
is fast code and even better, there's no start-up penalty when a Java
program is launched. Instead of the overhead of instantiating a massive
VM and struggling through the JIT compilation of an enormous number of
core classes, the code is already native and can immediately start
executing - brilliant for small processes and desktop applications.

Red Hat, in particular, has invested significant effort into improving
GCJ and the Classpath libraries to achieve this outcome on both small
systems and enterprise servers. This has had impressive results: major
projects like Eclipse and JOnAS can be built native resulting in a
considerable performance boost. And if you're running the Fedora Core
Linux distribution then any time you install a Java library it will be
compiled native and transparently used to speed up your programs.

And there's even more to report from Free Java land. Recently a new
project being incubated by the Apache Foundation has emerged on the
scene. The effort, called Harmony, also aims to develop a fully
compatible Open Source class library and VM implementation. It doesn't
have much of a community behind it yet but it's been getting impressive
donations of code from several major players in the Java space.

So across-the-board activity is up. Amazingly, some lament the bevy of
choices maturing in the Java world, complaining that they have to
invest effort into figuring out which solution is best for them.
Ignoring for the moment that it has always taken hard work to figure
out what course is best to take on an IT project, Java developers
should be glad of all the competition. As all these projects jostle
together, collaborating where they have common interests and competing
where they think they can do better than the others, better platforms
emerge, and that benefits all of us who write Java programs.

Conclusion All is not quiet on the Open Source
front. From simple collaboration to unexpected innovation on platforms
tiny or huge, Java stakes out a vibrant place in the Open Source
pantheon.

Of course, we can't end a discussion about Open Source and Java without
briefly touching on the strong signals coming out of Sun Microsystems
that it will in the not-too-distant future open its Java
implementation. It remains to be seen whether Sun will choose a license
that will actually qualify under the Open Source Definition, but early
indications are that it's listened to people from the FOSS community
and know it has to go all the way.

And then watch in amazement at the hordes who'll be using Open Source. Keep watch at the gates!

Andrew Cowie is a long time Unix and Linux user and advocate, but somewhat unusually was an infantry officer in the Canadian army, having graduated from Royal Military College with a degree in engineering physics. He saw service across North America and a peacekeeping tour in Bosnia. Based in Sydney, Andrew runs Operational Dynamics, a consultancy helping clients worldwide with crisis management. On the technical side, Andrew has extensive experience as a Unix/Linux sysadmin, Java developer, and has long been an Open Source advocate.

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

Please wait while we process your request...

Your feedback has been submitted for approval.

Most Recent Comments

j j09/22/06 08:12:33 PM EDT

Open Source means different things to different people. For some it's a business model. For others it's a way of collaborating. Some see it as a way of reducing costs. And some are out to change the world.

j j09/22/06 08:12:12 PM EDT

Open Source means different things to different people. For some it's a business model. For others it's a way of collaborating. Some see it as a way of reducing costs. And some are out to change the world.

DevOps is all the rage these days and with good reason as it promises to reduce the time-to-market for new applications. It also promises to improve change management, allowing teams to deploy changes to their applications quickly and efficiently. However, DevOps isn’t something you buy, install, or implement; rather it is the symptom of an appropriate organizational system.
In his session at DevOps Summit, Mark Thiele, EVP, Data Center Technologies at SUPERNAP International, will discuss how to get to the right organizational model that will allow DevOps practices to flourish.

In recent years, we’ve watched mobile, cloud technologies and Internet of Things (IoT) enable increased connectivity for every network and every industry, ranging from connected cars to commercial vehicles and fleet management to smart cities to data centers. At MWC, it was clear that professionals in these areas are continuing to make strides in their fields. Below are a few of the major developments we noticed and look forward to hearing more as 2015 progresses.

When it comes to microservices there are myths and uncertainty about the journey ahead. Deploying a “Hello World” app on Docker is a long way from making microservices work in real enterprises with large applications, complex environments and existing organizational structures. February 19, 2015 10:00am PT / 1:00pm ET → 45 Minutes Join our four experts: Special host Gene Kim, Gary Gruver, Randy Shoup and XebiaLabs’ Andrew Phillips as they explore the realities of microservices in today’s IT world:

You deployed an app. Nothing has changed in three days, but it suddenly crashes. Why? Memory leak.
You deployed an app. Nothing has changed in three weeks, but it suddenly stops working. Why? A database query came back empty and the web application freaked out trying manipulate a null value, deciding instead to just stop in its track and return nothing.
You deployed a load balancing service. Nothing has changed in three months, but it suddenly stopped load balancing your app. Why? One of the ports on an intermediate switch decided to fry. Literally. It's a black hole and the load balancer ...

This month I want to revisit supporting infrastructure and datacenter environments. I have touched (some would say rant) upon this topic since my post in April 2014 called "Take a Holistic View of Support". My thoughts and views on this topic have not changed at all: it's critical for any organization to have a holistic, comprehensive strategy and view of how they support their IT infrastructure and datacenter environments. In fact, I believe it's even more critical today then it was a year ago when I wrote that blog post.
We work with many different organizations in many different types of i...

It's spring in the Northeast, and this week we're launching a new blog post series, "Everything You Want to Know about Windows Server 2003 Migration." Why a series of posts on WS2003? Even as summer and EOS is just months away, our "State of Readiness for Windows Server 2003 End of Support" survey reveals the shocking truth: most of you haven't done anything about remediation yet, and most will not complete your upgrades before the deadline.

Microservice architectures are the new hotness, even though they aren't really all that different (in principle) from the paradigm described by SOA (which is dead, or not dead, depending on whom you ask). One of the things this decompositional approach to application architecture does is encourage developers and operations (some might even say DevOps) to re-evaluate scaling strategies. In particular, the notion is forwarded that an application should be built to scale and then infrastructure should assist where necessary.

Keeping data from getting out into the wild or being damaged by cyber attackers is what keeps CISOs, the executive team and boards of directors up at night. To protect organizations, cybersecurity needs to be automated and real-time, it needs to learn contextually like we do and it needs to monitor every corner of the network in a way that organizations can afford without sacrificing coverage.

Even though it’s now Microservices Journal, long-time fans of SOA World Magazine can take comfort in the fact that the URL – soa.sys-con.com – remains unchanged. And that’s no mistake, as microservices are really nothing more than a new and improved take on the Service-Oriented Architecture (SOA) best practices we struggled to hammer out over the last decade. Skeptics, however, might say that this change is nothing more than an exercise in buzzword-hopping. SOA is passé, and now that people are talking about microservices instead, let’s switch out the terminology.

SYS-CON Events announced today the IoT Bootcamp – Jumpstart Your IoT Strategy, being held June 9–10, 2015, in conjunction with 16th Cloud Expo and Internet of @ThingsExpo at the Javits Center in New York City. This is your chance to jumpstart your IoT strategy.
Combined with real-world scenarios and use cases, the IoT Bootcamp is not just based on presentations but includes hands-on demos and walkthroughs. We will introduce you to a variety of Do-It-Yourself IoT platforms including Arduino, Raspberry Pi, BeagleBone, Spark and Intel Edison. You will also get an overview of cloud technologies s...

While recently attending a Dynatrace User Group in Hartford, I had the opportunity to sit in on a great presentation from a leading US insurance company as they explained their three-year APM journey. I see a lot of these success stories, but this one was especially impressive. To see how they have refined their internal processes, successes and performance best practices to ensure delivery of high quality, high performing and highly scalable applications over these years.
The performance engineering group within the large US insurance company was the one that started adopting application per...

Right off the bat, Newman advises that we should "think of microservices as a specific approach for SOA in the same way that XP or Scrum are specific approaches for Agile Software development". These analogies are very interesting because my expectation was that microservices is a pattern. So I might infer that microservices is a set of process techniques as opposed to an architectural approach. Yet in the book, Newman clearly includes some elements of concept model and architecture as well as process and organization.

Our guest on the podcast this week is Jesse Proudman, Founder and CTO of Bluebox. We discuss Walmart’s recent OpenStack success story and the expanding capabilities of DIY private clouds. While DIY private clouds require large investments in configuring open source software to meet business needs, they can have several advantages over managed services alternatives. Listen in to learn how a DIY model could make or break private cloud deployment.

As a group of concepts, DevOps has converged on several prominent themes including continuous software delivery, automation, and configuration management (CM). These integral pieces often form the pillars of an organization’s DevOps efforts, even as other bigger pieces like overarching best practices and guidelines are still being tried and tested. Being that DevOps is a relatively new paradigm - movement - methodology - [insert your own label here], standards around it have yet to be codified and set in stone. Organizations are left to identify tools and approaches most suitable for their use...

There's a lot of focus on the performance of mobile communications given the incredible rate at which mobile is outpacing legacy PC (did you ever think we'd see the day when we called it that?) usage. There's been tons of research on the topic ranging from the business impact (you really can lose millions of dollars per second of delay) to the technical mechanics of how mobile communications is impacted by traditional factors like bandwidth and RTT. Spoiler: RTT is more of a factor than is bandwidth in improving mobile app performance.

The competition among public cloud providers is red hot, private cloud continues to grab increasing shares of IT budgets, and hybrid cloud strategies are beginning to conquer the enterprise IT world.

Big Data is driving dramatic leaps in resource requirements and capabilities, and now the Internet of Things promises an exponential leap in the size of the Internet and Worldwide Web.

The world of SDX now encompasses Software-Defined Data Centers (SDDCs) as the technology world prepares for the Zettabyte Age.

Add the key topics of WebRTC and DevOps into the mix, and you have three days of pure cloud computing that you simply cannot miss.

Cloud Expo - the world's most established event - offers a vast selection of 130+ technical and strategic Industry Keynotes, General Sessions, Breakout Sessions, and signature Power Panels. The exhibition floor features 100+ exhibitors offering specific solutions and comprehensive strategies. The floor also features two Demo Theaters that give delegates the opportunity to get even closer to the technology they want to see and the people who offer it.

Attend Cloud Expo. Craft your own custom experience. Learn the latest from the world's best technologists. Find the vendors you want and put them to the test.