Great Java Thoughts

Caffeinated Babblings!

  • Home
  • Cingular 8125 HOW-TO
  • Coffee Brewing HOW-TO

8

May

JavaOne 2008 - Day 3

Posted by The Great Java  Published in Java, Web

Session One was a loser. Automation of MDA to J2EE (TS-7466). While a potentially interesting topic it wasn’t apparent from the description that this was basically a vendor demonstration. Those things should somehow be noted better. Every five years I sit through (as a skeptic) and listen to the model driven generated application idea. I’m always disappointed, and was again. Most of the time was spent on how the tool worked under the covers without really giving us a picture of what it did. We basically never got a real idea of what the tool did so the presenter told the crowd to just visit the booth to see that part. Worst session of JavaOne for me.

Next I went to an awesome session on Mylyn (TS-6421). I think Mylyn used to be Mylar which we trialed a couple years ago. It’s come a long way and is a great platform to track what you are doing in the IDE and just show you what you need to see to complete your task. It has awesome integration with tracking systems (JIRA, etc) and even includes the ability to organize emails and more into a work “episode”. Since so many of us context switch a lot this is a huge help. We’ll be incorporating this tool into our development efforts very soon.

I was signed up for an OSGi session, but was lured to a presentation on how to create your own DSL (Domain Specific Language). It was very well done, by two guys from Verisign. I think Sun should be scheduling more talks from accomplished IT guys at different companies like this (good presentation skills). Did I mention I’m available for next year? :) They covered not only how you can invoke scripting languages from Java but also how to create your own. They made a clear case for where this was useful and walked through the basics to do it with a few examples. I didn’t follow it all but I got the basics. Very useful – made me think about a card game I’ve been wanting to create.

Next I visited a session on how to choose a web framework (TS-6457). Since I am involved in a lot of technology evaluations this was actually a good session. He started out with the typical criteria (some I had not thought of) and added in some of his unique ideas. I really found this useful. Then he reviewed several of the frameworks and gave his thoughts. I think he messed up Struts 2 – he treated it like a new project. AFAIK it is just a new version of WebWorks with a new name, I could be wrong. Overall a good session but it would have been better if he went deeper on three different frameworks instead of several similar ones.

Met with JBoss on a variety of topics and then headed out to dinner with my team. Good day, I’m ready to go home, Java has worn me out and I can’t drink anymore of it! Missed Bob’s Guice BOF :(

no comment

7

May

JavaOne 2008 - Day 2

Posted by The Great Java  Published in Java, Web

The day started out with a keynote from Oracle. Some interesting stuff. The mentality of Oracle hasn’t changed much over the years. They provide an IDE, runtimes, database integration that is very seamless but hopelessly proprietary. It’s all “standards based” meaning where they use standard plumbing and interfaces. However the key thing here is LOCK-IN. They have tons of Java code to make all the magic happen and it all starts with “com.oracle”. So do you use the magic (and their tool), embrace it, debug it, or just learn to use open source solutions? Very slick Oracle, but no thanks. They ran way over time too.

The first session I attended was a panel (PAN-5435). This was a fun idea for a panel. They had 4 script language presenters (Groovy, JRuby, Jython, and Scala). They had 3 rounds to show similar features with demos and you voted on your cell for the winner in each round and a final winner. I think the winners in order were JRuby, Groovy, Scalia, Jython). If all the presenters had done their labs it would have been better (some didn’t do the example they were given). I would have done JavaScript probably as well. Decent session, fun.

Next I missed the Hands on Struts2 session for a work-related conference call. After grabbing some food I hooked up with Bob Lee for some coffee and we discussed a variety of interesting topics from Android to twitter. Always fun to talk with Bob - hopefully we can get you to move back to St. Louis some day!

The next session was a JRuby versus Groovy - TS-6050 (noticing a trend?) This was arguably the best session I’ve attended. The presenter (Neal Ford) was highly knowledgeable, gave a ton of thought of how to compare, and was an excellent speaker (bring this guy back Sun on any topic!!!). Bottom line is Groovy is a lot like Java and carries some of the verbosity and restrictions. It is an excellent choice for many applications. Things I liked about Groovy: Operator Overloading, closures, ignores private (great test tool), dynamic… JRuby had a ton of things I liked but not very “Java”. The ability to layer a DSL for a framework, expressions, mix-ins (modules), mature, very cross platform (it generated a distributable exe and app file). I think the JRuby language, save the fact it is very different than Java, has a lot of things going for it over Groovy. Top notch presentation and session, I learned a ton of stuff that would have taken a lot of time to sift through on my own.

The next really interesting session was something I deal with a lot in my job - open source - and the politics of it. What really is open source? How do trademarks affect it? Is M$ shared source really “open source”? What is OSI and how do they categorize open source licenses? Those were some of the questions I got answers for at TS-7064. Great advice to corporations participating in open source. Anytime you can see Simon Phipps speak it is worth it.

