There is a PMD rule that checks for mutators (getters and setters) on Java Beans: BeanMembersShouldSerialize. I have a lot of these violations in my code. I’d rather understand the issue than just turn it off, but I’m struggling with what it means.
What I learned is: being Serializable does not make a class a Java Bean.
But PMD thinks my object is a bean. Why? Continue reading
Joel Spolsky‘s latest blog post is entitled “The Duct Tape Programmer” and is getting a lot of attention out there. Uncle Bob says he agrees with most of it, if you ignore the details. (Really!?)
My take is that the Duct Tape Programmer is the type to “git-er-done”. And for small apps that don’t have a future, that’s fine. But if you are to build an app that can easily have features added, then this is not the way to go.
The Duct Tape Programmer mentioned in the article is Jamie Zawinski. He used (?) to work for Netscape. And says “It was decisions like not using C++ and not using threads that made us ship the product on time.” Yea, but what eventually happened to Netscape? Sure, Netscape got it’s browser out the door, but now where are they?
Even the example given about a go-cart seems to strengthen my point: sure, the duct taped go-cart will be shipped faster, but how many times can it race?
It just seems to emphasize my point that duct tape programming is fine for small apps with no future.
One of my goals for my websites, including this one, is to look presentable both in print and on a handheld. Well, I found out today that this blog doesn’t look so hot in either mode. I also found out that my tool for rounding corners (a jQuery plugin) runs even when in print mode. So I’ve got to change my site to use CSS so the rounded corners don’t show up in print mode.
(If you hover over “CSS” you’ll see that I’m using the abbr tag. For a good article of abbr vs. acronym, read this.)
I’ve been playing with YSlow and WebsiteOptimization.com and I was wondering what would be the smallest page I could get. Could I score 100% and still have a nice page?
I started creating a Java servlet last night. This would just be an exercise. It would have no practical use.
This app would be like Twitter, but would display things in a pretty timeline. Maybe allow for categorization of events, such as “epic”, “important”, “petty”.
This would be simple address book that displays the relationships between people. For example, if viewing myself, I would see “boss” as “Tom”. Then I could click on Tom and be taken to his information. I would see “Adam” as an “employee”.
I have a bunch of program ideas floating around in my head. I hope to list them here sometime. I’m hoping if I write them down somewhere, then I can stop thinking about them all the time!