Category Archives: Programming

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 :)

Being Pragmatic

The Pragmatic Programmer

The Pragmatic Programmer

One of my colleges and I were discussing the dynamics of our team and what changes we would like to see.  It was one of those fun conversations where you know something needs to change but you’re not quite sure so you’re left to pure brainstorming.  During our conversation we started talking about “required reading” for our team with the hopes of getting more out of our team.  The Pragmatic Programmer was one of the books that came up that I had not heard of.  If you’re a programmer/developer and do not own this book stop now, click the link, and order it.  Go ahead, I’ll wait.  Don’t let the © 2000 fool you, buy the book!

The Pragmatic Programmer won’t teach you how to program in a specific language or tell you the answers to all of a developer’s life questions.  What it does do, very well I might add, is give you a advice from their experiences that can help you become a better programmer.  If you’ve been programming for a while like myself or just getting into it this book will help guide you along the way.

Learning IntelliJ

A couple months back I landed a free IntelliJIDEA license while attending the SATJUG.  I’ve it installed on my personal computer but just haven’t really used it.  Each time I start to hobby code my mouse instinctively hovers over the Eclipse icon.  It’s not that I’m against using a non-eclipse based IDE, it’s just that I hate trying to learn how to use a new IDE.  I learned how to use Eclipse because it was “the” IDEA at the time and it’s what I use at the office, well actually we use MyEclipse which I despise….  Everything I’ve read about IntelliJ has been positive and looks like I’ll like it, it’s now up to me to learn to use it.

I will learn to use IntelliJ. I will learn to use IntelliJ.  I will learn to use IntelliJ!

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 »

Android and the Missing GEN Folder

I’ve been playing around with Android now and so far it’s been a good experience save one really annoying thing.

Project ‘Project Name’ is missing required source folder: ‘gen’

Seriously?!  I mean come on, the folder is in the project for crying out loud!  Sadly I’m not the only one who has been plagued by this error.  Many Google searches later and still no hard-fast answer that.  I have found one thing that seems to help although it’s a pain to keep doing it over and over again….

  1. Delete the R.java file under the gen folder
  2. Refresh the project
  3. Build Project, not Clean

This, so far, seems to be the only way to consistently get rid of the missing gen folder message….

Edit:

It seems I’m getting more and more traffic to this post.  Christian provided the correct fix below on how to resolve the missing GEN folder in the comments below.  Set the Java version of the project to 1.6 and you’ll be troubled no more.  Thanks Christian.

I Found My Next Project

Since I’ve pretty much stopped playing video games I’ve been tinkering around with Ruby On Rails and other development platforms/languages. While tinkering I stumbled across Aptana which is a web-developer IDE built off of the Eclipse project. So far, I’ve been impressed with Aptana as a web-developer IDE however it’s lacking in some areas. Mainly, it’s a HTML, CSS, and Javascript IDE with RoR support available as a plug-in and PHP support in the works. Not bad considering it’s still in beta :) Aptana is everything I could want in an IDE except for the lack of ASP support. My current company programs solely in ASP despite how old it is and my numerous attempts to move to .NET. Which brings me to my next project, and ASP editor for Aptana. I don’t know how long it will take or how much time I’ll be able to put into it but it should be fun. Not just because I have a new project but also because it will be nice to get back into Java again.

Ruby on Rails?

I was talking with a friend of mine the other day discussing work, technology, the usual nerd banter.  During our conversation we got on the topic of a website that he had written.  Knowing that Ian is a Java J2EE developer I asked him what he wrote his site in.  “Ever heard of rails?” he asked.  Ruby on Rails?!  Who hasn’t heard of Ruby on Rails I thought to myself.  We talked more a little more about his site and then started discussing RoR.  I’ve been debating on taking the plunge and start messing around with RoR but just never got any further than that.  Doing some research on my hosting company, DreamHost, I’ve found that they support RoR.  So now I’m at a cross road.  Dare I take the plunge or do I not….Plunge!

A new respect for Flash

I’ve always looked at Flash as something that can be time consuming but not too complicated. Having used Dreamweaver and Fireworks I figured Flash would be just as easy to use and that any respectable Flash designer could whip out a fancy animation in no time flat. That was before I hade to make changes to an existing flash file. Let’s just say that I now have more respect for Flash designers. You have to be very meticulous to be one of ‘them’. Frame by frame, layer by layer. It’s no wonder you guys get paid so much.

Palm to Pocket

I’ve been working on this old school ASP website for work now for about a month. So far everything is going well and I’m about ready for a beta release. Or so I thought. I was asked to develop the site with the assumption that all users would be accessing the site via a Treo 650 or like model. If you’ve ever done any coding; stand alone or web, you know that developing for one specific type of device/user can be bad. However, since this website is designed to compete with a Palm app and I just started the job I didn’t dwell on the matter too much. So after about four weeks of working around all the shortcomings of Palm and limitations of the Blazer browser my boss comes up to me and tells me that we’ll be changing end user devices to Pocket PC. This is a mixed blessing. The good thing is that Pocket PC, or Windows Mobile, has a fairly decent browser and can actually render thing correctly. The bad thing is that my boss wants me to add all the JavaScript features that I had to exclude because Blazer couldn’t hack it back into the website for the beta release. We’ll be discussing the website again on Monday and I’m 99% sure I’ll get him to say that the JavaScript features can be included in the beta 2 release.

One thing that I should point out is a vast difference in emulators. Palm had a couple of version of the Treo 650 emulator, one for each of the cell phone carriers, and they worked OK. I had too many crashes to count when using Blazer. Go to any site with a multiple select drop down list and it would work 75% of the time as opposed to the Pocket PC emulator that hasn’t crashed on me yet. There was also a big difference in size of the emulators. The Treo was 12 Megs zipped and used 150 Megs of memory when I upped the amount of memory to 128 Megs. 20 Megs of overhead give or take. The Pocket PC emulator was a 3 Meg exe, and 130 Megs if you wanted a skin. 80 Megs for the SKD which had to be installed to install the 50 Meg Windows CE Emulator images and skin. The Pocket PC emulator is actually a Virtual PC application though there is no virtual harddrive to save your prefences to. The Treo would at lease save some of your settings that you made while running the emulator in an ini file. Pros and Cons to both but I think I’ll like working with the Pocket PC a little more than the Palm.