Blogs

RedMonk

Skip to content

Fireside at the Java Community – Press Pass

Future of Java panel

Oracle hosted a “fire-side” chat about Java this past Tuesday, giving an update on how the community is doing and taking a few questions. John Waters sent a few questions over for a piece published as “Oracle Speaks Out on Java, One Year Later…Sort Of.” Here’s the complete answers I wrote up:

Q: Are user groups the heart and soul of the Java community? Do they have this right? Is this a good strategy?

Java user groups may not be as powerful as they used to, at least in the US, but they’re still a significant part of the community. The proof? User groups are, pretty much, volunteer-led. For some there are incentives to get involved – free stuff, networking, fame, etc. – but you can look at the participation as driven mostly by the user group members passion. I don’t know figures on user groups, but anecdotal, I tend to see them still well attended. There’s fragmentation and interest in other platforms and groups as well, but Java User Groups certainly aren’t dead-wood floating up on the beach.

The Java community has many hearts and souls, of course. But, if you were to pick one community, it’d be hard to go wrong with user groups. The only issue is that you might be missing out on some of the edge cases and emerging Java developers who aren’t interested in only the Java world. There’s probably some Dalvik, Android, and other mobile developers that the overall Java community should be looking towards, and also many of the new database types (broadly, “NoSQL”) and app platforms are Java-based, but are far from “official” Java. A recent post from Stephen O’Grady outlined this “mutation” well.

Q: What do you think of that idea of Big banks and telcos being brought in to the JCP to represent “the user”?

That makes perfect sense if you want to promote the use of established “users.” Big enterprises certainly use Java and depend on many existing applications (off the shelf and custom) that are built on Java. I’d suggest that Oracle probably knows how much revenue is generated by such big customers and, thus, how important they are to the financial side of the Java world and, further, that it’s actually a good idea to give big spending users like that “a seat at the table.”

Now, the problem with that is that you want to balance that out with important innovations coming from community members with “shallow pockets.” So called “community” people like to complain about monied interested invading the “community” as if big banks and telcos aren’t part of that community [NOTE: I accidentally omitted that magical “if” in my reply to John so it’s not reflected in John’s piece, which changes the point I’m saying here a bit, obviously] . I think what they’re really worried about is not excluding these people (“big companies”), but about money talking instead of useful, innovative ideas winning out, no matter how expensively dressed those ideas are. As long as board members’ decisions make sure to (a.) keep existing Java applications stable and working, and, (b.) advance the platform with new innovations as fast as possible they’ll be doing a good job. That’s how I’d rate any member, threadbare or sartorially sophisticated.

People seem to want JavaOne to be it’s own conference…

Yeah, JavaOne used to be the event for Java developers, and a significant one for the development world in general (we’ve seen Google I/O rising an interesting, if narrow replacement, kindasorta). Folding it into Oracle OpenWorld sends the wrong signal (Oracle is more important than Java: it wasn’t SunOne) and probably makes some Java people not want to attend. The Java world is much bigger than the Oracle world and it definitely deserves it’s own conference, if only in name.

Categories: Community, Enterprise Software, Java, Press Pass, Programming.

Tags: , ,

Links for February 14th through February 16th

Three foosball tables in IBM's Austin building known as "The Rust Bucket"

(Above: three foosball tables at building 045 on the IBM Austin campus, known as “The Rust Bucket” by some. IBM knows what techies want, and have the budget to multiply it by 3! I actually used to go to that building in the 80s a lot when my dad worked there.)

Disclosure: see the RedMonk client list for clients mentioned.

Categories: Links.

The Developer Landgrab – Another Way to Look at DevOps

  • After ejecting every function except writing code, development teams have been bringing those roles back to the core team, starting with QA, then product management, and now operations.
  • The goal is deliver Frequent Functionality (features released more frequently rather than in big 12-18 month releases) and increase the value of the software by getting better and more feedback about how users are interacting with the applications.
  • New innovations in automation, Agile development, and cloud computing are making this possible.

Developers are Insourcing

