No one wants programming errors. We have many tools to detect and correct errors in code. We also have a number of techniques we can use to prevent the introduction of errors. In this presentation, Michael Feathers t looksat error prevention while posing a number of interesting questions.
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.
In this presentation filmed during JAOO 2007, Wayne Fenton, Director of Architecture at eBay Inc., talks about the ways in which software architects can design systems for much-improved efficiency and reliability from an operational perspective.
Managing commonality and variability is the core of product line engineering. In this presentation, Markus Völter illustrates how model-driven and aspect oriented software development help addressing the challenge of managing variability in product line engineering.
We get more and more cores in our CPUs, but does our software run linearly faster? In most cases - no. We've hit a trend change when it comes to faster CPUs. We'll get more and more cores, but each core will be slower as the number of cores increase. In his talk, Joe Armstrong introduces Erlang and the ideas of Concurrent Oriented Programming which is one way to solve the problem.
This presentation by Hamilton Verissimo and Oren Eini show Castle Active Record - an ORM solution for .NET building on NHibernate. After an introduction, the presentation dives into various advanced topics and techniques for working with Castle Active Record.
Business users doing programming? Charles Simonyi and Henk Kolk presents how Intentional Software offers a radical new software approach that separates business knowledge from software engineering knowledge, which means that business experts can be more innovative and responsive to the changes in the domain.
In this presentation, Lex Spoon discusses the Scala programming language. Topics covered include the origin of Scala, the philosophy behind Scala, the Scala feature set, Object-Oriented and Functional programming in Scala, examples of Scala code, writing DSLs, how Scala is converted into Java, Scala performance, Abstract Data Types, unapply, actors and partial functions.
In this talk, Eric Evans introduces two broad principles for strategic design. 'Context mapping' addresses the fact that different groups model differently and 'Core domain' distills a shared vision of the system's core domain and provides a systematic guide to when good enough is good enough versus when to push for excellence.
Why bother with models? Eric Evans explains that the most critical complexity of most software projects is understanding the business domain itself. In this talk Evans talks about the foundations of Domain-Driven Design and how to make a domain model truly pull its weight and positively transform a project.
In this presentation recorded at JAOO, IBM's Rod Smith discusses the read/write web, and discusses how the approach known as "Mashups" might be used in enterprise scenarios for "do-it-yourself" IT.
Our own InfoQ Ruby editor gives you a primer on using Ruby to develop DSLs with our exclusive presentation from the JAOO conference in Denmark.
In this video discussion panel (with transcript) Martin Fowler, Frank Buschmann, Steve Cook, Jimmy Nilsson, and Dave Thomas discuss the future of software development. Topics covered include outsourcing, is Google the next MS?, multi-core & parallism, grid computing, software stacks of the future, and more. The panel is from QCon sister-conference JAOO.