We spent some time in the Pavilion with some vendors, one interesting tool was project Wonderworld. They have some very interesting ways to use SecondLife type of environments for corporate/business collaboration and visualization. Very great ideas but I think a bit before their time.

We were fortunate enough to have dinner with some of the JRE engineering team (compiler, gc, and other developers). That was very interesting. I got to ask a java compiler guy all my crazy stupid questions (well a few of them). Very interesting to hear some of the guts of how the new JRE (6 update 10) works with the smaller JVM bundle you can bootstrap with. Some of this is way overdue and exciting to see it happen. My own company is so far behind the latest releases I know it will be a while before we can use it.

no comment

7

May

JavaOne 2008 - Day 1

Posted by The Great Java  Published in Java

The keynote had the typical stuff, music, dancing, and of course the infamous t-shirt catapult. I was happy to have one bounce of a Sun rep, hit my coffee, and land at my feet. The main keynote theme hit a few interesting items. Probably the most interesting was the JavaFX demo where they had a 100 HD movies playing and rotating in a cube and you could click one to watch. They also had some interesting JavaFX demos for social networking that ran as an applet, desktop app, or mobile app (it would have been really great if it had not bombed a few times). This year they are using the tags and sensors around the building to track our movements.

The first session I attended was an JRuby (TS-5416). Since I’m often asked about scripting languages, and I’m a general scripting bozo I decided to get more information. JRuby is essentially Ruby running on a JavaVM. It adds things like native threading, ability to call Java classes, and the ability to call Ruby from Java. The Ruby language is pretty interesting. It is dynamically typed, OO - class based with single inheritance. One nice thing was the inclusion of modules which can be pulled into classes without needed in have “helper class” structures to contain these code fragments. Classes can be generated dynamically and augmented at runtime. It seems that JRuby or Ruby Rails (the MVC framework) is quickly mentioned. Some of the basic capabilities where detailed. The session was interesting and pretty well done with a balance of code examples and slides.

Next I went to the JAX-RS (TS-5425) session. It covered the basics of RESTful API (give things IDs, Link things together, etc). This was a great level set to then walk through the JAX-RS API and see how it implements each of those features. Some of the API was done simply with annotations (great idea). Some of it had (what seemed to me) unnecessary API calls to do things like get builders, etc. Then the demo spent a lot of time on how to create XML representations and it slowed down and got a bit boring (I think he generated some code with
a macro and then didn’t really explain it). I had to leave early for the next thing but overall very interesting and useful session on how to host a RESTful app or consume one.

I was lucky enough to get into a small group meeting (about ten) with James Gosling. For about an hour we did Q&A on everything from “why didn’t your demo in the keynote work?” to JDK update pains, and should we use Swing instead of JEE? James is a funny and insightful guy but he doesn’t really think a lot about how we use Java - large enterprise applications. It was fun to meet him and he has a lot of interesting stories to share.

After this I went over to the Pavilion and met some vendors. Got to see Chuck and Eric from Instantiations, met with the Atlassian folks to ask some questions (and make some good contacts).
The JavaScript sucks presentation was a deep dive into crazy Javascript stuff, it didn’t interest me since I’m not a Javascript developer. The last presentation I went to was Building Secure Mashups with OpenAjax (TS-5030). This session gave a background of OpenAjax 1.0 and where 1.1 was heading. The widget API is roughly modeled after the Google API, and they provide the ability to generate wrappers for other widget specs. It was very interesting but I’m not sure I learned much.

After spending more time in the Pavilion I headed out to dinner with a bunch of folks and got to spend a lot of time chatting with Peter Reiser from Sun on social networking which was a awesome!

no comment

27

Sep

Great PDA/Phone

Posted by The Great Java  Published in General, Java, Web

Well I finally gave up on my Treo. 1) It was dying a terrible battery death 2) The hinge broke AGAIN 3) I work for AT&T and people look at me funny with my Sprint Treo. I switched to Cingular and got the new 8125 phone (a.k.a. HTC Wizard). It’s really awesome. I’m creating an article with all my Cingular 8125 notes with my software finds, and migration from Palm.

no comment

22

Nov

Starbucks and Transactions

Posted by The Great Java  Published in Coffee, Java

Geeks only. Made me giggle.

http://www.eaipatterns.com/ramblings/18_starbucks.html

no comment

20

Aug

YAFB

Posted by The Great Java  Published in Java

Another free book available from the server side! J2EE Architect’s Handbook Looks useful and the price is right.

no comment

20

Jul

Free Book! Servlets and JSP

Posted by The Great Java  Published in Java, Web

The Server Side has a free book on servlets and JSP… Sometimes they disappear so download it!

no comment

4

Jun

Open Source Java

Posted by The Great Java  Published in Java

