Posted in Computer Games, Movies, Music, Software Engineering, Technology
Tuesday, November 10, 2009

And now some stuff that has been on my mind.

  • What the Netflix Prize 2 gonna be like?
  • Why can’t I get motivated to participate in this year’s NaNoWriMo?
  • Can I do anything cool with Raphaël?
  • When is my copy of Call of Duty: Modern Warfare 2 with the night vision goggles going to arrive?
  • Why are the retailers already selling Christmas junk?
  • Why does the Lord of the Rings Trilogy make walking seem interesting?
  • When am I ever going to catch up on my book list?
  • Should I put up Christmas decorations outside before the weather gets colder?
  • Could burritos be more awesome?
  • Should I go see the Stevie Ray Vaughn tribute show? By myself?
  • Why don’t I play guitar more?
  • Why is it I forget what I needed when I get to the store?
Tags: , , , ,

Posted in Music, Software Engineering, Technology
Saturday, September 26, 2009

Wordpress.com has a message to the HTML hackers out there: join us.

  1. In Mozilla Firefox (you’re using Firefox, right?!) open Firebug
  2. Now point your browser to wordpress.com
  3. Look for the X-hacker response header in HTML Headers section on the Net tab. It reads: “X-hacker: If you’re reading this, you should visit automattic.com/jobs and apply to join the fun, mention this header.”

Wordpress.com X-Hacker Header

Tags: ,

Posted in Software Engineering, Technology
Sunday, May 11, 2008

I woke up Friday and decided to skip the final keynote address and remaining sessions. I had a raging headache and was anxious to get home. I did a little shopping for Mother’s Day. Then I took the subway to the airport to see if I could catch an earlier flight. Unfortunately, I did not have luck and settled in for the four hour wait before my flight.

It was probably best that I did not good back to the convention center. I probably would have bought another book from the bookstore. Here is a list of books which I bought while at JavaOne:

  • Think Better by Tim Hurson
  • The Pragmatic Programmer by Andrew Hunt and David Thomas
  • Effective Java, 2nd Edition by Joshua Bloch
  • Prototype & Scriptaculous in Action by David Crane and Bear Bibeault with Tom Locke

Yesterday the headache returned. I spent most of the day taking it easy including a three hour nap. When I finally checked my email I saw this notice:

The JavaOne conference team has been notified by the San Francisco Department of Public Health about an identified outbreak of a virus in the San Francisco area. Testing is still underway to identify the specific virus in question, but they believe it to be the Norovirus, a common cause of the “stomach flu”, which can cause temporary flu-like symptoms for up to 48 hours. Part of the San Francisco area impacted includes the Moscone Center, the site of the JavaOne conference which is being held this week. We are working with the appropriate San Francisco Department of Public Health and Moscone representatives to mitigate the impact this will have on the conference and steps are being taken overnight to disinfect the facility. We have not received any indication that the show should end early, so will have the full schedule of events on Friday as planned. We hope to see you then

I feel much better today. I am catching up on chores and preparing for my week. I am looking forward to discussing some of the interesting things I saw with coworkers and friends.

Posted in Software Engineering, Technology
Friday, May 9, 2008

Well folks, this is gonna be a short entry. Tomorrow is the last day of JavaOne. I need to pack up all of my stuff and swag in order to be check out tomorrow.

I dug the session on Nimbus. Vector-based UI components for a cross-platform look and feel just makes sense. The presenters showed off a nifty tool to design new vector-based components. Impressive stuff. I am anxious to download Java 6u10 and tinker with this. I am especially interested in reviving an old drum machine project I started writing in Gnome/GTK. I think I can utilize the customization available in Nimbus to make a custom, professional looking interface without the ugly hacks I had to use for GTK.

The Scala session made me want to puke. The presenter proudly proclaimed that the language is the next generation of Java and that it is everything that Java should be. I almost walked out when he said that they removed the “break/continue” mechanism in favor of “goto”. WHAT?! I decided to stay for the rest of the session to give the presenter a chance to redeem my opinion of my language. No luck. I was not impressed. So friends, I flipped the bozo bit for Scala.

The Filthy Rich Client session was great. It really got me thinking. Last year I wrote an app that animates dots starting at the top of the screen and falling to the bottom. The problem is that I hit barrier where it would not run faster than 30 fps. At the beginning of the session they demonstrated bouncing balls app that ran at over 100 fps. They explained the issues with Swings timer thread. I am hopeful I can revisit the app and get it working at a respectable framerate.

The session on Unit Testing with Groovy gave me a bunch of ideas I plan to take back to work with me. I talked to some guys who commit to the Groovy project about how we can work about issues we have with testing singletons. They gave me an idea or two to try out.

The Java Posse guys gushed about Scala in their session. The session was fun but not great. It made me nearly regret my decision to skip Sun’s After Dark party where the band Smash Mouth performed.

Overall it was the best day yet. I may not post the next blog entry until Saturday. I will be traveling tomorrow for over six hours and will be crossing two timezones. California was okay but will be happy to return to the familiarity of Illinois.

Posted in Software Engineering, Technology
Thursday, May 8, 2008

Ok, I just got back from the Sun Developer Network Party. I am going to make this short. My plan is to revisit these blog entries once Sun releases the videos and slides from the JavaOne sessions in the near future. Here’s my brief recap of today’s fun.

