NDC 2012

Norwegian Developers Conference  
Tag Legend

Rails for the .NET Developer - Rob Conery - June 4th & 5th

Ruby on Rails has quickly risen as one of the top frameworks for rapidly building highly interactive websites, and has been used to build sites such as Twitter, Scribd, Hulu and Groupon. In this two–day workshop, you'll learn the basics of Ruby on Rails and build and deploy your own website. Along the way you'll learn Test–First programming with RSpec and Cucumber, committing your app to Git (and to to GitHub) and deploying your app using Heroku.


– What's Ruby on Rails all about?
  – Building your first app
  – Exploring the architecture
  – Committing your code
  – Red, Green, Refactor
  – Deploying to Heroku
  – Cucumber and even more RSpec
  – Asynchronous Calls with Javascript and Rails
  – Asset Pipelines
  – Debugging Rails
  – Advanced Topics
About the Instructor
Rob Conery is the co–founder of Tekpub.com, an online video learning resource for developers of all shapes and sizes. He is also one of the annoying voices you hear on This Developer's Life – a podcast he does with Scott Hanselman.
Rob has a number of Open Source projects, including Massive (the first MicroORM), SubSonic – an ActiveRecord–y clone, Manatee (migrations with JSON), Sugar – a set of helper libraries, and a few others.
Rob worked on the ASP.NET team for a short while helping to promote application building with ASP.NET MVC. Prior to that he was an independent consultant, sleazy dot–com entrepreneur and data–mining wonk. Rob lives in Hawaii with his two shiney daughters and wonderfully beautiful, patient wife.

The RavenDB Workshop Part I & II - Itamar Syn-Hershko - June 4th & 5th

In this fast–paced and hands–on 2–day RavenDB workshop, you will learn how to use this quickly evolving Document Database efficiently in your applications to save time and effort on communicating with database storage.
It's possible to register for just 1 day of this 2–day workshop.


In this fast–paced and hands–on 2–day RavenDB workshop, you will learn how to use this quickly evolving Document Database efficiently in your applications to save time and effort on communicating with database storage.
During the first day of this workshop we will get to know RavenDB and its core concepts, get comfortable with its API, learn how to build and customize indexes, and how to correctly model data for use in a document database.
After getting familiar with all the basics in the first day, during the second day we will build on that knowledge to properly grok Map⁄Reduce, Multi–maps and other advanced usages of indexes, learn how to extend RavenDB and the various options of scaling out.
Upon completion of this RavenDB course, you will be able to build database–backed applications faster and more efficiently.
Topics covered in this workshop:
– Overview of RDBMS, NoSQL, Document Databases and RavenDB
– Basic CRUD operations
– RavenDB's indexes implementation
– Data modeling
– Caching
– If time allows – Static indexes and Full–text search and spatial queries
– Static indexes and Full–text search and spatial queries
– Map⁄Reduce, multi–map, boosting
– Live projections
– Scaling: replication, sharding, multi–tenancy
– Bundles
– Extending RavenDB by writing your own bundle
It's possible to register for just 1 day of this 2–day workshop.

About the instructor
Itamar Syn–Hershko is a software developer writing mostly for .NET but also in Java and C⁄C++, and is a core developer of RavenDB since joining Hibernating Rhinos in 2011.
Author of open–source projects like HebMorph and NAppUpdate, and an active participant of others (CLucene for example), Itamar strongly believes in the power of open–source projects and the innovation they can bring to the table.
Itamar's current focus is on modern Information Retrieval – mostly search engines and databases, and he blogs about those and others in his blog http:⁄⁄code972.com

CSS3: Not just for Designers - Lea Verou - June 4th & 5th

CSS3, in essence, is about creating web applications that download faster and are easier to develop, maintain and edit. Less HTTP requests, less Kilobytes to download, less presentational JavaScript. All those are mostly developer goals, rather than designer goals. And that's why developers should care about CSS3, perhaps even more than designers do.


Starting with the basics, we'll dive deep uncovering the nitty–gritty details of the CSS3 features that help you achieve those goals. You will get the chance to test everything yourself in the process with small, easy to understand examples designed to keep the learning process fun and enjoyable.
What you will learn:
  • How you can integrate CSS3 in your daily workflow to produce better results more quickly
  • How to get rid of external images and when it's wiser to keep them
  • How you can use CSS3 to offload presentational tasks to CSS instead of bloating your JavaScript code
  • How CSS3 interacts with JavaScript, to allow you to do even more
  • How to think about detecting CSS3 feature support and how to create your own fallbacks and polyfills, instead depending on others to write them for you
No matter your experience with CSS3, you will walk away having learned a ton of new things you can immediately apply to your everyday work. You will also get an exclusive web application where you can experiment with everything taught, even after the workshop has passed.

About the Instructor
Lea has a long–standing passion for open web standards, and has been often called a “CSS guru”. She loves researching new ways to take advantage of modern web technologies and shares her findings through her blog, lea.verou.me. Lea also makes popular tools and libraries that help web developers learn and use these standards. She speaks at a number of well–known international web development conferences and writes for leading industry publications. Lea also co–organized and occasionally lectures the web development course at the Athens University of Economics and Business.

