Interview Questions Headline Animator

Thursday, May 22, 2008

Copying the Address on Team Explorer

You go to Team Explorer bar and double click on "Source Control". This fires up the Source Control Explorer. Now you double click a few thousand times to reach the directory that you wanted to reach and you do something that you couldn't have perhaps done from outside the Source Control Explorer, like a file check out perhaps. Now you want to do something with that file which perhaps you can't do from inside the source control explorer like copy pasting some other files in and out of this directory, perhaps. So basically you require the location of the file that you just checked out. so you see this:

 

 image

you will see the thin red marking that marks the location of the file. you want to copy this. Surprisingly it doesn't allow you to select the path and copy paste it into your windows explorer. so how do you Get the path. I asked my good friend who sits next to my cubicle and he says, "Right click on the folder, go to properties, and you get the path there. And this, obviously, is selectable:

image                             image

Now I didn't ask him this question because I didn't know this. That was the first thing that I did. But then there is a splinter inside every programmer's head that doesn't let him rest when things like this happen. I am a Microsoft Technologies Programmer. For so many years I have used Microsoft tools, I know how "they" think. And there has to be a better way. I clicked around like crazy combining it with random Ctrl + C and right clicks. And every few clicks I went to the notepad and Ctrl + V 'ed. That's when I discovered. you double click on the bar that shows the local path and the path gets loaded into the clipboard.

Now there is a pattern that is quite familiar among all Microsoft software. If you find something difficult to work with, you are probably not doing it right. There has to be an easier way that is much more intuitive. A programmer will intuitively double click an area if he wants to select it for copying. Of course that is only if he cannot reach that area with his keyboard (oh we so loathe to take our hands of the keyboard!!!).

Thinking about usability to such excruciating details... I wonder how they do it...!!

Microsoft Rocks...!

Monday, April 28, 2008

If Microsoft Goes Hostile on Yahoo... Amazing Read...

http://blog.pmarca.com/2008/04/if-microsoft-go.html

Joins in LINQ... What do I return?

I want to write a select query that returns all the data in a table? this is how it would go:

IQueryable<Session> sessions = from session in dataContext.Sessions

where (session.EventID.Equals(eventID))

select session;

Now I want to write a select query that joins two tables. This is how it would go:

var x = from s in dataContext.Sessions

from e in dataContext.Events

select new

{

s.SessionName,

s.SessionDescription,

e.EventName

};

So this is the easy part. we just learnt how to write the query. Now consider this. I have a separate data access layer that does all the basic query generation and works as a data interface. I generate the first query here and then in my engine or the middle tier, I refine my query depending on what the UI layer requires. So in a situation like that I have a function in my Data Access Layer that does a table join... what would this function return. I can't return IQueryable<Session> or whatever is the Table Name because I am making a join and so it is no specific table. I am supposed to be returning an anonymous class. How do I return an Anonymous Class from a function. The whole idea of the anonymous class is that the class name is anonymous. So this is what I do.

public object GetSessionAndEventData()

{

if (string.IsNullOrEmpty(this.connectionString))

{

this.connectionString = ConfigurationManager.ConnectionStrings[MADConstants.CONNECTIONSTRING].ToString();

}

if (this.dataContext == null)

{

this.dataContext = new EntitiesDataContext(this.connectionString);

}

var x = from s in dataContext.Sessions

from e in dataContext.Events

select new

{

s.SessionName,

s.SessionDescription,

e.EventName

};

return x;

}

Yes. I just return an object. While I was thinking about this, I did some reading and discovered something quite interesting in the C# 3.0 specification. "Within the same program, two anonymous object initializers, that specify a same sequence of properties of the same names and types, in the same order, will produce the instance of the same anonymous type". The compiler uses the same generated class if there are two object initializers of the same type. This actually makes it possible to cast it back to the original type.

Then what I did was, I just returned an object type from my data access layer, passed it through the middle tier engine, and all the way to UI. here I just bound my datagrid with the object type and voila...! The Datagrid was actually able to bring out the properties and put them in tabular format without requiring any casting.

Don't you just love it when it just works...!

Update on future plans on my career... Just a reminder...

So what do you feel like when you first board the mother ship. Death...! yeah... for someone who has been growing and dreaming and aiming high all his life (only such a person usually boards the mother ship)... where do you go once you join Microsoft...

There are goals like achieving targets, promotions, accolades; growing the ladder... But is that it...? Does life have nothing that big left...? Big enough like the ambition of joining Microsoft...? This is what I went through the first 3 months of my career...

