Backing Up SQL Server to Development

On our current project, we try to keep testing as close to as what’s going in proudction as possible. We take frequent database backups (appropriately clean some of the data) and then each developer and the QAs restore them to local copies of SQL server. The DB in production is massive with its transaction file, so here’s a way of speeding it up for local copies.

  1. Restore the DB into a copy of development
  2. Trim what tables/stored procedures/etc you don’t need
  3. Shrink the DB
  4. Detach the DB and remove the log (LDF) file (our prod log file is about 2G and even though it’s empty when we back up, it takes an excessive time to restore)
  5. Reattch the DB and back that up
  6. Restore whenever you want and it should be faster

Away Day Reflections

Every so often, one of our offices around the world hold an internal conference, that in the UK’s case is called thee Away Day. Just like many other conferences, you get a whole heap of people together and you find out some interesting things. Since our office is so large and we had quite a number of visitors, you also end up doing a bit of networking.

Sessions I attended included Marco Abis’ sessions on “Back to People”, Erik Dorenburg and Nick Drew’s presentation on “Software Visualisation”, Angela Martin’s “Customers are from Mars, Developers are from Venus”, my own presentation about “Lean at Large: The Value Stream Map”, and then a brief session with Martin Fowler on a summary from a small gathering he had on DSLs.

Getting to Yes

Getting To YesI finished reading this book a few weeks back and I found it a very compelling read describing a different negotiation technique developed by people from Havard. I found it a very easy book to read, filled with great examples and it is quite a brief book.

The book calls traditional negotiation ‘positional based negotiation’ where two parties state their intended position and leaves two styles, hard and soft or aggressive and passive, to reach their stated position. These two opposing styles of resolution typically lead to inadequate outcomes for both parties whilst endangering long term relationships between the two parties.

The book proposes an alternative style that they call ‘interests based negotiation’. In this latter style of negotiation, the goal is to first identify and then fulfil the real interests behind each party. With interests truly understood, it is then easier to generate more options and objectively identify the options that will increase the chances of fulfilling both parties’ interests in the best possible manner.

I found this book offered other great pieces of advice such as separating the people from the issue, and a number of strategies for dealing in situations where people are unable or unwilling to participate in this style of negotiating.

The Personal MBA

I really like the concept of the Personal MBA that Josh Kaufman offers in the form of a nice downloadable PDF. It’s short, succinct and though it’s easily interpreted as just a booklist, I think it offers valuable advice. Before stumbling across this, I had read a number of the books he mentions and found them useful if not thought-provoking. It is also good to know a number of other books that have been sitting on my reading list are listed as well. Check it out here.

October London Ruby User Group

Last night I attended the October meetup of the London Ruby User Group. I’m glad to see that it is an active community in London and last night apparently held the biggest turnout with about 40 (ish) people turning up. The meetup hosted two guest speakers who both spoke about DSLs (a popular topic that apparently came up in August as well). The first speaker, Robert Brooks took an admittedly less technical approach and spoke of the impact that they had at his work for some new shared department between the House of Commons and House of Lords, where he is using both Ruby on Rails and Ruby in several ways. The second speaker, Damien Turner gave a little bit more of a hands on approach to DSLs as inspired by a number of blog entries by Jay Fields.

Like most English meetups, eventually the night turned to the pub where you got to chat and meet the rest of the attendees. Interestingly a lot of them were java programmers who either wanted to use ruby, or are using ruby in some support form, but a few are doing ruby or Ruby on Rails as part of their day job. I thought the community was great, and I’ll definitely be trying to make it along next month. If you want to come along, check out the LRUG website or check out the next event on the London upcoming site.

Top Tips With User Stories

Last night I heard Mike Cohn speak about Agile Planning and Estimation. Mike’s a great speaker who I highly recommend to you seeing, but you may know him from his company, Mountain Goat software, or his book, User Stories Applied.

Though I’m lucky enough to practice many of the items he spoke about, my most favourite emphasised points of the night included:

  • Focus on accuracy over precision;
  • Avoid measuring items that are more than a magnitude apart; and
  • Measure size over duration.

Stopping Spammers

No SpamAnyone who has owned a blog using some standard blogging software will have dealt with horrible spam at sometime. It’s a frustrating and time consuming annoyance, and many people give up to the torrents of spammed comments or trackbacks. Obviously there must be some economic reason for spammers to continue, but I do (and I’m sure that you too) hope they pay dearly for it in karmic retribution later in their life.

I’ve tried several attempts to stop spammers, but most techniques require additional work. I considered the Captcha plugin, that is a popular tool many people adopt, but forces real commenters to work more (by typically reading an image and inputting some numbers or characters) and reduces the accessibility of your website.

My most recent attempt which seems to be working (so far) is the Akismet plugin for WordPress. For other wordpress users out there, I suggest giving it a go.