Steve On Java

Hacking Java, JavaFX, and Flash with Agility
  • rss
  • Home
  • NightHacking Tour
    • [Archive] NightHacking Europe – The Road to Devoxx
  • SvJugFX
  • JFXtras
    • JFXtras Individual CLA
    • JFXtras Corporate CLA
  • 2013 Travel Map
    • Let’s Meetup!
    • 2012 Travel Map
  • Contact

Jfokus Stage Live Stream

steveonjava | February 2, 2013

Jfokus is the premiere Java conference in Northern Europe, and the final destination on the Nordic NightHacking Tour. I will be live streaming the activities on the Jfokus stage all day next Tuesday (Feb 5th) and Wednesday (Feb 6th).

This includes interviews the Java Posse Live! event, James Gosling’s Liquid Robotics presentation, and interviews with Venkat Subramaniam, Holly Cummins, Noam Tenne, and Heinz Kabutz.

Here is the full agenda grid:

Jfokus Stage

 

Share this:

  • Twitter
  • Google +1
  • More
  • Facebook
  • LinkedIn
  • Email
Comments
No Comments »
Categories
NightHacking, Uncategorized
Comments rss Comments rss
Trackback Trackback

Top 5 Reasons to Hack in Iceland

steveonjava | January 28, 2013

I had a great team hacking with the JUGICE members in Iceland last night as the first stop on the Nordic NightHacking Tour. They created some pretty cool projects in JavaFX for the Raspberry Pi within only a few hours (many of whom had never tried JavaFX before):

You can see that these guys are real geeks (Pacman), but have the weather on their mind quite a bit (Snowplow), so why are they in Iceland? Here are some of the reasons I came up with for being a hacker in Iceland:

1. Tired of Monitor Glare

In the winter Iceland only has 4-5 hours of sunlight, so forget about fancy anti-glare screens or fighting with the blinds… you won’t need it in Iceland!

2. You Aren’t Good at Sharing Bandwidth

There is nothing I hate more than my neighbors slowing down my Java update by playing games or downloading movies. In the U.S. they typically oversell bandwidth in the hopes that most consumers won’t use it. In contrast, Iceland is one of the top countries in the world for internet access with over 8% of the broadband connections using optical fiber and 626.8 Mbit/s per 10,000 population. My informal test at the JUGICE meeting broke the speed test, hitting their max test threshold of 100 Mbit/s on both download and upload!

3. You Like Your Sushi Properly Aged

Sushi is a great food for hackers, but it can be dangerous if it is not fresh enough. Fortunately, the Icelandic people have perfected the art of fish preservation so you don’t have to worry about your wind-dried fish, shark, or seal’s flippers going bad.

Harðfiskur

Yum, Harðfiskur!

4. Your Home Supercomputer Cluster is Destroying the Planet

You need good tools to do hacking, and that often comes at the price of power conservation. I am pretty sure every time I run a compile on my beefy quad-core system, the temperature of the earth goes up by a fraction of a degree. Fortunately, in Iceland all the power comes from renewable geothermal sources, so you can run your very own supercomputer cluster in your basement!

Note: You don’t really have to move to Iceland to do this, because the folks at Green Cloud have figured out how to package this up as a service so you can remotely take advantage of Iceland’s renewable natural resources.

5. You’ve Always Wanted to Meet Gosling’s Cousins

Iceland has a complete genealogy tree dating back to the Norwegian settlers in the 9th century, and geneologists say that all Icelanders are descendants of bishop Jón Arason. James Gosling is half Icelandic on his mother’s side, so when he went to visit last time he was surprised how many cousins he had! Maybe it is worth a trip just to visit all 320,000 of the relatives of the Father of Java.

James Gosling

I certainly had a great time in Iceland and would recommend at least a visit.

In the meantime, join the rest of the live-streamed trip throughout Northern Europe on the NightHacking Nordic Tour:

