<

Silverlight Cream for June 11, 2008 — #297

Keywords: , , , , , , ,

The daily list still remains high: Peter McGrattan(3), Lee(3), Dave Relyea with a Dialog Class, Michael Sync raffling off eBooks, Karen Corby’s TechEd material, Pete Brown with a streaming upload work-around, 6 Webcasts by Lindsay Rutter, and Koen Zwikstra on his P2P Library.


From SilverlightCream.com:
Silverlight 2.0 Unhandled Exceptions
I had been tracking an old link for Peter McGrattan and had completely missed some good stuff on his site, so we’re going to play catch-up: First is this short “what to do with an unhandled exception” post, next is Silverlight 2.0 Stock List Demo - Part 3 , good stuff… and links to the others, followed by My Samples Updated to Beta 2 in which he gives out updates to, for instance, the Stock List Demo Part 3 :) … all with source, so enjoy :)
Showing and Hiding Datagrid Columns
Another busy guy is Lee, who is a man of few words :) He’s got some good material, at least code… First this one on Showing and Hiding DataGrid Columns, Next is ComboBox code updated to Beta2 , and finally Animating ListBoxItems using VSM in which he updates his prior article using VSM… all these are code included.
Using Popup to create a Dialog class
Dave Relyea uses a Popup control to make a Dialog Class… how cool is that? … the kind of out-of-the-box thinking that separates us all… I like it :)
Contest: Write an article about Silverlight 2 (beta2) and Win “Silverlight 2 in Action” ebook
Michael Sync has a contest going on his blog to get a free eBook written by my buddies Chad Campbell and Michael Schwarz… read Michael’s (Sync) post to find out how to enter… this is a good book… really a lot of work has gone into this… so would be well-worth buying much less winning!
TechEd Samples
There are presenters (Michael Palermo and Simon Allardice) that I would attend any session they put on, even reading the phone book. Karen Corby falls into a similar category… her presentation material at Mix ‘08 cleaned my clock… I may as well have left at that point… and I’m sure her TechEd material is the same… sight unseen… right now it’s the PPT and code, but watch the link, she’ll be posting videos later.
Problems Uploading Videos to Windows Live Silverlight Streaming when Beta 2 Installed?
Pete Brown talks about a problem uploading videos to Live Streaming and provides a work-around… hard to beat that!
Upcoming Silverlight 2 Webcast Series
I got this by way of Andrew Duthie, and have already signed up for all 6 of these webcasts by Lindsay Rutter— go out and do so yourself… how can you pass up 6 hours of free SL training??
Silverlight P2PLib for SL2B2 now available too
Koen Zwikstra has updated the P2P library he’s been working on to be Beta 2 .. well worth the time to investigate using!

Stay in the ‘Light!


Twitter SLNews | Join me @ SilverlightCream | SL Web Articles | SL2 Web Articles | My Articles | My Tutorials | My Tooltips | My SL2 Articles | My SL2 ToolTips | SilverlightCream


The daily list still remains high: Peter McGrattan(3), Lee(3), Dave Relyea with a Dialog Class, Michael Sync raffling off eBooks, Karen Corby's TechEd material, Pete Brown with a streaming upload work-around, 6 Webcasts by Lindsay Rutter, and Koen Zwikstra on his P2P Library. From SilverlightCream.com: Silverlight 2.0 Unhandled Exceptions I had been tracking an old link for Peter McGrattan and had completely missed some good stuff on his site, so we're going to play catch-up: First is this short "what to do ... Read More

db4o’s Sophisticated Cross-Platform Translation Tool Converts Java Apps to .NET

Keywords: , , ,

Sharpen is a Java to C# source code conversion tool is now available to the public as free software. db4objects has used the tool extensively to generate most of the .NET db4o engine core code and unit test suites from Java sources.

Sharpen is a Java to C# source code conversion tool is now available to the public as free software. db4objects has used the tool extensively to generate most of the .NET db4o engine core code and unit test suites from Java sources. Read More

How to fill an empty napkin

Keywords: , , , , ,

Before I bore you with some theory let me quickly show you, how I think you can fill any (!) empty napkin in a minute with a meaningful sketch of a software system, be it completely new or already 30 years old, whether it´s object oriented or all assembler code, and regardless of its size.

Imagine your boss calling you in to talk to you about a new software project. He explains to you his grand vision of a one-size-fits-all “Hello, world!” program. And you can´t hold back your excitement. What a great opportunity for you to show off your skills as a software architect! You go through the requirements with him and make sure you understand every detail. Then you impress your boss with your first architectural sketch. It´s rough, yes, but at least you can show him something right away. You don´t fear an empty sheet of paper (or Visio drawing canvas). Right to the contrary! You love napkins when they are empty!

Here´s what you draw for your boss on the back of a napkin you happen to have brought with you:

image

That´s it. Plain simple, and enough to convey your understanding of his amazing idea.

