development programming

ScotSoft2016 Developer’s Conference

Normally after attending a conference, I will give a review of the talks, the interesting topics and the event itself. Unfortunately I don’t feel I can do that for ScotSoft2016. Despite being billed as a “Developer conference”, it felt like a technical event for non-developers. Enough of an overview to start to explore, but not quite enough to satisfy technical appetites. There were some good talks, but it didn’t feel like a Developer’s conference.

That said however, I did enjoy the keynote speakers, Sam Ramji of CloudFoundry and Troy Hunt of Have I Been Pwned. And there was some great advice from Asko Seeba about how to avoid writing next year’s unmaintainable legacy code by picking the right frameworks and technologies. I’m also told I missed a great pre-Halloween scare from 7Elements’ David Stubley about how insecure your web application is (although I wasn’t sure if he was wearing a hoodie and writing green text).

There was some useful information, and despite being a long day, it never felt like it. I can’t fault the venue, or the expo, and the speakers were all practiced and delivered their information well, but only a couple really hit the mark, sparking off ideas for me to go and explore.

I heard good things about the Global Forum and evening events in the conference. ScotlandIS is certainly creating the right framework for a good conference, so I’ll definitely keep it on my radar for next year and hope they figure out exactly who their audience are..

code development programming security

CodeCraftConf by @codecraftuk

Follow @codecraftuk on twitter
CodeCraft logo

The tickets for CodeCraftConf are now on sale. It’s based around the idea of full participation, where every attendee is there to discuss the topics. The format is of guided conversations, which has worked well for sessions in the past, and I’ve included a list of some of my previous sessions using a similar format below for reference. I’ve used the mindmap format for sessions I’ve done in the past so that there is a solid summary that attendees can refer to if they wish, but I have also been involved in sessions at other conferences that were deliberately transient in order to foster honesty and controlled venting, more like a support group for frustrated developers.

I am looking to guide a session at the conference and will be talking to the organisers about the topics,. If you look at the list below, and the conditions on the conference site, it should be clear that this will be a philosophy of code conference rather than a discussion of all the hot technology you don’t know about yet, but really should. (and number 5 will change your life forever).

I realise that holding the conference in a pub, even one as good as Drygate, will challenge the training budgets of some companies, but it looks like a great concept, and I hope the conference takes off. Many thanks to Joe and Gary for bringing this together, and I look forward to meeting everyone there.

What you missed at DDDs

My previous chaired discussion sessions, with mindmaps for reference.

development Hangout

So Long Hangouts, And Thanks for all the fish

I’ve been re-evaluating the time I spend on the developer hangouts, and despite the interest I get from the invites, the turnouts have not been high enough to sustain these meetings. As a result, I will not be hosting any more.

If there is interest, I may think about a podcast-like Hangout-On-Air, but I would need some speakers for that, and I think that outlet would be better served by the plans +TechUp Inverness has for streaming their talks, and I might see if I can persuade other Scottish developer talks to make more content available online for streaming and reviewing (although I know from experience at work, there is a significant extra effort involved in setting such a thing up).

It’s been an interesting experiment, but it’s time to try something else. In the short term, I will be using the time I spent on this to update my blog as I’ve got a backlog of posts about node.js that I want to complete.

Many thanks to everyone who attended any of the hangouts this year. I hope to catch up with you all again in person at other events.

development programming

Made of Stone : Lean UX and Requirements as Assumptions


Edinburgh : Made of Stone
Edinburgh : Made of Stone

Here’s a link to a blog post I wrote for Amor inspired by UX Scotland

Last month I attended the UX Scotland conference in Edinburgh, and you can see my scruffy notes on the talks on my Evernote account, if there’s anything you want to know more about. It’s a designer led conference so there’s a lot more graphics and psychology than curly braces and metrics, but developers were welcomed.

Is your software made of stone?

Made of Stone : Lean UX and Requirements as Assumptions

code development programming

Slides and Mind Maps for DunDDD

DunDDDAs promised, here’s the slides and mindmaps for the sessions I was involved in at DunDDD 2011. The Mind Maps were generated using FreeMind.