http://nighthacking.com/

 

Share this:

  • Twitter
  • Google +1
  • More
  • Facebook
  • LinkedIn
  • Email
Comments
2 Comments »
Categories
Events, JavaFX, NightHacking, Raspberry Pi, Uncategorized, Video
Tags
gosling, green, Harðfiskur, iceland, nighthacking
Comments rss Comments rss
Trackback Trackback

Nordic NightHacking Tour Schedule

steveonjava | January 21, 2013

NightHacking SnowMobileWith the trip coming up in a week, I figured it was about time to put the full event itinerary in one place. For this I created a public Nordic NightHacking Google Calendar containing all of the events along with links to sign-up.

All the events will be streamed-live, so you can participate from the comfort of your office/living-room. Some of the features I am adding this time around to make watching sessions more enjoyable include:
* Low-bandwidth option – All talks are going to be streamed at full resolution (480/720p) as well as 240p in case you are watching over a phone or low-bandwidth connection.
* Realtime chat – The social stream stuff is cute, but not the same as realtime chat, so I added an IRC-based chat option in the UStream broadcast. Feel free to use both, but I know where the hecklers will be hanging out. ;)
* And some special guest appearances – I have a few special guests lined up for JFokus, including James Gosling and the Java Posse, so please watch out for these!

If you happen to be in Iceland, Gothenburg, or Malmo, there are free JUG events organized for all those cities; please click on the event details to register. I am working on similar events for Oslo, Copenhagen, and Tallinn, so stay tuned. Also, if you want to join me for snowmobiling in Turku, or hang out in Iceland or Tallinn on the weekend, ping me on my contact form.

The following schedule and full details of the tour are available on the NightHacking site:
http://nighthacking.com/


Special thanks to AppleMan-K83 for use of his Lego Snowmobile pics: http://www.flickr.com/photos/32870260@N04/7996880922/in/photostream

 

Share this:

  • Twitter
  • Google +1
  • More
  • Facebook
  • LinkedIn
  • Email
Comments
No Comments »
Categories
Announcements, Events, JavaFX, NightHacking, Uncategorized
Tags
copenhagen, iceland, jfokus, malmo, nighthacking, oslo, snowmobile, stockholm, turku, Vaadin
Comments rss Comments rss
Trackback Trackback

JavaFX in Spring Day 3 – Authentication and Authorization

steveonjava | August 30, 2012

Welcome to Day 3 of the JavaFX in Spring blog series. In this post we are going to finish off the Customer Data application by taking advantage of the Spring Security APIs on the client.

It took a little bit of hacking, but I got a GitHub project put together with a straightforward JavaFX Maven build (details on this in a future post) to run everything. Please give the full project a view and run it from source so you can experiment with the application as you read this post:

Browse Project on GitHub

For easy reference, you can flip to any of the blogs here:

  • JavaFX in Spring Day 1 – Application Initialization
  • JavaFX in Spring Day 2 – Configuration and FXML
  • JavaFX in Spring Day 3 – Authentication and Authorization

Since my last post I made it out to two additional user groups in Texas, and had a great time speaking at both:

On the left is the Austin JUG, which is a large, well-established user group and on the right is the Houston JUG, which had a unique venue with personal monitors for all the attendees (this would be a great setup for a lab in the future!)  I posted the talks on Hacking JavaFX with Groovy, Clojure, Scala, and Visage and JavaFX 2 – A Java Developer’s Guide to SlideShare so they can grab the full presentation decks.

Getting back to the JavaFX in Spring example, in the last blog we covered Spring configuration of a JavaFX app to modularize the screens. As a simple example we did an error dialog to show how FXML ties in, but now let’s create a login page to demonstrate using Spring Security for Authentication.

The login dialog was created visually in SceneBuilder and the final version ended up looking like this:

(Since the first post I added in a few convenience hyperlinks for logging in as an employee or a manager)

And the controller code is as follows:

