Thursday, January 24, 2013

6 Types of Clients You Don't Need

This is so true. Following article is written in the cotext of Startups but is applicable to any grown up business as well.
6 Types of Clients You Don't Need

Wednesday, January 02, 2013

Converting SQL Server named instance to default instance

I had SQL Server express edition installed on my development box and I had configured it to be a named instance. However after some time I felt I better use a default instance to save myself from some extra keystrokes. Though my connection string is in web.config and it is not a big deal to put few extra characters there, but I thought to convert the instance type of my DB server.

When I looked up in Google, it seems you can not change the named instance to default instance and vice versa. However I encountered one StackOverflow post which suggests few steps to make named instance behave as if it is default instance. You should use this workaround only when you are playing with a development box. You really should not try this on any of your critical database servers. Following is the link to the post:

Making SQL Server named instance behave as default instance

Thursday, December 20, 2012

The myth of the generalist

The myth of the generalist

When I started working at Google, I heard the word generalist over and over. “We only hire generalists,” I was told. Eight years later this mantra is pretty common. I hear it often both…

Sunday, September 02, 2012

Visual Studio 2012 Application Lifecycle Management Virtual Machine and Hands-on-Labs / Demo Scripts

Brian Keller just recently released a new VS/TFS 2012 VM and hands on lab.  It will be a good start to see what all improvements are there in VS 2012 when it comes to product lifecycle management.

http://blogs.msdn.com/b/briankel/archive/2011/09/16/visual-studio-11-application-lifecycle-management-virtual-machine-and-hands-on-labs-demo-scripts.aspx

Friday, June 15, 2012

Hating the changes in VS 2012 so far

I installed VS 2012 RC on my machine. .Net framework 4.5 might be bringing some good features, but I could not stop myself from noticing some horrible usability issues with VS 2012 RC. Actually all of these issues were there since developer preview, but I thought that these would be fixed as we get closer towards the final release. But to no vain.

1. Bad contrast – This is usability issue. In the default theme which is grayish beyond comprehension, I am having problem finding out disabled items and enabled ones. I have multiple workspaces created. Everything is looking gray and it is being difficult to find out the items instantly.

clip_image002

2. Messed up Team Explorer – Team explorer is changed horribly. Whereas earlier we used to get the list of project we have access to, now they are showing only one project at a time.

a. Every time you need to switch from “Build” view to “Work Items”, you need to click on extreme right dropdown menu and select any one of those views. It is very annoying. Think about the condition when you are working with more than one project, maintaining their builds, doing some PM work on the tasks of more than one project. It is going to be the nightmare.

Compare the same view with my VS 2010 view. In VS 2010 it is so easy to navigate across multiple projects and different views.

clip_image004image

3. Problem in associating work item to pending check-in – If you have policy where you need to associate every check-in to a work item, then you are going to be very fed up. The whole UI is changed to become an in place panel rather than modal dialog.

a. There also it is not allowing you to pull the query lists as it used to do in VS 2010. Instead it is asking us to make one or more queries (Active Bugs, Active Tasks etc.) as favorite queries. Then it will pull up those tasks. Annoying.

clip_image008

Thank you for reading till here. There are more problems with .net 4.5. .Net 4.5 is going to be in place replacement of .net 4.0 framework. To know what does it mean, please read http://blogs.msdn.com/b/dotnet/archive/2011/09/26/compatibility-of-net-framework-4-5.aspx.

To know about what problems this in place replacement will cause, please read http://www.devproconnections.com/content1/topic/net-framework-45-versioning-faces-problems-141160/catpath/net-framework/.

If you agree with me on theming issue, then please visit http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2623017-add-some-color-to-visual-studio-11 and http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2819619-leave-vs-2010-theme-and-the-theme-editor-extensio and vote to show your support.

Sunday, April 29, 2012

Creativity Rot

Vodafone 2012 ad

When I see above ad from Vodafone, I feel pity for Vodafone. What happened to Vodafone of past who once came up with excellent zoozoo ad. It seems Vodafone agency fell short of creative ideas and came up with above pathetic ad series. Look below, how fabulous their zoozoo ad series was.

Vodafone zoozoo ad

There is another crap ad series is going on and the credit goes to Sony. See below for reference. I am not sure about the device, but the ad series is pure nonsense.

Hah–Made of Imagination! I say Lack of Imagination.