Developers have been in-sourcing tasks they’d previously jettisoned from their core functionality for a few years now and cloud computing has brought one more land-grab: operations. Agile tricked developers into caring about QA and testing, but also requirements and product management. Now, devops is “tricking” developers to care about operations. I put tricking in quotes because the developers actually want this – the good ones at least. The benefits, or at least goals are clear: delivering software that users like with a more frequent cadence. Those are the two aspects of software development that most interest me now: frequent functionality and using rapid feedback-loops to improve the user experience and overall usefulness of the software.

A Brief, Hand-wavy History

At the very beginning, development teams did everything, or at the very least were intimately involved: gathered requirements, writing the code, testing the code, running the code. IT being expensive, organizations sought to divide up those tasks into shared resources, often under different management chains. Developers, of course, also just wanted to write code: not “talk with customers about what they needed” (requirements and product management) or keep their applications humming along nicely in production (operations).

Throw in mainframe MIPs accounting and high costs, and you can see how separating out those rascally developers from expensive mainframe toys makes business sense, at least in a spreadsheet. (Side-note: with the metered pricing of cloud computing, thus far there’s no reason to think that in 10 or so years, cloud computing resources will be any less iron-gripped controlled than mainframe resources – that is, use and consumption of them will be slowed down in favor of controlling costs. We’ll see.)

And writing and running tests? What developer wants to do that?

Agile Starts to In-source: QA

One of the emergent principals of Agile (perhaps an anti-pattern) is that once the core team who wrote the software gives control of that software to another group, overall quality tends to go down. This isn’t across the board, but you tend to see that. As an individual, if you don’t somehow “own” the software, you won’t give it the same love and care that an “owner” will. This applies to QA and operations, usually not so much to product management.

Agile is always trying to get developers to do more process. To own more of the software life-cycle. It never says this outright, but cynical developers will spot it right away: “wait, my job is to write code, not write-up use cases and rank them. Let alone help take care of my software in production, in the hands of dirty users. I mean: are you going to pay me more?”

Somehow, Agile got developers to care about QA. It started small with unit testing by promising, after a huge amount of initial work, to make them more productive. Then functional tests came in, and now if you’ve got yourself wired up correctly, you can test whole use cases (or “stories” to use the term Agile hid the dread “use case” behind).

The bigger win was getting QA to be part of the development team. In reality, good QA people are often the foremost experts on the product – they’re the ones that spend hours, weeks poking and prodding it. Getting their input, starting at the beginning, is a great way to improve software. As with developers who are writing and running tests, the QA person ceases to be “just QA”: they’re one of the many owners of the software.

“I take the requirements from the customer to the developers.”

Seeking feedback and rich interaction with users hasn’t always been a strong-point of developers. They haven’t wanted to do product management (in this context: figuring out what users/customers want and then prioritizing which ones get into which release). “That’s someone else’s job” is what you’d hear. As with QA, that role has seeped a bit into developers hands as well. There’s simply not enough time in the day to write code, test, and also do product management, so it’s probably a good idea to have a whole person filling that role: but, having that person be the sole conduit between developers and users is not entirely helpful.

Thanks to the ability to run software as a service (SaaS) and mature cloud offering, a lot of the feedback teams need to do product management can now be automated. If you’re running your application as a SaaS, you can see what every single user is doing all the time. It’s like you have infinite one-way mirror usability tests going on. Public web apps (Amazon, Facebook, etc.) have known this for a long time, getting into advanced practices like A/B feature testing: let’s release two different ways of implementing this feature to sub-sets of user group and see which one results in more book sales, and then we’ll switch everyone over the better one. What you’re driving at is feeding aggregated user behavior data into the product management process.

There’s a quote I use all the time from Alterity’s Brian Sweat that I use all the time to summarize this point:

I can actually look at [a feature] and say, ‘nobody uses feature X.’ It’s not even being looked at. And it really helps us shape the future of the app which, on a desktop product, we don’t have a lot of data like that.

There’s two concepts running around here that I speak a lot about: frequent functionality and rapid feedback loops. Getting features in small chunks in production sooner and then collecting a huge amount of usage feedback from users. You’re first delighting your users by keeping your software up-to-date and more functional (a lesson learned from the consumer space where new frequent functionality and integrations with other services is key for long-term success) and also giving yourself the chance to see what works best (or worst!) with users. You can empirically improve the quality of your software. And here, by “quality” I don’t mean “bug free” (which is a less helpful definition in this context) but something more like “the ability to help users do their job better, faster, and more profitably.”

