Saturday, August 29, 2009

Facebook or Twitter

Facebook along with MySpace have been the leaders in social networking portals. Facebook however is trying hard to bridge the gap between them and fame of twitter.

Recent developments in Facebook were paradigm shift to their original approach, they revamped their presentation and this time they concentrated more on status messages just like twitter but little more powerful. Twitter, however has been a micro-messaging tool which became popular cuz of its simplicity and yet being powerful. This internet evolution has become one of the most significant modern trends since it has affected the way in which we do business and communicate with peers.

In last week news Facebook has launched a twitter-app, where in Facebook user can automatically syndicate their posts to Twitter, read more here. When Facebook made an attempt to acquire Twitter, and failed there was a rumor in market that Facebook will take different route to go the Tweet Way. Let’s see how much they will succeed.

Wednesday, August 19, 2009

Power of WCF

WCF (Windows Communication Foundation) is Microsoft's unified programming model for building service-oriented applications that communicate across the web and the enterprise. WCF clearly demarcates development and implementation. There are various Hosting options available and is independent of the run-time environment in which the service is deployed, they are:-
  • Self-Hosting in a Managed Application
  • Managed Windows Services
  • Internet Information Services (IIS)
  • Windows Process Activation Service (WAS)
All the development part lies in the code while the implementation like the binding can be handled in the config file as Microsoft has abstracted a lot of plumbing work reducing the implementation time. By this way developer can concentrate on core logic and WCF takes care of data delivery in the most reliable, secure and high performance fashion depending on situation.

WCF has an integrated Logging mechanism that helps you log traces. In other technologies developer has to write custom solution but in WCF, all that you need to do is to enable trace by changing the config file.

To achieve security mechanism in WCF you have 3 implementation choices:

  1. Transport: Transport security depends on the mechanism that the binding you've selected uses.
  2. Message: Message security means that every message includes the necessary headers and data to keep the message secure.
  3. TransportWithMessageCredential : This choice uses the transport layer to secure the message transfer, while every message includes the rich credentials other services need.
After the launch of modeling edition I feel it gets easy to delegate work in a team. An architect can create a Data Contracts/Relationships, Message Contracts and Service Contracts. After that only the facade layer has to be made with some tweaks here 'n' there. In this way lot of architecture intricacies can be hidden from developer.

WCF does not replace MSMQ, COM+ or Web Services, it provides a declarative infrastructure for all forms of communication to and from the Windows platform. Using WCF, communications happen at designated service endpoints, and an endpoint can implement different protocols (such as Web Service, WS-* SOAP style services), encodings (such as Text, Binary & MTOM), and transports (such as MSMQ, Http, etc.).

With .net 3.5, it becomes even easier to provide RESTful endpoints (JSON, POX, RSS and ATOM). So the real powerful leverage shall be building services that can be consumed by a ASP.net web client as JSON while simultaneously being accessed by a business partner through a php web client using the SOAP protocol (with its full complement of WS-* implementations such as WS-Security, WS-ReliableMessaging, etc.)

Thursday, August 13, 2009

Burden translating Entities to DTO

Well we finished a major sprint 2 months back and we were on a consolidation phase this sprint, solving browser issues, redesigning some pages, working on performance and also looking for some customer centric use-cases.

Ours is a n-tier Architected Enterprise Product which deals with wcf along with nHibernate. At that juncture I did give a lot of thought with one my junior that we end up wasting a lot of time translating Service Entities to our DTO.

I thought of writing a utility with the help of reflection which shall copy the members from one type to another. But then we dint took it up due to various reasons. Both the types should have same property name and type. In our scenario there are plenty of cases where in property names are similar but there are lot of properties which we made nullable in DTO's.

Last week Rick Strahl also wrote about it and it was good to read that there are more people who face similar problems. 3 years back we wrote a utility that shall browse 2 different entities and after maping properties manually used to generate the translaters that was the closest we got to solve the menace.

Am still in thinking mode...

Wednesday, August 12, 2009

Combo of Linked-In and Facebook! You game?

Almost 2 years back when we were about to make first implementation of our recruitment based product we heard networking sites picking up. We at that time did had a LAMP based online community product Campus-Connect, which dealt with campus crowd. Our new product primarily focussed on Recruitment Management for Corporates and Consultants.

Our role models were Maxhire and Taleo, which captured majority of the online recruitment market in US. When facebook became so popular, Taleo aired that they will combine with facebook and give some kind of service. The idea attracted me a lot and i did write a spec of a feature for our product, which never got implemented for some silly reasons.

