InfoQ Homepage News
-
WOA vs SOA Debate
In an interview, Loraine Lawson asked Gartner Vice President Nick Gall, who is credited with first describing Web-oriented architecture (WOA), to give business and IT leaders the bottom line about the WOA versus SOA debate
-
Interview: Erich Gamma Discusses Jazz, Eclipse, JUnit and Design Patterns
In this interview from QCon London 2008, Erich Gamma discusses the Jazz project, why Eclipse has been successful, the strict Eclipse release schedule, JUnit, Design Patterns, how to identify a design pattern, design patterns and the 'Don't Repeat Yourself' principle, the design pattern community, and whether dependency injection is a design pattern.
-
Article: Joshua Bloch: Bumper-Sticker API Design
In this article, Joshua Bloch, Chief Java Architect at Google and former Distinguished Engineer at Sun Microsystems, presents a list of maxims intended to be a concise summary of good API design guidelines. The maxims represent the abstract written by Joshua for his session "How to Design a Good API and Why it Matters" held during JavaPolis 2006.
-
Community Reacts to SpringSource Changes, CEO Rod Johnson Provides Clarification
SpringSource released a revised maintenance policy for SpringSource Enterprise. InfoQ followed up with SpringSource CEO Rod Johnson to clarify the ramifications.
-
How to Handle Unfinished Stories?
It is not uncommon for a scrum team to get to the end of the sprint and find that they have a story that has been worked on, but is not yet done. Perhaps the story appears to be about 80% done. What should become of such stories and how should the progress made on them be tracked? These are questions that every agile team will face. In a recent blog post, David Starr shares his approach.
-
Presentation: When Working Software Is Not Enough: A Story of Project Failure
In this presentation filmed during Agile 2008, Mitch Lacey talks about a real life project that was on the verge of being successful, but was deemed as unsuccessful by the customer. Considering that "the true measure of project progress is working software", Mitch and his team delivered the software, but the client was not satisfied.
-
Behavior-Driven Development for Everyone
Behavior-Driven Development is nothing new but has steadily risen to the forefront as an excellent technique for technical and non-technical participants to collaborate on a software project. Several frameworks exist to aid the development of software in the BDD (Behavior-Driven Development) mindset, with one particular framework trying to make it as <i>easy</i> as possible for everyone.
-
Presentation: Concurrency: Past and Present
In this presentation from QCon London 2008, Brian Goetz discusses the difficulties of creating multithreaded programs correctly, incorrect synchronization, race conditions, deadlock, Software Transactional Memory, the history of concurrency, alternatives to threads, Erlang, Scala, and recommendations for concurrency in Java.
-
Aster In-Database MapReduce
Aster Data Systems has announced an in-database MapReduce implementation for their nCluster database platform.
-
In Case You Missed It: JIT Enhancements in .NET 3.5 SP1
The recently released service pack for .NET 3.5 includes some new performance enhancements. Here we look at method inlining and the JIT compiler.
-
Martin Fowler: Can SOA Be Done With an Agile Approach?
Agile development challenges many of the common software development assumptions. One of the most significant is the evolutionary approach to software design. Another is up-front design which is promoted by top-down SOA. In his latest article, Martin Fowler examines whether the two can coexist.
-
Java In-Memory Persistence with Space4J
Space4J is a simple database system that will let you work with Java Collections in memory. Since memory is several orders of magnitude faster than disk for random access to data, Space4J provides better scalability for "real-time" web applications and systems that require performance.
-
Interview: Reginald Braithwaite on Rewrite
In this interview, Reginald Braithwaite talks about his past experiences with languages, programming, and software development, and what attracted him to Ruby. He also talks about Rewrite, a collection of features which add "sexp-rewriting meta-programming to Ruby".
-
Mockito 1.5 spies on plain objects
The latest release of the Mockito mocking framework enables spying on non-mock objects and introduces a cleaner stubbing syntax.
-
Customize Grails Application Behavior Using the Event Model
A typical Grails application throws events at key points in the application life cycle, whether in the build process or in individual artifacts such as domain classes and controllers. These application events are good extension points to setup listeners to intercept them and react to the events with custom behavior.