Welcome!

Java IoT Authors: Liz McMillan, Elizabeth White, Jnan Dash, Greg O'Connor, Pat Romanski

Related Topics: Java IoT

Java IoT: Article

Java Developer's Journal: 'To Dwell in the Future and Forget About Today'

Some of the words I dread most in a meeting are: 'What if ?'

Some of the words I dread most in a meeting are: "What if ?" They're fine in the present tense of "What if a user tries this option?" or "What if the database read fails mid flight?", but as soon as the future tense is introduced I begin to worry. "What if the database and middleware changes?" or "What if sometime soon we don't just have to run on PCs but need to work on mobile phones?" There is also the future future tense such as "What happens to the UI if the operating system is ported to run on a wrist watch?" or "What if one day the company merges with another whose corporate standard is MAC and SNA?"

My first IT job was building computer systems for Insurance Syndicates to allow them to manage their policies, collect premiums, and pay out claims to the less fortunate of their clients. It's a difficult business arena, with companies either losing or making a ton of money; our job was to provide them with systems to help stack the odds in favor of the latter. As well as supporting an existing 10-year-old application, we were all busy working on the next one, which was an entire rewrite. It suffered from all of the second-system syndrome features that usually plague such projects, where every feature, bell, and whistle that didn't get put into the first one gets incorporated.

What ultimately plagued and doomed the project was the "what if" over-engineering that went into its design. The business analysts tried to soothsay every possible scenario that would occur in the future, including some that would have required wholesale deregulation of the market and acts of parliament before they could ever become reality. Such schemes were happily programmed in with the foresight that if they were needed, a soft-coded switch could be thrown and the application would adapt itself in flight. Database rows had unused columns that, at the throw of a switch, would be activated onto users' screens and reports. The reality, of course, was that none of the scenarios that the analysts predicted ever occurred, and the amount of additional soft coding and layers of abstraction meant the software was slow and bulky. We lost almost all our market share to the competition, which just built lean, focused software. Even when big changes did occur to the market, such as the introduction of the Euro as an accounting currency, this required huge changes to the application because it naturally wasn't one of the future scenarios that had been predicted.

It's not just analysts who suffer from "whatifitis" syndrome. Programmers are just as guilty of using this as the excuse to over-engineer designs and code. The first OO project I worked on had to talk to a relational database back end, and we set about tackling this by creating code that could read and write our business objects. After a while it became apparent that the same logic was being used over and over, so this was refactored into a common set of class libraries, and behold a persistence mapping framework was born. Management got very excited about this, believing we'd built some kind of IT Rosetta stone, and talked to our software vendor who brought in some consultants. They raised the possibility that the database tables beneath our objects might change shape and we had to code for that possibility, as well as the possibility that our company might merge with another with a totally different database vendor and schema, and we should cater for that. There was a lot of buzz at the time about OO databases that just stored objects right onto disk without messy rows and tables, so to be ahead of the game our persistence layer catered to this. More and more layers of indirection were built into the code that now sat between the top-level objects and the database reads and writes. This, by now, had become soft coded to look up in dictionaries and maps to figure out what it was actually supposed to be doing at each decision point. This was a cool idea that would allow a system administrator to merely tweak the soft-coded rules and introduce wholesale change to how and where the beautiful and pure OO system would get and put its data. The system never actually shipped, because after having spent about three years building it, when the company did actually merge with another they decided it was silly to spend so much on our project; they would rather spend time patching the existing system to deal with the challenges resulting from the merger.

I'm fortunate enough now to work for a major IT vendor, yet during a recent presentation was given a reminder that "whatifitis" is still alive and well. This occurred while showing a customer a product that lets them write their code once and have it run on several different clients: green screen, Java Swing, and HTML. The business scenario is for someone who has users of all three interfaces, and while the Web or Java interface we generate isn't going to win usability awards against bespoke AJAX or Swing code, it's a good solution for companies who have hundred of screens and just don't want the hassle of many expensive bespoke interfaces. Halfway through the demo, one of the customer's architects asked, "What about the X-Box?" He'd read an article that said how games consoles were the user interface of the future and wanted to know on which release were we going to support this feature. Meeting customers is always odd because I usually only get to be in a room full of managers and their high-level architects, rather than their coders who actually get the work done. Instead of replying, "What if you stopped worrying about the future and, instead of reading airport newsstand IT magazines full of FUD, you spent some time with your users, solving their day-to-day business problems"; I gave a wishy-washy answer that didn't break my company's business conduct guidelines. Pity, what if...?

