Showing posts with label devoxx. Show all posts
Showing posts with label devoxx. Show all posts

Saturday, 15 November 2014

Devoxx 2014 - Whiteboard votes

As is traditional, the attendees of Devoxx vote on certain topics on whiteboards. Each result must be treated with care - there is no validation process, and only a fraction of the 3500 attendees actually bother to vote. Nevertheless, the results can be interesting.

What version of Java do you use at work right now?

A high level question focussed on Java at the day job. Java 8 hasn't surpassed Java 6 yet, but it is doing pretty well. Remember that Java 7 is End-Of-Life in April 2015!

Java 91
Java 863
Java 7160
Java 681
Java 511
Java 43
Java 31
Dalvik6
Other4


What IDE do you use?

A sense of how the IDE market is looking. The interesting data point is how Eclipse is falling - compare with 2008, where Eclipse led IntelliJ by almost 2 to 1, and NetBeans by almost 4 to 1. Sadly, the absolute number of votes is a lot lower than 6 years ago, so be careful with comparisons.

Eclipse36
NetBeans26
IntelliJ75
Vi/vim8
Other1

Beyond this, I heard various people comment on IBM's apparent withdrawal of funding for Eclipse IDE and what that might mean looking forward.

What JVM language are you using?

An attempt to see what languages people are using. Whenever this is asked, it is always an opportunity for advocates of a language to push hard, so again take the results with a good pinch of salt:

Java214
Scala64
Groovy62
Clojure15
Rhino/JS6
Ceylon3
Kotlin1
Cobol1


Is merging Scala into Java a good idea?

An odd question with a predictable answer - WTF!

Yes3
No26
WTF?! seriously?52
Depends2


What JavaScript framework/library do you use?

An open question that showed a clear dominance for Angular.

Angular51
Ember4
Reactive2
Backbone6
Knockout7
Angular-Dart3
Dojo5
JQuery9
Meteor2


Is this the end for Angular?

Angular 2.0 - "no migration path, not backwards compatible". Whether this is factually correct or not, this was the question asked.

Yes4
No47
Maybe12
Hate JavaScript24
Follow GWT1


What desktop UI technology have you used in the last 3 years?

A sense of where the desktop UI is today. Given that JavaFX has only been truly useful in Java SE 8, its not a bad showing for FX.

None39
Swing41
JavaFX15
MS .NET10
Chrome apps2
Eclipse RCP14
NetBeans platform2
QT5
VCL1
CLI4
OGLPHI1
Applet2
Broswer/HTML7


How do you create WebApps?

An open question on web technologies. Bear in mind that some options were added after others, notably JAX-RS+JavaScript, which was added long after REST+JavaScript. I think its fair to say that there are an odd mix of answers, but a clear leader in REST + JavaScript.

JSF+JavaEE44
REST+JavaScript101
JAX-RS+JavaScript9
Play23
Swing MVC76
Wicket26
JavaScript library50
Grails8
GWT30
Vaadin20
Apache Sling6
WebSockets+JavaScript6
Spray+AkkaHTTP6
Ruby on Rails2
ZK framework4
OmniFaces4
PrimeFaces10
REST+Dart2
Fluent-HTTP1
AngularJS23
Polymer3
By hand, with love2
Web motion3
Struts v1 or v211
Beehive2
JRuby3
Bootstrap2


What one thing would you add to Java (your top priority)?

A traditional Devoxx question, with a long shopping list of answers, as always. Note however that Brian Goetz indicated strongly that properties as a language feature is not happening.

Properties54
Better handling of null33
Multi-line strings33
Safe null dereference23
Interpolation of strings22
Immutability21
Value types16
Unsigned int11
Too bloated!8
Better logging7
Pattern matching8
Sub-package scope4
Tail recursion3
Solve expression problem2
Algorithmic data types2
Class versioning2
Cluster aware JVM1
Performance1
Free$ embedded support1
Inner functions1
Generators and co-routines1
Operator overloading1 (plus 2 minus 1 !)
Enterprise modularity1


