Live data from Hacker News

How Microsoft is changing the programming world

programmingzen.com

41–50 of 79 posts

Re: How Microsoft is changing the programming world

#41

The other day I was browsing through computer books. One, on LINQ for VB, seemed very enthusiastic on this radical new technology Microsoft had brought out -- and the example they used to illustrate this was something Smalltalk had 30 years ago. Incidently, Smalltalk isn't normally considered a functional programming language (do doubt because object orientation overshadowed it) but with its closures (called blocks)…

Which book?

This one: http://www.amazon.com/Pro-LINQ-Language-Integrated-Query/dp/...

The example on page 3 was:

   Dim greetings() As String = {"hello world", "hello LINQ", "hello Apress"}

   Dim items = _
     From s In greetings _
     Where s.EndsWith("LINQ") _
     Select s
Which In Smalltalk would be:

   greetings := #('hello world', 'hello LINQ', 'hello Apress').
   items := greetings select: [:s | s endsWith: 'LINQ'].
Needless to say I was not completely bowled over by this stunning Microsoft innovation.

Re: How Microsoft is changing the programming world

#42
post #29

Earlier quoted context omitted.

You're missing the age of Dick. If Dick is 18, sure, it's excusable. If Dick has been programming for 30 years, his lack of knowledge isn't so excusable (assuming one's goal is to amass 'knowledge'). So many Kids These Days feel the entirety of Computer Science and Programming has been developed since 2000. I'm pretty sure LISP and functional programming existed in literature, learning, and practice before early 2000…

Unless your an encyclopedia or going on Jeopardy! I don't think that amassing knowledge is a very interesting goal. To each their own, but I think creation is a lot better than amassing knowledge. And to be honest, there was little practice in Lisp before 2000... and frankly little after 2000.

Creation without understanding is shallow. You don't just learn the technique of playing piano and then crank out beautiful symphonies. You don't learn how to draw a blueprint and create world-class architecture. You don't memorize the times table and start doing advanced physics calculations. Knowledge of the history and state of the art is a huge component in creating great things.

And the statement that there's "little practice" in Lisp is a statement about the current mindset of most programmers, not about the language itself. Whether it's useful is orthogonal to whether people use it.

Re: How Microsoft is changing the programming world

#43
post #42

Earlier quoted context omitted.

Unless your an encyclopedia or going on Jeopardy! I don't think that amassing knowledge is a very interesting goal. To each their own, but I think creation is a lot better than amassing knowledge. And to be honest, there was little practice in Lisp before 2000... and frankly little after 2000.

Creation without understanding is shallow. You don't just learn the technique of playing piano and then crank out beautiful symphonies. You don't learn how to draw a blueprint and create world-class architecture. You don't memorize the times table and start doing advanced physics calculations. Knowledge of the history and state of the art is a huge component in creating great things. And the statement that there's "l…

Understanding necessary for creation is... well... necessary. But "amassing knowledge" is simply amassing knowledge. I can amass knowledge all day long, but if I don't understand or create it really is simply mental masturbation.

And my statement about Lisp was just about the state of the world. It's a fine language, but we shouldn't pretend that its used more than it is. Actually in teaching it is used a fair bit, and teaching is practice of a sort.

Re: How Microsoft is changing the programming world

#44
post #31
post #16