I go over these concepts a lot in talks now-a-days, most recently on requirements management and back at devoxx 2010.

Operations

Ask any developer if they’d like to take a pager and be woken up at 3am to reboot a server. You can guess what the answer is. A blank stare that says “no” in a string a four-letter words. These guys are coders, not pager monkeys.

And yet, developers are increasingly taking on that task, perhaps not seeing those bat-belt ops guys clip a pager onto the developer’s t-shirt. The speed at which cloud computing technologies and practices allows developers to get their core job done (spinning up virtual labs, getting access to resources without having to wait 6 weeks for the DBA to create a new column in a table, etc.) has sold developers on cloud computing. Throw in SaaSified parts of the development tool-chain like GitHub, and you start to see why developers like cloud-based technology so much: it speeds up their work, gives them more power (they don’t have to ask IT permission for a server, and then wait for it), and overall improves their ability to produce good software.

As developers using cloud computing technologies get closer and closer to production, you can see them starting to in-source even operations. At the bleeding edge, those using Platform-as-a-Services (PaaS) are almost forced into doing this. Indeed, as its name implies, much of what devops is wants to do it bring the operations function back to the core team.

This doesn’t suggest that you get rid of the operations people at all – the good ones at least. Rather, it means that as with QA and product management, their role moves from “keeping the lights green” to “delivering good, productive experiences.” Operations becomes one of the product owners, not just the “monkeys” who hook up wires to servers and increase disk-space.

As some point, IT became a cost-center, a provider of “services” to the business. That’s terrible for them. No one wants to be the manager of a “shared resource.” Just go ask your janitorial staff or the guy who keeps your office supply closet stocked how secure and well paid they are. Before the current crop of IT Management technologies finally ripened (Agile development, virtualization, open source, and now cloud), perhaps, taking this “services” approach was cost effective. But, now it means that IT has one way to show value to the rest of the company: budget cuts. For IT, the promise is to become top-line revenue: part of the way a company makes money, not hidden somewhere in the expenses.

(Hey, I’m a big IT Management guy, here, so realize that I’m being tongue-in-check with this whole “monkey” thing. If you want equal servings the other way: “Developers”? Those are the guys who write bugs, right?)

Automation

All of this in-sourcing relies on automating parts of what’s being brought back to the core development team: automating testing with the write testing frameworks and continuous integration tools, automating understanding how users are interacting with your software with cloud-driven feedback, and automating IT management in production.

Evaluating Offerings & Programs

To me, this understanding that automation is key is critical because it means what I’ve been seeing here and there is driven by actual, new technology: not just vapor-ware and Unicorn-meat. It means something else great: if someone comes peddling devops or some other whacky cloud-based way to improve your software delivery process, you can ask them to show you the tools – “where’s the beef?” and all that.

Avoiding Outsourcing

[I]f you worked for AT&T in my day, it was a great bureaucracy.  Who in the hell was really thinking about the shareholder or anything else?  And in a bureaucracy, you think the work is done when it goes out of your in-basket into somebody else’s in-basket.  But, of course, it isn’t.  It’s not done until AT&T delivers what it’s supposed to deliver.  So you get big, fat, dumb, unmotivated bureaucracies.

Charles Munger

There’s a tremendous amount of “cultural change” (read: getting employees to do things differently and like it) needed, but the hope is that this trend of developers in-sourcing tasks means that cultural change will be possible. It doesn’t happen often, but many parts of the IT department (developers, QA, and a bit of ops) are actually looking for new ways of doing things. The best part is that the promise – that some folks have been realizing – is that IT can become part of the business, not just a cut-to-the-bone cost center that keeps email up and running and AntiVirus software updated.

Or, to put it all more simply: Conway’s Law.

Disclosure: GitHub is a client.

Categories: Agile, Cloud, Programming, Systems Management, The New Thing.

Tags: , ,

Links for February 11th through February 14th

Disclosure: see the RedMonk client list for clients mentioned.

Categories: Links.

On Turkeys

Turkey

Vic Gundotra:

“Two turkeys do not make an Eagle.”

