Hello! I'm MattD1980
I work as a developer / integrator and as the Design Team Lead at Xceed. Web and application design geek! Silverlight and WPF nerd. I also work as a part time game designer at Loopycube. Very proud to be part of this incredible team since 2001.
Profile
Experience
- Mar 2009 - PresentGame Designer for iPhone. / Loopycube inc.
- Aug 2002 - PresentDesign Team Lead - Integrator/Designer / Xceed Software
- 1998 - PresentTech Support / Videotron
Education
Updates
-
@MarcPalumbo why haven't I blocked you for twitter yet? Deserter!
-
FRIDAY! WOOP WOOP!
-
I think I need this SmartWatch : http://t.co/dh7mtoTm
-
@MartinPlante well, to me that phone would be next in line after the iPhone, I saw it at Telus (the 800) and it looks amazing.
-
"at the end of the day Windows Phone is just not as competitive with iOS and Android as it should be right now" The verge about a WP review
-
"BlueStacks App Player Enters Beta, Brings Android Apps To Your PC Desktop..." Whhhhyyyyyyy?????7 weeks ago from web | Reply, Retweet, Favorite
-
@Kosmatos yeah, sadly. Sometimes it won't see my computer, sometimes it's the screensaver that crashes, sometimes it wont connect to Netflix
-
Happy St-Patrick's Weekend! http://t.co/BQWjyYZ3
-
@MartinPlante so true...2 months ago from web | Reply, Retweet, Favorite
-
Is there a website or "fan site" of Windows 8 with confirmed Metro apps or confirmed developers on board with building Metro apps? Thanks!2 months ago from web | Reply, Retweet, Favorite
-
@mstrobel @darrel_miller never mind, confused your answer with another question! :)
-
@mstrobel @darrel_miller really? Right click on your desktop go to add gadget and you found a stock one within 5 minutes?
-
3 of us failed the challenge to install a stock gadget in Windows 7 within 5 minutes :(
-
Whyyyy oh why can't I collapse code in the xaml editor of blend? Whhhhhyyyyy!
-
Just use Chrome, Google won that fight.2 months ago from web | Reply, Retweet, Favorite
-
Do people still really get excited about new versions of browsers? Maybe the weirdos who are still using Firefox (no offense).2 months ago from web | Reply, Retweet, Favorite
Posts
Programming is a field that requires extreme precision. There’s no emotional interpretation done by the compiler it will do exactly what you tell it. This, by default, doesn’t translate well in video games. Some games are authentic to their code, one pixel of a cliff boom your dead. Ninja Gaiden for the Nes is a brutal example of a game that required extreme precision from the player which correlates well with how it was coded. There are some exceptions, If you think of Super Mario Brothers 1, it displays more flexibility :
In this specific scenario, Mario “should” have fallen in the hole however, it was designed to cut the player some slack and allow them a margin of error. The benefits are obvious, you leave the player less frustrated and the experience becomes more enjoyable.
There are exceptions to this rule, obviously your targeted players could get bored if the game is too easy or too hard. Not all games target the same category of players. Recently released Deux Ex for example is definitely not your grandma’s Farm Ville. The skill level expected from the players is higher than your typical casual player. That said, it’s not because a game is super hard that it should not try to give a player some breathing room. Let’s look at vertical shooter, it is a category of game that is considered hard :
Ikaruga (shown in the picture) is not the hardest of it’s category but the game is trying damn hard to kill you. Dozens even hundreds of bullets are constantly being thrown at you that you must avoid or absorb by switching your ships colors. It requires a lot of coordination even to reach the third level in this game. The breathing room (may be hard to believe from the screenshot) is still present. In this case, the ship’s hit box is smaller than the actual ship :
As you may have guessed the bullets will only kill you if they touch the hitbox rather than the actual ship on screen. This has the chance to provoke : “WOooaaaaah! That was close!!!” reactions rather than “damn, dead again.”. I’m not downplaying the difficulty of these games, I’m rather trying to demonstrate that even the most hardcore games tend to try and apply that line of thought.
Games can be hard but they should never be impossible, give your players a break and remember that fun is part of the experience they are expecting from any game. Don’t let a compiler make design decisions, micro manage everything that’s going on in your game because once it’s out there, player will notice if you didn’t. To quote Futurama, “When you do things right, people won’t be sure you’ve done anything at all.” If people enjoy your game without being able to explicitly describe why, chances are you’ve done something right.
If you didn’t give Bastion a try yet, you should. Bastion takes place in “in a lush imaginative world, in which players must create and fight for civilization’s last refuge as a mysterious narrator marks their every move.” It’s absolutely gorgeous. The world gets created as you move around, it’s both technically and visually impressive.
On the downside, I wish they didn’t put in that narrator. As you progress through the world, a narration is done trying to give context to the story. It’s semi-humoristic and I was not quite sure where they were going with it. In my opinion, it doesn’t add to the experience, on the contrary it takes away from it. Still, it’s a small annoyance considering the quality of the game. Easily worth 15$!
If you own an iOS device, you must check out Gesundheit. It’s an action puzzle game that puts you in control of a snotty pig who needs to outwit a bunch of monsters. The game is incredibly well designed, the controls and the interface works perfectly, definitively worth your 0.99$ (for a limited time). You can get it here. Here’s a video preview of the game that should instantly charm you.
I’m still laughing just by watching this image. Maybe it’s because I woke up at 5:50am this morning but whatever, I think it’s a great piece that I wish I could have in my man cave!
found this on a fun (but French) website here.
I’ve recently finished playing Portal 2 and I have to say that I had a blast. Although I would have liked the game to be a little harder I think it’s still fair to say that playing through the game is incredibly rewarding. I would consider the game widely accessible even to those unaccustomed with shooter controls; the learning curve is very well done. The game’s story and dialogues (more monologues really) will be enough to motivate you to complete the puzzles as quickly as you can to get more of the story that you’ll be craving within the first minutes you play.
Square Enix sure knows how to pull my strings. Last week they released Final Fantasy IV: The Complete Collection, which I must definitely own, since it has to be the RPG I’ve played the most since it’s first release on the SNES (titled Final Fantasy II back then for those keeping score). This game was a landmark in my early teen years. I thought the scenario was brillant and I was captivated by all the unexpected plot twists. I simply adored the mystery behind Cecil’s dark knight mirror image fight amongst other thing. Of course, I was 11.
One thing that remains great is the musical score used to carry the story line. It was simply amazing back then and still is amazing today. Perhaps the musical score is one of the main reason why I held such an emotional attachment to this game, I could barely read English when I was 11 so it had to be something more than just the dialogs. This is one thing I hope they don’t touch.
For me, the down side to this release is the fact that it’s being released on the PSP. I don’t like the PSP; it’s not comfortable, especially for a game that will require long hours of gameplay like a Final Fantasy game. I wish they would release it as a downloadable then I could at least be spared from the spinning noise of the UMD. It still beats playing an RPG on a phone though so I guess I should be happy it’s not an Android or iOS-only release.
This will probably be the last game I purchase on my PSP before finally putting it to rest. You suck PSP and I loathe your battery life, easily scratchable screen, noisy UMD, slow load times, incredibly fragile device. You really, really sucked. Hopefully, this will also be the last time I play Final Fantasy IV, there’s too many great games out there to justify replaying these old ones again. I also didn’t enjoy the After Years all that much on the Wii but perhaps this version will improve my experience. Time to see Cecil get screwed by Kain one last time…
You can watch the cheesy trailer for this release here : http://www.youtube.com/watch?v=ndcGaUhiTnc
I’ve been incredibly busy and/or out of the house recently. I had the chance to go to Cuba for a week of family vacation and then Las Vegas for work. This is why I’ve been rather quiet on my blog recently. During my travel time I got the chance to play some 3DS, which I got a day before leaving to my trip to Cuba. I got Street Fighter IV, Shadow Wars, and Pilotwings. THE game I’m most looking forward to is Zelda OoT. Rumors have it that Nintendo decided to hold off its release to give other developer the chance to sell their titles, but that’s a different story. I’ll try to post my impressions about the console and the games as soon as possible.
Besides the 3DS stuff, there are a few games I’m looking forward to but the main one on my radar is Portal 2. I simply adored the first one and I’m looking forward to this sequel. I’m worried that they may try and over do it and over complicate things; Portal was great because of it’s simplicity and it’s success, I’m sure, came as a surprise. I’m hoping they haven’t changed the formula too much. Quite a few on my twitter feed are excited about Gears of Wars 3; however, I really didn’t enjoy the first two. I gave them a reasonable chance but it felt like a unending game of hide and seek so I will pass on this one.
I’ve also been playing a bit of World of Warcraft again with friends again, but this time with a new character and I’m enjoying the revamped content quite a bit. I’m curious to see how 4.1 will be received because it feels like people are already getting bored with Cataclysm. I’m also very interested to see if this will cause Rift players to go back to WoW. A great test for this new MMO.
So much to talk about, it’s good to be back!
From old-school to 2011, the Dragon Quest series manages to evolve in a great RPG game while keeping the old-school charm of the series. I’m currently 7-8 hours in and I’m having a blast with it. Contrary to most 3D games on the DS this one manages to look good for the dated system. It uses some cell shading that somehow manages to hide the low resolution of the device. The game designers also decided to keep some of the sounds original to the series (stairs sounds, attack sounds, etc…); however, if you are unfamiliar with the series you might just find this to be weird. Overall, it looks and sounds great so let’s look beyond the artsy factor.
It’s predecessor (Dragon Quest VIII) was a lot more tedious to play. Every single time you switched zones it meant grinding for a couple of hours. There’s no merit in a game taking 80 hours if more than half the time you have to grind your way through the game. Dragon Quest IX is far more balanced and won’t force you to do as much grinding. The game also allows you the flexibility to create your own party, which is something new to the series; however, it does mean less personality to your party as little to no scripting will be involved. I personally like the character of Jessica in DQ, for example, which added to the charm of the game. Now your party consists of 4 mute characters, which is a bit of a shame. That said, you can pick from multiple classes, which also offer multiple talent trees to pick from and that contributes to a great variety of groups you can form. I’ve decided to go with a classic party of Warrior, Priest, Rogue, and Mage. I figured it was a safe bet that wouldn’t require me to go back later in the game to change my party. The game also offers a multitude of online features that I have yet to test. A few hours into the game you will have the option to “visit” other worlds with other players. A feature that I’m looking forward to test.
I’ve been playing Dragon Quest since Dragon Warrior 1. Back then you could get it for free if you subscribed to a year of Nintendo Power. It wasn’t a great game but RPGs were a tad rare back then. The game gave you very little information on what to do next and most of the time you had to guess what you had to do to progress. Maybe I got this feeling because I couldn’t really read English all that well but either way, the translations were pretty bad. That said, Dragon Quest has come a long way since and so far it feels like this could be the best version since Dragon Warrior 4. Hopefully the game won’t disappoint me midway; however, if you’ve skipped multiple versions due to how tedious Dragon Quest usually are, it’s time to give it a chance one more time.
Last week there was a surprise (for me at least) added to the Wii Virtual Console catalog; a NES game called Faxanadu. I haven’t played this game since I was 10 years old so the nostalgia factor kicked in big time and made me spend $5 for it. I’ve played a few hours and I’m almost at the end of the game, but wow, what a brutal experience this has been. I would much rather deal with my root canal next month than actually going through the game again. And yet, here I am, replaying it for at least the third time since 1990.
I wish I could talk about some ingenious game design elements or clever gameplay but it’s a total mess. There’s absolutely no game design to talk about, monsters will always rush towards you no matter the obstacles, if they can’t reach you they go nuts and start shifting wildly on the screen, it’s really quite astounding. I can understand that coding an AI is complex but a few IF conditions in their code could have given the game a more “organic” feel. The game is filled with cheap shots, sometimes there are NO options and you will get hit by the monsters on the screen no matter what.
So why am I bothering writing about it? Because somehow, in some way, the game still was fun to play. As a 10 year old kid, you are way less critical about the world around you and even less with games. When I was playing this, I must have thought to myself “I must be doing something wrong” and probably gave the designers more credit then they deserved but again, I don’t believe there were any designers involved in this project. It feels like the game was probably mostly done by a few programmers and a pixel artist. I think this game may have, by itself, created the need for testers. Even one tester could have told him : ”On screen X when you are up the ladder, it’s impossible to get out because monster Y will just hit you and make you fall down over and over”. I think their idea of a solution for this issue was “Meh, they can always die and restart from the town”.
Still glad I spent the 5$ for it though. Faxanadu was a blast for me to play as a kid but now, it’s just painfully wrong in so many ways and yet, I’m still trying to find that last ring to allow me to get in ”The Evil Place”!
Also, the marketing team decided that : “Daggers and wingboots, mantras and monsters await you.” was a good slogan for the game, that says a lot.
I caved. I went out and bought Marvel Vs. Capcom 3. I do feel cheated having to pay 60$ for a Street Fighter game but I paid the same price for games I know will be played even less. Still, a 39$ price point would seem more fair to me. As for the game, so far so good, I’m a few hours into the game and I must say it is quite impressive. The animations are incredible and the background stages are equally impressive. Some characters feel unbalanced compared to others, for example, I have yet to fight someone good with Tron and on the other hand, Dead Pool feels overpowered to me. It’s probably just a question of getting used to the characters.
Capcom should get a clue; this is no longer a game designed for the arcades. The single-player mode game offers too little. In previous versions it was understandable since Marvel Vs. Capcom were ports of an Arcade game; however, Marvel Vs. Capcom 3 is not. It’s a few battles between other teams and boom, Galactus. The last fight is ridiculous and does not bring additional fun to the game like it could have. The game has another option called Mission that is just a hidden tutorial for each character. It’s nice, but it doesn’t cut it. In my opinion, it is pure laziness on Capcom’s part and this is an example where I expected more feature out of my game, especially if your charging me that much for a 2D fighting game. If you’re wondering what they could have done, you can check Street Fighter Alpha 3 or better yet, Soul Calibur, which manages to offer a compelling single player experience.
The game does offer a lot in terms of complexity; mastering a single character will require hours of practice. I’m also glad they moved to a 3 button layout when it comes to attacks: High Kick and High Punch are now a single High Attack. It works incredibly well and you probably won’t miss the extra buttons. They also added a “Special” button, which is basically the launch attack, and makes it easier to start your air combos. I’ve only played 4-5 hours so far but I can already tell that this is a game I will be playing for a long time. I wish I could tell you more about the online aspect but every time I tried to join a game I was dropped unexpectedly. Probably bad luck because reviews seemed rather positive about that aspect of the game.
Which team do you usually work with? I’m enjoying playing : Viewtiful Joe, Sentinel, and Wolverine for now. I’ll probably get my ass kicked online later this week, hopefuly the ladder system will allow me to have an occasional win. Feel free to email me if you want to add me on your Xbox Live account for a couple of fights! mattd1980 at mmmgamer dot com.
Posts
Feels like not too long ago I was writing about Xceed going to Mix09 and here we are a year later, ready to go to Mix10! We are all very excited about the announcements that will be made in regards to Windows Phone 7 Series development and are looking forward to some announcements about Silverlight's future as well. And who knows, maybe even WPF? Come on Microsoft, give WPF some love! :).
That said, if you catch Cat, Odi, Charles, or myself at the event and have questions about our products, don't be shy and come talk to us! We'll be staying at the Mandalay Bay hotel and will try to be part of social events there. You can check us out as usual on twitter (@MattD1980 @Cattatatow @Kosmatos) to see where we're hanging out.
I hope the keynotes and sessions this year will be as inspiring as last year. Mix09 by far surpassed my expectations and it would seem that even more is brewing in Microsoft's lair. I still have to fill my schedule with the sessions I will be attending. So much to learn, so little time!
See you there and don't hesitate to contact us if you want to meet up!
The upcoming release of Xceed Professional Themes for WPF will be our biggest update to the product since it was released last year. The latest incarnation of Xceed DataGrid for WPF brought a Windows 7 inspired theme as well as the Live Explorer theme to the table. Both these themes will now be available in the next version of Xceed Professional Themes for WPF.
So let's talk about the Live Explorer theme. When we first created our Xceed DataGrid for WPF Live Explorer we wanted to have a branded theme that would demonstrate how much of our product you could "re-style". At the time we didn't offer it as an available theme since we thought it would be too specific to our application. Boy, did we guess wrong on that one! Many of you responded very well to the theme and some of you were furious at us for not making it available. We heard you! Here's what it's going to look like :
The Live Explorer theme was crafted so you can easily add it to your window and instantly get the look we are using in our own Live Explorer. It is perfect for applications that require a "darker" environment with a hint of color to keep it visually pleasing. Keep in mind that the video displays a work-in-progress version of the theme but very little should change visually when it is released. We also decided to expose an additional style for the toolbar to make it orange instead of gray.
The second theme we added is a Windows 7 inspired theme. Windows 7 creates a very colorful and exciting environment and we wanted to capture this and bring it to our products. We tried to bring a more extravagant experience with this theme and hopefully it will allow you to build a fun application around it.
Both these themes are available in Xceed DataGrid for WPF and the upcoming version of Xceed Professional Themes for WPF. Another version of Xceed Professional Themes for WPF will provide styles for Microsoft's datagrid and calendar controls should come out shortly after.
If you have any questions about the product, feel free to contact us!
I thought it would be a good idea to share with you how easy you'll be able to integrate our new Xceed Professional Themes for WPF product into your application. Version 1.0 will include 5 different themes: Media, Glass, and Office 2007 Black/Blue/Silver. Future versions will probably include Office 2010, Windows 7 themes, etc. You can expect each theme to have a version for Xceed DataGrid for WPF as well. This way, you can keep the datagrid's look in sync with all the standard controls.
Once you have the product installed, the first thing you'll want to do is add references to your project. Each theme has an assembly associated with it. For this example, we'll work with the Media theme (similar to the WMP11 theme in Xceed DataGrid for WPf). Once you have added the reference, you'll want to set the namespace declaration in XAML:
xmlns:xcpt="http://schemas.xceed.com/wpf/xaml/themes"
xcpt stands for Xceed Professional Themes . We wanted to preserve the proper "WPF" way as much as possible, so each theme is basically a resource dictionary that you can add to your resources. You can simply add the resource dictionary as a resource to your entire window:
<Window.Resources>
<xcpt:MediaResourceDictionary/>
</Window.Resources>
This will also work if you want it to be applied to your entire application.
<Application.Resources>
<xcpt:MediaResourceDictionary/>
</Application.Resources>
You're almost ready to go. You need to first take care of the licensing. Our custom resource dictionary exposes a LicenseKey property:
<xcpt:MediaResourceDictionary LicenseKey="Your-License-Key-Here"/>
If you are in trial mode, you should be able to find your trial license key in the Resource Center installed with the product. If you have purchased the product already, you will find your license key in an email sent by our sales department. If you are trying the theme on an already existing application, you can hit F5 and see your standard controls styled with the Media theme. Simple enough?
The method I just described is using all our resources implicitly, meaning that you did not have to define explicitly on each controls which theme you want to use. If, for any reason, you do not wish our themes to override all your defined styles, you can use this product explicitly.
<xcpt:MediaResourceDictionary StyleUsageMode="Explicit"/>
As you already probably guessed, the default value is Implicit. Now that you have changed the StyleUsageMode property, if you hit F5, you should not see any difference from what you usually see without the themes referenced.
This means, however, that you will have to define the resource you want for each control. Let’s take a button for example:
<Button Style="{x:Static xcpt:MediaResources.ButtonStyle}"/>
You have to force the Style of the Media button on the desired control. You will find a complete list of keys for our controls available in our documentation if you chose to work in Explicit mode.
When creating this product, we were also aware that even though we styled all the standard Microsoft controls, some users would require us to go further. This is why in our light API we added some brush resources that you can apply to your own controls. Here's an example:
<Border Background="{x:Static
xcpt:MediaResources.ControlBackgroundBrush}"
BorderBrush="{x:Static xcpt:MediaResources.BorderBrush}"
BorderThickness="1"
Height="50"
Width="50"/>
This way, you create your own controls using some of our resources. As demonstrated above, you can set Background and BorderBrush to any element using our resources. A complete list of exposed resources will be available in our documentation as well. Of course, there's always the option to get our Blueprint Edition to get access to the complete XAML resources for all controls.
Finally, a request I have received a few times and even in my previous blog post is to be able to change themes on the fly for your application. Basically, something to allow the user to have a Combobox with a list of available themes that can be changed during run-time. Here's a quick and dirty way you can do this, by defining your Combobox:
<ComboBox SelectedIndex="0"
SelectionChanged="ThemeComboBox_SelectionChanged">
<ComboBoxItem Content="Glass">
<ComboBoxItem.Tag>
<xcpt:GlassResourceDictionary />
</ComboBoxItem.Tag>
</ComboBoxItem>
<ComboBoxItem Content="Office 2007 Blue">
<ComboBoxItem.Tag>
<xcpt:Office2007BlueResourceDictionary />
</ComboBoxItem.Tag>
</ComboBoxItem>
<ComboBoxItem Content="Office 2007 Black">
<ComboBoxItem.Tag>
<xcpt:Office2007BlackResourceDictionary />
</ComboBoxItem.Tag>
</ComboBoxItem>
<ComboBoxItem Content="Office 2007 Silver">
<ComboBoxItem.Tag>
<xcpt:Office2007SilverResourceDictionary />
</ComboBoxItem.Tag>
</ComboBoxItem>
<ComboBoxItem Content="WMP11">
<ComboBoxItem.Tag>
<xcpt:MediaResourceDictionary />
</ComboBoxItem.Tag>
</ComboBoxItem>
</ComboBox>
In your codebehind you will have to add the ThemeComboBox_SelectionChanged method, which should look like this:
private void ThemeComboBox_SelectionChanged(object sender,
SelectionChangedEventArgs e)
{
if (e.AddedItems.Count > 0)
{
this.Resources = ((ComboBoxItem)e.AddedItems[0]).Tag as
ResourceDictionary;
}
}
So this pretty much covers how our new product called Xceed Professional Themes for WPF will work. If you have questions about licensing and pricing, you can already contact sales@xceedsoft.com. You can expect this product to be available by mid/end of August. Enjoy!
One of the features this product will have is the ability to skin all your controls and still respond to visual properties. For example, having a WMP11 button will completely redo the look of the button; however, we were careful to still support properties like Background and BorderBrush, for example. If you look a the following image, you'll see three different buttons all with the same skin. The only difference between each button is the Background property :
This is somewhat related to my previous post about "less is more". Another thing that I've noticed over the years is that some websites or applications tend to give a priority to looks over function. There are some exceptions to this that obviously depend on the theme of the application or website. Now, WPF and Silverlight provide us with a lot of features to alter the visual appearance of an application and as I mentionned before: with great power comes great responsibility.
A lot of our clients have to wear the designer, artist, and programmer hat all at once. Not everyone has the chance to have an integrator and artist/designer working alongside. If you are just starting out in WPF or Silveright and do not have a lot of experience in design my first advice is this: don’t try to be cute. Design is hard and requires a lot of experience, you wouldn’t expect someone to start coding in C# and or VB.NET by improvising, well don’t expect you can easily improvise design ;-).
When I say “don’t sacrifice function over looks” it means elements placed on your application or website that require interaction should not be blended in your design in a way that they cannot be easily accessible. This might sound very basic; however, even the most advanced design companies make these fundamental mistakes. For example, here’s something Odi (@kosmatos) tweeted : “So who can tell which is currently selected in the "Public | Private" TOGGLE button? How do you know? http://twitpic.com/659sb”. And he’s right, the purpose of a ToggleButton is to easily determine if a button is currently toggled or not. When designing an application make sure your controls are easily accessible and that their visual representation respects the essence of the controls.
Another fundamental way to allow users to easily indentify an element that can be manipulated is by using contrasts. Make sure that what is important to the end users visually stands out. This is another point that may sound very basic to most of you; however, it is a detail that can be forgotten or ignored. Here’s a selected menu item from a very awesome website I visit:
Bright orange on white is not the best way to make text stand out. Test your contrasts and make sure that important text or informationcan be easily read.
Regroup valuable information or sections currently important to the user. We faced this issue when developing our Resource Center. We wanted to display a lot of information in a single form. For those who don’t know what the Resource Center looks like, here it is:
We have a main section in our circular listbox, we have News Headlines and Licensing Information. That’s a lot of content to throw at our users. So we have to guide our user eyes to what is important. The currently active section will have a big icon standout and the icon will be linked to the currently active section, in this case Getting Started, which is represented by a timer. One of the issues we had is that the news headline would have grabbed the user's attention too much when really this is not where we want them to initially look. So what we did is we made the text semi transparent until the user hovers over the section. We also decided to hide our scrollbar on the News section that would just be cumbersome to the user's eye. So with this, we hope that the users initially pay attention to the middle circular panel.
This is just some advice I’ve learned by working with our designer over the years. They are fundamental principles that we obviously did not invent. Those are related to the Contrast, Repitetion, Alignment, Proximity (C.R.A.P.) design principles brought up by Robin Williams in his popular book The Non-Designer’s Design Book. You can do a quick google search for C.R.A.P. Web Design to find more information about this. Keep in mind that the C.R.A.P. Principles applies, in my opinion, to application design as well.
Questions or comments, feel free to send them either on twitter @mattd1980 or drimonakosm@xceed.com
Next week I'm headed to Vegas to participate in this much anticipated event. I'm really looking forward to meet some of you and I will be hard to miss with my white Xceed polo ;-) so don't be a stranger! The sessions I will be attending will be mostly those concerning Silverlight 3 and WPF. I'm pretty excited about What's New in Windows Presentation Foundation (WPF) 4 by Kevin Gjerstad and Mark Wolson-Thomas, I've been working with WPF over the past three years and have pretty high expectations about this new version. I hear XAML will change a bit, which concerns me considering most of my coding time is done in XAML for the DataGrid or our Silverlight products.
My expectations for Mix09 are to a) learn new stuff and b) get inspired! It'll be interesting to see what others do and what Microsoft has planned for the future. I'll see you guys and gals there! I'll probably be tweeting quite a bit about what I am doing while I’m there so feel free to follow me at twitter.com/mattd1980. Oh and I'll be attending the TAO party with Catherine, Charles, and Odi on Wednesday night!
<DoubleAnimation
A lot has changed since WinForms but one of the variables that hasn't changed much, is the programmer. WinForms programmers who were used to static environments are now asked to "upgrade" to WPF, which brings a whole new world of possibilities. One of these possibilities is animation. In an ideal world, a company that moves from WinForms to WPF should have an integrator and an artist. Obviously, not all of WPF programmers are that fortunate and some have to take on the three roles. Here's an example of what I consider a good use of animation.
If working with Catherine (our artist) has taught me anything in the past three year is that "less is more", which she often loves to remind me. This is especially true with animations and more so if you have little or no experience with it. Stick with the basics. Why do you want to animate X and Y? The answer can't always be "because it's cool” or “because I can". Animations should be used to guide the user’s eyes on the screen, to give them a visual queue that something changed. It's easy to go over the top and do too much. Here's an example of what I would not recommend :
Unfortunately, this is the type of things we see in WPF applications. Too much visual noise, which overwhelms the user. I would recommend a much smoother approach. For example:
In the end, if your application is built around a "light" animation philosophy, odds are that you'll get a much slicker application. Try not to vary the type of animation you are using either. Mixing ScaleTransforms with RotateTransform can make a user nauseous. If you don't feel you have the knowledge required to determine when you should use animation, refer to the pros like what you see in Zune, which uses very smooth animation like the one I demonstrated.
Also feel free to follow me on twitter !
Hello! Welcome to my new blog, Xaml hero! My name is Matt and I work as the WPF and Silverlight integrator at Xceed. With the arrival of new technologies that require artists and programmers to work together, came the need for a middle man: Me! Part of my job is to make sure that both parties understand each other and work towards the same goal. When we have technical group meetings the artist will often look at me and go "huh" and it's part of my job to make her understand some of the technical limitations she will be facing. My day to day job consists of taking the designs or prototypes the artists might have created and integrate them into our products. It can be new look for the column header in our grid or a new sample application for our Silverlight tools. I usually work directly in Visual Studio or a XAML-pad type of editor. I usually try to avoid using Blend as its XAML editor is still lacking.
As for our artist, she can use a wide variety of tools. She obviously does a lot in Blend; however, her mock ups can be static and come from illustrator. Once she is done, she'll ask me to "wpfize" them. She will also occasionally use Flash when her mock ups rely on elements being animated.
So there you have it, this is what I do at Xceed. I hope to bring you tips and samples on how to do neat things in both WPF and Silverlight whenever I get the chance.
Note that Catherine and I will be attending mix09! Look for us if you have questions about our products or just feel like chatting about them.