Wow. Is Sun giving gifts away before they fold? Open Sourcing Java? They also announced Solaris. Last week their leaders said hardware was going to be free (uh, isn’t that Sun’s bread and butter?).

no comment

17

May

Eclipse RCP and Swing

Posted by The Great Java  Published in Java

To say the documentation for Eclipse release 3 is sparse would be generous! I was able to get existing swing code working as a plug-in by creating a view, and then using the SWT_AWT class to create an AWT frame I could add my existing swing code UI to. Worked like a charm save a few null pointer exceptions in the console that had no effect on use. Cool stuff but….

no comment

25

Apr

Eclipse RCP

Posted by The Great Java  Published in General, Java

The Eclipse IDE has made a big change in the 3.0 release. The framework used for the plug-in model, and the system services have been “unbolted” from the IDE. This new layer is called the Rich Client Platform (RCP). After spending a few days going through the plug-in class material, reading doc, and writing sample code I’ve convinced of one thing - it could be easier. The documentation is lacking. The only online tutorials for RCP are not real useful, but they do show the most complicated Hello World sample I’ve ever seen! That being said, I like it and am starting to use it for the card game platform. Is it better than NetBeans for RC? I don’t know. So far the widget library (SWT) has made me want to use the Swing widget library, which I’ve never liked. Time will tell…

no comment

30

Mar

Posted by The Great Java  Published in Java

Busy last several days teaching a 5 day Java Programming Class Even though I’ve used the language for 7 years I still learned things by having to teach a class on it. Was a lot of fun and got positive feedback from students.

no comment

13

Mar

Prepackaged Goods

Posted by The Great Java  Published in Java, Web

Wow, PHP, Apache, MySQL, and other useful stuff all prepackaged and configured for multiple platforms. I love open source.
http://www.apachefriends.org/xampp-en.html was easy to install on XP. I ran an install script and started the server. I installed OSCommerce in 5 minutes! server, database, and shopping cart platform all installed in under 10 minutes. Wow. And with PHP I can take the site back and forth b/w Linux (where my web hosting is) to my machine. And it’s not even written in Java!

1 comment

11

Mar

Tiger!

Posted by The Great Java  Published in Java

Met with Calvin Austin today who is the spec lead for J2SE 1.5. Gave a presentation at work and spent time discussing the JRE and 1.5. with him A lot of interesting features in 1.5. Some like autoboxing should have been added years ago. Others like metadata look a bit dangerous but I like the ability to have something like this:

public String @remote getName() {}

The @remote is a metadata tag that could be used to automatically create web services proxy/stub code. This would save going through wizards, or implementing bizare interface classes to hook into a middleware framework. While simple, I think this will revolutionize a lot of Java.

More on Tiger at… http://java.sun.com/j2se/1.5/

no comment

Tags

8125 apple art att baseball blog cardinals cheap Coffee commerical conference call espresso filtering flogging frustration gadget gmap google gps htc iphone Java javaone joomla k9 latte-art mac maps mda osgi osx problem quality reality-4-me roast router send help social social-media stupid trader-joes uverse wii windowsmobile world series

Links

  • Chauvin Coffee
  • Coffee Geek
  • Linked In Profile
  • Sun’s Java website
  • U-Verse AT&T TV!

What I'm Doing...

  • @ActionPhoto ok that's a much better photo. 3 hrs ago
  • @bklein34 perfect title for any nutcases that want to push these tools in large enterprises. Yes I have a few people in mind for flogging. 3 hrs ago
  • @bklein34 my 2 cents - no social media evangelist wants to be called by corporate friendly name. Gag, Web 2.0 collaboration SME? Flogging? 8 hrs ago
  • More updates...

Contact?

You can reach me, mark@thisdomain (greatjava.org). You can find me on twitter, facebook, and a variety of other social media venues.

Recent Posts

  • What’s Wrong with the iPhone?
  • Buzzwords Can Hurt
  • More Bars or more Pixels?
  • Is the new iPhone Perfect?
  • You’ve got a Pizza Tracker for your Website Right?

Meta

  • Register
  • Login
  • Entries RSS
  • Comments RSS
  • WordPress.org

Categories

  • Coffee
  • Coffee Shops
  • General
  • Java
  • Spirituality
  • Web

Recent Entries

  • What’s Wrong with the iPhone?
  • Buzzwords Can Hurt
  • More Bars or more Pixels?
  • Is the new iPhone Perfect?
  • You’ve got a Pizza Tracker for your Website Right?
  • Do you know your co-workers?
  • Ignorance is Bliss
  • AT&T U-Verse Router/Gateway Issue
  • JavaOne 2008 - Day 3
  • JavaOne 2008 - Day 2

Recent Comments

  • The Great Java in More on Internet Filters
  • Anonym in Prepackaged Goods
  • Random Selection of Posts