Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Education Microsoft Programming Apple

Melinda Gates Was Encouraged To Use an Apple and BASIC. Her Daughters Were Not. (huffingtonpost.com) 370

Long-time Slashdot reader theodp writes: In August, Melinda Gates penned Computers Are For Girls, Too, in which she lamented that her daughters "are half as likely to major in computer science as I was 30 years ago." So, what's changed in the last 30 years? Well, at last week's DreamForce Conference, Gates credited access to Apple computers at school and home for sparking her own interest in computer science [YouTube], leading to a career at Microsoft.

So, as she seeks ways to encourage more women to get into tech, Melinda may want to consider the effects of denying her own children access to Apple products [2010 interview] and of Microsoft [in 1984] stopping computers from shipping with a beginner's programming language (a 14-year-old Melinda reportedly cut her coding teeth on BASIC).

Melinda can raise her kids however she wants -- maybe her kids will just start programming with the Ubuntu that's shipping with Windows 10. But is it a problem that there's no beginner's programming language currently shipping with Macs? Over the years Macs have shipped with Perl, Python, Ruby, tcl, and a Unix shell. Do you think Apple could encourage young programmers more by also shipping their Macs with BASIC?
This discussion has been archived. No new comments can be posted.

Melinda Gates Was Encouraged To Use an Apple and BASIC. Her Daughters Were Not.

