Author: way0utwest

  • Leave Developers Alone

    This editorial was originally published on July 25, 2011. It is being republished as Steve is at the PASS Summit.

    A computer deals with interrupts all the time. They are the mechanism by which it can simulate multi-tasking among many different programs in a modern operating system. However those interruptions have a price, and too many of them can affect performance. As hardware grows larger, we have other issues from interruptions that we try to mitigate with techniques like soft-NUMA affinity or multiple pipelines built into hardware. All of these are designed to prevent a computer from spending any significant time on non-productive tasks because of interruptions.

    In the real world, many of us deal with regular interruptions from work. They might be emails, instant messages, phone calls on a cell phone, or the old fashioned someone-stopping-by-your cube-to-chat. All of these things add up to less productivity, especially for developers. One study finds a 10 point IQ drop from regular email and phone interruptions. I don’t know about you, but I’m not sure I can afford a 10 pt drop in IQ when I’m working.

    Some companies are starting to realize that developer’s brains are a scarce resource, and interrupting them can dramatically impact productivity. I have found some places, like this one, that are setting aside quiet time for developers to work without being bothered. Similar to the technical debt that Steve McConnell has talked about, there seems to be an interruption tax that some development shops are loathe to pay.

    Even if you don’t gain any productivity, or have fewer bugs, or ship more often, I think that your developers will appreciate it. It could be an easy way to increase happiness, improve retention, and even sell your company as a good place to work. And it’s easy to implement: just leave people alone a few hours a day.

    Steve Jones

  • Masking Data

    This editorial was originally published on Mar 7, 2008. It is being re-run as Steve is out of town.

    I saw an interesting thread awhile back where one of our very talented community members was asking about how to go about altering data in an application for a demo. It’s a valid scenario and one that I’m sure many people have run into at some point in their career. You want to show data that’s somewhat real so that it showcases the application and what it can do, but you don’t want to show real names, amounts, or any identifying information.

    A bit of a quandary and it seems that many people solve it in one of three ways. They just use test data, which is a very small set of data and doesn’t show as well. Or they may alter everyone’s name to something like “Steve Jones”, all phone numbers to 555-555-5555, etc., which looks funny.

    Or you just show the production data and wink and say “I don’t usually do this, but since you’re such a valued client…”

    So for the Friday poll: Do You Alter Production Data When It’s Copied?

    Meaning when the data gets moved to a non-production system (demo, test, development, etc.), do you alter the data and obfuscate it to remove any identifying information. Make it “safe” data that can’t be used to somehow compromise your production system.

    It’s a good practice, and one that I used to follow at a couple companies. I didn’t have any tools, but I did write scripts, load a few base tables of names, and then run those scripts as part of the restore job. They would randomly reassign new names to people, companies, addresses, etc. We would also redo phone numbers in sequential orders (555-555-0001, 555-555-0002, etc), and even randomly add products to sales or amounts to financial figures. It wasn’t perfect, and if you worked on the production system a lot you could guess which people were which, but it worked well for testing and client demos.

    I actually ran into a product recently (Camouflage) that does this and it’s a great idea. It’s something that quite a few companies should be implementing to ensure that their non-production systems are that much more secure.

    Steve Jones

  • No Live Blogging

    The PASS Summit opens today with the first keynote. This is one of the few times that I’ve declined the blogging table at PASS. The table has grown, it’s become a bit loud at times, and the pressure to take notes and push them out distracts me from listening and thinking.

    As  a result, I’ll be in trying to think about what’s happening and what it might mean for our industry. Having given keynotes and developed them, I know it’s a marketing show, and a bit of entertainment. However it also can generate some excitement, and certainly the ideas shown can influence managers and executives, which can free up money for us to play with.

    I’m a bit excited to see what’s coming, and what Microsoft might announce. If you’re not at the Summit, jump on the PassTV channel and watch live.

  • A Great SQL in the City 2015 Seattle

    Yesterday was the Seattle edition of the 2015 Redgate Software SQL in the City tour. I was in London a couple weeks ago for the first event, and we closed out the year in Seattle on Monday.

    I had some, fun, as you can see here.

    IMG_1541

    Slava Murygin has a bunch more pictures on his blog. Check them out and you can see how much everyone enjoyed the event.

    The day started early for me, and with rehearsals early and the need to iron a shirt, I didn’t get a chance to work out in the am. That was disappointing. It still was a 10k step day, but I’m looking forward to yoga or running today. We arrived and practiced, working through the demos and talks with our CEO, Simon, and  Alastair, a developer working on Visual Studio stuff. We felt a little less polished than in London, and I think we were all more nervous this time.

    The keynote seemed to go OK. We missed a few lines and I was hoping it wasn’t too cheesy showcasing tools, but people seemed to enjoy it.

    My Version Control talk started slow, and I was a bit worried about time, but ended up going long with some questions and had to skip some of the branching stuff. I need to write more and get some things up on this blog since I didn’t cover the topic well enough. I have to apologize to Brian Randall for running long. I gave him about 3 minutes to setup before his session.

    The rest of the day was chatting with people before the panel at the end. I think the panel is one of the more interesting sessions, with us debating and chatting about building software and we got lots of questions. There were 4 or 5 more hands in the air when I had to cut things off. I’d really like to see us do two panels a day, with only 3 people and the chance for more questions from attendees that are struggling with issues.

    I had to rush out of the event for the networking dinner with Andy Warren, but it was an enjoyable day and one I hope we repeat in 2016.