Clojure: Up Close and Personal - Uncle Bob - June 4th

In this all–day session you will learn Clojure by following along with Uncle Bob, step by step, and test–case by test–case, as you build a simple Swing⁄Clojure orbital simulator app. Along the way you'll learn the value of Functional Programming, how (and why!) to design applications that use it, and why Clojure is the next important language that you should master. This session will be extremely challenging! Plan on requiring an hour or so of down–time to allow your neuronal excitation to exponentially decay to safe levels.


About the instructor
Robert C. Martin has been a software professional since 1970. In the last 35 years, he has worked in various capacities on literally hundreds of software projects.
He has authored "landmark" books on Agile Programming, Extreme Programming, UML, Object–Oriented Programming, and C++ Programming. He has published dozens of articles in various trade journals. Today, he is one of the software industry's leading authorities on Agile software development and is a regular speaker at international conferences and trade shows. He is a former editor of the C++ Report and currently writes a monthly Craftsman column for Software Development magazine.

Using HTML5 and JavaScript to build Web Apps - Remy Sharp - June 4th

HTML5 has gained more and more attention over the last 12 months. With browsers increasingly supporting the features of the vast JavaScript APIs both in and around the official HTML5 spec, its making the job of creating awesome applications purely using these web technologies very easy indeed.

This workshop will introduce you to HTML5 with a brief backstory, before diving into the APIs one by one. As well as going through code and showing practical demonstrations, where possible, well also talk about the alternatives and polyfills for old browsers that dont support "awesome" out of the box.


What will be covered?
  • Video & audio – move over Flash
  • Canvas – bring on the Mario games
  • Storage – like cookies, but tastes so much better
  • Offline – forget the web
  • Geolocation – finders keepers
  • Web Workers – multithreading for the browser
  • Web Sockets – pushing data was never so easy
Who is this workshop for?
You're not expected to have played with HTML5 just yet, but you will need to have a reasonable understanding of HTML & JavaScript. A lot of the individual APIs are being used in popular web sites today both in desktop browsers and mobile, so rest assured that this applies to developers that are working on the web today.

About the instructor
Remy is the founder and curator of Full Frontal, the UK based JavaScript conference. He also runs jQuery for Designers, co–authored Introducing HTML5 (adding all the JavaScripty bits) and is one of the curators of HTML5Doctor.com.
Whilst he's not writing articles or running and speaking at conferences, he runs his own development and training company in Brighton called Left Logic. Generally speaking, he's about as crazy about JavaScript, HTML & CSS as a squirrel is about his nuts during the winter!

REST workshop - Erlend Hamnaberg & Trygve Laugstøl - June 4 & 5th

The workshop will be an introduction to REST. We will take a practical approach and implement an actual application. We will walk you through how HTTP works in a RESTful context. The participants will learn how to use it effectively. REST is the first architectural style that elevates data to an architectural element.


This makes it very important to take an active stance to what the data should look like, formatting etc. We will supply the participants with a toolbox for identifying, and use hypertext elements in existing and new data formats. Data formats with hypertext controls are also known as Hypermedia. We will also show areas where REST as an architecture and HTTP as a protocol works poorly.
Who should attend
People that are interested in REST.
No up–front knowledge is required, but it's wise to not be afraid of the command line prompt.
About the instructors
Erlend Hamnaberg
Erlend is a senior software consultant working in Arktekk. He mainly works as a software developer and architect. His technical interests revolve around HTTP, REST, and functional programming.
He dabbles in multiple languages, some with more than one paradigm, including Scala. The target platform of choice is usually the JVM, but other platforms are also interesting.
In his spare time he is the Chairman of javaBin (Norwegian Java User Group). He is involved with multiple open source projects, including being the lead developer and architect behind the open source HTTP–cache library HTTPCache4j.
Trygve Laugstøl
Trygve Laugstøl is an experienced system developer with a strong passion for programming. He currently works as a consultant in the areas of Java, Scala and general system architecture. The last few years REST and hypermedia has become the main areas of interest.
Trygve is known from his numerous contributions on many open source projects like Apache Maven and Contiuum and has been a board member⁄leader of the Norwegian Java User Group javaBin for many years. We is also a frequent speaker at various conferences in Norway.

Choose your own adventure - Greg Young - June 4th & 5th

We will be coding 80% of the time. Of course you will not be coding my random next little start up (unless of course we all decide that two days is enough!). We will instead focus on writing code that has lessons built into it. Katas, Check. Build your own testing framework and use it. Check. Things you can't do at work but may learn something from. Check. If you want lectures there are many other workshops, if you want relevant code and less lectures; bring a laptop the more environments the marier we love polyglotism.


About the Instructor
Greg Young is an independent consultant who lives in two suitcases (literally).
When not travelling around working for clients throughout the world you can often find him on the domain driven design list, blogging at codebetter.com, or floating upside down in a kayak through rapids.