First of all, Scott Davis is a brilliant speaker. I highly recommend his Groovy: the Red Pill presentation. I missed this one at No Fluff, Just Stuff a few months ago. You will not look at the EXPANNNNNNNNDO-METACLASS the same way again.

The Struts 2 presentation flew over my head. I wasn’t sure if it was my relative lack of experience with Struts 1 or the presenters lack of examples. When the speaker pronounced HTTP as “Haytch Tee Tee Pee” it pulled my mind out of any comprehension of any point that he attempted to be communicated. This session was a waste.

The OpenSocial Container presentation discussed a project named Shindig. One of the presenters started working on his Web 2.0 social network website in January and finished in April. Am I in the wrong business?

I cannot wait for the Compelling User Experience session to make it online. Nothing was sacred. The presenter threw stones at a lot of today’s paradigms. I couldn’t agree with him more!

The video games BOF introduced me to the javagaming.org forum.

The Groovy in a Cloud session got me to thinking about the benefit of deploying virtual servers much more quickly than it would take any corporation’s purchasing department to acquire the equivalent hardware.

The GWT and Comet session introduced me to the Grizzly Comet project which uses continuations to push data asynchronously from the server to the client. Imagine an auction website where an auction’s high bid is updated automatically on your web page without having to refresh the page. Who knew it was possible to suspend a browser’s session?

The Groovy Builder session discussed making Domain Specific Languages (DSLs) with a part of the Groovy language with which I am not yet familiar.

Ok, friends, more later.. Off to do a bit of reading before turning in.

Posted in Software Engineering, Technology
Wednesday, May 7, 2008

I made the trip out to San Francisco for JavaOne. The first day kicked off with a speech entitled Java + You. I came in late because, well, I had an issue finding the right conference center.. not Moscone West, not Moscone South, but Moscone NORTH, whew! I enjoyed the talk until they trotted out Neil Young, the ancient musician and liberal crackpot.

My first scheduled session was on Project Darkstar. The presenter covered Sun’s massively-multiplayer system. In describing the server he mentioned the design goal on achieving low-latency using objects that sounded a lot like stateless session enterprise java beans (EJBs). In his demo he used assets from Bioware’s Neverwinter Nights — while that was cool it looked dated. I found it strange that the demo for a MMO was empty except for the player character.

The talk for Project Aura was better. This is an open source project that provides recommendations based on classifications. They pointed out the shortcomings of the traditional recommendation engines, specifically music recommendation systems. Their approach would improve on them by automatically classifying music using artificial intelligence. They also show why the recommendations are made. This would be an improvement over, say Amazon inexplicably recommending clean underwear when I look at a book on chaos theory.

Most sessions are a cattle call. Imagine a large nerd herd of hundreds of attendees congregated outside conference rooms waiting for the room to empty and the staff to let them in. Lunch was the worst crowd. Thankfully, the lunches were boxes and line moved quickly.

After lunch I attended a session on upcoming Java changes. There are interesting things coming. Here is what I managed to scribble down:

Multi-catch

try {
// stuff
}
catch (X1, X2 e) { foo(); }
catch (X3 e) { bar(); }

Safe Re-thow

try {

// stuff
}
catch (final Throwable e) {
logger.log(e);
throw e;
}

Switch on String

switch (value)
{
case “red”:
foo();
break;
}

Modules

module org.netbeans.core;
package org.netbeans.core.utils;

Annotations (JSR 308)

Adds annotations on generics
List < @NonNull String> strings;

Adds annotations to casts
endRegex = (@NonNullPattern) endRegex;

I went to a session on Grails that was pretty similiar to the class I attended at No Fluff, Just Stuff a few months ago. Following that I went to a class on GWT where the only thing I picked up was that testing GWT classes in difficult. Then I ended the night with a session on writing plugins for Eclipse, NetBeans IDE and IDEA. The main takeaway from that session was that Eclipse uses plugins in SWT and everybody else uses Swing.

It has been a long day. I have classes tomorrow on Groovy, Struts 2, OpenSocial and Comet. So I’m off to bed to do a bit of reading before calling it a night.

Posted in Software Engineering, Technology
Thursday, May 1, 2008

Back in March I attended a software conference hosted in St. Louis called No Fluff, Just Stuff. The lectures introduced me to some cool new technology. It was small and intimate. I had an opportunity to speak to the instructors and conference organizer.

The classes I took covered these technologies: Ajax, Hibernate, Spring, Terracotta, Grails, Groovy and GWT

During one of Jeff Brown’s Grails talks I heard him say that there is built-in validation of credit card numbers, but it is limited to just checking the size. It is possible to validate the value of the number using the Luhn Algorithm. So, the following is my implementation of Luhn validation written in Groovy and suitable for use in Grails.

class LuhnValidator {

def isValidCreditCardNumber(number) {
def sum = 0
def alternate = false
number.reverse().each { value ->
if (value =~ /\d/)
{
def n = value.toInteger()
if (alternate) {
n *= 2
if (n > 9) {
n = n % 10 + 1
}
}
sum += n
alternate = !alternate
}
}
sum % 10 == 0
}
}

Page 1 of 712345»...Last »