- Posted by Shay Friedman on August 22, 2010
Well, I left Sela (Thursday was my last day), my company for the last 7.5 months and I’m moving on to co-found CodeValue.
Even though my time at Sela wasn’t that long, I learned so much and met so many incredibly smart people. It’s been a wonderful experience and I’d like to thank the people who made it such: Caro Segal, Dudu Bassa, Ishai Ram, Roy Nachmani, Elad Hanania, Avi Balaish, Gil Fink, Dovi Perla, Alex Golesh, Ido Flatow and many others! thank you all, it was great working with you!
So what now?
Well, now I’m moving on to be a part of CodeValue.
The amount of talent in the company is unbelievable and it would be a shame to keep these skills to ourselves. Therefore, our main goal at the new company is to create products for you, the developers. Products that will help you solve common problems efficiently, write better code and enable you to focus on the important things.
I can’t tell you exactly what the products are at the moment but I can tell you this – the first product will be related to cloud computing and I assure you that once you know what it is, it will blow your mind away.
If you want to stay tuned to announcements regarding CodeValue, you can subscribe to our company blog, follow us on twitter or friend us on Facebook. Everything is in pretty early stages, so expect more content soon.
By the way, I also continue to consult, train and speak at conferences. I like doing that so I’m not going to stop anytime soon :)
“The future's in the air
I can feel it everywhere
Blowing with the wind of change”
- The Winds of Change by Scorpions
All the best,
Shay.
- Posted by Shay Friedman on July 10, 2010
I’ve been evangelizing IronRuby for quite a while now and during this time I have been asked this question numerous times. I’m sure anyone in the .NET community who’s trying to evangelize something that is a bit outside the standard toolset have run into this question as well. And I have no doubt it happens in other development environments too. It’s a worldwide problem we’re facing here!
This is actually a good question. The guy/gal who asks it probably understands the benefits of the new technology/tool/whatever but they know that it will be hard to break through their workplace “defenses”.
Indeed, looking through the boss’ glasses, it sounds crazy to change they way people work…. learning curve, complications, an unfamiliar world… or in other words – it is outside the comfort zone. This is actually the heart of the problem – this popular comfort zone. It is, actually, comfortable there. However, it is also still… very small evolvement takes place inside the comfort zone. And you know what Darwin said would happen when something doesn’t evolve, right?
Anyway, we’re here because we do want to evolve, we do want to improve and we do want to use the right technology for the job. So first, let’s get familiar with who we’re dealing with:
- Small startups – startups are the most open-to-changes workplaces out there. This is because in startups, managers don’t really care how something is created as long as you do it fast, you do it good and it doesn’t cost a lot of money. This is where you’ll have most chances of succeeding in convincing your boss.
- Small-medium companies – small-medium size companies tend to be more conservative. You will run into different tools/languages here and there but mostly there will be a single declared method of how a project gets done. It won’t be a piece of cake to sneak a new technology/tool in here but if you succeed to persuade a few people in your close circle, you might have a chance.
- Large-huge corporations – you’re screwed. Politics is what’s running the place, not technology. Therefore, managers will be unwilling to make changes, sometimes even just because they are not technological people and do not understand the benefits. I believe that you can make a change even in these corporations. However, be ready for a long and exhausting fight.
Moving forward, before deciding to go ahead and use your technology/tool in your workplace, be aware of the next bullets:
- Know the technology/tool. People will try to talk you out of it and ask you all the questions they can think of. You need to have answers.
- The technology/tool must have real and clear benefits. The more these benefits can be translated into saving money to the company the better. The benefits must also be something you can present – it takes less time, the code is clearer, it is easier to maintain, etc.
- Do a great job. If you finish the project two weeks late, no one will want to hear about your new technology/tool even if it’s really the greatest thing ever created.
- The WOW effect will greatly help you. If you succeed to wow the people that don’t want to see new technologies in the office, you’re half way in. Try to have that wow effect somehow.
- Be ready to fail. You might not get through the first time. But don’t stop fighting, try again. And again. In the meanwhile you’re using the technology you like so it’s not that bad at all. However, a lot of people really really like their comfort zone and will not agree to move one inch away from it even if they have no good excuse for doing so. If these people are the decision-makers, your chance of getting through is very very small. In such a case, if you’re into new technologies, maybe your current workplace is just not for you.
OK. What do you do now? Well, you have multiple options. I recommend you to try the first one first, if it doesn’t work try the second one and so on.
Get a Permission
Approach your boss and ask for his/her permission to use your technology/tool for a specific task. Do not come and say “let’s use X” because you will get the generic answer “cool, we will” and never hear about it again. Be specific.
In addition, come prepared. Tell your boss why you want to use X for that task and what will you/the team/the company/the world benefit from it. You can also suggest you’ll do a presentation for the team about it and decide together if it’s worth trying.
Work in Parallel
Your persuading campaign didn’t go though and you haven’t received the permission you hoped for. This is not the end, but you will need to work a bit harder.
Given a task, work on it and finish it with the current technologies/tools that everyone is using. In addition to that, work on the same task individually in the technology/tool you want to convince your boss to adopt. Then, when the day comes to show your boss your work, show him/her also your side project and explain them the benefits. Once they see both implementations, can compare them and really “feel” the benefits, they might be convinced more easily.
Don’t tell your boss
I actually don’t like this solution at all… I think it is the fast way to get fired. But it is an option and you need to be aware of it.
This should really be the last resort if your hands are burning and you must use this new shiny technology in your workplace and you know that until Earth is destroyed, there is no way someone will approve you to use it. Anyway, please ask for permission first. Maybe you’ll get lucky.
The idea here is very simple – your boss tells you to do something and you do that with your beloved new technology/tool without letting anyone know. Then you come back to your boss, in record time, and says “I’m done”. From here there are three main scenarios:
- You are fired immediately.
- You loose your credibility and after a while your boss fires you.
- You become the new hero. The technology is adopted by your team and then the entire company. The boss likes people who swim against the current so after a while you are promoted and eventually you become the CEO of the company.
Epilogue
I believe that any person who wants to improve himself/herself in what they’re doing, should widen their horizon and look around. It’s a win-win situation - if you like what you see, learn from it and try to import it into your development environment. If you don’t like what you see, you will be more grateful for what you already have.
And if you think that you’re only one person and there’s no way you can convince your boss and affect the company you’re working for, remember that it only takes one person to start a revolution.
Viva la Revolution!
Shay.
- Posted by Shay Friedman on June 22, 2010
The last two weeks have been really fascinating for me. I flew 6 different flights, took 4 trains, did a total of 5 sessions in 2 conferences, lost one suitcase and got it after two days, and met numerous amazing people.
So let’s start from the beginning. My first stop was Dublin, where the Epicenter conference took place. The agenda covered various different programming languages like .NET, Java, Ruby and even Smalltalk. I did three talks – Practical IronRuby, ASP.NET MVC and Ruby on Rails Vs. ASP.NET MVC. Apart from these talks I got to participate in a web frameworks panel where I talked about ASP.NET MVC. The other panelists were Peter Ledbrook that talked about Grails, Jamie Van Dyke who talked about Ruby on Rails, Julian Fitzell who talked about Seaside and Matt Raible who talked about Java web frameworks:
The great thing in this conference for me was that I got to hear, for the first time, about the worlds outside the Microsoft world. It was a really interesting experience for me, and I’m sure it will be the same for every .NET dev out there (highly recommended!).
Apart from that, I hanged out with a lot of cool people – thanks everybody for the great time!
After the conference was over I stayed in Dublin for a few more days mainly for sightseeing… On one of the days I took a trip to Glendalough which was spectacular! Ireland is soooooo beautiful!!!!
Afterwards I moved on to the second part of my tour – the Norwegian Developer Conference. I took a flight to Oslo, Norway got a train to the central station and walked to the hotel (great location!)… A few minutes after I get to the room in Oslo I get a Twitter message to call Anders (one of the organizers). He asked me to replace Scott Bellware as the first talk on the day after since Bellware had done a very Bellware-like thing and missed his flight. Luckily I had my talk ready by that time so everything went really good. Eventually I had two talks – Practical IronRuby and Riding IronRuby on Rails.
So the conference, I must admit, exceeded all of my expectations – the organization was flawless (kudos to the organizers), I got to meet and talk with tons of awesome smart people, I talked in front of a lot of people and I learned so much about technology, about drinking a lot of beer and about sides of Microsoft which I’ve never thought about (thanks Scott, Rob and Seb!). It was a great experience for me and I wish any one of you to go through something like that.
One of the peeks of the conference for me however, came right after it ended… During the conference I tried, with the help of Tim Heuer, to run a simple IronRuby console on a Windows Phone 7 device. We faced some problems with the version Tim had so we kinda let it go with no success. But! Tim didn’t despair and contacted Tomas from the IronRuby team. Tomas found the problem and hacked a fix very quickly… so while I was sitting in my room just before leaving for the airport, I got this picture from Tim:
It ran! IronRuby console on a real Windows Phone 7 device! soooooooo cool!!!!!
So… Thanks all for the great time! I was really glad to meet each and every one of you and I hope to meet you all again sometime!
Shay.
P.S. The slides of the talks and links to the videos will be published soon.
- Posted by Shay Friedman on April 18, 2010
I understand it now, I’m just not lucky with gadgets. First it was my sound system that died on me and now my new and shiny laptop does its part in irritating me.
This morning I found out that only a month after I received it, a part of the Dell logo that resides on the top cover of the computer fell off. This is how it looks like now:
Now look, I don’t put things on my computer, I don’t throw it and I don’t scratch it. All I do is to put it in my bag and take it out of it. And it’s so upsetting that after a single month, a top-notch 2500$ computer, has this kind of flaw.
Should I expect the whole logo to fall off in the next few months?
Dell’s site says about my computer that it provides “superb performance and design”. Is this what you call “superb”?
I’m really disappointed in you, Dell. You have let me down.
Shay.
- Posted by Shay Friedman on April 2, 2010
I’ve just received an email from Microsoft saying I’m a new Microsoft MVP!!!
The MVP award is officially in Visual C# but it is mainly for my IronRuby activities (there’s no specific IronRuby MVP award yet).

