Live Blog from Steve Forte Agile talk at Good Lab Hong Kong

I got an opportunity to attend Steve Forte talk on Agile talk at Good Lab Hong Kong. Below I am posting some of the points from this talk,

image

Four Phases of Customer Development are as follows,

image

Book must read if you are interested in Agile and Start-up.

image

What is Agile?

Agile development supports the rapid iteration and constant feedback needed for customer development

 

The Agile Manifesto – a statement of values

image

How it works?

  1. Come up with an idea and put it in Product Backlog
  2. Developer creates Sprint backlog out of Product backlog
  3. Do Daily Scrum Meeting. What I did yesterday. What I am doing today. What I am going to do tomorrow
  4. Within 2-4 weeks Potentially Shippable Product Increment

The Bare Minimum to be “Agile “with Customer Development

image

DevOps

image

DevOps bridge the gap between Development and Operation

image

It was awesome learning for me.. Happy to do live blogging from presentation itself.

WCF Day: Revisiting

View Photos from Event here

Join Mindcracker Delhi Chapter here

18TH May 2013 was great Summer Saturday in Delhi. It was around 85 to 90 developers in one packed room to learn WCF. Developers were from various companies and organizations with experience varying from 1 years to 10 years. This event was organized by Mindcracker Delhi Chapter

image

We started day with formal introduction and slowly move to various topics of WCF. In WCF day we talked about following topics,

Lab 1:  Write First WCF Service

  1. Creating first WCF Service
  2. Configuring EndPoints
  3. Working with different Bindings
  4. Configuring multiple EndPoints
  5. Working with different Hosting option
  6. Consuming in different clients

Lab 2:  Working with Data Contract

  1. Understanding  Data Contract and Serialization
  2. Data Contract Attributes
  3. Data Contract hierarchy
  4. Data Contract versioning
  5. Working with Collections
  6. Exposing CRUD operation as service

Lab 3:  Working with Fault and Exception

  1. Error isolation and decoupling
  2. Fault propagation
  3. Fault Contracts
  4. Fault and call backs
  5. Working with errors

Lab 4: Security in Service

  1. Authentication
  2. Authorization
  3. Transport level security
  4. Message level security

Lab 5: Instance management in WCF

  1. Per call service
  2. Per session service
  3. Singleton service

Whole day audience were interacting at top level. Even they refused to take break from sessions. Everyone was learning , coding and trying their hands on WCF.

image

I thank Suchit Khanna and Brij Mishra for their support as speaker. They both were tremendous in delivering and teaching WCF.

image

Our next event is on 22nd June. To get information about events Join Mindcracker Delhi Chapter here

View Photos from Event here

I hope WCF day was useful. See you soon with another technology on 22nd June.

GIDS Presentation 2013: Revisiting

In GIDS 2013 I presented on topic Cross Platform Mobile Application with Data in the Cloud.

image

It was great experience presenting in front of esteem audience. In my session I talked about working with data in cloud and hybrid application. I demoed on fetching SQL Azure data from KendoUI mobile based Hybrid Application.

image

Presentation consist following topics,

  • Creating WCF Data Service on SQL Azure database
  • Creating Kendo Datasource from OData service
  • Creating Template
  • Working with KendoUI Listviews

Below find PPT from session,

 

 

I had great time presenting at GIDS. Excited to see you next year.

Can we implement Inheritance in WCF ServiceContract : WCF Interview Series #2

Can we implement Inheritance in WCF ServiceContract?

YES we can have Contract Inheritance in WCF. In other words in WCF one ServiceContract can inherit other ServiceContract.

image

Let us take an example that you have a ServiceContract named IParentService as given below,


[ServiceContract]
 public interface IParentService
 {
 [OperationContract]
 string ParentMessage(string message);

}

Another ServiceContract named IChildService can inherit IParentService as following,


[ServiceContract]
 public interface IChildService : IParentService
 {
 [OperationContract]
 string ChildMessage(string message);
 }

Next you need to decide on implantation of Service. Single Service class can implement both contract by implementing bottom most ServiceContract in hierarchy. In this case bottom most ServiceContract is IChildService

image

Service can be implemented as following in a single service class.


public class Service1 : IChildService
 {
 public string ChildMessage(string message)
 {
 return "Hello " + message + "from Child Service";
 }

public string ParentMessage(string message)
 {
 return "Hello " + message + "from Parent Service";
 }
 }

Now you have choice that either you can expose whole hierarchy as single EndPoint or different EndPoints for different Service Contract. To expose contract hierarchy create EndPoint with bottom most ServiceContract. In this case we are creating EndPoint with Service Contract IChildService . At the client side operations from whole hierarchy could be invoked.

image

So at client side Service will be exposed as single class as given below,

image

In this way you can work with Inheritance in Service Contract. I hope you find this post useful. Thanks for reading.

Method Overloading in WCF: WCF Interview Series #1

How to do Method Overloading in WCF?

Method or Operation overloading is one of the most important feature of OOPS. In programming languages like C, C++ and C#, this feature is heavily used by developers. While writing Service definition you may come across when you need to overload operations.

Let us go ahead and write Service with overloaded function as following. In below ServiceContract I am creating two methods and overloading them with different parameters.


[ServiceContract]
 public interface IService1
 {

[OperationContract]
 int Add(int number1, int number2);
 [OperationContract]
 string Add(string text1, string text2);
 }

I implemented service as below,


public class Service1 : IService1
 {

public int Add(int number1, int number2)
 {
 return number1 + number2;
 }

public string Add(string text1, string text2)
 {
 return text1 + text2;
 }
 }

I left default EndPoint configuration and hosting. When I ran service I encountered following exception,

image

So clearly by default WCF does not allow you to overload methods in service. However there is one attribute in OperationContract which can allow you to overload method at service end. You need to set Name parameter of OperationContract to manually enable overloading at service side.

image

To achieve overloading at Service side I set Name parameter of both function as follows,


[ServiceContract]
 public interface IService1
 {

[OperationContract(Name="AddNumber")]
 int Add(int number1, int number2);
 [OperationContract(Name="AddString")]
 string Add(string text1, string text2);
 }

Even though we have achieved overloading at Service side at client side method exposed with different name as set in Name parameter. At client side you will get method exposed as following,

image

So on asking you can say that by setting Name parameter value of OperationContract we can achieve Operation or Method overloading in WCF. I hope you find this post useful. Thanks for reading.