Tuesday, September 14, 2004

The Nerd, the suit and the Fortune Teller


Want to see what Clemens Vasters , Rafal Lukawiecki , and Pat Helland were doing at TechEd EMEA 2004. Download this video presentation at Channel 9 on MSDN.

Application Frameworks & Design Patterns

I will be talking at CSKU.NET 3rd user group event this Saturday i.e. 18th September 2004.
Agenda of my talk centers around the following introduction:

Application Frameworks & Design PatternsObject-oriented (OO)
Application frameworks are a promising technology for usingproven software designs and implementations in order to reduce the cost and improve the quality of software. A framework is a reusable, ``semi-complete'' application that can be specialized to produce custom applications [Johnson: 88]. Nowadays, medium-large scale applications are never built from scratch, rather they are built on top on existing software that we call framework. This framework is meant to perform certain generic tasks (central location of event handling etc.) , maintain consistent programming approach(through class hierarchies etc), provide some functionality usually based on Design Patterns. These frameworks help us build applications that can evolve with the passage of time. In this session we will talk about "Application Frameworks" as what they are and how they are useful. Then we will talk about "Design Patterns" and their use in "Design of Applications". All the implementations will be discussed/provided in C# .Net.

Google Code Jam!

I joined Google CODE JAM competition and solved a couple of sample problems. problems were great and it was fun doing such sort of programming after a while.

Sunday, September 05, 2004

Reading UNICODE from file

I was asked by some one to show how to read a UNICODE stream.
so this is the response!
reading a unicode from a file stream is as simple as this:
/// read the stream using StreamReader --- look for the constructor
/// with specified encoding !
using(System.IO.StreamReader l_rdr
= new System.IO.StreamReader(openFileDialog1.FileName,System.Text.Encoding.Unicode))
{
while( (l_strCurrent= l_rdr.ReadLine()) != null)
{
l_strBuilder.Append(l_strCurrent);
}
}

using Visual Assist X is .. FUN!


I have started using Visual Assist X and its kind of fun to use it. They way it enhances intellisence and color coding is really great !

Friday, September 03, 2004

Service Oriented Architecture (SOA) Myths!

I was reading an article at “Enterprise Architect Online” on “SOA: Debunking 3 Common Myths” .
It clearly states 3 common misunderstandings regarding SOA. To sum up the things following are the 3 points:
1- SOA is Object Oriented!
SOA must not be thought of as an evolution in Object Oriented Systems. Rather SOA has nothing to do with Objects, Classes and components for that mater. It is something beyond that rather “(Vertically) above“that. SOA can be thought of the way these Object Oriented Systems or Aspect Oriented Systems or Structured Systems for that matter inter-connect and communicate, provided there are set of Services, their Providers and their Consumers.
2- SOA implies Distributed Computing!
SOA does not get into the implementation details as such. It is only interested in “Find/Bind/Execute“ paradigm i.e. as long as there are services listings, service providers, and service consumers SOA is there. It is up to the service implementation how it uses other things including Distributed Computation. As the (Tarak Modi) author of this article says:” The net take-away here is that services (and SOA) do not imply any distribution semantics.“
3- SOA equals Web Service!
Usually people think SOA and Web Services are the two names of a similar technology. Even some uses them interchangeably without knowing the differences! The relationship between SOA and Web Services can be thought of as a “Kind Of” (think of inheritance) relationship. Web Services are a kind of Service Oriented Applications. Further more SOA is a concept (think of an “Interface” or an “Abstract Base Class“) while Web Services are implementation of SOA (think realization of an abstract concept!). While web services follow SOA architecture, it does not mean that to implement SOA one needs to implement Web Services.

Wednesday, September 01, 2004

Distributed Computing in .Net with XML Web Services

I will be talking about Distributed Computing in .Net with XML Web Servies this saturday i.e. 4th Septemeber 2004 at Dept. Of Computer Science, Karachi University.