This blog post is about what I learned from the presentation by @DamianEdwards on here. As it was so interesting so I decided to write a blog post about that. It seems that Most of the points are about using web form techniques.


Standard compliance

Control Adapters: Try to Avoid control adapters in web form as they are originally designed to support mobile devices. instead try to use standard html and CSS and

You have used millions of times, but you maybe don’t know what they call it (I just saw it and I didn't know too). Suppose these two interfaces with a member Called WithDraw():


  1.  public interface IBankingA
  2.     {
  3.         void WithDraw();
  4.     }
  6.     public interface IBankingB
  7.     {
  8.         void WithDraw();
  9.     }

Now If you w

As a developer I always pretend that I know about principles, Rules, methods, KISS and YAGNI! But in some cases if you consider my codes you will find out that they are just some best bunch of code for giving an example as introduction dirty code for teaching YAGNI principle!

YAGNI is a principle of extreme programming that says "Never add functionality until deemed necessary". what I mostly make mistake is adding some extra functionality earlier and most of the time they never been used.



About two years ago, I read some chapters of Pro 3.5 (it was the second edition of the book). I remember that I didn't dig in some chapter like lifecycle and Context, Modules, Handlers, Caching, Managing paths, Configurations, …  but now as I really need to know what's exactly going on the behind of I've decided to read this book in detail. In my opinion it's necessary to every developer as it really convers more about and it's frameworks. 

This book is in my books queue and will start reading of

You know a session is just a period of time for a specific user interaction in a web application. And the Session state is feature in Microsoft for maintaining the same time for the user stored locally the Web server. InProc is the default session state mode and specified In-process mode to values and variables in memory on the local Web server. In comparison to other modes (state server and SQL server), InProc is faster as they both spend some time to serializing and desterilizing while reading and writing the data.


I've written about different kinds of caching in MVC here, I just wanted to turn off some specific caches in my project and found a way to do that, you can do that by overriding OnResultExecuting:

  1. public class TurnOffCache : ActionFilterAttribute
  2. {
  3.     public override void OnResultExecuting(ResultExecutingContext filterContext)
  4.     {
  5.         filterContext.HttpContext.Response.Cache.SetE

One of the most capabilities of modern web-based applications is the ability to swap content of the page without any page reload, Post-back and Request-Response. All of the operations are done by calling from UI and request from server and then changing the existing content of page with the newly retrieved contents.

That's what they call SPA (Single Page Applications),  working with these kinds of User interface is so easier as waiting for post back and refreshing  and replacing the pages sometimes are tedious. Rather than that in single page application most of the

Have you ever think about that!? You don’t need to put bracket statement of if/else condition if your statement is not multiline. Needless to say, if you want to put if/else condition with just one line statement, it would be something like this:

  1.             if (a == b)
  2.                 Console.WriteLine("");
  3.             else
  4.                 Console.Write

I'm completely new in Node.JS, just read about it for the first time. Based on  wikipedia "Node.js is a server-side software system designed for writing scalable Internet applications, notably web servers. Programs are written on the server side in JavaScript, using event-driven, asynchronous I/O to minimize overhead and maximize scalability."

Node.js platform was created by Ryan Dahl starting in 2009. You can develop a real-ti

I'm interested in to be familiar with other programming languages although my field of activity is Microsoft.Net . I just read about Ruby, it has such an interesting syntax and standard libraries. it's been in most of the open source projects within 10 years and core document is available. some big companies like NASA or Intel use Ruby. 

Ruby is a programming language from Japan , it is A dynamic, open source programming language with a focus on simplicity and productivity. "It has an elegant syntax that is natural to read and easy to write." based