Visual Studio 2010 provides a great starting point for developing Silverlight Line of Business applications with WCF RIA Services.  Here at Falafel Software, we find ourselves using this template quite often, so we decided to make some enhancements to the base template to give ourselves a head start every time we begin a new project.  Jump to the bottom of this post to get the solution template for yourself.

 

Here are some improvements we’ve made:

1.  Four projects are better than two

The standard two-project setup is great for simple solutions, but when you are building enterprise-level applications, it ...

In few weeks, NBC channel 4 – will release the final results of the “Best of the Bay” awards for many categories, one of them will be the “Best Software Design Firm” in the Santa Cruz County.  With tremendous success in the last seven years at Falafel, we are honored and delighted to be nominated.  The winner will be announced the first week of July on NBC TV Channel 4 in the Bay Area (San Francisco – Oakland and San Jose). Thank you to all those that nominated us and for the wonderful Falafel team that made this possible!

At Falafel, we are often called upon to create one system with several different client interfaces.  Sometimes this will include an ASP.NET, WinForms, WPF, and/or Silverlight front-end, all connecting to the same back-end server.  With this type of set up, we usually create a single solution as in the example below.

image

Usually, I see people that are in this situation set the server project as their startup project, start the debugger, and then manually launch the client application they want to debug.  However, Visual Studio (both 2008 and 2010) has a little-known feature that speeds this up by allowing you ...

Creating and using a Storyboard in code behind is a very simple process. In this example, I’m going to implement a custom Silverlight behavior using a dynamic Storyboard. My custom behavior is called WiggleBehavior and will wiggle any FrameworkElement you place it on. First I need to create my behavior and add some properties to it.

  public  class WiggleBehavior:Behavior<FrameworkElement>
    {
  static  int _randomSeed = DateTime.Now.Millisecond;
        Random _random;
        Storyboard _Storyboard;
 
  public WiggleBehavior()
        {
            SizeDelta = 0.2;
            RotationDelta = 2;
            DurationDelta = 2;
            DurationSec = 4;
        }
 
  public  double SizeDelta { get; set; }
  public  double RotationDelta { get; set; ...

Google IO Day 2

Sitting taking notes at the second day Keynote. There is a lot of new stuff in Android OS 2.2 codename Froyo:

  • Access to camera, accelerometer etc from within the browser
  • JIT compiler, much higher performance
  • Exchange integration (jag at RIM Blackberry there)
  • Support for Flash (came with a lot of funny barbs and lots of applause)
  • Push messaging, where intents can be messaged, for instance the user goes to Google Maps on one device, send a message to his phone and pulls up the same maps on the mobile device
  • Very cool speech recognition, awesome ...

Falafel Software is attending the third annual Google IO in San Francisco. I am here with our CEO Lino Tadros, our Director of Training, Steve Trefethen, and also Scott Frolich.

So why are we here? Isn’t Falafel Software a .NET Consulting and Training company? There are two important things behind this visit:

  • We need to stay current on what is happening in the industry, be it .NET or not, it would be foolish to think the world will not change when the only thing we are sure of is that change is constant. It is important to know what the ...

One of the new features introduced in C# and VB 4.0 is this daunting pair of words. What is generic covariance and contravariance? The short explanation is that this new feature allows the generic type parameters of interfaces and delegates to behave polymorphically as you would expect of an equivalent non-generic interface or delegate. For more details and examples, read on.

Definitions

When class A is more derived (inherits from) class B, class A is covariant of class B.

When class A is less derived (is the parent of) class B, class A is contravariant of class B.

Example Classes...

I have been working on a project in Silverlight that was, until recently, debugging under the Visual Studio .NET development server.  Recently we converted this application to be hosted by IIS 7 on our development environments.  Ever since then, I’ve been getting timeout errors whenever I debug the application and halt execution using breakpoints for more than a couple of minutes.  The error dialog that appears says “The web server process that was being debugged has been terminated by Internet Information Services (IIS).

image

To solve this problem, I followed the advice given in the second half of the ...

On January 31st 2010, I wrote a blog expressing my opinion and reasoning behind rejecting the idea of having an iPad and predicting its imminent failure.

Well, believe it or not, I decided to buy one last week, as I am a tech junky – gotta have it – kind of guy.  I was going to keep it next to the TV to check emails, surf the web, read the newspaper at Starbucks, etc…

Well, I have to eat my words from the blog on January 31st, this device is AMAZING, I am “again” pretty impressed. 

For a company, “Apple”, ...