InfoQ Homepage Patterns Content on InfoQ
-
Entity Services - Pattern or Anti-pattern?
Entity Services or business-centric entities are considered by some to be a corner stone of Service Oriented Architecture - however not everyone agrees with this view. So are Entity Services a pattern or an anti-pattern for SOA?
-
Presentation: Event Patterns
Ian Cartwright presents some of his work (developed with Martin Fowler) on Event Patterns (recorded at JAOO), including: Event Sourcing, Event Collaboration, Parallel Model, and Retroactive Event. These patterns can be used in scenarios where a sequence of domain model changes may need to be recorded, reversed, corrected, or simply observed.
-
Five Common Ajax Anti-Patterns
Jack Herrington has written about common pitfalls in Ajax code, calling out five specific problems he sees often enough to consider anti-patterns: Polling on a timer when you don't need to, not inspecting the return results in the callback, passing complex XML when HTML would be better, and more.
-
Presentation: SOA Masterclass - SOA Definitions and Patterns
Miko Matsumura teaches SOA Foundations: Definitions, Patterns, and evolution toward SOA. The video is an excerpt from webMethods SOA Masterclass taught recently in San Francisco. Miko teaches consumer, producer, and governance patterns.
-
InfoQ Article: 10 Principles of SOA
In this article, InfoQ's Stefan Tilkov, consultant at innoQ, proposes 10 principles to serve as a basis for SOA discussions. The list starts with Don Box's four tenets (service with explicit boundaries, shared contract and schema, policy-driven, and autonomous) and expands them to include wire formats, document orientation, loose coupling, standards compliance, vendor independence, and metadata
-
Presentation: Bob Martin's Principles of Agile Design
Bob Martin of Object Mentor presents the first of his five principles of agile design. Beginning with an explanation of the real purpose of object-oriented design - the management of dependencies - Bob walks through a code example to illustrate how dependencies can be managed with abstractions, and that good designs are those in which high-level abstractions do not depend on low-level details.
-
Case Study: Developing a Custom Agile Practice Adoption Strategy
Teams can get sidetracked by process when implementing Agile: they spin, trying to figure out which practices to start with, unsure which will have the biggest impact, or how they fit together. In their InfoQ case study, Amr Elssamadisy and John Mufarrige develop a customized adoption approach to help a team decide where to focus first - an alternative to adoption of pre-packaged methodologies.
-
Sharing What's Worked: Patterns for Adopting Agile Practices
Organizations adopting Agile naturally ask these questions; "Where do I start?", "What specific practices should I adopt?", "How can I adopt incrementally?" and "Where can I expect pitfalls?" In this article, Amr Elssamadisy gives a glimpse into an ongoing effort to document Agile practice adoption patterns: Participants at XPday Montreal took a stab at "Simple Design" and "Pair Programming."
-
Identity Management and SOA
SOA involves creating a platform of reusable networked services. One of the most commonly requested services is identity management, which can provide a single sign-on context for a host of services. This article was written by two identity management experts from Oracle.
-
Top Ten Web Service "Issues"
What are your top ten Web service issues and advice? Andre Tost, Soccer fan and IBM Senior Technical Staff Member writes a bloglike article articulating the top ten issues he and his customers have with Web Services.
-
Five Habits of Highly Effective Software Developers
What are some of the code-level practices of highly effective developers? Robert Miller wrote a detailed article on Java.NET covering 5 practices which could apply to any language, including minimalist constructors, methods with clear focus and intent, minimizing logic in mutating methods, and minimizing dependendies between behaviour methods.
-
Towards the Optimal Javascript Inheritance Technique
Lead developer of the ThinWire Java-based RIA framework Joshua Gertzen has written an article going over existing approaches to implementing OO inheritance in Javascript and presents the solution they ended up using on their product.
-
InfoQ Article: Why Would a .NET Programmer Learn Ruby on Rails?
.NET developer Stephen Chu gives us some insight into his transition to Ruby on Rails programming. Quote: "By being loyal to one technology stack, I am bound to unconsciously make biased decisions, which will ultimately hinder my ability to deliver business value."
-
SOA Hot or Not
Jeff Schneider of MomentumSI blogs what's "Hot" and whats "Not" in SOA, and a nice response from Joe McKendrick of ZDnet. InfoQ community, get your opinions on this heard! What are you involved in in SOA that's "Hot"?
-
Best Practices for Planet-Scale Software Updates
A new Microsoft research paper has examined data from billions of Windows update queries from 300 million computers using the Windows update service in order to learn about the traffic characteristics of software patch distribution and also examine alternative architectures (P2P and caching) to support planet-scale software updating.