Ben Franklin:

For my own part I wish the Eagle had not been chosen the representative of our country. He is a bird of bad moral character. He does not get his Living honestly. You may have seen him perched on some dead tree near the river, where, too lazy to fish for himself, he watches the labor of the Fishing Hawk; and when that diligent Bird has at length taken a fish, and is bearing it to his nest for the support of his mate and young ones, the Eagle pursues him and takes it from him.

With all this injustice, he is never in good case but like those among men who live by sharping & robbing he is generally poor and often very lousy. Besides he is a rank coward: The little King Bird not bigger than a Sparrow attacks him boldly and drives him out of the district. He is therefore by no means a proper emblem for the brave and honest Cincinnati of America who have driven all the King birds from our country…

I am on this account not displeased that the figure is not known as a Eagle, but looks more like a Turkey. For the truth the Turkey is in comparison a much more respectable bird, and withal a true original native of America…. He is besides, though a little vain & silly, a bird of courage, and would not hesitate to attack a grenadier of the British Guards who should presume to invade his farm yard with a red coat on.

(See Engaget’s boot-note on the meaning of using quotes in Gundotra’s tweeter.)

Categories: The Analyst Life, The New Thing.

Tags: , , , ,

Links for February 10th

Das Keyboard, opening

(Faceless keyboard from Das Keyboard. Review over on GearMonk once I’ve used it for a week or so.)

Disclosure: see the RedMonk client list for clients mentioned.

Categories: Links.

Hybrid Cloud – Upcoming Webinar

Interested in sorting out hybrid clouds? Next week I’ll be part of a webinar put on by Cloud.com and Rightscale going over the concept, along with demos and commentary from them on clouds that span public and private.

I’ll be laying out what exactly we mean by hybrid cloud and going through some of the pragmatic thinking and planning you’ll want to go through if you’re considering such a setup. I’m always interested in what people are actually doing with a new technology like cloud and, more importantly, how they can avoid cementing themselves into yet another technology.

Here’s the official agenda:

For hybrid clouds to be useful, IT pros need to be able to easily manage and automate their capacity across multiple resource pools, private and public. In order to achieve this, companies are turning to Cloud.com and Rightscale to automate infrastructure orchestration and application management in the cloud.

Join this webinar for a live discussion and demo on setting up a hybrid cloud. The discussion will be moderated by Redmonk Analyst, Michael Coté with a focus on the fundamentals of hybrid cloud architectures, ideal use cases and real world examples.

We will demonstrate a live deployment of a hybrid cloud using Rightscale and Cloud.com technologies. We’ll discuss the fundamentals of private cloud architectures, illustrate how RightScale’s ServerTemplate methodology is critical to a successful hybrid cloud, and end with a live Q&A from the audience.

Attending is free (register here), of course: it’s Tuesday, February 15, 2011 @ 11am PST / 2pm ET.

Disclosure: Cloud.com is a client and I’m participating in the above as part of their RedMonk subscription.

Categories: Cloud, Enterprise Software.

Tags: , ,

Links for February 8th through February 10th

Opt-out of tracking, if anyone is polite enough to pay attention

Disclosure: see the RedMonk client list for clients mentioned.

Categories: Links.

10 things iPad rivals must do to compete with the Apple – Quick Analysis

Galaxy Tab and Logitech Revue at Costco end cap

Soon, everyone will have a tablet in the market, it seems. Watching the HP TouchPad & friends (excellent coverage from Cade Metz) event this morning, I got to thinking about what tablet makers must do to compete with Apple. Most of them, so far, have failed on the key item: being cheaper than the iPad. That’s feature number one.

Price < iPad

I mean, let’s be frank: if you’re releasing a tablet, you’re benchmark and your competition is the iPad. That could change in time, sure, but for now, as in mobile, that’s the sort of Platonic model of perfection that most buyers seem to have.

The sell isn’t “here’s why you should buy our tablet because it’s awesome.” The sell has to be “here’s why you should spend your money on us instead of what you really want, an iPad.” As the always entertaining @jrep said in Twitter while we were watching the HP/Palm/webOS/TouchPad shin-dig: “Interesting, ain’t it, that Apple finds itself both “best” and “cheapest” for once?”

