Thursday Sep 27, 2012

Talking JavaOne with Rock Star Martijn Verburg

JavaOne Rock Stars, conceived in 2005, are the top-rated speakers at each JavaOne Conference. They are awarded by their peers, who, through conference surveys, recognize them for their outstanding sessions and speaking ability. Over the years many of the world’s leading Java developers have been so recognized.

Martijn Verburg has, in recent years, established himself as an important mover and shaker in the Java community. His “Diabolical Developer” session at the JavaOne 2011 Conference got people’s attention by identifying some of the worst practices Java developers are prone to engage in. Among other things, he is co-leader and organizer of the thriving London Java User Group (JUG) which has more than 2,500 members, co-represents the London JUG on the Executive Committee of the Java Community Process, and leads the global effort for the Java User Group “Adopt a JSR” and “Adopt OpenJDK” programs.

Career highlights include overhauling technology stacks and SDLC practices at Mizuho International, mentoring Oracle on technical community management, and running off shore development teams for AIG. He is currently CTO at jClarity, a start-up focusing on automating optimization for Java/JVM related technologies, and Product Advisor at ZeroTurnaround. He co-authored, with Ben Evans, "The Well-Grounded Java Developer" published by Manning and, as a leading authority on technical team optimization, he is in high demand at major software conferences.

Verburg is participating in five sessions, a busy man indeed. Here they are:

  • CON6152 - Modern Software Development Antipatterns (with Ben Evans)
  • UGF10434 - JCP and OpenJDK: Using the JUGs’ “Adopt” Programs in Your Group (with Csaba Toth)
  • BOF4047 - OpenJDK Building and Testing: Case Study—Java User Group OpenJDK Bugathon (with Ben Evans and Cecilia Borg)
  • BOF6283 - 101 Ways to Improve Java: Why Developer Participation Matters (with Bruno Souza and Heather Vancura-Chilson)
  • HOL6500 - Finding and Solving Java Deadlocks (with Heinz Kabutz, Kirk Pepperdine, Ellen Kraffmiller and Henri Tremblay)
When I asked Verburg about the biggest mistakes Java developers tend to make, he listed three:
  1. A lack of communication -- Software development is far more a social activity than a technical one; most projects fail because of communication issues and social dynamics, not because of a bad technical decision. Sadly, many developers never learn this lesson.
  2. No source control -- Developers simply storing code in local filesystems and emailing code in order to integrate
  3. Design-driven Design -- The need for some developers to cram every design pattern from the Gang of Four (GoF) book into their source code

All of which raises the question: If these practices are so bad, why do developers engage in them? “I've seen a wide gamut of reasons,” said Verburg, who lists them as:

* They were never taught at high school/university that their bad habits were harmful.
* They weren't mentored in their first professional roles.
* They've lost passion for their craft.
* They're being deliberately malicious!
* They think software development is a technical activity and not a social one.
* They think that they'll be able to tidy it up later.

A couple of key confusions and misconceptions beset Java developers, according to Verburg.

“With Java and the JVM in particular I've seen a couple of trends,” he remarked. “One is that developers think that the JVM is a magic box that will clean up their memory, make their code run fast, as well as make them cups of coffee. The JVM does help in a lot of cases, but bad code can and will still lead to terrible results! The other trend is to try and force Java (the language) to do something it's not very good at, such as rapid web development. So you get a proliferation of overly complex frameworks, libraries and techniques trying to get around the fact that Java is a monolithic, statically typed, compiled, OO environment. It's not a Golden Hammer!”

I asked him about the keys to running a good Java User Group. “You need to have a ‘Why,’” he observed. “Many user groups know what they do (typically, events) and how they do it (the logistics), but what really drives users to join your group and to stay is to give them a purpose. For example, within the LJC we constantly talk about the ‘Why,’ which in our case is several whys:

* Re-ignite the passion that developers have for their craft
* Raise the bar of Java developers in London
* We want developers to have a voice in deciding the future of Java
* We want to inspire the next generation of tech leaders
* To bring the disparate tech groups in London together
* So we could learn from each other
* We believe that the Java ecosystem forms a cornerstone of our society today -- we want to protect that for the future

Looking ahead to Java 8 Verburg expressed excitement about Lambdas.

“I cannot wait for Lambdas,” he enthused. “Brian Goetz and his group are doing a great job, especially given some of the backwards compatibility that they have to maintain. It's going to remove a lot of boiler plate and yet maintain readability, plus enable massive scaling.”

Check out Martijn Verburg at JavaOne if you get a chance, and, stay tuned for a longer interview yours truly did with Martijn to be publish on otn/java some time after JavaOne.

Originally published on blogs.oracle.com/javaone.



Wednesday Sep 12, 2012

Java Thriving in Oracle's hands