I had to come up with something... So I did... A lot of people had been telling me that I write good... Specially my girl... who happens to be a huge inspiration... So I decided I would write a book... after a lot of thought and pondering... I decided  I would write something on Engineering Excellence... A subject that never goes out of scope. Number of reasons why I decided that... Since this is my first book it would take a lot of time... to even start it... Anyways coming back... spent 5 more months in all this pondering... and I still haven't written a single word or done nothing towards writing... Hell I am too stuck with my stretch initiatives at work and my mundane responsibilities...

So I decided I would start the book in December. Till then I will prepare. Build a monster machine that I have been planning for some time, read, read, read and read...

And then it happened. Ray Ozzie came to Hyderabad Campus... Short talk he gave and I got my next big thing. Joining the Microsoft India Development Center (IDC), which happens to be the products division in India. I will start preparing today itself and it is a one year target... I should be in IDC before 2009 December... I am giving myself enough time because I have to get married somewhere towards the end of 2008, and a honeymoon follows, and then the initial distractions of marriage and setting up a house and so on and so forth.

I also have to work on the monster machine, the book... although working on the book pretty much goes hand in hand with preparing myself for IDC... But still... I am sure IDC would require something more than just Engineering Excellence.

Wednesday, April 09, 2008

Command Copy exited with Code 1

If you get that error message, it is usually because you have configured your application to run some batch copy commands either just before the build of the app or after it. So go to Project Properties -> Build Events and check if there are any pre-build events or post-build events with any copy command. This usually happens when you get a version of legacy code that some other developer has written and are working on some fixes.

First check if there are any discrepancies with the copy command syntax or the directory path mentioned therein. If you can't resolve the error because of constraints such as not being able to change the directory structure, just get rid of the commands for the time-being and continue with your dev. You can later on figure out what the original intent of the previous developer was and go for the solution.

Tuesday, April 08, 2008

login failed for user (Microsoft SQL Server error: 18456)

So you had some problems with your installation of the SQL Server 2005 installation on your machine and now that you have un-installed and installed it, you can't seem to log on to your own machine using basic windows authentication. You can log into other servers but you just can't seem to log on to localhost. So you search the internet for the error message and after going through a whole lot of issues that are vaguely related, like changing authentication type from windows to sql and so on and so forth, you land on my blog.

The Solution: Install Visual Studio 2005 SP2

This was a bug in SQL Server 2005 that was fixed in SP2.

Friday, March 21, 2008

Microsoft Rocks...!

Everyone talks about the workplace of Google... and just look and pictures and say ooh la la...!

Well let's get real...!

http://www.fastcompany.tv/video/the-innovations-microsoft’s-new-research-building

Friday, March 14, 2008

Who are you...?

There was a senior manager from the leadership who had a meeting with the entire team today. He was telling us about his career and about what he had done throughout his career, going a little into the details of a few selected projects, his achievements, some interesting stories of despair, struggle and finally success... Hell leaderships don't even talk about failure now do they... But that doesn't mean they haven't seen any... :)

But while I was listening to it I could make out who that man was? That's the crux of this post? Who are you...? You are not your name... Your name just represents who you are. It is a facade. You can define yourselves with your relationship (Son of ... or Father of ... or Husband or Wife of...) But is that really you...?

You could define yourself with your profession... Senior Developer at Microsoft or Vice President for that matter... But is that really you...?

So I am what I contribute. At home, at work, at play. To my family, to the organization I work for and to the society too. So it seems I am a lot of people :). I always say the ultimate purpose of humanity is to grow. Smarter, stronger and better every passing day. So here are the metrics by which you grow.

You would be recognized by what you contribute to your immediate surrounding. If you contribute directly or indirectly to the business of the organization you work for, if you make it grow, you will grow. If you contribute to your family, if you contribute to your personal passions... They will know you by your contributions... that's what you are...

That's who you are.

Thursday, March 06, 2008

Blogger stops working with Live Writer

I use Microsoft live Writer. I maintain a no. of blogs. One about tech, one about gadgets, one about religion and mythology, one about training my new pet "Boomerang" (a 2 month old yellow Labrador) and so on. So to manage all these blogs, I use live writer. It is pretty cool and dainty. It gives all word like features like spell check and text formatting, manages my photos, if I want to post one along with my Blog Post, and so on. One fine day I realize that one of my blogs on blogger doesn't post the blogs that I am posting through live writer.

imageAfter sniffing around a little I realize that it is the "Captcha" that I somehow need to put while posting my blogs. Since live writer isn't able to solve the "Captcha", it is not being able to post my blogs on that particular blog.

So I click on the link that says "Why do I have this?" and I find out that "Blogger's spam-prevention robots have detected that your blog has characteristics of a spam blog." and that "Since you are an actual person reading this, your blog is probably not a spam blog. Automated spam detection is inherently fuzzy and we sincerely apologise for this false positive."

Now I have absolutely no issues with Blogger thinking that my blog is a spam blog. And in fact I think they are doing a pretty good job trying to prevent spam.

I was just wondering why this happened and how this could be made a little more user friendly. It happened perhaps because I am using Live Writer, which is in a way an automated blog posting engine. Which is exactly what a spam blog would probably use. I think the Blogger Spam Bots are doing the right thing.

So going beyond this point, I started wondering if the live writer in some way could report the issue to the author. I am sure there must be some kind of exception thrown on the blogger side when I was trying to post the entry without solving the "Captcha". Why did live writer not inform me? is that a test case missing in the live writer code? Why does Live Writer give me the feeling that everything is fine and hunky dory? Or is it that there is no way to find out whether the blog has been posted successfully or not? Should I report this? Well what the hell I probably should.

Last but not the least, Blogger is smart enough to store all the posts that didn't solve the "Captcha" as draft. So all my work didn't go a waste. I just had to go to Blogger and solve the "Captcha" individually. I hate to admit it, but I have to appreciate good work when I see it... Even if it is from the "enemy camp". Kudos Google...!!!

Google Calendar Synch... Bro ha ha...


Google launches Calendar Synch. This provides 2 way Synch with your Outlook Calendar. So every time I make an update on my Calendar on outlook, it automatically synchronizes it with the Google Calendar. So if my home
machine has Calendar Synch running, it would also synchronize my home machine outlook calendar with the Google Calendar. So all I have to do is make an update on one of the machines and my desktop, my laptop, my IPhone, everything stays in sync.
So I wonder what I would really do with this. I don't have an IPhone. My Sony Ericsson P990i syncs the Calendar I have on my laptop. I don't maintain my Outlook Calendar anywhere else. Since I carry My phone everywhere. All the Updates that I do I do only on my Phone and My laptop Outlook Calendar more works like a back up of my phone data.
Yes there is one small thing. All the meeting invites that I get, since I don't have the Blackberry service yet, don't get synchronized on the go. But as one of my ex-seniors used to say, "If you can't get in touch with me at home and if you can't get in touch with me at work and if you can't get in touch with me on my cell, don't get in touch with me. I am probably avoiding you."
Ok sounds good. But I do accept that I am not 100% "synched" on the move. So my next phone will facilitate me in doing that.
So considering that Microsoft had a utility like that which would sync windows live, outlook, hotmail calendars, I really ask myself. Do I really need something like that? Would I ever use it? Or is that small icon on my task bar adding more clutter to my windows registry and my installed programs?

Casio's new G-Shock GW-9200

GW-9200.jpgNow isn't that a gadget a man would love to own. Features you ask...? well here you go.

1. 6 Band Atomic Time Synch: This (for dummies) is a synchronization mechanism that tracks proper time depending upon the Earth's Geoid. The principal realization of the Earth's Terrestrial Time.

2. Barometer (Air Pressure range 260 to 1100 hPa)

3. Altimeter (-700 to 10000 meters): Does this also mean that it can go up to -700 meters under water? I wonder.

4. Thermometer (-10 to 60 degrees Celcius): Trust me dude you don't want to go beyond those temperatures.

5. Stopwatch (1/100 seconds, 24 hours with a split)

6. World Time (33 world cities, 29 time zones)

7. Countdown Timer (24 Hours Max)

8. 5 alarms (1 with snooze)

9. Full Auto EL Light (with afterlight): EL meaning Electro Luminescent. The watch has an EL Panel causing the entire watch to glow for easy reading in the darkimage

10. Tough Solar: There is a Solar cell that converts solar energy into electrical energy, which is used to charge the re-chargeable battery of the cell.

11. Geiger Counter (Soon to be added): A Geiger Counter helps in detecting radiation using Alpha and Beta Radiation.

Now should I show this to Nidarshana, what would she say? Is that a watch or is it a room full of machinery. Why do you need a watch that does so much. Why can't a watch just show time and look good and do nothing else. Why does everything in a Man's world have to be so Complicated?