The Philosophy of Code

This talk was an experiment on my part, given the knowledge I’ve picked up from reading books and articles from some of the smartest people in the business and beyond, and I wanted to share some of that. As Gary Park noted, it still needs some polish, but I think there’s a good idea in there, so I hope to get another chance to present it in the future. The presentation itself is licensed under creative commons, but please pay attention to the photo attributions if you want to use them in your own work. I’ve also included a link to the original mind map which contains many more great quotes.

Google Docs : The Philosophy of Code

Mind42 : The Philosophy Of Code

Download The Philosophy Of Code Mindmap (.mm format)

Software Requirements

The original presentation was given by Craig Murphy (on Twitter as @CAMurphy) and is available here : Open Discussion on Software Requirements

The mind map generated from the discussion is reproduced below.

There was a good discussion of how requirements can have different levels of detail and how the methodology can shape the process and the documentation, as well as the change process. A bit of waterfall vs. agile, but each has their place.

Mind42 : Software Requirements

Download the Software Requirements Mindmap (.mm format)

How The Web Was Lost

This talk drifted a little, since we agreed fairly quickly that with the demise of Flash and Silverlight, and the rise of the web-powered desktop in Windows 8, the web has in fact won. +1 for open standards. But where does that leave the behemoths like Apple and Microsoft who have benefited the most from the traditional role of the desktop. Can they keep developers and users on their platforms, or will they be lost to cross-platform development?

Mind42 : How The Web Was Lost

Download How The Web Was Lost (.mm format)

code programming test

DDDS2 : TDD? I Don’t Have Time round-up

As a final sign-off on my talk, before it’s released fully to the world, I wanted to discuss the feedback I got and direct people to other thoughts on TDD. It’s all in the interests of openness, so feel free to add any further comments.

First of all, I would like to say that my slide decks and code are now available on the Developer Day Scotland website (Thanks Colin):

Speaker: Craig Nicol
Title: TDD – I don’t have time

2009 Slide Decks – Developer Day Scotland


Overall the feedback was fairly positive, and it seems that a lot of people got a good sense of TDD from the demo, although I accept that the pacing was a bit wrong and it was bad form to end the session with some failing test. Still there were some good questions in the Q&A so I’d rather have finished a couple of minutes earlier and had more questions than push on with the coding. I few people suggested that fewer slides and more code would have been good. I’m all for that, I’m a nervous speaker, and it’s been a while since I last presented, so more typing and less speaking works for me, especially when it gets interactive.

I do accept that I probably spoke too fast, and it’s not the only time I’ve been told that, but I hope that will resolve itself with a bit of practice and some better breathing.

For the person who wanted a better comparison of tools, I wish I’d had the time for that, but all the tools worth using have free trials, so have a look at this list from my previous post and try them out yourself:

I don’t know what tools to use

Test Driven Design : Developer Day Scotland 2 « Craig Nicol’s Weblog

For the person who wanted a take home message to answer the point over “I don’t have time to test”, I think I mis-sold the talk a little, and I should have made the mythbusting part more prominent than my original catchy title. I hope I answered a few points about why it can save you time in the long run, but my apologies if I did mis-lead you.

Thanks to Richard for this review. Glad you found the live coding helpful.

10:45“TDD? I don’t have time” by Craig Nicol Craig talked about TDD from baby steps and I gained a lot from it. Was a real shame that the tests he wrote ultimately didn’t pass but the promise of code to finish off gives me something to dig into!

irtimaled: My #dddscot Sessions

Other Resources

If the talk has whetted your appetite for TDD, have a look at the books linked from my previous post and have a look at these three links to help you join the discussion.

TDD Tests are not Unit Tests
Let’s start with the distinction between TDD tests and unit tests. On the surface, TDD tests are very similar to unit tests. This is not surprising, since you use a unit testing framework such as Visual Studio Tests or NUnit to create both types of tests.

TDD Tests are not Unit Tests

good design is far more beneficial and important than the practice of unit testing. However, good design + TDD/Behavioral Driven Development/Acceptance Test Driven Development? That’s where the real rewards happen. Don’t settle for mediocre efforts. Do both and reap the rewards.

