BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Programming Content on InfoQ

  • Andrej Bauer on Language Design

    Andrej Bauer starts essay, On programming language design, with a simple premise, “Programmers are just humans: forgetful, lazy, and make every mistake imaginable.” Then he looks at what this really means in how we design languages.

  • Presentation: Making Roles Explicit

    In this presentation recorded during QCon London 2008, Udi Dahan, The Software Simplist as he calls himself, explains why sometimes it is not enough to apply good OOP and patterns lessons. He introduces a new principle: make roles explicit.

  • Interview: Tools for the Open Web

    Dion Almaer and Ben Galbraith open with a definition of the Open Web, the tension arising from multiple Web technologies, the diversity and "polyphony" of Open Source, the future of Web development tools, and the debate associated with the possible evolution of Javascript. The potential impact of HTML 5 on tool and Web development in general is discussed.

  • Sun's Disagreement With Apache Overshadows Java 7 Announcement

    Sun Microsystems have published an updated schedule for JDK 7 along with a list of the approved features, but the ongoing disagreement with Apache over licensing the Java Compatibility Kit (JCK) for Java SE threatens to overshadow the announcement.

  • Presentation: Taming Effects with Functional Programming

    In this presentation recorded during QCon London 2008, Simon Peyton-Jones advertises the need for programming purity achieved especially through use of functional languages and the increased attention given to functional programming.

  • C# 4.0 "Fixes" Deadlock Issue

    C# 4.0 implemented a change that assured optimized and non -optimized compiles yielded consistent results. This "Fix" emphasized some design problems with locking mechanisms.

  • The Problems with WCF and the Using Block

    The WCF Client code violates two of the core principals of .NET API design; calling Close should actually close the connection and calling Dispose should never throw an exception. We look at how this came to be and at some available workarounds.

  • Interview: Erik Meijer on LINQ

    In this interview made during QCon SF 2008, Erik Meijer talks about less known LINQ features, like the ability to do meta programming or the fact that LINQ works against any data collection that implements the sequence operators. Meijer also talks about the differences between functional languages and objectual ones, asynchronous computation, and the evolution of languages.

  • Article: SharePoint Object Model Performance Considerations

    In this article, Andreas Grabner analyzes the performance implication of using the SharePoint Object Model, specifically displaying and editing lists, one of the most used SharePoint objects.

  • Details on Using Code Contracts

    InfoQ has informed on the availability of Code Contracts for .NET. This time we want to offer more details on using Code Contracts, an important addition to .NET.

  • Code Contracts for .NET Is Available for Download

    Code Contracts is the .NET implementation of the Design by Contract concept. While it was supposed to be delivered with .NET 4.0, Code Contracts is already available for download from DevLabs. Contracts impose certain restrictions on using APIs, making programming safer, having more validations and resulting in fewer unexpected errors during runtime.

  • Presentation: Open APIs: State of the Market

    In this presentation filmed during QCon SF 2008, John Musser talked about Open APIs, their history, their current status and trends. He also talked about what makes an Open API successful, the business models behind them and some related technological details.

  • Web-based IDEs to become mainstream?

    Last week Mozilla released Bespin, a web-based framework for code editing and only a few days later Boris Bokowski and Simon Kaegi implemented an Eclipse-based Bespin server using headless Eclipse plug-ins. With the presentation of a web-based workbench at EclipseCon and the release of products like the Heroku web-based IDE for RoR apps, it seems that web-based IDEs might soon become mainstream.

  • Spolsky vs Uncle Bob

    The last few weeks, a public dispute has been going on between Joel Spolsky and Robert C Martin (Uncle Bob) about Test-Driven Development and about the SOLID principles of OO design. Here is a summary and review of the match.

  • Presentation: Craftsmanship and Ethics

    In this talk Robert C. Martin outlines the practices used by software craftsmen to maintain their professional ethics. He resolves the dilemma of speed vs. quality, and mess vs schedule. He provides a set of principles and simple Dos and Don'ts for teams who want to be counted as professional craftsmen.

BT