Thursday, June 19, 2008

Better Gmail 2 add-on for Firefox

I installed the "Better Gmail 2" add-on to Firefox 3 and it appears to have fixed one of my only complaints about gmail - no subfolders.

Here's a partial list of what comes with this add-on:
  • Add Row Highlights - eh, kinda cool
  • Attachment Icons - pretty neat - displays icons for attachments in preview

  • Folders4Gmail - this is the reason I got this add-on. works pretty nice. You just rename your folders like 'jug/jug sponsor' and 'jug sponsor' is a child of 'jug'. When you put labels on stuff it shows the 'jug/jug sponsor'. Kinda cheesy.

  • Force Encrypted Connection (https) - eh

  • Google Reader Integration - I haven't played with this yet

  • Macros (? for help) - doesn't seem to work, I probably have to turn it on or do it right

  • Show Message Details - ditto
overall it seems pretty nice.

Monday, June 9, 2008

Red Earth and the Girls

I am so proud of my 'little' girls! They did very well in the basket and beading competitions!

Susan got First Prize (and $100) for her basket!

Kimberly got Second Prize (and $75) for her beaded choker!

Kimberly got Third Prize (and $50) for her basket!

All the money is going into their savings accounts.

Thanks to the Indian Education Program at Edmond Public Schools for their help in making the baskets and bead work!

Here is a link to the article about this that was in the Edmond Sun.

NFJS Dallas - Day 3 of 3

Whew, what a weekend. We got back from Dallas around 10:15pm Sunday night.

Beginning Object Relational Mapping with Hibernate by Brian Sam-Bodden was a pretty good intro to Hibernate. I didn't get much out of it. I probably should have gone to something else.

Caring about your Code Quality by Venkat Subramaniam was awesome.
  • Treat warnings as errors! What a concept. I've been fixing warnings when I run across them most of the time. Usually it's just unneeded imports or unneeded 'else' statements.
  • Code reviews - I've been trying to review new code when I sync up. I've caught a few problems and would like others to do it to.
  • I liked his 'triangulation' bit. When you copy and past code, get the copied code working, then extract the common code. I'll have to try it that way. I usually extract the common code to some base class and then make it work.
  • He recommends JLint and FindBugs for doing code analysis. I'm afraid to try that on our code. But really, how bad could it be? ;-)
Agile Test Driven Development with Groovy by Jeff Brown was pretty good but I thought the title was misleading. I thought this would be writing tests in Groovy that break for the right reasons and then fixing the real code until the tests passed. But it was a pretty good introduction into testing with Groovy. I was also a little disappointed that you can't change the behavior of your Java code from the test with the Expando or MetaClass Groovy classes. The Mocks and Stubs in Groovy looks like something that Java should implement in Java 7.

Powerful Metaprogramming Techniques With Groovy by Jeff Brown was really good. I'm starting to understand Closures - passing chunks of code around like I would a variable. The XML and Markup builders are awesome. Too bad we don't do a lot of XML in our group.

None of us won anything this year. Some poor buy won a 6 month license for all the Atlassian stuff (Jira, Confluence, etc).

Saturday, June 7, 2008

NFJS Dallas - Day 2 of 3

The first couple of sessions I went to weren't really weren't all that exciting for me.

Viva La Javolution by Brian Sletton seemed forced and just a bunch of slides to expose us to the libraries that were developed for Real Time by Jean-Marie Dautelle. Since the Java license agreements says,
Software is not designed or licensed for use in on-line
control of aircraft, air traffic, aircraft navigation or
aircraft communications; or in the design, construction,
operation or maintenance of any nuclear facility.
what it really means is that do not use Java for a Real Time application where execution of the code will always happen within a specific window of time. So Garbage Collection, which can happen at any time, becomes a big problem.

The techniques that are used are very cool, I don't know that will ever be able to put them to use. We'll just buy more hardware and start using new Java features like StringBuilder(see Venkat's Know your Java presentation).

(re)introduction to Spring Security by Craig Walls. I've never used or really looked at Spring Security 2.0 (was Acegi). But it does look interesting. Craig did a good job of covering the framework even if it wasn't something I really care about.

Know Your Java by Venkat Subramaniam was excellent. Venkat is very entertaining and appeared to be very knowledgeable. He kept asking questions like: "what will this code do?" and "which way to do this is better?" No one else was answering so I (tried) to answer several questions. I probably got 60% of them. My favorite part was about floats/doubles/BigDecimals since this has become a pretty big issue to me at work. NEVER use floats or doubles when dealing with currency. Venkat seemed to really hate/loath the String constructor for BigDecimal and I did not get a good answer from him on what is better that BigDecimal. :( He even showed us screwy things with Groovy and numbers. The StringBuilder (new with Java 5) class seems pretty cool.

Advanced Web Development with Grails by Jeff Brown was pretty good. He got a good start on building an application that had 3 domain objects. Object A has zero-to-many B's and B has zero-to-many C's. I didn't follow it all but it was a good presentation. Especially since it was all coding and no slides. I love that kind of presentation.

The Birds of a Feather on Hibernate and Spring with Criag Walls and Brian Sam-Bodden was ok. We ended up talking a lot about web ?framworks?

NFJS Dallas - Day 1 of 3

My first reaction to NFJS yesterday was how few people there seemed to be. This is Dallas! I expected more than the 100-150 that are here.

I attended the Groovy the Blue Pill, and Groovy the Red pill, and the one on Grails. All were presented by Scott Davis. Groovy looks very nice and I'll have to take a closer look to see if it will help us at work. Grails looks like it could make all of our CRUD apps much easier to develop.

Groovy looks great. I heard someone a couple of years ago say that if an IDE can do something for you like 'generate getters and setters' then why even have it in the code? This is one of the things that Groovy exposes. I would really like not having getters and setters in my business objects. Groovy uses BigDecimal, not float or double! How awesome is that? BigDecimal isn't perfect, but it is so much better as it is than floats! I'll never use floats again (I hope).

My main concern with Grails is that we usually have a layered architecture. Grails, out of the box, seems to want to put everything in the web app/layer. I'm pretty sure we can still use it, it just won't be as simple and straight forward if we don't follow convention and have to do configuration.

The keynote was by Neal Ford of Thoughworks. Very nice 'doom and gloom' for programmers in the US. Chindia will take over software development etc. Maybe I'll just become a custom furniture builder.

I met a guy from Mens Warehouse (Houston) - they are looking for java developers if you wanna move to Houston. I asked him if he knew Ralph D. and he did. Small world.

I also met a Dallas developer from Ethiopia. Apparently where he grew up was like a high plains kind of area and isn't used to the heat here in Dallas in the summer. Interesting... I always assumed all of Ethiopia was hot - Africa Hot (Biloxi Blues)