Tag | Design Posts

For all who attended my talk on User Interface Design. Here are the slides.

User Interface Design Slides

For the last few months I have been secretly working away at the second version of an application that we initially released a few years ago. It’s called MaxCut and it is a free panel/cut optimizer for the woodwork, glass and metal industry. One of the motivations for writing MaxCut was to get an end to end experience in developing an application for general consumption. From the early days of v1 of MaxCut I would get the odd email thanking me for the software and then listing a few suggestions on ...
I had fun presenting “What’s new in Entity Framework 4” at the Winnipeg Code Camp today. I mentioned some resources on my deck that I thought I’d include here in my blog. •EF 4.0 Hands on Labs •EF CTP 5 (has the new DbContext and CodeFirst support) •MSDN Data Developer Center: MSDN.com/Data •ADO.NET Team Blog •EF Design Blog •How to choose an inheritance strategy Programming Entity Framework, Second Edition by Julia Lerman ...
In April Microsoft will hold the next MIX event. MIX was usually targeted at web designers and developers but has grown over the years to be more a general conference focused on the web and devices. In other words: everything the normal consumer might encounter. It’s not your typical developers conference, although you’ll find many developers there as well. But next to the developers you’ll probably run into designers and user experience specialists as well. This year I am proud to say that I will ...
Impact of Regulations on Cabin Systems Installation John Courtright, Structural Integrity Engineering There are “heightened” FAA attention to technical issues related to IFE and Wi-Fi Systems Installations The Aging Aircraft Safety Rule – EWIS & Damage Tolerance Analysis The Challenge: Maximize Flight Safety While Minimizing Costs Issue Papers & Testing, Testing, Testing The role of Airworthiness Directives (ADs) on the design of many IFE systems and all antenna systems. Goal is safety AND ...
One of the biggest problems that I’ve seen with people creating WP7 applications is how do you bind the application bar to a Relay Command. If your using MVVM then this is particular important. Let’s examine the code that one might add to start with. <phone:PhoneApplicationP... <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True"> <shell:ApplicationBarIco... x:Name="appbar_button1" IconUri="/icons/appbar.ques... Text="About"> <i:Interaction.Triggers> ...
User interfaces and user experience design is a fast moving field. It’s something that changes pretty quick: what feels fresh today will look outdated tomorrow. I remember the day I first got a beta version of Windows 95 and I felt swept away by the user interface of the OS. It felt so modern! If I look back now, it feels old. Well, it should: the design is 17 years old which is an eternity in our field. Of course, this is not limited to UI. Same goes for many industries. I want you to think back ...
Last year I started a new job with a logistics company in the North of England, where I was responsible for the management, design and development of IT Integration strategies, architectures and solutions using BizTalk Server 2009. This included the design and implementation of the BizTalk Server 2009 infrastructure, the definition of development standards, mentoring a fellow developer in the ways of BizTalk and migrating a number of existing solutions from Softshare over to BizTalk 2009. Unfortunately ...
Goal: As we all know the jqGrid examples in the demo and the Wiki always refer to static values for drop down boxes. This of course is a personal preference but in dynamic design these values should be populated from the database/xml file, etc, ideally JSON formatted. Can you do this in jqGrid, yes, but with some custom coding which we will briefly show below (refer to some of my other blog entries for a more detailed discussion on this topic). What you CANNOT do in jqGrid, referring here up and ...
In this Issue: Roy Dallal, Kevin Dockx, Gill Cleeren, Oren Gal, Colin Eberhardt, Rudi Grobler, Jesse Liberty, Shawn Wildermuth, Kirupa Chinnathambi, Jeremy Likness, Martin Krüger(-2-), Beth Massi, and Michael Crump. Above the Fold: Silverlight: "A Circular ProgressBar Style using an Attached ViewModel" Colin Eberhardt WP7: "Isolated Storage" Jesse Liberty Lightswitch: "How To Create Outlook Appointments from a LightSwitch Application" Beth Massi Shoutouts: Gergely Orosz has a summary of his 4-part ...
In this Issue: Mike Taulty, Timmy Kokke, Laurent Bugnion, Arik Poznanski, Deyan Ginev, Deborah Kurata(-2-), Johnny Tordgeman, Roy Dallal, Jaime Rodriguez, Samuel Jack(-2-), James Ashley. Above the Fold: Silverlight: "Customizing Silverlight properties for Visual Designers" Timmy Kokke WP7: "Back button press when using webbrowser control in WP7" Jaime Rodriguez Expression Blend: "Blend Bits 21–Importing from Photoshop & Illustrator…" Mike Taulty From SilverlightCream.com: Blend Bits 21–Importing ...
In this Issue: Peter Kuhn, Mike Ormond(-2-, -3-), WindowsPhoneGeek, Daniel N. Egan, Phil Middlemiss(-2-), Max Paulousky, Michael Washington. Above the Fold: Silverlight: "Designing for Browser-Zoom: Part 2" Phil Middlemiss WP7: "Talking about Converters in WP7 | Coding4fun toolkit converters in depth" WindowsPhoneGeek Lightswitch: "LightSwitch: Can We Handle The Truth?" Michael Washington Shoutouts: András Velvárt has a video up of some awesome changes he has planned for SurfCube, check it out: SurfCube ...
Dependency Walker is a very useful tool that can be used to find dependencies of a Portable Executable module. The PE format is used also on Windows CE and this means that Dependency Walker can be used to analyze also Windows CE/Windows Embedded Compact module. On Win32 it can be used also to monitor modules loaded by an application during runtime, this feature is not supported on CE. You can download dependency walker for free here: http://dependencywalker.com/. To analyze the dependencies of a ...
In an effort to make an application more robust I have been switching to a server-side method of tracking record selections vs. client side. The pages relying on record selections utilized the ASP.NET Wizard control which seemed like a good idea originally. Unfortunately, the design of the control is not all that flexible. It appears to want to center everything vertically which might not be a problem if it did not always use the vertical size of the largest Wizard Step for positioning. So, I am ...
In this Issue: Ollie Riches, Colin Eberhardt, Andrej Tozon, Arik Poznanski, Deborah Kurata(-2-), Jay Kimble, Yochay Kiriaty, Peter Kuhn, Mike Ormond, WindowsPhoneGeek(-2-), and Matthias Shapiro. Above the Fold: Silverlight: "Missing Chart Legend" Deborah Kurata WP7: "XNA for Silverlight developers: Part 2 - Text rendering" Peter Kuhn Shoutouts: Timmy Kokke has a post up discussing What’s new in the Expression Design January 2011 preview? From SilverlightCream.com: WP7Contrib: Thread safe ObservableCollection<T> ...
Fear, it’s what turns maintaining applications into a nightmare. Technology moves on, teams move on, someone is left to operate the application, what was green is now perceived brown. Eventually the business will evolve and changes will need to be made. The approach to those changes often dictates the long term viability of the application. Fear of change, lack of passion and a lack of interest in understanding the domain often leads to a paranoia to do anything that doesn’t involve duct tape and ...
The code samples in Microsoft All-In-One Code Framework are updated on 2011-1-23. Download address: http://1code.codeplex.com/r... You can download individual code samples or browse code samples grouped by technology inthe updated code sample index. If it’s the first time that you hear about Microsoft All-In-One Code Framework, please read this Microsoft News Center article http://www.microsoft.com/pr... or watch the ...
Vote for: “Deep Dive MVVM” Vote for: “Exploring a Blendable Windows Phone 7 Application” Read the rest of this entry » ...
2011 Event Recap Event Overview During the weekend of January 14th through January 16th, the St. Louis area technology community participated in a national GiveCamp event. With Microsoft’s assistance, similar events were held simultaneously in the following cities: Austin, Texas Phoenix, Arizona Birmingham, Alabama Colorado Springs, Colorado Dallas, Texas Atlanta, Georgia Houston, Texas Nashville, Tennessee Dallas, Pennsylvania Fayetteville, Arkansas New York City, New York Malvern, Pennsylvania ...
In this Issue: Michael James(-2-), Joost van Schaik, Colin Eberhardt, Jesse Liberty, John Papa, Levente Mihály(-2-), Peter Kuhn, WindowsPhoneGeek, and Daniel Egan. Above the Fold: Silverlight: "Creating Packs from the Silverlight Application Themes" Peter Kuhn WP7: "A Windows Phone 7 Jump List Control" Colin Eberhardt Shoutouts: Mike Ormond gave a Tech Days virtual confernece session on Thursday, and posted his material and links: Links from my “Silverlight for Windows Phone” session From SilverlightCream.com: ...
The EONumLib provides a set of types to represent numbers with arbitrary precision. There are three extended numeric types, to represent signed and unsigned integers, rational numbers, and real numbers: BigInteger, BigRational and BigFloat As you are aware: BigInteger (http://msdn.microsoft.com/... ) and Complex (http://msdn.microsoft.com/... ) structs are included with .NET 4.0 System.Numerics namespace and the BigRational ...
I’m trying to find time to update the Prairie Developer Conference 2011 website, and the sessions and speaker information will be up by this weekend including the registration page. For those that are wondering what the session and speaker list looks like, I wanted to give a sneak peak. We have a fantastic set of sessions by world class technologists! We’re covering .NET, Java, Ruby, SQL Server, Agile, User Experience, Mobile, Security, Azure, Office, SharePoint, and others. In fact, this year I’ve ...
I wrote a series of blog posts awhile back before that demonstrates the following: Uploading and Storing Images to Database in ASP.NET Displaying Image to Image Control based on User Selection in ASP.NET FAQ: Displaying Image from Database to GridView Control Uploading and Storing Image Path to Database and Image to Folder - Part 1 Uploading and Storing Image Path to Database and Image to Folder - Part 2 (Displaying of Images) Validate Image extensions upon Upload In this post I'm going to demonstrate ...
"Styles tend to not only separate men - because they have their own doctrines and then the doctrine became the gospel truth that you cannot change. But if you do not have a style, if you just say: Well, here I am as a human being, how can I express myself totally and completely? Now, that way you won't create a style, because style is a crystallization. That way, it's a process of continuing growth."- Bruce Lee This is kind of how I see software development. What I enjoyed in the the early days of ...
In this Heavy and yet incomplete Issue: Mike Wolf, Walter Ferrari, Colin Eberhardt, Mathew Charles, Don Burnett, Senthil Kumar, cherylws, Rob Miles, Derik Whittaker, Thomas Martinsen(-2-), Jason Ginchereau, Vishal Nayan, and WindowsPhoneGeek. Above the Fold: Silverlight: "Automatically Showing ToolTips on a Trimmed TextBlock (Silverlight)" Colin Eberhardt WP7: "Windows Phone Blue Book Pdf" Rob Miles Sharepoint/Silverlight: "Discover Sharepoint with Silverlight - Part 1" Walter Ferrari Shoutouts: ...
“Write great code and everything else becomes easier” is what Paul Pagel believes in. That´s his version of an adage by Brian Marick he cites: “treat code as an end, not just a means.” And he concludes: “My post-Agile world is software craftsmanship.” I wonder, if that´s really the way to go. Will “simply” writing great code lead the software industry into the light? He´s alluding to the philosopher Kant who proposed, a human beings should never be treated as a means, but always as an end. But should ...
Just a quick recap of things I noticed going on in or around the XNA community this past week. I’m sure there’s a lot I missed (it’s a pretty big community with lots of different parts to it) but these where the things I caught that I thought were pretty cool. The XNA Team Michael Klucher gave a list of books every gamer should read. http://twitter.com/#!/mkluc... Shawn Hargreaves posted Nelxon Studio posting about a cheatsheet for converting 3.1 to 4.0 http://blogs.msdn.com/b/sha... ...

In MVVM applications, it can be a bit of a challenge to send instructions to the view (for example a page) from a viewmodel. Thankfully, we have good tools at our disposal to help with that.

Read the rest of this entry »

I've been writing software for a while and recently had an opportunity to broaden my horizons and start developing for iOS. We decided to leverage, as much as possible, our existing skills and use MonoTouch and MonoDevelop by Novell. For those of you who do not know, Mono is a .NET port originally designed for Linux but adapted for other platforms as well. MonoTouch is a port specifically for building iOS applications using the .NET framework. MonoDroid is a port (in CTP-esque release) for Android. ...
Visual WebGui offers its developers a set of out-of-the-box themes which they can easily apply to their applications. This allows developers to focus on the development and business logic rather than dealing with UI design missions. However, design tools and customization freedom are available for those who need to customize current themes or create their own custom theme. As part of the constant updates and enhancements to Visual WebGui and its developer CompanionKit a new available theme was added ...
Top executives of most smaller organizations want their companies to be different from the larger corporations. They want their organizations smaller in size; but bigger in productivity by eliminating red tapes and corporate bureaucracy. When the company is smaller, people often work like firefighters – taking on new business and technology challenges without thinking about any procedures and guidelines. People also tend to wear many hats to accomplish tasks quickly in order to integrate new businesses. ...
To follow up a previous article about timeouts and how they can affect your application I have extended the sample we were using to include WCF. I will execute some test scenarios and discuss the results. The sample We begin by consuming exactly the same web service which is sitting on a remote server. This time I have created a .net 3.5 application which will consume the web service using the basichttp binding. To show you the configuration for the consumption of this web service please refer to ...
Often times, you want to take a screenshot of an application’s page. There can be multiple reasons. For instance, you can use this to provide an easy feedback method to beta testers. I find this super invaluable when working on integration of design in an app, and the user can take quick screenshots, attach them to an email and send them to me directly from the Windows Phone device. However, the same mechanism can also be used to provide screenshots are a feature of the app, for example if the user ...
[Russian version of the article] "In the beginning God made heaven and earth. Then he started to integrate." At the very start was the requirement: integrate two working systems. [fairy tale of the system integrators] Small digging up: It was one system. It was good but IT guys want to change it to the new one, much better, chipper, more flexible, and more progressive in technologies, more suitable for the future, for the faster world and hungry competitors. One thing. One small, little thing. We ...
Cloud computing is about scaling out all your application tiers, from web application to the database layer. In fact, the whole promise of Azure is to pay for just what you need. You need more IIS servers? No problemo... just spin another web server. You expect to double your storage needs for Azure Tables? No problemo; you are covered there too... just pay for your storage needs. But what about the database tier, SQL Azure? How do you add new databases easily, and transparently, so that your application ...
/* EDIT - This problem has been fixed in the latest SQL Server 2008 R2 Cumulative Update package. It was identified that changing the aggregation design without reprocessing the aggregations prior to a ProcessUpdate on the dimensions causes this problem and it is a bug */ Many implementations require the use of ProcessUpdate to support Type 1 slowly changing dimensions. ProcessUpdate drops all of the affected indexes and aggregations in partitions affected by data that changes in the Dimension on ...
I feel compelled to post this blog because I find I’m repeatedly posting this same code in silverlight and windows-phone-7 answers in Stackoverflow. One common task that we feel we need to do is burrow into the visual tree in a Silverlight or Windows Phone 7 application (actually more recently I found myself doing this in WPF as well). This allows access to details that aren’t exposed directly by some controls. A good example of this sort of requirement is found in the “Restoring exact scroll position ...
When you design for Windows Phone 7 (or for any touch device, for that matter, and most especially small screens), you need to be very careful to give enough surface to your users’ fingers. It is easy to miss a touch on such small screens, and that can be horrifyingly frustrating. This is especially true when people are on the move, and trying to hit the control while walking and holding their device in one hand, or when the device is mounted in a car and vibrating with the engine. Read the rest ...
In this Issue: Adam Kinney, Jonathan van de Veen, René Schulte(-2-), Vikas, Chad Campbell, Chris Koenig, John Papa, and Martin Krüger. Above the Fold: Silverlight: "Silverlight TV #54: Introducing 11 Brand New Labs" John Papa WP7: "Gestures in Windows Phone 7" Chris Koenig Training: "New Windows Phone 7 tutorials for Designers on toolbox!" Adam Kinney Shoutouts: Jesse Liberty posted ways to get help when you get stuck: Top 10 Tips To Getting Help With Silverlight From SilverlightCream.com: New Windows ...
I started tweeting a list of “protips” (or whatever you want to call that) related to the Twitter for Windows Phone 7 application. Since I worked as integrator on this app, my tasks involved integrating design assets in all screens, and so I had an insider view on all the screens (and that is really a LOT of screens :) Seeing some comments about the app made me understand that most users out there don’t realize how rich the application is, and how many features are available. So without further ado, ...
I tried to use the "ForcedExecutionValue" on several Send Mail Tasks and log the execution into a ExecValueVariable so that at the end of the package I can log into a table to say whether the data check is successful or not (by determine whether an email was sent out) I set up a Boolean variable that is accessible at the package level, then set up my Send Mail Task as the screenshot below with Boolean as my ForcedExecutionValueType. When I run the package, I got the error described below. Just to ...
I got a question in MSDN forum that how to add a SharePoint document property in respective document's footer and it should be available to all new documents. It's really interesting and started R&D on this. Lets see how to insert document property in header/footer. How to use SharePoint document property inside Document's Header/Footer? Here the steps on creating document library and update the document template. First I'll create a Document Library named "Docs". If you already have document ...
This Developers Life is a podcast put out by Scott Hanselman and Rob Conery. In the most recent episode there were a couple of things that really struck me. The fist was on motivation. Why is it that we keep spending every free hour keeping up with the latest technologies and techniques? Personally, I have always enjoyed the satisfaction of solving problems with technology. Hey, if you aren’t one to join sports then you need some sort of challenge. Of course getting to play with new toys like Windows ...
I've gotten used to Resharper's recommendation for defensive coding (see http://en.wikipedia.org/wik... – never trust the client! private void Bar(string x){ if (x == null) return; But how to get this to play with Design By Contract using Code Contracts? I had a look at http://weblogs.asp.net/gunn... - which shows me how to leverage the ContractFailed event and throw my own exceptions. I don't want to throw ...
In this Issue: Brad Tutterow, Kevin Dockx, Richard Waddell, Roberto Sonnino, Dustin Horne, Tim Greenfield, Rod Paddock, Timmy Kokke, Tim Heuer, Manuel Felício, Mike Taulty, and Brian Noyes. Above the Fold: Silverlight: "Using Visual States in custom controls in Silverlight" Timmy Kokke WP7: "Leveraging the Silverlight ecosystem with Windows Phone 7" Tim Greenfield Silverlight/JS: "JavaScript Can't Do Math - SilverlightCalculator A New Silverlight OSS Project" Rod Paddock Shoutouts: Telerik announced ...
For Web Designers and Developers writing CSS code for elements is so time consuming. That too make changes in SharePoint Stylesheets(CSS) needs more patience. First have to make change in CSS, reset IIS(or Application Pool Recycle), clear browser cache/temp files and check. Even for one small change or entire CSS change the mentioned steps has to be done. Sometimes the changes won't reflect and makes little irritating. Many of us faced and facing this issue. Alternatively you can make changes with ...
Recently I spoke to my daughter's first grade class about what I do for a living. As a software architect, it is hard to explain what I do for a living. Even among "technical" people, this is difficult to explain. How do you explain this to First Graders? I scrambled thinking on my feet trying to come up with an example that I felt First Graders could relate to. A software system is like the playground at recess. The playground is filled with various programs competing for the slides and swings and ...
In this Issue: Dan Wahlin(-2-), Kirupa, Jeff Handley(-2-), Mike Snow, Robby Ingebretsen, David J. Kelley, Jonathan van de Veen, Lee, and Walt Ritscher(-2-). Above the Fold: Silverlight: "Prism 4 – Silverlight and Custom Commands" Lee WP7: "Windows Phone 7 Themed Videos" Kirupa Expression Blend: "Building and Using Expression Blend Behaviors" David J. Kelley Shoutouts: The Studio 6 Software Blog folks have updated their ComboBox... check out the demo, and grab the code: Silverlight ComboBox Updated ...
Whilst reading through Design Driven Testing (ISBN 978-1-4302, I came across a very telling statement concerning the expansion of use cases. This was in the context of sunny days (default course through the application) and rainy days (the paths travelled when things go wrong). The quote I want to share with you is this: "If the rainy days scenarios are not explored in sufficient depth before coding begins, all sorts of nasty surprises can leap up during coding, often resulting in a need to rethink ...
I’ve recently begun working on an embedded C project where the code has got pretty out of hand and I’m tasked with bringing some sanity to the code. It quickly reaffirms my main focus of good software development. Nice simple composable functions. Everything about good design boils down to writing good functions. Refactoring bad C to good C is a bit of a mission. But my first whack at doing it is always “Extract Method” (well, other than removing the million warnings that the C compiler helpfully ...