Cornelius van Dyk's Blog
Chad Campbell's Blog
Mark Strawmyer's Blog
Bryan Phillips Blog
Recent Blog Post
(Due to formatting it may be easier to read some post at my Live space)
Implementing a Keyboard Interface using .NET Controls for a WinForm Client
CodeGuru.com - 6/01/2010
Learn how to extend and customize .NET controls to easily implement a consistent keyboard interface in a WinForm client application.
ADO.NET Entity Framework and SQL Server CE 3.5
CodeGuru.com - 5/03/2010
Learn how to use Microsoft’s ADO.NET Entity Framework to connect to, consume and update a Microsoft SQL Server CE (Compact Edition) database.
I gave a presentation to the Purdue Research Park Development Cluster up in West Lafayette today. The topic was general cloud computing and then a deeper dive into Windows Azure. The materials and some details can be found on the Presentation’s page of the website.
http://mattgoebel.com/presentations.aspx
If you are getting a 405 error page returned when trying to view the debug page of a WCF service and you are running Windows 7…try executing the following command in a command prompt (run as an administrator).
netsh http add urlacl url=http://+:8000/WCFProductService user=[username]
If you are a fan of Subversion and have a need to have it hosted this is a great site to check out.
http://www.svnhostingcomparison.com/
It is a little buggy, and not sure how dated the data is but it helped me find a hosting provider for SVN.
An article I wrote on using the ADO.NET Entity Framework with an Advantage Database just got published on CodeGuru.com.
“Learn how to use Microsoft's .NET Entity Framework to connect to, consume and update an Advantage database.”
Using the .NET Entity Framework with the Advantage Database Server
During the evolution of software development many ambitious project managers, business analyst, developers and demanding users have earned the practice a notorious reputation for failure on some level. They complicate simple processes with “cool” and “cutting-edge” technology, take the approach that they can solve EVERYTHING at once or allow users to add requirements at will without change management. This all inevitably results in budget overruns, missed deadlines, unhappy users and ultimately failure.
The good news is there are simple and easy ways to overcome this…and most of them actually reduce cost/time in the process. Here is a simple and good one…use the 80/20 rule when defining what is in scope for the first phase of a project. A different way to look at this is that the users, subject matter experts and business analyst need to ask themselves “Is this essential?” for each requirements or piece of requested functionality. Take the approach to capture and document the 80% of requirements that are core and essential to the business process that the software is going to support. This won’t cover all the exceptions and there will be minor holes…that is the remaining 20%. Looking back at experience that 20% is the main culprit to 80% of the cost/issues/time. By only consuming the core 80% in the first phase you have the opportunity to focus on building a solid foundation for a fraction of the total cost.
Once satisfied that your core 80% is tested, verified and working, start all over. Take the remaining 20% and look at it as a new project…repeating the 80/20 rule. Repeating this process will enable you to build a solid application in controlled phased approach that ups your chances for success and reduces your overall risk for failure.
An article I wrote on WCF was just published by Developer.com. It covers a good amount of intro material on setting up and consuming a WCF service.
Distributed Application Communication Using WCF
Last week I was asked by one of my clients to assist in test coordination / project management task for a large release they have planned for early January. The activities and responsibilities are right up my alley so it was a great new project to tackle….with one small exception, the tool. It didn’t take me long…about 2 hours to realize that I was going to have issues with the test coordination software they have. It is a web application, and a mediocre one at that. Naming the software is not important. The “point” or common issue that it represents is very important.
Information Workers are helplessly at the mercy of web application short comings everyday. And most don’t even realize it, they just assume and accept that software is suppose to be difficult to use…such a shame. In a short week of using this particular web application I have already compiled the following list of short comings that plague web applications and Information Workers as a result.
All and all, I wasn’t a fan of web applications before and this experience has done nothing more than to reinforce that. More importantly it underlines the lost productivity, frustration and inefficiencies that Information Works using web application are forced to live with everyday.
Developer.com has just published my second article on Windows Azure. The second article is a walkthrough on building a Windows Azure application that uses both Web and Worker Roles as well as Azure Storage.
Building in the Cloud with Azure Storage and the Azure SDK
UPDATED 11/19: Developer.com has requested a new title and lead due to formatting issues on their new content system.
The blog has been quite the last 3 weeks as much has been happening in both my business and personal life.
The biggest change has to be the 11 week old puppy I have running around the house now. “Indy” is our new German Shepherd mix we picked up from the South Side Animal shelter 2 weeks ago. He is a puppy so I don’t have to go into detail about how fun he is to have around…but between puppy training, house breaking him, 3am wake ups it’s been a drastic change to the norm around the house. All for the best!
AP Innovation has also experienced some small changes and is getting ready for some bigger changes. Our branding image got a small make over and the website will soon reflect the new look. The basic color scheme is staying the same but it’s getting a Web 2.0 pizzazz makeover. During the pre-start up phase early this year the graphics and website took a back seat to more important things like legal matters and contracts. Now that we are getting ready to celebrate our 6 month anniversary the time has come to loop around and clean the smaller items up.
With the graphics makeover we will also be adding a tagline to the website, business cards and other leave behinds. The process to determine the tagline was way more involved than I originally thought it would be. It is often the small things that sneak up and consume the most time. Coming up with a single statement that encompassed all that we could do was mind boggling so with the help of mentors and coaches the focus has been placed on software, and in particular shaping software to fit processes. Essentially making the tools of business work FOR the business and not against it. The tagline will be “Shaping Software to Fit Unique Business Processes”.
From a technology standpoint AP Innovation is going to focus in on the Microsoft platform and specifically expanding the use of Software + Services (updated term with slightly new meaning from the old “Software as a Service”) in our client’s place of business. The focus will be on interoperability with existing system, increasing user productivity through cleaner interfaces and architectures and scalability for future growth.
I won’t try to overstate the obvious that managed code wrappers are beneficial to productivity and reusability. For example, take the Azure Storage wrapper that comes with the Azure SDK (July CTP release…and to be included in some form in the production release as well) called StorageClient. Instead of the “average Joe” developer learning the REST API and syntax they can simply plug in the managed wrapper. This allows them to be up in running using a familiar .NET and ADO.NET interface quickly even though Azure Storage is nothing like existing storage options. This will significantly increase initial adoption and development of Azure applications by streamlining the “plumbing” operations of the code and letting the developer focus on build unique business logic.
This ease of use does come with a small performance and efficiency price. Besides the typical hits you take from using a managed wrapper, StorageClient is not a complete library of all the features available in the REST API. It does not include features such as asynchronous calls, conditional uploads, and parallel block uploads. In cases where performance and large file operations are required you can use the REST API and still harness the managed wrapper for the 90%+ of the application that does not require the extra time.
In the end, it boils down to time and cost savings. StorageClient is an excellent choice to use as your default Azure Storage interface leaving the door open for the REST API when those special cases call for it.
This is a little off base from what I normally write about, but wanted to share some suggested answers to a question that has long plagued me. “What is the business value of Twitter?”
Now for the small group out there that tweets religiously about their every action and thought you may or may not have thought of the business value. Seeing though as you tweet so regularly you probably already found one or didn’t need one. For me on the other hand, a small business owner, I see the benefit in social media. I blog, keep up with Facebook, LinkedIn, local social networks, write articles and tie it back through blogging and my website at www.mattgoebel.com, etc. What I do not see was the value in taking time from those activities and placing it into Twitter.
Yesterday I attended the Masters of Business Online (MBO) conference in Indianapolis, IN and one of the sessions was about the business value of Twitter. To give credit, Raquel Richardson of Silver Square gave the presentation and the following is her list.
10. Personal branding (…and use your own voice)
9. Research
8. Brand Management
7. Build Trust (drop the sales focus and think “what would be useful to share”)
6. Professional Networking
5. Promotions
4. Community
3. Follow News & Media
2. Know Your Competition
1. Professional Growth
Research (#9) and Know Your Competition (#2) are the biggest take-a-ways for me. The rest of list follows along with most of the benefits of other social media outlets. Branding, networking, professional growth, community…can all be achieved on LinkedIn, Facebook, etc. I send my thanks out to Raquel for shining a little light on a topic that I was otherwise in the dark on.
It may have taken 2 months but I finally got my SQL Azure CTP invitation and can start playing with it in the real cloud instead of locally. Of course this only leaves me a month until PDC and the full production release of Azure, but some free time is better than none!
Last week I had the opportunity to travel to Bloomington, IN and talk to a group of Master students in the Kelley School of Business. Besides getting a chance to talk with college students and help them plan their transition to the working world…a long time passion of mine, this event was great because I also got to talk to them about several other topics including business networking. The general message I tried to leave with them was that it is invaluable to their careers to determine how far they would go and how fast they would get there.
It has only been a week, but of the 30+ students I talked to not one that I met that night has reached out to me. My experiences in campus recruiting with Crowe over 4 years also leads me to believe that none ever will either. With hundreds of business cards handed out during recruiting events, dozens of presentations about the recruitment process and networking, I can count the number of students that have followed up with me on my hands. Even when talking to other companies at job fairs they experience the same.
So I ask myself, why wouldn’t a student reach out to a person in the business world that they someday want to be apart of?
Is it because all through our life we’ve been taught not to talk to strangers? That they are too busy? Feel like they aren’t important enough for that business person to respond? Or just too shy? I don’t know the answer but my hunch is probably all the above and more.
Thinking back to my college years I wasn’t the best at reaching out to business contacts I made right away but I did it…if nothing more than out of perceived necessity to start my career and get a job. But expanding the same line of thought it easily transfers into the business world as well. How many people enjoy cold calling or even calling on someone you met only once? It is more often done out of necessity than desire. So perhaps the student’s don’t see the necessity in networking just yet? Coming from a group that is now almost completely from the Millennial generation that would surprise me.
Perhaps social media tools like Facebook and MySpace have spoiled them to the point that picking up the phone or even sending an email isn’t as comfortable as updating your status and waiting for those around you to read it? You can’t rely on tools to build real relationships. Regardless I think overcoming that “first contact” anxiety is something everyone deals with to some extent. What are your thoughts?
I’ve taken my interest of Azure to the next level by agreeing to write a small series of articles for Developer.com. The first one, Setting Up Azure and Deploying Your First Application, has just been published. There are already ideas for the next couple, but if you have any questions or would like to see more about a certain topic within Azure please let me know.
Article: Setting Up Azure and Deploying Your First Application