4 ms·
From the getting started guide: Here is the first program we wrote: TextWindow.WriteLine("Hello World") It literally translates in the computer’s
by Kilimanjaro 17y ago
From the getting started guide:
Here is the first program we wrote:
TextWindow.WriteLine("Hello World")
It literally translates in the computer’s mind to:
Write Hello World
Hmm, so why not use 'Write Hello World' instead? Why make things complicated?
- csomar 17y agoMSFT tries to introduce kids to programming, not any programming, but Dot Net programming. TextWindow.WriteLine("Hello World") Obj.method(arg) is the Dot Net model. Write Hello World is easier, but is not the Dot Net model. Learning the first, you'll be more inclined to continue in the Microsoft track ;)
- lsb 17y agoIt's a pity, because print "hello world" is valid Perl/Ruby/Python, and the punctuation helps clarify in this case.
- nopassrecover 17y agoMSFT tries to introduce kids to imperative programming because this is what 99% of programmers use. The "MSFT .NET model" also includes F# (printfn "Hello World!") as well as implementations of every language known to man (Ada, Python, Ruby, Lisp, Pascal and dozens of unique languages).
- tel 17y agoI think part of the op's argument was to consider what the best way to learn programming is. Imperative/OO programming is important to learn someday, but it's not necessarily the easiest or best one to start on. So Microsoft's motivations might not be clearly aligned with learning. Should or shouldn't they be?
- nopassrecover 17y agoPerhaps I was misguided by the insinuation that Microsoft is behind some imperative language conspiracy. In any case, 99% of the code that runs this world was written in an imperative language and most universities (I believe MIT is an exception with Scheme?) will teach an imperative language before any other. It may not be the easiest (I'm biased, my mind mapped instantly) or best to start with, but it certainly is the one most commonly started with and most commonly used. I'm pretty sure Microsoft's motivations are simply to make the best development environment they can because at the end of the day that's what developers will use meaning more server licence purchases. This is evidenced by the relative freedom their dev techs get and by the insane amount of programming genius they have hired in this area.
- tel 17y agoI think you nailed it: I'm pretty sure Microsoft's motivations are simply to make the best development environment they can. But children aren't developers (yet) and learning to program isn't necessarily easiest or best using imperative languages. It's not judgment, it's a difference of goals.
- sukuriant 17y agoMore specifically, that's just object oriented programming. Albeit with static objects. Ever written in Java? System.out.println("Hello world"); Don't bash or insinuate things about Microsoft just because they happen to use the same wording that their Console object uses. Oh by the way, which makes more sense in that context: "Console.WriteLine()"? or "TextWindow.WriteLine()"? ... hm... it looks like a text window to me, so I'm gonna have to go for the second one.
- rbanffy 17y agoThe way I learned OOP it would be Window print "Hello World" or something like it. OOP is so much more than object-dot-methot...
- nopassrecover 17y agoSystem (system object) out (output stream of the system object) println (method of the output stream object of the system object that prints a string to the output stream followed by a newline character). How is that not OOP?