public class LoginController implements DialogController {
    @Autowired
    private AuthenticationManager authenticationManager;
    @Autowired
    private ScreensConfiguration screens;
    private AutowireFXMLDialog dialog;

    public void setDialog(AutowireFXMLDialog dialog) {
        this.dialog = dialog;
    }

    @FXML
    Label header;
    @FXML
    TextField username;
    @FXML
    TextField password;

    @FXML
    public void login() {
        Authentication authToken = new UsernamePasswordAuthenticationToken(username.getText(), password.getText());
        try {
            authToken = authenticationManager.authenticate(authToken);
            SecurityContextHolder.getContext().setAuthentication(authToken);
        } catch (AuthenticationException e) {
            header.setText("Login failure, please try again:");
            header.setTextFill(Color.DARKRED);
            return;
        }
        dialog.close();
        screens.showScreen(screens.customerDataScreen());
    }

    @FXML
    public void employee() {
        username.setText("employee");
        password.setText("lol");
    }

    @FXML
    public void manager() {
        username.setText("manager");
        password.setText("password");
    }
}

The important part for authentication is taken care of in the login method. This grabs the username and password from the respective fields and creates a new UsernamePasswordAuthenticationToken. To force authentication to take place immediately, we get autowire a reference to the Spring AuthenticationManager and call the authenticate method. If the user exists in our credential store the method will succeed, otherwise it will throw an AuthenticationError we catch in the enclosing try block.

For the purpose of this example we are using a local authentication store in the Spring XML config. You could easily hook up to an LDAP server or your chioce of authentication engines, but this makes the sample app we are building self contained. Here is the Spring config XML:

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:security="http://www.springframework.org/schema/security"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
             http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd">
    <security:global-method-security secured-annotations="enabled"/>
    <security:authentication-manager>
        <security:authentication-provider>
            <security:password-encoder hash="plaintext"/>
            <security:user-service>
                <security:user name="manager" password="password" authorities="ROLE_MANAGER"/>
                <security:user name="employee" password="lol" authorities="ROLE_EMPLOYEE"/>
            </security:user-service>
        </security:authentication-provider>
    </security:authentication-manager>
</beans>

This sets up two different users and two roles. One is our manager who will have full access to the system and a laughably weak password, and the second is the employee who will only only have access to create new customers, but not delete. We are going to take advantage of these roles to secure the customer creation and deletion routines using annotation-based authorization.

Now that annotations-based configuration is setup, you can secure methods in your application by simply adding an appropriate annotation to it as shown in this code snippet from CustomerModel:

    @Secured("ROLE_MANAGER")
    public void remove(Customer customer) {
        restTemplate.delete("http://localhost:8080/crm/customer/" + customer.getId());
        customers.remove(customer);
    }

Any time this method is called, you will get an exception thrown that will prevent that method from getting executed and can be caught to give good user feedback, such as an error dialog:

To finish off the example, here is a screenshot of the completed example that includes a JavaFX Table for displaying elements that are pulled back from the server using the Spring RestTemplate API:

And again, you can find the full code available for download here:
Browse Project on GitHub

Now that I have shown you how you can take advantage of Spring in your JavaFX applications, it is only fair to point out some of the shortcomings you may encounter:

  • Jar Explosion – I tried to be minimalistic in my inclusion of dependencies, but still ended up with dozens of jar files for this example application. This may be an issue if you are deploying to resource constrained devices or over a thin network pipe, but for packaged applications should not be an issue.
  • All Permissions Required – Since Spring makes heavy use of aspect-oriented programming (AOP) libraries that manipulate bytecode, you won’t be able to run this application in the Java sandbox. The best approach is to request all permissions and code sign your application so the end user just gets prompted once.
  • AOP Glitches – In your own applications you will trip across various little quirks with AOP and bytecode manipulation that can make client programming quite hazardous. For example, if you put an @Secured annotation in a UI class file loaded in the main thread, you will get a ClassCastException on the proxy. It is possible to get the target class out like this, but it is nefarious enough that it bit me in a live-coding presentation.

