A successful development team is more than just 2+ developers in a room. Your team members have their own skills, experiences and preferences, but are expected to work together as one seamless entity. Code reviews are critical to your team's success. They help you share insight into tricky business logic, cross train your team members to reduce the bus-factor, and train junior developers. In this talk we will look at types of code reviews, tools to consider using, and strategies to help you apply all of it to your unique circumstances. Let's go read some code!
As a web developer, the odds are that you're writing more and more JavaScript every day. As powerful frameworks and tools grow in usage (and even ship with Visual Studio), the complexity of JS keeps growing. JavaScript testing is an important tool that you should have in your tool belt.
Jasmine makes JavaScript testing easy to do, but Jasmine requires you to open a browser window. Chutzpah makes it easy to run your JS tests right inside of Visual Studio, or as an automated part of your TFS build.
In this talk, we'll look at adding Jasmine tests to a .NET MVC web app. We'll talk about some JS testing best practices along the way. Then we'll finish by using Chutzpah to automate these tests as part of our build process. When you leave this session, you'll be equipped to test all the things!
Your team is good at writing code, but what about the other 70% of software development? Figuring out what needs to be coded, giving your boss annoying estimates, testing all the whacky edgecases, managing risks and dealing with personality conflicts on your team are just as important as the code you're writing. This highly interactive talk will explore the software development lifecycle (SDLC) and what the implications of all of your decisions might be, even on a team of one. You'll see the SDLC from the viewpoint of the developers, the BAs, the PMs, and yes, even the QAs. And it will do it in a shamelessly silly manner. You won't leave this talk with "15 Secrets Great Developers Don't Want You To Know" but you will leave it with a fresh perspective on how your team gets work done.
Interested in the what, why and how of Responsive Web Design (RWD)? This workshop will explore why RWD matters and how to get started. If you work on enterprise apps, this workshop will cover how RWD can add value to your existing world. If you work on smaller apps, you'll gain skills to make your work faster and easier. When you leave this workshop, you won't be the world's greatest designer... sorry! However, you'll have a good basis for improving your applications and user experiences.
using System; | |
using System.Collections.Generic; | |
using System.IO; | |
using System.Linq; | |
using System.Net; | |
using System.Text; | |
using System.Web.Script.Serialization; | |
using Newtonsoft.Json; | |
using Newtonsoft.Json.Linq; |
There is a wide variety of modern tooling available to help us build a better web. There are also more legacy sites than greendfield ones; sites that never were built with these tools in mind. How do you get the benefits of things like pre-processors (Less/Sass), post-processors (Autoprefixer) and task runners (Grunt) when working on your existing sites?
Let's take a real site that I support, and explore:
- Adding in a basic build/task runner
- Creating a framework for restructuring our CSS
- Replacing old hacks with CSS3 features
- Using a pre-processor to further refine our styles
- Adding a post-processor so we can forget about vendor prefixes
*Note to organizers: This is a 30 minute version covering one part (the "How") of my longer estimation talk. It pairs well with it's "Why" counterpart.
"How long will it take?" ... ... crickets ... Developers hate being asked this because they see it as an impossible question to answer. Unfortunately, the business needs to make decisions and they need data to drive them. In this talk, we'll discuss multiple ways to perform estimates. We'll look at the amount of work it takes to get to various levels of precision, and compare other pros and cons of each method. You'll leave this talk with tools that will make your estimation easier, your life better, and your boss happier.
New team members begin as outsiders and do not feel empowered to do great things. Many teams have a gap between "They" who make decisions, and the people that are affected. Team members don't think "We are doing this".
This talk looks at the gap between "We" and "They" and what you as a leader can do about it. You'll leave this talk able to identify unhealthy team dynamics and with strategies to empower your team with a sense of ownership.
$('#someElement').on('click', | |
function() { | |
var objectId = getObjectId(); | |
$.ajax({ | |
url: "/some/path", | |
type: "POST", | |
data: { | |
objectId: objectId | |
}, |
$('#someElement').on('click', | |
function() { | |
var objectId = $(this).data('objectid'); | |
$.ajax({ | |
url: "/some/path", | |
type: "POST", | |
data: { | |
objectId: objectId | |
}, |