Ohad's Blog

Lets talk about .net !

Mirror at:
blogs.microsoft.co.il

News

         Ohad Israeli's Facebook profile

Grab this badge here!

C# Code Snippts

Favorite Blogs

Israeli .Net Bloggers

How to overcome the CLR fusion limitation

There are cases where you would be interested to load an assembly from a different directory then the root dir of your .net application. When you’ll try to do so you will face with the limitation of the fusion process (assembly loading process) – this limitation limits you to load assemblies from underneath the root dir of your application in order to guard your app from dll hell.

In order to overcome this limitation you can use the old plain Unix trick… create a symbolic link to the file… there is a small utility called mklink which lets you create symbolic link to a directory or a file.The process of making it work is to put the assembly in directory of your choice and then create the symlink at the place where the assembly is being expected to be.Its possible later on to replace the symlink with other symlink thus redirect the app to a different assembly without changing the app itself.

If you are interested in redirecting a bunch of assemblies it is also possible to declare a probing directory via the app.config file and create a symbolic link of this directory thus redirecting all the probing calls to a different directory outside of the root path of the app.

While playing with the fusion process its worth to remind people of the fusion log viewer tool(fuslogvw.exe) which will enable you to have an insight view of what and where the clr is looking for its assemblies.


The mklink command is used to create a symbolic link. It is natively available in Windows 2008+. It has the following command line syntax:

mklink [[/D] | [/H] | [/J]] link target
  • /D – Creates a directory symbolic link. Default is a file symbolic link.
  • /H – Creates a hard link instead of a symbolic link.
  • /J – Creates a Directory Junction.
  • link – Specifies the new symbolic link name.
  • target – Specifies the path (relative or absolute) that the new link refers to.

Mklink / Junction

Documentation for NTFS symbolic links on MSDN

CreateSymbolicLink function in the Win32 API

Link Shell Extension, which presents a graphical interface for creating hard and symbolic links as well as directory junctions

Symlink accessible driver for 2000/XP/2003,

TechEd Eilat – DI & IoC using MEF and Unity

After the last happiest lecture I had to go for the last session at teched and give a short for another technical session and I choose the DI & IoC using MEF and Unity lecture by Pavel Y. The hall was pretty full for a lecture which is one of the last sessions at teched… does it mean that finally people understand or want to understand the power of DI & IoC ? well its about time…

I’ve been working with developers for more than a decade and it amazes me time after time that people afraid from using DI containers… well Pavel gave a great overview full of code samples of how to use MEF and Unity.

As usual, Pavel is very clear with his explanations and his demos demonstrated various aspects of these frameworks mentioning the benefits and limitations of each …now I know what he was doing al night long instead of coming to see Meshina Smile

TechEd Eilat – Happiness as a key to business success

The best lecture at TechEd Eilat !!!

It looks like a pattern but I find myself more and more attracted to lectures which are not technical… I don’t know if it due to the role I'm in now or the levels of the rest of the lectures but I did found the lecture by Prof. Yoram Yovel which discussed the essence of what makes us happy… work… money… family…to be a lecture that it totally not technical by one of the pearls that you could find over the three days of this event.

Defiantly a lecture one can take something out of… and say… wow it was worth coming to teched for it… not only for myself but also for my wife and family.

Checkout Yoram Yovel’s website for more details

TechEd Eilat - The Future of IT – Danny Cohen

Currently watching Danny Cohen speaking about the Future of IT at the CTO track of TechEd Eilat.

Doing a lecture the day after the party is one of the hardest things to do… how do you wake up the people in the morning and handle their hangover from last night ?

When Danny told me that he will not come to the party due to his presentations I understood him (been that… done that… 2 techeds ago I was in his place…) but nw that I see his presentation I totally understood him… Danny change slides as fast as he speaks… 120 slides in 1hr about the past, current and future of IT.

The lecture is full of humor and lots of freaky ideas about our world and technology – pure fun !

TechEd Israel - Innovation Beyond Startups - Thoughts on Innovation in any organization

Yoram Yaacovi from Microsoft R&D spoke about Innovation at Microsoft – Finally a lecture worth the travel to Teched Eilat from a speaker who knows how to speak and to deliver an interesting talk.

What innovation groups do you have at Microsoft?

Product groups
Look ahead for :1-3 years
Who: developers
Focus: focus on depth features, quality, features, performance, scale,

Innovation labs
Look ahead for: 3-5 years
Who: Researchers and developers
Focus: focus on new applications services not-yet proven technologies disruption

Microsoft research – 2500 ppl world wide
Look ahead for: 5-10 years
Who: Researchers
Focus: Mostly long term research academies oriented not measured y short term results

Innovation can be looked as:
Incremental vs disruptive
High friction tough sell vs frictionless – easy sell

frictionless – easy sell, disruptive = Microsoft research
Incremental, easy sell, disruptive = Office Labs
High friction tough sell,disruptive = Israel Innovation Labs

Guidelines for innovation groups - 3H - Helpful, Humble, Harmless

Alchemie Ventures – group of ppl who deliver innovation toward delivery
Gate 1 – worth considering ? 81 ideas
Gate 2 - do we believe?           7 ideas
Gate 3 - The real opportunity    2 ideas
Gate 4 - Can we make it real ? 1 ideas

BXT - Business, Experience, Technology – measuring project by BXT