Wow, I have to pipe up here. The commenters so far are completely missing the point of this article. The author is making two observations, both of which are quite correct in my experience. First, the mainstream MS developer universe -- the overwhelming majority of it -- is parochial. People learn new things when MS release some new technology and not before. (I'm talking about the smart ones here. The mediocre ones…

Well, I'd say that MS-only developers ignore Linux because it's not directly relevant to their day-to-day work. They just want to do their jobs with the tools they know then go home (and there's nothing wrong with that). On the flipside, Linux-only developers actively avoid Windows on ideological grounds. The latter is where this article is coming from. You can't really say a LAMP developer is any more cutting edge t…

"Simon Peyton-Jones is another heavy hitter at MSR."

If F# does well, I have to wonder if a sanctioned dialect of Haskell for the CLR is in the making. The only thing giving me doubt is that I can't think up a business case for it. OCaml has an audience in the financial world which gives MS a business case for F#. Having F# already, what would an H# give them?

Re: How Microsoft is changing the programming world

#45

This article reeks of bitterness. I find it curious that he seems to knock 'Dick' for not being well-rounded enough for his tastes. If his company doesn't pay him to develop Linux products, why on earth would he learn about developing for Linux? Or other languages. Or tools. I'm all for picking up new languages (learning PHP changed some of my approaches to C++), but there's a lot to be said for sticking to your tool…

> If his company doesn't pay him to develop Linux products, why on earth would he learn about developing for Linux? If programming is just a job, and you don't care about it when you leave the workplace, that's a reasonable attitude. If, OTOH, programming is something you care about and that actually interests you (which is true of nearly all good programmers), it's an attitude you won't have.

> If, OTOH, programming is something you care about and that

> actually interests you (which is true of nearly all good

> programmers), it's an attitude you won't have.

Whoa! So what you're saying is that if I don't know the recent trends in functional languages, I don't care about programming? Seriously?

Do you see the problem here? This guy is laying out arbitrary things which appear in his domain of knowledge, and discounting others for not having the exact same set of experiences. I see this a lot among software people.

Sure, broadening your horizons gives you new insights, but there is a lot to be said for mastery and focus.

Additionally, why is it that there is an expectation in software that my job has to also be my hobby, or else I don't care and/or I'm no good? Do you think mechanical engineers working for an auto manufacturer are expected to be at home designing bicycles, lest they be thought of as not caring?

Re: How Microsoft is changing the programming world

#46
post #40

This article reeks of bitterness. I find it curious that he seems to knock 'Dick' for not being well-rounded enough for his tastes. If his company doesn't pay him to develop Linux products, why on earth would he learn about developing for Linux? Or other languages. Or tools. I'm all for picking up new languages (learning PHP changed some of my approaches to C++), but there's a lot to be said for sticking to your tool…

> If his company doesn't pay him to develop Linux products, why on earth would he learn about developing for Linux? Or other languages. Or tools. Because really good programmers love to learn new tricks. Because learning new tricks will make them good programmers. You admit learning about PHP made you a better C++ programmer. A couple years back, on a mailing list, a novice asked what she should learn during her vaca…

> Because really good programmers love to learn new tricks.

Right. And because you don't know the particular tricks I learned, it indicates some sort of deficiency in your knowledge or character. Hmm... Nah.

> You admit learning about PHP made you a better C++ > programmer.

Uh. I learned PHP while coding for a company. No way I would be at home learning PHP for 'fun'. I would rather be out cycling, rock climbing, or being with friends.

> a novice asked

You're effectively talking about a student. Students get a sampling of a lot of ideas. Experienced software engineers are expected to have mastery in one or more areas.

> And that's why it's important for Dick to learn to develop for Linux.

That's an absurd conclusion. Perhaps, "that's why learning Linux may be important for Dick." There are a lot of things in the world to learn. Perhaps Dick will benefit vastly more from learning some other platform, API, language, or entirely unrelated skill.

My point is that this guy comes off as superior and snarky because the MS plebes are discovering what he's known for rh so long. That kind of attitude is corrosive, dismissive, and unproductive.

Re: How Microsoft is changing the programming world

#47
post #16

Wow, I have to pipe up here. The commenters so far are completely missing the point of this article. The author is making two observations, both of which are quite correct in my experience. First, the mainstream MS developer universe -- the overwhelming majority of it -- is parochial. People learn new things when MS release some new technology and not before. (I'm talking about the smart ones here. The mediocre ones…

Here's the deal - I don't like being generalized as some sort of mind-slave to Microsoft's brain trust just because I prefer Visual Studio and C# over Eclipse and Java. My choice of development platforms and tools doesn't mean that I'm inherently less curious about what else is available to me, and the author's generalization and yours would seem to indicate otherwise. What you're reading in the HN comments are the o…

Here's the deal, that's how generalizations work.

Re: How Microsoft is changing the programming world

#48
post #10

Earlier quoted context omitted.

> Visual Studio programmers that can write a makefile are not many I'm curious why you think it would be important or valuable for a VS developer to write makefiles. Your subsequent statements seem to indicate that you believe it allowed MS to put more project complexity, hidden by the IDE. I don't particularly see anything wrong with that, but maybe I'm misunderstanding you. My view on this is: I write code to creat…

You write code to make sellable products and every avoidable complexity, every thing you don't understand in your code or build system will eventually come back as increased cost when you need to extend, adapt it to the next Microsoft OS or simply debug it in an environment that looks like what your clients use. Of you don't understand your build system, you really don't know what you are shippin.

> every thing you don't understand in your code or build system will eventually come back as increased cost

I agree with this. But what has that got to do with Visual Studio and makefiles?

Is your point that Visual Studio is hard to use, somehow? I've created quite complex build systems using Visual Studio and scripting. I'll admit I've had rough patches where it's been hard to figure out where a setting might be, or where I forget to set things consistently (e.g. library inclusion across build targets), but it's pretty full-featured and reasonably easy to grasp. It strikes me as consistent, once you learn the basics.

Perhaps your point is that makefiles are easier to review "at a glance"? I don't really agree with that, since it depends entirely on one's competency with makefiles versus Visual Studio project/solution configuration.

I could be missing something entirely, though, so I welcome any additional take on it.

Re: How Microsoft is changing the programming world

#49

Earlier quoted context omitted.

Which book?

This one: http://www.amazon.com/Pro-LINQ-Language-Integrated-Query/dp/... The example on page 3 was: Dim greetings() As String = {"hello world", "hello LINQ", "hello Apress"} Dim items = _ From s In greetings _ Where s.EndsWith("LINQ") _ Select s Which In Smalltalk would be: greetings := #('hello world', 'hello LINQ', 'hello Apress'). items := greetings select: [:s | s endsWith: 'LINQ']. Needless to say I was not com…

I don't think this one line is exactly where all the innovation is. But it is representative of getting your toe in the water.

But this is the typical argument I hear from people about anything. "Hey, that was a good movie"... "Dude that plot is basically a derivative of Hamlet with a twist of Revelation, chapter 3. Nothing really new there". Or the most standard, "Actually you can do that with Lisp." I'm sure you probably know that everything in that Linq query is pure syntatic sugar. Not runtime changes needed.

But with all that said, I'm sure MS didn't do this to be "innovative". At least I hope not. I assume they did it to make the lives of developers easier. That's the real test, not if no other language ever implemented the feature.

Re: How Microsoft is changing the programming world

#50
post #38
post #17

Earlier quoted context omitted.

Not to mention the fact that Microsoft is a customer oriented company, they are aware of what the enterprise is asking for. Somebody knowing 20 languages does not necessarily make a good employee. What the enterprise wants is exactly what VS has been giving them for the past years. Sure, as the enterprise is escaping IBM-isation of the workforce you can see a bit of a shift in perspective (evidenced by changes in VS)…

The real question here is what kind of programmer wants to be limited to whatever "the enterprise" asks for.

Probably the one making consistent money off "the enterprise".

Mind you, I don't even know what the enterprise is. All I know is that I've shipped a lot of software, and really enjoy using Visual Studio.

Post reply on HN