JVM Garbage Collection presentation from IBM
Be the 1st to comment!

The ServerSide has posted an interview with Dr. Holly Cummins from IBM who recently gave a presentation on Garbage Collection. She expresses her disagreement with some common beliefs about GC, and gives some recommendations for understanding your verbose GC and using it to tune the GC.

Some quotes from her presentation are highlighted below.

In response to the claim:

Garbage collection does work and causes pauses and the pauses prevent my application from doing work so the shorter the pause the better.

Dr. Cummins answers:

Not true! Even when a garbage collector spends a lot of time paused, application performance may be better.

Dr. Cummins also disagrees with the claim:

OK, I get that the application would go faster if I could tolerate long pauses, but response times are critical for my application so the shorter the pause times, the better off I will be”

She goes on to give some recommendations on adjusting heap size, choosing the right GC policy, and using a toolkit from IBM.

The slides are provided online in a PDF.

The video can be seen, along with accompanying discussion on the Server Side (once everyone gets over her appearance).

Tutorial for JasperReports, iReport, and JFreeChart
Be the 1st to comment!

This tutorial discusses building JasperReports in iReport using charts with JFreeChart.

Building Dynamic JasperReports
Be the 1st to comment!

If your reporting needs require more dynamic reports, with user control over the elements to be included in the report, developerWorks has an article on Generating XML templates for JasperReports using Rational Application Developer.

JasperReports helps organizations generate affordable business data reports using an XML template. The XML template provides the key report information such as the SQL query, report title, column headers, and database fields. This article discusses how to generate the XML template to allow a user to specify which report columns should be included.

Highlighting Odd and Even Rows in JasperReports
Be the 1st to comment!

In order to highlight odd or even rows with a background color, in JasperReports, first create a rectangle element with a background of your color choice, and send it to the background (in JasperAssistant, right click on the rectangle, choose Arrange and then Send to Back). Second, use the following expression to set when the element should appear, by placing the expression in the Print When Expression field of the rectangle element. Where the $V{PAGE_COUNT} appears, you can use that, to base it on the row number on the page, or use $V{REPORT_COUNT} to base it on the row within the report. Also, if you are using a group, you can use $V{groupname_COUNT} where groupname is replaced with the name of your group. The expression below will then test the row number within the Page, Report, or Group (whichever you selected) and if its divisible by 2, it will display the rectangle element with the background color.

new Boolean( $V{PAGE_COUNT}.intValue() % 2 ==0 )
Can an Enterprise Architect innovate simply?
Be the 1st to comment!

Ironically, the very existence of an Enterprise Architect may result in your company’s IT system being anything but innovative and simple. Is it innovative to use AJAX because it’s cool? Is it simple to use EJB’s because your IDE has a nifty wizard for them?

I’m not down on the need for an Enterprise Architect – that is how I would describe myself. Yet, companies need to be really careful when they hire one of these that they don’t end up with architects who are so up with the latest technologies, that they become consumed with using them at every turn, even when not necessary (and I would classify most of the new technologies as unnecessary for the vast majority of projects.)

See my post on the costs and overhead of adopting new technologies. Far too many companies have had their software over architected, never benefiting from it, and in many cases having it re-designed when the next architect is hired.

I don’t disagree with anything in the original post, but I’ve seen this technology abuse so much in this field, and seen first hand how much it costs companies, that I also have to add my word of warning.

So the answer to the question of this post, is most definitely yes, that’s the entire reason for hiring one, however, with a big condition added, which is, the company should not qualify the candidate simply for their knowledge of all the technologies out there. There needs to be a sound and conservative approach to software architecture that will prevent the architect from over complicating the solution.

Page 1 of 3123