Archives
Progress?
November 25th, 2003
More and more people are boasting about Maven (like him), I decided to try it too. First obstacle to overcome (of course): http proxy. Luckily, the Maven people have written a nice FAQ. So I put
maven.proxy.host = corpproxy.mmm.comin my build.properties (nicely put in ${user.home}, yes). It didn't work for me. After an hour of fiddling about, suddenly it came to me. I changed the above to
maven.proxy.port = 3128
maven.proxy.host = corpproxy.mmm.comAnd it worked!
maven.proxy.port = 3128
Did you spot the difference yet? Hint: try counting the spaces after 3128. Jup. There cannot be any, or it won't work. I very vividly remember, when starting to use Ant, we were all making fun of the poor people using make, because they had to deal with tabs and spaces and the lot. Now, we have progressed so far to be at that same point. History just keeps on repeating itself.
OK, onto the next error...
JavaPolis
November 24th, 2003
- JSR-176: Forthcoming Java Programming Language Features by Neal Gafter [ Sun Microsystems ]. Always nice to know what will be coming. Plus, the other sessions look a bit less interesting for me: I've no J2ME experience, ebXML is something I won't use in the short term, and I think I've worked enough with Struts to know what's going to be told there.
- AspectWerkz - fluid AOP for Java by Jonas Boner [LogicAspects]. I've heard some fuzz about AspectWerkz. This might tell me what it is about.
- Java Performance Tuning by Jack Shirazi & Kirk Pepperdine [ JavaPerformanceTuning.com ]: something most Java developers aren't into (me included): performance. And when performance issues do rise, you don't have a clue where to begin. So I hope these guys hand some pointers.
- Relational Persistence For Idiomatic Java by Christian Bauer [Hibernate]: "Idiomatic Java" looks like a weird term, but Hibernate is interesting. I hope to include it in our project RSN, so let's try to learn something here.
- For the last session that day, I have no idea. I might visit Werner Ramaekers, just to be able to put a face on the blog.
- JSR-127: Java Server Faces by Craig R. McClanahan [ Sun Microsystems ]: new and upcoming, thus interesting.
- Know thy enemy by Andre Marien [ Ubizen ]: I know a few people who work at Ubizen. Hope to meet them here.
- SCRUM: A Methodology to Keep the Team Going by Joseph Pelrine [MetaProg]: never heard of it, but lately, I'm becoming more and more interested in how to communicate with people.
- JAAS, authentication and user-based authorization on the Java platform by Frank Piessens [ K.U.L.]: Again one for the speaker. Frank has been my teacher at KULeuven for some courses, and he's a very nice guy. We've even almost been brothers-in-law, but that's another story altogether. (Hey, he seems to have made it to professor now. Congrats, Frank!)
- What AOP brings to the Java developer by Wouter Joosen[ KULeuven ]: I hope to finally find some meat on the bone about AOP here. Please other examples than "logging at crosspoints (or whatever they're called)".
Nephilim
November 24th, 2003
Age
November 21st, 2003
Documentation tools
November 21st, 2003
Via via, I discovered AurigaDoc today. A tool to generate documentation in several formats - worth checking out, I thought. And it indeed seems to do a pretty decent job. However, when I saw that you had to manually maintain the titles in your TOC, my enthusiasm very quickly faded away. The fact that documents seemed to be interspersed with <table> tags, didn't help much.
Forrest does a much better job in separating all the concerns. I am a big fan of Forrest. The only drawback that I have found was that you couldn't generate a PDF that covers your whole documentation. Since this blog entry was written several months ago, I decided to re-investigate this. And now it is possible to generate a single site-wide PDF! In your forrest.properties file, just set the project.start-uri to site.html, and both the single-page and the multiple-page versions (in HTML and PDF) are generated. Thank you Forrest!
Tested with latest CVS version. I don't know how long it has been in there.
Well what'ya know...
November 20th, 2003
The first time I disagree with my favorite unix girl enough to blog about it.
Fair enough, she is upset because, if you install Windows these days, it is very likely to be virus-infected before you can even reach windowsupdate.com (although I don't have a problem there, being behind an ISP proxy and all...) But then she gets off in this all-too-familiar "hehe, this can't happen on unix, hehe, you stupid windows-users".
I don't buy that. For one, she admits herself:
(and most people who use linux know better)This is the main difference between any Windows and Unix installation. The users. I've not been virus-infected (yet?), but I've been using Windows for quite some time now. However, I do have received my share of "BritneySpears.scr". I'm just smart enough not to click those, as are most people who use Linux. The difference is that people who aren't smart/interested enough to know this (hey, maybe they spend their time saving the lifes of too-soon-born children), usually won't run Linux.
To a lesser extent, I also disagree with
the virus won't be able to do anything bad to the sytemMost of Windows' viruses these days do nothing else than sending themselves around a bit, using the user's address book. As soon as there's a mail program available on Linux that allows you address the address book programatically, you'll have the same problems there. This has nothing to do with the OS, but with the application.
Look at me, defending Microsoft here. It must be that I'm getting old and understanding...
And you thought your job was a nightmare
November 18th, 2003
I'm a craftsman now
November 15th, 2003
I've just (finally) finished The Pragmatic Programmer: From Journeyman to Master. Great read. I seem to have worked already following most of the principles explained in this book, but it is nice to have them spelled out for you. It reassures that you're on the right track, helps you to understand yourself and your way of programming, and helps you to find areas in which you can improve yourself.
For those who haven't read the book, a short synopsis: apply the programming/analysis/managing/.... methodologies you know, but without being zealous about it. Use UML to draft your class model, but don't restrict your use case by drawing a puppet, an arrow and a balloon. Write test cases, but don't write more than the return is worth. "Pragmatic" in every way.
This book has already spawned my interest in two other books: Surviving Object-Oriented Projects, and a good book on perl. Speaking of which: do you know of any?
Blogiversary
November 15th, 2003
Google bites its own tail
November 12th, 2003
For CSS developers
November 7th, 2003
Fonts again
November 7th, 2003
A classic
November 7th, 2003
Pools and PreparedStatements
November 5th, 2003
A few months ago, we encountered performance problems when accessing our DB. After some searching, we quickly found out that PreparedStatements actually are better than plain Statements (don't ask). But this only is the case if you can reuse the same PreparedStatement over and over again, on the same connection. Since we were using a Connection pool, the question was raised whether putting a Connection back in the pool wouldn't "erase" its PreparedStatement pool. Since we didn't find any answer to this question, we decided to take the safe way, and build our own PreparedStatementCache. Do I surprise you if I tell you that this isn't as easy as it seems? Especially if you start mixing in Threads to clean up statements and the like....
To make a long story short, the PreparedStatementCache kept causing headaches. Every now and then, we encountered closed PreparedStatements on places where they weren't meant to be. So yesterday, I weeded everything away again, replacing everything with a ConnectionPool from Oracle (instead of the single connection we were using before). The major question remained though: If we put Connections back into the pool, will their PreparedStatements be reusable?
And this morning, I googled to finally find this article. Praise the Lord. Months of headaches down the drain. I'm a happy man today.
Update: read this too. Very interesting.
Update 2: I still wasn't very happy with the solution we got, because it was very Oracle-dependent (and in fact even dependent on the version of classes12.zip you were using). Thanks to a comment from Wim, I found out that DBCP also does Statement caching. I had heard about DBCP before, and have investigated it for this, but didn't find the reference to Statement caching. Thanks Wim! However, according to Koen, c3p0 should do a better job than DBCP. And it also has the StatementCaching option, so we went for that one. Fingers crossed that it passes the real-life tests.
Hello, Mr Van den Brande!
November 3rd, 2003
Blogging seems to be contagious: David has picked it up too (without much fuss, but you don't hide from referer logs).
David is an ex-collegue of mine, who started his career at the exact same time and place as me. Apparently, he's now working at a job that I turned down because of a bad commute. I hope to read he's happy there. Welcome!
Update: David seems to have forgotten to have an e-mail address available. So David: congrats with your daughter! May she make you proud every day (and grant you some sleep now and then too).
You're looking for something older?
- February 2012
- January 2012
- December 2011
- November 2011
- October 2011
- September 2011
- August 2011
- July 2011
- June 2011
- May 2011
- April 2011
- March 2011
- February 2011
- January 2011
- December 2010
- November 2010
- October 2010
- September 2010
- August 2010
- July 2010
- June 2010
- May 2010
- April 2010
- March 2010
- February 2010
- January 2010
- December 2009
- November 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- March 2009
- February 2009
- January 2009
- December 2008
- November 2008
- October 2008
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007
- December 2006
- November 2006
- October 2006
- September 2006
- August 2006
- July 2006
- June 2006
- May 2006
- April 2006
- March 2006
- February 2006
- January 2006
- December 2005
- November 2005
- October 2005
- September 2005
- August 2005
- July 2005
- June 2005
- May 2005
- April 2005
- March 2005
- February 2005
- January 2005
- December 2004
- November 2004
- October 2004
- September 2004
- August 2004
- July 2004
- June 2004
- May 2004
- April 2004
- March 2004
- February 2004
- January 2004
- December 2003
- November 2003
- October 2003
- September 2003
- August 2003
- July 2003
- June 2003
- May 2003
- April 2003
- March 2003
- February 2003
- January 2003
- December 2002
- November 2002
