Blog: Bill Wagner & Dianne Marsh

Bill Wagner, co-founder, SRT Solutions

With more than 25 years experience in software design and engineering, Bill Wagner has led the design on many successful engineering and enterprise Microsoft Windows products and adapted legacy systems for Windows.  An early adopter of .NET, Bill now spends his time facilitating the adoption of .NET in clients' product and enterprise development.  Knowledgeable in all .NET areas, Bill's principal strengths include the C# language, the core framework, Smart Clients, and Service Oriented Architecture and design.

In addition to his role at SRT Solutions, Bill serves as Michigan's Regional Director for Microsoft. In 2005, Microsoft awarded him "C# Most Valuable Professional (MVP)" status. These honorary positions allow Bill to preview upcoming technologies, and offers SRT clients the most advanced and cutting-edge solutions for their technology projects.

An internationally recognized author on the C# language evolution, Smart Clients and enterprise design, Bill has been a contributing editor, editorial board member and regular columnist for over a decade with his tutorials and advanced essays published in MSDN Magazine, MSDN Online, .NET Insight, and .NET DJ.  He also writes a monthly column for Visual Studio Magazine and a monthly column on the MSDN C# team developer center.

Bill’s book, Effective C#, was published in 2004, and his second book, More Effective C#, was published in 2008.

Bill earned a Bachelor of Science degree in computer science from the University of Illinois at Champaign-Urbana.


Dianne Marsh, co-founder, SRT Solutions

Dianne Marsh helps clients stay at the forefront of technology. Over 20 years of diverse commercial experience has included applications from manufacturing to genomics, decision support to real time processing, on both Windows and UNIX operating systems. The lead developer on several large scale distributed computing systems and object-oriented software applications, her principal strengths include large systems architecture, with emphasis on proper thread management, load balancing and fail-over.
 
Dianne works with Unix, Windows, Java, C#, and C++ in enterprise-level applications. Her graphical user interface experience includes MFC, Swing, and various X/Windows libraries.
 
In addition to providing clients coaching and development support, Dianne is committed to their success and has assisted in securing Small Business Innovative Research (SBIR) Phase I grants, including developing the necessary prototypes. Clients appreciate her willingness to go beyond simply software development, seeing the project as a whole rather than just as a set of software tasks.
 
Early on, the academic developer community recognized Dianne's capabilities. She completed her masters in Computer Science from Michigan Technological University, where she received the Outstanding Graduate Student award. Dianne speaks at several conferences each year, and most recently at Ignite Ann Arbor.  Her current research interests include how Java programmers can take advantage of the Scala programming language.

Bill Wagner & Dianne Marsh - Most Recent Posts:

Bill Wagner - Post 4: The Tech Culture in Michigan

The biggest challenge to growing the IT sector in Michigan is the erroneous reputation that we don't have the talent. There's ample evidence that Michigan has the talent to be equal to Silicon Valley in terms of software as an economic driver. The biggest indicator is the wealth of technical user groups and other technical organizations meeting around the state.

The term 'user group' is not the best branding, but it's been around so long that it's the accepted term for the technical community. 'User group' gives the connotation that it's about hobbyists, or part time enthusiasts discovering how to use a technology. That's not the case. These groups are professionals who attend meetings to learn more about their chosen tools, to network with other professionals, and often to present about his or her favorite technology.
 
Some of the groups are centered on a particular technology platform. User groups dedicated to development on the .NET platform are active in Ann Arbor, Southfield, Lansing and Flint, Kalamazoo, Traverse City, and Grand Rapids. These groups meet monthly to discuss techniques for building applications using the .NET platform. Similarly, Java user groups are active in Ann Arbor, Detroit, and Grand Rapids.  Python, Ruby, and iPhone user groups also meet in Ann Arbor, and a Flex user group meets in Lansing.

Topics range from server side technologies to desktop applications, from current mainstream technologies to tools that are now only available in tech preview or beta form.  Developers attend these meetings in the evenings to keep up with what's going on in their field. In addition to user group meetings, evening coding sessions are becoming quite prevalent, with Coffee House Coders meeting weekly in Ann Arbor to write code and meet with other developers.

Interesting conversations happen when professional developers interested in different technologies get together, and those groups exist in the Ann Arbor area as well.  The Ann Arbor Computer Society will discuss anything related to IT. The group has regular members that are in the Open Source community, .NET developers, Java developers, and other technical professionals. Hardware and software professionals attend AACS.

The biggest example of what happens when these groups all get together is CodeMash. CodeMash is a once-a-year technical conference held at the Kalahari Waterpark in Sandusky, Ohio. The purpose of CodeMash is to provide an opportunity for developers to learn about platforms and technologies that are outside of their everyday work experience. Then, they can apply those new techniques to their own environment.  The organizers are technical professionals from Ohio and Michigan, as are the majority of the attendees. Even in the midst of the economic meltdown last January, the three day conference was sold out, attracting more than 500 people to Northern Ohio in the middle of the winter.