Hopefully you have learned a little bit through this tour of JavaFX and Spring integration. I would love to hear what other folks have been doing to integrate these technologies in the comments section below.

 

Share this:

  • Twitter
  • Google +1
  • More
  • Facebook
  • LinkedIn
  • Email
Comments
3 Comments »
Categories
JavaFX, Uncategorized
Tags
authentication, authorization, cglib, JavaFX, security, spring
Comments rss Comments rss
Trackback Trackback

JavaFX in Spring Day 1 – Application Initialization

steveonjava | August 20, 2012

I spoke recently to the Spring Dallas User Group, which was a great audience, and in preparation for the talk I dusted off my Spring Framework skills (with a little help from Josh Long).  Even though Spring is primarily targeted at server-side applications, you can actually do quite a nice integration between the two technologies on the client.  In addition to the full talk (which you can find below), I will elaborate on some of the patterns for building Spring/JavaFX hybrid applications in this blog.

To demonstrate how you can structure your application in JavaFX, I am going to build out a full Customer Data application over a 3 day blog series.  For easy reference, you can flip to any of the blogs (as they are published) here:

  • JavaFX in Spring Day 1 – Application Initialization
  • JavaFX in Spring Day 2 – Configuration and FXML
  • JavaFX in Spring Day 3 – Authentication and Authorization

And here is a small teaser shot of the application login page (the full source will be posted on GitHub on the 3rd day):

You may be thinking to yourself why you should bother learning (or applying) Spring Framework in your JavaFX applications.  I am sure there are plenty of good use cases that I haven’t even thought of, but here were some of my motivations:

  • Modularizing the UI – Complicated JavaFX applications have many screens involved in the workflow, and it can be difficult to create a consistent structure for the pageflow of the application.  By taking advantage of Spring configuration and some age-old MVC patterns, you can greatly simplify this making it easy for others who maintain your application (maybe even yourself in 6 months time) to easily follow the structure.
  • Authentication and Authorization – No need to reinvent the wheel for user authentication and authorization.  You can take advantage of Spring Security, the most widely used authentication system in the Java ecosystem, to also handle permissions for your JavaFX application.
  • Dependency Injection – If you have UI classes with a ballooning number number of constructor parameters or mandatory setter methods, then dependency injection can help you to manage the chaos.  By taking advantage of Spring Bean dependencies and autowiring, you can have access to the model, controller, and other screens simply by declaring the relationships.

To start out with, let’s cover the “safe” way to integrate Spring Framework into your application.  Since you are not running in an application server environment, you need to manually bootstrap Spring, while also starting the JavaFX runtime.  Also, the same restrictions about making UI changes on the JavaFX Application thread apply to Spring code injected into your application, so to be safe you should always execute your code on the UI thread.

The following JavaFX Application main class meets all of these criteria:

public class CustomerApp extends Application {
    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage stage) throws Exception {
        ApplicationContext context = new AnnotationConfigApplicationContext(CustomerAppConfiguration.class);
        ScreensConfiguration screens = context.getBean(ScreensConfiguration.class);
        screens.setPrimaryStage(stage);
        screens.loginDialog().show();
    }
}

In this example I am using annotation-based config for Spring.  This is my favorite way to write Spring applications for obvious reasons (and if you agree, please take a moment to sign my Freedom from XML Petition).

It is important to start the AnnotationConfigApplicationContext inside of the start method, because this runs all the Spring initialization on the UI thread.  While it is possible (and possibly desirable) to run the Spring startup in a separate thread, if you happen to create a new Stage, Pop-up, or modify the Scene Graph in any small way, you will get exceptions, deadlocks, or worse!  I highly recommend starting with this approach, and then selectively moving long-running operations onto worker threads if startup performance becomes an issue.