And what is it you depicted? It´s the whole application, all that you have to develop and don´t know yet how to implement. All the intricacies and complexities of the application are represented by, well, just one “software cell” - the circle with the dot in the middle:

image

I call it a software cell, because it looks like a biological cell with a membrane and a core:

image

source: http://www.schule.at/index.php?url=kategorien&kthid=6191

And like a biological cell a software cell encapsulates complex processes and shields them from the outside world. By drawing a software cell you thus distinguish an inside from an outside, a system from its environment.

image

That´s not difficult, isn´t it? But it´s an important first step, since it draws a line in the sand separating what you have to implement from what you don´t have to implement. And it´s important because it starts software development on a level of abstraction your boss is still comfortable with. He´s an important stakeholder of the whole effort, so you want him to feel comfortable and confident and understanding as long as possible. How better to do that by drawing pictures even he understands?


Before I bore you with some theory let me quickly show you, how I think you can fill any (!) empty napkin in a minute with a meaningful sketch of a software system, be it completely new or already 30 years old, whether it´s object oriented or all assembler code, and regardless of its size. Imagine your boss calling you in to talk to you about a new software project. He explains to you his grand vision of a one-size-fits-all ... Read More

A Sneak Peek at Spore, EA’s Ultra-Web 2.0 Game

Keywords: , , , , , , , , , , , , , , ,

I finally understand why Spore has been delayed for so long. Originally expected for a 2007 release, the simulated evolution game from Electronic Arts (ERTS) studio Maxis was suddenly withheld, much to EA’s chagrin. Maxis head Will Wright explained the delay, saying that the company wanted to make the follow-up to its wildly successful […]

I finally understand why Spore has been delayed for so long. Originally expected for a 2007 release, the simulated evolution game from Electronic Arts (ERTS) studio Maxis was suddenly withheld, much to EA’s chagrin. Maxis head Will Wright explained the delay, saying that the company wanted to make the follow-up to its wildly successful Sims franchise more accessible. That turns out to be an understatement, as I found out yesterday at an advance press peek hosted at Maxis’ Emeryville, Calif. office. ... Read More

Java Reporting: JasperReports

Keywords: ,

One of the purposes of the software industry is to automate routine activities and summarize the data in a decision-supporting format, commonly known as “reports”. That’s the reason customers are used to considering software as the wizard stick that will turn their usual mess into charming charts, graphs, and visualized diagrams. On the other hand, reports are considered the developers’ usual nightmare; you can obviously notice the look of misery crossing the victim’s face on getting assigned to work on the report module.

One of the purposes of the software industry is to automate routine activities and summarize the data in a decision-supporting format, commonly known as "reports". That’s the reason customers are used to considering software as the wizard stick that will turn their usual mess into charming charts, graphs, and visualized diagrams. On the other hand, reports are considered the developers' usual nightmare; you can obviously notice the look of misery crossing the victim's face on getting assigned to work on the ... Read More

Venture Capitalists Hot About iPhone Startups

Keywords: , , , , , , , , , ,

If last year saw the venture capital community chasing startups building around the Facebook platform, this year the new new thing are iPhone application makers. In addition to the $100 million iFund floated by Kleiner Perkins Caufield & Byers, other VCs are getting in on the action.
We recently covered Pelagao, which raised $15 Million […]

If last year saw the venture capital community chasing startups building around the Facebook platform, this year the new new thing are iPhone application makers. In addition to the $100 million iFund floated by Kleiner Perkins Caufield & Byers, other VCs are getting in on the action. We recently covered Pelagao, which raised $15 Million from iFund, Reliance Communications and T-Mobile’s Venture Fund. Union Square Ventures and First Round Capital recently invested an undisclosed amount in New York City-based Pinch Media. Add ... Read More

Storing BizTalk settings in custom configuration file using Enterprise Library

Keywords: , , , , , , , , ,

Choice of configuration settings storage is an important topic when it comes to enterprise BizTalk application planning. One of the many options is to use regular .Net configuration files. Some prefer this way over the Enterprise SSO database option for reasons of simplicity and familiarity. I wanted to show how it can be done with Microsoft Enterprise Library configuration application block.

In this case Enterprise Library configuration section is placed in the BTNTSvc.exe.config file while application settings are stored in a separate configuration file. The problem here is how do we make EntLib to load required settings file at runtime.  Its done by simple helper class CustomSettings that looks up registry entry for the location and name of the application configuration file and creates FileConfigurationSource with it. The registry entry can be created  by MSI installation package.

