Update: I decided that I'd already signed up for enough programs like this without taking full advantage of them. As a side note, I've been trying out NetBeans 6.5 for my Groovy and Grails projects and have been pleasantly surprised. I'll have a dilemma on my hands when it comes time to either renew or drop my IntelliJ license in April.
Saturday, October 25, 2008
JetBrains Seeder Program
Saturday, October 4, 2008
ConcurrentLinkedHashMap as In-Memory Cache
Saturday, August 16, 2008
Amazing Research in Image Processing and Presentation
The first is titled, Using Photographs to Enhance Videos of a Static Scene. The video toward the bottom of the screen demonstrates using still images to automatically enhance the resolution, lighting, and color of videos, along with the ability to mask sections of scene and replace them with substitute images.
The second project has been picked up by Microsoft Labs and further developed into Photosynth (unfortunately requiring a Windows-only browser plug-in). It allows you to view a set of images of the same subject in a 3-D browser. See this very cool video for several examples.
Friday, August 1, 2008
Odaiko New England Community Membership
My wife and I recently became community members of Odaiko New England, a wonderful Taiko (Japanese drumming) group. Being a community member isn't quite as exciting or as much of an honor as becoming a performing member, but we're still very proud of our achievement. Taiko is a wonderful activity combining music, exercise, and energy. If you'd like to try it out, there will be a free beginner class next Tuesday (August 5th). If you can't make that one, you can contact Mark to ask when the next class open to new students will be happening. I hope you'll give it a try. It's awesome!
Wednesday, July 23, 2008
Great Douglas Adams Quote
I love deadlines. I like the whooshing sound they make as they fly by.
Douglas Adams
English humorist & science fiction novelist (1952 - 2001)
Friday, May 9, 2008
Best Quote at JavaOne '08
"It's essentially impossible to avoid Swiss cheese." --Gil Tene, Azul Systems
Want to guess about the context? :)
Update: I think I've allowed enough time for everyone to guess. Jeff, with his more serious answer, was the closest. The quote came from the Q&A period that followed a Friday morning technical session, Performance Considerations in Concurrent Garbage-Collected Systems. Gil was explaining that whatever form of memory allocation you use, you'll eventually end up with memory fragmentation. In a JVM, if you use a garbage collector that's both parallel and concurrent, cleaning up that fragmentation can be done without a stop-the-world pause. Conveniently enough, the JVM that comes with Azul's boxes can be run in parallel/concurrent mode. :) Sorry that the quote is less funny when put in context.
Wednesday, April 16, 2008
Great Saturday Night Live Skit
Wednesday, April 2, 2008
RightScale - managing Amazon EC2 instances
Saturday, March 8, 2008
Groovy versus Scala
After looking at Groovy and Scala for a bit, I've come to a decision about how I plan to learn and work with them in the near future. I'm going to learn and use Groovy first and then move on to Scala. In this post, I'll explain why.
First, I'll cover the areas in which I see the two languages as similar. They are both script-friendly, object-oriented, can integrate easily with Java libraries and run on a JVM, and make heavy use of closures. Once you're familiar with either of the languages, it's obvious that they'd be great for dashing off a quick script. At the same time, their fundamental OO natures helps you produce (but does not guarantee!) maintainable code. Being able to use and interact with Java code means that you can take advantage of investments in existing technologies and that you can gradually transition a code base from Java to Groovy or Scala. Closures are a very succinct, clear way of expressing solutions to a lot of common problems. Whether or not Java gets them as a language feature, they're unlike to work as well in Java as in these two languages, where they haven't been shoehorned in.
Of course, there are also ways that the languages and developing in them are different. Scala has a greater emphasis on functional programming, has implicit static typing, and (having looked at a decompiled bytecode generated by scalac and groovyc using Jad) appears to translate into tighter code. On the other hand, Groovy looks much more like Java (making the transition easier), Sun has endorsed Groovy, the development tools for Groovy are currently in better shape (and that's without trying what they've got in NetBeans), and Grails seems like a very promising application framework.
So, when I put all of those considerations together, blended them a bit, and took a drink, I decided that Groovy should come first. It helped me make the decision to realize that whatever time and energy I put into Groovy should pay off when it comes time to move on to Scala. I think the languages require a similar mindset and follow similar enough philosophies that once I've got one down, the other should be substantially easier.
Friday, February 29, 2008
Barack Obama for President
Wednesday, February 27, 2008
LibraryThing and Book Reviews
Wednesday, February 20, 2008
Book: Free Agent Nation
Sizer - nice little window sizing tool
Sunday, February 17, 2008
Battlestar Galactica - the new series
Quite a while ago, maybe as much as a whole year back, friends of ours recommended the new Battlestar Galactica series to me and my wife. They knew from past discussions of Star Trek: Deep Space Nine that we were really into what you might call "serious Sci-Fi", science fiction with interesting and complex stories. We like beautiful visuals and impressive explosions, but what we're really looking for are good, inventive stories. With Deep Space Nine, we really love the way it brought together politics, religion, ethics, and science and how those forces can complement and compete with each other. The Mars Trilogy novels by Kim Stanley Robinson (Red Mars, Green Mars, and Blue Mars) about humanity colonizing Mars painted a similarly complex picture of how future society might function. I was somewhat hesitant to watch the new Battlestar Galactica series because I still remember the original one from the Seventies, which I watched as a little kid. Even then, I think part of me recognized how dumb it was.
So, with all that as a backdrop, we finally decided we should watch it. But, before we started with the new series, Beth and I discovered that the original series was available on the Netflix Watch Instantly streaming video service and we thought we'd sample it for some perspective. As I expected, it was painfully stupid: poorly written, poorly directed, poorly acted, and at the same time very sexist and dated. That was a bit discouraging, but we pressed on and got the first DVD from the new series this week. It was actually the pilot mini-series, which was definitely the right one to start with. We watched the whole three hours on Friday night and were blown away. It was incredible! It's based on the same root story as the original series, but the character of it is so different. It's much darker and the people feel so much more real. I'm so glad they cast Edward James Olmos as the battle-weary Commander Adama (I remember first encountering him when he played Lieutenant Castillo in Miami Vice). What a great choice! I don't want to ruin any surprises for new viewers, so I'll just say that the new series seems very engaging and does a good job of combining the same sort of story elements that I described above for Deep Space Nine and the Mars Trilogy. If you like either of those, I'd highly recommend the new Battlestar Galactica to you. Probably my only complaint is that there's one female character who's rather over-sexified. If you can forgive that, I'm pretty sure you'll like it.
So, next in line for us is the first season! I'll keep you posted.
Wednesday, February 13, 2008
Groovy and Grails
Friday, February 8, 2008
Firebug and Ajax
Sunday, February 3, 2008
Getting rid of junk mail
- SuperCoups - http://www.advo.com/consumersupport.html
- ValPak - http://www.coxtarget.com/mailsuppression/s/DisplayMailSuppressionForm
- DMA’s Mail Preference Service - https://www.dmachoice.org/MPS/mps_consumer_description.php
- Five Toll Free Calls to Limit Junk Mail [I particularly recommend the number to stop unsolicited credit card offers] - http://www.timeatlas.com/mos/5_Minute_Tips/General/Five_Toll_Free_Calls_to_Limit_Junk_Mail/
- GreenDimes [I haven't really checked these guys out, so this isn't an endorsement] - http://www.greendimes.com/
Update: If you live in an area where you get weekly fliers in the mail from GlobeDirect (perhaps just the Boston area - since the company is associated with The Boston Globe), I discovered that you can call the number listed on the front of the outer flier (508-871-1900 for me at least) and request to be taken off of their mailing list. Since they normally send out materials once a week, this should make a huge difference!
Wednesday, January 30, 2008
Scala Links
- http://scala-blogs.org/2008/01/guide-to-scala-community.html - provides some links I'd otherwise list, along with many others
- http://lamp.epfl.ch/~phaller/actors.html - Actors, Scala's cool approach to concurrent programming which comes originally from Erlang
- http://burak.emir.googlepages.com/scalaxbook.docbk.html - Scala.xml, paper on interacting with XML in Scala
- http://www.ibm.com/developerworks/views/java/libraryview.jsp?search_by=scala+neward - Ted Neward's "The busy Java developer's guide to Scala" series at IBM DeveloperWorks (This is a link to a search because I've never figured out how to link to a series)
- http://www.artima.com/forums/forum.jsp?forum=282 - Artima "Programming in Scala" Forum
- http://www.artima.com/scalatest/ - ScalaTest, a unit testing framework for Scala that can also be used to test Java code (could make a nice way to gradually get to know the language)
- http://www.artima.com/forums/flat.jsp?forum=276&thread=216815 - Groovy, JRuby, or Scala: Which JVM Language to Learn Next?