InfoQ

InfoQ

Community Specific Content View

Development Content on InfoQ


Latest featured content about Development

Andrew Watson On The State of OMG, UML, CORBA, DDS

Topics
OOP,
Embedded Software Dev,
Methodologies,
Middleware,
OMG,
Code Generation,
Programming,
CORBA

Andrew Watson talks about the work of the OMG, where CORBA is alive and well (hint: in your car), UML and UML Profiles vs. custom Modeling languages, DDS and other middleware, and much more.

News about Development

Using DRY: Between Code Duplication and High-Coupling

Topics
Code Quality,
Quality,
Best Practices,
Software Craftsmanship,
Agile,
Programming,
Loose Coupling,
Principles,
Coding Standards

DRY reduces duplication and the maintenance problems coming with it, but misusing it leads to high coupling and reduced readability. The lesson: a software development principle should be applied considering other corresponding principles, patterns and practices.

Microsoft Announces VS11 Lineup, Changes to Express Editions

Topics
Visual Studio 11,
Visual Studio,
Microsoft,
.NET,
IDE,
Companies,
Programming

Microsoft has announced its full Visual Studio 11 lineup, including some changes to how it manages the Express Editions. Windows XP continues to fade into the past as VS11 will provide limited support for this platform.

Yahoo! Axis! Of! Incompetence!

Topics
Yahoo!,
Chrome,
Security,
Search

Yahoo! have released a search plugin Axis which allows clients to search for web content with graphical previews rendered on the server. Unfortunately, they also leaked their private Chrome signing key with the Chrome extension. Read on for more.

Articles about Development

Writing a Comprehensive Unit Test

Topics
.NET,
Unit Testing,
Programming,
TDD,
Testing

A common theme amongst people professing “best practices” for unit tests is that you should only write a single assertion for each test. People who make these proclamations rarely show any unit test and those that do only show one. Yet this pattern may require a dozen other unit tests to ensure quality for even a trivial operation. This article uses examples to question that recommendation.

Designing and Developing Cross-Cutting Features

Topics
Dependency Injection,
Design Pattern,
Patterns,
Architecture,
Design,
Domain Driven Design,
Object Oriented Design,
Integration

Every developer has had to integrate with another system, API or component at one point or another. And, often, a business feature must span systems. If you’ve been on a project like this or have one in the pipeline then this article provides strategies to handle the change. Also, this article covers separating system boundaries and what that means for your technical design.

Introduction to MongoDB for Java, PHP and Python Developers

Topics
MongoDB,
Distributed Document Oriented Database,
NoSQL,
Database

The NoSQL movement is here to stay. The need for reliable storage that can be easily queried and easily scalable without the pain of SQL schema migration is real. Developers want more agile systems. This article uses MongoDB to introduce NoSQL concepts. This article covers the basics of MongoDB architecture, caveats and programming in MongoDB for Java, PHP, and Python developers.

Presentations about Development

Developing Enterprise Mobile Apps

Topics
CodeMash 2012,
CodeMash,
Android,
iPhone,
Cloud Computing,
Mobile,
Conferences,
Enterprise,
Services,
Operating Systems

Sohil Shah discusses creating iPhone and Android enterprise mobile applications based on cloud services using the open source platform OpenMobster.

Distributed Systems with ZeroMQ and gevent

Topics
Python,
Messaging,
Strange Loop 2011,
Dynamic Languages,
Web Services,
Strange Loop,
Concurrency,
Languages,
SOA,
Enterprise Architecture,
Distributed Systems,
Programming,
Conferences,
Architecture,
ZeroMQ

Jeff Lindsay discusses creating distributed and concurrent systems using ZeroMQ – a lightweight message queue-, and gevent – a coroutine-based networking library.

Interviews about Development

Alex Russell on Web Browsers and Technologies

Topics
HTML5,
HTML,
Rich Internet Apps,
Javascript,
Google Dart,
Dynamic Languages,
Web Development,
Markup Languages,
Languages,
Programming,
Web Browser,
Google Chrome Frame,
Browsers

Alex Russell talks about the shortcomings of the web platform and how it is evolving in order to adress them. He also explains about how APIs and browsers are improving, and shares his vision on things to come.

Trisha Gee from LMAX Discusses Concurrent Java Programming, Agile, and Diversity in IT

Topics
Java,
Languages,
Scrum,
TDD,
Concurrency,
Diversity in Teams,
Agile,
Programming,
Disruptor,
Domain Driven Design,
Testing