Summary

Lots of interesting, and no doubt slightly dubious, statistics to examine. Use with care, and congratulations to the Devoxx team for another great conference!

Monday, 18 March 2013

Speaking at DevoxxUK

Next week I'm looking forward to speaking at a new conference - DevoxxUK.

I'll be speaking about JSR-310 in JDK 1.8. They'll be lots of other interesting talks too over the two days. So plenty of good stuff for real developers to get their teeth into.

And I'm fortunate enough to be able to offer my blog readers a discount on the already incredible price!

Looking forward to seeing you next week!

Saturday, 20 November 2010

Devoxx whiteboard votes 2010

As usual at Devoxx, there were a number of Whiteboard polls. These aim to capture the sense of the community and are of course only semi-scientific!

This year, picking questions was a little tricky, given the current disputes. I decided to ask questions focussed on specific topics and provide a choice of responses. Of course, you can never cover all valid responses, so there was always a comment area for extra opinions.

The +n notation after a comment means that n other people agreed with the comment. The <- notation means that what follows is a comment on the previous comment.

How do you feel about the Oracle vs Google lawsuit?

"It does not affect me. I do not care"10
"It is necessary to avoid fragmenting the Java platform"16
"There may be a case but legal action is a bad idea"62
"I really care - its a dumb idea"116
"It is encouraging me to look at non-Java platforms"9
Total votes cast213

View the photo. There were also some comments:

  • The lawyers will win. +3
  • Google should buy Java/Oracle
  • Google should create/drop Java+
  • $$Larry Ellison needs a new yacht. +2
  • Ban software patents. +7
  • Dimemma: Its fun to watch
  • Big powerplay for mobile space
  • Crazy SCO move!
  • Fight!
  • I know a good mediator: Equilon
  • Patent trolls
  • Patent should help small reality to contribute! Not help huge industry to black mail each other! <- (Ponies and Rainbows anyone?)
  • What's JSR nnumber for Android!

A very clear answer was provided on this topic - devoxx attendees that voted were solidly against the lawsuit (over 87%). While a high number thought there might be a case even more thought the lawsuit was just plain dumb. If Oracle wants developers on its side, it is clear that the lawsuit is a problem. As always, the comments were entertaining too.

Should Java 8 or 9 be backwards incompatible?

"Yes! Its time to remove some old stuff to make room for new"185
"Maybe! Some SMALL incompatible changes would be good"35
"No! Backwards incompatibility is essential to Java"27
"I don't care, I'll just use whatever I am given"4
Total votes cast251

View the photo. There were also some comments:

  • Java NG, Bytecode should still be usable. +5
  • Please cleanup IO
  • Cleanup. Pe Java 5 stuff
  • Remove java.util.Date. +1
  • Corbe pollutes APIDOC <- so use Jigsaw
  • Remove ESB2 compatibility +1

Clearly, a majority of voters wanted some form of backwards incompatibility (over 87%). This is a remarkably clear result and was more positive than I expected.

How do you feel about the JCP?

"It is very important and will continue to be"3
"Everyone needs to start working together"36
"It needs radical reform"24
"It is no longer relevant"5
"It is F***ed" (added by a conference attendee)12
"I don't know anything about it" (added by a conference attendee)8
Total votes cast88

View the photo. There were also some comments:

  • Who cares? OSS already demonstrates "de facto" standard to override JSR. +2
  • Hibernate is OS,Hibernate gave birth to JPA, JPA is standard, Hibernate implements the standard (<- Mostly), Hibernate is still OS
  • Design by committee
  • Will be James Brown, doubt it. "Get in it, Get involved, Everybody get funky"
  • Only good for big vendors, at the detriment of developers
  • Get out of the way. Turn in to a real open COMMUNITY!
  • The "new" mantra is cool: "Test stuff in the community first then standardize what really works"