So a Man's world is complicated. And as per her, its a woman's world that's simple... talk about it eh...!

Tuesday, March 04, 2008

Windows Mobiles Rule...!

For a long period of time there was a fad that windows is bad. Open source and anything anti windows was so cool to talk about. Ridiculing Microsoft products was a favorite time killer. People have slowly started realizing that not everything that they hear is true.

I have been using Symbian phones for quite some time now and all of them have been smart phones. Last weekend I attended a friend's marriage and his HTC Touch dual was with me for almost 3 days. This just made me realize how sweet windows mobile is.

It is small things that matter the most like a java application, when run, it gives a security alert. I get a choice to run the app once only or allow for the session or not this time or not this session or not at all. I cannot imagine what security threat it could pose on one run if it didn't on the previous in the same session. Or for that matter what across sessions. If it is safe once, isn't it supposed to be safe always...? Or is it that the OS doesn't recognise the app in the next session...?

Amd why are most of the apps designed for keypad phones and no extensibility for the touch screen browser phones...? I wonder...

A no. Of issue i notice with predictive text, handling, ergonomics, etc. So i conclude. symbian phones are good but when it comes to smart phones and its usability... Windows mobiles rule.

Tuesday, February 26, 2008

Netgear wireless router at home - Issues and Solutions.

Hi,

I have a Sify Broadband connection at home. And I have a Net Gear wireless router. So now we have 4 laptops at home and all of them are connected. Plus I have a friend staying 2 floor above me(I stay on 6th and he stays on 8th) sometimes even he gets connected quite easily.

Problems:

1. Sify has a mac address registered. So when you take a connection for your laptop, Sify registers your laptops Mac address. A wireless router has a different Mac address so doesn’t work.

2. Logging in is a problem so sometimes you have to log in directly with your laptop and then connect your laptop to your router and the router to the external connection.

3. Sify needs a static IP. If you want all your laptops to be connected, you will have to go to dynamic IP once you are connected.

Resolutions

1. Call your Sify personal and ask him to set up your connection for a new Mac address of the router.

2. Go direct and log in. that means you will have to go static IP first, log in and then connect the router and go dynamic IP.

3. Your laptop for which the connection was taken will be the server and which will provide internet to all other machines. This also means you will have to stay connected with the wire while others enjoy a wireless connectivity. One of the machines have to be physically connected to the router as long as the internet is needed.

Switching from dynamic IP to Static IP and back is cumbersome. So I have written 2 batch files for the same.

“Static.bat” changes to static IP. Change the static IP in the file to the IP you require.

----Static.bat-----------------------------------------------------------------------------------

netsh interface ip set address name="Local Area Connection" static 10.14.65.11 255.255.255.0 10.14.65.1 1

netsh interface ip set dns "Local Area Connection" static 202.144.105.4 primary

exit

-------------------------------------------------------------------------------------------------

“Dynamic.bat” changes the machine to dynamic IP. No change is required in this file.

----Static.bat-----------------------------------------------------------------------------------

netsh interface ip set address "Local Area

Connection" dhcp
netsh interface ip set dns "Local Area

Connection" dhcp
exit

-------------------------------------------------------------------------------------------------

Hope this helps.

Friday, February 22, 2008

You are a Juggler...

You are a juggler... Say you have unlimited supply of balls to juggle with... But you decide how many balls to juggle with... But you can't pick up balls while you are juggling... So say there is a man standing near you who at random throws balls at you which you may or may not decide to catch, while you are juggling with whatever you already have.

Let's start with one ball. How long would one ball juggling keep you interested. So you catch another one thrown at you. Let's say you are pragmatic enough to not catch a third ball until you are proficient with the 2 balls you are already juggling. Now let's say the man decides when to throw a ball at you. He is the decision maker and not you. So he might not throw a ball at you for a long time even after you have become proficient with the no. of balls you are already juggling with.

Or he may throw a ball of a different size or color that you may or may not like. So every ball thrown at you is an opportunity. You may like it and you may not. But you hardly have a split second to decide.

Of course you may decide to throw away one of the balls you are juggling with if you don't like it too much. And of course some of the balls are high priority that you must juggle with eternally. And of course you can't catch too many balls at a time or you drop the high priority balls too.

There is a trade off here. You get exceedingly proficient with the existing no. of balls as time passes. There is always a learning curve if you take up a new ball so the juggling proficiency goes down by a magnitude or two (depending on the size and color of the ball) every time you take up a new ball.

