InfoQ.com, 6 months later...
It is our pleasure to present to you the most popular content on InfoQ in 2006. This post first went out to our newsletter subscribers 2 weeks ago but we felt it was so valuable that we should release it to the rest of the world.
InfoQ.com launched June 8th, 2006, and has since put out over seventy six high quality articles on Java, .NET, Ruby, SOA, and Agile, as well as a number of free downloadable books and video interviews / video conference presentations by world renowned experts. This newsletter presents a quick scan of the most popular content we've posted in 2006. InfoQ.com is a labour of love site organized by software development professionals like yourself, including the original creators of TheServerSide.com. InfoQ has grown fast, with over 80K unique visitors in December, however there are still many people who have never heard of this new site and have not seen any of this content. If you like this content and benefit from InfoQ, please support InfoQ by email this link around to anyone you think would benefit from it!
- InfoQ Team
Top Viewed Content Over all Communities in 2006
#1 A Look at Common Performance Problems in Rails (article, Jun 13)
#2 Sun open sources Java SE, ME, & Glassfish under GPL(news, Nov 12)
#3 How to Design a Good API & Why it Matters (presentation, Nov 21)
#4 From Java to Ruby: Risk (article, Aug 31)
#5 An Update on Spring 2.0 Final (article, Sep 05)
#6 Grails + EJB Domain Models Step-by-Step (article, Aug 22)
#7 SOA anti-patterns (article, Jun 19)
#8 The Roots of Scrum (presentation, Sep 20)
#9 Real-World Rule Engines(article, Jun 19)
#10 Migrating to Struts 2 - Part II (article, Oct 18)
#11 The Role of the Enterprise Service Bus (presentation, Oct 23)
#12 Case study: Brasilian National Healthcare System (article, May 12)
Top Discussed Content Over All
Reasons to choose Wicket over JSF and Spring MVC (40 comments)
InfoQ Article: From Java to Ruby - Risk (36 comments)
Mark Baker on "The Lost Art of Separating Concerns" (35 comments)
ESB Roundup Part One: Defining the ESB (29 comments)
DSLs: A summary of recent ideas & debates (27 comments)
JBoss Seam 1.1 Indepth: An Interview with Gavin King (27 comments)
ESB Roundup Part two: ESB Use Cases (27 comments)
Survey: Leaders Say Agile Has "Crossed the Chasm" (26 comments)
Opinion: Take Agile Off Your Resume (25 comments)
Sacrificing Quality should be an Executive Decision (22 comments)
Java, .NET, But Why Together? (19 comments)
Enterprise-Ruby Wish List (19 comments)
Top 5 Java Content and News Headlines
Top 5 in descending order, measured by pageviews.How to Design a Good API and Why it Matters![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/presentations/effective-api-design/en/smallimage/joshuabloch.jpg)
A well-written API can be a great asset to the organization that wrote it and to all that use it. Given the importance of good API design, surprisingly little has been written on the subject. In this talk (recorded at Javapolis), Java library designer Joshua Bloch teaches how to design good APIs, with many examples of what good and bad APIs look like. (Presentation, Nov 21)
An Update on Spring 2.0 Final![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/spring-2-update/en/smallimage/image2.jpg)
Spring 2.0 was initially supposed to come out in June/July, why the delay? InfoQ interviewed the Spring team - based on massive community feedback, the team has chosen to delay the launch to Sept 26th in order work on asynchronous JMS capabilities, JPA, the new JSP form tag library, OSGi integration, documentation, and backwards compatibility. (Article, Sep 05)
Grails + EJB Domain Models Step-by-Step![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/grails-ejb-tutorial/en/smallimage/image_grailbeans(1).jpg)
Grails brings Ruby on Rails style productivity to the Java platform, built on the Groovy language and fully integrated with Java. This tutorial shows how to use Grails to quickly build a functional website around an existing EJB 3 entity bean domain model with very little code. (Article, Aug 22)
Real-World Rule Engines![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/Rule-Engines/en/smallimage/ruleengines.jpg)
For many developers, rule engines are buzzwords, or black boxes on an architectural diagram: something to be feared or admired from afar, but not understood. In this article, Geoffrey Wiseman shares his practical experience with rule engines and with Drools in particular to support in-market solutions for financial services. (Article, Jun 19)
Migrating to Struts 2 - Part II![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/migrating-struts-2-part2/en/smallimage/image1.jpg)
In this part of the Struts 2 migration series, Struts committer Ian Roughely looks at a real application and compares the Struts and Struts 2 implementations, identifies how to convert actions, configuration changes, and what parts of the codebase don't need to be converted. (Article, Oct 18)
Top 5 Java News Headlines
Sun open sources Java SE, ME, and Glassfish under GPLv2 (Nov 12)
Red Hat Sued Over Hibernate 3 ORM Patent Infringement Claim (Jun 30)
JBoss SEAM 1.0: rethinking web application architecture (Jun 13)
Richard Monson-Haefel: It's too late to save Java EE (Jul 11)
Advanced Message Queue Protocol to Commoditize Messaging (Jun 20)
Top 5 .NET Content and News Headlines
Top 5 in descending order, measured by pageviews.Introduction to Domain Specific Languages![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/presentations/domain-specific-languages/en/smallimage/dsl.jpg)
Martin Fowler introduces a simple example of DSL, bringing out the difference between external and internal DSLs, and talking through the trade-offs in using both forms. (Presentation, Oct 31)
Java, .NET, But Why Together?![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/java-dotnet-integration-intro/en/smallimage/image_java_net_together1.jpg)
The Java vs. NET war is over. In this article, Ted Neward looks at how we can leverage the strengths of each together, such as using Microsoft Office to act as a "rich client" to a Java middle-tier service, or building a Windows Presentation Foundation GUI on top of Java POJOs, or even how to execute Java Enterprise/J2EE functionality from within a Windows Workflow host. (Article, Oct 05)
Spring.NET - QnA ![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/SpringDotNET-QnA/en/smallimage/springnet.jpg)
InfoQ had a chance to sit down with Aleksandar Seovic and Mark Pollack to talk about Spring.NET. Spring.NET is an application framework that brings AOP and a Dependency Injection container to .NET. (Article, Nov 07)
WPF as a Rich Client Technology![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/wpf-rich-client-java/en/smallimage/image_window.jpg)
WPF expert Ian Griffiths compares WPF to Ajax/DHTML, Swing, and Flash. Ian then looks at some scenarios where you might usefully build a WPF front end using Java as the back-end technology. (Article, Dec 20)
Java + .NET, Integration Strategies Presentation![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/presentations/ted-neward-java-and-dotnet/en/smallimage/ted2.jpg)
Ted Neward demonstrates using Microsoft Office to act as a rich client to Java, building a WPF gui on top of Java POJOs, and how to execute Java from within a Windows Workflow host. (Presentation, Nov 22)
Top 5 .NET News Headlines
GigaSpaces 5.2: Adds support for Spring, .NET, local-views (Dec 28)
DSLs: A summary of recent ideas & debates (Sep 18)
MySpace.com uses iBATIS.NET for persistence (Nov 16)
SQL Server Best Practices Website (Dec 04)
Microsoft releases XML Notepad - completely rewritten in C# (Sep 07)
Top 5 Ruby Content and News Headlines
Top 5 in descending order, measured by pageviews.A Look at Common Performance Problems in Rails![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/Rails-Performance/en/smallimage/performance.jpg)
Rails performance expert Dr. Stefan Kaes takes a look at the most common performance issues in your Rails applications and what to do about them. Advice is given regarding benchmarking, choosing a session container, caching results of expensive computations, optimizing database queries and working effectively with view helpers. (Article, Jun 13)
From Java to Ruby: Risk![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/From-Java-to-Ruby--Risk/en/smallimage/image_risk_fromjavatoruby.jpg)
"Ruby is risky" is a common perception. As Ruby on Rails moves closer to the mainstream, that risk will decrease. In this article, Bruce Tate examines the changing risk profiles for Java and Ruby from a managers perspective, examining Java's initial adoption and also common risk myths about Rails. (Article, Aug 31)
David H. Hansson on the Future of Rails![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/interviews/David-Hansson/en/smallimage/hanssen.jpg)
InfoQ editor Obie Fernandez asks David some hard-hitting questions about the future of Rails in the enterprise, profiting from his success and whether a vendor will fork Rails someday. (Interview, Nov 14)
Agile Asset Management with Ruby DSLs![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/Agile-Asset-Management/en/smallimage/jeremysmall.jpg)
Ruby makes it easy to craft Domain-Specific-Languages with Ruby syntax. This article is a story about the benefits derived from implementing a Ruby DSL for a PLANET ARGON development project. (Article, May 22)
JRuby - Bringing Ruby to the JVM![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/presentations/JRuby/en/smallimage/thomas.jpg)
Thomas Enebo and Charles Nutter show off the current state of the JRuby project, which has come a long way under their stewardship. (Presentation, Sep 06)
Top 5 Ruby News headlines
Sun Officially Backs Ruby, Brings JRuby In-House (Sep 07)
How Many Rubies Does the Future Hold? (Oct 25)
Marcel Molina on Amazon S3 Use at 37signals (Nov 29)
JRuby 0.9 Released; Runs WEBrick, Rails, RubyGems, and Rake (Jul 05)
Rails and Django Head to Head (Nov 16)
Top 5 SOA Content and News Headlines
Top 5 in descending order, measured by pageviews.SOA anti-patterns ![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/SOA-anti-patterns/en/smallimage/d.jpg)
SOA Expert Steve Jones from CapGemini provides a hands on look at SOA Antipatterns and a list of ways your SOA project can go wrong. This list includes signs that these problems are cropping up as well as what to do when you see them happening. (Article, Jun 19)
The Role of the Enterprise Service Bus![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/presentations/Enterprise-Service-Bus/en/smallimage/mark.jpg)
Mark Richards tells us what an ESB is, its role, what capabilities it provides, and the various ways an ESB can be implemented. He takes a close look at the JBI specification (JSR-208) and explains what impact it will have with the ESB world. This will teach you how to determine your own specific requirements for an ESB and then match these requirements to the product space. (Presentation, Oct 23)
Evolutionary integration with ESBs![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/Evolutionary-integration/en/smallimage/esbsmall.jpg)
ESB Programming experts provide simple working examples and clearly communicated ideas and patterns using the open source Mule ESB tool set. These examples provide both working code as well as suggest a methodology of evolutionary integration which can be used to dramatically simplify and accelerate SOA integration. (Article, Jun 01)
SOA Programming Models![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/SOA-programming-models/en/smallimage/image_soaprogramming.jpg)
An overview of the emerging programming models in SOA including Windows Communication Framework (WCF), Java Business Integration (JBI) and Service Component Architecture(SCA). (Article, Oct 26)
Simple JAVA and .NET SOA interoperability![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/REST-INTEROP/en/smallimage/redsmall.jpg)
.NET and Java interop can be made really simple using a REST documentcentric approach. This article compares a REST and SOAP approach to interop as well as the advantages of using HTTP POST vs. GET for REST invocations. (Article, May 12)
Top 5 SOA News headlines
Will Amazon Change How Applications are Written&Hosted (Sep 05)
Google Deprecates SOAP Search API (Dec 19)
Debate: The Future of WS-BPEL (Sep 28)
ESB Technology Goes Open Source (Oct 04)
Debate: JSON vs. XML as a data interchange format (Dec 26)
Top 5 Agile Content and News Headlines
Top 5 in descending order, measured by pageviews.The Roots of Scrum![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/presentations/The-Roots-of-Scrum/en/smallimage/sutherland.jpg)
For 60 minutes Jeff Sutherland covers Scrum from creation to its use at Xerox, Honda, WildCard, Lexus, Google. He looks at Scrum types A, B C, and confirms that Kent Beck used Scrum practices for XP. (Presentation, Sep 20)
Testing Ajax Applications with Selenium![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/testing-ajax-selenium/en/smallimage/selenium-logo1.jpg)
The Selenium develompent team briefly introduces Selenium, a web acceptance testing tool, and shows how to test Ajax applications with waitForXxxx Selenium commands, as well as how to test a simple Ajax effect - an asynchronous text update - with Selenium. (Article, Sep 25)
Agile Java Dev with Spring, Hibernate and Eclipse![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/Book-Review--Agile-Java-Devel/en/smallimage/book.jpg)
The Selenium development team briefly introduces Selenium, a web acceptance testing tool, and shows how to test Ajax applications with waitForXxxx Selenium commands, as well as how to test a simple Ajax effect - an asynchronous text update - with Selenium. (Article, June 28)
Ivar Jacobson on UML, MDA and more![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/interviews/Ivar_Jacobson/en/smallimage/ivar_jacobson.jpg)
Ivar Jacobson, co-creator of UML & RUP, shares his vision for a next generation development methodology using 'Intelligent Agents', as well as his views on UML, MDA, AOP, and the future. (Presentation, Oct 24)
What is Agility, and Why Should You Care?![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/What-is-Agility-Why-Shd-U-Care/en/smallimage/fastbusinessman.jpg)
Coach Mishkin Berteig introduces the benefits of Agility with two stories of highly responsive teams, and outlines some further reading. Agile helps people work more effectively by empowering teams, amplifying learning and eliminating waste. Agility teaches the team to modify its own working process over time, always with a view to providing more value to the enterprise while reducing waste. (Article, May 16)
Top 5 Agile News headlines
Opinion: Take Agile Off Your Resume (Sep 29)
Eclipse "Callisto" an Agile Success Story (Jun 30)
Ken Schwaber on Code Quality as a Corporate Asset (Nov 13)
Scrum in Five Minutes - Executive Summary (Nov 21)
Fowler: "Agile Imposition is a Very Red Flag" (Oct 10)
And last but not least, our free-downloable books!
- Domain Driven Design Quickly. A vision and approach for designing a domain model that reflects a deep understanding of the business domain. This book is a short, quick-readable summary of the essentials of Domain Driven Design, by Eric Evans.
- Visual Studio .NET Tips and Tricks is a book about how to use VS.NET efficiently, including tips and tricks on everything from editing and compiling to debugging and navigating within the VS.NET IDE 2002, 2003, and 2005 Beta 1 releases.
- Java Transaction Design Strategies is a book about how to design an effective transaction management strategy using the transaction models provided by Java-based frameworks such as EJB and Spring, including design patterns and coverage of XA.
- Enterprise SOA Adoption Strategies. This book argues that for SOA to succeed we must move our thoughts away from the implementation technologies and towards the "what" of the business. Steve Jones explains how to construct an overall business service architecture.
- Scrum Checklists. refine the Scrum rules with the experience of SPRiNT-IT's Scrum coaches. This compact book of useful lists and definitions will help practitioners facilitate all Scrum Meetings and create the Scrum artifacts.
It has been a pleasure to serve you in 2006. Help us help the community be letting people know about all this great content!