Opinion was split here, on a relatively low turnout. Clearly compromise is still valued, but some believe it may be too late.

Does Oracle believe in the Java community?

"Yes! They are investing $millions"10
"Maybe! They just see it differently to Sun"83
"No! They are severly damaging the community"36
"I don't care, the community is not important"2
Total votes cast131

View the photo. There were also some comments:

  • Bad communication, but they really wat to learn. +1
  • Google and ASF should join forces and start working on BIJava cause Oracle will never have the balls to do it
  • JavaOne needs to be 1st class citizen again! +1
  • Demonstrate first: Free talk +3
  • Trust must be earned
  • Larry Ellison pick up the phone, Eric Schmidt pick up the phone, Geir Magnusson Jr pick up the phone, DEAL
  • <-(someone forgot to call me!)
  • Java community is watcing! If Oracle f****up something new might come out and takeover
  • Communication is the key!

The message here seems to be that many are still willing to give Oracle a chance. I'm interested in those that do not believe community is important ;-)

How should Oracle make money from Java?


Paid for$Free
"Core JVM"039
"JVM tools (JRockit mission control)"2610
"IDEs"724
"Application server (Webloic)"304
"Middleware (ESB/Fusion)"313

View the photo. There were also some comments:

  • Not +2 ("not" as in should not make any money I presume)
  • Stop paying lawyers! <- LOL
  • In whatever way works to max income

This vote only started on Thursday, hence the lower voting figures. The results ought to be predictable, but clearly a few want $free everything. In general it looks like Oracle's paid vs $free choices are about right.

OpenJDK is now the "heart" of Java

"I will contribute to OpenJDK"12
"I like OpenJDK but don't want to contribute"16
"The OpenJDK GPL license is uncertain because of Oracle's patents"31
"I don't believe OpenJDK should be the only Java SE implementation"37
Total votes cast96

View the photo. There were also some comments:

  • Troll? +1
  • A clear statement from Oracle is needed on WHY they do not want to make it possible for others to have Java implementations (Harmony). Would like to hear BUSINESS reasons. +8
  • <-Maybe mreinhold could explain?
  • More communication is what will solve the problems & stop damaging speculation
  • Oracle should make TCK available w/o field-of-use restrictions. +5
  • Harmony FTW, keeps them true. +1
  • It should be. +1
  • Should be LGPL

There is definitely support here for other Java SE implementations, yet not a huge number of votes overall. I suspect that amongst those that know the story it matters, but in general it doesn't. I also find the (popular) comment for an explanation interesting.

What is your favourite non-Java language?

Scala69
Groovy42
Python22
Javascript22
Ruby16
Clojure8
Objective C7
Smalltalk7
PHP5
C5
C++5
Perl5
Fantom3
C#3
Forth3
Z80 assembler3
Human language3
Body language2
CSS2
Pascal2
BAS#2
Haskell1
Visage1
Erlang1
Modula 31
MPS1
Prolog1
Eiffel1
InterCal1
MatLab1
BPMN 21
Lisp1
LiveCode1
HyperTalk1
Total votes cast244

View the photo. Last year Groovy came top, this year it is Scala. One point to bear in mind is that Groovy conferences are now well established, so possibly those most dedicated to Groovy nonw attend those. Or maybe Scala is getting more popular. And I was personally surprised to see how popular Python is.

Summary

Devoxx votes are nothing more than a snapshot of opinion by a proportion of the attendees of Devoxx. Yet despite the caveats, their results can be interesting. Its the power of the community!

Sunday, 14 December 2008

JDK 7 language changes - Devoxx votes!

Once again, the great Devoxx conference allowed ordinary developers to express an opinion on the future of the Java language. This time, the focus was on prioritising which changes should happen.

The figures given below are of course indicative only. They are based on those Devoxx attendees who actually participated on the whiteboards. Also, the figures are as recorded at the end of Thursday (Friday scores not included). The whiteboard photos are available which provide additional information. Bear in mind that my figures may disagree with the photos in some small way based on when I counted the results relative to when the photos were taken.

