Category Archives: Geek Speak

JavaOne 2011 Part 1

JavaOne has been good so far, below are some of my random thoughts/observations of some of the sessions that I’ve been to so far.

Technical Keynote

The keynote started off a little boring, to me at least, with a lot of dry nerd humor and talk about how Intel and Oracle have worked together to make improvements to both the JVM and hardware to get the best from each other. Thankfully Mark Reinhold came up next and woke everyone up when he started talking about Java SE 7-9.  (If you haven’t heard Java 7 came up back in July).  Java 7 is a great step forward with features like AutoClosable, String literals in switch statements, multi-catch, and multi-catch, and try-with-resources.  Java 8 looks like it will be a “revolutionary” change with Projects Lambda and Jigsaw (more to come on those).  The  JavaFX was very impressive, as most demos should be, and caught everyone’s attention when they had Duke mirroring the actions of the demonstrator ala Xbox kinect style.  I was also happy to hear them say that the Mac OSX version will be GA soon on the same date as the official Mac Java SE7 is available.  There are a few projects that we have at work which have been needing some TLC and JavaFX might be getting some action soon.

Choosing a Web Framework

I was actually pleasantly surprised at this session.  The presenter did a good job of explaining what all you need to look for when choosing a framework and the repercussions of making the wrong choice.  Most of the requirements should be fairly obvious however the speaker stressed the importance, rightfully so, of longterm planning when choosing your framework.  What really surprised me was the frameworks he compared/scored; Grails (shocker), GWT (another shocker), Tapestry, and Wicket.  Wicket?!  We’re migrating to Wicket at work and while I like the framework it just has never seemed to gather that much community support.

Project Lambda

The Project Lambda presentation given by Alex Buckley was very good.  Being one of those geeks who enjoys the “thought process” discussions I was really into this one.  How some decisions were/are being made and how it will impact future coding and performance.  Lots of good stuff but to quote a college of mine “I’m not sure I want Perl in my Java”.  The syntax will take some getting used to….

Project Jigsaw

The concepts and implementation details behind Jigsaw are interesting.  Generally speaking, it’s taking the best parts of Ruby’s gems, maven, and others and wrapping it all up into the new JDK.  The project is also aiming at modularizing Java which is a good thing since it will help keep the bloat down.  The presenters were wise to avoid even mentioning OSGI since there will be some contention between the two somewhere down the line.  There are a lot of questions that came out of the presentation (like if you get rid of -classpath and everyone is using the module-info.java file how do you handle facades/runtime resources like SLF4j?) and this will be one to watch.

To JavaOne I Go Again

I’m going back to JavaOne again this year!  I enjoyed the conference last September and I’m looking forward to this year’s conference.  A little bummed it’s not in the Mascone Center (again) this year but  overall I thought Oracle did a good job with the Hilton, Niko, and Parc 55.  Sessions are booked, flight reserved, and hotel ready.  San Francisco here I come again!

Picking a language

Every year at work we review our development and performance objectives.  How did we do on them, what are the objectives for this year, etc.  Since I pick my development objectives I’ve decided that one of them will be to learn three new languages/frameworks.  There are plenty of languages and frameworks to choose from, so much in fact that I have had a hard time nailing down which ones I want to try and tackle.  Of the many options to choose from I’ve narrowed down the list to the following six:

  • Grails
  • Python
  • Objective C – really get into it this time especially now that I have my new MacBook Pro :)
  • Scala
  • Ruby On Rails
  • GWT

I actually jump started my goal in the beginning of the year by attending one of the SATJUG meetings which was over Grails.  The presentation at the JUG was enough to grab my attention and bump it up in my list.  Groovy is an interesting language and I’m really liking how the Grails framework makes use of it’s dynamic nature.  There’s also some entertaining value of having a class called GString in the core language.  Scaffolding is nothing new but Grails does it with flair.  Throw GORM into the mix and you have yourself a pretty slick web framework.  Despite all that I don’t see it having a home at work other than for prototyping due to our ‘culture’ which saddens me.  Regardless, this framework has a lot going for it.

I still haven’t picked my next language/framework, I’m open to suggestions, but I hope the next one I pick is as unique and versatile as Groovy/Grails :)

Pro, MacBook Pro

After much deliberation amongst myself I finally broke down and bought a new 15″ MacBook Pro.  Thank God for the USAA employee discount because it saved me a lot of money.  I decided to not get the SSD at this time going for more hard drive space over the speed.  The 128GB SSD just doesn’t seem like much when you have 80GB of music and 10GB+ of videos and pictures….

Tech Specs:

  • Processor – 2.2GHz Quad-core Intel Core i7
  • Memory – 4GB DDR3 (who actually pays for the upgrade?)
  • Hard Drive – 500GB SATA 7200
  • Upgraded display and a few other small upgrades

My existing MacBook, that’s MacBook not MacBook Pro, is a good 4 years old and has served it’s purpose of watching movies and surfing the web well.  I’m looking forward to actually being able to code and run services without waiting 10+minutes for anything to load.

Star Wars: The Force Unleashed 2

Looks like I might have to get me a next-gen gaming system….

EDIT:  Looks like the video is down….  Link on GameTrailers.com – http://www.gametrailers.com/video/e3-2010-the-force/101181

Obligatory question, why does Darth Vader look like a wimp compared to his “apprentice”?

