Monday, February 18, 2019

My Issues with the Agile Team Room


I think I'm an introvert.  I like sharing my knowledge and learning what others know but I don't prefer large groups of people. I prefer to be alone most hours of the day.  Being comfortable by myself contimplating problems has helped me in my career as a web developer so far.  I've worked on large distributed teams also and had little trouble.  I'm an expert at digital communication tools. 

I think I have been a very good teacher and mentor to my more junior developers but I don't micromanage and let them have time alone to figure things out.  I've forced myself to be outgoing and entertain the team when I needed to but prefer to be a tag along during outings.

So now that you know all this, I'd like to discuss Agile Team Rooms and my preferred work space. Team rooms and my home office are on completely opposite ends of the spectrum.

Working on an Agile team requires a lot of informal communication and quick feedback.  I'm all for that.  I dislike waiting when it's easier for a quick timely conversation, even if it interrupts what I'm working on, I understand.

I just can't emotionally handle being that physically close to other people all day.  Every day, all day long sitting within inches of someone else makes my skin crawl.  When I have to lean up in my chair so someone can get up to go to the bathroom, that's just not enough work space for me.

I've worked in this sort of space once before.  It was called the "contractor room".  It was in a space at Exact Target (now Salesforce) that was organized to fit as many contract developers as possible without burdening the floor joists.  That space seemed temporary though.  Once a contracted project was over or a contractor hired on permanent, they moved to a more open space with some privacy and quiet.

After researching Agile Team Rooms, I have found that it was very popular at first back around 2010 but has become less popular.  Another term used was "War Room". The issues with war rooms came after the "Death March" projects that went on in them.

I haven't found a lot of writing on war rooms as the only work space for a developer.  The war room seems to be a concept to be used at crunch time and short term projects.

I've come to the conclusion that I'm working in a space that isn't good for a person with my personality traits.

Perhaps a room with slightly more space would be better?  Mixing developers and others isn't the idea but elbow room would be nice.  One could still come over anytime for quick feedback but not eat their sandwich and smack their lips while someone is trying to code.

I need to find a remote job.

Monday, January 28, 2019

SQL Saturday Cleveland 2019

Time:  Feb 2

Alan and I haven't spoken together for a while.  I mean we talk often but not presenting in front of an audience. Last year, Alan and I submitted our Grudge Match: XML vs JSON session to Cleveland and were delighted when chosen.  It's a lot more work to coordinate with a speaking partner when choosing when and where the both of us can be.  I'm really glad it worked out again.  The responses we received the first time were great.

Place: Cleveland

Northern Ohio has a vibrant .NET and SQL community.  Cleveland puts on several meetups each month and a couple yearly events like SQL Saturday that bring a large number of people together.  The larger companies like Hyland have great facilities and share them with the community and put on great parties.

Cleveland is great. It's a big event with great crowds that give awesome feedback and support. Sometimes with other venues there are issues but I have found that Cleveland really never has many.  I've been impressed with every event and meetup that I have spoken at in Cleveland.

Talk: Grudge Match: XML vs JSON

The format is a match between two technologies and two speakers.  Our session is interesting because it points out a few basics that professionals always need to keep in mind but on a pretty advanced or niche use case.
  • Never forget the internals of SQL Server
  • Test everything for performance not just easy coding patterns

Sunday, December 23, 2018

My new Dell XPS 15

I’m really enjoying my new laptop. About a month ago I splurged and upgraded to the Dell XPS 15 9570.  It has the 8th Gen 6 core i7, 16GB RAM, 512GB SSD and Nvidia GTX 1050 TI. So far I’ve only been running Windows but I might make it dual boot later.

Annotation 2018-12-23 091016

I’m running on the latest preview builds of Windows and its been pretty fun.  This Dell has everything I would need to code almost just about everything.

With the GTX, I decided to add some games and the Unity developer tools on it.  It’s doing quite well.  It a really good gamer compared to other laptops that I’ve owned.

One thing that I downgraded was the monitor.  I didn’t appreciate the glossy high res touch display on my XPS 13.  I actually prefer to code on this matte finish, non-touch, HD display.  1080 is fine and I don’t need the 4k.  It has been said that I’ll get better battery life with this set up also.

When I’m presenting, 4k doesn’t help all that much either.  Most conferences barely have HD projectors.  So at a lower resolution, maybe I’ll be using ZoomIt less.

Annotation 2018-12-23 091902

I recently let my XPS 13 from 2015 go to my son.  He loves the form factor of the XPS 13 and it’s still plenty fast.  The battery doesn’t last as many hours as it used to but it’s good for him. 

The XPS 13 is much lighter than the 15 but the 15 is much lighter than a Latitude.  For you Apple Fans, think of the 13 as a MacBook Air and the 15 as a MacBook Pro.

Note to Pros:

Some developers use their work issued laptop for personal computing.  I don’t do that.  If company policy states that it is to be used for business purposes only, I don’t mess with it.  Owning my own computer, I also get to experiment and run preview builds of operating systems or other tools.  I won’t be risking downtime and my career because of running too close to the bleeding edge.

Monday, December 3, 2018

Web Development Rockstar Unicorn with Ninja coding skills who moonlights as a Wizard of Data

Are you a developer?  Maybe you are a recruiter? Hiring manager?  If you are then you probably know what I'm about to write.

IT and development job descriptions can have pretty demanding skill requirements.  In order to take short cuts or make things sound 'cooler', hiring managers create job descriptions looking for Ninjas, Rock Stars, Wizards, Unicorns and other things other than programmer.

  • Ninja - a developer who codes quietly in the dark and kills any task required by his master.
  • Rock Star - a developer who stands out in a crowd and loudly codes better than everyone around them
  • Wizard - a developer who magically creates software that everyone loves without any guidance and utilizing less hardware or maybe no hardware at all
  • Unicorn - a developer who is an expert at all forms of programming.  A Unicorn (Full-stack Developer) can code the UI, API, database, virtual reality, business intelligence and everything else and do so all by themselves as equally well as any other more specialized developer
Of course, if you are actually in need of a real Ninja or Rock Star than perhaps you hate that these job descriptions.  They are in the search results of your best Ninja/Rock Star/Wizard candidates.  I'm sure the hiring managers and recruiters would apologize to you.  My guess is that the majority of the Ninja ads are for developers available to moonlight at night for little money or no credit.

Are you a developer?  The cool thing is that you can filter out these ads for Ninjas and find real work. 

The hiring managers looking for real Ninjas will appreciate you not applying accidentally.  You might be very good with a sword and can quietly assassinate heads of state, and that's nice and all.  If you want to stop killing people and just code, filters will help. 

Are you a hiring manager?

There are better words to use rather than all these listed here. "Experienced", "professional", "adaptable" are 3 better words for sure.  Tell us about the company not about something you want from us that we can not give.

Are you flexible?  Care about results instead of time cards? Do you want us to keep learning and attend conferences?  Do you want us to be professional and not get into trouble and speak technically and organize our thoughts?

We can work weird hours from anywhere with an internet connection.  We love creating working software that's ships.  We love learning.  We love preparing for demos and being ready to get in front of clients instead of embarrassing ourselves with cheap jargon.


I really dislike the uses of Ninja, Rock star, Wizard and Unicorn in the tech industry.  It is just a bunch of crap and not very technical.  You are speaking to a bunch of the most technical people in the world.