Monday, July 31, 2006

The Java XPath API: Querying XML from Java programs

"XPath expressions are much easier to write than detailed Document Object Model (DOM) navigation code. When you need to extract information from an XML document, the quickest and simplest way is to embed an XPath expression inside your Java™ program. Java 5 introduces the javax.xml.xpath package, an XML object-model independent library for querying documents with XPath." says Elliotte Rusty Harold (elharo@metalab.unc.edu), Adjunct Professor, Polytechnic University

Read More at IBM developerWorks >>

Modern C++ Style : A Conversation with Bjarne Stroustrup, Part II by Bill Venners

"Bjarne Stroustrup talks with Bill Venners about using multiple inheritance and pure abstract classes, multi-paradigm programming, and the technique of resource acquisition is initialization. "

Read More >>

Friday, July 28, 2006

Web Search for a Planet: The Google Cluster Architecture

"Amenable to extensive parallelization, Google's Web search application lets different queries run on different processors and, by partitioning the overall index, also lets a single query use multiple processors. To handle this workload, Google's architecture features clusters of more than 15,000 commodity class PCs with fault-tolerant software. This architecture achieves superior performance at a fraction of the cost of a system built from fewer, but more expensive, high-end servers" by Luiz Andre Barroso, Jeffrey Dean, Urs Holzle, IEEE Micro, 2003
Read More>>

Wednesday, July 26, 2006

NeRDTV interview with Tim O'Reilly (Open Source Pioneer)

Open Source pioneer Tim O'Reilly noticed that free software didn't come with free printed manuals and so a publishing empire was born.
Watch here >>

No Silver Bullet: Essence and Accidents of Software Engineering

A Land mark article by Brooks, F. P. author of the classic
"The Mythical Man-Month" Proceedings of the IFIP Tenth World Computing Conference, pp. 1069-1076, 1986.
"Of all the monsters that fill the nightmares of our folklore, none terrify more than werewolves, because they transform unexpectedly from the familiar into horrors. For these, one seeks bullets of silver that can magically lay them to rest."
Read More >>

"Breakthrough Books" - Timeless Classics listed by Theresa Gonzalez

"Books inspire software developers to stay current, improve their processes, and share learned ideas and concepts with colleagues. Books by Gerry Weinberg and Fred Brooks, among others, have stood the test of time because their messages are as true today as they were more than two decades ago. I asked some industry notables what books influenced their lives and careers, and what books they consider timeless additions to any developer’s library."
Read More >>

Are You a Promotable Developer? by Donna Davis on Dr.Dobbs portal

"Are you the heir apparent in your department? Or are you the underappreciated, overworked drudge whose career has slowed to a crawl? Gone are the days when promotion was a foregone conclusion based merely on time served—today's promotable software developer might be the rookie who was hired just last month. Instead of duration, advancement is now a matter of the triple A: accomplishment, ability and attitude." say Donna Davis

Read More >>

Monday, July 24, 2006

"Developer Testing" - by Kent Beck (Audio of the presentation)

"Kent Beck is widely recognized as the father of eXtreme Programming and JUnit. Kent's other contributions to software development include patterns for software, and the rediscovery of test-first programming. He is the author/co-author of Extreme Programming Explained: Embrace Change 2nd Edition, Contributing to Eclipse, Test-Driven Development: By Example, Planning Extreme Programming, The Smalltalk Best Practice Patterns, and the JUnit Pocket Guide."

Download audio from IT Conversations >>

"On the role of scientific thought" by Prof.Dr.Edsger W.Dijkstra

"Whether the misappreciation of the proper role of scientific thought that I observe within the "computing community" is a phenomenon that is specific for the computing community, or whether it also a current phenomenon in other disciplines, is not for me to judge. One thing seems certain: in the computing community itself we can find enough historical explanation, and we don't need to look for outside influences when we try to understand how the phenomenon came about. (This is not meant to say, that those outside influences have been absent!)"
Read More >>