More Stories By Joe Winchester

Joe Winchester, Editor-in-Chief of Java Developer's Journal, was formerly JDJ's longtime Desktop Technologies Editor and is a software developer working on development tools for IBM in Hursley, UK.

Comments (4) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

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.


Most Recent Comments
JDJ News Desk 05/22/06 09:02:34 AM EDT

Some of the words I dread most in a meeting are: 'What if ?' They're fine in the present tense of 'What if a user tries this option?' or 'What if the database read fails mid flight?', but as soon as the future tense is introduced I begin to worry. 'What if the database and middleware changes?' or 'What if sometime soon we don't just have to run on PCs but need to work on mobile phones?' There is also the future future tense such as 'What happens to the UI if the operating system is ported to run on a wrist watch?' or 'What if one day the company merges with another whose corporate standard is MAC and SNA?'

JDJ News Desk 05/22/06 08:22:55 AM EDT

Some of the words I dread most in a meeting are: 'What if ?' They're fine in the present tense of 'What if a user tries this option?' or 'What if the database read fails mid flight?', but as soon as the future tense is introduced I begin to worry. 'What if the database and middleware changes?' or 'What if sometime soon we don't just have to run on PCs but need to work on mobile phones?' There is also the future future tense such as 'What happens to the UI if the operating system is ported to run on a wrist watch?' or 'What if one day the company merges with another whose corporate standard is MAC and SNA?'

JDJ News Desk 05/21/06 06:08:06 PM EDT

Some of the words I dread most in a meeting are: 'What if ?' They're fine in the present tense of 'What if a user tries this option?' or 'What if the database read fails mid flight?', but as soon as the future tense is introduced I begin to worry. 'What if the database and middleware changes?' or 'What if sometime soon we don't just have to run on PCs but need to work on mobile phones?' There is also the future future tense such as 'What happens to the UI if the operating system is ported to run on a wrist watch?' or 'What if one day the company merges with another whose corporate standard is MAC and SNA?'

JDJ News Desk 05/21/06 05:28:20 PM EDT

Some of the words I dread most in a meeting are: 'What if ?' They're fine in the present tense of 'What if a user tries this option?' or 'What if the database read fails mid flight?', but as soon as the future tense is introduced I begin to worry. 'What if the database and middleware changes?' or 'What if sometime soon we don't just have to run on PCs but need to work on mobile phones?' There is also the future future tense such as 'What happens to the UI if the operating system is ported to run on a wrist watch?' or 'What if one day the company merges with another whose corporate standard is MAC and SNA?'