Given eight language changes, rank them according to priority

This year, rather than simple "do you like this yes/no" questions, we posed something tougher. Prompted by Alex Buckley, we asked participants to rank eight language change proposals. Voters had to mark the number one against their highest priority, two against their next highest and so on until they had no more priorities. Attendees could also vote against a proposal by marking an 'X'.

The voting system was not the simplest, and we know a few people didn't vote correctly. However, we do believe that the vast majority did vote according to the rules making these results valid. The total number of voters was around 220, so the results have good validity.

Feature Properties Multi catch Null handling List/Map syntax Extension meths Method pointers Multiline Strs Infer generics
1 33 47 70 10 6 8 9 61
2 21 56 38 16 8 10 12 49
3 30 35 27 35 10 15 21 35
4 25 26 15 42 17 13 28 19
5 10 20 15 29 13 25 29 19
6 14 15 8 17 23 21 27 15
7 14 9 2 18 24 25 24 11
8 26 19 2 9 19 23 32 8
X 29 1 12 8 28 24 15 0
 
Total Votes 202 228 189 184 148 164 197 217
Total votes
(excluding X)
173 227 177 176 120 140 182 217
Weighted average 4.08 3.41 2.49 4.32 5.36 5.25 5.16 3.07

Here are the first preference votes:

Adding the second preference votes:

Adding the third preference votes:

Adding the fourth preference votes:

Adding the remaining votes:

So, what do these results tell us?

Well, they are in fact amazingly clear. Null-handling was the first preference favourite by a small margin, ahead of Infering RHS generics and Multi-catch of exceptions. However, if particpants had been given just three votes, then these three would have scored almost exactly equal (135/145/138) and over double that of List/Map access (61).

Next in line (ignoring properties) was List/Map access using [], which can be seen by the big jump in third and fourth preference votes. Fifth was Mult-line strings, which developers seem to not be that fussed about.

Finally, extension methods and method pointers (method references) performed poorly in the vote.

Properties was shown to be the most divisive, with both a large number of votes for and against, and fewer in the middle preferences. For example, notice the high number of first preferences, but dropping back when adding second and third preferences. In addition, properties has a high number of low preferences and votes against (coloured black). Since properties isn't going to be included in JDK 7, the properties column is really just an interesting comparison data point.

Obviously in a free vote like this without any explanations, it is easy for people to not vote for items they don't understand. This could explain some the lower scores for Extension methods and Method references (see the total number of votes cast to confirm this). However, even taking this into account, these two don't seem to have as much support as the big three of Null-handling, Infering RHS generics and Multi-catch exceptions

It should also be noted that the graphs and the weighted averages are in line with one another.

Other language changes

In addition to the ranking above, there were some other votes.

The vote on closures was split 50/50:

Yes41
No41

The vote on abstract enums showed a majority in favour:

Yes24
No18

The vote on ARM (resource management) showed a large majority in favour:

Yes64
No11

The vote on some form of delegation showed a majority in favour:

Yes36
No9

The vote on for each over a string showed a majority in favour:

Yes34
No21

Summary

Firstly, a big thank you to the Devoxx voters, and to Stephan and the Devoxx organisers. I think this exercise was a huge success in participation. I'm certainly not in favour of language design by democracy, but I am very much in favour of gathering large scale information on what really causes developers pain. Clearly, handling nulls, RHS generics and catching exceptions are three big issues.

I hope to repeat the exercise again soon. And if any JUG (public or company internal) wants to do the same (maybe with different proposals) then I'd recommend it (and I've even got an Open Office presentation if you want some material - just drop me a line).

Any feedback or thoughts are welcome!

Devoxx 2008 - Whiteboard votes