I’d like to thank Sela, Guy Burshtein, IronRuby and you for helping me in the process of becoming a Microsoft MVP.
I’m very excited and looking forward to MVPing!
All the best,
Shay.
- Posted by Shay Friedman on March 25, 2010
Recently I thought about this comparison… In the programming world there is this level of people who are a kind of “celebrities” within the developer community - they’re widely known, they have thousands of readers of their blogs, they have thousands of followers on Twitter, they speak on public events in front of thousands of people around the world… All of that just screams for a comparison with the equivalent in the show biz world - rock stars!
So… I’m proud to present the first EVER comparison between rock stars and programming stars! afterwards judge for yourself what you wanna be.
| Comparison | Rock Star | Programming Star |
| Look |  |  |
| Shown in public on | Concerts, TV, Radio, newspapers, magazines | Conferences, podcasts, programming magazines |
| Known internationally | Yes | Yes |
| Chances of being recognized in the grocery store | Almost with complete certainty | Rarely |
| Charisma | Yes | Yes |
| Tools | Microphone/Guitar/Drums/other instrument | Microphone + computer + projector |
| Write | Lyrics | Code |
| Average annual salary | Millions of dollars | Hundreds of thousands of dollars |
| # of Twitter followers | Millions | Tens of thousands |
| # of people attending a single show/talk | Tens of thousands | Thousands |
| Way to the top | Hard work for years/American Idol | Hard work for years (Simon Fuller, if you read this, what about a “Programming Idol” show?) |
| Sex | So much that they’re sorry about that when they grow old. | I don’t know. Unlike rock stars, they don’t share this information. |
| Drugs | Yes. A lot. | No. Geeks do not do drugs. Most of them at least. |
| Alcohol | Yes | Drink beer from time to time |
| Tour the world | A few months a year | A few days/weeks a year |
| Own | A crib, a private jet, a collection of cool cars | A powerful laptop with SSD and two 24’ screens |
| Can install Win7 | No | Of course, they’ve done that multiple times already |
| Eat bats during shows/talks | Yes | No |
| Have tattoos | Yes | Mostly not, it hurts to get them done. |
| Have two eyes, two ears, one mouth and one nose | Yes | Yes |
And the winner is………… I don't know, do you?
Anyway in the end we’re all human and therefore have a chance to become stars.
Go ahead and shine!
Shay.
Share: Digg it | DZone it | Reddit it
- Posted by Shay Friedman on March 22, 2010
This week I got my new laptop and it’s AWESOME!
It is a 64-bit Dell Studio XPS 16 with the following specification (the main features):
- Processor: Intel® Core™ i7-720QM Quad Core Processor 1.6GHz (2.8GHz Turbo Mode, 6MB Cache)
- Screen: 16' inch RGBLED Full HD 1080p
- RAM: 8Gb 1333Mhz DDR3 Dual channel
- HD: 500Gb 7200RPM
- Graphics: 1GB ATI Radeon HD 4670
And this is how it looks like:
It’s so much fun to work like that! everything just works and you don’t need to wait for operations to get done. They just do.
So after praising my new laptop, let’s move on to the main subject of this post – the tools I take with me to every computer I work on:
- Reflector – in my opinion, every .NET developer must have Reflector installed on his or her computer. There is no way you can understand the internals of the technologies you work with without going through their code, at least flutter through it. And if you don’t want to understand the internals, go to a shrink and figure out why do you settle for mediocrity.
- IronRuby – I use IronRuby’s REPL console as my main method of doing quick POCs, check what methods return and how to use them, etc. I used to use Snippet Compiler but IronRuby is so much faster and much more fun so I moved to it.
- GacView – I use it as a replacement to the “assembly” folder viewer that is provided by Windows Explorer. GacView shows you the assemblies in the Global Assembly Cache (GAC), provides information about them and most important – lets you copy them to a different location and to delete them.
- ViewStateDecoder – let you view what your page stores inside its view state hidden fields.
- Fiddler – A very simple to use and powerful network sniffer.
- SciTE – A light-weight editor with syntax highlighting and a simple code completion mechanism. I use it to change C# code quickly instead of opening the heavy Visual Studio, to write IronRuby code and to edit XML files.
- Process Explorer – I use it as a replacement to Windows Task Manager. I like the UI more and the ability to find handles and remove them becomes very helpful every now and then.
- ZoomIt – An awesome tool for presentations. If you speak occasionally and use a projector or a big screen, this tool is a must for you.
- PicPick – a light-weight tool to capture screenshots. Very easy to use and comes with some more handy features like a color picker.
- foobar2000 – A very light-weight music player which does exactly what it needs – play music. It comes with an easy to use music library viewer and can even show a balloon tip with the current playing song.
I highly recommend each of these tools because of my great experience with them. They make irritating tasks simpler and faster and eventually make me happier.
I hope they’ll make you happier too!
Shay.