In a wide-ranging interview, LMAX's Trisha Gee talks to Charles Humble about using Java for low latency programming, and the Disruptor, an open source concurrent programming framework developed by LMAX. She also discusses the agile management techniques used at LMAX, and issues around gender and ethnic diversity in IT.

Books about Development

Good Relationships

Topics
Spring Data,
Neo4j,
Neo,
Spring,
Dependency Injection,
SpringSource,
Graph Database,
Java,
NoSQL,
Design Pattern,
VMWare,
Languages,
Database,
Patterns,
Object Oriented Design,
Design,
Companies,
Programming,
Enterprise

With Spring Data, the ever popular Spring Framework has cultivated a new patch of ground, bringing Big Data and NOSQL technology like Neo4j to enterprise developers. This guide introduces you to Spring Data Neo4j, using the fast, powerful and scalable graph database Neo4j to enjoy the benefits of having good relationships in your data.

Getting Started with Grails, Second Edition

Topics
Grails,
Groovy,
Java Web Frameworks,
Java,
Web Frameworks,
Dynamic Languages,
JVM Languages,
Languages,
WOA,
Programming,
Architecture

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Composite Software Construction

Topics
WS Standards,
BPEL,
BPMN,
WSDL,
Domain Specific Languages,
ESB,
Business Process Management,
Web Services,
SOA Platforms,
SOA,
Languages,
Business,
Orchestration,
Infrastructure,
Modeling,
Architecture,
Enterprise Architecture,
Service Data Objects,
Programming,
SOA Appliance,
Service Design,
WS-Star,
Service Component Architecture,
WS-AtomicTransactions,
MDA

Composite Software offers a new level of granularity when compared to SaaS (Software as a Service). Composite Software is about enabling "right-sourcing", i.e. move (or keep) arbitrary small or large elements of functionality wherever it is the most cost effective to operate them, not just entire systems. Economically, "right-sourcing" is far more efficient than "outsourcing" and SaaS. The goal of this book is start by understanding today’s software construction processes and technologies and explore why and how it should be evolved to support core composition mechanisms.

Starting Struts 2

Topics
Struts,
Java Web Frameworks,
Java,
Languages,
Architecture,
Programming,
Book Review

Within this book you will find everything you need to get up and running using Struts2 – from the architecture and configuration, to implementing actions and the supporting infrastructure such as validation and internationalization. Above all else, it focuses on the practical – with plenty of code and productivity tips to get you started using Struts2 today.

Mr. Neighborly's Humble Little Ruby Book

Topics
Ruby,
Dynamic Languages,
Languages,
Programming,
Language Features

The Humble Little Ruby Book covers the base syntax of the language, including working with values, flow control, and object oriented programming, into some of the library functionality of Ruby, such as databases, web services, and string manipulation.

Getting Started with Grails

Topics
Grails,
Java Web Frameworks,
Groovy,
Java,
Web Frameworks,
Dynamic Languages,
JVM Languages,
WOA,
Languages,
Architecture,
Programming

Grails is an open-source, rapid web application development framework that provides a super-productive full-stack programming model based on the Groovy scripting language and built on top of Spring, Hibernate, and other standard Java frameworks. Over the course of this book, the reader will explore the various aspects of Grails and also experience Grails by building a Grails app.

Domain Driven Design Quickly

Topics
Customers & Requirements,
Domain Specific Languages,
Project Management,
Methodologies,
Languages,
Architecture,
Agile,
Domain Driven Design,
Programming,
Design Patterns

Domain Driven Design is a vision and approach for designing a domain model that reflects a deep understanding of the business domain. This book is a short, quickly-readable summary and introduction to the fundamentals of DDD; it does not introduce any new concepts; it attempts to concisely summarize the essence of what DDD is, drawing mostly Eric Evans' book, as well other sources since published such as Jimmy Nilsson's Applying Domain Driven Design, and various DDD discussion forums.

Visual Studio .NET Tips and Tricks

Topics
Visual Studio Team System,
Visual Studio Express,
Artifacts & Tools,
Visual Studio,
.NET,
Tools,
Microsoft,
IDE,
Agile,
Programming,
Companies

Visual Studio .NET Tips and Tricks is a book explaining how to use VS.NET efficiently. Organized into short and easy-to-grasp sections, and containing tips and tricks on everything from editing and compiling to debugging and navigating within the VS.NET IDE, this book is a must-read for all .NET developers, regardless of expertise and whether they program in C#, VB.NET, or any other .NET language. This book covers the Visual Studio .NET 2002, 2003, and 2005 Beta 1 releases.