October 4, 2014 at 1:30 AM
The term 'hexagonal architecture' has come back and forth in popularity since Alistair Cockburn first mooted it, with the Rails community's recent soul searching over its importance or threat just the latest. So what is a hexagonal architecture, why might you want to use one, and why is the 'Rails just falls away' (https://www.youtube.com/watch?v=tg5RFeSfBM4) threat so discomforting to web framework builders. How can we make 'ASP.NET just fall away'.In this presentation we will look at the Layered Architectural style - when we would want to use one (as opposed to the alternatives) and when it is appropriate how to implement one. We will look at how to implement the Ports & Adapters (Hexagonal's 'proper' name) style, explaining what the different layers are.We will look at the value the command pattern for implementing our ports , explain why Netflix uses it in Hystrix for reliability. On the way we will discuss Retry, Timeout and Circuit Breaker and explain how we can do better than Hystrix with a Command Dispatcher and Command Processor.We'll show code throughout, including a look at the Paramore. Brighter framework, an OSS version of the platform we use at Huddle to build this kind of architecture.As a bonus we will round off showing you how easy it is go from sync to async with this approach
Ian Cooper has over 20 years of experience delivering Microsoft platform solutions in government, healthcare, and finance. During that time he has worked for the DTI, Reuters, Sungard, Misys, Beazley, and Huddle delivering everything from bespoke enterprise solutions, 'shrink-wrapped' products, and cloud services to thousands of customers. Ian is a passionate exponent of Software Craftsmanship and Agile Architecture. When he is not writing code he is also the and founder of the London .NET user group and speaks at events throughout the UK.
As always at these free events there'll be pizza and swag courtesy of our sponsors
March 14, 2014 at 1:54 AM
Graphs are one of the best abstractions we have for modeling connectedness. Graph databases, in turn, are one of the best tools at our disposal for modeling, storing and querying complex, densely-connected data. Today, graphs and graph databases are helping solve some of the world's most challenging data problems, in domains as diverse as search, social networking, recommendations, datacenter management, logistics, entitlements and authorization, route finding, network monitoring, and fraud analysis.
This month we'll be taking a peek inside the graphista's toolbox. We'll look at some common graph data structures, and the graph database queries that unleash the insights buried inside them. We'll survey some of the tools and techniques you can use to graph your world, experiment with graph data, and apply it in your own applications. And we'll draw lots of circles and lines. We might even colour some of them in.
Ian works on research and development for future versions of the Neo4j graph database. Harbouring a long-held interest in connected data, he was for many years one of the foremost proponents of REST architectures, before turning his focus from the Web's global graph to the realm of graph databases. As Neo Technology’s Director of Customer Success, he has worked extensively with customers to design and develop graph database solutions. He is a coauthor of 'Graph Databases' and 'REST in Practice' (O'Reilly), and a contributor to 'REST: From Research to Practice' (Springer) and 'Service Design Patterns' (Addison-Wesley). He blogs at http://iansrobinson.com, and tweets at @iansrobinson.
February 6, 2014 at 9:04 AM
Liam is back and this time, its to discuss EventStore
Ever thought about using event sourcing to enable CQRS (Command QueryResponsibility Segregation), or did you just want an easy manner of creating an audit trail or a notification system?
EventStore (http://geteventstore.com/) is an open source DSD (DomainSpecific Database) engine designed just for that, driven forward by GregYoung (https://twitter.com/gregyoung and http://codebetter.com/gregyoung/).
This is for people who want to find out what EventStore provides, the installation options, how you get data in and out, and why it's a fantastic solution if you have the right sort of problem.
Liam Westley is an Application Architect at Huddle where he works with some of the best .Net developers and UX designers to deliver world class collaboration software. He quite likes working just off Old Street as there is some fantastic food and coffee to be had within a few minutes' walk.
Previous to Huddle Liam worked at Criteria MX, a digital media startup and has worked as a consultant via his own company Tiger Computer Services Ltd,specialising in software for Broadcast Television. His Niagara SMSmoderation system was used by QVC UK for eight years to display SMS messages from viewers, live, on screen. Liam is also responsible for the ticketing system for Hat Trick Productions which provides e-tickets to shows such asHave I Got News For You.
Liam has worked for chello media, GMTV, BSkyB, SmashedAtom and OriginalThinking Group. In his time he created the first in house weather system forSky News using Visual Basic 1.0, acted as architect for two general election systems, project managed the launch of the GMTV web site, was key to delivering the first interactive television chat service in the UK for BSkyBand helped launch the first live shopping channel in the Netherlands
October 23, 2013 at 12:46 AM
For those of you who haven't heard of it, Nancy is a lightweight framework for building HTTP based services and it's a a great alternative to ASP.NET MVC and WebAPI. In this talk I'll start by showing you the basics of setting up a new Nancy application, introducing all you will need to know to create your first CRUD application. This will include:
Handling routes and HTTP Verbs
Model binding and validation
The basics of testing your application
I'll also speak briefly about why I feel its a better option than ASP.NET and go onto show you how easy it is to integrate into an existing MVC application.
I'll be doing some live coding so you're more than welcome to bring along your laptop and join in, but its not essential. If you do you'll need a copy of Visual Studio.
Mathew McLoughlin is a developer with a love of all things .NET. He has a passion for all new technologies in particular Nancy. He believes in using the right tool for the right job and not everything needs to come from the Microsoft stack.
In the last view years he has worked mainly on a large scale web application with a strong focus on real time data.
He can be found at http://mat-mcloughlin.net
October 21, 2013 at 1:51 AM
The new Async features come along with the very useful WhenAll and WhenAny methods to execute sets of tasks.
We will delve into how these work, the effect of exceptions within any individual task and cancellation. This leads to the creation of common patterns such as Redundancy, Interleaving, Throttling and Early Bailout.
Given time we'll also get to peek at progress reporting, something that provides the feedback to add further sophistication to these common patterns.
Expect overviews of the patterns, followed by lots of code samples so get the latest of Visual Studio 2012 installed ready for action.
Liam Westley is an Application Architect at Huddle where he works with some of the best .Net developers and UX designers to deliver world class collaboration software. He quite likes working just off Old Street as there is some fantastic food and coffee to be had within a few minutes walk.
Previous to Huddle Liam worked at Criteria MX, a digital media startup and has worked as a consultant via his own company Tiger Computer Services Ltd, specialising in software for Broadcast Television. His Niagara SMS moderation system was used by QVC UK for eight years to display SMS messages from viewers, live, on screen. Liam is also responsible for the ticketing system for Hat Trick Productions which provides e-tickets to shows such as Have I Got New For You and Room 101.
Liam has worked for chellomedia, GMTV, BSkyB, SmashedAtom and Original Thinking Group. In his time he created the first in house weather system for Sky News using Visual Basic 1.0, acted as architect for two general election systems, project managed the launch of the GMTV web site, was key to delivering the first interactive television chat service in the UK for BSkyB and helped launch the first live shopping channels in the Netherlands.
He can be found on the Inter-webs at http://geekswithblogs.net/twickers and on the twitters as @westleyl
August 2, 2013 at 9:47 AM
There's a whole lot of hype around databases that have one thing in common: they don't use SQL for querying. The NoSQL monicker covers a whole range of different types of data stores, each with their own advantages and disadvantages.In this talk, Matthew Revell will look at the major NoSQL categories, as well as when and why you'd use them.
Matthew is Community Manager for Europe at Basho, the people behind the Riak distributed database. He has been knocking around the open source world for thirteen years and believes the most important part of a G&T is good tonic water.
August 2, 2013 at 9:39 AM
F# is a functional-first programming language which helps you to tackle complex computing problems with simple, maintainable and robust code. In this session, Ian Russell will get you started on the road to thinking and writing code functionally.
Ian Russell has nearly 20 experience as a hands-on software developer/solution architect, specialising in data-intensive OLTP solutions on the Microsoft stack. He is a regular speaker at user groups throughout the Midlands delivering sessions on a range of topics including ASP.NET MVC, MicroORMs, RavenDb, MongoDb, Dependency Injection and F#. He is a co-founder of CraftyCoders (http://www.craftycoders.net), a principles-focused user group for the West Midlands .Net community.
June 19, 2013 at 2:51 AM
Metaphorically speaking, the world is shrinking every day. Ironically this means that it is getting less acceptable to brush aside cultural differences and pretend that all cultures are essentially English but with different words. Appreciating globalization is about achieving humility, understanding that the world is a lot bigger than most developers give it credit for. Most developers understand that different cultures use different date formats, number formats and currencies. However, how many developers do not know that postal code formats, phone number formats, address formats and person name formats also differ. Not to mention the issues of localizing for gender-based languages or languages with less simplistic plural forms. What about ordinal subscripts, ordinal words, alphabet character sets ? The intention of this session is to open eyes, provide globalization enlightenment and with luck it will scare the living bejeezus out of you enough to make you question every line of code you write.
Guy is an ASP Insider and an MVP in ASP.NET. He is the author of NCLDR (http://www.ncldr.com), an open source .NET implementation of the Unicode Consortium’s Common Locale Data Repository. He is the author of ".NET Internationalization" published by Addison-Wesley (http://www.dotneti18n.com). He is a Microsoft Certified Professional developer, author, trainer and speaker, has spoken at many European and US conferences and is an INETA Speaker. He runs The .NET Developer Network (http://www.dotnetdevnet.com), a free .NET user group in the South West of England. He is the founder of DDD South West (http://www.dddsouthwest.com), a free one day technical event in the South West of England. He has written over 50 articles for numerous magazines and has co-authored an application development book. You can read his blog at http://www.guysmithferrier.com and catch him on Twitter at @GuySmithFerrier.
April 24, 2013 at 8:22 AM
So you have decided to break up that monolithic application into services, after all it worked for Amazon, right? Perhaps you want to embrace the DevOps model, perhaps you want to scale your development. But just how do all those services talk to each other, and how do you build a UI on top of them?
In this session we will look at the event driven architecture approach and give you an understanding of how we use messaging to communicate, just what we are communicating about, and how to build a composite UI.
Ian Cooper has over 20 years of experience delivering Microsoft platform solutions in government, healthcare, and finance. During that time he has worked for the DTi, Reuters, Sungard, Misys, Beazley and Huddle delivering everything from bespoke enterpise solutions to 'shrink-wrapped' products to thousands of customers. Ian is a passionate exponent of OO, SOA, EDA, CQRS and Agile. When he is not writing C# code he is also the and founder of the London .NET user group.
April 24, 2013 at 8:18 AM
Kevin has been involved in software development for 30 years. Starting out at university on DEC 20s and graduating through mainframes and onto all the versions of Windows. Kevin divides his time between teaching, consultancy and getting his hands dirty with real coding in the real world. Kevin's recent roles involve work as a Technical Architect at ICS systems and at Confused.com where he was responsible for the design and implementation of the new public web site driving 1.6 million quotes through the system in the first month of operation. Kevin's primary areas of expertise are patterns and enterprise architectures in particular web application design and implementation using Model-View-Controller.