Tuning Garbage Collection with the 5.0 Java[TM] Virtual Machine

"Garbage collection can become a bottleneck in different applications depending on the requirements of the applications. By understanding the requirements of the application and the garbage collection options, it is possible to minimize the impact of garbage collection."
"This “smarter choice” of the garbage collector is generally better but is not always the best. For the user who wants to make their own choice of garbage collectors, this document will provide information on which to base that choice. This will first include the general features of the garbage collections and tuning options to take the best advantage of those features. The examples are given in the context of the serial, stop-the-world collector. Then specific features of the other collectors will be discussed along with factors that should considered when choosing one of the other collectors."
Read More at Java.sun.com >>

Friday, July 21, 2006

A Case-Study in Encoding Configuration Languages: Multiple Class Loaders

The authors investigate on the Java mechanisms of multiple loaders, giving both a theoretical insight and a practical approach to safer class loading.
- by Sonia Fagorzi and Elena Zucca

A first look at Apache Geronimo

Start developing and deploying J2EE apps on the first open source J2EE server
-by Lajos Moczar

Error Messages: What's the Problem?

Real-world tales of woe shed some light.
- by Paul P. Maglio and Eser Kandogan, IBM Research in ACM Queue vol. 2, no. 8 - November 2004

Thursday, July 20, 2006

An Index of Some Classic Testing Mistakes, With Discussion

A useful index prepared by Briam Marick, recommended by Roger S. Pressman.

The Fever is Real

"The software engineering industry was desperate for standardization to drive badly needed unification.
...
Furthermore, the root causes of this fever, in general, have nothing to do with the UML itself: Rather, this fever and its various manifestations are largely symptoms of deeper ills in an organization's software development practices. "
-says Grady Booch, IBM Fellow and one of the original developers of UML in response to "Death by UML Fever".

Death by UML Fever

'Self-diagnosis and early treatment are crucial in the fight against UML Fever." says Alex E. Bell, The Boeing Company in ACM Queue vol. 2, no. 1 - March 2004

The Testing Toolbox

"With these 10 tools, Java scalability, performance and functionality are no longer elusive. Chockful of techniques, they enable software developers, QA technicians and IT managers to effectively proof programs."
- by Frank Cohen in Dr.Dobb's Portal June 11, 2004

Abstraction Penalties Are No Laughing Matter

"Sometimes optimization isn't all it's cracked up to be."
- Andrew Koenig and Barbara Moo in Dr.Dobb's portal March 01, 2004

An Open Web Services Architecture

"The name of the game is web services—sophisticated network software designed to bring us what we need, when we need it, through any device we choose. "
- by Stans Kleijnen and Srikanth Raju, Sun Microsystems in ACM Queue vol. 1, no. 1 - March 2003

"How Management Destroys Employee Enthusiasm" - A Q&A with industrial psychologist and author David Sirota

“People ask the basic question: How do you motivate employees? I say that’s a silly question. The real question is: How do you keep management from destroying employee motivation?” Sirota says.

Interesting!

The Creative Manager

"Osmotic Communication and the Cone of Silence are neatly opposing strategies—balancing them can bring great benefits to your team."
- by Allistair Cockburn

Wiki History

"Wiki-wiki" means "hurry quick" in Hawaiian, it seems.
The first wiki, WikiWikiWeb, is named after the "Wiki Wiki" line of Chance RT-52 buses in Honolulu International Airport, Hawaii. It was created in 1994 and installed on the web in 1995 by Ward Cunningham.

Read Wiki History in Ward Cunningham's words at: http://c2.com/cgi/wiki?WikiHistory

"In the Beginning: Personal Recollections of Software Pioneers" -Robert L. Glass

"The stories in this book clearly show modern concepts such as data abstraction, modularity, and structured approaches date much earlier in the field than their appearance in academic literature. These stories help capture the true evolution. The book illustrates human experiences and industry turning points through personal recollections of the pioneers themselves."

