Silicon Valley Code Camp : October 6th and 7th, 2012
My influences include many speakers here at Code Camps and other community events. Avail yourself of their time. “There are only two things we should fight for. One is the defense of our homes and the other is the Bill of Rights...”… Smedley Darlington Butler, Major General, USMC, two-time Medal of Honor Recipient. Happy Code Campers!
A lot of work has been done of the the years with Test Driven Development. With new test runners on the market for SQL, we can now start to bring TDD into SQL. In this session will be using SQL Server Management Studio, to take a ball-park swing at SQL TDD.
We will cover: What is TDD
What are the Goals of SQL TDD
What are unit tests
What are SQL Unit tests
What we should and should not test in SQL
How tests are a by-product of SQL TDD, not the goal
The current state of SQL TDD
What is needed for the future of SQL TDD
Patterns emerge as both templated solutions to recurring problems and designs, as well as provide useful ways to encapsulate complex ideas into smaller, friendlier terms. Patterns gained popularity in the object-orientated community since the Fowler and the Gang Of Four, but declarative languages, like SQL, have had little-to-no coverage of how these patterns can be applied.
Understanding SQL design patterns is a crucial skill every SQL developer must learn and use in their career. SQL patterns can be applied to small projects or large, multi-million dollar systems, to provide common solutions to complex problems.
Patterns create a foundation for "best practices" for SQL, Database Architecture, and well as management of SQL developers and DBAs.
The first stated value of the Manifesto for Software Craftsmanship is:
"Not only working software, but also well-crafted software"
Well-crafted software is often spoken in terms of the audience of other coders, who read, modify, and consume the code of the software. The focus of developers usually consis on the blocks on code through unit tests, not the overall application.
The other key audience is the consumer of the software. The consumer of the software has their focus on the overall performance and lack of bugs on an application.
Too often the performance tests of the application is left to QA teams.
Here I would like to talk about:
Developers role in quality with Unit Tests
Developers role in performance profiling and testing.
What is performance profiling?
Why do we need to do it?
How do we profile our performance for applications?
Tools for performance monitoring
Gathering performance data.