From what I’ve seen in non-iPad tablets released so far, each has been around the same price or more than an iPad. The Kindle is a the lone stand out here. I’d argue that it only succeeds because it’s cheaper than an iPad. Not having used one personally, but having talked with many people, the Kindle is a great form-factor and a great device for reading books (that screen is pretty fantastic looking, even across an airplane row). But if the Kindle cost as much as an iPad, most people I’ve spoken with would just get an iPad. They especially have that thought if I mention that you can run a Kindle app on the iPad.

As Stephen O’Grady put it awhile ago: “Anything more than the iPad is too much, given the quality of that device. Less is better, obviously.”

Other Requirements

There’s some other differentiating “musts” as well that I’ve been metaphorically jotting down on the backs on envelopes as I see more and more tablet action:

  1. It better work and look good doing it – we’ve seen plenty of tablets in years past that were basically crap or just clunky enough to not really be worth it. Back when I was at BMC, a co-worker had one of those laptop/tablet things where the screen twisted around to be a “tablet.” I think it had a stylus too. It was just a little weird.
  2. Flash – having used iOS devices for awhile now, when I switch to a mobile platform that supports Flash (like Android on a phone or the Logitech Revue Google TV) I notice Flash is a good way. I sort of think, “oh yeah, I’ve been missing that without realizing it.”
  3. All-in-one device for business and pleasure – clearly, having as many devices in one as possible is highly desired (phone, camera, computer, digital picture frame, music/video player, email machine, etc.). The fact that the first iPad didn’t have a camera was pretty weird and something competitors can’t get away with. Another “all-in-one” is allowing people to use the tablet for both personal and work use – integrating with Exchange, VPN, Office formats, and all that. The emphasis on email in HP’s webOS bonanza this morning was a nice indication along these lines. The device has to work with corporate email and applications, but at the same time allow the user to cart around their personal music collection, photos of lady/guy-friends and kids. And most importantly, it needs games. Lots of games.
  4. App Integrations – allowing apps to integrate and communicate with each can be a big disaster, but done right it can be great. One of the major problems I have with iOS is the inability route different types of files and “streams” to different apps. For example, on an iPhone, looking at a picture you can only upload it to MobileMe (boo!), MMS, or email. While on Windows Phone 7, they add in Facebook – and then with Android (and WP7) you can actually gets apps that will add new Share options in there, say, for flickr. Providing these extension points makes the tablet platform more useful and customizable to how I want to do things. iOS has finally added in opening PDF files in other apps like Goodreader, but I’ve seen much better use of these extension points on Windows Phone 7 and Android.
  5. Apps – a tablet needs a wide range of popular apps if not right at release, very quickly. At the moment, your best bet is to probably just get the popular apps in the iTunes App Store duplicated in your app store, paying off the developers if needed (for some, free devices might do the trick, other will be more savvy and just want cash). While not a tablet, the current state of Google TV provides an excellent counter-example: the apps are limited to the handful of ones that come with it, making the device an overly expensive alternative to the excellently priced Roku box.
  6. Developers – the other side of apps is providing a platform that developers want to develop on (ostensibly, webOS should be doing well here, esp. with the tight node.js/HTML5 emphasis) and speeding up the compile-to-cash cycle as much as possible. In the mobile space, developers are (rightly) driven by profit motives: they want to sell apps. It’s a bit hyperbolic to make a point, but after a “generation” of developers raised on “open source as in ‘no one pays me for my code'” the prospect of making a living of selling software is alluring.
  7. Cables – just use USB cables, micro or mini, or whatever: use something that’s standard so I can use the same cable between my external hard-drives, camera, and tablets. This is more of a personal preference, but, again the point is to be compete with the iPad.
  8. Battery Life – as Stephen pointed out back in September, battery life is key. Being able to use a tablet “all day” is sort of the key use case and depends on portability, wide app availability (you can do all the things you need to do), and long battery life. Every happy iPad user mentions this to me, esp. the startup execs and sales people (an edge case – except if you consider all those field people at $500-600 a pop for a tablet) who basically use their iPad as a fancy, three-ring binder presentation slide binder.

Actually, you probably shouldn’t make a tablet