The initialization method of this static helper class looks like this (thread synchronization code omited for brevity):

          RegistryKey regKey = null;

          try
          {
             regKey = Registry.LocalMachine.OpenSubKey(@”Software\MyCompany\MyApplication”);
             configurationFile = Path.Combine(
             (string)regKey.GetValue(“ConfigDir”),
             (string)regKey.GetValue(“ConfigFile”));

              ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap();
              fileMap.ExeConfigFilename = configurationFile;
              configuration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);
              configurationSource = new FileConfigurationSource(configurationFile);

              //- store configPath in the settings
              configuration.AppSettings.Settings.Add(
              new KeyValueConfigurationElement(“configDir”, (string)regKey.GetValue(“ConfigDir”)));
           }
           catch (Exception ex)
           {
              Debug.WriteLine(“Exception while initializing Settings:” + ex.ToString());
              throw ex;
           }
           finally
           {
              if (regKey != null) regKey.Close();
           }

 Then it has method to access properties by name:

        public static string GetValue(string name)
        {
            KeyValueConfigurationElement entry = Configuration.AppSettings.Settings[name];

            if (entry == null)
                throw new ConfigurationErrorsException(“Key ‘” + name + “‘ is not found in the configuration file.”);

            return Configuration.AppSettings.Settings[name].Value;
        }

 Which is used as in:

string propertyValue = CustomSettings.GetValue(“propertyName”);

 


Choice of configuration settings storage is an important topic when it comes to enterprise BizTalk application planning. One of the many options is to use regular .Net configuration files. Some prefer this way over the Enterprise SSO database option for reasons of simplicity and familiarity. I wanted to show how it can be done with Microsoft Enterprise Library configuration application block. In this case Enterprise Library configuration section is placed in the BTNTSvc.exe.config file while application settings are stored in a separate configuration file. The problem here ... Read More

2 years and 266 posts later…

Keywords: , , , ,

2 years ago, on a Sunday, I posted my first blog post. Since then so many amazing things happened, partly due to this blog: I got the MVP status, I got a better recognition in my firm for my expert knowledge on some topics (such as WPF, Silverlight, ASP.NET and C#), I started speaking in conferences… One year later, I got a book deal (more on this soon). I met amazing people, and made a lot of new friends in the industry. I went to Redmond a few times and had the chance to talk to some really amazing talents in the software field. More importantly, I really had the feeling that my contributions were acknowledged, and valued. It’s really been 2 amazing years.

To all of you reading these lines, thank you. You make my life as a software engineer better, more interesting, and you really help become a better developer.

Thank you


2 years ago, on a Sunday, I posted my first blog post. Since then so many amazing things happened, partly due to this blog: I got the MVP status, I got a better recognition in my firm for my expert knowledge on some topics (such as WPF, Silverlight, ASP.NET and C#), I started speaking in conferences... One year later, I got a book deal (more on this soon). I met amazing people, and made a lot of new friends in the industry. ... Read More

16 Free Image Editor Resources

Keywords: , , , ,

If your on a budget or just don’t like parting with your money, you can still find some good free software and save yourself a bundle. Listed here are 13 excellent image editors available for free download and my 3 favorite online image editors, also free of charge!

If your on a budget or just don’t like parting with your money, you can still find some good free software and save yourself a bundle. Listed here are 13 excellent image editors available for free download and my 3 favorite online image editors, also free of charge! Read More

GC.NUG Meeting June 12, 2008

Keywords: , , , , , ,

A bit of a late announcement - I’m just returning to a schedule after my son was released from the hospital last night.

This month’s meeting will start off with Pizza and then break into “The Adventures of Linq”.

Linq (or Lanquage INtegrated Query) is a new feature of the .Net 3.5 runtime that provides an elegant mechanism for querying data from within C# & VB.Net code. In this session, we’ll move past the basic examples that occupy most introductions to Linq and examine the new .Net 3.5 functional constructs that enable Linq to work it’s “magic”. We’ll look at what Linq is and why it is. And we’ll examine several examples that demonstrate that Linq is not just a “convenience feature”, but a powerful mechanism that creates an entirely new paradigm for .Net application development.

Our speaker this month is John Lunsford. John is a software engineer in Charleston, SC. John specializes in development with .Net technologies. John currently works as an independent software consultant, but previously worked at Blackbaud in Charleston for 2 1/2 years, where he helped to develop the company’s new suite of enterprise product offerings for non-profit organizations. Prior to coming to Charleston, John worked for EdFinancial Services in Knoxville, TN, where he developed web-based enterprise financial applications for EdFinancial and it’s partners. John’s passions are new technology, speaking, & writing. He has spoken at code camps and user groups throughout the Southeast about Linq, WPF, WF, .Net Fuzzy Search, .Net Encryption, & ASP.Net.

See you there!


A bit of a late announcement - I'm just returning to a schedule after my son was released from the hospital last night. This month’s meeting will start off with Pizza and then break into "The Adventures of Linq". Linq (or Lanquage INtegrated Query) is a new feature of the .Net 3.5 runtime that provides an elegant mechanism for querying data from within C# & VB.Net code. In this session, we'll move past the basic examples that occupy most introductions ... Read More