Tim Murphy's .NET Software Architecture Blog

software development

There are 23 entries for the tag software development

How Can Project Spark Inspire Young Developers

At the BUILD conference last week there was a demonstration of Project Spark at the end of the first day’s keynote. I was amazed and inspired by the possibilities presented by this game/development environment. The inspiration came from the fact that it could teach a new generation of Minecraft hooked kids to program. It could grab their attention and hold it with amazing graphics and at the same time teach them the basics of writing code. From everything I have heard there is a drop in enrollment ......

Is It Time To Specialize?

Over my career I have made a living as a generalist. I have been a jack of all trades and a master of none. It has served me well in that I am able to move from one technology to the other quickly and make myself productive. Where it becomes a problem is deep knowledge. I am constantly digging for the things that aren’t basic knowledge. How do you make a product like WCF or Windows RT do more than just “Hello World”? As an architect I need to be a jack of all trades. This is what helps me to bring ......

What Software Architects Can Learn From Baseball Teams

My friend Larry Calrkin did a whole series on Architecture by Baseball, but after going to a recent White Sox game I got to thinking about the how baseball mirrors my experience. For me it boils down to specialization, team work and leadership. Every team member has their specialty. Infielders have great reactions and throwing accuracy. Outfielders can cover distance quickly and throw long distances. There are starting pitchers who have great control and endurance and closers who throw nasty pitches ......

Cookie Cutter Versus Custom Development

I recently had a potential client ask for an estimate of some work they wanted done. They already had a price in mind which I was pretty sure I couldn’t come close to. The reason for this is because they were comparing off the shelf, commodity type development to the custom development that it would require for my team to do the work. So does this mean that custom development can’t be the right answer if a subject area has commoditized? Not in the least. In many cases (but not all) these quick solutions ......

Key Windows Phone Development Concepts

As I am doing more development in and out of the enterprise arena for Windows Phone I decide I would study for the 70-599 test. I generally take certification tests as a way to force me to dig deeper into a technology. Between the development and studying I decided it would be good to put a post together of key development features in Windows Phone 7 environment. Contrary to popular belief the launch of Windows Phone 8 will not obsolete Windows Phone 7 development. With the launch of 7.8 coming shortly ......

Review: TypeMock Isolator 7

I was recently given an opportunity to review the TypeMock Isolator v7 framework. This is a very feature rich add-in for Visual Studio which simplifies unit testing by putting all the features you need right at your finger tips. Below is an abbreviated list of features found in the product. Components AutoRunner Failed Test Analyzer Coverage Test Auto-Complete The biggest productivity feature is the unit testing dashboard which drops down from the top of your Visual Studio code window. It provides ......

Leveraging Microsoft Patterns and Practices

I want to bring the Patterns and Practices group to the attention of those who have not already been exposed. I have been a fan of the P&P team since they came out with the original Application Blocks which eventually turned into the Enterprise Library. Their main purpose is to assemble guidance and tools that make it easier for all of us to build amazing solutions. I would simply suggest you spend some time exploring the information and code libraries that they have produced. Free resources ......

SharePoint Thoughts

I was listening to .NET Rocks episode #713 and it got me thinking about a number of SharePoint related topics. I have been working with SharePoint since the 2001 product came out and have watched it evolve over the years. Today SharePoint is one of the most powerful and flexible products in the market. Of course that doesn’t mean there isn’t room for improvement (a lot of improvement in fact) and with much power comes much responsibility. My main gripe these days is that you have to develop on a ......

Styling Windows Phone Silverlight Applications

If you have not developed with styles in Silverlight/XAML then it can be challenging and resources can be sparse depending on how deep you get. One thing that you need to understand is what level you can apply styles and how much they can cascade. What I am finding is that this doesn’t go to the level that we are used to in HTML and CSS. While styles can be defined at a page level if you want to share styles throughout your application they should be defined in the App.xaml file. This is of course ......

Accessing Authenticated WCF Services

When you make a service available external to your corporate network sometimes SSL isn’t secure enough. If you really want to limit the users who can access a service they need to tied to credentials. One of the most common credentials to tie to is a Windows account. What if you are the consumer of these services. When you add a service reference to a Visual Studio 2010 project it does not give you a chance to set credentials. The following example is how you can apply credentials to a service reference. ......

Windows Phone Silverlight Poor Man's Double-Tap

I have seen a lot of articles about gestures but they require third party libraries or complex coding approaches. What I am going to present here isn’t strictly elegant or necessarily the best approach, but this is the way we would catch this type of event when we were still dealing with message loops. For the app that I have been working on I need to take action on the double-tap of a list item. The first question you have to ask your self is what a double-tap really is. It is in simplest terms ......

Laying Out Windows Phone 7 ListBoxes

A listbox can be a very boring display surface, but it doesn’t have to be. Ok, so it may never be exciting. At least we can create a more flexible output. The first element you need to learn about his the ItemTemplate which is in turn composed of a DataTemplate. As this combo implies it is bound to each item/data row. We will start organizing your base layout with a Grid control. Within the Grid you can add a RowDefintions group. A RowDefinition helps when you want components to be stacked for a ......

Creating Emails For Windows Phone 7

There are many reasons that you may want to add email capability to your Windows Phone 7 application. There are a number of ways you can communicate information out from an application. The mechanism for sending email from your WP7 application is the EmailComposeTask API. The difference between this API and the one that you would use for an ASP.NET application is that it opens a screen to allow the user to select an account to use and then creates a message which the user then has to send. This makes ......

The Power Of Windows Phone 7 Tasks

One of the things that is important to learn when you are developing any application is how it will interact with the environment it lives in. I’m not talking about simply interacting with files or database but with major resources. With WP7 there are a number of things such as the photos, browser, maps and the phone itself that your application may be concerned with. The WP7 development API includes a number of access points to give your application greater reach. These APIs can be found here. They ......

Windows Phone 7 TextBox InputScope

I originally started looking for how to make a TextBox have autocomplete capability. Strangely all the articles said that it couldn’t be done. The last thing you want is for your applications to make your users struggle entering information when every other application gives them a quicker entry method. So what is the solution? The TextBox tag has an InputScope property which if you set it to Text it builds a dictionary list as the user types. For the other InputScope types it mainly changes the ......

Chicago IT Architect Group August 2011 Recap

We had a full house this month with a lot of interest in the SOLID principle. SOLID is one of those topics that should be basic study in all of our schools. Of course along with a large crowd comes a lot of discussion. There were debates as to how much each individual principle has merit and how to properly apply it. This is the lively discussion that really makes me enjoy organizing these presentations. Visit Michael Kappel’s web site here. del.icio.us Tags: Chicago Information Technology Architects ......

Handling Windows Phone 7 Back Button

When you have an application that navigates to more than one level of pages you find situations where you don’t want to go back to the previous page. Originally I was thinking that the answer was to capture the OnBackButton event and force the navigation back to the main page, but through several posts I found that this would not pass certification. Here is a link that really helped to figure out a more appropriate solution. To be a little more complete here is example code that you can use use for ......

Sending Large Arrays With WCF

Windows Communication Foundation is a powerful tool for building contract based messaging. As with most powerful technologies with flexibility comes a fair amount of complexity. I ran into one of these situation while trying to send files as part of message in the form of a byte array. In itself this is a simple concept. The problem is that the default configuration of WCF is setup to protect us from denial of service attacks to the best of its ability. In order to achieve this it is setup for relatively ......

More Windows Phone 7 Panorama Notes

The saga goes on. There is always something more to learn. While I thought that ManipulationCompleted would do the trick from me it turned out it won’t. It turns out that if you want to figure out what PanoramaItem you are on when the user navigates between PanoramaItems the SelectionChanged event in conjunction with the SelectedItem on the Panorama works pretty well. private void Panorama_SelectionChanged(o... sender, SelectionChangedEventArgs e){ PanoramaItem item = (PanoramaItem)Panorama.Sele... ......

Risk Aversion In Software Development

Managing a software development project is always a risk versus benefit balancing act. It seems that lately the scales have tipped way over to the side of reducing risk rather than supplying benefit. What do you do when you have a problem with an application but a fix won't be allowed because there is a work around? The benefit needs to be put into terms of savings. Does the solution require regular intervention on the part of a support team or is the user delayed in their work while waiting for ......

So What Is .NET Again?

As I have mentioned before I am a consultant. Add to that the fact that I have been doing software development professionally for about twelve years and that means that I am moving into higher level work. Unfortunately that means less time that I am getting my hands dirty in the code. This is a painful transition, especially for a code junkie like me. So what is the prescription to ease my discomfort. I think it is time to bury myself in some serious code learning. I figure I have a number of books ......

How Are Martial Arts Like Software Development

Around the end of high school I studied Tae Kwon Do for a short period of time. Now my oldest son is taking Goju-Shorei at the local park district which has gotten me re-interested in the subject. Aside from causing pain in my muscles which demonstrates that I'm not a teenager any more it has had another affect. It got me thinking about its similarities between martial arts and software development.

Something To Add To My Reading List

I was listening to the latest episode of .NET Rocks! with Venkat Subramaniam and Andrew Hunt where they were talking about there new book. It sounds like some really good stuff. These guys were ripping jokes back and forth through the entire show and using those jokes to make points on how software development should be approached. One memorable term that was used a couple of times is "code vomit". Any book that can put concepts that eloquently is getting added to my library as soon as possible ......