It's Time To Revive Hypercard 299
HughPickens.com writes HyperCard, an application program and programming tool released for the Apple Macintosh in 1987, represented the 'computing for the people' philosophy that enabled users to go past the pre-built software that came on their machines, and to program and build software of their own. "Mac users could use Hypercard to build their own mini-programs to balance their taxes, manage sports statistics, make music – all kinds of individualized software that would be useful (or fun) for individual users." Now Jer Thorp writes that the end of HyperCard left a huge gap that desperately needs to be filled – a space for an easy to use, intuitive tool that will once again let average computer users make their own tools. According to Throp, this type of plain-language programming makes sense, particularly in an application that was designed specifically for non-programmers. "I find the largest concern for learners to be not with the conceptual hurdles involved in writing a program, but with obscure and confusing syntax requirements. I would love to be able to teach HyperTalk to my students, as a smooth on-road to more complex languages like JavaScript, Java or C++." By putting the tools of creation into the hands of the broader userbase, we would allow for the creation of ultra-specific personalized apps that, aside from a few exceptions, don't exist today."
HyperTalk wasn't just easy, it was also fairly powerful. Complex object structures could be built to handle complicated tasks, and the base language could be expanded by a variety of available external commands and functions (XCMDs and XFCNs, respectively), which were precursors to the modern plug-in. But ultimately, HyperCard would disappear from Mac computers by the mid-nineties, eclipsed by web browsers and other applications which it had itself inspired. The last copy of HyperCard was sold by Apple in 2004. "One thing that's changed in the intervening decades is that the hobbyist has largely gone by the wayside. Now you're either a user or a full-fledged developer, and the gulf is wider than ever," writes Peter Cohen. "There's really nothing like it today, and I think the Mac is lesser for it."
HyperTalk wasn't just easy, it was also fairly powerful. Complex object structures could be built to handle complicated tasks, and the base language could be expanded by a variety of available external commands and functions (XCMDs and XFCNs, respectively), which were precursors to the modern plug-in. But ultimately, HyperCard would disappear from Mac computers by the mid-nineties, eclipsed by web browsers and other applications which it had itself inspired. The last copy of HyperCard was sold by Apple in 2004. "One thing that's changed in the intervening decades is that the hobbyist has largely gone by the wayside. Now you're either a user or a full-fledged developer, and the gulf is wider than ever," writes Peter Cohen. "There's really nothing like it today, and I think the Mac is lesser for it."
For the rest of us (Score:5, Interesting)
The majority of us did not have money to spare for Macs. I have no doubt that they were the best personal computers around. I used them.
For less expensive computers, there was the BASIC interpreter. Not as WYSIWYG or simple and Beginners need to think when coding, even at that level. It also had the advantage of being close to a standard untill MS teurned it into QBasic then dumped it.
BASIC is what we need again but standardised and improved a lot.
Re: (Score:3, Insightful)
Apple did a good job of blasting macintoshes into classrooms. i couldnt afford any computer as a kid. i was poor. but the precious times at school on the computers there shifted my skillset and made it great. i did years late to the party, scrape together money for an apple IIc. basic was my first coding language, hypercard came a bit later but it was a nice easy to use tool. I think we should bring it (or something like it) back, for all platforms. an OSS hypercardish thing for sure.
Re:For the rest of us (Score:5, Funny)
Now that you are on your way up the financial ladder, perhaps you could spring for a caps lock key on your current machine.
Re:For the rest of us (Score:5, Funny)
THAT SEEMS LIKE A GOOD IDEA. I'M VERY HAPPY WITH MY NEW CAPS LOCK KEY. OH WAIT, DID YOU MEAN A SHIFT KEY?
the one problem with using my new caps lock key is that the slashdot filter complains that it's like yelling and refuses to post my comment. maybe these sentences will mollify it. haha it worked.
Re: (Score:2)
Re:For the rest of us (Score:4, Funny)
So, Hypercard is like Festivus?
Re: (Score:2)
Even if Macs weren't so expensive, something cross-platform, like BASIC, would be better. I learned BASIC on a TS-1000, and after BASIC, learning assembly wasn't that hard; I was hand-assembling machine code for that TS-1000. I had to since BASIC on a 1 mHz Z-80 that powered the entire machine was just too slow for games.
Oddly, the company that brought BASIC to most was Microsoft; they didn't write Sinclair BASIC but they wrote the BASIC for most other computers of the time. GW BASIC on the IBM PC was still
Re:For the rest of us (Score:4, Insightful)
Why couldn't a new incarnation of something like Hypercard be cross platform.
I am not familiar with Hypercard (my entry into programming was via Basic first on the ZX Spectrum and later on the Apple IIe), but I would argue that if is was as great at easing lay peoples entry into programming as some claim, then we should rather exert more effort in making a new incarnation of Hypercard that is cross platform, rather than in trying to convince people that second best is better because it is cross platform.
Re:For the rest of us (Score:5, Informative)
The article is completely wrong. The current version of Hypercard (RunRev's LiveCode) is cross platform: iOS, Android, BlackBerry, Windows Phone, Windows Desktop, Linux Desktop, Mac.
Re: (Score:2)
Even if Macs weren't so expensive, something cross-platform, like BASIC, would be better.
I almost agree. But it's an Apple to oranges comparison. Basic is responsible for turning a lot of us into programmers, and I believe that it should be included with all operating systems.
But Hypercard is in a whole different league with it's capabilities. The closest thing I can come up with is a comparison between say, Filemkaer Pro and Excel. When I try to explain Filemaker pro to people, most tend to get badly stuck in excel-land. I had one guy who worked with excel spreadsheets for many years who nev
Re:For the rest of us (Score:5, Informative)
I'm amazed everyone has forgotten Myst. Myst was a HyperCard stack with QuickTime movies - and amazing demonstration of with you could do with it.
Re: (Score:3)
When I try to explain Filemaker pro to people, most tend to get badly stuck in excel-land. I had one guy who worked with excel spreadsheets for many years who never could grasp relational databases like FMP.
So, how does it compare to Access?
The most important part for me is that Filemaker supports both Windows and OSX, while Access is Microsoft OS only.
Database size limits are much bigger with FMP. 8 Terabyte vs 2 gigabytes. Scripting is simpler than Access, which requires Visual Basic programming for many of the functions. You can publish to the web from FMP and control the security functions. With Access, you need Sharepoint Server. Note you can publish with an Office 365 account, but not the permissions, which require Sharepoint.
Ther
Re: (Score:2)
Even if Macs weren't so expensive, something cross-platform, like BASIC, would be better.
What made Hypercard so great is that it allowed you to build a fairly decent GUI with almost no work.
Although I agree that cross-platform is the way to go, without the ability to "draw" your windows and dialog boxes, it would be just like the original BASIC, where pretty much only geeks used it.
Visual Basic is a convoluted joke.
And yet, it's much closer to what a modern Hypercard should be like than most other dev environments.
Re: For the rest of us (Score:2)
BASIC was far from cross platform in the 80's. The computer magizines had different code listings for each platform.
Comment removed (Score:5, Interesting)
Re: (Score:3)
If you think VB6 is human readable, then we need to have a little conversation about species differentiation.
Re: (Score:3)
Re: (Score:3)
The current Visual Basic is no harder to learn than the old VB6. It's different in some ways, which was jarring to anyone who knew VB6 (one of MS's stupider moves), but it's not worse. And VB.Net has the advantage that switching from it to C# is much easier than switching from VB to C++ was.
But I admit I have no idea what the new DB interface stuff is like (or the old) - the free version of VS comes with a free version of MS SQL, right? Anyone ever tried using that from VB.NET?
Re: (Score:2)
More like VB 5, but with updated functionality and examples in the integrated help which actually work. From what I remember, VB 6 was a step backwards in ease of use.
Re: (Score:2)
I'll get hate by the "programmers" but I'd argue that what we need is more along the lines of another VB 6 which is what TFA seems to be advocating.
How about instead of reviving old trash, building a language that has the advantages of VB without the disadvantages? It was so hard to write a good, stable application in VB.
Re: (Score:2)
I agree. I used to program in REALbasic, it was extremely easy to get reasonably good results and I generally had a great time with it and sold lots of high quality shareware. (I know, I know, REALbasic was also responsible for a lot of low quality shareware, no doubt about that, but you will always get this with such a tool.) As long as you didn't stumble over one of the many implementation bugs it was a lot of fun and the fastest way to develop. This was long before it became ridiculously expensive, back
Re: (Score:2)
Re: (Score:3)
I had the pleasure of access to and use of an Amiga 1000 in '86. It hosted many of my firsts in computing:
Re: (Score:3)
The Amiga had some serious flaws. I had 3 of them as well, as Macs, Apple IIs and PCs. No memory protection so badly behaved programs could bring down the system and an OS hardwired to custom hardware which made it difficult to impossible to progress going forward. Plus, I personally, found the UI to be wretched. I did have a lot of fun on it though.
Actually, none of the popular OS's of the day had memory protection. But they were all either mono-tasking or had some sort of arcane co-operative multi-tasking that required careful programming. The Amiga was designed so that even the simplest sloppiest "hello world" program was running under multi-tasking, but the base-level hardware (Motorola MC68000) had no integral memory management unit. The later models, based on the 68020 and 68030 could have had memory management, but Commodore wasn't capable of th
So, you're saying "Python"? (Score:2)
I ran into a "hypercard"-like app for the C-64 back in 1986, that involved you building a flowchart of your app, answer some basic questions, and it would generate the Basic code for it. It was pretty spectacular for the day. There are quite a few code generator programs available today, just get one that runs on Python and give it a snazzy GUI. There you go. A nice easy to understand app generator that's cross platform, multiple output languages, open-source, self-extending, etc. etc...
You would spend more
Re: (Score:3)
https://www.youtube.com/watch?... [youtube.com]
Re: (Score:2)
Re: (Score:2)
It also had the advantage of being close to a standard untill MS teurned it into QBasic then dumped it.
Yes and no. MS didn't "dump" QBasic.
QBasic was turned into a full-blown compiled language, QuickBasic, which actually sold for a pretty reasonable price. QBasic still remained for some years after that. QBasic -> QuickBasic was actually pretty nice in that it turned BASIC into an actual procedural language, rather than being restricted to line-numbered spaghetti code.
QuickBasic evolved into the Microsoft Basic Professional Development System. As of version 7.1, PDS gained an awesome highly optimize
Re: (Score:2)
BASIC evolved, too. Tools like Visual Basic (which had a WYSIWYG form editor) emerged. And then even that evolved again too into VBA (the scripting language for Microsoft Office). Yeah, I get the security bullshit with their implementation, but that doesn't deny the fact that it was a quick, simple, and extremely powerful tool for non software engineers to get in there and build some tools needed to get the day's job done. Especially with Excel, the ability to just hit "record macro", and then see the resul
Re: (Score:3)
I used both BASIC and HyperCard - they were dramatically different approaches. If you want a modern BASIC, try Perl or Python or Ruby or - you get the picture. There are dozens of suitable replacements; simple direct languages that can write a short command-line program easily.
And you show the result to the average user out there and they won't even think it's a program. If you want a GUI - like everything out there today - you'll have to work on a major lift, some complex API that takes months to master
Re: (Score:2)
Python's a bit of a mess if you've never programmed before. Admittedly, I don't know much about 3.x, but Python has a very "evolved" feel, with a lot of inconsistencies and evident history of changes to the language, plus classes are such a hack.
Maybe that's all smoothed out in 3.x? Does Python look like it was designed on purpose now?
Uh... have you even heard of LiveCode? (Score:5, Informative)
LiveCode is free, supports Mac, Windows, Linux, iOS, and Android. Best of all, it speaks HyperTalk, plus has more flexibility HyperTalk didn't.
I've moved on from wanting HyperCard, to using LiveCode.
Re: (Score:2)
This 'story' is just a copy/paste from Ars Technica used to get the submitters URL/username on the front page of slashdot.
Re: (Score:2)
I'm glad someone posted that. LiveCard is basically HyperCard.
LiveCode and Swift (Score:2)
Its built in language is called "Grundle"? (Score:3, Interesting)
I'm intrigued by the idea of LiveCode, but are you serious about its built-in language being called "Grundle"?
I can't go to my boss and suggest the use of LiveCode if it has a name like that. For anyone who doesn't know, grundle [urbandictionary.com] refers to the area between a man's anus and scrotum.
The Coq Proof Assistant [inria.fr] project has a similar problem. This software would be seriously useful at work, but we can't be sitting in meetings with passersby hearing us saying what they hear as cock [urbandictionary.com] (as in a long, thick, throbbing pen
Re: (Score:2)
Then pronounce it Coke instead. English is pretty malleable, so if the pronunciation catches on, it'll be the right one. There is a lot of history of the sounds of words diverging from their spelling. I mean, seriously, draught is pronounced draft? WTH? How am I supposed to remember that after drinking a few of them.
Also, please see the pronunciation of Coq au vin [wikipedia.org]
In fact, given that they're both french, are you sure that you've been pronouncing it right all this time?
You can pronounce it Coke (Score:2)
But if it's spelled Koch it's going to offend a lot of people. ;-)
C is called C because it came after B (Score:2)
VPRI (Score:2)
Re: (Score:3)
Uh... haven't you heard of LiveCode? (Score:2, Informative)
I learned on HyperCard, so I know your pain. I still use HyperCard daily at work.
However, many years ago I discovered Runtime Revolution, a commercial product that is effectively what HyperCard should have been. Recently it's been released freely as LiveCode. Check it out. Runs on anything you'd want it to (Mac, Linux, Windows, etc.).
Re:Uh... haven't you heard of LiveCode? (Score:4, Interesting)
LiveCode is great in many ways, and I really appreciate that it is now a free download, but it lacks one feature that really made a difference to people who were learning HyperCard. In Livecode, every object is its own layer. In HyperCard, there was a simple, useful distinction between the background layer and the card (foreground) layer. People quickly grasped how to make a picture or button show up on every card or just one. Now, if you google "livecode background layers," you're likely to get instructions to add a background to a single card. I hate to say it, but I don't think that LiveCode, even free, can build the same kind of community that HyperCard has...simply because of this choice. It's not a trivial difference.
-Gareth
Great idea (Score:4, Interesting)
I learned to program with both BASIC and HyperCard, depending on which machine I was on at the time, back when I was younger. I think it's a great idea. I built simple "database" simulations, using nothing more than the free stuff that came with it, and it helped to mold my initial approach to programming. I even created a testing program we used at my high school for a couple of my teachers that was ran over a network. It was fun AND useful.
Recreating Hypercard? (Score:2)
I have seen some attempts to r creating HyperCard, but nothing really seems to have come of them. If there are any successful or fully functioning open source equivalents I would be interested in knowing about them.
I used HyperCard a bit and in certain ways the closest equivalent is something like PowerPoint or Keynote, though even with them there I a huge gap with HyperCard did. I wonder whether Apple could recreate a 21st century HyperCard, but using Keynote as a basis?
Re: (Score:3)
LiveCode. http://livecode.com/ [livecode.com]
ifttt (Score:2)
Google Wave (Score:2)
I've felt the same way for years. I had high hopes for Google Wave to fill the gap.
It's not the same thing, and scripting for end users would not have been the same, but we don't need a direct replacement. We need:
- Web based, cloud based.
- Multi screen sized, flowable
- The card stack model from HyperCard was GOOD for naive use - and perfectly carried into Google Wave
- Simple scripting, but probably JavaScript not HyperTalk
In fact, my ideal system is somewhere in the middle of Wave, HyperCard, Lotus Notes
Re: (Score:2)
Effective visual editing of templates; HTML template editing but much more like a good UI editor
I've always used a text editor for HTML since automation always seemed to produce bloated, unreadable (if not edited by hand) garbage, whether AOL's, Netscape's, Front Page, Word Perfect, or Word.
However, I discovered recently that you can get very good HTML from Open Office, but the way to go about it is really convoluted thanks to Oo's retarded menu structure. Under "file" towards the bottom of the list, nowher
Re: (Score:2)
Google Wave was some very interesting technology but I think it was pointed in the wrong direction. It wasn't ever considered as a way for the Internet of Things to talk to each other in a reasonable way and everything Google did with it was around pushing it in front of people, not devices. There might have been a time where the terms of service didn't allow devices to communicate using it for message passing.
Language development these days seems to have stalled around a few specific areas which are sepa
dupe.. no, trip..., no... (Score:2, Funny)
This opinion gets written up at least once a year. Nothing's new this time around.
Except..
Now we have a viable alternative to Hypercard: the Brainfuck programming language.
You can thank me later.
doesnt work (Score:4, Informative)
I've used these sorts of things extensively before. They all fail for the same reason.
Programmers often assume that the hard part of programing is the obscure syntax of languages, because to them when learning a new language, that's what's hard. And while yes, the syntax is difficult at first, the novice does get it eventually. The real problem with the novice is often the counter-intuitive logic often presented in programming.
For example, take the typical problem of "If they chose Yes, I don't want the program to do X. But if they don't, I do what them to do X"
The novice often has a hard time even articulating that condition in the English language, much less a programming one. How would simplifying the syntax make it any easier?
The solution to a programmer is simple: If "yes" then X
and the novice asks in alarm "Greater than or less than?!!? WHAT?"
So then you have your "easy" programming language that's similar to English. That's great, how do you articulate that previous statement in that language now? It's not any easier. On top of that, because you've dumbed down the language to make it more user friendly, you've likely also taken away a lot of its power. The archaic syntax of languages is often for a very good reason. And when that user does start to get somewhere, they'll end up in a forum asking how to do it, and the programmers will flat out tell them the logic at which point they'll find out that they can't apply that logic because of the simplified syntax.
If you're just starting out, I'd recommend this: http://www.autohotkey.com/ [autohotkey.com]
The syntax is about as user friendly as you'll ever get.
You can write the applications in notepad
You don't even have to compile them if you don't want to.
It can do just about anything any major language can.
Re: (Score:3)
.For example, take the typical problem of "If they chose Yes, I don't want the program to do X. But if they don't, I do what them to do X"
...
The solution to a programmer is simple: If "yes" then X
Shouldn't it be: If "Yes" then pass else do X"? Buggy code indeed.
Re: (Score:2)
.For example, take the typical problem of "If they chose Yes, I don't want the program to do X. But if they don't, I do what them to do X"
...
The solution to a programmer is simple: If "yes" then X
Shouldn't it be: If "Yes" then pass else do X"? Buggy code indeed.
Slashdot filtered out my code... sorry.
there are supposed to be "greater than / Less than" symbols in there.
Re: (Score:3)
Re: (Score:2)
Exactly this. Writing non-ambiguous instructions in English (or any human language) is ridiculously difficult, and attempts to do so end up (not surprisingly) in legalese, which is often harder to understand than a programming language with a decent syntax.
Natural language programming is pretty much an oxymoron, because there's almost nothing natural about programming (with respect to human beings).
Over the years I've come to hate tools that pretend to management that you can essentially program without ac
Re: (Score:2)
I have to say the getting people in the door thing is pretty cool. I always like to give this example. My doesn't-know-how-to-program wife wrote herself a custom device driver in AppleTalk without even knowing what a device driver is or what one does. That's success.
Re: (Score:2)
because you've dumbed down the language to make it more user friendly, you've likely also taken away a lot of its power. The archaic syntax of languages is often for a very good reason.
IMHO, good languages are fairly terse, because they allow you to see a bigger picture at a glance. Mathematics has plenty of examples of this -- you often devise some ad hoc notations to make a complicated problem easier to visualize. In programming, the obvious equivalent would probably be functions and classes etc. but it helps if the language is not too verbose to begin with.
Re: (Score:2)
Reading below you wanted greater than / less than. That's obscure syntax. How about
If answer is not "yes" then do X
which is COBOL.
Re: (Score:2)
Re: (Score:2)
Project Siena (Score:4, Informative)
Well this might not be for Mac users, Microsoft Project Siena might be a useful option for people on the Windows platform. http://www.microsoft.com/en-us... [microsoft.com]
SuperCard (Score:4, Informative)
Writing code is not the challenge (Score:4, Insightful)
It's fairly trivial to learn a language at a decent level. We have a lot of languages that abstract away all the "hard" stuff like OS interaction and memory management. Take Java. Take C#. There is literally an object for EVERYTHING you could possibly ponder doing. You dump some values into that blackbox, it does its magic and presto, result.
The hard part of creating software is designing it. And no environment can take that part out of your hands. There is simply no way some piece of software could magically read your mind and produce it.
Sounds Kind Of Like Jmeter (Score:2)
The problems are that all variables are global and there's not a good way to create a function for it. It's not designed as
Was there a gap? (Score:2)
Wasn't that the idea behind Visual Basic, the users could write their own little functional pieces of code. This is why VBS macros exist in Microsoft Office and Windows.
I got an A+ with Hypercard (Score:2)
Balance taxes? (Score:3)
I've never balanced taxes. Is this a new thing?
Oh, you mean balance checkbooks and pay taxes. There's much better software to do that these days.
And there are much better ways to teach programming. For a very long time there has been a movement to bring programming to the masses, as if, somehow, everyone would be able to write beautiful, intricate code to solve their most complex problems. Most people can barely match their clothing (note to the reading-impaired: that was hyperbole); why should we expect them to be able to write code?
Writing programs requires clear, linear thought. It requires thinking in terms of structures and systems. The push in the greater population has been toward valuing non-linear thought (although that baffles me), so there's a big mismatch to overcome. Yes, there are plenty of graphical programming languages that reduce the need for precise syntax, but they only REDUCE it, not eliminate it, and they still require procedural thinking which, ultimately, presents an insurmountable difficulty for many people.
Not everyone can or should be a programmer: Not everyone is a writer, Not everyone is a photographer, Not everyone is a painter. Sure, everyone should be given basic skills in writing, and perhaps in drawing or painting as a child, and so perhaps everyone should be given basic skills in programming, but beyond that, why? Not everyone is able to understand calculus; why should we automatically expect that everyone should be able to write Java, Python, or whathaveyou?
We could probably write this in HTML5 today (Score:2)
But a more relevant question would be: can we devise a building-block language that solves today's real-world problems? Such a language should be (1) capable of solving simple problems easily for general users and (2) allow including complex 'blocks' for those willing to climb the learning curve it would take to include some highly specialized function in one's program.
Re: (Score:2)
So.. you want someone to invent LabVIEW?
Re: (Score:2)
I've been a geek for so long that I was once an actual LabView user. That was something like what I have in mind, but was too specialized for the lab environment.
It is time to revive punch cards (Score:2)
_ I had a joke about it but the punch line kind of writes itself
_ no magnetic stripes so storage should last longer
_ paper is bio degradable so it is more eco-friendly
_ we have been too spoiled with code editors
Hypercard could have been the internet (Score:2)
Hobbyist programmers (Score:2)
From my own personal experience I just want to say if you enjoy programming and think maybe you'd like to do it as a career... Go for it.
Every job type has a certain percentage of workers who are barely skirting by and somehow get paid for it. There's doctors who shouldn't be, lawyers, etc... There's also the elite that truly know what they're doing and are at a much higher level of skill.
Believe me when I say most programmers are the former.
The #1 most important thing IMNSHO is a continual desire to learn
The bigger problem... (Score:2)
The bigger problem is that Apple (and others) abandon software and make their OS incompatible with legacy software so that we can't continue using our old tools. If the software followed the API rules in the past it should continue working with the new operating system and the OS vendor should not abandon it. If they want to get rid of old APIs they should provide cross-recompilers for older software or emulation. There is a tremendous legacy of software that is lost because Apple and other companies change
Re: (Score:2)
Apple believes that long term legacy is a problem. They want users to migrate paradigms. They don't mind breaking software, to keep the ecosystem clean. Microsoft is far better about continuity. IBM even better than Microsoft.
You want continuity you picked the wrong product.
Applescript & Automator (Score:2)
Let's go back to 'requirements' (Score:2)
HyperCard combined three aspects: (1) A easy-to-assemble set of graphical/user interface components; (2) a simple (simplistic) database; (3) a quirky programming language.
Possibly VB with Access provides a similar set of functions.
We should be able to produce something that allows end users to do some development for themselves, while acknowledging this is not a production-quality tool, but no matter what, people will take prototyping systems and try to deploy them to production usage.
I've used it for seve
Um it has been revived (Score:3)
It has been revived and it has a free / open source version: http://livecode.com/ [livecode.com]
Far better than the original.
Desperately needed? Really? (Score:2)
I'd say the reason we don't see a lot of demand for Hypercard-like environments these days is, they aren't necessary anymore.
Back in the Olden Days, if you wanted to accomplish something on your computer, and there wasn't an application available that met your needs, you might respond to that problem by writing one yourself. Hypercard could make that easier for you to do, if you weren't already an experienced programmer.
These days the software market is much larger and more mature, so if you want to accomp
Scratch (Score:2)
http://lmgtfy.com/?q=mit+scrat... [lmgtfy.com]
scratch an itch (Score:2)
empower users without killing them (Score:2)
The real gap is something that will empower users without putting them into danger.
Excel is an example of this approach gone wrong. If you've never been in a company that runs important business processes on spreadsheets, raise your hand. Kids and students, drop your hands. Not many left, are there?
And yet, studies have shown that a large percentage of non-trivial spreadsheets contain errors.
The difficult part in making tools is to make them so that users realize at which point they should call a profession
No, it's not time to do that. (Score:5, Insightful)
So we shouldn't have easy-to-use tools for people to LEARN how to program? Or for people (including kids) who never thought about programming, but took interest in it only after writing some software using an easy-to-use tool?
I started using HyperCard in 1990, in grade 9 after-school computer class. I loved it. I've been writing code ever since.
Get off your high-and-mighty "professionals are the only ones who can do things" box. Just because you might have a degree, doesn't mean you know your face from your ass when it comes to code compared to some there people who don't. Just sayin'.
Re: (Score:2)
No, that's what trade school is for.
Re:That's what college is for! (Score:4, Insightful)
Here's the problem. It's a lot easier and more likely to happen that a chemist learns a little programming to get a job done than to try to teach chemistry to a programmer and get his management to approve him spending the time. If a project ever gets escalated to where "real' programmers are needed, the scientists can, at least, have realistic expectations and do a better job explaining the problem. I've helped with the design of data models, which greatly lowered a project's complexity, because I knew a lot more about how the data was used.
I have a good knowledge of my limitations. I now have a pretty good knowledge of yours except that I don't know who you are.
No, context matters. (Score:2)
I don't want a self-taught developer writing flight control, banking systems, or medical embedded systems code. I'd rather have someone formally trained doing that work. On the other hand, there's plenty of places where if the code doesn't quite work right I don't really care that much. From everything of the once-thriving online text based gaming community (the MUSH, MUCK, MOO, MUX, MUD, etcs) to simple web pages or even stupid phone apps, there's a place for "non-professional" programmers.
Similarly, there
Re: (Score:2)
Re: (Score:2)
Riight because someone who went into massive debt to get a piece of paper is automatically better than someone with hours and hours of practical experience?
Re: (Score:2)
I don't want a self-taught developer writing flight control, banking systems, or medical embedded systems code. I'd rather have someone formally trained doing that work.
I designed and wrote an automated testing system API for a seismic analysis and visualization software package. 4 people script using my API every day, and another administers the 60 virtual machines that run on the VMWare server environment I designed. She controls and monitors it remotely, using custom remoting software that I wrote.
I have
Re: (Score:2)
You sir or madam, do not know what you are talking about as well as being pompous. As long as you can pass the required certification tests, many professions will grant you a license.
Re: (Score:2)
We don't need more average or low-end hobbyists writing software. ... When these amateurs try to write code in any sort of a business or professional setting, it usually ends up being the IT department or professional software developers who get to maintain the crap code in the end
I did not think this is about writing enterprise software. Where I work the system is so locked down that you could not write anything yourself anyway. Even before it was locked down, there was no way that IT would have taken over code not written outside their Dept.
When personal computers first came out they were all about the user programming it themselves. I still have some old handbooks that came with computers then (they were well written) and they were straight on to programming (in BASIC, or OP
Re:No, it's not time to do that. (Score:5, Informative)
Obviously, you've never had to hire CS graduates.
I can't tell you how many of these bozos who've learned in a "formal" setting can barely manage a coherent if/then statement, much less successfully complete even a small in-house application.
Granted, most of the self-taught crowd is weak on specialized algorithms and data structures. On the good side, self motivated autodidacts rarely have trouble picking this up, when necessary. CS grads seem to need a professor, hand-holding and a cookie in order to learn anything new.
Re: (Score:2)
CS grads seem to need a professor, hand-holding and a cookie in order to learn anything new.
AH! Maybe that's what I need! Bringing cookies to my class. That's smart!
Re: (Score:2)
The cookie was metaphorical, but criminy, whatever works. Just get me someone I can hand a task to and walk away.
Re:No, it's not time to do that. (Score:4, Insightful)
Professionals with years or even decades of experience have enough trouble writing secure software.
And just where do these "professionals" who can't write secure software get these years or decades of experience??
It's even worse when they use "beginner-friendly" languages like PHP, Ruby (with Ruby on Rails), and JavaScript. These languages are totally shit, and end up promoting buggy, insecure code.
I don't know PHP or Ruby, but javascript is in no way "beginner-friendly". I'd been coding in BASIC, assembly, xBase (various dialects), NOMAD, and a couple I can't remember (I'm getting old) for well over a decade when I needed javascript.
Javascript is crap. Often useful and necessary crap, but still crap.
When these amateurs try to write code in any sort of a business or professional setting, it usually ends up being the IT department or professional software developers who get to maintain the crap code in the end.
It's true that someone who thinks he knows what he's doing but doesn't can really screw a project up, an idiot I worked with who thought he knew dBase almost cost us a ten million dollar Federal grant by removing some columns in some tables in an application I wrote. I was able to make it work anyway.
Asimov got it right in Foundation; those who know little and are aware of their ignorance aren't dangerous, it's those who think they know but don't that are.
But I was mostly self-taught, only taking classes after I'd been programming for years, and few of the classes taught me anything I hadn't already learned from reading hundreds of books on the subject and practicing.
And we can't forget how these half-assed amateurs often start "contributing to" (a.k.a. destroying) open source projects. Thanks to them, we have disasters like GNOME 3, where instead of trying to make efficient, effective software, they just ended up trying to make a shitty, half-assed copy of their warped understanding of OS X.
It's not that they're shitty programmers, it's that they're shitty designers, and the professionals at Microsoft are no better; Windows 8, anyone? And whose code is the least secure? Yep, your fellow professionals at Microsoft with their warped "understanding" of UI, just like the GNOME devs.
We shouldn't promote the idea of them getting involved with software development. We should discourage it!
No, we should develop easier to use tools. The languages and compilers you professionals are writing suck donkey ass.
Re: (Score:2)
Snob.
Are you really serious.
Perhaps you're writing satire. Poor quality. Poor taste.
Re: (Score:2)
Re: (Score:2)
Nice troll post. Just about only real distinction between a professional and a hobby programmer is that the former gets paid whereas the latter doesn't. I've seen just as much complete crap written by professionals than has been written by so-called amateurs.
Besides, you're missing the point. Everybody should be able to program his computer in the way he or she likes and the tools should be easy to use and completely unrestricted. Nobody forces you to use someone else's program if you have no confidence in
Re: (Score:2)
I wanted to simple do something cute like "Happy Birthday"
#!/bin/bash
echo "Happy Birthday"
You can thank me later.