Let's call these balls your responsibilities. Let's call the man that throws balls at you fate. Let's call juggling "LIFE". The high priority balls are family and profession. The lower priority balls are things that you are passionate about. And the rest of the balls are what keep the zing in your life.

Like marriage. Every time the marriage ball is thrown at you, you decide to catch or not to catch in a split second based on your existing proficiency with the balls you are already juggling with, and your priorities. This ball is crucial because Mr. Fate may not throw another one at you for a long long time. Boy ain't life complicated...?

I have probably caught too many balls at this time. I am having some serious troubles juggling with family, profession, investments, health, guitar, Boomer (My new pet, a 40 days old cream Labrador), music, gadgets. And I am looking at picking up a couple of more balls to juggle with like marriage, learning sanskrit as a language, Tango and Salsa Lessons.

Am I Superman or what...!!!

Thursday, February 21, 2008

Why can't the developer not think like a user...?

Usability... Microsoft is known for it. She (Microsoft) has given birth to some of the most user friendly software known to man (and woman).

So the question is why oh why do we need a usability engineer. Why can't an Engineer, not think about usability. Sometimes we ignore simple issues like a two digit no. column on a grid is too darn wide and a description column which needs to be wide is too narrow for the description to be visible completely. Why oh why didn't we think about that before we were told by the user?

Because we were too busy churning out the high priority features so that they can be delivered on time. Too busy writing tests to ascertain the credibility of the application. Delivering non functional requirements like reliability, scalability, maintainability, security, and so on and so forth... Too busy designing, coding, testing refactoring... Delivering the bare necessities...

So the width of the column is the smallest thing in usability... there should be stuff thought of that is beyond imagination. Like how to make an application support operation without using the mouse at all. Completely with the keyboard. Or how to provide pointers so the user can intuitively know what to do next. Minimum mouse clicks... and perhaps hundred other pointers only a usability engineer can give you.

So how important is usability? What is the percentage of time that should be devoted to Usability when making the estimates? Inviting responses... Please comment...

Code Performance:

I read coding horror. It is a good blog. I just read about the Graphics Programing Black Book. Yes if you click the link you will see it is freely available at byte.com. Jeff says the book is pretty darn good even if you don't ever do graphics programming, never write code in C and don't know nothin' about Assembly Language. So what the hell... I took a peek...

Excellent example of how humor can make anything more interesting. Specially a book on technology. Without humor and spice, any book would be dry. How beautifully he makes the book worth reading. From Technical standpoint and from a literary perspective too...!

I haven't read the whole book yet, but some beautiful extracts from the few initial chapters.

Chapter 1:

In the early 1970s, as the first hand-held calculatorsw ere hitting the market, I knew a fellow named Irwin. He was a good student, and was planning to be an engineer. Being an engineer back then meant knowing how to use a slide rule, and Irwin could jockey a slipstick with the best of them. In fact, he was so good that he challenged a fellow with a calculator to a duel-and won, becoming a local legend in the process.

When you get right down to it, though, Irwin was spitting into the wind. In a few short years his hard-earned slipstick skills would be worthless, and the entire discipline would be essentially wiped from the face of the earth. What’s more, anyone with half a brain could see that changeover coming, Irwin had basically wasted the considerable effort and time he had spent optimizing his soon-to-be-obsolete skills.

What does all this have to do with programming? Plenty. When you spend time optimizing poorly designed assembly code, or when you count on an optimizing compiler to make your code fast, you’re wasting the optimization, much as Irwin did.

Chapter 3:

When you are pushing the envelope in writing Optimized PC Code, you are likely to become more than a little compulsive about finding approaches that let you wring more speed from your computer. In the process you are bound to make mistakes, which is fine - as long as you watch for those mistakes and learn from them.

A case in point. A few years back, I came across an article about 8088 assembly language called "Optimizing for speed". Now "Optimize" is not a word to be used lightly. Webster's ninth new collegiate dictionary defines "optimize" as "To make as perfect, effective, or functional as possible", which certainly leaves little room for error. The author had, however, chosen a small, well defined 8088 assembly language routine to refine, consisting of about 30 instructions that did nothing more than expand 8 bits to 16 bits by duplicating each bit.

The author of "Optimizing" had clearly fine tuned the code with care, examining alternating instructions sequences and adding up cycles until he arrived at an implementation he calculated to be nearly 50 percent faster than the original routine. In short, he had used all the information at his disposal to improve his code, and had, as a result, saved cycles by the bushel. There was in fact only one slight problem with the optimized version of the routine.

