InfoQ Homepage Programming Content on InfoQ
-
Contravariance is the Dual of Covariance
Erik Meijer introduces covariance and contra-variance with real world examples.
-
Who's Afraid of Object Algebras?
Tijs van der Storm discusses object algebras as a solution to the expression problem – the inability to extend functional programming languages.
-
The Unreasonable Effectiveness of Dynamic Typing for Practical Programs
Robert Smallshire explores the disconnect between the dire outcomes predicted by advocates of static typing versus the near absence of type errors in real world systems built with dynamic languages.
-
Stop That! Questioning Dogmatic Programming
Doug Hiebert questions conventional wisdom that is taken for granted when writing code, and presents alternatives by way of before-and-after examples.
-
MythBashers: An Adventure in Overlooked Technologies
Avdi Grimm takes Bash to its limits and beyond.
-
Exploring a Legacy Clojure Codebase
Jon Neale, Ragnar Dahlen discuss the challenges dealing with large Clojure legacy code at uSwitch.
-
Design Patterns for Large-Scale Real-Time Learning
Sean Owen provides examples of operational analytics projects, presenting a reference architecture and algorithm design choices for a successful implementation based on his experience Oryx/Cloudera.
-
Dissecting Clojure Reducers
Renzo Borgatti discusses implementing parallel solutions with reducers in Clojure, doing live coding that show what functional abstractions are involved and why.
-
Enso: Composing DSL Interpreters, Languages & Aspects
William Cook introduces Enso, an external language workbench with both graphical and textual editing capabilities.
-
All Your Types Are Belong to Us!
Phil Trelford demoes accessing a variety of data sources via F# Type Providers.
-
How Frameworks Can Kill Your Projects and Patterns to Prevent Getting Killed
Sander Hoogendoorn shares patterns to avoid framework issues by using layered architectures, bridge patterns, managers-providers, DI, descriptors and layer super-types, including code samples.
-
Going Reactive: New and Old Ideas for Your 21st Century Architectures
Jonas Bonér, Francesco Cesarini discuss the evolution of distributed concurrent thinking along with the problems it has to solve and the toolchains created along the way.