Design and Testability – Jeremy D. Miller — The Shade Tree Developer – CodeBetter.Com – Stuff you need to Code Better!

If you do want to dive into TDD, you should also look at Behaviour Driven Design (BDD). I’ve heard it called TDD without the T-word, or an extension and refinement of the philosophy, but however you see it, if TDD is your thing, you owe it to yourself to have a look at the BDD road to design and testability. This link has a lot of good onward links, and it’s a podcast so you can listen while you work, or on the bus. It’s a bit more interesting than Eurovision.

This week on Herding Code, Scott Bellware educates and entertain as only he can. Scott talks about Behavior Driven Development (BDD), Test Driven Development (TDD) and Lean Software Development, gets “all preachy” and donates to the show a nearly endless batch of outtakes.

Episode 42: Scott Bellware on BDD and Lean Development | Herding Code


Thanks again to all the organizers and attendees of Developer Day Scotland.I’ll shut up about TDD for a bit, unless anyone’s got any questions. If you decide you want to use this presentation, it’s open via the Creative Commons license, but please let me know, as it’s interesting to see where it goes.

Blogged with the Flock Browser

Tags: , , , , , ,

code programming test

DDD Scotland roundup : TDD talk available for download

Thanks to everyone who attended my TDD talk at the weekend. I’ve already got some good feedback, and I accept that maybe I didn’t have a clear enough title or take home message. It was about more than just not having enough time, but the take home message of TDD should be that the overall cost of development will depend much less on debugger and tool performance and much more on the quality of your tests, which is something you have far more control over.

The final cut of my presentation and code is available via the ScotAlt.Net code repository, and it will be available from the ddds site. It is also current available at:

I’m still following the #dddscot and #tdd streams on twitter if anyone wants to send feedback via twitter, or post a comment here.

If anyone can make it to Glasgow city centre this week to talk development, you’ve very welcome to join us at the ScotAlt.Net meeting in Waxy O’Conner’s in Glasgow this Tuesday 7th May at 7:30.

For anyone at my or horn grok talk, or who was interested in the links at the end of my talk, here they are again in clickable form :

Amazon referal links for the books referenced in the talk, other book sellers are available:

Blogged with the Flock Browser
code google programming search test

Developer Day Scotland 2 is tomorrow

OK. Slides are written, code is prepared. Laptop is charged up. Hopefully I’m ready for tomorrow. The final cut of the presentation is quite different from the one linked in my last post. I hope to be able to get it up for sharing on Google Docs, but it is available via the ScotAlt.Net code repository, and it will be available from the ddds site.

I’ll be following the #dddscot and #tdd streams on twitter if anyone wants to send feedback on the day (I may be nervous now, but I’m always willing to learn). I may not be able to respond to the feedback straight away, but It’s always gratefully received.

Hope to see lots of folk there, and be sure to bring your questions. If I can’t answer them, I’m sure someone in the audience can, or bring them along to the ScotAlt.Net meeting in Waxy O’Conner’s in Glasgow this Tuesday 7th May at 7:30.

Blogged with the Flock Browser
code programming test

Developer Day Scotland : Talk refactoring

An update for anyone following this. I’ve decided to refactor the talk linked to from my last post. I’ve created three sections to try and create a better flow and justification. The first act sells the idea of testing itself. The second act looks at the test-first approach, and the final act looks at Test-Driven Design as a methodology that builds on the the ideas of testing and test-first. I’ll post the updated talk up once I’ve had a chance to batter more shape into it. Hopefully the talk will now build up, and people who only pay attention for the first 10 minutes will hear enough to keep them interested for the next 10, and then the next 10… (Yes, I did enjoy proof by induction thank you)

Blogged with the Flock Browser
code programming

Developer Day Scotland 2 : 2 May 2009

Just heard about next year’s Developer Day Scotland 2 event in Glasgow. I may be attending, and I might think about giving a talk. Possibly IronPython, possibly Alt.Net. I’d be interested to hear any of your talks to, so pop over and have a look.