May 2013 I was allowed to present both a Keynote and a Tutorial at TestNet.
Tutorial:
KeyNote:
I also contributed an article to the news letter, which starts on page 4.
Thursday, 16 May 2013
Monday, 11 February 2013
I deleted some book reviews
I tidied up a few of the book reviews.
Some of them I just deleted. And that might explain how you ended up on this page through a redirection.
I deleted some reviews because they didn't add value. Some were a weak summary of the book itself and offered no insight.
I deleted some reviews because they were negative, and the review itself didn't add value. i.e. the review itself didn't educate or have any useful information, it basically just said 'don't read this book'.
And that might in some way add value, but I decided to change focus and start linking to things that I will re-read and go back to, rather than dictate what other people should do and read - you can take responsibility for yourself. I'll tell you where I go and where I find value.
You might still find reviews of books on the site that have a negative tone. Some of those remain because I think the review itself has value in the text, i.e. it explains something useful. Or I may not have acted on my 'remove this book review task yet'.
Remember to read responsibly.
Some of them I just deleted. And that might explain how you ended up on this page through a redirection.
I deleted some reviews because they didn't add value. Some were a weak summary of the book itself and offered no insight.
I deleted some reviews because they were negative, and the review itself didn't add value. i.e. the review itself didn't educate or have any useful information, it basically just said 'don't read this book'.
And that might in some way add value, but I decided to change focus and start linking to things that I will re-read and go back to, rather than dictate what other people should do and read - you can take responsibility for yourself. I'll tell you where I go and where I find value.
You might still find reviews of books on the site that have a negative tone. Some of those remain because I think the review itself has value in the text, i.e. it explains something useful. Or I may not have acted on my 'remove this book review task yet'.
Remember to read responsibly.
Labels:
Book Reviews
Thursday, 31 January 2013
Tutorial: Lessons Learned With BDD
At the January 2013 "Test Management Summit" I presented a half day tutuorial entitled "Lessons Learned with BDD"
Subtitled: Thinking and automating with Domain Specific Languages.
This was an opinionated overview of BDD where the underlying theme was that BDD involves the creation of a DSL.
Slides:
Subtitled: Thinking and automating with Domain Specific Languages.
This was an opinionated overview of BDD where the underlying theme was that BDD involves the creation of a DSL.
Slides:
Tuesday, 4 December 2012
Eurostar Webinar : Evil Tester's Guide to Technical Testing
On 4th December 2012 I presented a Webinar for Eurostar on Technical Testing.
Slides, with embedded Webinar Recording on SlideShare:
Slides, with embedded Webinar Recording on SlideShare:
- Additional details, including links and a general write up, are over on EvilTester.com
Friday, 30 November 2012
Unconventional Influences, a Keynote and Paper for EuroStar 2012
In November 2012 I presented A Keynote at Eurostar entitled "Unconventional Influences"
Slides:
Paper:
Slides:
Paper:
Wednesday, 26 September 2012
Links, Tools, Magazines and Stuff from the archives
I trimmed out some deadwood from the blog (it went back to 2001!).
Early on in the blog I used to post a lot of links, they were like tweets before twitter. Some are still valid and useful, but the posts are not so I'm collating the stuff I thought useful below:
Early on in the blog I used to post a lot of links, they were like tweets before twitter. Some are still valid and useful, but the posts are not so I'm collating the stuff I thought useful below:
Magazines
- Free Software Magazine
- [In]Secure - security magazine
- Crosstalk
- Software Test & Performance
- Methods & Tools Newsletter
Useful Links
- xunit test patterns
- Peter Alfeld's handy summary of "How to solve it" by G. Polya
- The Portable Freeware Collection
- R, and a useful tutorial series on the IBM site Tools
- opensourcetesting.org
Model
Observe
- Kakeeware Application Monitor displays an application's API calls. freeware for non-commercial use only
- free grep and tail with easy to use GUI on windows, with no install routine they are perfect for your usb toolkit
- sysinternals tools
- evolt.org maintain an archive of installs for old browsers. Perfect for browser compatibility testing
Manipulate
- SoapUI is an open source web service testing tool which can use xpath for expected result checking. Useful for running scenarios through a webservice. Does not require a WSDL. Supports GUI and Command Line invocation and can be easily evaluated via webstart.
- Try exploratory testing of webservices with The Fiddler in reverse proxy mode. Set breakpoints and edit HTTP requests and responses on the fly.
- AutoIt (an opensource GUI scripting language) has an IDE based on Scite which makes it really easy to record, edit and run AutoIt scripts.
Regular Expressions
- RegularExpressions.info for a great reference site
- The very useful regular expression tester The Regulator
- RegexLib.com is a useful cookbook site for regex
- RegexAdvice.com for regex community assistance.
- Mastering Regular Expressions (amazon [.com] [.co.uk])
Security Testing
- Cross Site Scripting Reference,
- SQL Injection Walkthrough,
- SQL Injection Attacks by example,
- NGSS white papers (pdfs: advanced SQL injection, more advanced SQL injection)
Articles
- I'm a broken record. From 2004. Professional Tester magazine put a pdf of my article "Help Yourself" online in their article archive.
Sunday, 1 November 2009
Book Review: Coders at Work by Peter Seibel
Of the 15 names in the list I recognised just 7, so I can't claim to have a great knowledge of great programmers. But that just seeing Donald Knuth on the list made me want to read the book. And having read it, I recommend it to you.( amazon.co.uk | amazon.com )
The interviews share questions so you get a common feel for how the interview subjects all learned their trade. But the interviews flow as conversations with Peter Seibel injecting the common questions as appropriate for the person.
All interview subjects pass on ‘pragmatic’ views rather than PC mainstream views, and most of them started developing these views when developers worked closer to the metal and software had fewer lines of code, sometimes in languages we barely remember.
I find reading interviews interesting but slow work, so it took me quite a long time to finish this book, despite reading a pre-release copy, I didn’t manage to get a review out until well after the book’s publication date.
I originally wrote a longer review, peppered with quotes and a serial walk through of all the interviewees, but you can do that when you read the book. Instead I have pared it back to summarise some of the things that came across strongly from the book for me:
- work at your craft constantly,
- read code to learn from other people,
- write readable code – in some cases literate programming
- keep thing simple,
- build code, to ship products
- build incrementally and functionally to learn quickly
- do not over-engineer
- keep learning “If you don’t understand how something works, ask someone who does.”
- Use your app and have it running all the time.
- Good programmers program for fun outside of work - not just during work
- Think in subsets of languages and libraries – learn those subsets thoroughly and understand their limitations – use them based on appropriateness, complexity, applicability, and how well it lets you communicate
- Ship it – re-factor it
- Use static analysis
- Hire for smarts and practical ability rather than random and abstract problem solving
- Simplify
I also learned a few tips about naming conventions and commenting to allow scanning of code to pick up errors e.g. customerName and customerNames would instead have names like customerName and listOfCustomerNames to allow human reading/scanning to see the difference.
The various interviewees have strong opinions about programming languages, but I don’t remember any of them having found their perfect language.
Very few of them seemed to use IDEs, which suggests that they had in-depth and detailed knowledge of the language they coded in, and the libraries they used. Certainly, I use IDEs because I do not have that level of knowledge.
Automated testing doesn’t get covered very often by the interviewees, and those that do mention it cover it pragmatically – using it to automate the ‘clever’ code to guard against people changing it without understanding it.
Many of these programmers thought of themselves as writers – hence the emphasis on readable code and reading other’s code.
When not programming these people spend their time learning about and thinking about programming. The 10,000 hours to expertise comes through strongly in these interviews and they act as mentoring sessions. All of the interviewees have taken apart frameworks and other people's code to see how it works, they have all worked closely with other very good people so had many opportunities to learn. Even if you think the people you work with do not have the ‘greatness’ you desire to learn from then you could pick the code from open source projects to read - but you have probably underestimated some of the people you work with.
For me, as a tester – an old programmer, but not as great as I used to consider myself. The fact that all these very strong developers talk about simplicity, readability, writing. Makes me feel better about my programming skills and gives me hope that by identifying subsets of the languages that I use well, I can still write good code.
“Coders At Work” links well with the notions presented in Kent Beck’s “Implementation Patterns”. And based on these two books I have subtly changed my approach to coding and now read more code.
Recommended reading for both developers and testers.
Related Reading:

- buy book and read reviews at amazon.co.uk
- buy book and read reviews at amazon.com
- Official homepage with profiles of all interviewees
- Peter Seibel’s blog – has useful follow up blog posts expanding on the book’s content
- Review of Masterminds of programming
- Joel on software review
- The code for http://www.jslint.com/ – mentioned in the interviews
- http://code.google.com/p/google-guice/ – mentioned in the interviews
- Kent Beck Implementation Patterns http://www.infoq.com/interviews/beck-implementation-patterns
Subscribe to:
Posts (Atom)