Notice that the “Bean” that we are loading from the configuration is not actually a Bean, but a special ScreensConfiguration class that contains all the UI beans.  This is a standard trick to allow lazy loading of Spring beans using Java Configuration (annotations), while letting you inject and access the beans directly.  It isn’t until we call screens.loginDialog() that the UI class will actually be instantiated.

This should be enough to get you started in initializing the Spring context in your own applications.  (In my Dallas UG talk I showed a simple media example configured entirely via Spring…  a good experiment to try yourself.)  In tomorrow’s blog I will go into detail on the ScreensConfiguration class as well as share some tricks for modularizing your UI and doing dependency injection into FXML controllers.

Until then, enjoy the presentation deck from the Dallas Spring User Group:

JavaFX 2 Using the Spring Framework from Stephen Chin
 

Share this:

  • Twitter
  • Google +1
  • More
  • Facebook
  • LinkedIn
  • Email
Comments
No Comments »
Categories
JavaFX, Uncategorized
Tags
annotations, context, initialization, JavaFX, spring
Comments rss Comments rss
Trackback Trackback

Kids Making the Future of Java

steveonjava | August 13, 2012

I had the opportunity to participate in the Make the Future of Java Workshop last week, which was a lot of fun.  Kids ages 13 and up got a chance to learn how to program using Alice and Greenfoot technologies.

The sessions were taught by the experts themselves.  Wanda Dann and Don Slater from the Alice project came all the way from Carnegie Mellon University to help teach the very latest version of the tool.

This is a picture from the end of the event where the students showed what they had created.  After only 1 day of hands-on teaching, they were able to create some very impressive projects ranging from creative stories acted out by animated characters to interactive games where you can explore a 3D world using the keyboard.

For those of you who have not tried Alice recently, the 3.x version is entirely rewritten in Java and even includes support to open projects in NetBeans via a special plug-in.  This dramatically improves the power of Alice, letting you take advantage of the full power of the Java platform in your creations.

The Greenfoot lab was equally impressive, taught by Michael Kölling from the University of Kent.  Students worked in small teams and were given a lot of flexibility in this lab to be creative.  This is a shot of the session in progress as they were showcasing the student projects.

And of course, I brought my older daughter, Cassandra, along as an attendee, so she got a chance to brush up on some of her design and scripting skills (if you have been to any of my presentations, she is the one riding behind me on my motorcycle).  Even though she was on the young side for the workshop, she had a lot of fun and was inspired to try more at home.

So if you have a budding programmer at home, there is not time like the present to get them started on developing applications and games in Java using Alice and Greenfoot!

 

Share this:

  • Twitter
  • Google +1
  • More
  • Facebook
  • LinkedIn
  • Email
Comments
1 Comment »
Categories
Events, Uncategorized
Tags
Alice, Greenfoot, java
Comments rss Comments rss
Trackback Trackback

Presentations in Portuguese for JustJava

steveonjava | May 20, 2012

I just finished a huge speaking engagement at JustJava Brazil. While I have been to Brazil several times before, this was my first time speaking at this event, and it was very impressive. The entire conference is community-run, and had a very good vibe to it with lots of attendees, great content, and a perfect venue to allow interaction and hallway conversations to happen.

I ended up giving 5! talks total… probably the most exhausting conference I have done in a while, but was well worth the effort. I also had a lot of local help from Marcelo Quinta (GOJava) who translated all my talks and Rafael Alfonso (ScalaFX Contributor) who cospoke with me and also was my audience “plant” during the keynote.

Speaking of the keynote, you won’t find that talk anywhere below…  I have been getting bored of scripted talks, so Rafael helped me to have a little bit of fun with it.  You had to be there to appreciate it, but the audience had a lot of fun enjoying the ups and downs as I kept changing the presentation to meet the demanding needs of our Brazilian audience.  :)

Return of Rich Client Java – Brazil

