Software Developer and Performance Engineer
Archive for June, 2009
Week in Review – 27 June 2009
Jun 27th
Information
- · Java EE, BPEL, SOA: XMLPATTERN and generated XML indexes
By Åukasz
From the tests I have conducted, XML index on pesel element added ~15% performance gain. Not something extraordinary, but it proves that XML indexes work
Summary That’s not all on IBM DB2 pureXML. …
- · analysis 102: A good design is mandatory if you want good performance.
By mx
“The First Rule of Program Optimization: Don’t do it. The Second Rule of Program Optimization (for experts only!): Don’t do it yet.†Michael A. Jackson I think the problem stems from a question of value. Developers still see code that runs … This code takes less then 1 ms to execute (printed difference is ZERO)… on my fairly powerful laptop with Java 6. If I up the array size to 1000, it takes 31 ms… I had to up the array size to 1000 to up the time taken to 31 ms. …
- · InfoQ: Google Calls for a Joint Effort to Speed Up the Internet
By Abel Avram
Google shares research data, web site speed optimization tutorials, recorded presentations, links to lots of performance optimization tools, and a discussion group inviting everyone to share ideas on how to make the web faster. …
- · The Geek Head: Important but Ignored performance tips for Tomcat.
By Geek Head
The above mentioned options are used to define size of java heap try to set as low as possible because setting too high wastes memory and can cause long garbage collection pauses -XX:MYSize -XX:MyRatio. Set to 25% to 33% of total java …
- · Google wants to make the Web fasterNetwork Performance Blog …
By speeding up the Web, Google is pushing for faster adoption of new standards, such as HTML 5, designed to bring multimedia applications away from plug-ins such as Flash, Silverlight, and Java, and towards putting it into the interpreted …
Tools
- · Startup Boosts App Speed With Virtualized Server Memory
InformationWeek – Manhasset,NY,USA
RNAcache seeks to improve application performance by making a continuous file, frequently used software objects, large blocks of data or other large data …
- · 20 Linux System Monitoring Tools Every SysAdmin Should Know
By Vivek Gite
Top 20 Linux Server Performance Monitoring Tools To Solve Server Bottlenecks Issues related to CPU, Memory, Disk, and networking subsystems. …
How To
- · Learn How to Exploit Multiple Cores for Better Performance and …
By Todd Hoff
Learn How to Exploit Multiple Cores for Better Performance and Scalability (93). InfoQueue has this excellent talk by Brian Goetz on the new features being added to Java SE 7 that will allow programmers to fully exploit our massively …
Develop Code with Performance Testing In Mind
Jun 22nd
Performance testing is usually done toward the end of a project, or worse, only when performance is found to be less than ideal. There is little time to get things done, and there is a lot of pressure to deliver on time. The testing team is usually under a lot of pressure to get things done. There are a number of things a developer can do that can make a huge difference for the testing team.
- Name all the components of a Swing application. Many testing frameworks for Swing use names to identify components. If there are no names provided, it becomes more difficult to make tests that work with the application. The tester must find another way, usually by traversing the object hierarchy, to find a component.
- Make use of an INFO logging level. Tools like Log4J have a number of levels for writing information to files. Writing information useful to testers at this level means they can search logs for the information they are looking for. Success messages, method names, class names, anything that a tester may be looking for can be output in this manner.
- Another useful item that can be output at the INFO level is performance information. Putting this data out in a format that is easily extracted can provide a way to determine where a performance problem is.
- Provide helper and utility classes. These special objects can provide an API to the system that is easier to use and understand. It most likely won’t provide full access to the system’s features, but it will be much easier to use and can give testers an easier time to test the system. If developers are following Agile methods such as test first design, these tests should be made available to the testing team. Granted, these are only useful for people who know how to write code, but frequently the developer becomes the tester on a project and having these special objects can make a tedious job more bearable.
- Interview the test team and find out what problems they run into. Their view of the system is much different than the developer’s and could lead to a solution that is better for everyone. Frequently the things they want which will make their lives easier, turn out to make developers lives easier as well.
Week in Review – 20 June 2009
Jun 20th
Information
- Classpath Hell Just Froze Over – Discussion about project jigsaw and how it will rid Java of of classpath problems.
- A Developers Guide To Load Testing – Slides about load testing by Simon Brown
Tools
- Java for Mac OS X Update Released – A long standing bug has finally been fixed in Java on the Mac OS X platform.
How To
- Building a terabyte-scale data cycle at LinkedIn with Hadoop and Project Voldemort – Lengthy discussion about how to build the system. Great to see how others are architecting systems to solve problems.
What This Country Needs is a Land-Based Ferry
Jun 13th
Having lived in Seattle, Washington for 2 years, one of the things I grew to love was their public transportation system. I took the bus mostly, but what really impressed me was their ferry system. Getting to and from the islands was fairly easy. Go to a terminal, pay your fare, and get on the boat. If you wanted to take your car with you, just drive it on and pay the extra fee. Once the ferry left you could leave the car and spend some time in their lounge. 30 minutes to an hour later, you walked or drove off the ferry and went to your destination. They even installed free Internet access while I was there.
I got to thinking that what the United States needs is a land-based “ferry” system. Just like the Seattle ferries, you go to the nearest loading point, walk or drive on, and then go up to the lounge and enjoy the trip. At your destination you walk or drive off, and head to where you are going.
What got me thinking about this recently is the need to take a few trips to Chicago, Illinois. I have the option to fly, but I hate having to get to the airport 2 hours early, walk forever to the gate, and then sit there waiting to board. The planes are small, loud, and full of people enjoying the situation as much as I am. At least I am able to get some work done, but the trip is anything but relaxing.
I live in Cincinnati, OH and my destination on the north side of Chicago is 338 miles one way. It is about a 5.5 hour drive but the only thing productive I can do is listen to an audio book on my iPod using a FM transmitter of course. The trip is not as stressful, but I have to watch the road all the time and driving that far makes me tired. If there were a land-based ferry though, I could go to the nearest loading station, drive on, and then do something productive during the trip to Chicago. Once there, drive off and head to my destination. I think demand would be huge since the benefits are so great.
- I can do anything I wanted for the next 5 hours. Sleep, read, watch a movie on my laptop, make phone calls, pretty much anything I could do on an airplane except with a lot more leg room and a lot less noise.
- My vehicle won’t rack up a bunch of extra miles. Less wear and tear so it should last a lot longer. I won’t have to rent a car once I get there. Just drive to wherever I need to go.
- This means fewer vehicles on Interstate highways.
- Fewer accidents from tired drivers trying to push themselves too hard.
- More productivity since there is no need to watch the road. Even if I just sleep the whole trip, I will be refreshed and ready to go instead of suffering from road fatigue.
In the news recently there has been a lot of talk about building a high-speed train connecting Cleveland, Columbus, and Cincinnati Ohio. I wondered if I would ever use such a train to get to Columbus, OH where my mom lives. Honestly, I doubt I ever would. A high speed train sounds nice, but how do I get to my mother’s house once I get to Columbus. She lives 17 miles from downtown, but is still within the city limits. I wouldn’t have my car with me so I would have to rent one. Now my trip has cost me more money, and it has become less convenient. One might suggest that she pick me up at the terminal. If it was just myself that would work, but there are 6 people in my family and there is no way we would all fit. I also have to have car seats as I still have little children. It just becomes a huge hassle, and not worth the time savings a high-speed train would provide.
Instead of spending tons of money on high-speed trains that just take people from place to place really fast, create a system that takes them and their vehicle from place to place in a reasonable amount of time. The cost to build such a system would probably be much more reasonable, and people would use it provided that trips were offered frequently or better yet, on demand. It would provide the opportunity of spending the time on better things. And it would cut down on fuel consumption, green house gas emission, and many other enviornmental benefits. I would be very happy to use such a system to get to the places I need to go. Although I wouldn’t get there as fast as a high-speed train, I’m saving in many other ways and I don’t have the problem of how do I get from the terminal to where I need to go.
I don’t think America will give up the freedom it has by driving cars. They are a necessity as much as they are a convenience. People’s lives are not predictable enough for them to loose the flexibility a car gives them. For trips between cities though, it makes sense to have an option besides flying. The drive from Cincinnati to Columbus takes 2 hours. This is shorter than a flight would be if you measure the time it takes to get from door to door. The drive is long enough though to be boring and justifies the expense of using a land-based ferry. Would I take a land-ferry to Columbus? Most definitely. I have better things to do with my time than to stare ahead at the road and making sure I stay between the lines. Would I use the system to go to Seattle? Probably not unless it could be done much quicker than the 55 hours projected by Amtrak. Spending 5 to 6 hours to get to Chicago without having to drive the entire way, and having use of my own car once I got there, sounds like a great deal and could be an enjoyable trip.