Speakers
- Dan Allen
- Aaron Bedra
- Tim Berglund
- Rohit Bhardwaj
- David Bock
- Stevie Borne
- Jeff Brown
- James Carr
- Scott Davis
- Jeremy Deane
- Keith Donald
- Michael Easter
- Robert Fischer
- Neal Ford
- Brian Gilstrap
- Andrew Glover
- Brian Goetz
- Stuart Halloway
- David Hussman
- Mark Johnson
- Dave Klein
- Scott Leberknight
- Tiffany Lentz
- Howard Lewis Ship
- Chris Maki
- Matthew McCullough
- Alex Miller
- Ted Neward
- Michael Nygard
- Pratik Patel
- Mark Richards
- Brian Sam-Bodden
- Srivaths Sankaran
- Nathaniel Schutta
- Aleksandar Seovic
- Ken Sipe
- Brian Sletten
- Matt Stine
- Venkat Subramaniam
- Burr Sutter
- Vladimir Vivien
- Mark Volkmann
- Craig Walls
- Richard Worth
Matthew Bass
Software Developer & Entrepreneur
Presentations
Pragmatic Pair Programming
Pair programming. It's nasty. It's evil. The only people who actually do it are those Extreme Programming zealots, and we all know what they're like. Pair programming deserves to be condemned to the trash heap of practices that failed, destined to go down in history as the black sheep of agility. Right? Well, maybe not. Maybe pair programming does have some value after all. Maybe it can be redeemed if done the right way, the pragmatic way.
Pair programming. It's nasty. It's evil. The only people who actually do it are those Extreme Programming zealots, and we all know what they're like. Pair programming deserves to be condemned to the trash heap of practices that failed, destined to go down in history as the black sheep of agility. Right? Well, maybe not. Maybe pair programming does have some value after all. Maybe it can be redeemed if done the right way, the pragmatic way.
Let's re-examine pair programming in a spirit of discovery. Let's learn how to avoid the many pitfalls inherent in it, and carefully refactor it to yield tangible, measurable benefits. Let's make sure we're not doing pair programming for its own sake, but only because it makes us more productive, increases code quality, and boosts team cohesion.
Unobtrusive JavaScript: Stop Cluttering Your HTML
Separation of concerns is important, especially when building web applications. Making JavaScript unobtrusive is a technique whereby the JavaScript is pulled out into a third layer alongside the HTML and CSS. Obtrusive JavaScript damages the readability of your markup and causes problems for browsers. JavaScript should always be unobtrusive. Come learn how to write it that way from the very beginning.
Separation of concerns is important, especially when building web applications. Making JavaScript unobtrusive is a technique whereby the JavaScript is pulled out into a third layer alongside the HTML and CSS. Obtrusive JavaScript damages the readability of your markup and causes problems for browsers. JavaScript should always be unobtrusive. Come learn how to write it that way from the very beginning. We'll also explore Low Pro, a popular extension to the Prototype library that makes writing unobtrusive code even easier, as well as JQuery, an alternative to Prototype that has support for unobtrusive JavaScript built-in.
Understanding Git: A Quick Start Guide
Git is a free source code management tool that's even more powerful than Subversion and CVS. It's lightning fast, supports extremely large projects, handles branching and merging with stunning ease, and offers the ability to check in even while offline. The development community is moving to Git and you should be too. Come learn how to get up and running fast. We'll also explore GitHub, a revolutionary new way to share and collaborate on software.
Git is a free source code management tool that's even more powerful than Subversion and CVS. It's lightning fast, supports extremely large projects, handles branching and merging with stunning ease, and offers the ability to check in even while offline. The development community is moving to Git and you should be too. Come learn how to get up and running fast. We'll also explore GitHub, a revolutionary new way to share and collaborate on software.
Kung Fu JavaScript Debugging
Are you stuck in the dark ages of JavaScript debugging? Do you immediately bang out an "alert()" when your code breaks? With AJAX here to stay and dynamic web sites quickly becoming the rule, it's critical that your debugging skills be top notch. Stop wasting time and start solving problems. We'll learn about some tools and techniques that can help you along the way, no matter which browser you're using.
Are you stuck in the dark ages of JavaScript debugging? Do you immediately bang out an "alert()" when your code breaks? With AJAX here to stay and dynamic web sites quickly becoming the rule, it's critical that your debugging skills be top notch. Stop wasting time and start solving problems. We'll learn about some tools and techniques that can help you along the way, no matter which browser you're using.
Homesteading for Fun and Profit
Have you ever thought about creating and selling your own software product? Nathaniel Talbott introduced the concept of software homesteading in 2006 and it's been gaining steam ever since. Join us as we examine how now as never before, developers have the opportunity and capability to build small, agile services that provide business value and generate passive income.
Have you ever thought about creating and selling your own software product? Nathaniel Talbott introduced the concept of software homesteading in 2006 and it's been gaining steam ever since. Join us as we examine how now as never before, developers have the opportunity and capability to build small, agile services that provide business value and generate passive income.
Power Ajax with JQuery
JQuery is a lightweight alternative to the Prototype JavaScript library. It offers a more concise syntax than Prototype as well as powerful built-in features that aren't available elsewhere. Come learn how to leverage JQuery to integrate powerful and visually entertaining Ajax functionality into your web applications.
JQuery is a lightweight alternative to the Prototype JavaScript library. It offers a more concise syntax than Prototype as well as powerful built-in features that aren't available elsewhere. Come learn how to leverage JQuery to integrate powerful and visually entertaining Ajax functionality into your web applications.
Chaotic Agility
Three quarters of all software projects fail. Why? Because we're still trying to manufacture software instead of create it. Software development is more art than science. As such, it can't be predicted accurately and is difficult to control. Yet how do managers typically respond to a failing software project? More control.
Three quarters of all software projects fail. Why? Because we're still trying to manufacture software instead of create it. Software development is more art than science. As such, it can't be predicted accurately and is difficult to control. Yet how do managers typically respond to a failing software project? More control.
Complexity science has a surprising amount of relevance to agile software development. Developers tend to behave like agents in a Complex Adaptive System (CAS). These agents must be allowed to self-organize to the edge of chaos, which is where remarkable things happen. Most of us agree that agile works. But why does it work? Examining the science behind agility can tell us why.
Once we understand why agility works best for software projects, we will stop trying to predict what can't be predicted and control what can't be controlled. We will allow software to emerge on its own instead of trying to manufacture and control it.
Books
by
-
Has your career been a product of random chance? Learn how to take control. These solid, repeatable steps show you how to chart the course you want, then how to follow it.
The book is aimed primarily at a technical market, but the content is applicable to most professional fields.