This was the first talk I gave, and covers JavaFX in general.  I highly recommend trying out some of the demo code by downloading the free code bundle from our book website:

http://www.apress.com/9781430268727

55 New Things in Java 7 – Brazil

The next talk was a Portuguese version of the 55 New Things in Java 7 deck that Donald Smith originally did for the EclipseCON keynote.  Everyone in the audience (me included) learned something new about Java 7 during the talk, and I guarantee that you will too!

XML Free Programming – Brazil

I did a solo version of the XML Free Programming talk that Arun and I created for JavaOne last year.  Not quite as much fun without a co-presenter, but still got lots of laughs from the audience.

Have you signed the Freedom from XML Petition yet?

JavaFX and Scala – Like Milk and Cookies – Brazil

I also did an updated version of the ScalaFX talk together with Rafael.  He added some great content about the Color Selector control that he created, and added a lot of depth to the presentation since he has been committing code like crazy to the project (think he has me beat on commits by this point).

Crazy JSRs

Finally, this is not a talk that I gave at JustJava, but rather a quickie I put together on Bruno’s request during the community JCP meeting the night before JustJava.  It was a lot of fun to do with the audience, who generated some interesting JSR ideas (several a bit too good to be considered “crazy”).  Feel free to repurpose this talk for your own user group or community sessions to have some fun.

I had a lot of fun at JustJava, but it is time to move on to some of the other communities in Brazil.  Next stop is GOJava in Goiania followed by Brasilia and Salvador.  If you are in any of these locations, feel free to ping me via the Let’s Meetup page.

 

Share this:

  • Twitter
  • Google +1
  • More
  • Facebook
  • LinkedIn
  • Email
Comments
2 Comments »
Categories
JavaFX, Presentation, Uncategorized
Comments rss Comments rss
Trackback Trackback

JavaOne is Rebuilding Momentum

steveonjava | October 10, 2011

Just finished up an extremely busy week at JavaOne and there was a lot to like about this year’s event.  There were plenty of surprise announcements, lots of good content/sessions, and a lot of improvements on the venue and organization.

For folks who have been patiently waiting for me to publish all my talks, I apologize for the delay…  giving 4 talks + a keynote (plus 3 more talks at Silicon Valley Code Camp yesterday) was a lot more work than I expected.  To make sure I can cover the topics and code in enough detail I am going to publish 1 talk plus commentary a day for the next week.  Please follow me on twitter or rss to catch the updates as they roll out.

To get you started, here are some of the highlights from JavaOne:

JavaFX is back in the spotlight!

After a year of hibernation, JavaFX is back with a 2.0 release, big open source announcement (more on this below), and mobile prototypes on Android and iOS.  For those naysayers who said JavaFX is dead, Oracle has proved that they are going to continue to move the platform forward and support state-of-the art development on Java client technology.  As always, Jasper and the rest of the JavaFX team had some pretty impressive demos and the entire Java community was re-energized about the future of client Java.

If you haven’t already, go download JavaFX 2.0 right now!  It is available in production for Windows and there is a developer preview of Mac OS X, so you have no excuse for not trying it out today.  (unless you are on Linux…  but that is supposed to be coming soon too)

The Open Source Petition Was Successful!

Thanks to all my blog readers who spent the time and energy to sign and support the petition to open source JavaFX.  In part due to the huge community sentiment about the need to open source JavaFX, Oracle has taken action and promised to open source the entire platform.  They are going to start with the controls library as announced last year, and continue to open source the entire platform as part of the OpenJDK project.

This is a huge benefit to JavaFX, which will finally be getting equal treatment with the rest of the Java platform.  They are also actively working on getting JavaFX to be fully redistributable, which will remove yet another obstacle to making JavaFX the standard for desktop development.

Community, Community, Community.

