INETA Talk: About WCF Messaging Sessions 

Just came back from today's talk on WCF session support.

Deliverables:

Remember: proxy.Close() is your friend.

Categories:  .NET 3.0 - WCF
Tuesday, 27 March 2007 19:39:27 (Central Europe Standard Time, UTC+01:00)  #    Comments

 

 Hana Re 

Our gift came yesterday evening. Baby girl. Hana Re.

As perfect as possible, mom included.

0.003255 tons, 0.00052 kilometers

 

 

Categories:  Personal
Friday, 16 March 2007 09:05:36 (Central Europe Standard Time, UTC+01:00)  #    Comments

 

 Using Dark Room 

If you need a distraction free writing environment, grab a copy of Dark Room. I found it after a few years of using WriteRoom, the original, on a Mac.

I write most of my draft documents in it. Then I move them to Word and apply formatting. I write all blog entries - exclusively in Dark Room - every post.

It does what every text editor should be doing first. It makes you concentrate on the subject.

And, best of all - it's small footprint, single .exe app. Xcopy it to your path. Bam.

Categories:  Other | Personal | Work
Sunday, 11 March 2007 22:19:35 (Central Europe Standard Time, UTC+01:00)  #    Comments

 

 Hassle Free Setups and Market Penetration 

Harry Pierson is discussing the correlation between market penetration and hassle free installation experience and hits the nail on its head.

Big market success of Adobe Flash, its omnipresence and high install base can definitely be traced back to flawless install experience. In fact, it's so perfect, that most users don't even know which version they're running. They don't care (me included). And they shouldn't care.

The first thing any platform needs to achieve is simple and effective installation experience. I don't want to manually download platform installers to use certain web services. It has to auto-install and has to be safe. This is what Flash does perfectly.

All current virtual machine based platforms can be installed independently. Or they can be flawlessly smuggled in by a host application setup program. The problem is, that we can't compare CLR (or JVM) based platforms to Windows (as a platform), since the user can't run five of the latter at the same time.

Flash 9 market penetration is currently at ~40%. Flash 8 penetration is ~90%, while Flash 6 penetration is ~96%.

WPF/E will have the same install experience. Bet on it. If it wants to succeed, it will also have to allow multiple versions to coexist gracefully.

Categories:  CLR | Other
Sunday, 11 March 2007 21:37:09 (Central Europe Standard Time, UTC+01:00)  #    Comments

 

 Orcas: POX Service Support 

POX (Plain Old XML) support in Orcas is brilliant.

Consider the following service contract:

[ServiceContract(Namespace = "")]
interface IPOXService
{
   [OperationContract]
   [HttpTransferContract(Path = "Echo", Method = "GET")]
   string Echo(string strString1, ref string strString2, out string strString3);
}

And the following service (or, better Echo method) implementation:

public class POXService : IPOXService
{
   public string Echo(string strString1,
     
ref string strString2, out string strString3)
   {
      strString2 = "strString2: " + strString2;
      strString3 = "strString3";
      return "Echo: " + strString1;
   }
}

Host it using this:

ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;

ServiceHost sh = new ServiceHost(typeof(POXService), new Uri
   ("http://localhost:666
"));
ServiceEndpoint ep = sh.AddServiceEndpoint(typeof(IPOXService),
   new WebHttpBinding(), "POX");
ep.Behaviors.Add(new HttpTransferEndpointBehavior());
sh.Description.Behaviors.Add(smb);

sh.Open();
Console.WriteLine("POX Service Running...");
Console.ReadLine();
sh.Close();

If you open IE and hit the service endpoint (http://localhost:666/POX/Echo) without URL encoded parameters, you get the following XML back:

<EchoResponse>
   <EchoResult>Echo:</EchoResult>
   <strString2>strString2:</strString2>
   <strString3>strString3</strString3>
</EchoResponse>

Now, drop some parameters in (http://localhost:666/POX/Echo?strString1=boo&strString2=foo&strString3=bar), this is returned:

<EchoResponse>
   <EchoResult>Echo: boo</EchoResult>
   <strString2>strString2: foo</strString2>
   <strString3>strString3</strString3>
</EchoResponse>

Nice. I especially like the fact that ref and out parameters are serialized with the metod return value.

Reach in with //EchoResponse/strString2 for ref parameter and //EchoResponse/strString3 for out parameter. Return value is available on //EchoResponse/EchoResult. Simple and effective.

Categories:  .NET 3.5 - WCF
Saturday, 10 March 2007 21:55:49 (Central Europe Standard Time, UTC+01:00)  #    Comments

 

 Rebuilding Success 

Well, my site was down a couple of times during the weekend. Had to buy a new server, since my old machine's power supply tanked and took the motherboard with it.

So, this week started on some serious hardware, a Dell PowerEdge 2900. The migration took a couple of tries, but it was mostly due to reconfiguration of RAID arrays. This beast has 10 SAS drive bays, so I opted for two RAID 5 arrays, mostly due to expandability.

Kudos go out to Alldea guys who suggested, tested, configured and helped me get the server in time (actually, I got it in 12 hours). Their service is flawless and if you are buying a Dell in Slovenia, give them a call.

We configured the machine with a quad core Xeon and left another processor slot empty. There are still two hard drive bays unattended and 8 RAM slots available. And since my old machine faulted because its power supply tanked, this one has two. Redundant ones.

It should give at least 5 years of service, me thinks.

Categories:  Personal
Monday, 05 March 2007 21:59:12 (Central Europe Standard Time, UTC+01:00)  #    Comments

 

Copyright © 2003-2024 , Matevž Gačnik
Recent Posts
RD / MVP
Feeds
RSS: Atom:
Archives
Categories
Blogroll
Legal

The opinions expressed herein are my own personal opinions and do not represent my company's view in any way.

My views often change.

This blog is just a collection of bytes.

Copyright © 2003-2024
Matevž Gačnik

Send mail to the author(s) E-mail