Brian Jimdar
Seattle area WPF / Silverlight developer

Hmm, I wonder of Windows Live Writer will connect

Monday, 29 March 2010 10:26 by brian

The interesting thing about this blog, is that I’ve been meaning to rebuild it for a while, but well haven’t really gotten around to it.

No body really reads this thing, and I had to turn off comments as it was basically just spam fodder.

I think I’ll just start posting interesting things I’m learning here as I go.

-Brian

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

"Slidie" sample updated

Friday, 10 July 2009 12:38 by brian

I just updated my Slidie show sample to Silverlight 3.0 RTW. Looks like rotate and scale is still broken. Got to find time to get that working again...Embarassed

Click the Gallery link above to check it out.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Silverlight 3.0 RTW is here!

Friday, 10 July 2009 09:09 by brian

Whahoo, Silverlight 3.0 is released!

http://weblogs.asp.net/scottgu/archive/2009/07/10/silverlight-3-released.aspx

 I am really excited about the new Sketchflow features in Blend 3 as well.

 I am downloading now, but will post more when as I try out the new features.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (1) | Comment RSSRSS comment feed

And he's baaaaack......

Thursday, 9 July 2009 21:01 by brian

Whew! It's been a great year and I have been meaning to get back into blogging. I finally remembered my blog password Laughing, and this is a test post.

It's also a statement that that I am going to be doing some more blogging soon. Silverlight 3.0 drops tomorrow and I've been playing with an internal release for a couple weeks now.

 Good things are coming!

Categories:   Silverlight
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Introducing Slidie: My Silverlight 2.0 project is posted!

Thursday, 20 March 2008 11:57 by brian

Faithful readers of this blog, (both of you) may have noticed that I haven't posted since the big Mix08 conference which coincided with the release of Silverlight 2.0 Beta1.

I've been busy "drinking from the Silverlight firehose", getting up to speed on all the new stuff and working on my big silverlight project which is called: (drumroll please...) Slidie.com.

What impressed me the most about Sliverlight (and all the more so since 2.0B1) is that it doesn't feel like a toy language like javascript/actionscript/etc. This is the real deal. You get a real strongly-typed first class programming language, a real development envoirnment, real debugging with breakpoints and everything.

This is real programming!

So what are we going to do with it? Wouldn't it be a shame if all it was ever used for was stupid "punch the monkey" banner ads? No! And again I say, NO! We have a real programming environment, so let's build real applications.

SlidieM1ScreenShot01This was my revelation. But this let me to a quandary... exactly what should we build? I've built a lot of windows apps in my day, and I've also built my share of web apps. But this is neither. I don't want to build the worlds coolest web shopping cart, and neither do I want to rebuild an "Excel in a Browser".

So I am building a slideshow builder. My project is called Slidie. It is an editor that allows any web user to pull together images and media from the web and embed a slide show player in their page or blog or whatever.

The big feature is that the editor just puts together a "ShowFile" which is a xml file with links to the image files used, and the image files are downloaded to the client browser on demand. This means that I can run a slideshow application without having to be in the hosting business. Just post your images to Flickr or wherever and then add the links to your slide show. The FunnyHats sample is an example of this. If you look at the showfile, you'll notice the picture links do not load from this webpage.

More info about the project is on the Slidie project page under the gallery link above.

Enjoy, and please post feedback!

Categories:   Silverlight
Actions:   E-mail | del.icio.us | Permalink | Comments (1) | Comment RSSRSS comment feed

Silverlight 2.0 Beta1 is out

Wednesday, 5 March 2008 10:37 by brian

I'm watching and downloading!

ScottGu_Keynote

Runtime

Microsoft Silverlight Tools Beta 1 for Visual Studio 2008

Silverlight 2 Beta 1 SDK

Expression Blend 2.5 Preview

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Mix starts tomorrow! WAAAHHHHOOO!

Tuesday, 4 March 2008 11:07 by brian

Oh boy, mix08 starts tomorrow and I really wish I could go.

But just incase tickets don't drop in my lap in the next 12 hours, I am going to be hosting my own Mini-Mix at home!

mix08_blings_9_25_fHere is what I am planning on doing tomorrow:

  1. Call in sick!
  2. 8:00 AM (ish)- head to the Kirkland Ladro for a Grande "shot in the dark".
  3. 9:30 AM - Be online and watching for the Keynote: 750kbps, 300kbps, 100kbps.
  4. Rest of the day, start checking blogs feverishly looking for content and samples, and most of all, trying to get the 2.0 Beta1 release.
  5. No sleep until I get a 2.0 Beta1 Sample posted!

 

I can't wait. I can't wait.

Categories:   Silverlight
Actions:   E-mail | del.icio.us | Permalink | Comments (2) | Comment RSSRSS comment feed

Posted update to Cartesian Theater project!

Sunday, 24 February 2008 11:16 by brian

Check it out.

I softened up the animations and mouse over behavior and added a sphere and a teapot to play with lighting and shading.