- Posted by Shay Friedman on January 5, 2010
2010!
It’s a new year and the wind of change is in the air. This year is a big year for me – IronRuby Unleashed will be published (est. FEB 15th), another big project is coming (more details in a few weeks) and I changed jobs!
In the last 4 years I worked at a startup named ActionBase. I learned a lot at this place and managed to work with various platforms – Office addins, WinForms, Silverlight and ASP.NET. After 4 years it was a time for a change and I decided to move on. Starting from 1/1/2010 I’m a .NET technologies consultant and instructor at Sela. My main field is dynamic languages but I’ll be doing other stuff too. I’m really thrilled and excited to get started, help customers and spread my knowledge.
If you want me to come to your company to run a course or consult, don’t hesitate to contact me. This is my job now, not a hobby anymore, so go ahead and use me! :)
I wish you all a wonderful and happy new year. May this year will be the one you were waiting and hoping for!
Peace and love,
Shay.
- Posted by Shay Friedman on December 1, 2009
This post has started from my suffering from developing web sites differently to make them work in IE and in Firefox the same. That was everything I asked for…Currently, even with IE8 I still can’t develop on Firefox and remain calm and confident that the site works the same on IE.
The truth is that it is not entirely Microsoft’s fault. When they begun developing IE somewhere in 1995, standards were not that important – it was more about “please just work” kind of work. In addition, even if there were standards, we can assume that the guys at Microsoft assumed that they would change the standards as they had done before in other fields. What Microsoft didn’t realize was that the Internet was stronger and that they were not going to win the standards battle this time.
Anyway, out of my suffering I came to a conclusion – even though we like to think of Microsoft as this big evil doer that doesn’t follow standards, it is just another brick in the wall of global un-standardization that started long long ago and still effects our everyday life.
Language – yes, language. Starting from the beginning of days, the very basic resource of our communication is a one big un-standard thing. Just visit the country near you (and sometimes even the district near you) and most likely you will run into a different language than yours. Think of how big it is – almost everything you create in one country, should be fixed in some way to fit a second country. TV shows, manuals, books, user interfaces, etc.
If you do not agree with me because language is related to culture and different cultures is a part of our nature (some would say that it’s a kind of un-standardization, too), the next bullet will be harder for you to disprove.
Signs – especially driving signs. This is something which is entirely unrelated to the local culture. We all should stop at the traffic light, slow when entering school perimeter and beware of rolling stones. As a result, driving rules across the globe are very similar indeed. However, every country uses a slightly different sign set. For example, look at the different Stop signs from across the globe:




