Welcome

You have reached the blog of Keith Elder. Thank you for visiting! Feel free to click the twitter icon to the right and follow me on twitter.

Deep Fried Bytes Episode #66: Getting a lesson about Technical Debt from Gary Short

Posted by Keith Elder | Posted in Podcast | Posted on 06-04-2011

alt

http://tinyurl.com/deepfried66

In this episode, we sit down with Gary Short of DevExpress to talk about Technical Debt, the cost of putting off good development practices, and how it can cripple a project’s velocity, flexibility, and quality.

Thanks to our guest this episode

garyshort

Gary Short works for Developer Express as the Technical Evangelist on the frameworks team. He has a deep interest in technical architecture, especially in the areas of technical debt and refactoring. Gary is a C# MVP and gives presentations at user groups and conferences throughout the UK. As well as C#, Gary also has an interest in dynamic languages such as Smalltalk, Ruby and Python as well as iPhone development using Objective-C.

Gary’s blog is at http://community.devexpress.com/blogs/garyshort

Gary can be found on Twitter at http://twitter.com/garyshort

Show Notes

Download Show

Slides and Demos from Olrando Code Camp

Posted by Keith Elder | Posted in Speaking | Posted on 02-04-2011

Last week I spoke at the Orlando Code Camp. Great event, huge turn out and both of my sessions were very well attended.

As promised I am including in this post the slide deck and demos from my two talks.

You can download the decks here:

OrlandoCC2011.zip

Thank you to those who attended my sessions I had a blast! Hope to see you next year.

Taking TFS Offline in Visual Studio to Work Locally With Git and PowerShell

Posted by Keith Elder | Posted in Git, PowerShell, TFS, Visual Studio | Posted on 23-03-2011

Tags: , , ,

I have been using Git (a distributed version control system) more and more lately. At work we are currently using Team Foundation Server (TFS) for our source control. Doing something as simple as checking out a file over the VPN (I work remotely) takes countless minutes out of my day. Even doing something as simple as editing a file takes time.  The seconds add up to minutes and the minutes add up to hours over time. I think I found a work around to using TFS with Git that satifies my needs. Let me know how it works for you.

Here is what I wanted to do:

  1. Use PowerShell with Git to work locally (it is faster)
  2. Put TFS in offline mode and then go online to commit back to TFS, then go back offline

Sounds simple enough but the way TFS works is when you open a solution it tries to connect to TFS. This is the only way to make TFS think you are offline. It almost means you have to disconnect your network cable, load up a solution, wait and let it figure out it is offline. Not optimal.

I got to looking around for a way to just set TFS in offline mode. After much looking around I found nothing, nothing at all. Some more searching I found a VS2010 extension that adds a “Go Offline” option in the File->Source Control menu. Sweet! Here is the link to the extension.

http://visualstudiogallery.msdn.microsoft.com/425f09d8-d070-4ab1-84c1-68fa326190f4?SRC=Home 

Here is how it looks after installed.

image

Clicking this takes the solution offline. What does this mean? It means when I need to move a file around or change a file, or edit a file things are instant locally (the way they should be).

Locally I’m using Git to do my check ins, branching, etc. Once I’m done I take the soluction back online by connecting to TFS and then commit the changes back to TFS (or shelve them if I need to share with a team member). I’m currently using PowerShell with GIT and some PowerShell prompt coolness with Git too.  To do this I’m using posh-git (PowerShell environment for Git). Here’s a sample screen shot (and yes the Git branches are in the prompt along with some stats!).

image

You’ll see the word “Sonic” in blue text. That is the current branch I’m on. The numbers in the prompt are how many files are added, modified or deleted since the last commit. Easy quick and elegant. I’m digging it.

I haven’t been using this very long so I *may* run into some weird situations, if I do I’ll update this post. Let me know what you think if you’ve been using Git with TFS and pass along any tips! Happy coding.

Up and Coming Talks at Orlando Code Camp March 26th

Posted by Keith Elder | Posted in .Net, Speaking, WCF | Posted on 19-03-2011

Next weekend you will find me even further South than I normally am as I’ll be speaking at the Orlando Code Camp. A huge thank you goes out to one of the best places to work in the country and that is Quicken Loans (my employer) that not only allowed me to take a day off to get to Orlando but also helped out with the travel. Not only does Quicken Loans hold the current the highest nationwide ranking in mortgage origination satisfaction but the company understands community and wants to help give back where it can.

While in Orlando I’ll be doing two talks. One is a Back to the Basics talk that I was very happy that got chosen because honestly we do not have enough of these at code camps. This is the exact same session I’ve done at larger conferences such as TechEd and Codemash. Thus if you have any team members that don’t know .NET send them here!  Here is the abstract:

No other name in history has confused more people on the planet than when Microsoft named their development platform .NET. For a lot of developers .NET remains a mystery and it is often confused with many things. The Back to the Basics series is a primer for anyone that is starting at ground zero with .Net.  In this session we’ll look at what .Net really is, the benefits of the platform, bust a few myths and show some sound reasons why you should consider it as a platform. At the end of the session, hopefully we’ll answer one of life’s most puzzling questions: What is .NET?

The second talk I’ll be doing is on Windows Communication Foundation entitled “Demystifying Windows Communication Foundation 4.0”. There really is a lot of good stuff in WCF that simplifies a lot of things that really needs some light shed on it and I’m here to do just that. Why is WCF so important? Well put it this way, let me turn off services from the Internet and let’s just see how smart your Smartphone of choice is then. Services are the backbone of mobile apps and smart clients and it is important to know how to build them quickly and efficiently. Here is the abstract:

Windows Communication Foundation (WCF) has gone through two major releases and is now ready for prime time but may enterprise developers are still holding onto ASMX web services. In this session we are going to learn why moving to WCF is a good thing and much easier in .NET 4.0. We’ll also look at many new features in WCF 4.0 such as simplified configuration along with multiple site bindings introduced with the latest release of .NET 4.0.

I’ll have some Deep Fried Bytes stickers with me in Orlando so if you want one that’ll be the time to acquire one.

I’ve already packed my gator gun, mosquito spray, flippy floppies and bright colored shirts. See you in Orlando!

Being a Guest on Deep Fried Bytes

Posted by Keith Elder | Posted in Podcast | Posted on 03-03-2011

Tags:

This past week I was at the MVP Summit on campus at Microsoft. I may blog about the experience later (still debating). However, there is one thing I wanted to cover because I had so many people ask that I need to set the record straight.

The Story

Here’s the scenario that was repeated multiple times. The setup is I would bump into a fellow MVP I knew either online or from seeing at other conferences or whatever. 

Friend: Hey man how are things going?

Me: Great!

Friend: So… when are you going to get me on your podcast?

Me: Anytime just send an email to comments@deepfriedbytes.com and we’ll set something up.

And this scenario repeated itself MANY times throughout the week. The more it happened the more I realized we were sending the wrong message. I was really saddened by it because my friends somehow thought we didn’t want them on the show because we hadn’t asked. This is really not the case nor how it works.

Sometimes we’ll want to cover a specific topic and will reach out to someone. But most of the time it is because someone was just in the right place at the right time.

He who shouts from the tallest tree is heard the loudest.

What To Do

Here’s what to do to get on the show.

  1. Email comments@deepfriedbytes.com you have a topic to discuss on the show

How’s that for simplicity?

What Not To Do

  1. Ask us to email you.

    Honestly we are going to forget. If you *really* want to be a guest on the show you’ll take the proper action to make that happen. Also think about it just like submitting a talk to a conference or code camp. The code camp doesn’t know you want to speak there. Thus you have to submit a talk and then if you are chosen you go speak. Same thing here.

  2. Don’t beat the horse to death.

    Ever heard that expression? Usually it is used in the context where someone keeps saying the same thing over and over and over. In the context of submitting something to DFB don’t submit a talk that has literally been beat to death in the community.

    For example let’s say you want to talk about shiny cool technology called Hoodaledo. Since you are excited to talk about it you try to hit as many podcasts as you can. By doing so you just beat the horse to death. Why? Because people that listen to podcast listen to more than one. Odds are they will hear the same story over and over. Seriously ask yourself would you want to listen to say the same thing two or three times? No.  

  3. Submit a talk that has been done in the last 6 months on another show.

    We aren’t trying to sound snobby (seriously I mean that) but it goes back to point number two. We have a rule that if you’ve done talk X on someone else’s show then we will not cover it on DFB until six months goes by. Basically we are trying to help with the beating of the horse problem we see. After six months if you feel you really want to do it on DFB then submit it.

    Think about it from our perspective. We spend an enormous amount of time to produce our shows. And because of that we always want to release something amazing for our listeners. What we don’t want to do is spend our time working on something that someone else has already covered.

  4. Submit a talk about a product for marketing purposes.

    We do a lot of coverage of the major Microsoft Events like TechEd, MIX and PDC. As officially approved media we get people asking us to interview them about a product announcement before these events. If you are looking to let tens of thousands  (millions? trillions?) of developers world wide know about your product then contact us and we’ll provide sponsorship information so you can get your message out.

    I will say we did make one exception to this rule a couple of years ago with Preemptive Solutions. The reason we did is because their product has been free for developers in Visual Studio since day one and they give a lot to the community. We felt we were justified in talking about one of their updates to that product.

  5. Don’t submit a talk on a topic we’ve covered recently.

    Seriously, how many shows can you listen to on MVC before you get burned out? We have to keep show mix varied so watch that. If you fall into this category then let some time go by and then send us something.

Is It Automatic?

No. Just because you send us something doesn’t mean it is an automatic.

Going back to the submitting a talk to a conference analogy we look at what you’ve sent us, discuss it and consider many things. Some are no brainers, and if it isn’t we’ll give you a call (not email, a call so be sure to include phone number).  We’ll discuss the *angle* and try to tweak it to help figure out the angle and how we can make it work. Hopefully we can make it work and move on. If not, then try and try again but DO NOT give up.

We Will Take Anything

Deep Fried Bytes was intentionally not branded as a show tied to a specific technology. Both Chris and I have a wide variety of interest and have done many things. Years ago I can remember writing .Net code at work, going home and working on my Mac and then twice a week teach Linux certification classes at the local college. While we mainly target shows for developers we can and will talk about anything *geeky*. So just don’t think you always have to submit something about writing software. It could be IT related, or maybe it has a battery or plugs into the wall.  Really the majority of us are geeks and like to learn about everything.

Want to talk Ruby on Rails? Great, so do we. PHP? Good us too. Erlang? Linux? Xbox? Security? IT? What makes a good CIO?  Yep we’ll talk about any of that. Honestly we like the break from talking writing software and we’ve heard from our listeners they do as well.

The bottom line is we’ll talk about whatever. While we’ve produced a lot of shows around Microsoft technologies (because that’s what we do for a living today) we will cover anything from any area. If it is geeky we are all in.

Apology

To our friends who thought we didn’t want you on the show, seriously we really do. Our guests are THE most important asset we have. Our show is all about our guests and without our guests we wouldn’t have a show. Thus you are very important to us.

Hopefully this helps to straighten all of this out and I apologize for not writing this all down sooner. I really should have because I’ve had to repeat it verbally about 1000 times.

Ok, that’s it. Call for topics is now open. Go.