Finally, and to satisfy the Talebian quip that good consultants tell you what not to do: chances are you probably shouldn’t be making a tablet. Aside from a handful companies (good for you guys!), delivering a tablet is out of scope and potentially a big distraction from your existing businesses.

The task of doing a tablet well – read: not loosing money and avoiding lost opportunity cost – is immense, expensive, and multi-year. You’re essentially building a whole new computer platform. Worse, you could be OEM’ing a rag-tag of hardware and OS that’s going to get you into a thin-margin market. People like Dell, HP, Acer, Lenovo, Toshiba, and those folks can hack through businesses like that int he PC space (surviving that crappy marketplace is their core competency – compare to high-end Apple), but it’s not a model you want to get into as a new line of business.

I know, I know: your share-holders (if you’re not public, you’re probably nowhere near big enough to even think about making a tablet) are asking you WTF? on Apple making all that cash from phones and tablets. Just focus on making more money in what you know and then ask your share-holders, “do you want a tablet, or a higher share price?” Your existing customers who just want your existing stuff working better, and for cheaper, will thank you too.

(Side-note: while I was there for the HP TouchPad launch, it looked pretty fine – thanks to the guys at precentral.net for live-blogging it. Hopefully their pricing is good. As one of the commenters at precentral.net said, “Dear HPalm: Please make this worth the wait in a hundred different ways. It is my love for you that prolongs my patience, but it is now wearing thin.” Also, pardon the link-baiting title: I couldn’t help myself.)

Disclosure: check the RedMonk client list for relevant clients.

Categories: Ideas, Marketing, Quick Analysis, The New Thing.

Tags: , , , , , , ,

Integration PaaS, Mule iON in private beta – Brief Note

Yesterday, MuleSoft announced a private beta for their PaaS platform, Mule iON, squarely focused on helping people do integration tasks around cloud-based applications and services. They call the concept “iPaaS,” an “integration platform as a service.” You can check out a bulleted, if high-level, feature list in yesterday’s press release.

“i” is for “integration”

I like this narrow focus on integration instead of just a general PaaS. It’s what you’d expect from MuleSoft’s background is in ESBs (Mule), Tomcat support (they seem to have built a new business around their “Tcat” server), and the open source world around the kind of tasks and applications (Java, mostly) you build around a bus.

Cloud Creep

I spoke with Ross Mason and Mahau Ma today, going over the announcement but mostly about the types of applications and work-loads they’re seeing people use in cloud-based projects. Some key take-aways:

  • From the customer/user point of view, everything is wrapped up in iON. While it runs on a public cloud, the end-user interacts with the iON platform without needing to go muck with the underlying cloud.
  • Last year, MuleSoft started providing Mule Cloud Connect (see an interview on the topic here) to help integrations between cloud and on-premise (and cloud-to-cloud, I guess). With all of the SaaSes out there (and Salesforce in particular, it seems), Ross said there’s been a big demand for integrating data between services. As he put in on the Mule blog a short while ago: “One of the drivers for Mule Cloud Connect was that we are seeing that traditional three-tiered application architecture is outmoded – Web applications today require integrating multiple data-sources and services, both in the cloud and behind the firewall, and presenting rich data to the browser in real-time.”
  • This need for integration hits on something I’ve been starting to see: cloud-use is infectious in your architecture and even how you run your project. I’ve had a handful of conversations with people who’ve mentioned that once they use cloud for one part of their application (if only delivery), using it for more parts (all the way down to build and ALM) starts to look more attractive. To build on Ross’ comments from that blog: if you’re integrating your on-premise application with data in Salesforce, chances are good that you’ll start to wonder why you don’t move that on-premise thing into the cloud as well.
  • As ever, Conway’s Law probably fits especially well here: you’d expect remote, distributed teams that are not centralized to build architectures that are equally “cloud-y.” For example, you could see how virtualized teams who work on cloud-deployed applications would really like moving all their version control to the cloud as well to places like GitHub.

And, indeed, that last point and the resulting transition is what Mule looks to be going after.

Disclosure: both MuleSoft and Salesforce are RedMonk clients, as is GitHub.

Categories: Brief Notes, Cloud, Enterprise Software, Java, Open Source.

Tags: , , , , , , , ,