Comments Filter:
  • So what? (Score:4, Insightful)

    by Locke2005 ( 849178 ) on Sunday October 09, 2016 @02:45PM (#53043017)
    It's just like what I say about calculus: it's important to understand the basic concepts of integration and differentiation, but you are NEVER going to solve integral or differential equations in real life (any sane person would use numerical methods). Computers will soon be capable of programming themselves, so while it is useful to have a basic understanding of how computers work just like it is useful to have a basic understanding of how electricity works, trying to teach EVERYONE to program is pretty much solving a non-problem. Also, the fewer people that know how to program, the more I can charge for my services...
  • If you want your child to learn computing, Linux and Windows are much better choices than any Apple or Android product. She made the right choice.
    • Re:Not Apple (Score:5, Informative)

      by ceoyoyo ( 59147 ) on Sunday October 09, 2016 @02:58PM (#53043087)

      A Mac is a Unix machine that you don't have to fight with to watch a movie on. They're excellent choices for someone to learn programming.

      • by Anonymous Coward on Sunday October 09, 2016 @04:34PM (#53043593)

        A Mac is a Unix machine that you don't have to fight with to watch a movie on. They're excellent choices for someone to learn programming.

        Oh fuck off. What's so hard about:

        > git clone ssh://github,com/supermovieview/viewer.git
        > ./configure
        > make
        > make install
        > (permission denied)
        > sudo make install
        > supermovieview
        > (usage supermovieview filename)
        > supermovieview captain-america-civil-war-1080p.wmv
        > (error, wmv not supported. Maybe install supermovieview-codecs?)
        > git clone ssh://github,com/supermovieview/codecs.git
        > ./configure
        > make
        > make install
        > (permission denied - ffs)
        > sudo make install
        > supermovieview captain-america-civil-war-1080p.wmv
        > (error, failed to open audio stream)
        > sigh
        > sigh: command not found

        Ah, okay. You might have a point.

      • by amiga3D ( 567632 )

        Any computer can be used for learning running any operating system. I've got a slew of Raspberry Pi computers and for $35 you can easily set up a good system to learn programming in several languages with an incredible number of sources providing instruction geared towards beginners and kids. The good thing about the Pi is it's set up for experimentation and hacking. But if all you've got is a windows machine there are plenty of ways to utilize those as well.

      • by amiga3D ( 567632 )

        You can even open a Bash shell for scripting. What's easier than that?

      • I got into *NIX and programming because I had a Mac growing up. OS X came along and I found Terminal.app and it was nonstop to a household of BSD and Linux machines. I was able to complete a lot of CS computer assignments locally while my peers fought for time on the universities old SUN machines. (Right before a deadline the whole thing ground to a halt).

    • Some bold statement like that needs an explanation.
      Windows: a computer you barely can use in daily work?
      Mac sucks! Why?
      I don't see a real difference between Linux and OS X except for standard apps like mail and the general
      UI.

  • Granted I did some BASIC before I jumped into Perl but I have taught Perl to novices before and they've done just fine with it. I would think it would be just fine for a beginner.
    • by 93 Escort Wagon ( 326346 ) on Sunday October 09, 2016 @02:52PM (#53043063)

      Children need to learn FORTRAN early on - I want them to know the pain I grew up with.

      • by murdocj ( 543661 )

        If they are learning Perl, they are experiencing more pain than I did with Fortran, and I used card-oriented Fortran. I used to start lines in column 10, instead of 7, just so I didn't make a mistake and accidentally create a continuation card.

        • I was learning fortran just as cards were being phased out - so at least I didn't have to worry about spilling boxes of cards. But the coding rules were the same.

          It's not a difficult language... it was just highly annoying. I found perl to be more obtuse, but without fortran's archaic rules I enjoy it much better.

      • by amiga3D ( 567632 )

        I think COBOL would make a good first language.

      • by plopez ( 54068 )

        Their parent should learn how to spell Fortran. What's so hard about

        print "hello world" ?

    • by alternative_right ( 4678499 ) on Sunday October 09, 2016 @03:50PM (#53043381) Homepage Journal

      I would think it would be just fine for a beginner.

      Perl is a great contemporary replacement for Applesoft BASIC: it is easy to get started in, links easily with other parts of the operating system, and is infinitely expandable.

      Yes, as ShanghaiBill writes, some Perl programmers enjoy writing obfuscated code, but "some" is not equal to "all." The best Perl programmers write code that is as readable as Java, with less reliance on cramming everything into regular expressions.

      The main problem for kids is a lack of code written to be read, so that they can organically absorb how it works and get started on their own projects quickly, because in my experience, all the good programmers learned their craft by getting passionate about creating something and driving themselves toward that goal.

  • by 93 Escort Wagon ( 326346 ) on Sunday October 09, 2016 @02:49PM (#53043041)

    Unlike the 1980s, nowadays it's trivially easy to get BASIC (or most any other computer language) onto your computer, regardless of platform - usually for free.

    And if you want to stay in the walled garden and something which has ostensibly been vetted, there's a $4.99 version of BASIC available for OS X / MacOS in the App Store.

    • Operating systems, programming environments and applications are many times more complex than they were in the '80s and so is the amount of work which needs to be done now to get something decent up on the screen. A beginner in the '80s could fairly easily produce a useful program which was of a comparable standard to other software available. I'd say it's a lot harder to achieve that now.

      • Python takes 30 seconds to install. Getting a hello world desktop app out of Visual Studio Community Edition is super easy. I would argue it's as easy or easier than ever.

        • Hello World on pretty much any 1980s 8 bit-computer:

          Switch computer on.
          Type: 10 PRINT "Hello World!"
          Type: RUN

          There is nothing easier than that.

          • by AmiMoJo ( 196126 )

            You didn't even need the "10", just

            PRINT "Hello World!"

            would execute the statement immediately and I think that's something a lot of modern implementations lack or hide away.

            • by markus ( 2264 )

              Oh, you want a REPL [wikipedia.org]. Why didn't you say that earlier.

              Press SHIFT-CTRL-J and it is right at your fingertips.

              Then type:

              console.log("Hello world")

              and if you want to go fancy, replace that with

              alert("Hello world")

              There are plenty of great ways for anybody to get started programming. And one the options is in fact right there inside your browser. Javascript traditionally has a bad reputation. But it has matured a lot over time. It is very readily accessible. There is i

          • by amiga3D ( 567632 )

            Oh yes. Microsoft Basic V2.0 on my C64. 1983 was a wonderful year.

          • https://tmpnb.org/ [tmpnb.org]

            Click link.

            Program.

          • You can do that in cmd or PowerShell too but I'm talking about a real windowed application with a binary and everything. Cmake doesn't technically ship with Linux although many do include it.

    • by AmiMoJo ( 196126 )

      There is an argument for machines shipping with it though. I expect most of us as kids explored our computers, trying out all the apps that came with it. Having BASIC right there with some example code and a tutorial in the manual (remember those?) prompted a lot of kids to try it out.

      Kids need prompting. It would be nice if parents did it, but that's not always something that happens and shipping with a functional development environment and tutorial is a nice alternative.

      Don't fall into the trap of thinki

  • The summary seems to make a very big deal of "ship with" as the reason that someone would look at computer science. I'd say that it is not up to the shiny new computer to lure an unsuspecting child into computer science. If the child wants to go into computer science, then the child will find the way.

    .
    The bigger problem to be solved occurs down the road when females start encountering artificial barriers and discrimination against their participation in the field.

    Best course of action --- ask female c

    • by AmiMoJo ( 196126 )

      I didn't know I wanted to be a software engineer or that I would be interested in CS when I was a kid. The first PC my family owned came with BASIC, and playing with that is what made me realize. Kids are born not knowing anything, they have to be given the chance to experience stuff to know if they are interested in it or not.

    • by fazig ( 2909523 )
      I did ask many females in computer science and engineering about this, because most of those that made it through their bachelor were as good as any man in their field. So I started to wonder why there's so few of them there. Guess what! The most obstacles to overcome were other females during their teen years. Because showing an interest in technology, computers, science and other hobbies that belong to the 'nerds', a subset of boys, got them ostracized from social groups they simply 'had to belong to' acc
      • So, in a nutshell, it's not the evil neckbeards that turn them away, it's being associated with said neckbeards that is.

        • by fazig ( 2909523 )
          Well, it was both if you want to know the full story.
          The *nerds of that time wouldn't accept nor support them either in many cases; you know because girls were different and scary. But the individuals I've spoken with were more bothered by the rejection from other girls. Which one was objectively the worse thing is not for me to say. But I think this impression was partially due to the fact that many schools separated boys and girls for various activities like sports, field trips and similar things.


          *I
      • by swb ( 14022 )

        I think what makes it harder for girls is that they seem to be more socially aware than boys, making the social cues and pressures to fit in with group dynamics stronger and make deviating from dominant group dynamics harder.

        There's also an argument that says that a lot of technology (for a broad definition of technology, everything from tools to computers) was designed by men and carries a subtle cognitive bias towards men. It's an interesting (if flawed) argument, but it might describe why programming do

    • by Octorian ( 14086 )

      Best course of action --- ask female computer science people (and I don't mean a person who brought Microsoft Bob to an unsuspecting world, but real female computer science people) what obstacles they faced and what would they do to remove them.

      I also wish that when people did ask real female CS people for commentary, or to show as representatives of their fields in a public forum, they actually did that. Far too often it seems like they hold up project managers and various support roles as shining examples of "women in tech", rather than actual software developers.

  • by Guillermito ( 187510 ) on Sunday October 09, 2016 @02:58PM (#53043091) Homepage
    There is a language called JavaScript that is perfectly suited for learning how to program. Much better suited than BASIC I'd say.
    • What? No! Entry programming should be simple, use real words, teach people general looping and branching in a trivial way. It shouldn't be some maybe maybe not object oriented programming language. It should not be a language that permits you to do multi-line conditionals without curly brackets silently without throwing up errors. It should scream and shout at you for missing semicolons to split up sentences. It shouldn't be forgiving and try to figure out what you're doing.

      All we do by teaching javascript

  • What? (Score:2, Informative)

    by ceoyoyo ( 59147 )

    Every Mac comes with Python, Ruby and Perl (not that I'd recommend the last one, but some people are masochists), just like Linux.

    You can click a button in the app store and get Swift, C, C++, Objective-C and there are other buttons for pretty much anything else you could ever want.

  • by Zero__Kelvin ( 151819 ) on Sunday October 09, 2016 @03:02PM (#53043125) Homepage
    Somebody seems to think that BASIC is a beginners language more so than others because the B happens to stand for BASIC. Nothing about BASIC makes it more suited to beginners than many other languages out there, including but not limited to Python. I would go so far as to say that BASIC was a good language for beginners in the early 1980s, but would be a very bad place for someone to start in in 2016.
    • by bidule ( 173941 )

      Yep, my son did perfectly well with Python, and he didn't even need my help to make it work.

    • by msk ( 6205 ) on Sunday October 09, 2016 @03:35PM (#53043321)

      B is for "Beginner's".

    • but would be a very bad place for someone to start in in 2016.

      Defend that statement.

      Personally I think there are definitely languages not suited for beginners. You say including but not limited to python, which I would argue is a good language since it enforces some strict requirements, unlike say Perl where two different programmers can write the same program only to have it look like they were both using different languages.

      • Line numbers, to start with.
        • by Jack9 ( 11421 ) on Sunday October 09, 2016 @04:58PM (#53043695)

          > Line numbers

          That's a benefit. Understanding and being able to reference the order of execution explicitly and the cost of changes, is a huge lesson that it enforces accidentally.
          Talk about Poke and Peek, then we're getting into the problems with (apple) BASIC.

          > Nothing about BASIC makes it more suited to beginners than many other languages out there, including but not limited to Python

          Lack of features makes it more suited to beginners. Less things to need to understand or use for additional complexity.
          Algebra is taught before Calculus, necessarily. Humans learn with blocks before bridges.

          • Line numbers are not a benefit. Contemporary languages don't use them and with good reason.
            • by Jack9 ( 11421 )

              > Contemporary languages don't use them and with good reason.

              We also don't use training wheels on motorcycles. Your objection misses the point entirely. BASIC is not a good general purpose language. It's not good for much at all. As a beginner language, it's one of the best fits.

          • I'm one of those old farts that first learned programming on a C64 using BASIC. Started with the basic (no pun intended) "Hello, world" and next thing I knew, I was up till 3AM each night writing a full Blackjack program using peek/poke, sprites, etc., to get a fully visual blackjack game. Fucking awesome! Can you do that with Ruby, Perl, PHP, JS, etc.? Didn't think so.
        • Line numbers, to start with.

          Are you kidding? Everybody old enough to remember knows that the real purpose of BASIC was to teach Dartmouth students how to count by tens!

    • by GuB-42 ( 2483988 )

      BASIC (or some modern variant of it) is still a good language for beginners. And by beginners I mean like kids, not like adults making a professional reconversion.

      I rediscovered it in the mid 2000s with Blitz BASIC and it is so simple. No boilerplate code, no need to understand higher concepts to actually do something. You want to draw a square, just call the instruction to draw a square. You can easily make a playable game in a couple of hours with this.

      It is nice having a clean language like Python but no

  • Macs are pre installed with AppleScript, obviously.
    Python, Perl, several Shells, AWK - actually one of my favourite beginner languages.

    However having a simple language which is already displayed as an icon on the Dock would probably rock.

    Still waiting for a viable successor of Hypercard ... (and please don't post links to that company that is changing its name every 2 years and claims it RealCoder or LifeCoder or however it is called now is a Hypercard successor, it is not, it is rubbish)

  • Companies and governments are pouring rivers of money into encouraging girls into IT. Is it really worth it? Do they really make so much better programmers to justify huge investment needed?
    • by godrik ( 1287354 )

      No, women don't make better programmers than men (when taking the whole population into account, there is a bit of sampling bias).

      But they make more programmers to pick from. So if you take the 10% best programmers, but you only started from a pool of randomly selected people (male), you get worse programmer, than if you start from the entire population.

      And I do care about having the best computer scientist going in the field.

    • by AHuxley ( 892839 )
      Look back over the history of computer education. Communist nations poured wealth into early education, university access. It produced a professional class of academics, teachers, engineers and doctors. The graduates then had to fit into ever more jobs the gov had to create for them.
      The hard currency to buy imported hardware was wasted and hope for new advanced production lines for export never happened.
      In the West it was more dynamic and based on testing. Merit and wealthy parents or skills and savin
  • Oh for god's sake - who gives a darn what their kids have on their computer - they have a computer, so they'll be fine. This is all clickbait. Not to mention invading what little privacy Gates' kids might have left. Is there not some place the media would have the discretion to stay out of?
  • It's their choice. Trying to force them to go into a field that *you* want them in will likely either sour them on it altogether or, even worse, send them into a field that they don't have any real aptitude for.

    • I wonder if, 40 years ago, there were any articles where William Gates Sr. lamented how his children were less likely to go into corporate law.

    • by godrik ( 1287354 )

      But isn't it a parent job to make sure your kids are exposed to various fields, experiences and opportunities?

  • by rsilvergun ( 571051 ) on Sunday October 09, 2016 @03:30PM (#53043283)
    my daughter just hit college and I pushed her toward medicine. C.S. is a dead end. Math isn't, but that's not exactly C.S.. Outsourcing + H1-Bs means you'd have to be crazy to go into computer science right now. Most places I see are 80/20 H1-Bs for the onshore and 95/5 if you include offshore. Bring back the jobs and us parents will bring back our students.
  • by BasilBrush ( 643681 ) on Sunday October 09, 2016 @03:54PM (#53043411)

    For students or families who favour Apple products, Swift is the obvious choice. Very modern and yet easy to learn. But powerful enough to make real apps.

    Start with the Swift Playgrounds app on an iPad. Teaches by setting challenges:

    https://itunes.apple.com/gb/ap... [apple.com]

    Then download XCode for Mac when ready to take it further.
    XCode has Playgrounds for your own experimenting.

  • Do you think Apple could encourage young programmers more by also shipping their Macs with BASIC?

    no.

    I think coders should start with something like Python (and I *guess* Javascript but I wouldn't advise it) then move down to C, then progress from there depending on their interest.

    Most coders know only one method of learning to code: excruciating brute force trial and error

    There's no *rational* reason for learning to code to be annoying at all, but we do this to ourselves because it reinforces difficulties w

  • Python is the new BASIC. My kids are being taught in Python. Their schools have Python posters up, and they do their work in it. No need to go back to the 80s and learn BASIC as I did, the school community is all about Python - at least here in the UK, not sure about elsewhere.
  • You can code a LOT of cool stuff with just BASH, which mimics how BASIC used to run on the Apple ][ computers of the 80's. I mean any command you can run within a bash script, you can also type in the CLI.

  • by santiago ( 42242 ) on Sunday October 09, 2016 @04:55PM (#53043673)

    No, because BASIC is an awful language that's hard to use. Meanwhile, languages intended for everyday use have got much more accessible, like Swift, which Apple uses in their free learn-to-program iPad app, Swift Playgrounds: http://www.apple.com/swift/pla... [apple.com]

  • Macs have Python out-of-box. What's the problem? Python is most definitely a "beginner's language".
  • But is it a problem that there's no beginner's programming language currently shipping with Macs? Over the years Macs have shipped with Perl, Python, Ruby, tcl, and a Unix shell. Do you think Apple could encourage young programmers more by also shipping their Macs with BASIC?

    AppleScript, Python and Perl are all installed on your shiny new Mac - you've clearly never opened a Terminal window to see the latter two. Would it be helpful to ship with BASIC as well? Not in my opinion.

  • by Yvan256 ( 722131 ) on Sunday October 09, 2016 @05:42PM (#53043929) Homepage Journal

    Get every kid a basic Arduino and let them learn on something as basic as 1980's computers but that can also interact with the outside world via I/O pins.

  • by iwbcman ( 603788 ) on Sunday October 09, 2016 @05:44PM (#53043935) Homepage
    I swear sometimes you folks just amaze me with how dense you are.
    What Melinda Gates points out in the TFA is amazingly simple yet profoundly insightful and yet the slashjocks can't wrap their big heads around it.
    BASIC blew any and or all other "beginners languages", developed since then, out of the water. The reasons are fairly simple to understand, but you have to grasp how they were interconnected.

    If you weren't using computers and programming between 1976 and 1984, you probably can't intuitively grasp how things actually were, and what is stated below was true for millions of children around the world, in dozens of different real languages. One of more negative aspects of the "good ole days" is that personal computer were not available for everyone, they were reserved for privileged children from families with incomes sufficient to be able to afford such and these costs were not insignificant, costing families upwards of a $1,000.00.

    • a) BASIC was everywhere, on every computer that one could get their hands on. And although there were significant difference between them there was enough in common that most basic programs ran with little or no modification in any and all BASIC interpreters.
    • b) BASIC language programming examples were widely disseminated in hundreds of magazines and many, many books. These magazines in particular played a pivotal role in the creation of local computer clubs, a social aspect completely lost in the modern programming world. The availability of material on the internet is in no way comparable.
    • c) Every computer came not only with BASIC, but also a BASIC programming book, which listed each and every usable function available in the language. Written by people who could spell the word pedagogic, these books were easy to read, fun, and genuinely educational.
    • d) The 7 year old could type in a BASIC program and do something fun, if not particularly useful, in 5 minutes with no help at all other than seeing a printed listing of a BASIC program.
    • e) That same BASIC was also useful for an incredibly large number of small businesses, so daddy or mommy, could use the same language to do productive things for their work world as their children were playing with at home.
    • f) BASIC was simple, but one could still do amazingly complex things with it. Anyone, with an IQ of 95 or more who can read and write, can learn 100 commands, memorize their syntax and glue them together. Less that 10% of the overall population will ever be able to do anything comparable with any of other languages developed since then.
    • g) BASIC made complex things simple and simple things complex, it was a wonderful trade-off. No other language has ever hit that particular trade off anywhere near as good. There was a lot of things you could not do in BASIC, but within the repertoire of doable things BASIC was incredibly simple to use, the feedback loop of trial and error was instantaneous, and once you learned it you never thought about the language itself because it vanished in the usage like any truly good tool does.
    • BASIC as a programming language is dead. It will never come back. But that does not mean that there is no absence. Our expectations have changed radically, what we demand from computers today was far beyond anything anyone could do with BASIC. Truly replacing BASIC is a herculean task, not something easy, and it is an open question whether there will ever be an equivalent again. The problem set solved by BASIC was many orders of magnitude smaller than what anyone could reasonably content themselves with nowadays. There were no videos(cameras capable of capturing pictures or videos), mp3s(computer generated audio was positively primitive compared to today), text and hi-res graphics were frequently completely separated, you could have one or the other, rarely both. The complexities of GUI programming rendered BASIC obsolete and still form the most fundamental hurdle to the development of something truly functionally equivalent. But if you still contend that Python or Javascript could in anyway inherit the mantle from BASIC you simply do not get it.

    • Awesomely said!! Blew my mod points by commenting earlier, but your explanation/analysis is the best I've seen. Bravo, sir!!
    • Mod parent up

      But I would add that the kids banging keys from the late 70's into the late 80's not only leaned to program in BASIC, many also learned to program in their processors assembly language, and amazingly both of these languages are poo-poo'd for bizarrely opposite reasons today.

      Its asinine. Pretentious language bigots.

Nothing succeeds like excess. -- Oscar Wilde

Working...