@ThingsExpo Stories
A strange thing is happening along the way to the Internet of Things, namely far too many devices to work with and manage. It has become clear that we'll need much higher efficiency user experiences that can allow us to more easily and scalably work with the thousands of devices that will soon be in each of our lives. Enter the conversational interface revolution, combining bots we can literally talk with, gesture to, and even direct with our thoughts, with embedded artificial intelligence, wh...
Video experiences should be unique and exciting! But that doesn’t mean you need to patch all the pieces yourself. Users demand rich and engaging experiences and new ways to connect with you. But creating robust video applications at scale can be complicated, time-consuming and expensive. In his session at @ThingsExpo, Zohar Babin, Vice President of Platform, Ecosystem and Community at Kaltura, will discuss how VPaaS enables you to move fast, creating scalable video experiences that reach your...
In his keynote at 18th Cloud Expo, Andrew Keys, Co-Founder of ConsenSys Enterprise, provided an overview of the evolution of the Internet and the Database and the future of their combination – the Blockchain. Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life sett...
Cloud computing is being adopted in one form or another by 94% of enterprises today. Tens of billions of new devices are being connected to The Internet of Things. And Big Data is driving this bus. An exponential increase is expected in the amount of information being processed, managed, analyzed, and acted upon by enterprise IT. This amazing is not part of some distant future - it is happening today. One report shows a 650% increase in enterprise data by 2020. Other estimates are even higher....
SYS-CON Events announced today that SoftLayer, an IBM Company, has been named “Gold Sponsor” of SYS-CON's 18th Cloud Expo, which will take place on June 7-9, 2016, at the Javits Center in New York, New York. SoftLayer, an IBM Company, provides cloud infrastructure as a service from a growing number of data centers and network points of presence around the world. SoftLayer’s customers range from Web startups to global enterprises.
19th Cloud Expo, taking place November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy. Meanwhile, 94% of enterpri...
Businesses are struggling to manage the information flow and interactions between all of these new devices and things jumping on their network, and the apps and IT systems they control. The data businesses gather is only helpful if they can do something with it. In his session at @ThingsExpo, Chris Witeck, Principal Technology Strategist at Citrix, will discuss how different the impact of IoT will be for large businesses, expanding how IoT will allow large organizations to make their legacy ap...
In his general session at 18th Cloud Expo, Lee Atchison, Principal Cloud Architect and Advocate at New Relic, discussed cloud as a ‘better data center’ and how it adds new capacity (faster) and improves application availability (redundancy). The cloud is a ‘Dynamic Tool for Dynamic Apps’ and resource allocation is an integral part of your application architecture, so use only the resources you need and allocate /de-allocate resources on the fly.
SYS-CON Events announced today the Enterprise IoT Bootcamp, being held November 1-2, 2016, in conjunction with 19th Cloud Expo | @ThingsExpo at the Santa Clara Convention Center in Santa Clara, CA. Combined with real-world scenarios and use cases, the Enterprise IoT Bootcamp is not just based on presentations but with hands-on demos and detailed walkthroughs. We will introduce you to a variety of real world use cases prototyped using Arduino, Raspberry Pi, BeagleBone, Spark, and Intel Edison. Y...
The vision of a connected smart home is becoming reality with the application of integrated wireless technologies in devices and appliances. The use of standardized and TCP/IP networked wireless technologies in line-powered and battery operated sensors and controls has led to the adoption of radios in the 2.4GHz band, including Wi-Fi, BT/BLE and 802.15.4 applied ZigBee and Thread. This is driving the need for robust wireless coexistence for multiple radios to ensure throughput performance and th...
Internet of @ThingsExpo, taking place November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 19th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago. All major researchers estimate there will be tens of billions devices - comp...
The many IoT deployments around the world are busy integrating smart devices and sensors into their enterprise IT infrastructures. Yet all of this technology – and there are an amazing number of choices – is of no use without the software to gather, communicate, and analyze the new data flows. Without software, there is no IT. In this power panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, panelists will look at the protocols that communicate data and the emerging data analy...
According to Forrester Research, every business will become either a digital predator or digital prey by 2020. To avoid demise, organizations must rapidly create new sources of value in their end-to-end customer experiences. True digital predators also must break down information and process silos and extend digital transformation initiatives to empower employees with the digital resources needed to win, serve, and retain customers.
“We're a global managed hosting provider. Our core customer set is a U.S.-based customer that is looking to go global,” explained Adam Rogers, Managing Director at ANEXIA, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
Smart Cities are here to stay, but for their promise to be delivered, the data they produce must not be put in new siloes. In his session at @ThingsExpo, Mathias Herberts, Co-founder and CTO of Cityzen Data, will deep dive into best practices that will ensure a successful smart city journey.
Why do your mobile transformations need to happen today? Mobile is the strategy that enterprise transformation centers on to drive customer engagement. In his general session at @ThingsExpo, Roger Woods, Director, Mobile Product & Strategy – Adobe Marketing Cloud, covered key IoT and mobile trends that are forcing mobile transformation, key components of a solid mobile strategy and explored how brands are effectively driving mobile change throughout the enterprise.
The Jevons Paradox suggests that when technological advances increase efficiency of a resource, it results in an overall increase in consumption. Writing on the increased use of coal as a result of technological improvements, 19th-century economist William Stanley Jevons found that these improvements led to the development of new ways to utilize coal. In his session at 19th Cloud Expo, Mark Thiele, Chief Strategy Officer for Apcera, will compare the Jevons Paradox to modern-day enterprise IT, e...
What happens when the different parts of a vehicle become smarter than the vehicle itself? As we move toward the era of smart everything, hundreds of entities in a vehicle that communicate with each other, the vehicle and external systems create a need for identity orchestration so that all entities work as a conglomerate. Much like an orchestra without a conductor, without the ability to secure, control, and connect the link between a vehicle’s head unit, devices, and systems and to manage the ...
In this strange new world where more and more power is drawn from business technology, companies are effectively straddling two paths on the road to innovation and transformation into digital enterprises. The first path is the heritage trail – with “legacy” technology forming the background. Here, extant technologies are transformed by core IT teams to provide more API-driven approaches. Legacy systems can restrict companies that are transitioning into digital enterprises. To truly become a lea...
DevOps at Cloud Expo, taking place Nov 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 19th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time to wait for long dev...