If we had to develop a globalized application that involves driving signs, we had to create local versions for each country – very similar to writing code for IE and for Firefox…
Driving direction – that always amazes me. The world is split to about 34% live in right hand traffic countries and 66% live in left hand traffic countries (according to Wikipedia). This is such a big historical standard failure! it forces car companies to produce different versions of cars to meet both standards!
In London it’s funny to see drivers from other EU countries driving their right-sided cars and trying to understand how to enter the roundabout. Actually it’s not that funny if they enter the roundabout in the wrong direction – life can be lost! and it’s all because of un-standardization…
The IE vs. FF issue seems less important now, doesn’t it?
Electricity – the differences in electricity methods around the world is astonishing – 110W, 220W, plug with 2 holes, with 3 holes, with wide holes, with thin holes…… huh? why?






It’s like every country developed electricity by itself and didn’t tell the others until they developed it as well. do I hear someone say “Microsoft and Netscape!”?
In conclusion, our world is full of un-standardization – from the language we talk to Internet development. There are much more examples than the ones I’ve brought here – shoe and shirt sizes, Km and Miles, Kg and Pounds, Meters and Feet, money and more. Although it might be upsetting to meet all standards it also has one big advantage – it creates so many jobs! consequently it helps the world’s economy!
So Microsoft actually helps the world. Yes.
All the best,
Shay.
- Posted by Shay Friedman on August 25, 2009
Hi there,
This is the first post for this blog. I'm thrilled to start with it and I hope you'll like it.
I will continue to maintain my previous blog at http://blogs.microsoft.com/blogs/shayf so it will be kind of a mirror of this blog.
Enjoy your stay!
Shay.