Programming: Notepad or Visual?

Even though I’m not a programmer, I still know that while some programmers like the idea of graphical programming, whereas others shun the concept completely, opting for a more hands-on approach. While Microsoft is quite active in the field of graphical programming, the company’s own high-level coders aren’t very keen on the idea.

During a round table discussion as Microsoft’s Professional Developers Conference, several of the company’s own high-level programmers told how they prefer the old-fashioned way of programming – namely, using a plain and simple text editor.

“Do people want to draw pictures [to program]? Sure, I guess. But if you grew up programming when I did, you did it in text. And I think we lose that at our peril,” said Don Box, a Microsoft Distinguished Engineer “I will fight you if you try to take away my text editor.”

Jeffrey Snover, the man behind PowerShell, more or less believes that visual programming tools are useless in both complex as well as simple situations. “Graphical programming environments are usable when they are useless, but unusable when they would be useful,” Snover said, “When there are five things on the screen, you can burp that out [in text]. But when there are 500 things, [graphical programming] is completely unusable. You zoom in and zoom out and you lose all context. I think it’s just smokin’ dope.”

The gentlemen also touched on the concept of managed code. One of them believes that writing code as optimsed as possible for the machine it runs on (i.e., the opposite of managed code) will become popular again because chip makers will start to hit walls when it comes to making their products faster. The solution, then, is for programmers to once again – like it used to be in the good old days – optimise their code like crazy to improve speed, instead of relying on the next round of chips from AMD and Intel to speed things up.

“I think we have maybe five to 10 years left [with Moore’s Law],” said Herb Sutter, lead designer of Microsoft’s C++/CLI programming language, “Optimizations will get very, very sexy again, when people realize how we pay for abstractions.”

As someone who isn’t a programmer, I can mostly nod and smile politely whenever subjects like this come up. However, you in the audience over there, there are a lot of programmers among you. How do you feel about these things? Are you a die-hard Notepad guru, or do you use more visual programming tools? And what are your thoughts on code optimisation? Will it become popular again?

94 Comments

  1. 2009-11-29 11:53 pm
    • 2009-11-30 1:13 am
      • 2009-11-30 5:18 am
        • 2009-11-30 11:06 am
          • 2009-11-30 12:33 pm
        • 2009-11-30 3:07 pm
      • 2009-11-30 12:17 pm
      • 2009-11-30 2:15 pm
        • 2009-12-01 2:52 pm
          • 2009-12-02 9:05 am
        • 2009-12-02 9:03 am
    • 2009-11-30 2:02 pm
  2. 2009-11-30 12:17 am
    • 2009-11-30 5:20 am
      • 2009-11-30 9:45 am
        • 2009-11-30 10:08 am
          • 2009-11-30 11:33 am
          • 2009-12-01 2:58 pm
          • 2009-12-01 5:21 pm
          • 2009-11-30 12:16 pm
          • 2009-11-30 12:42 pm
          • 2009-11-30 3:09 pm
          • 2009-11-30 8:36 pm
          • 2009-11-30 3:15 pm
        • 2009-11-30 1:23 pm
        • 2009-11-30 1:50 pm
        • 2009-11-30 3:57 pm
          • 2009-11-30 11:26 pm
        • 2009-11-30 6:12 pm
    • 2009-11-30 9:41 am
  3. 2009-11-30 12:24 am
  4. 2009-11-30 12:43 am
    • 2009-11-30 5:23 am
    • 2009-11-30 7:45 pm
  5. 2009-11-30 12:59 am
    • 2009-11-30 1:03 am
      • 2009-11-30 9:35 am
      • 2009-11-30 3:35 pm
        • 2009-12-01 3:00 am
      • 2009-11-30 3:58 pm
    • 2009-11-30 1:50 am
      • 2009-11-30 3:50 am
      • 2009-11-30 8:01 am
  6. 2009-11-30 1:10 am
    • 2009-11-30 3:55 am
    • 2009-11-30 4:50 am
    • 2009-11-30 5:25 am
      • 2009-11-30 8:16 am
  7. 2009-11-30 1:42 am
    • 2009-11-30 5:59 am
  8. 2009-11-30 1:48 am
  9. 2009-11-30 2:09 am
    • 2009-11-30 4:32 pm
  10. 2009-11-30 2:13 am
  11. 2009-11-30 2:23 am
  12. 2009-11-30 2:35 am
  13. 2009-11-30 2:39 am
    • 2009-11-30 11:59 am
      • 2009-12-01 6:19 pm
        • 2009-12-04 11:39 am
  14. 2009-11-30 3:46 am
  15. 2009-11-30 4:12 am
  16. 2009-11-30 4:22 am
  17. 2009-11-30 5:34 am
    • 2009-11-30 12:04 pm
      • 2009-11-30 1:26 pm
  18. 2009-11-30 6:04 am
    • 2009-11-30 7:39 am
  19. 2009-11-30 6:40 am
    • 2009-11-30 7:55 am
  20. 2009-11-30 7:39 am
  21. 2009-11-30 8:24 am
  22. 2009-11-30 8:39 am
    • 2009-11-30 9:42 am
  23. 2009-11-30 9:21 am
  24. 2009-11-30 9:54 am
  25. 2009-11-30 12:30 pm
  26. 2009-11-30 1:32 pm
    • 2009-11-30 2:50 pm
  27. 2009-11-30 2:38 pm
    • 2009-11-30 2:53 pm
  28. 2009-11-30 4:00 pm
    • 2009-11-30 4:20 pm
      • 2009-11-30 9:06 pm
  29. 2009-11-30 4:04 pm
  30. 2009-11-30 4:42 pm
  31. 2009-11-30 4:56 pm
    • 2009-11-30 7:37 pm
  32. 2009-11-30 5:31 pm
  33. 2009-11-30 7:24 pm
  34. 2009-11-30 7:35 pm
  35. 2009-12-01 3:19 am
  36. 2009-12-01 5:38 am
  37. 2009-12-02 6:14 pm