Israel Innovation Labs
”Exists” – go to market / sell to product group – Deep zoom composer, face recognition, TLV – location based services, PV, Digital Lens – ui for color blinded ppl, Tagit, 23 filed patents
What helps exists: spot existing needs, continuous persistent evangelisms, support from the product group
What stops exists: Ecosystems challenges, infrastructure challenges, Hard to get attention

Out of the box week
Goal: explore new technologies and ideas to create a working prototype
Rules of the game:
- Exactly one week
- All team activity is off
- Totally unmanaged
- Mandatory demo fest at the end of the week –> Code talks !
- Become a major source of new innovative projects

Facts:
- Innovation is hard
- A single approach to innovation wont work
- Impossible to predict the next big thing
- A product team cannot create its assassin
- Task forces can not Innovate !

Manage for creativity !
Creativity and the role of leader – Harvard business review – October 2008
Organizing – by warren bennis – Basic books 1998

Learn from past success stories:
- Talent is key
- Lack of experience is also asset not liability
- Everyone can make a substantial impact
- Irrationally optimistic and unrealistic
- Diversity drivers innovation
- Failure is Ok Success I seven better
- Competition is good !

Beware of processes

Tap ideas from all Ranks

It’s a startup, think big stay small !

Build – great ideas are good – build, show !

Sell – sell your idea in the organization !

Be Persistent

Spaghetti on the wall – tryout lots of things

Know when to stop

Celebrate Exits

Manage the handoff

Cloudoscope - The first Cloud Cost Profiler

You are thinking about getting into “the cloud”… you maybe already started developing for the cloud (Amazon/Azure…) but how much will it really cost you when you’ll go out for production ? How much will it cost you on the dev/test environments ? can you evaluate the real cost of each of the lines that you write ?

Who will check if the dev team wrote an optimized code ? optimize code that can dramatically lower your hosting costs !

The answers to these questions and more is a new tool that had beed developed by codevalue and had been exposed at TechEd Israel. The tool is called Cloudoscope and it is the first tool in a line of tools that will fall under the category of a Cost Driver Architecture tools. We will soon see more and more companies who design their products tacking the cost under perspective, currently at most of the proof of concepts that I’ve seen which are using cloud technologies no one really take it under consideration. How you write your code might have large implication at the total cost of ownership and If you can optimize your code as you write it you can save large amount of $$$ on development, testing & production environments !

Here are some of the features of Cloudoscope:

• Cut total cost of ownership and save money
• Show the cost of each function and relevant line of code
• Show the cost of business requests
• Show cost improvement or degradation after a code change
• Provide optimization advices
• Provide guidance to Cost Oriented Development™
• Help trading service quality Vs. cost
• Provide a framework for developing Cost Oriented Unit Tests™
• Cost oriented cloud computing standard approval

Really promising tool worth looking at for any company who consider developing for the cloud ! 

TechEd Israel – The keynotes from last night

Wow what a keynote were yesterday ! defiantly one of “the best” key notes I ever been in at Teched worldwide !

Shay Agasi gave an unbelievable speech it surely looks like better place is going to change our world, have you managed to spot the better place electrical car over the video that was presented there ???

Ohh opps – I’ve just been told that… he canceled at the last min and I’ve prepared this blog post 2 weeks ago… what a bummer…

So how was the keynotes for you ?

First lecture at TechEd

Lecture: Developers Tools and Technologies Keynote

During the lecture the internet connection went down… I from someone that during the preparation the speakers were told that everything is redundant…  there will not be any issues with network and hardware…

Guess what…

It always hits whenever you are not ready !

If you plan a lecture and base your connection on wifi… always hold a local copy to work offline using a tweak at your host file or if you insist… have a netstick ready plugged in to your laptop and ready to be turned on in a click.

Update – Noam did have a ready made solution ready to show…but eventually he managed to get it work !

The road to TechEd Eilat

Not like years back… it’s the first time that I’m arriving to teched without any lecture on my mind… I AM NOT LECTURING AT TECHED 2010 … wow… what it means… I just opened the schedule yesterday night and choose my lectures… I’m in shorts and doesn’t have any worries on my mind.

I’ve decided not to go by flight like usual … and drive through to Eilat with Pavel ( for the record we left Shoham at 08:00am and arrived Eilat at 12:00pm with 3 stops on the way… one for a refresh and 2 due to the traffic police… luckily I wasn’t driving Smile anyway we ended up with a warning for Pavel

What is takes to be an Architect ? (IASA Israel 3rd meeting)

How do you become an architect ? 

What is the roadmap of an architect? 

Is it all about technology and trends ?

If you've been asking yourself these questions and was wondering what is takes to become a leading architect, the 3rd meeting of the International Association of software architect is for you.

Over the meeting we will learn from experience of known architect about the path and how they made "the change" in their roadmap from developers, team managers to leading architect.

The meeting will take place on  Thursday, October 28th 2010 between 17:00 and 19:45 at Microsoft Israel, Hapnina 2, Ranana.

*Note the change of gathering place to Microsoft Israel

If you have questions our linkedin forum is the place to ask them !

Link to linkedin forum discussions

17:00 - 17:15 - Gathering
17:15 - 18:00 - Introduction to the panelists: How I became an Architect ?

18:00 - 18:15 - Break
18:15 - 19:45 - Panel discussion: What does it take to be an architect ?

Click here to visit our registration page

More Posts Next page »