Devoxx 2008 is over :-( But is was a great conference again. And Java really started to feel alive again with real discussions of JDK 7.

In this post I'll go through the general discussions that were held on the Devoxx whiteboards. The figures given are of course indicative only. They are based on those Devoxx attendees who actually participated on the whiteboards. Also, the figures are a record taken at the end of Thursday (Friday scores not included).

The whiteboard photos are also available which provide additional information. Bear in mind that my figures may disagree with the photos in some small way based on when I counted the results relative to when the photos were taken.

Are you considering using JavaFX ?

Java FX had its big conference launch at Devoxx. This question captured developers feelings about it:
   

Yes62
Maybe78
Next version21
Never45
What is jfx?6

It seems clear that Devoxx attendees were pleasantly surprised by Java FX, and are thinking about using it.

What Testing Framework/Tools are you using ?

Testing is an essential developer activity, but what tools get used? I've broken out the big 3 unit testing tools here.
   

JUnit354
JUnit4102
TestNG23
Selenium32
None3
Testing?!5
EasyMock17
JMock2
HTMLUnit2
Fitnesse3
SOAPUI11
Cobertura5

Obviously, a wide range of tools are in use, but in the unit test area JUnit still rules the roost.

REST vs SOAP

A hot topic with many developers who still have to try and convince sceptical managers that REST is a valid solution. I'm displaying the main numbers for the question here:
   

REST50
SOAP17
Both30
JSON6

So, developers prefer REST to SOAP. Somehow I'm not surprised!

What IDE/Editor do you use ?

A question that will always bring out strong opinions:
   

Eclipse214
Netbeans64
IntelliJ126
Vi/vim9
Textmate6
Jdeveloper5
Notepad++7

I'd have expected a stronger showing for Eclipse than this. Maybe Eclipse users have less strong opinions about their tool as Netbeans and IntelliJ users?

Which Java VM are you using ?

How up to date are the versions of Java we use? The question asked Devoxx attendees to mark all they are using:
   

0.9b2
1.03
1.1b6
1.36
1.474
1.5216
1.6255
1.72
1.7 (patched)4
1.7 (closures)2
Java ME13

So, more people are using Java 1.6 than Java 1.5. Interesting.

Checked exceptions ?

Checked exceptions are a feature essentially unique to Java. Many, like me, think they were a very bad idea. But what about Devoxx attendees:
   

Good idea34
Bad idea36
Both, It depends6

Opinion seems split on this topic. Although I should note that the number of votes was lower on this issue, so maybe there is an element of "don't care".

What is your favourite JVM lang other than java ?

The JVM isn't only about Java now. What else are people using:
   

Groovy49
Scala30
JRuby14
Jython10
Fan5
PHP4
Clojure5
Don't care17

So, Groovy is looking pretty popular right now, with Scala seeing some good use. There is interest in additional languages too and this is healthy for the JVM's future (and personally, I was pleased to see Fan get 5 votes at this early stage in its life).

Summary

Thanks again to all the Devoxx voters. I'll write up about language change issues soon. Feel free to comment on any of the vote results.

Saturday, 15 December 2007

Voting on Java 7 language changes

This year at Javapolis I again looked after the whiteboards. In this post, I'll discuss the results.

Whiteboard results

The whiteboards play an important part at Javapolis in bringing people together to discuss ideas and future trends.

This year, I chose to focus the whiteboard debate around a number of specific topics. This was achieved by having votes on 10 language changes proposals, plus areas for new ideas for Spring, JSF, JavaEE and JavaSE. I'm going to discuss the language change votes here, as the photos of the other boards aren't available yet.

Language change votes

Before the conference started, there were a number of language change proposals floating about, initiated by Neal and Josh at Google. These were discussed in a late night BOF on Thursday, but this was backed up by the votes on the whiteboards.

The full results are available (with more detailed examples), but here is the summary.

The strongest support was for Improving Generics, String Switch and Multi-catch. Attendees were giving a clear 'yes' to these being in Java 7.

The strongest opposition was to Typedef (type aliasing) and Extension methods and chaining. Attendees were giving a clear 'no' to these being in Java 7.

There was some support for Better null handling (with a new operator) and Properties. The balance was slightly against, but not overwhelming.

There was positive support for Using [] to access lists and maps. The balance was definitely in favour, yet there was a large minority against. This was perhaps the most surprising vote. Unfortunately, it wasn't possible to find out why there were so many 'no' votes. My view, is that it is still worth pursuing this for Java 7.

Summary

Java being open source isn't going to be enough going forwards - it will also be necessary to provide an open community. Votes and direct feedback like this have a really positive effect, allowing Java's growth to be influenced by real developers and their problems.

The Javapolis Experience 2007

So, Javapolis is over for another year! Big thanks and congratulations to the Javapolis team for making it such an excellent conference.

This year I, personally, had more of a focus on the networking aspect of the conference - trying to take time to chat to many of the delegates and speakers. This is often where you make the interesting and surprising connections that will come in useful in the future.

Whiteboards

The whiteboards again played a really interesting part in getting people talking. This year, I left half the whiteboards as freeform, available for any comments. The other half were carefully organised to get a snapshot of opinions on specific topics.

These fell in three areas. Firstly, boards for collecting ideas for changes in Spring, JSF, J2EE and Java 7. Next up, was a board gathering information on how many people are using each application server, and each web framework.

Finally, about 10 language change proposals were described. Each of these was then offered with a vote - "Do you support this change" - Yes/No/Maybe. In the region of 150 votes were received for each of these proposals, so hopefully the results should be pretty representative. I'll discuss the results in my next blog post.

Closures

The other big topic of the conference was again closures. The first talk on the topic was a well-attended BOF from Neal Gafter discussing the current status of BGGA.

The second was a last minute change - something you'd never see at JavaOne! Josh Bloch gave a talk on 'The Closures Controversy', where he showed some examples of complexity added to the language with BGGA closures. He also showed the syntax proposals of CICE and ARM. This talk went down well with the audience, however it should be born in mind that Neal had no opportunity to respond directly to the points made.

Finally, in another last minute change, I gave a 15 minute quick talk on FCM+JCA closures. Despite being at lunchtime on the Friday, there was still a reasonable group in the audience, and the feedback I received personally was good.

There was also a whiteboard discussing closures, with a vote - No closures vs CICE vs BGGA. The vote was about 2 to 1 in favour of BGGA before Josh's talk, while it was about 50/50 afterwards. This suggests to me that opinions on the topic are not fixed and can be swayed by the last good presentation people see.

Looking forwards, the hope is to have all three proposals (CICE, BGGA and FCM) discussed on JavaPosse.

Summary

Javapolis really is a great conference. It is extremely well run, and has a really good feel. Stefan has said that he intends to keep it at Metropolis, Antwerp next year, so since it sold out this year, I suggest you get your tickets early next year!

Monday, 10 December 2007

Javapolis 2007

I am just getting ready to go to Javapolis 2007 :-)

This year I am presenting a main conference talk and a BOF:

In addition, there will be whiteboards again this year, and I will be attempting to keep the discussions on them moving forwards.

Hope to see you there!

Monday, 18 December 2006

Javapolis whiteboards on Java language changes

At Javapolis I 'looked after' a set of whiteboards on which all 2800+ participants were free to write up their ideas for improving their Java lives.

These were photographed at the end, and I've now extracted the information into textual format. So, if you were at Javapolis, or even if you weren't, you can see what was on the collective mind here.

As you look through them, you'll note that there were a few indicative votes taken. It appeared that developers liked the idea of closures and solving some issues with NPEs, but weren't so fussed about improving the foreach loop. There was also a vote about native XML, which showed a majority against the feature at present.

Saturday, 4 December 2004

Javapolis BOF - any tips?

I'm off to Javapolis in Antwerp so I'm hoping to meet other OSSers there. Seeing as Joda-Time is still an obsure project, I thought I'd host a BOF session to stir up some interest. So, does anyone have any tips on the BOF format? Or questions they want answering?