Oracle has been listening to the Java community, and put in place many of the changes and suggestions that were raised.  This was evident in the entire JavaOne conference, which was a huge improvement over last year’s event.  Some of the improvements that I noticed while hanging out at JavaOne this year included:

  • A Community-focused Keynote – While I may have been biased as a participant, I thought the best keynote of the conference was the wrap-up community keynote that Sharat Chander lead.  This included some amazing demos by the Duke’s Choice Winners of audible development for the blind and home automation using Glassfish, a spicy panel that had a lot of positive things to say about the Java Community and OSCON Java, and a surprise appearance by the Java Posse who were at 3/4 of their finest!  (the 1/4 being poor Tor, the Googler)
  • Community Hang Spaces – While navigating the conference it was much easier to bump into folks you know by hanging around one of the many hang spaces that were built out around the venue.  In fact, Dean Iverson and I found ourselves preparing for one of our talks in the hang area, because it was more conducive to collaboration and interaction than the speaker room.
  • Easier Venue Navigation – A couple things contributed to this…  One was that all 3 hotels were reserved for JavaOne talks, so you had more talks concentrated in the same vicinity.  Another was the plethora of helpful staff directing traffic and answering questions (I made quite a lot of use out of this myself).  Finally, the signage and open tent configuration made it much easier to get form Point A to Point B.

And a Few Things to Improve for Next Year…

Everyone has their personal gripes…  here are some of mine:

  • Fewer Sponsored Keynotes – When you pay big $$$ to attend a conference, the last thing you want to do is sit in a session and watch a canned talk by a corporate stooge.  The Juniper Networks talk was a particularly blatant example of something that was not really focused on the Java crowd tossed in as a sales kick-back.  In the future, it would be better to make the sponsors earn the attention of the attendees by labeling the talks as sponsored and giving attendees some alternatives.
  • Better Network Connectivity – It was almost impossible to get on the wifi network in any crowded situation (like a session), and once connected the response times were abysmal. That is until everyone left around Thursday midday and the network started going blazingly fast for those who stuck it out for the last few talks.  :)
  • Improved Tech Support on Talks – I listened to the presenter advice and formatted all my slides in 16:9, which didn’t seem to work for the first couple talks that had big black letter-boxes above and below the slides.  Also, my first talk had no network connectivity on the wired connection (and as I mentioned, wireless was useless).  However, I had to the good fortune of giving way too many talks, so by the time I got to my 3rd and 4th ones they seemed to have figured out how to use the very expensive screen adjustment boxes and got everything tuned just right.  Also, the wired network seemed to work fine in all the other rooms I hi.
  • Patching Things Up With Google – This is the second year that Google has refused to let anyone speak at JavaOne. They blame the lawsuit for this, but at some point the policy is more retaliation than just good legal defense. (Is letting Tor speak on stage in a community setting is really going to jeopardize the Android platform?) The real losers in this battle are the average developer who is missing out on great technology and content from one of the most innovative companies in the world.

Overall, JavaOne was a great conference this year, and is definitely back on the upswing.  There was mention of improving the venue in the community keynote, and I hope the upper management at Oracle takes this seriously.  The 3-hotel setup is not ideal, and really not large enough to contain the Java community.  It is time to unleash the Java Community in a full conference venue of its own.

 

Share this:

  • Twitter
  • Google +1
  • More
  • Facebook
  • LinkedIn
  • Email
Comments
3 Comments »
Categories
Events, JavaFX, OSCON Java, Uncategorized
Tags
community, JavaFX, javaone
Comments rss Comments rss
Trackback Trackback

  • Travel Map - Let's Meetup

Publications

  

Affiliations

Awards

2009/2011 JavaOne Rock Star!

Disclaimer

Views and opinions expressed here are all my fault... complain to me, not my employer. :)
rss Comments rss valid xhtml 1.1 design by jide powered by Wordpress get firefox
loading Cancel
Post was not sent - check your email addresses!
Email check failed, please try again
Sorry, your blog cannot share posts by email.