PRE-CONFERENCE WORKSHOPS
DEVWEEK
14.00
16.00
@DevWeek | http://www.devweek.com | DEVWEEK | 19
DAY 4 AGENDA (CONTINUED): MAIN CONFERENCE STREAMED SESSIONS
15.30: COFFEE BREAK ®
13.00: LUNCH BREAK
How will you model your
ever-changing world?
Domain-driven design (DDD)
codifies perspectives on
reality into a domain model,
which is realised as a software
system around which valuable
services can be constructed.
As business domains change,
our requirements and models
must follow. Dynamic
languages, such as Python
and Ruby, coupled with
document databases, can
produce flexible domain
models that can gracefully
accommodate new
information that wasn’t
explicitly modelled by the
original designers. Discover
when and how dynamic
language solutions are most
appropriate for domain
models, and understand
the trade-offs.
¡
DELIVER DOMAIN-
DRIVEN DESIGNS –
DYNAMICALLY!
Robert
Smallshire
Having a SQL Server solution
for a problem does not mean
the job is done. Of course,
the next immediate issue is
the performance. Temporal
queries that involve intervals
are typically very IO and CPU
intensive. For example, a
test for overlapping intervals
was solved with inefficient
queries for years. However, a
handful of solutions with fast
queries were developed lately.
In this high-level technical
session, Sarka introduces
five different methods to get
efficient queries that search
for overlapping intervals, one
of the most complex temporal
problems. Of course, these
solutions can be implemented
on other temporal problems
as well.
¡
OPTIMISING
TEMPORAL QUERIES
(PART 2):
THE OPTIMISATION
Dejan
Sarka
In this session, Beauchemin
looks at Microsoft’s
implementation of Hadoop
in conjunction/comparison
with some of the more
well-known offerings. See
what Microsoft has added
for .NET data programming
and management. This
session covers both the
cloud implementation and
“traditional” Hadoop running
under Windows.
¡
WHAT’S IN
MICROSOFT’S
HADOOP OFFERINGS?
Bob
Beauchemin
Full-day workshop
¡
CONINUOS DELIVERY
WORKSHOP
Neal
Fo r d
The free lunch is over:
applications no longer get
a massive performance
boost whenever a new CPU
arrives. In order to take
advantage of the increased
power, applications need to
be designed to take advantage
of the multiple cores. This
means a shift in the algorithms
and techniques we employ.
In the same way that OO
has design patterns, parallel
programming also has its own
catalogue of patterns to solve
re-occurring problems. In this
session, Clymer will introduce
a variety of parallel processing
patterns and give examples
of implementations using
Microsoft’s TPL from simple
fork/join, divide and conquer,
geometric decomposition,
pipelines to the slightly
bizarre Monte Carlo.
¡¡
PATTERNS IN
PARALLEL
PROGRAMMING
WITH TPL
Andrew
Clymer
Learn how to use expression
trees to enable configurable
and testable business
rules, without sacrificing
performance. In this session,
Courtenay will start by
demonstrating an example
project where business rules
are controlled by configuration
using a composite strategy
pattern. The pattern will be
refactored into a provider that
supplies an expression tree,
which will then be compiled.
Simple benchmarking will
be used to demonstrate the
performance benefits of this
approach. Another demo
will show creating a simple
expression tree and compiling
it to a standalone DLL,
which will then be executed
by a test project.
¡¡
GROWING
CONFIGURABLE
SOFTWARE WITH
EXPRESSION
Ed
Courtenay
Although temporal data is part
of many business applications,
most RDBMS, including
SQL Server, do not support
it out of the box. However,
before solving the problem,
you need to understand it.
In this session, Sarka will
provide an introduction to
temporal problems, then go on
to develop Interval CLR data
type. He will then discuss what
kind of constraints pertain to
temporal data, and how we
query temporal data. Please
note, this is the theoretical
introduction needed for
the following Optimising
temporal queries (Part 2):
the optimisation session,
intended to provide the
groundwork for those
who do not yet have a
deep understanding of
temporal problems.
¡
OPTIMISING
TEMPORAL QUERIES
(PART 1):
AN INTRODUCTION
Dejan
Sarka
Get practical, hands-on
experience of Specification
by example (SBE), one of the
most important concepts
in agile and iterative
development. SBE is a set
of process patterns that
help agile software teams
deliver value more reliably, by
using the power of concrete
examples as a means of
collaborating on requirements
and design, enabling a shared
understanding between
business and technical people.
In this session, Evans will
cover some of the key patterns
of SBE, through a set of
hands-on exercises, to ensure
you get beyond the theory and
into the practice, where deep
learning takes place.
¡
SPECIFICATION
BY EXAMPLE
David
Evans
Full-day workshop
¡
CONINUOS DELIVERY
WORKSHOP
Neal
Fo r d
CSOM and REST: the single
most important SharePoint
topic you need to be on top
of. In this session, Malik will
cover the architecture of
REST and CSOM, what tools
to use when developing, how
to discover the API, advanced
scenarios such as debugging
and concurrency, best
practices, and less-obvious
things that will bite you.
Ouch! Don’t miss.
¡¡
SHAREPOINT CSOM
AND REST IN THE
REAL WORLD
Sahil
Malik
BOOK
NOW
BOOK YOUR PLACE BY
31 JANUARY AND SAVE
UP TO £200
Untitled-6 19 1/16/14 1:45 PM