In recruitment world, Head-hunting is supposed to be the toughest job and getting leads is very costly and hit-ratios are not that exaggerating. So I thought of mining and churn out the leads for each candidate along with some tips to talk depending on the type of lead.

I am still bullish in making something like it... perhaps this is the time I should start working on it.

Tuesday, July 21, 2009

Hello World with WPF!

After a lot of fight with myself am starting to dig deep into wpf, lets see how much attractive is it. Last night i downloaded the toolkit and some reporting examples. Lets see what it comes out to be.

Monday, July 20, 2009

Smart Client -- Is it a Dead Project?

I have been working hands on with Smart Client Software Factory since mid 2006, used to follow Matias, Glenn and few others. Its surely lil time-taking for someone who has not taken design patterns seriously.

Have loved working on it and eventually made a SAAS grade Enterprise Project, and there are still things happening there. I heard Unity coming and things getting change in factories. Have not been too keen in WPF as it would have been costly representation.

I feel disposing of objects is not the best in the factory, and i guess there has to be significant effort to accomplish the same. Just hope something comes new and improved.

Thursday, July 9, 2009

Php consuming WCF Service

At last now I have Php client talking to WCF Service... Now this is something special, Technology should always be platform and language dependent.

I have a WCF Service consumed by ASP.net client RESTfully and the same service is talking to php client in a SOAP way.

Perhaps i am not an expert in wcf right now so am more thrilled ;) Just a stepping stone.

Wednesday, June 24, 2009

WCF-JSON with ASP.Net-Jquery Client

As i have already shared that i have been working on making a wcf service layer and that shall interact with open source UI layer... Has a milestone now, earlier we used to make a wrapper layer which used to act as intermediate layer cuz i dint wanted any change in actual HOST project and behaviors of the same.

Now we shall get rid of old JSON layer and our new RESTful host will start serving us.

Tuesday, June 23, 2009

Ideas and More Ideas!!!

I want to make a framework where i make wcf based REST services and consume it in various UI framework including php, jsp Etc, depending on the situations. I have already started the basic framework...

I feel that shall be the best use of REST... I need to start working harder now.

Thursday, June 18, 2009

Comet, a new wave?!?!?!

Month back i was just brainstorming with myself to have a better and performant way to show messages and mails in an online environ... I absolutely love gmail and facebook idea to have a chatting scenario along with the application.

I heard about COMET and now am digging into it... Its scary to engulf the approach, but i wont be conclusive. Hope it works out for us.

jQgrid with Add and Edit

On heavy demand, i have uploaded a simple add, edit enabled jQgrid. You can download it from here, any queries do leave a comment.

Sunday, April 26, 2009

We got rid of ScriptManager and jQuery $.Ajax is In

We took another major step to make jQuery the new way of life in our Product. Earlier we were using ASP.Net libraries and ScriptManager (bundle of useless java script). I might sound harsh on ScriptManager and ASP.Net all through the post, but it just goes to show that how much it has hurt in past. 

We have REST Layer, where in we publish WCF Services and in Client we used to register by the help of  Script Manager. In turn it used to download at least 400 to 600 odd kb of js. I am not negating the power of script manager. But i feel bundling everything in one library is very painful for people who will only use some percentage of it.

We tried lot of ways to enhance performamce, it came to a level when we removed script manager control and added end js on aspx page. But still there was nothing in return. So now we removed Script Manager and are using $.Ajax functionality of jQuery.

Thats why i liked jQuery, its a pretty neat and structured way to categorize usage. Although its all java script, syntax and language is easy and worth using. I cant stop mentioning that end performance is phenomenal.

Am not giving much examples here, Read Rick Strahl Blog for implementation.

Friday, March 6, 2009

Mission jQGrid is Complete!

So at last everything is complete with jQgrid. Along with busy delivery pipeline i managed to clear all the remaining hurdles and now Grid talks to WCF Services, passes JSON Stream has following features.

-- Multi select (Check box)
-- Master details
-- Grid as sub-grid
-- Add/Edit row
-- UI Date picker
-- Searching data
-- Inline Editing
-- Controlling server errors
-- Multiple toolbar search
-- Search Big Sets

Right now the REST services are talking to our local wcf services. Will make a demo thing and post soon. This surely helped me a lot, jQGrid Help.

Monday, February 23, 2009