And then there is another ad series which is pretty good but every time I see it, I think it is for a different product.

Airtel Ad series 2012

Though this ad series belongs to Airtel, but my suggestion to Sony Mix would be that they buy this ad series from Airtel (even if it means a decent profit to Airtel). Reason being, this ad series looks to represent Sony Mix better than Airtel.

Tuesday, April 24, 2012

SkyDrive storage is reduced but only for new customers

Microsoft had SkyDrive for quite long time now. All of hotmail account users know about it. SkyDrive used to give 25 GB of free space.

What you don't know is that as part of latest update to SkyDrive service, Microsoft has reduced the storage space to only 7 GB. However there is still hope. If you had used SkyDrive in past and still use it, Microsoft will let you switch back to 25 GB plan without a dime. Go claim it quickly...I have claimed!!!

SkyDrive 25 GB

Friday, March 16, 2012

Three stories; I want everyone to follow

Learn, unlearn and relearn.
The illiterate of the 21st century will not be those who cannot read and write, but those who cannot learn, unlearn, and relearn.  ~Alvin Toffler

Are you building a temple?
One day a traveler, walking along a lane, came across three stonecutters working in a quarry. Each was busy cutting a block of stone. Interested to find out what they were working on, the traveler asked the first stonecutter what he was doing. “I am cutting a stone!” Still no wiser the traveler turned to the second stonecutter and asked him what he was doing. “I am cutting this block of stone to make sure that it’s square, so I can make a living.” Still unclear, the traveler turned to the third stonecutter. He seemed to be the happiest of the three and when asked what he was doing, he replied: “I am building a temple.”

A young man who graduated yesterday and stops learning today will become uneducated tomorrow.
John, a woodcutter, worked for a Company for five years but never got a raise. The Company hired Bill and within a year he got a promotion. This caused resentment in John and he went to his Boss to talk about it. The Boss said, "You are still cutting the same number of trees you were cutting five years ago. We are a result-oriented company and would be happy to give you a raise if your productivity goes up."
John went back started hitting harder and putting in longer hours but he still wasn't able to cut more trees. He went back to his Boss and told him his dilemma. The Boss asked John to go and talk to Bill. "Maybe there is something Bill knows that you and I don't."
John asked Bill how he managed to cut more trees. Bill answered, "After every tree I cut, I take a break for two minutes and 'sharpen my axe'. When was the last time you sharpened your axe?"
This question hit like a bullet and John got his answer.
"When was the last time you sharpened your axe?" If you want to progress in life, you cannot rest on your past laurels. You must continuously sharpen your axe of knowledge, skill and expertise, in whatever field of activity you may be! By sharpening your axe appropriately, I wish you to attain your goals.

Hope you get the intended message.

Tuesday, March 13, 2012

Browser will become irrelevant

I am sure over the past several months, you would have heard how Microsoft is trying to change your browsing experience on Windows 8. Microsoft is bringing metro style apps to main stream Windows desktop OS and IE is not an exception. Firefox too is working on the same lines for its Windows 9 based release.

This news seems to be exciting from technology point of view, however as an end customer I feel the other way round. As an end user if I am working with metro style OS, I would like to have every site that I visit as an application. Today I use Facebook, I would like to see a Facebook app on Windows 8 (People app does that but I am not happy with it). I use various email account, so Microsoft already has gotten Mail app there, though little shoddy (that may be fixed by the RTM). What else I browse? Whatever I browse I would like to have an app for that on Windows 8. After all it is not too much to ask. For example, LinkedIn app on android lets me navigate to almost whole of internet while retaining my feel of still using LinkedIn app.

To me this is where I would like to go. To me browser will become irrelevant in coming future.

Sunday, January 29, 2012

Database forward engineering using Visio

Though I do not like Microsoft Visio for software designing, but unfortunately this is the only tool which is available to me. Recently I was making database model using Visio and at the back of my mind I had thought that Visio will let me generate database using some single button click.

However when that time came, there was not such button. In fact Visio does not have forward engineering for database. This was a big setback. But then there was a savior. Alberto Ferrari has developed a plug-in for Visio 2010 which can generate database script using your Visio database model. Download it and install and it works flawlessly. If you have problem installing the tool using it’s .exe setup, then rename the .exe setup to .zip and open the .msi installer within .exe setup. .msi installer works without any problem and once installed you will have database forward engineering capability in Visio 2010.

