May 23, 2012

0 notes

Clr Stack Explorer

Have you ever used the Managed Stack Explorer? No that’s not a good question. I must change it. Has anyone else who has not used Managed Stack Explorer before?

If you said “no” as an aswer to my first question, you must be aware of it or its equivalents and how it can be used on debugging issues. And if you said “yes” and haven’t use it on Clr 4 applications so far, you may be surprised that it is not compatible with Clr 4 for now. 

So until the Managed Stack Explorer supports Clr 4, you have to find an another tool to display managed thread’s call stack. After some googling I found the Clr Stack Explorer. I haven’t experienced it enough. But let’s give it a chance.

May 18, 2012

0 notes

Mayor of NYC is learning to Code

That’s not a joke. Mayor of New York City announced in his twitter that his new year’s resolution was to learn the code. 

https://twitter.com/#!/MikeBloomberg/status/154999795159805952

Nope, programming cannot be so simple for that kind of people. Do your best!

May 11, 2012

0 notes

VS 2011 RC Redesigned

As expected, Visual Studio team made some major changes  on colors, effects and drawings with Visual Studio 11 RC by the help of community feedbacks.

You can look at what has been changed through this.

May 10, 2012

0 notes

MVVM Framework Needs

As Rockford Lhotka pointed out in his blogpost that enormous mmvm framework needs is being increased nowadays. Like ASP.Net MVC, Microsoft must provide a flexible, highly skilled framework as soon as possible. 

http://www.lhotka.net/weblog/UsingTheMVVMPatternRequiresAFramework.aspx

May 7, 2012

0 notes

GUID Explanation By Eric Lippert

Eric Lippert has started to explain GUID infrastructure. As you know, some months ago I wrote about it. Let’s listen Eric Lippert on http://blogs.msdn.com/b/ericlippert/archive/2012/04/24/guid-guide-part-one.aspx

Apr 20, 2012

0 notes

Scrum Intensive Days

Due to my promotion as a manager, I’m being trained with scrum and its unique terminology nowadays.

I try to understand what scrum is and why it is used by live samples at the company. And also I’m reading Mike Cohn’s “Succeeding With Agile”.

After years at programming, being manager is a very different type of personal development for me. But honestly I admit that programming has lots of pleasure inside.

Apr 14, 2012

1 note

A new life begins

I am so sorry to announce that after four years with Turkiye Finans Participation Bank(TFPB) I will start to work at Fintek. There are lots of things to share with you all about my business and social life at TFPB but as you know there some times that you cannot speak due to the being grieved.

I have learnt so much new things about both sofware and personal development at TFPB. On software development perspective, I had the chance to apply and implement numerous enterprise software tasks and feature requests. On the other side, on personal perspective, I am so lucky to have lots of friendships beyond the business one and I thank you for the countless memories I shared with my colleagues.

Thank you all of you…

Apr 1, 2012

0 notes

Broken Windows Theory On Softwares

After I read about what “Broken Windows Theory” means, I’ve started to think whether this theory is applicable to the softwares.

The most important thing on the theory dictates that if some minor thing happens and is ignored by the related public, most probably this minor thing can be transformed to the non-tirivial major thing. On this perpective, we can project the theory practically to the softwares.

If there is a minor bug or feature request, as soon as it has to be solved or implemented. Otherwise, the users may develop destructive feelings which cannot be defeated easily about the software you develop. If you want to prevent this kind of things to happen, you must be agile. 

I don’t know so much thing about some general industry regulations standards like Cobit. But I know that agility is in everywhere. If you are in a company that has strict rules on deployment, you are in a big trouble.  

Mar 22, 2012

0 notes

ThreadLocal<T> Beats ThreadStatic

As you remember, I mentioned about the ThreadStatic attribute pitfalls in my previous blog post.

Assume that you have to use ThreadStatic attribute in one of your project and you could not find a solution without using it. When that time, there might be an alternative way out for you. But How?

ThreadLocal<T> is new to .Net Framework 4.0. It differs from ThreadStatic in two ways.

  • ThreadLocal<T> can be started with a non-default value.
  • ThreadLocal<T> can be worked with static and non-static instance fields.

According to me, the usability with non-static instance fields is the biggest advantage of ThreadLocal<T>, especially on WCF implementations. From this point of view, you can revise your designs. 

Mar 8, 2012

0 notes

ThreadStatic usage can be your enemy!

If you are using thread static variables by utilizing ThreadStatic attribute in your Asp.Net or Wcf projects, you can be in a big trouble in terms of thread affinity.

Wcf and Asp.Net does not promise you that the thread at which the request is being started will be the one that the request is being finished. When there is an I/O bound operation (File or Db operation) on the current thread, the thread might return the thread pool in order to gain maximum throughput. After the waiting phase, another thread from the thread pool can be assigned to continue the execution of the request. So if you have some variables decorated with ThreadStatic attributes can contain no or wrong data. As a result, you cannot safely store data on the thread static variables.

What about the solutions to the problem we defined? It’s simple. You should use HttpContext.Current.Items dictionary on Asp.Net projects and OperationContext on Wcf pojects. By the way, OperationContext usage may be a little complex compared to the HttpContext.Current.Items because of the need for designing an extension on OperationContext. 

There may be other solutions like clearing the thread static data on completion of the request. But I strongly recommend you do not choose a solution other than the ones explained on above paragraph.

For further details you can see these pages below.

http://blogs.microsoft.co.il/blogs/applisec/archive/2009/11/23/wcf-thread-affinity-and-synchronization.aspx

http://stackoverflow.com/questions/2356127/are-wcf-request-handling-thread-agile

http://elegantcode.com/2009/01/17/abstracting-request-state/

http://stackoverflow.com/questions/1895732/where-to-store-data-for-current-wcf-call-is-threadstatic-safe

Navigate
« To the past Page 1 of 3
About