a2geeks is a group by geeks for geeks, interested in continuing to improve Ann Arbor's thriving technology community, for work and for play.  By providing a virtual home on the web where events and groups can be listed, and free events for technologists, a2geeks really does fit a niche in the Ann Arbor community. 

The more traditional business community (SPARK, etc.) meets the needs of business leaders, but a2geeks taps into the new business model which meets the needs of technology based companies. It has held several events in recent months that have really rocked the startup community.  A2 Startup Drinks and the Ignite Ann Arbor talks are two examples of wildly popular events that are changing the voice of technologists from "What can you do for me?" to "Here's what we're doing".

There's clearly a wealth of technical talent in our area, and the technical leaders are able to make great things happen.  And yet, our supply of great technical talent is still too small. We need to continue to attract talent from other areas of the country to continue the growth of the IT sector in Michigan. A rich and vibrant tech culture is a start. More business leaders need to shine the light on the tech culture to attract more talent and more IT focused companies. Let's take advantage of their dedication, expertise, and forward thinking to rebuild Michigan's economy.

 

Dianne Marsh - Post 3: Nontraditional Workspaces

Once upon a time (in 1999), Bill and Dianne wanted to start a software consulting company.  They worked out of their homes, with dial-up internet and a second phone line.  When they wanted to meet, they chose a coffee shop, bought an overpriced beverage, and talked in semi-public about company business.  They worked on one project in a customer's basement (sort of awkward, but do-able).  At least there was a place for a server.

As time went by, the business grew, and the needs for space grew.  They yearned for a whiteboard, where they could plan.  And for a place where they could talk without sharing financials or leads with their neighbors at the coffee shop.  Yet, these needs weren't enough to justify renting an office. They muddled through because there was no step between working from home and renting full-time office space.  Staying home-based (or two-home based) slowed growth. Eventually, they had subcontractors and employees. The impracticality of working at home was causing serious issues, and the revenue had grown. So they rented an office.

In hindsight, we could have grown more quickly if there had been a bridge between home based consulting and traditional office space.  You might wonder how?   We're more easily able to attract developers to work for us given that we have an office to work at.  It's not just about having a place to hang our hats; we've been able to do more collaborative work with customers with an office than without one.  One of the stumbling blocks that we faced was concern that we would need to hire someone to answer the phones and to handle walk-in traffic once we had an office.

And the truth is that unless you have a reason to go to an office, you may just stay home and have additional costs for rent. Co-working, incubator, and startup accelerator space all address these concerns in slightly different ways.

Co-working is a work environment where people who aren't associated with one another in business work together in a shared space, with particular emphasis placed on the informality and social aspects of the environment.  Finding just the right co-working space is key.  Various people in Ann Arbor have tried to develop co-working options, and a variety exists at this point.
 
For a long while, a group met at Primo Coffee once a week to work together.  The Workantile Exchange has stepped in for independent consultants, with a motto of "You may be independent, but you don’t have to be alone".  Mike Kessler has taken the risk to put together 3,000 sq ft of space and, more importantly, a community that people can join. Drop in for their Friday lunch and learns, or go and check out the space.  The Tech Brewery is a startup accelerator in Ann Arbor.  I would have definitely explored the various options when I was an independent consultant and then later, as a company, before we rented an office.  Why?  Camaraderie.  Socialization.  A sense of community.  Convenience.  And a little separation between work and home.
 
So maybe you're not an independent consultant.  Maybe you're an engineer and you could really use a lab and some shared lab equipment.  Well, you're in luck with the A2 Mech Shop.  Bob Stack did a heart-warming talk at Ignite Ann Arbor, introducing the audience to the co-working space and to its occupants.   According to Dale Grover, one of the members of The A2 Mech Shop, it provides co-working space for entrepreneurial engineers.   It's also a tightly-knit community focused on sharing equipment but maintaining individual offices.  A2 Mech Shop also hosts the Go Tech meeting, held monthly in the evenings typically on the 2nd Tuesdays, and a robotics club

Ann Arbor SPARK offers traditional business services and office space for entrepreneurs at its incubator spaces in Ann Arbor and Ypsilanti, if you meet their incubator criteria.  By providing short-term leases, Ann Arbor SPARK also helps to alleviate some of the concerns with traditional office rental.  

And while we're most familiar with Ann Arbor spaces, the metro Detroit area boasts some as well.  The North Woodward Tech Incubator, which Metromode readers may remember from an article in June 2009, is an incubator for technology companies that was started by a law firm.  In exchange for free rent, its tenants give equity to the law firm.  And similar to Ann Arbor SPARK, TechTown provides reduced rent and business services to its tenants.

These alternatives to renting traditional office space offer opportunity for growing companies as well as independent consultants.  Our region is one of the few in the country with such a wide range of opportunity for co-working. We see this as an indicator of the entrepreneurial spirit in our area.  We hope that these opportunities continue to grow and appear, and that their availability will help growing companies, individuals, and to promote our region as offering a full array of services for a wide variety of companies.

 

Dianne Marsh - Post 2: Software to Help Companies Grow

Most companies rely on software for business functions.  How can software help your business grow?