Steve Jobs, Superhero

Steve Jobs, Superhero

Thinking about how most companies dole out feedback — if they do at all — it’s usually directed at the bottom quartile of performers versus the top. A typical manager at review time spends 80% of their time preparing detailed reviews on the bottom 25%. The top quartile gets lame, short reviews — the equivalent of “You’re doing great, keep up the good work!”

So true. How many times I have seen it happening when managers are so worried to give feedback to bottom 25%. They know that they will have to console the person who is at the bottom, they will have to explain the expectations from him and somehow motivate him. And after all this there is no guarantee that the person will stay with the organization. In most probability he will move on to some other place. Looks like Steve was right in giving more time to his top quartile. This is the quartile which anyway makes the difference to organization. Bottom quartile is anyway useless which according to organization management principles should be gotten rid of. Then why spend so much time with them?

Thursday, January 12, 2012

Some lesser-known truths about programming

This is so true. I am so tired of bad programmers. A programmer who is starting new is another thing. He is fresh out of school and we can teach him good things and make him productive. But if a developers has loads of experience and still fails to understand basics of the business and not productive enough, then he is just a burden.

Tuesday, January 03, 2012

HTML 5 test

imageimage

imageimage

What is Microsoft paying to their engineers? Seems like MS engineers are either not getting enough or getting too much that they don’t care about engineering excellence any more. Shame!

Sunday, January 01, 2012

Facebook messenger windows desktop client

Facebook messenger for Windows is here. Get more detail from Facebook messenger help page.

Sunday, December 11, 2011

Real time client-server communication on the web

If you are a software developer and keep your eyes open for what other people are developing, you must have seen Google Talk nicely sitting inside Gmail and you are able to chat using web interface. You also would have seen Twitter updating its recent tweets automagically without refreshing the page. Though it is not a new things, but this kind of applications are kind of new things to mainstream web development. This kind of applications used to be developed in state full programming environments and not in state less web environment.

Normal approach to implement these kind of scenarios would have been to poll the server frequently. Another option could be long polling or WebSockets. However now Microsoft’s ASP.Net team is developing a new library called SignalR. Being developed by Microsoft itself is one big enough buying point. Maarten Balliauw is introducing you to SignalR in detail.

So now if you need to build something related to real time communication on the web, you don’t need to pull your hair. SignalR is here.

Thursday, November 17, 2011

Want to become a good developer

QUALITY. How do you measure quality? Generally speaking quality is an intangible thing, however it is not invisible. Quality is the thing that makes Apple products different from rest of the world. Quality is the thing because of which some of Japanese and German brands enjoy premium over their counterparts.

The same quality can be applied when we work with any kind of software development. In today’s world where outsourcing is another word for software development, people are less concerned with quality and more involved in just head counting. At the end it impacts both customer and service provider.

So, how do you plan to bring quality to software development? By employing CMM, Agile, RUP etc. No, they are all ways to manage project delivery. By employing any one of them will not improve the quality of software. To improve the software quality we will have to first accept that it takes time to get it right. Here I will touch upon some basic things which if you understand and try to implement in your day to day working, you will see your code quality going upwards.

First set of design principles is called S.O.L.I.D. principles. These are five different rules and if you follow them, you certainly will be a step ahead in code quality. I am reiterating them here so that even if you don’t follow the links, it somehow sticks to you.

SRP The Single Responsibility Principle A class should have one, and only one, reason to change.
OCP The Open Closed Principle You should be able to extend a classes behavior, without modifying it
LSP The Liskov Substitution Principle Derived classes must be substitutable for their base classes.
DIP The Dependency Inversion Principle Depend on abstractions, not on concretions.
ISP The Interface Segregation Principle Make fine grained interfaces that are client specific.

If you want to know more about SOLID, you can follow aforementioned links or LosTechies have drafted a very good book on S.O.L.I.D.

Recently I was reading another architecture related book that I thought every developer and budding architects should read. It is Microsoft’s Application Architecture Guide V2.

Another thing is that every developer should start familiarizing themselves with design patterns. Sooner or later they will realize that understanding design patterns makes them a better developer. I am not advocating that you need to be master of design patterns but you need to know few of them. Head First Design Pattern is good book to start with.

I believe every small step towards code quality is a big step towards customer satisfaction and meeting business goals. There are many more such practices which can make you a better developer and make your customer happy. I might discuss those things in future.