IDC has published a Technology Assessment of Oracle's stewardship of Java titled "The State of Java: Two and a Half Years After the Acquisition." The overall IDC opinion is that Java under Oracle's stewardship is thriving.

Report highlights include:

  • The successful delivery of Java SE 7, which had been stalled at Sun Microsystems
  • Articulation of realistic road maps for Java EE 7 and Java SE 8
  • The healthy growth of the Java ecosystem
  • The decisiveness with which Oracle handled the Apache Harmony dispute
  • Key vendors joining the OpenJDK including IBM, Apple, and SAP
  • More and more programming languages being hosted on the Java Virtual Machine(JVM)
  • Java's role in major computing trends including Mobile, Cloud, Big Data and Social

You can access the full report here (PDF).

Tuesday Apr 24, 2012

Devoxx à la Française: Superbe!

Devoxx France in Paris sold out with 1,250 developers registering for the first such conference held outside of Belgium. The event doubled in size from the initial plan as conceived last November. As a result of the outpouring of community support, the organizers confirmed that they would host the conference again next year.


In an aura of collaboration and expertise. attendees chose from 133 presentations during the 3 day event with lots of technical sessions, expert speakers and great discussions. As is customary, it started with a University Day, in-depth technical sessions lead by luminaries from the Java community and industry experts. Each conference day is a great mix of 3 hour workshops and hands-on labs, Tools-in-Action sessions and the traditional Birds-of-a-Feather sessions in the evening.


JavaFX and Java 7 were the top 2 Oracle topics presented at the conference with an introduction to JavaFX and the new Scene Graph Builder, 55 functionalities of Java 7 presentations. The content will be on Parleys Java Channel


Following a Devoxx tradition, one evening was dedicated to a Meet and Greet party. In France, this evening had a French twist, serving wine and cheese instead of beer and fries.


And Devoxx always has some surprises for attendees:


A group of French developers created an application from scratch during the conference. The project was called "Code Story." The goal was to use the agile development to show best practices and one hour invited attendees to join one of their coding sessions.


Teaching programming has become a new interest in the community in Europe, especially within the Duchess network. Audrey Neveu started Programmatoo to teach programming to 6 to 10 year olds. I got great feedback with my BoF session on Learning Java with Alice and Greenfoot and talked to French professors interested in teaching with Greenfoot. Other initiatives are underway like Devoxx4Kids.


All the sessions, including ~25 interviews with developers will be available on Parleys.com



Tuesday Oct 18, 2011

Java Champion Michael Hüttermann on Best Agile ALM Practices

Michael HüttermannJavaOne 2011 - Java Champion and Agile ALM expert Michael Hüttermann gave a session, "Agile Application Lifecycle Management (18180)" on Tues., Oct. 4, designed to help Java developers integrate flexible agile practices and lightweight tools into software development phases. Hüttermann is the author of Agile ALM and CEO of Systemtechnologie Hüttermann. 

He covered:

* Task-based development for aligning activities with tasks, resulting in traceable artifacts

* Advanced continuous integration, which involves frequently and systematically integrating, building, and testing applications

* Agile approaches to release, configuration, deployment, and requirements management

* State-of-the-art-tool chains

The standard criticism of ALM is that it causes vendor lock-in, which increases the overall cost of an application, leaving developers with the challenge of balancing the pluses and minuses of Agile ALM. While Hüttermann admits that this has traditionally been true, his conception of Agile ALM results in flexible, high-quality processes and tool chains that are sufficiently open to change to avoid lock-in. By relying on lightweight tool chains, developers can improve flexibility because they can readily replace small units of the overall infrastructure without touching other parts. One of the main purposes of Agile ALM is to minimize accidental complexity.

Among the take-aways from the session:

* Continuous integration (CI) refers to the automation of the build, test, and release process with the goal of integrating the activities of colleagues and the work items others produce. This can result in a build ecosystem in which a new-code commit directly triggers a continuous build.

* Agile ALM defines task-based activities that are aligned with requirements, which means the activities are linked to requirements and all changes are traceable to their requirements.

* Agile ALM Tools are no longer cumbersome, monolithic vehicles that can restrict development. They need no longer cover all facets of the ALM ecosystem. Mashups of lightweight, focused, service-oriented, customizable tools are gaining momentum. Developers should feel free to switch from one tool to another.

Agile ALM aficionados should check out the forthcoming Java Magazine article by Hüttermann, set for publication in the November/December issue. If you haven't registered for the magazine, run, don't walk. It's free!

And be on the look out for a forthcoming otn/java interview with Hüttermann as well.

Finally, this JavaOne 2011 presentation can also be viewed @ http://parleys.com/d/2666.

About

Insider News from the Java Team at Oracle!

duke
javeone logo
Links


Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
2
5
6
7
12
13
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today