Live data from Hacker News

Working at Microsoft – Day to Day Coding

foredecker.wordpress.com

111–120 of 171 posts

Re: Working at Microsoft – Day to Day Coding

#111

Earlier quoted context omitted.

but, Tests/LLOC seems to state even less than LLOC. LLOC gives an indication of the complexity of the application (or a component). All Tests/LLOC seems to state is that some lines of code exist and potentially, some test cases are testing them.

It's also a measure of test granularity, i.e. for a module of given complexity, how many test cases cover it?

We can see what it measures. I'm just saying that it's a pretty nebulous metric when used out of context. Taking 2 numbers and condensing them into 1 (à la Megapixels) is an exercise in marketing.

Re: Working at Microsoft – Day to Day Coding

#112
post #22

An assumption? We've been told pretty directly how complicated the process is (often with pride). See the 14 steps which turn a 5 minute code change into a multi-man-month-mammoth: http://blogs.msdn.com/b/ericlippert/archive/2003/10/28/53298... Or the now infamous Windows Shutdown "crapfest": http://moishelettvin.blogspot.com/2006/11/windows-shutdown-c... There's more. And I have no problem with the author stating ho…

I think you might be misinterpreting the first post you linked. He's not bragging about how complicated it is. He's also not complaining about how tricky it is. There are always things in the Windows org that could use improvement (otherwise, I'd be out of a job). However, the vast majority of processes exist to fulfill requirements that very few software projects have to deal with.

Consider that Windows ships in over a hundred languages to hundreds of millions of people. I'm not sure how many languages Linux ships in (I'd bet quite a few), but Linux contributors don't have to worry about getting arrested for drawing map lines wrong: http://blogs.msdn.com/b/alexbarn/archive/2004/08/20/217602.a...

Do we ship software without testing? No. Do we ship software that isn't globalized? No. Do we just hack something together, check it in, and call it a day? No. These aren't the kinds of practices that lead to a stable platform.

Mistakes get made (at all levels of the management chain), but they tend to be the exception in my experience.

Re: Working at Microsoft – Day to Day Coding

#113
post #93

Everyone certainly does not get their own office. The way it works is that people are given offices sorted by their seniority (years at Microsoft, not your pay grade). So it goes: * 2 people in a non-windowed office * 1 person in a non-windowed office * 1 person in a windowed office * 1 person in a corner windowed office.. etc and people just starting out do end up getting paired up with someone else.

Entirely depends on team and building. I wasn't doubled up until my 3rd year at MSFT. Even then, it was due to cramped space (bldg 9).

Re: Working at Microsoft – Day to Day Coding

#114

Earlier quoted context omitted.

My favorite argument comes from http://www.joelonsoftware.com/articles/fog0000000068.html : "Mutt can't remember the name of the Unicode version of the strcpy function. He could look it up, which takes 30 seconds, or he could ask Jeff, which takes 15 seconds. Since he's sitting right next to Jeff, he asks Jeff. Jeff gets distracted and loses 15 minutes of productivity (to save Mutt 15 seconds)." If a question isn't a…

"fucking up their day" This is interesting--I would never feel this strongly about being interrupted unless someone was being overtly rude or annoying. I want to be productive, but I don't feel obligated to plow forward relentlessly hour after hour. If someone breaks my flow to ask a reasonable question, I don't think of it as a big deal. I think true flow is a lot less fragile than many give it credit for. It doesn'…

For me it really depends on what the question is - if I was in the middle of coding and someone asked me a coding related question (especially about whatever we were working on) then that really wouldn't require a context switch.

However, if someone non-technical comes and asks me something (which usually requires a lot of parsing) then that will require a context switch and I will loose a chunk of productivity.

Re: Working at Microsoft – Day to Day Coding

#115

I have interned at Microsoft. No intern has a private office. In fact, many interns do not work in offices at all.

Team/building dependent. On my team, the vast majority of interns get a private office. When they get doubled, they get doubled into a window office.

Re: Working at Microsoft – Day to Day Coding

#116

Earlier quoted context omitted.

And for me, it hilighted some of what I've suspected for a while is wrong with Windows development. I own a small company that handles a lot of end-users' various issues. Although I spend most of my time now coding, I spent more than my fair share of time working one-on-one with individuals and companies that were having problems with their systems. I still spend around 10 hours a week doing it. My primary developmen…

