Slashdot Mirror


The History of Visual Development Environments

Esther Schindler writes "There was a time when programs were written in text editors. And when competition between C++ vendors was actually fierce. Step into the time travel machine as Andy Patrizio revisits the evolution and impact of the visual development metaphor. 'Visual development in its earliest stages was limited by what the PC could do. But for the IBM PC in the early 1980s, with its single-tasking operating system and 8- or 16-bit hardware, the previous software development process was text edit, compile, write down the errors, and debug with your eyes.' Where do you start? 'While TurboPascal launched the idea of an integrated development environment, [Jeff] Duntemann credits Microsoft's Visual Basic (VB), launched in 1991, with being the first real IDE.'... And yes, there's plenty more." A comment attached to the story lists two IDEs that preceded VB; can you name others?

25 of 181 comments (clear)

  1. VB? by Lumpy · · Score: 5, Funny

    Making managers that are "handy" think they are programmers cince 1992...

    --
    Do not look at laser with remaining good eye.
    1. Re:VB? by cultiv8 · · Score: 4, Funny
      --
      sysadmins and parents of newborns get the same amount of sleep.
  2. Quick C by Microsoft by Anonymous Coward · · Score: 4, Interesting

    Had a block-graphics GUI, mouse support and a visual debugger

    Can't remember the date, but certainly pre Windows 3.1

  3. QuickBasic by adonoman · · Score: 3, Informative

    QuickBasic was already at v4.5 in 1988 - 3 years before Visual Basic.

  4. VMS and Atari ST development tools by LizardKing · · Score: 4, Interesting

    That's a very Microsoft-centric article, although it does have a passing mention of Smalltalk. Earliest IDE I ever used was the toolset on VMS, which included editor, compiler, debugger and profiler - they were integrated via the shell. If that doesn't qualify, then there was DevPac for assembler and a C development package (Lattice C I think) on my Atari ST, which inclued integrated tools that were far more sophisticated than what was later offered by Turbo Pascal.

    1. Re:VMS and Atari ST development tools by braeldiil · · Score: 2

      Considering Turbo Pascal came out two years before the Atari ST, your timeline is quite a bit off.

  5. Text editors are still around. by Viol8 · · Score: 5, Insightful

    "There was a time when programs were written in text editors."

    Yeah , 5 minutes ago when I finished updating some code.

    Plenty of unix C/C++/script/python coders still use vi and emacs. Just because IDEs rule the roost in Windows and Java development, don't assume every coder users or even requires them.

    1. Re:Text editors are still around. by _anomaly_ · · Score: 3, Insightful

      I disagree. The very best are very good at determining the best tool for the job.
      I'd absolutely hate to attempt to build a database application supposed to run in a windowing environment, with emphasis on UI/user experience, using any of the best text editors.

      --
      "I have no special gift, I am only passionately curious." - Albert Einstein
    2. Re:Text editors are still around. by SerpentMage · · Score: 2

      Screw YOU! Seriously I was around coding with QuickC, Quick Basic, EMACS, VI (before it became VIM). You know the days when moving the cursor meant using the keyboard not that wussy easy reference called the arrow keys.

      I am extremely happy about having code wizards because I remember the days we had to use printf's for debugging as the debugger meant going down to assembly. It was not pretty and it was downright difficult to code, debug, and run. Sure I got hair on my chest, but I would gladly trade it in for actually getting things done!

      I don't code in C and C++ anymore because I actually like to get my program to work. I am not dissing C++ as I am telling my brother to learn C++ as his first programming language. For him C++ is excellent because he works with robots, and industrial automation and in that context Java, and non low level languages can have problems. But for application programming its all about Java, C#, etc...

      --

      "You can't make a race horse of a pig"
      "No," said Samuel, "but you can make very fast pig"
    3. Re:Text editors are still around. by Motard · · Score: 4, Insightful

      No, because I'd be wasting time reinventing things that have no business being reinvented. Using common controls such as those in the VCL encourage code re-use. While you are (re)designing a declarative language, I will be implementing more features.

      And there's a reason why IDE's tend to be tightly bound to a platform. All of the cross platform solutions turned out to be inferior because they were limited to the lowest common denominator. Applications that aren't so limited work better because they take atvantage of all the features of the environment and fit better within it. This is why Apple limited iOS apps to native apps.

    4. Re:Text editors are still around. by Darinbob · · Score: 4, Funny

      Well, I used to use "cat > a.out" but the problem is that too many terminals aren't fully 8-bit capable. So I got lazy in my old age and use a hex editor instead. I know it's a bit simple minded, but since I can do all hex digits on a numeric keypad with a single hand, I've discovered that I can use my other hand to pet the cat at the same time.

  6. Borland ObjectVision, IBM VisualAge by alter-memo · · Score: 2

    I remember ObjectVision as an interesting example of visual programming by configuring blocks. Unfortunately it was very limited, and one reached the boundaries quite fast. IBM VisualAge is another story. I cannot remember a more complete, truer IDE than this. I used it mainly in Smalltalk and Java, but other versions for C/C++, Basic, and even COBOL existed. But it really shined in Smalltalk, it native environment. VisualAge allowed to put the pieces of a program together graphically, autogenerate code, switch to code and extend it programatically, keep version control of every time you push save, debug in place.... it was an amazing product. I am glad many features where migrated to Eclipse, but I miss the overall experience of putting a visual prototype together in one afternoon.

  7. Microsoft did not create VB... by jfbilodeau · · Score: 2

    VB was created by a company named Tripod and later purchased by MS.

    --
    Goodbye Slashdot. You've changed.
    1. Re:Microsoft did not create VB... by angel'o'sphere · · Score: 2

      So the Tripods are behind it? No wonder original VB was sucha mess. They thrieved for world domination! Or even destruction!

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  8. Hypercard by Spectre · · Score: 4, Insightful

    When I think of "visual programming" the first thing I think of is Hypercard ... I was at uni when that came out, so late 80's?

    --
    "Flame away, I wear asbestos underwear"
    1. Re:Hypercard by DdJ · · Score: 2

      Yeup, the first two I used were HyperCard on the Macintosh in 1987 or so, and "Interface Builder" on prerelease NeXT machines in 1989.

      "Interface Builder" is why NeXT systems were so popular with Wall Street for a long time. It was amazing. And the IDE for iPhone development is a direct descendant of that first version I used, and to this day has a lot in common with it.

      (Yes, I really was programming a NeXT in 1989. I was at Carnegie Mellon at the time, where the Mach kernel was developed, so we had lots of prerelease access to them. My first NeXT Cube was running version 0.8 of the OS.)

    2. Re:Hypercard by Spectre · · Score: 2

      ... so the first thing I think of is a DOS program found lurking in the darkest recesses on a Lab machine, basically doodle a flowchart, and it took that and dumped out C, Basic, Fortran or Pascal code (there may have been other languages, I cant remember.) ...

      Never heard of that, but I can see where that would be rather useful in teaching a computing-101-type of class ... show the parallels between different languages and why a non-specific charting tool is a useful abstraction. Awesome!

      --
      "Flame away, I wear asbestos underwear"
  9. Define IDE by squiggleslash · · Score: 3, Insightful

    ...because the ZX80 (and ZX81 and Sinclair Spectrum, which used more advanced versions of the same BASIC) had a visual editor with keywords auto-completed and dynamic syntax checking back in 1980. ZX BASIC was even windowed (on a 32x24 character screen!) with the upper window being for program I/O and/or viewing the program code, the lower for entering commands, seeing status information, and editing lines.

    The thing about an IDE is that it's an obvious concept and pretty much anyone who's tried to make programming more user friendly has implemented such a thing. True, NetBeans looks nothing like the ZX80 or EMACS, but then Java in 2013 looks nothing like ZX BASIC either - as languages have evolved and projects have become more complex, the tools to manage them have needed to become more complex and manage more concepts.

    What's funny is that we bothered giving the concept a name at an arbitrary cut-off point in the development of development environments.

    --
    You are not alone. This is not normal. None of this is normal.
  10. I wrote my own "IDE" on MSDOS 3 by alecclews · · Score: 2

    Back in the day I used MS C/C++ 5.1 (one of their finer products IMHO). This was classical command line suite with compiler, linker, make and a nice editor (called me I think).

    Based on an idea in .EXE magazine I wrote a special make file and a batch script that:

    1) Run the special make file to generate a new temp batch script to compile the code (only one file) as needed
    2) Ran the new temp batch file
    3) Saved the error report if present
    4) If the error report was present then parse the errors and source code to the editor for correction
    5) Jump to step 1 until all files were made

    It was so bloody arcane so that as little was running in memory at one. It was either make, the compiler or the editor using the precious 640K at at time. But it certainly felt a lit faster in the compile/edit/cycle once I got it working.

  11. Seriously? by 0xdeadbeef · · Score: 4, Informative

    While TurboPascal launched the idea of an integrated development environment, [Jeff] Duntemann credits Microsoft's Visual Basic (VB), launched in 1991, with being the first real IDE

    Which makes him a retard. Form designers are not the primary component of IDEs, nor are they necessary to be called an IDE.

  12. Earlier IDEs by dpbsmith · · Score: 3, Informative

    Without even trying to do any historic digging:

    Asymetrix Toolbook shipped "with" Windows well before VB. In fact the company I worked for foolishly assumed it was "part of" Windows. Toolbook, in turn, was not exactly a knockoff of HyperCard, but was certainly a member of the same genre.

    LabView for the Macintosh shipped in 1986, and not only still exists but has a very solid niche in some circles. LabView is such a pure visual IDE that there are not visible lines of code as such; it is all wiring diagrams.

    Bill Budge's 1983 Pinball Construction Set, for the Apple ][ and Atari, was certainly an IDE, although for a restricted class of applications.

    Incidentally, it seems to me that the later incarnations of Visual Studio are considerably less "integrated" than the original Visual Basic was. Visual Studio has the feeling to me of being no more "integrated" than, say, Borland C++ or the (1985) MacPascal. Unlike VB, it just had a fairly crude resource-editor-like "drawing" environment. It feels OK when you're creating things for the first time, but the visual objects do not really "contain" code--they have a very loose and fragile connection to the code associated with them.

  13. Re:Smalltalk 80 (72?) by Fubari · · Score: 2
    Operator precedence was your primary issue with Smalltalk?
    I remember reading Alan Kay's starting goals with Smalltalk was to have a language syntax that would fit on a 3x5 index card. Instead wasting brain cells on that abortion known as C++ operator precedence (Java, C#, C aren't much better btw), you have a single rule that works everywhere: left to right. That's it.

    Let's tie this back to the Fine Article: Checking in at 1979 (I don't see this in the article), I'd say Smalltalk has a good shot at being the first IDE:

    Steve Jobs on Smalltalk
    Steve Jobs had co-founded Apple Computer in 1976. The first popular personal computer, the Apple 2, was a hit - and made Steve Jobs one of the biggest names of a brand-new industry.
    At the height of Apple's early success in December 1979, Jobs, then all of 24, had a privileged invitation to visit Xerox Parc. (emphasis added)

    This is what Steve had to say about his visit to Xerox Parc.
    "And they showed me really three things.
    But I was so blinded by the first one I didn't even really see the other two.
    One of the things they showed me was object orienting programming they showed me that but I didn't even see that.
    The other one they showed me was a networked computer system...they had over a hundred Alto computers all networked using email etc., etc., I didn't even see that.
    I was so blinded by the first thing they showed me which was the graphical user interface. I thought it was the best thing I'd ever seen in my life. Now remember it was very flawed, what we saw was incomplete, they'd done a bunch of things wrong. But we didn't know that at the time but still though they had the germ of the idea was there and they'd done it very well and within you know ten minutes it was obvious to me that all computers would work like this some day."

    You say we've moved "beyond" Smalltalk ?
    Away from it, sure.
    But beyond? Unless you're Smalltalk fluent, how would you know?
    I'm not saying that to be rude: please consider what Paul Graham said about how programmers rate languages; he expressed this idea very well in Beating The Averages: here is the relevant excerpt:

    Programmers get very attached to their favorite languages, and I don't want to hurt anyone's feelings, so to explain this point I'm going to use a hypothetical language called Blub. Blub falls right in the middle of the abstractness continuum. It is not the most powerful language, but it is more powerful than Cobol or machine language.

    And in fact, our hypothetical Blub programmer wouldn't use either of them. Of course he wouldn't program in machine language. That's what compilers are for. And as for Cobol, he doesn't know how anyone can get anything done with it. It doesn't even have x (Blub feature of your choice).

    As long as our hypothetical Blub programmer is looking down the power continuum, he knows he's looking down. Languages less powerful than Blub are obviously less powerful, because they're missing some feature he's used to. But when our hypothetical Blub programmer looks in the other direction, up the power continuum, he doesn't realize he's looking up. What he sees are merely weird languages. He probably considers them about equivalent in power to Blub, but with all this other hairy stuff thrown in as well. Blub is good enough for him, because he thinks in Blub.

    When we switch to the point of view of a programmer using any of the languages higher up the power continuum, however, we find that he in turn looks down upon Blub. How can you get anything done in Blub? It doesn't even have y.

    By induction, the only programmers in a position to see all the differences in power between the various languages are those who understand the most powerful one. (This is probably what Eric Raymond meant about Lisp making you a better programm

  14. Re:Addendum: VB = 1st timeframe wise vs. Delphi by BasilBrush · · Score: 2

    The one thing VB could do back in the day (being an interpreted language). Edit and continue. I still don't know any IDEs that allow it. Compiled languages make it out of the question.

    Visual Studio had Edit and Continue for C++ for at least a decade.

  15. Borland C: the first real IDE ... by dgharmon · · Score: 2

    'While TurboPascal launched the idea of an integrated development environment, [Jeff] Duntemann credits Microsoft's Visual Basic (VB), launched in 1991, with being the first real IDE'.

    "Turbo C is an Integrated Development Environment and compiler for the C programming language from Borland. First introduced in 1987, it was noted for its integrated development environment, small size, fast compile speed, comprehensive manuals and low price".

    --
    AccountKiller
  16. The Article Was Very Well-Written and Effective... by ios+and+web+coder · · Score: 2

    ...as a link generator.

    Welcome to the world of the Twenty-First Century viral marketing campaign.

    When the article appeared on the FP of this site, I'll bet that the Mendix folks popped a Dom Perignon bottle.

    We've been punk'd.

    --

    "For every complex problem there is an answer that is clear, simple, and wrong."

    -H. L. Mencken