"In compiling this book, Glass (who wears the hats of a programmer, author, and editor) asked computer pioneers David Myers, Watts Humphrey, Norman Schneidewind, Barry Boehm, Robert Britcher, Donald Reifer, Frank Land, Ben Matley, Harold Highland, Robert Babor, John Bennett, Bruce Blum, Peter Denning, and Raymond Houghton for their recollections of computing way back when-well, mainly in the 1960s. In response, the contributors present a lively set of essays describing the world of computer programming back when punched cards ruled the rack"
- You can dig out Jonathan Erickson's review of this book at www.ddj.com

Sarbanes-Oxley (SOX)—Impact on Security In Software

"Developing is a lot more than just coding. You must also understand some of the business issues of the companies for whom you are programming. An important component of many businesses is the Sarbanes-Oxley Act (SOX) of 2002."
- by Keith Pasley, CISSP in developer.com

Streams and Standards: Delivering Mobile Video

"The era of video served up to mobile phones has arrived and threatens to be the next “killer app” after wireless calling itself."
- by TOM GERSTEL, TURNER BROADCASTING SYSTEM in ACM Queue vol. 3, no. 4 - May 2005

AJAX: Asynchronous Java + XML?

"Gmail, GoogleSuggest, and GoogleMap opened the eyes for millions of netizens to a "new" Web: a smarter, more responsive, and more interactive Web that does not employ a foolhardy "click, wait, and refresh" approach.For the first time, the vast majority realize the Web can be much better than what they have assumed."
- by By Coach K. Wei in developer.com

The C++ Style Sweet Spot

"Bjarne Stroustrup talks with Bill Venners about the perils of staying too low level and venturing too object-oriented in C++ programming style. "
-- A Conversation with Bjarne Stroustrup, Part Iby Bill VennersOctober 13, 2003 on artima.com

"Programming as Theory Building" - by Peter Naur

"Peter Naur, widely known as one of the authors of the programming language syntax notation "Backus-Naur Form" (BNF), wrote "Programming as Theory Building" in 1985. It was reprinted in his collection of works, Computing: A Human Activity (Naur 1992).

This article is, to my mind, the most accurate account of what goes on in designing and coding a program. I refer to it regularly when discussing how much documentation to create, how to pass along tacit knowledge, and the value of the XP's metaphor-setting exercise. It also provides a way to examine a methodology's economic structure." says Alistair Cockburn

Indeed!

PatternShare Wiki

Microsoft released a community resource called PatternShare. The idea is to bring together pattern summaries from many pattern authors and provide a platform for discussion and further exploration of the interconnections between them. Much of the work was led by Ward Cunningham, whose pattern lineage is second to none. You'll find patterns there from Martin Fowler, GOF, POSA, Hohpe/Woolf, Evans, and Microsoft.

Errant Architectures

"When we let objects wander, we all pay the performance price. Here's how to avoid distributed dystopia's overhead of remote procedure calls and ignore middleware's siren song." -Martin Fowler in Dr.Dobb's Portal March 2003

"Mal Managerium: A Field Guide" - by Phillip Laplante in ACM Queue vol. 3, no. 4 - May 2005

"I have seen the enemy, and he is me.
Please allow me the pleasure of leading you on an “office safari,” so to speak. On today’s journey we’ll travel the corridors of computerdom in search of the widespread but elusive mal managerium, or bad manager, in common parlance. "

Spot On!

So, a Blog finally!

There is so much stuff out there on the web. Totally free. Some of it useful, interesting and relevant. Rest of it.. no comment.

No original content here - just pointers to stuff I find useful, interesting, thought provoking etc.. etc..

Twelve years in the industry.. well, almost. Wow, what a ride it has been!

Topics posted in this blog would be:

Software Engineering - methodologies,
OOAD, MDA, Patterns etc..
Java and J2EE
C and C++
Web services
Software Testing
Book Reviews
etc.. etc..