1. Getting exception handling right is a perennial problem in C++ that has eluded systematization. Not for much longer. New language and library developments make it possible to handle exceptions in a declarative manner, leading to drastic code simplification.
    This talk discusses an alternative approach to handling exceptional flow that eliminates the need for small ancillary RAII classes, try/catch statements that rethrow, and other cleanup mechanisms. The popular Scope Guard idiom gets a spectacular generalization. Statements specify in a declarative manner actions to be taken if the current scope is left normally or via an exception. The resulting code is simpler, smaller, and easier to maintain.
    Highlights

    Review ScopeGuard's pros and cons
    Stay abreast of proposed language improvements for better error handling
    New implementation-specific extensions to scope guards
    Use of the new SCOPE_FAILURE and SCOPE_SUCCESS abstractions that complements the existing SCOPE_EXIT
    Attendee Profile

    ScopeGuard is of interest to C++ programmers of all levels. Implementation details are appealing to advanced engineers.
    Outline

    Motivation
    Action/Next/Cleanup/Rollback idiom overview in several languages
    Composition with said idiom
    Explicit vs. implicit control flow as a riff on declarative vs. imperative programming
    Implementation
    Underpinnings
    gcc/clang
    MSVC 8.0+
    Layering
    Icing
    Cake Candles
    Use Cases
    Tracing
    Transactional Work
    Order Still Matters
    nothrow notes
    Scope Changes
    Legacy code

    # vimeo.com/97329153 Uploaded 3,192 Plays 0 Comments
  2. There's a freaking supercomputer in your browser, and nobody seems to have noticed!
    You've heard that WebGL is for games and pretty 3D graphics? That's merely the beginning. It also lets you write arbitrary GPU code and thereby wield insane computational power for any purpose. And yes, it works in Firefox, Chrome, and IE, without plugins, today. What new categories of web apps and web businesses will this enable?
    Starting with a gentle introduction to 3D with WebGL (via the lovely Three.js library), this demo-led talk will take you deeper, into the GPU itself. You'll see:
    GPU coding basics - how the parallel execution is structured, and the GLSL language (don't be scared - it looks like C, and runs right in the browser)
    How to make your GLSL code screamingly fast and not crash the browser tab
    Plenty of demos including 3D visualisation, realtime client-side media processing, and object recognition
    By the end of this talk, I hope you'll be inspired to try something new in your next web app.

    # vimeo.com/97329154 Uploaded 5,441 Plays 3 Comments
  3. If you're making WPF or WP or even Monotouch and Monodroid applications these days, you're probably familiar with using MVVM to structure your apps. But what happens when you blend the asynchrony and composability of Reactive Extensions with the MVVM pattern? You get ReactiveUI! In this talk I'll introduce the fundamentals of ReactiveUI, dig into the benefits and tradeoffs, and demonstrate some cool tricks that might make your bespoke framework look archaic.

    # vimeo.com/97329155 Uploaded 3,849 Plays 0 Comments
  4. Habits help you manage the complexity of code. You apply existing skill and knowledge automatically to the detail while focusing on the bigger picture. But because you acquire habits largely by imitation, and rarely question them, how do you know your habits are effective? Many of the habits that programmers have for naming, formatting, commenting and unit testing do not stand up as rational and practical on closer inspection.
    This talk examines seven coding habits that are not as effective as programmers believe, and suggests alternatives.

    # vimeo.com/97329157 Uploaded 15.4K Plays 2 Comments
  5. This talk outlines developments in programming from the beginning of programming (in 1948) to today. In particular I'll talk about the development of Erlang and about the trends in programming that lead to Erlang and what these trends mean for the future. Work on Erlang started in 1985, so we'll turn the clock back to 1985 and see what the world looked like then. C++, Java, Haskell, Javascript, Ruby, Python and Perl had yet to be invented.
    Most people believed, incorrectly as it turned out, that Ada and PL/1 would dominate the future. But I was more interested in Prolog and Smalltalk. Prolog was the answer, but I didn't know what the question was. I'll talk about how we grew a programming language, and what the main factors were in spreading the language. I'll relate my personal experience with Erlang to broader developments in programming and try to see how the two fit together. I'll also take a peep into the future and speculate about where computing is going.

    # vimeo.com/97329186 Uploaded 2,683 Plays 0 Comments

NDCOslo 2014

NDC Conferences PRO

Inspiring Developers Since 2008 - The next NDC conference is in London 1-5 December 2014 and Oslo 15-19 June 2015.

Browse This Channel

Shout Box

Heads up: the shoutbox will be retiring soon. It’s tired of working, and can’t wait to relax. You can still send a message to the channel owner, though!

Channels are a simple, beautiful way to showcase and watch videos. Browse more Channels.