You can't have a conversation about web technologies these days without someone dropping a mention of NodeJS and web sockets. If you're a .NET developer, someone will then reference SignalR with ASP.NET Web Pages or MVC. But what are these things? Which one is better? What do they do and how do they work? In this special "Cage Match" Rob Conery puts NodeJS up against Damian Edwards and SignalR - showing you the two technologies side by side in a bit of a tongue-in-cheek challenge.
Statoil has recently done a large and complex architecture remake of a business critical application. The overall plan was to go from a situation with a codebase that was really hard, time consuming and riskful to make even small changes to and transform that into a situation with a codebase starting to get in control, and thereby making it smooth to make business driven improvements. In this presentation we’d like to share with you the story including what we learned and the key takeaways, both the happy parts and the tougher parts, both the technical aspects and the people things and more.
Our job is one of the most demanding and hardest. We play a crucial part in the business, often misunderstood and wrongly managed. We are craftsmen. We are under-appreciated, under-valued and often under-paid. Look at the world today. It's made up of people like us, people like Mike Zuckerberg et al. We are the fundamental pilar to businesses of the 21st Century. We are the Prima Donna's. It's about time you treat us like one.
Some programmers are simply more effective than others. Kent Beck famously described himself as "not a great programmer, but a good programmer with great habits."
Over the last year or so I've been working with, and observing, some very good programmers with quite exceptional - and rather surprising - habits.Is there a better way than katas to learn a new language? Is copy-and-paste always evil? Should you always test-drive production code?
In this talk Dan introduces the idea of programming patterns - patterns of effective programming behaviour - and describes some of the more unusual but effective programming patterns he's collected over the last year.
These are not patterns for beginners, but then again, Dan argues that patterns aren't for beginners anyway.
Old-school branch-per-feature meant that branches were large and long living to avoid having to integrate because it was a pain as the feature would diverge further and further from other features or the mainline. Including and excluding features from what needs to be shipped should be a smooth process.
This talk goes into the mechanics of a disciplined process to ensure delivering the highest quality software, quickly without resorting to non-production code such as feature toggles. Some advanced topics such as git rerere and submodule orchestration will be covered as well as revisiting topics such as Continuous Deployment and Integration, the role of QA and others.
Included is an experience report of a 20 person team using the strategy on a system that involves 50 repositories that include many internal and external applications, services and processes - both legacy and greenfield.