Just for the fun of it I also added a Spectral Highlight on the roundy objects to give them a sheen as they are drug through the two directional lights.

Kind cool. Will post more later.

Categories:   WPF
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Cartesian Theater - Playing with WPF 3D

Sunday, 30 December 2007 14:51 by brian

In the summer of 2007 I had purchased Charles Petzold's book on WPF 3D and was working through the examples and playing around. Making 3D objects is neat, but at a certain point, people want to be able to click on stuff and have it do stuff.

A "Windows Live Search®" on WPF 3D lead me to Daniel Lehenbauer's Virtual Trackball sample. This is a classical approach to 3D and was very well executed, however, from a practical standpoint it didn't seem to be what I was looking for.

The problem with immersive 3D interfaces is you don't want to put your user through flight school before they can use your application. One of my first 3D experiences was playing the game Descent in LAN parties in college. When I first started playing, I routinely ended up getting stuck, upside down in some corner while the bad guys were shooting me. This is fine in an application like a game where you can reasonably expect the user to commit 40+ hours to mastering the interface, but not very practical for a business application.

Everyone admits that 3D interfaces are the future; there really is great potential to display and interact with denser and more rich information. On top of that, WPF 3D makes building 3D interfaces incredibly easy, bringing the html "Tag" metaphor to building (hardware accelerated) 3D is an incredibly powerful "sea change" in building interfaces.

So what's the problem?

I have not seen many applications and samples being written to take advantage of the WPF 3D libraries. The ones I have seen have been horrible. The books and blog posts I've read on the subject have all suggested restraint. Adam Nathan's WPF book suggests using 3D to make a little 3D button effect within a plain windows application, and I've read other examples and comments to the same effect. Basically what it comes down to is that you either use 3D as a little "flavor" to sprinkle over your application, or you make it the main course. The problem is, no one has a compelling vision about how to make a practical 3D user interface.

One often cited parallel is the introduction of Desktop Publishing. The story goes that when it first came out, everyone was sending letters where every word was a different font, just because they could. You still can do this today, but no one does because it does not add value to the experience. (quite the opposite in fact)

So my thought is that the way that you build a useful 3D application interface is that you add restrictions.

This was the idea behind the Cartesian Theater. Just like in a theater:

  • The action is on stage.
    In otherwords, the camera should always looking at the stage. You are not going to get lost pointing off into nothingness.
  • You have to sit up straight.
    We do not encounter objects in our real live that randomly flip upside down (with the exception of my mother-in-law's westie). We do not sometimes walk into our office to find it inverted and us walking on the ceiling. This is as disorienting in an application as it is in real life. Therefore, the camera in the 3D app must always be "right-side-up". In our case, the "up-direction" of the camera is always in the direction of the positive Z axis.
  • You're not allowed backstage.
    The Camera is confined to -Y/+Z hemisphere, and can only move 45 degrees positive and negative of Y on the X-Axis. Using the Theater metaphor, the user can only move from the "front row" view to the "catwalk view" (directly above the stage looking down) and can only "sit" from the far-left theater seat to the far-right.
  • The theater is not in space.
    Objects must rest on the stage which is the X/Y plane in this case. They do not "float" above the stage for no reason.

With the following in mind, I present the first version of my Cartesian Theater application running in a xbap. Click the screenshot below to try running this in a browser. You will have to have dotNet 3.0 installed, and it will probably only work in IE.

CartesianTheater_Dec07

Please note the following neato features you might try:

  • The vertical scrollbar controls "Row Angle" or how far down in the theater you are "sitting".
  • The horizontal scrollbar controls "Seat Angle" or how far left or right of center you are sitting.
  • Your mousewheel controls zoom, which is a little wonky right now.
  • Press the A key on your keyboard to show/hide the visible Axis.
  • Click and drag on the boxes around
  • Click and drag on the stage floor (grey) to move the floor

     

    Hope you enjoy. As I have time I will post more updates.

    (Credit where credit is due: I am using the super-great Petzold.Media3D library to draw the shapes and Axis. Used with permission.)

  • Categories:   WPF
    Actions:   E-mail | del.icio.us | Permalink | Comments (1) | Comment RSSRSS comment feed

    Code pasted from Visual Studio

    Saturday, 22 December 2007 14:14 by brian
    /// <summary>
    /// Retrieves all posts from the data store
    /// </summary>
    /// <returns>List of Posts</returns>
    public override List<Post> FillPosts()
    {
         
    string folder = Category._Folder + "posts" + Path.DirectorySeparatorChar;
         
    List<Post> posts = new List<Post>();

         
    foreach (string file in Directory.GetFiles(folder, "*.xml",
              
    SearchOption.TopDirectoryOnly)) 
          {
              
    FileInfo info = new FileInfo(file);
              
    string id = info.Name.Replace(".xml", string.Empty);

          
        //Post post = SelectPost(new Guid(id));
               Post post = Post.Load(new Guid(id));
               posts.Add(post);
          
    }
          
    posts.Sort();
           return posts;
    }
    Categories:  
    Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed