Skip to main content

Mason Glaves

Mason Glaves is the senior Java engineer at Vanten K.K. (, an open source consulting company based in Tokyo, Japan. He has been working professionally in such varied fields as network and application security, biometric authentication, and knowledge management for the past seven years but has been a known voice in the security community since 1988. He began working with Java in early 1996 and has been an avid developer and advocate ever since. Mason has an academic background in Anthropology with a specialization in linguistics and spends his free time studying and documenting both Native American and far East Asian language and culture.


mason's blog

Mason's Blindingly Obscure Tips & Tricks, Vol. 1

Posted by mason on November 1, 2006 at 5:52 PM PST

1) I often find myself writing factory type interfaces, but one of the problems with interfaces in Java is that, while you can include static variables, there isn't any way to include static methods.

This means if you want your getInstance and setInstance methods inside the factory interface itself, you either have to resort to using a static variable or you have to create a second clas

Rechecking Double Checking

Posted by mason on September 11, 2006 at 11:06 AM PDT

If you are new to the concept, here's a refresher. Or if you prefer the layman's version:

Let's say you want to have a lazily initialized singleton.

Blocks and Locks

Posted by mason on September 8, 2006 at 10:14 AM PDT

Code block, in a nutshell, are basically just "lambda" functions (also known as closures in many other languages, most apropos might be Groovy) that are tied directly to a single method call.

The Impending "Implementation Independent" Interface

Posted by mason on June 30, 2006 at 3:03 PM PDT

What is a Widget?

When I say “Widget”, what kinds of things come to mind? If asked you to name a few widgets that you know of, what would you say? A button, perhaps? A scroll bar? Maybe tabs, check boxes, of course, and radio buttons, spinners, sliders and more? On and on I am sure you can come up with examples of widgets...

A tale of two GUIs.

Posted by mason on June 29, 2006 at 1:48 AM PDT

The argument started with the web developers assertion that unit tests could test just about everything. And to look at her code, you'd almost feel the same way. As a TDD proponent, she had nearly twice as many tests as she has methods and classes. Not a single like was untested... Well, that probably isn't 100% true, but it damn near looked like it.

Subversive SVN Part II: Downrush

Posted by mason on May 10, 2006 at 1:29 PM PDT

So, for those of you who missed the first blog entry about this, I'll recap. The basic idea is the creation of an update/install mechanism that is as easy to use for developers as SVN.

Subversive SVN

Posted by mason on April 27, 2006 at 1:12 PM PDT

So, now, as with many of these "spark of insight" ideas, it may very well be that it has been thought of and discarded over and over again, and I am just one of the many who will soon find myself with a sheepish grin and a dunce cap on my head...

JMF, wherefor art thou?

Posted by mason on April 10, 2005 at 8:33 AM PDT

Little known to most people who've tried to put a JMF application together is the fact that it seems to now be completely unsupported by Sun. Admittedly, it's a tough API to code for.

A Dip in the Autopool

Posted by mason on October 3, 2004 at 12:05 AM PDT

Object pooling in Java is generally a bad idea for many reasons, not the least of which it has the nasty ability to actually cause the very performance problems you are trying to solve on modern JVMs, but there are always cases where the resources available to your application are in such limited supply that you really don't have a choice in the matter.

Two bugs in two years, new features every week, deadlines met each and every time… and what’s with these ruby slippers?

Posted by mason on September 21, 2004 at 6:32 PM PDT

It's been just under a year now since I started practicing XP programming, and I have to admit, as much as it is anathema to my style of programming, it is a flawless system that far surpasses the wildest dreams of my programming expectations.