Slashdot Mirror


Does Visual Studio Rot the Brain?

duffbeer703 writes "As a UNIX guy dragged kicking and screaming into the Windows world, I've never really been able to enjoy Windows programming. Charles Petzold, who is a long-time developer for DOS & Windows really laid out the reasons for me at the NYC .NET Dev group. Visual Studio and Microsoft tools force you to adopt programming techniques designed around implementation speed, not understanding or quality."

11 of 790 comments (clear)

  1. Microsoft DEVELOPER tools are good by Work+Account · · Score: 5, Insightful

    I don't like MSFT any more than the next guy, but they do a couple things right:

    1) Hardware (keyboards, mice, ...)
    2) Developer tools

    I find Microsoft tools like VS.net and even some of their languages (C#) to be surprisingly good.

    Granted, I prefer Open Source most of the time, but when forced to use certain Microsoft things like Natural Keyboards or Visual Studio, I kind of like them.

    I'm sure I'll get modded down for supporting them, but hey I'm just being honest.

    --

    If you "get" pointers add me as a friend (116)!
    1. Re:Microsoft DEVELOPER tools are good by superdoo · · Score: 5, Insightful

      And this post surely will not be modded insightful...

  2. Does it? Not sure. But from experience I can say: by Anonymous+Crowhead · · Score: 5, Insightful

    Beware the coder who can't for the life of him code without it.

  3. Death to Code Generation by dubl-u · · Score: 5, Insightful

    I often end up reviewing or working on code from other people, and I couldn't agree more about his dislike of generated code.

    Note that there are two sorts: the kind you never edit and the kind you have to edit. I love compilers, as they generate machine code so well that you never should have to look at it. But programs that generate source code or, even worse, documentation, are things I revile. They let an amateur get quick results, but at a drastic reduction in long-term maintainability. As Martin Fowler says, "Any fool can write code that a computer can understand. Good programmers write code that humans can understand."

  4. Apples and Oranges by mustafap · · Score: 5, Insightful

    You seem to be comparing 'Playing with Visual Studio' against 'Taking programming classes'.

    Visual Studio is not a teaching aid. It's (just about) a programming toolkit with some bolted on frameworks. You will create rubbish if you do not know what you are doing. Try thowing eclipse at him, he would have the same problem.

    Having said that, I hate having to program with Visual Studio. It's like a great big book of usefull spells, but they are written in invisble ink :o)

    --
    Open Source Drum Kit, LPLC deve board - mjhdesigns.com
  5. Huh? by Comatose51 · · Score: 5, Insightful

    Got my degree in CS and programmed almost entirely in *nix and using Emacs. Did my senior thesis using C# and VS .Net. Don't really notice anything different really... The only difference is that I use the .Net library which gives me a lot of prebuilt stuff. VS.Net is not all that different from what Emacs was for me. They both accomplish one thing and that's to save/write my code to a file. I fail to see what was forced on anyone. Programming, the actual process of writing the code is VERY simple. All you need is a text editor and something to compile it afterwards. So I don't see how any tool you use to do that can force you to do anything. If I have bad techniques or habits, that's my fault. If nothing else, VS.Net has made commenting and generating documentation a lot easier. My programming technique isn't something I'm going to blame/give credit to MSFT--not this one for sure.

    --
    EvilCON - Made Famous by /.
  6. Re:yes, it does rot your brain, or at least habits by 2short · · Score: 5, Insightful

    "While I liked his creativity, it was evident his depth of grasp of the workings of programming were as deep as VS allowed him. Cute screens with cute input buttons and cute input boxes. But nothing in the sense of real code."

    As deep as VS "allowed" him? WTF are you talking about? I've used VS every workday for 7 years. I gather it has some sort of functions for making cute screens with buttons on them? I wouldn't know, I've never written a gui app.

    He's a kid. He wanted to make something he thought was cool; and he did, good for him. It makes sense he went for the drag-together an EZ-GUI stuff; He made something that looked cool and didn't do much. I'm guessing "looks cool" was his design target.

    Heck, I first got into programing (time to date myself) writing BASIC programs to draw maps of D&D dungeons. 99% of what I learned in my first months of coding was the details of the particular extended ascii set my computer suported. I learned useless trivia and wrote lousy code in pusuit of eye-candy. But eventually, I wanted to move a marker around the dungeon, then I wanted to keep track of what was in different rooms. Today I make a fairly nice living writing complex C++ without a bit of eye-candy anywhere near it.

    In short, leave the kid alone. Soon enough he'll want those cute buttons to do real stuff. If adults can be kept from eliminating his fun by insisting that "real" programs can't look good, he'll be a crackerjack coder in no time.

  7. Re:yes, it does rot your brain, or at least habits by Sebastopol · · Score: 5, Insightful

    I think that's a dangerous culture to cultivate in an IT universe.

    Oh Jeez, get over yourself.

    You've completely ignored the subtleties of a choice made by an intelligent mind when presented with different ways to do things. I find it fascinating he went right to the GUI and started developing code that way. Instead, you're peeved he didn't start figuring out what include files to use to do a printf() to a console.

    Maybe the path he blazes will be the next paradigm. History is full of people making huge leaps in technology by finding easier ways to do things that interested them, but were against the norm.

    Viewed from this perspective, I think you should step off and let him learn what he wants how he wants, and not in a way that pleases you.

    --
    https://www.accountkiller.com/removal-requested
  8. Re:who's fault is that? by TWX · · Score: 5, Insightful

    "Frankly, 'drag some buttons onto a gui and get an app that looks cool and does nothing' is EXACTLY where I would start a child today."

    Then start them out with "The Incredible Machine" or some other mousetrap-alike where the objective is to build the most complex functioning thing possible with weird widgets provided to the operator. You give them a taste for making something without giving them any kind of tool that will force bad habits upon them. If they go off and end up using Visual Studio for GUI programming, well, that will happen to some, but others may never see the GUI programming stuff and go straight into building complex machines using letters and syntax instead of using drag and drop.

    I had other vast, varied tools at my disposal. I had a LOGO program. I had ROM Basic, GW Basic, Quick Basic, and Power Basic. I had Borland C/C++ for DOS. I had a Texas Instruments calculator and a graphlink cable. I had gcc. I don't doubt that my Basic programming experience caused problems for when I tried to move on to C, but at least I wasn't thinking that making fancy dialogue boxes was programming compared to writing the back end of something.

    I started with MS-DOS, but Microsoft's real hard push for their GUI hit in 1993, when I was thirteen. I found that after years of GUI, when I started playing with programming, being able to control things that I had done myself through the command line was insanely cool. It was like opening the hood of a car or taking the case off of a complex electronic device. I felt like I was gaining more mastery over the computer itself, rather than just using it. I'd suspect that many kids that are the 'take it apart and find out why' type would feel similarly.

    --
    Do not look into laser with remaining eye.
  9. Re:yes, it does rot your brain, or at least habits by Z34107 · · Score: 5, Insightful

    Everyone here seems to be under the impression that Visual Studio hides the source/nuts and bolts/inner workings from you. It doesn't. You can program assembly and K&R C if you so wish. (Using Visual Basic/J++/C# is a different thing, but that's more of an argument against those languages than Visual Studio.)

    Granted, you can draw a dialog box by hand, but you can also create that dialog by assigning an HWND to point to the result of a CreateWindowEx(). You can also manually code your own .rc resource scripts and use the MAKEINTRESOURCE macro. Do whatever makes you all warm and fuzzy inside, but don't say Visual Studio is t3h n00b! shift+1

    --
    DATABASE WOW WOW
  10. Re:C complications by I+Like+Pudding · · Score: 5, Insightful

    Perl isn't "complicated." It's just that C is retarded. I mean, really, in the "real world," you will never have to make a starry background. Perl (and especially Ruby) allow the perfect mixture of very high- and high-level elements. In fact, in Ruby, you can mix in modules and polymorphically redefine derived classes in the same function if you were so inclined.

    And, *no*, you do not have to understand anything about rendering black or whatever. No Fourier transforms or 11-dimension existentialism either. (The only "strings" for you are scalars!)

    Anyway, your code in Perl:
    perl -e'while(){print int rand 99.99?" ":"."}'

    Written in a term, by the way.