Doing the Wicket ‘thang

Wicket in Action Lately I’ve been playing around with Wicket for work.  It’s a very interesting framework that, from my experience at least, you will either love immediately or scratch your head for a time as you unlearn Struts or another framework.

We don’t need no stink’n JSPs!
It seems that with Wicket the days of having to write Java in JSPs are gone, in fact Wicket doesn’t use JSPs, it uses good ol’ fashion HTML files.  This is very nice and allows you to really separate the design of a page from the functionality.  The only downside with how Wicket uses the HTML markup is if you change the structure of the markup, which you will do when developing, you’ll have to reorder your components in code and recompile.  If you make use of Wicket’s markup, which you will, the number of times you have to recompile goes down drastically.

Read more »

An iPad… So What?

So I finally got around to watching the whole video on the iPad and I’m still not that impressed.  I’m sorry but I’m not and IMO you shouldn’t be either.  Lets get the obvious cons out of the way:

  • No flash support still!
  • No USB
  • No CD/DVD drive
  • No stylus pen
  • It’s a big iPod Touch…  no really, it is!

Now the reason for no USB and CD/DVD might not seem apparent at first but let me explain why I consider this con.  Computer makers have been trying to break into the Tablet market for a long time now.  There’s the traditional slate design which the iPad follows, the laptop hybrid/convertible style, and the Ultra-Mobile PC.  All of these have been tried and for the most part flopped with the exception of a small following (doctors/physicians).  Why they failed is up for debate; weight, portability, design, software, take your pick.  Of the different variety of tablets most of them have USB support and a few actually have the CD/DVD drives.  And then there’s Apple who wants to break into the market and doesn’t have either one?!  Seriously?  Apple, the guys who made one of the lightest, if not the lightest notebook around which has USB support and they suddenly couldn’t put it in a tablet computer?  What’s up with that?  Oh yeah, it’s a big iPod Touch!  The iPad isn’t running OSX, it’s running the iPhone/iPod OS.  This is the biggest reason why I’m not impressed!  Apple takes pride in inventing and revolutionizing the industry and then they release a blown up iPod Touch and call it ground breaking… No.

Now let me change gears a little to the stylus pen.  Why a stylus pen when it’s touch based?  Well, believe it or not some people would actually like to use a tablet computer like a tablet.  Meaning if you’re going to design a “computer” that can be held like a notepad and written on perhaps you’d want to give the users the ability to write!  Sure you can lay it on your lap and type with the keyboard but if I’m a doctor or an ‘on-the-move’ assistant I don’t have time to sit down and type, I’m writing on the notepad I have with me on the go.  This is a critical design flaw in my opinion.  There is no out-of-the-box incentive for people who want to replace their notepad to pick up and iPad.  Instead they’ll still rely on whatever means they already rely on be it their current tablet PC, pen and paper, or their phone/PDA.

Now I don’t completely hate the iPad.  I will say it’s nice to see how far companies are taking touch based computing and using the accelerometer.  I think the Kindle and other eBook readers are in a world of hurt now.  Apple did their home work with their new “book store” and they could probably corner a good portion of the market.  It’s also nice to see solid state drives really taking off.  Give it another year or two and they’ll be standard in computers.

Will the iPad sell?  It’s an Apple product so yes it will.  Apple could wrap up dog poop, put a pretty case on it, and call it the iPoop and people would still buy it….  Flame on Mac Zealots, flame on.

My New Toy

This year for Christmas Stephanie and I decided to buy something that the family could use rather than just gifts for each other.  Now we’re the proud owners of a new Canon Rebel T1i, w00t, and let me tell you what, this thing is awesome!  Random photos:

For the record, taking close-up photos of a moving baby is not easy

Windows 7 Activation

I laughed when I saw this:

Windows 7 activation error: 0xC004F061

If you receive error “0xC004F061″ when trying to activate Windows 7, it means you’re using a product key for an upgrade version of Windows 7 and a previous version of Windows wasn’t on your computer when Windows 7 was installed. To install an upgrade version of Windows 7, Windows Vista or Windows XP must be installed on your computer. If you formatted the drive before starting the installation process, you won’t be able to use the upgrade product key to activate Windows 7. To activate Windows 7, you’ll need to install your previous version of Windows, and then reinstall Windows 7. For help with the activation process, go to the Microsoft Support website.

Seriously?  Is that what you call customer service?  Rather than giving your customers an option to enter their XP/Vista product key you want them to reinstall the old operating system only to reinstall Windows 7….  Does anyone else see something wrong with this?  So if you don’t want to reinstall two operating systems there is a registry fix to get around this.

  1. Open up regedit and go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\OOBE
  2. Backup (Export) the folder just in case
  3. Change MediaBootInstall from 1 to 0
  4. Open up a command prompt running it as Administrator
  5. go to C:\Windows\system32
  6. > cscript.exe slmgr.vbs -rearm
  7. Reboot your computer
  8. Enter your product key

Hope this helps

Chrome, Google Chrome

OK, I’m really kicking myself now.  Why the hell haven’t it before?   I mean I’ve read up on Chrome and all but I’ve just never gotten around to using it.  Don’t know if I’ll make it my default browser or not but it’s pretty nice so far. We’ll see if Chrome suffers from the same memory issues are FF….

Google Chrome