Silly statement of the month: Java “Generics Considered Harmful”

General No Comments »

I just read through Ken Arnold’s blog entry where he claims that Java generics may be harmful. His point was that generics are too hard to explain (he’s writing a book) and have some limitations so they should be considered harmful. What he seems to misunderstand is that generics are not designed for textbook examples, they’re designed for real-world complex use cases where they may prove to be invaluable. And, yes, software development is difficult and complex software development is even more difficult so just because something is hard to explain doesn’t make it harmful — it just makes it hard. I’ve been writing Java 5 software for the medical industry for almost a year now and I couldn’t live without generics.

Do we technologists care about our customers?

General No Comments »

Software developent is a complex process, driven by technology and innovation. However, as developers we often rely on a product-focus driven by innovations in technology rather than by the needs of the customer. Developers love to sit in engineering meetings where we talk about elegance of code and architecture but rarely in the context of what customers actually need. Here are some guidelines to follow for your next product development meeting:

  • Spend less time talking about design and architecture and more about features and benefits directly linkable to customer use.
  • Instead of worrying about how long it will take to develop certain functionality and what it will cost, try to figure out the value proposition to the customer. If it’s high value and will sell, the cost is not really relevant.
  • Instead of worrying about the maintenance of code you write and how hard it might be to build, consider how easy it will be users to deploy the software and whether it’s easy to use.
  • Spend less time thinking about how unique your technologies are and instead focus on how unique the product’s functionality is and whether users will actually use it and benefit from it.

The simple rule is if you’re talking more about technology than your customer you’re probably wasting your time.

“Typesafe, Ontology Driven RDF Access from Java”

General No Comments »

I’ve blogged recently about ontologies, semantic frameworks, and other knowledge management tools like Protege. If you were interested in those topics, check out Jastor, which allows OWL (an XML format for ontology storage) files to generate Java interfaces and classes.

Automate runtime classfile modification

General No Comments »

I ran across this great article that demonstrates how to change Java classes on the fly (at load time). The article discusses how to automatically implement the useful but difficult to maintain toString() methods we’re all familiar with but has given me dozens of new ideas for my own implementations. Worth checking out indeed.

AJAX Patterns and Frameworks

General No Comments »

I’ve been doing AJAX programming for several years (ever since I learned about XMLHttpRequest) but of course it didn’t have a cool name before. Many of the patterns I’ve used have not been cataloged before but I was delighted to run across this site that speaks specifically to AJAX Patterns. My favorite page is on AJAX Frameworks because even though I’ve built thousands of lines of JavaScript code to support my AJAX needs many of the frameworks on that page seem more reusable so I’ll be switching out some of my old code and replace it with one or more of the newer ones.


WordPress Theme & Icons by N.Design Studio
Entries RSS Comments RSS Login