Do you consider yourself a software company?  Unless you're a big company, the answer is probably not.  But at the same time, it probably does play a significant part in your business.  Accounting, sales and customer management, and word processing software are common to nearly every business.  Just as a phone was essential to business in decades past, email and online calendaring are ubiquitous now. 

Beyond the common features, businesses take advantage of software in other ways.  From keeping track of time spent on projects, for project tracking or billing purposes, to providing and updating marketing information online through websites, even today's smallest businesses make extensive use of software.

In years past, companies had to develop software to meet most of their needs.  Most of us have written time tracking software and many of us experienced the early days of data storage and retrieval.  Back in the mid-80s, my first job was with LECO Corporation in St. Joseph, MI.  At that time, LECO, a Michigan owned company started in 1936, built laboratory instruments and developed software to both control the instruments and to analyze the results. 

In many cases, custom software is no longer necessary. Off-the-shelf packages, configurable for most uses, are available and much less expensive than developing proprietary code.  While I haven't kept up with what LECO has been doing with their software in the past 20 years, I'm not surprised that its website shows screenshots of commercial software.  By focusing their efforts on the unique aspects of their business, freed from the expense of developing and maintaining software to control the instruments, companies like LECO are able to focus on their core strengths.

Even companies who don't deliver software often make extensive use of it in the design and manufacturing of their products.  Off-the-shelf software can be used to build incredibly complex simulations quite capable of mimicking real-world events that are difficult to control and test. Of course, you have to know that the software exists and what its limitations are in order to effectively choose it for your business.

Software and IT should be treated like other business disciplines.  Entrepreneurs who engage with software professionals early in their planning phase, just like they do with lawyers, financial experts, and marketing professionals, reduce the likelihood of unnecessarily building proprietary products, or choosing a package that won't grow with their businesses.  By selecting a trusted advisor and explaining your business model, you will learn how existing software can be used effectively and customized only when necessary.  You will also learn how using it can be a competitive advantage for finding new customers, engaging them, and providing additional value.

But what if you have an existing company that is still building proprietary software?  Ask yourself if your business seems constrained by it or if it is outdated. If so, your company might benefit significantly from a software audit.  Just as an accountant or lawyer advise on business practices, a responsible software partner will point you at new technologies that solve your problems with very little customization, and will tell you where your proprietary software is still required.   Armed with that information, you can make the business decision as to whether or not an investment in software will help your company grow.


Bill Wagner - Post 1: Software as a Growth Industry

Everyone seems to agree that Michigan needs to do more to diversify its economy. Unfortunately, in our collective drive to diversify quickly into growth sectors that can replace all the manufacturing jobs lost with jobs those displaced can fill, we seem to have missed some great opportunities, especially in the area of software and IT. The software industry has many advantages as a sector to diversify and grow in Michigan.  That's because software requires less capital investment, and can generate revenue more quickly than any of the other forward looking sectors being promoted by our state economic development organizations, those being Advanced Manufacturing, Alternative Energy, Homeland Security, and Life Sciences.

First and foremost, a software company requires less money to grow than many other sectors. For each new developer, you're going to buy a computer and a reasonably small set of software.  Open Source programs, and the Microsoft BizSpark program can lower that cost even more. New employees can be producing valuable intellectual property at home, or in coffee shops, or in your basement for relatively little capital outlay.  Co-working spaces, which we will cover in our article about non-traditional work environments later this week, are another alternative to traditional office space.

Second, software businesses can generate revenue more quickly than startups in other sectors.  This is even more true now in the era of software as a service (SaaS), or hosting software programs on the web.  This model enables startups to create an initial limited offering very quickly. Once that initial service is stable, a startup can begin generating revenue, and work with customers to prioritize future work. Because the software resides on servers, the startup can provide upgrades quickly and seamlessly to all existing users. 

Third, this SaaS model makes it beneficial to use a subscription-based pricing model. That means startups can have a more stable cash flow earlier in their lifetimes. This early revenue stream provides several benefits for a startup: the revenue is the best justification to investors that the idea is a solid basis for a business, it's another reason why software startups can be launched with less seed capital, and it helps build a relationship with customers to provide more information about what features and enhancements would provide greater growth in the future.

Fourth, software businesses can penetrate global markets easier than many other businesses. It's still not easy; you must understand regulations and provide localized versions of your software. However, web addresses are accessible worldwide, creating an easier path to global markets.

Finally, there is no geographic necessity for software companies. It's just as easy to develop software in Michigan as it is in California, Boston, or other higher-cost locations. The more reasonable cost of living in the Midwest can be used as a means to attract software producers to our region.

The challenge that Michigan faces is in proving that we have the talent to staff any potential growth in Michigan's software industry. Maybe that's why the state has focused on sectors where they believe those people displaced in the auto sector could find work more easily. It's a bigger stretch to imagine going from autos to software than it is to go from autos to advanced manufacturing. But yet, so much of our auto industry runs on software (just like any other industry), that I believe that's faulty logic. I do believe the state should be enabling software startups in the same way they are enabling startups in the chosen growth sectors. 

 Future posts will discuss challenges and ways our software business community can help create the environment to provide the incentive to enable software businesses to thrive in Michigan.