It ran slower than the original version...!!!

Chapter 10:

My grandfather does the New York Times crossword puzzle every Sunday. In Ink. With nary a blemish.

The relevance of which will become apparent in a trice.

What my grandfather is, is a pattern matcher, par excellence. You are a pattern matcher too, so am I. We can't help it; it comes with the territory. Try focusing on text and not reading. Can't do it. Can you hear the voice of someone you know and not recognize it? I can't. And how in the nine billion names of God is it that we are instantly able to recognize one face out of the thousands we have seen in our life times - even years later, from a different angle, and in different light. Although we take them for granted, our pattern making capabilities are a miracle on the order of loaves and fishes.

By "Pattern Matching" I mean more than just recognition, though. I mean that we are generally able to take complex and often seemingly woefully inadequately data, instantaneously match it with an incredibly flexible way, to our past experience, extrapolate, and reach amazing conclusions, something that computers can scarcely do at all. Crossword puzzles are an excellent example; given a couple of letters and a cryptic clue, we are somehow able to come up with one out of several hundred thousand words that we know. Try writing a program to do that! What's more, we don't process data, in a serial brute force way that the computers do. Solutions tend to be virtually instantaneous or not at all. None of thos "N log N" or "n2" execution times for us.

Tuesday, February 19, 2008

Mobile Phone Design Challenges...

So what are the challenges

Facts.

  1. Typing on a soft keyboard is not ergonomic at all. Hard keyboard is required "qwerty" or otherwise
  2. The "qwerty" (if there) keyboard should have buttons big and wide enough to make typing ergonomic.
  3. Screen has to be wide so browsing, emails and other icons can be fitted into the screen comfortably

Challenges:

  1. How do we fit in the keyboard and a wide screen into a phone and keep it compact.
  2. How do we make it look sleek so it sells. Nobody would want to buy a clunky phone.

Attempts:

  1. Nokia Communicator: Too clunky.
  2. Sony Ericsson P800: No "qwerty" keyboard, but pretty promising
    close window to return
  3. Sony Ericsson P910i: "qwerty" keyboard too small and un-ergonomic to be useful.
  4. Sony Ericsson P990i: Very Very Promising. Reduced screen size, but "qwerty" keyboard very ergonomic, though not any bigger.
  5. HTC Touch: No "qwerty" keyboard, but with the touch flow and wide screen, pretty good
  6. HTC Touch Dual: Getting closer. Slider "qwerty" keyboard and touch flow makes it ergonomic, compact and sleek.

And the best ones until now:

  1. HTC Tytn II: Full Slider "qwerty" keyboard, big enough to be ergonomic to type in long emails, sleek and compact enough to sell and Windows Mobile OS makes it Hot cakes.
  2. Sony Ericsson Experia X1: The "arc slider phone" the "arc design" means the side screen slider. Not only does it make this phone the most ergonomic and fully featured phone, it has 2 main edges. It is Super compact and sleek (The geek value, the gizmo touch, et al) and Windows Mobile. Yes Sony Ericsson comes out with a phone with Windows Mobile 6.1 for the first time. Take a peek http://www.sonyericsson.com/x1/?lc=en&cc=IN and http://www.expansys.com/d.aspx?i=163411

How to disable Aero on your Vista Machine

Ok so your hardware sucks and you want performance out of your machine. Yeah I know life is a bitch, gotta deal with it. So you want to disable Aero on your machine so you can get more out of your machine. Go to Start -> Control Panel

Click on "Appearance and Personalization"

image

Click on "Personalization"

image

Click on Windows Color and Appearance

image

Click on "Open Classic appearance properties for more color options"

image

Choose "Windows Vista Basic"

image

Click Apply, Ok and you are done...!!!

Friday, February 08, 2008

Now That's what I call a phone... A Phone...? Err... Ahem...!

Now This is what I call a phone... A Phone...?? err... Ahem...!!!

 

htc_shift_2.jpgIt's been almost a year since we first saw the HTC Shift, the fold-up Windows Vista and Windows Mobile-capable UMPC with a pretty decently-sized keyboard. The touchscreen device is finally getting a release date of sorts from the European Expansys retailer on February 19 at a launch price of 1185 Euros ($1720). That's right, it's about as much as an expensive laptop, which means the potential target of the device might only be getting it for its built-in 3G support. It's also four times the price of an Asus Eee, in case you were counting. [Reg Hardware via Slashgear]


 

View article...