Basic jQGrid Implementation with WCF Service

I have made a very generic and simple working model of jQgrid with wcf service. You can download it from here.

I am working for a complete working model. Will upload it once its done.

Thursday, February 19, 2009

Paging for jqGrid for WCF implementation!!!

Past 1.5 months had been too hectic for me. Some of them were due to major happenings in personal life. Will step into married life in early april. At workplace was too consumed in regular releases of product. 

At last the paging issue for jqGrid was solved. Last night i cracked the paging details were embedded  in Message Header... and today i parsed and basic grid is comepleted... I need to post the solution now. Will do it by tomorrow. Have started working on fully functional POC. Might take a week. :)

Monday, January 19, 2009

No Script And HTML in POST???

Damn this is really stooopid... I pasted Script tag and HTML Tag and its not showing in Post... :((((( I guess there has to be a Tag where i can post raw code!!! Thats shameful for blogger...

Tuesday, January 13, 2009

JqGrid with WCF REST Service

We have WCF services implemented for thick and thin clients. But as the dynamicity increased we started to wrap those services around REST based WCF Services majorly for Web Client. Now am slowly getting rid of any ASP.Net code written at client. I know its pretty mean of me, but I don’t feel the sense to do it.

I am waiting for ASP.Net MVC to be integrated nicely in VS and then probably think of something in ASP.Net. There might be a situation where in we have client totally independent of any web technology :) That will be powerful for sure. Future is WCF Services and client rich applications that how I look at it. 

I started to implement my Services with jqGrid yesterday and could complete the services part and Client Grid in hours but it took time to integrate it all and see my data rendering in Grid. I won’t blame on poor documentation of jqGrid but yeah it took 6-7 hours for me to implement the same. I can't whine now cuz its working and working fine now. I found no place where this combo was even attempted. So wanted to contribute for the community as well...

I will upload the whole solution after some cosmetic improvements. If someone needs any help, post comments.

Script Code -------------------------------


HTML-------------------------------------------------------

    


    


REST Service -----------------------------------------------

 [ServiceContract(Name = "CandidateService", Namespace = "JsonCandidateService")]  

    public interface IJSONCandidateService

    {

        [OperationContract]

        [WebInvoke(Method = "GET",

                 ResponseFormat = WebMessageFormat.Json,

                 BodyStyle = WebMessageBodyStyle.Bare,

               UriTemplate = "Candidates/{criteria}"

        )]

        JQGridCandidatesResponse GetAllCandidates(string criteria);

    }

Thats it for now, shall upoad the full solution soon. Happy jQuerying :)

Thursday, January 8, 2009

jQuery Excitement Continues...

I have invested past 3 days in reading a lot about jQuery and their implementation along with its language capabilities and more I read I get convinced of its usage. We launched our product 10 days back and we had been working heavily of java script. Now I am working on the presentation aspect and more of usability aspects.

I have found few plugins and am pretty bullish on implementing some of them including animations. Have made the POC's to suite our product and now am working on grid which looks pretty neat to me especially Tree Example was something I always loved. Actually we already implemented it in our own way... let’s see how this one works.

Tuesday, January 6, 2009

Future is jQuery!

I came to know about jQuery 6 months back, when I was going through some blogs. All i could grasp at that time was a lightweight script library. Then in September end when i was travelling, my team started working with the integrated jQuery with ASP.Net MVC (3.5). Sadly we could not go through with it, cuz we were running short of time and library was less supportive.

Big names like Microsoft and Nokia have started using/integrated the same in their own products and its very encouraging for newbies to learn the same. You can follow jQuery Blog and Wiki to get more updates.

Not only its UI capabilities are amazing, It can be very handy if you are using JSON WebServices. I can see lot of articles coming up with jQuery's support in ASP.Net MVC, it surely will be next generation of web development.

Now I totally endorse jQuery's amazing capabilities. Soon we shall enhance our product looks by the same. I am waiting for fully functional integrated VS with jQuery and ASP.Net MVC support.

And We Delivered...

Well by the time I was travelling, we resketched history by releasing 2 more products... Something which i am really proud of. One being Recruitment Management Suite and other one as a Niche Job Portal, having built in CRM capabilities.

Both the sites are in post alpha mode, and we are still bullish on adding things... So am sure coming months will be more exciting.

You can have a look of Reqster and AMS-Web. I am not publishing the UserName and password for sanity sake, can do it on request. Our website is also revamped.