Adam Tornhill explains how to treat code as a crime scene, analysing Git repositories to discover team behaviours and code smells, the pros and cons of Clojure, and much more.
Leah Hanson explains the characteristics of the Julia language, its type system, how to use and implement static analysis for the Julia language in the Julia language, and much more.
Felienne Hermans explains the how and why of applying software engineering methods (testing, static analysis, refactoring) to spreadsheets.
Andrew Sorensen explains live music coding with Extempore, the challenges of real time programming, garbage collection, static analysis to determine real time code meets its deadlines, hotswapping code, and much more.
Keith Adams explains how/where/why Facebook uses PHP, PHP's benefits (lack of state/programmer workflow/concurrency), efficient PHP with HHVM, the Hack project for optional typing PHP and much more.
Crista Lopes discusses the idea of using constraints to define styles of programming and architecture. Also: large scale static analysis of open source code, Open Simulator and VR, and much more.
Simon Thompson and Huiqing Li explain refactoring with functional languages and Wrangler (Erlang) and HaRe (Haskell). Also: how Wrangler's ad-hoc mode allows everyone to write custom refactorings.
Kostis Sagons talks about how type checking can help with a dynamic language like Erlang and how static analysis tools like Dialyzer or automated refactoring tools like Tidier help keep code clean.
Kevin Rutherford talks about the challenges of refactoring Ruby code, and his open source tool 'reek' which automates the discovery of certain code smells in Ruby code.
In this panel discussion from QCon San Francisco, several influential leaders of the software development community discussed and debated the future of the Java language and APIs based upon the lessons we have learned from the past. Topics included static versus dynamic languages, removing code from Java, forking the JVM, and the next big programming language.