---
title: "Automating the reinvention of the wheel"
url: "https://osherove.com/blog/2005/10/30/automating-the-reinvention-of-the-wheel.md"
canonical: "https://osherove.com/blog/2005/10/30/automating-the-reinvention-of-the-wheel.html"
published: "2005-10-30T22:27:00"
updated: "2005-10-30T22:27:00"
tags: [".Net Quotations"]
author: "Roy Osherove"
description: "John posts a macro how to automate creating connection strings in visual studio .NET, and demonstrates a few key points (which have nothing to do with him probably being a great guy, good blogger etc..) 1. The blog…"
usage: "Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page)."
license: "https://creativecommons.org/licenses/by/4.0/"
---

# Automating the reinvention of the wheel

By Roy Osherove October 30, 2005 In [.Net Quotations](https://osherove.com/blog/category/net-quotations)

**Historical article** · Originally published October 30, 2005; technical details may be outdated.

[John posts a macro](http://geekswithblogs.net/johnsPerfBlog/archive/2005/10/26/58165.aspx) how to automate creating connection strings in visual studio .NET, and demonstrates a few key points (which have nothing to do with him probably being a great guy, good blogger etc..)

1\. The blog space keep reinventing things, meaning that if I write something two years ago, it may as well have never been written. Case in point is [the macro I wrote in 2003](http://weblogs.asp.net/rosherove/archive/2003/06/23/9119.aspx) to do the same thing.

2\. People don't take the time to [search before solving things](http://www.google.com/search?ie=UTF-8&oe=UTF-8&q=connection+string+macro).

3\. VB.NET preserves the awesome power of \*late binding\* (and I don't mean data binding) to unknown object interfaces, which shines in the face of such a simple macro.

Just compare the length and complexity of the macros that [John posted](http://geekswithblogs.net/johnsPerfBlog/archive/2005/10/26/58165.aspx) and [I posted](http://weblogs.asp.net/rosherove/archive/2003/06/23/9119.aspx).

4\. Lack of knowledge of the language and its main advantages puts you at this special place where you are both "with" and "without". "Yes, I just bought a car, but I still drive at 2 miles per hour" would be a good analogy.

Again, this has nothing to do with John, just a good case to make a few points to learn from:

- Learn all the ins and outs of the tool you are using and the language you use, and you could be 100 times more productive.
- Search before embarking on a task. Chances are you're not the first one who either had to do something like this or faced with a problem such as this.

Oh, and yes, my crazed ego **demanded** that I write this (nobody's perfect).

## More in .Net Quotations

[All posts in .Net Quotations](https://osherove.com/blog/category/net-quotations)

- May 18, 2006

    ### [CLR Generics Vs. C++ Templates - some good links](https://osherove.com/blog/2006/5/18/clr-generics-vs-c-templates-some-good-links.html)

- Nov 8, 2005

    ### [Predefined CodeDOM implementations for common .NET usage patterns](https://osherove.com/blog/2005/11/8/predefined-codedom-implementations-for-common-net-usage-patt.html)

- Oct 30, 2005

    ### [Strongly Typed Reflection Calls in .NET 2.0](https://osherove.com/blog/2005/10/30/strongly-typed-reflection-calls-in-net-20.html)

- Aug 18, 2005

    ### [Cool Tip: Show a vertical rule after 80 chars in VS.NET](https://osherove.com/blog/2005/8/18/cool-tip-show-a-vertical-rule-after-80-chars-in-vsnet.html)


---

## About the author

**Roy Osherove**: Senior Solutions Architect at AWS working on AI for production and AI-driven development; author of The Art of Unit Testing and Elastic Leadership, with about 20 years of consulting and training on unit testing, TDD, team leadership and continuous delivery.

### Sites

- [RobotPaper](https://robotpaper.ai/): This blog: AI patterns and anti-patterns, AI and coding agents, and engineering leadership.
- [osherove.com](https://osherove.com): Roy's personal site. Author of The Art of Unit Testing and Elastic Leadership; consulting and training on unit testing, TDD, team leadership and continuous delivery, plus about 20 years of blog posts.
- [The Art of Unit Testing](https://www.artofunittesting.com): The Art of Unit Testing, 3rd Edition (Manning): readable, maintainable, trustworthy unit tests, plus TDD workshops in C#, JavaScript, Java and Kotlin.
- [5whys.com](https://www.5whys.com): Roy's writing on software team leadership: self-organizing teams, surviving chaos, learning mode and the Elastic Leadership model.
- [Pipeline Driven](https://pipelinedriven.org): Continuous delivery and DevOps practices: build patterns, pipeline-friendly testing, DevOps metrics and enterprise DevOps.
- [Elastic Leadership](https://www.elasticleadership.com): Elastic Leadership, Roy's framework for software team leaders (survival, learning and self-organizing modes).

### Social

- X: https://x.com/royosherove
- LinkedIn: https://www.linkedin.com/in/osherove/

### Contact

- Contact form: https://forms.gle/jQSx5KoXvrVA1JCK7

### License

Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page). License: https://creativecommons.org/licenses/by/4.0/