Microsoft has one of the largest and most comprehensive suites of test hardware available. They have rooms with hundreds of computers with varying levels of hardware performance that they test important builds on. They do their job, if the OEMs want to push out a crummy user experience, that's an issue on their testing end.

I'm just going to leave this here: http://www.pcmag.com/article2/0,2817,2361579,00.asp

Re: Working at Microsoft – Day to Day Coding

#117
post #99

Earlier quoted context omitted.

And for me, it hilighted some of what I've suspected for a while is wrong with Windows development. I own a small company that handles a lot of end-users' various issues. Although I spend most of my time now coding, I spent more than my fair share of time working one-on-one with individuals and companies that were having problems with their systems. I still spend around 10 hours a week doing it. My primary developmen…

> How could a Windows developer possibly understand just how frustrating their product is when they spend all of their time using the most powerful hardware available? It is called the "Redmond reality distortion field" http://www.stepto.com/Lists/Posts/Post.aspx?ID=486

And it affects every area of the company, not only developers.

Re: Working at Microsoft – Day to Day Coding

#118
post #22

An assumption? We've been told pretty directly how complicated the process is (often with pride). See the 14 steps which turn a 5 minute code change into a multi-man-month-mammoth: http://blogs.msdn.com/b/ericlippert/archive/2003/10/28/53298... Or the now infamous Windows Shutdown "crapfest": http://moishelettvin.blogspot.com/2006/11/windows-shutdown-c... There's more. And I have no problem with the author stating ho…

Well, you are confusing "complicated" with "difficult". While this is true in general, automation reduces the difficulty of working with a complicated system. For instance, the build system is extremely "complicated". But all you really need to do is to make sure your code compiles, you pass all your local tests, and the BVTs, and you are good to go (oh, and a code review; anyone who objects to a code review is proba…

> automation reduces the difficulty of working with a complicated system.

Effectively preventing it from ever being simplified. Like you said, complexity is evil and has to be addressed because no amount of automation will correct it.

Re: Working at Microsoft – Day to Day Coding

#119

Earlier quoted context omitted.

So what you're saying is that where you work everybody has 2 desktops, 2 laptops and nobody would raise a brow if you wanted another? In my book what Microsoft does is waaaaay beyond "trying to save on toilet paper". The last place I worked having a monitor bigger than 19" was a status simbol. Excuse my patronizing - you are around/under 25 right? Because I have noticed that juniors tend to have this petty fascinatio…

"what you're saying is that where you work everybody has 2 desktops, 2 laptops and nobody would raise a brow if you wanted another?" I work on a 3000 node super computing cluster doing heavy duty Machine Learning and signal processing and a lot of funky (and classified) hardware, and yes, no one would blink if I wanted two more machines (or a 100 more) - as a matter of fact we recently did a million$ + upgrade of the…

Just a slight correction: the towels mentioned here aren't paper towels, but real actual towels. Many MSFT buildings have showers stocked with towels. At one point, the towel service was discontinued as a cost-saving measure. Lots of employees took issue with this and wanted their towels back.

Re: Working at Microsoft – Day to Day Coding

#120

Earlier quoted context omitted.

"fucking up their day" This is interesting--I would never feel this strongly about being interrupted unless someone was being overtly rude or annoying. I want to be productive, but I don't feel obligated to plow forward relentlessly hour after hour. If someone breaks my flow to ask a reasonable question, I don't think of it as a big deal. I think true flow is a lot less fragile than many give it credit for. It doesn'…

For me it really depends on what the question is - if I was in the middle of coding and someone asked me a coding related question (especially about whatever we were working on) then that really wouldn't require a context switch. However, if someone non-technical comes and asks me something (which usually requires a lot of parsing) then that will require a context switch and I will loose a chunk of productivity.

Some of it for me is pure selfishness. I just care a lot more overall about having an interesting day than being productive. An interesting day includes work and solving problems, but it also includes conversation on both technical and random human topics, connecting with people on a deeper than working level, and just plain screwing around. Luckily this all tends to balance out (at least), because maintaining high spirits and an active imagination gives a boost to productivity that's at least as strong as having a private office and slogging away in it stoically every day for 10 hours.
Post reply on HN