Slashdot Mirror


Tim Cook: Coding Languages Were 'Too Geeky' For Students Until We Invented Swift (thestar.com)

theodp writes: Speaking to a class of Grade 7 students taking coding lessons at the Apple Store in Eaton Centre, the Toronto Star reports that Apple CEO Tim Cook told the kids that most students would shun programming because coding languages were 'too geeky' until Apple introduced Swift. "Swift came out of the fundamental recognition that coding languages were too geeky. Most students would look at them and say, 'that's not for me,'" Cook said as the preteens participated in an Apple-designed 'Everyone Can Code' workshop. "That's not our view. Our view is that coding is a horizontal skill like your native languages or mathematics, so we wanted to design a programming language that is as easy to learn as our products are to use."

216 of 335 comments (clear)

  1. Congratulations you invented LOGO! by xxxJonBoyxxx · · Score: 5, Funny

    >> we wanted to design a programming language that is as easy to learn as our products are to use

    Congratulations you invented LOGO!
    https://en.wikipedia.org/wiki/Logo_(programming_language)

    1. Re: Congratulations you invented LOGO! by iapetus · · Score: 3, Interesting

      I was thinking COBOL...

      --
      ++ Say to Elrond "Hello.".
      Elrond says "No.". Elrond gives you some lunch.
    2. Re:Congratulations you invented LOGO! by red_dragon · · Score: 5, Interesting

      Congratulations you invented LOGO!

      Or, they could've dug through their own software catalogue:

      https://en.wikipedia.org/wiki/HyperCard

      --
      In Soviet Russia, Jesus asks: "What Would You Do?"
    3. Re:Congratulations you invented LOGO! by 0100010001010011 · · Score: 3, Interesting

      I wish they did. I learned to program on Hypercard. It took care of one of the biggest 'problems' with most languages now, a GUI. Python's GUI tools are still a mess that don't always work cross platform.

      It was easy enough and came with enough built in documentation that 13 year old me could figure it out before Stack Exchange.

    4. Re:Congratulations you invented LOGO! by xxxJonBoyxxx · · Score: 1

      To be fair, Apple BASIC had a nice onramp to assembly. You weren't going to make music, for example, without knowing a little about PEEK and POKE.

      That prepared me to walk off a similar cliff from C to PC assembly a few years later. (I didn't notice I was walking on air until coworkers pointed it out.)

    5. Re:Congratulations you invented LOGO! by drinkypoo · · Score: 3

      Hypercard's logical successor is Filemaker Pro. I don't know whatever happened to that, but it let you construct interfaces by dragging and dropping. Back when web interfaces were a relatively young thing, I participated in creating a tool to let users select VLANs on Catalyst switches so that they could connect ports on their desks with ports in the testing lab using Filemaker Pro on Windows as the server, and perl on Linux for the backend (using Expect to actually talk to CatOS.) That took about three days, including making it acceptably attractive and usable. And web interfaces aren't (or weren't, no idea what's up with Filemaker now) even the program's primary goal.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    6. Re:Congratulations you invented LOGO! by the_skywise · · Score: 2

      pfft - back in my day we had these things called Lie-Brer-EEES where you could check out books that had actual programs written in them that you could TYPE IN by yourself (with some hours of effort) to play Star Trek (You were the E, Klingons were the K...). In truth, I actually bought that book with my own birthday money at an incredible sum at the time.
      There was no Ent-ree-net, hell boy modems weren't even readily available for consumers yet!
      I just got tasked with setting up a new project in a framework I've never used before - I've already googled around, found some help on stack exchange and a few blogs describing examples and already running with it. In ye olden dayeth (like more than 5 years ago) I'd be trying to find a book on Amazon about it, 10 years ago I'd be spending lunch at the local book store seeing if there were any tomes on it, in ancient civilizations (20 years ago) my company would've sent me off for a training class!

      Here ya young punk! Educate yourself! That same book is up on the net for FREE!
      https://annarchive.com/files/B...

    7. Re: Congratulations you invented LOGO! by K.+S.+Kyosuke · · Score: 1

      I was thinking COBOL...

      * COBOL IS THE FIRST THING I THOUGHT OF AS WELL - THE LANGUAGE FOR NORMAL SANE PEOPLE

      (Bah, why is it telling me than I'm yelling? Obviously, I'm speaking perfectly normally!)

      --
      Ezekiel 23:20
    8. Re:Congratulations you invented LOGO! by cervesaebraciator · · Score: 2

      Filemaker is still around. I had to learn it a couple of years back because a research project I was working on used it. I think the project itself is indicative of why Filemaker still exists. When the project started, they went looking for someone who could put together a database for them on the cheap. The guy they hired had been using Filemaker for years and, yeah, he could totally do that for them. It was a mess. The poor folks on the research project didn't even realize that a web-based front end was a possibility. The guy had instructed them to edit the database at home via campus computers using remote access on Windows. He had countless work arounds and quirks for everything. But, once they had the database and had sunk costs into it, they felt like they had to stick with it. I suspect he's still out there, somewhere, causing people to be stuck with Filemaker.

    9. Re:Congratulations you invented LOGO! by AHuxley · · Score: 1

      Another generation can learn how to GUI code?
      GUI robot kits? More computers for all?
      Why not take that funding and just test for people who have math skills? People who could be interested in computers and math.
      Pass the tests, exams and get more computer support.
      The other students can try for languages, music, art, sport, vocational education depending on their own interests, ability to learn and results.
      Teach more mathematics to people who want to learn and get them to the best universities.
      Another next gen Basic, Pascal for "education" is great for teachers, people selling education support. The results a generation later are not great given the computers, software costs.

      --
      Domestic spying is now "Benign Information Gathering"
    10. Re: Congratulations you invented LOGO! by Frederic54 · · Score: 1

      I thought the same thing, everyone can understand:

      ADD A TO B GIVING C
      MULTIPLY C BY D GIVING E

      etc

      --
      "Science will win because it works." - Stephen Hawking
    11. Re:Congratulations you invented LOGO! by drinkypoo · · Score: 3, Informative

      I suspect he's still out there, somewhere, causing people to be stuck with Filemaker.

      Doubtless an open-source, platform-agnostic solution works better. I use Drupal these days when I want to do a job like that. It provides all the usual functionality you expect from a CMS, and a fairly small set of modules will let you create views on arbitrary database tables so that you can use it as a glorified database reporting tool without ever writing a line of code, CSS aside. You just create views. And the CSS is only needed to make it look pretty, not to make any sense of the information at all. And there are export tools.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    12. Re:Congratulations you invented LOGO! by fizzer06 · · Score: 1

      PC Magazine used to have printed hexadecimal assembly code that you could type into Microsoft's debug program to create small utilities in the .com format.

    13. Re:Congratulations you invented LOGO! by angel'o'sphere · · Score: 1

      There is plenty of programming that has absolutely noting to do with math.

      And also: assuming that one who is good at math is also good at programming is bollocks.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    14. Re: Congratulations you invented LOGO! by Anonymous Coward · · Score: 1

      Everyone can also understand c = a + b. It has the added bonus of being able to get Hello World written before the heat death of the universe.

    15. Re: Congratulations you invented LOGO! by LifesABeach · · Score: 1

      Funny, I have always thought of The Swift language as Apples crippled lerch to be just like Python.

    16. Re:Congratulations you invented LOGO! by sg_oneill · · Score: 2

      I think one of the most painful projects I ever had was trying to interface Filemaker, a campus Oracle DB and Mailman. Take student records from the Oracle db, transfer them to Filemaker for , god knows what reason, then push them later to mailman for mass mail. The first demo somehow the mailman instance broke and turned into a kind of loop that spammed about 9000 students with nearly 100 mails each, mostly just repeated "out of office" messages.

      I never drank so hard as I did that night.

      --
      Excuse the Unicode crap in my posts. That's an apostrophe, and slashdot is busted.
    17. Re:Congratulations you invented LOGO! by TheFakeTimCook · · Score: 1

      Congratulations you invented LOGO!

      Or, they could've dug through their own software catalogue:

      https://en.wikipedia.org/wiki/HyperCard

      I love HyperCard and HyperTalk; but it does NOT have nearly the "Natural Language" properties that Bill Atkinson and Dan Winkler thought it did. And as far as "wordiness", COBOL has NOTHING on HyperTalk!!!

      https://en.wikipedia.org/wiki/...

      Proof: One has to look no further than AppleScript, which is the syntactic kissing-cousin of HyperTalk.

    18. Re: Congratulations you invented LOGO! by Monster_user · · Score: 2

      It is easy to get this opinion, and get on this bandwagon, but there has to be a balance between time spent learning a languge, and the value of the solutions provided. Not everything needs a jackhammer, some things need a regular hammer, and some things just a thumb. Use the tool for the job, and then replace it when it is cost effective to do so. Such as when the long term cost has a high expected return on investment.

      There is something to be said for easy to deploy but comparatively crappy solutions. There is a reason Pizza delivery services don't hire racecar drivers, nor build racecars. There is also a reason your typical delivery driver doesn't drive a brand new vehicle.

      We should be making it clearer when a teenage using a trendy solution is the most cost effective, and when it more cost effective to hire a programmer fluent in a more powerful language. The former is a short term experiment to get a service off the ground. The latter is a scalable, dependable, and efficient solution for larger scale deployments.

      The other thing these languages need is exportable data, and exportable UIs. We don't want to lock companies in to poor solutions while providing an "onramp" to grow the market.

    19. Re:Congratulations you invented LOGO! by TheFakeTimCook · · Score: 1

      Hypercard's logical successor is Filemaker Pro. I don't know whatever happened to that, but it let you construct interfaces by dragging and dropping. Back when web interfaces were a relatively young thing, I participated in creating a tool to let users select VLANs on Catalyst switches so that they could connect ports on their desks with ports in the testing lab using Filemaker Pro on Windows as the server, and perl on Linux for the backend (using Expect to actually talk to CatOS.) That took about three days, including making it acceptably attractive and usable. And web interfaces aren't (or weren't, no idea what's up with Filemaker now) even the program's primary goal.

      FileMaker lives on!

      Still an Apple Subsidiary. Still Cross-Platform (Mac and WIndows + iOS + Web). Standalone, on-Prem Server, and Cloud-Based Server Options.

      Still the hands-down Easiest GUI Form and Report Editors on the Planet!

      Only Multi-User DBMS I know of with LIVE record-updating to ALL users sitting on the same Record!

      Still the most misunderstood and ignored Multi-User, Multi-Platform DBMS ever!

      http://www.filemaker.com/

    20. Re:Congratulations you invented LOGO! by TheFakeTimCook · · Score: 1

      I suspect he's still out there, somewhere, causing people to be stuck with Filemaker.

      Doubtless an open-source, platform-agnostic solution works better. I use Drupal these days when I want to do a job like that. It provides all the usual functionality you expect from a CMS, and a fairly small set of modules will let you create views on arbitrary database tables so that you can use it as a glorified database reporting tool without ever writing a line of code, CSS aside. You just create views. And the CSS is only needed to make it look pretty, not to make any sense of the information at all. And there are export tools.

      Maybe, if you want to re-invent every aspect of every wheel.

      But FileMaker simply can't be beat for being able to bang-out a really decent-looking, and acting, application in almost zero time.

    21. Re:Congratulations you invented LOGO! by TheFakeTimCook · · Score: 1

      I think one of the most painful projects I ever had was trying to interface Filemaker, a campus Oracle DB and Mailman. Take student records from the Oracle db, transfer them to Filemaker for , god knows what reason, then push them later to mailman for mass mail. The first demo somehow the mailman instance broke and turned into a kind of loop that spammed about 9000 students with nearly 100 mails each, mostly just repeated "out of office" messages.

      I never drank so hard as I did that night.

      So, because YOU didn't take time to learn FileMaker properly, it is FILEMAKER's Fault?!?

      Got it!

    22. Re:Congratulations you invented LOGO! by ceoyoyo · · Score: 1

      I had a similar encounter with an old database designed by amateurs in FileMaker. I had to acquire a copy of an old version to load the file, then upgrade it to a later version that had SQL export.

    23. Re:Congratulations you invented LOGO! by TheFakeTimCook · · Score: 1

      PC Magazine used to have printed hexadecimal assembly code that you could type into Microsoft's debug program to create small utilities in the .com format.

      That goes back a LOT further than "PC Magazine", whippersnapper!

    24. Re: Congratulations you invented LOGO! by fisted · · Score: 1

      I don't understand what B GIVING C is, and what impact adding A to that might have. Care to elaborate?

    25. Re:Congratulations you invented LOGO! by Maury+Markowitz · · Score: 1

      > It took care of one of the biggest 'problems' with most languages now, a GUI

      Indeed, and this remains a problem with Swift if one wants up-an-at-em programming. Specifically, I think there were three key ideas in HC that I've seen only so-so implementations of since:

      1) a USEFUL forms/GUI editor is the main UI
      2) scripts/programming is connected to the GUI item directly
      3) all GUI items are connected to a back-end datastore

      VB and FMP do (1) for sure, Swift absolutely does not (although it could, if Apple would make a real Form object). VB kinda did 2, in a way that I think actually improves on the HC model (ie, all language for one form is in one file, but you can find the bits related to THIS part of the UI with a click). FMP does 3, VB allows it, Swift only does so with a lot of work.

    26. Re:Congratulations you invented LOGO! by TheFakeTimCook · · Score: 1

      To be fair, Apple BASIC had a nice onramp to assembly. You weren't going to make music, for example, without knowing a little about PEEK and POKE.

      That prepared me to walk off a similar cliff from C to PC assembly a few years later. (I didn't notice I was walking on air until coworkers pointed it out.)

      And it didn't hurt that the Apple ][ had a built-in 6502 mini-assembler!

      *F666G FTW!!!

      Here it is running on a later-model Apple //e, but it was actually in the ROMs of the original Apple ][.

      https://www.youtube.com/watch?...

    27. Re:Congratulations you invented LOGO! by TheFakeTimCook · · Score: 1

      There is plenty of programming that has absolutely noting to do with math.

      And also: assuming that one who is good at math is also good at programming is bollocks.

      I'll second, third, and FORTH that!

      I absolutely SUCK at math; but LOGIC is not Math, per se; and am GREAT at Logic. And have been making my living doing Software Development from Assembly Language on up, for almost 50 years.

    28. Re:Congratulations you invented LOGO! by fisted · · Score: 2

      I know plenty of math people (Students, PhDs, Profs) who suck massive balls at programming or/and at computers in general. It's not the same thing, it's not even a similar thing. Like many things, just because it can be described by math (which pretty much goes for anything) doesn't mean it's anything like maths. Same fallacy as physicists who think they're universally knowledgable because in the end, everything boils down to physics.

      Math people have extra difficulties because they're intimitately familiar with concepts and terminology that's fundamentally different between math and programming, sometimes outright backwards (e.g. our variables are their constants, their variables are ... well we don't have a concept like that in imperative programming. Or functions with no functional description but side-effects (wtf is a side-effect in math?). Et cetera.

    29. Re:Congratulations you invented LOGO! by Anonymous Coward · · Score: 1

      There was a magazine dedicated to the Commodore 64 (Byte?) that used to publish applications in hexidecimal. Your first loaded a Basic program that allowed you to key in the hex codes, then typed in the hex codes and saved them. Then you ran the code and had access to a whopping 58k of ram since you were entering 6502 Assembly code that didn't require a Basic interpreter.

      The data entry program reset a section of keys to act like a keypad since the C64 default keyboard didn't have one.

      Edit: captcha is "ascend". Seems somehow appropriate.

    30. Re:Congratulations you invented LOGO! by AHuxley · · Score: 1

      Some sort of entrance exam might help? Then an average that passed could be good at programming and computers in general? Less of that massive gap in needed skills?

      --
      Domestic spying is now "Benign Information Gathering"
    31. Re:Congratulations you invented LOGO! by drinkypoo · · Score: 1

      But FileMaker simply can't be beat for being able to bang-out a really decent-looking, and acting, application in almost zero time.

      If all you want is to use it like Access, it might well be the best tool for the job. If you know you want web access out of the gate, I think it makes more sense to start with a CMS than a glorified desktop database. It was the right tool for the job at the time, but we weren't exposing it to the internet, either.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    32. Re: Congratulations you invented LOGO! by Anonymous Coward · · Score: 1

      Everyone can also understand c = a + b.

      I assure you that not everybody can understand what c = a + b means. Especially the form c = a + c seems to be pretty impenetrable.

      I have not tried to teach COBOL to such people, so don't know if this would work better. (setq c (+ a c)) didn't, BTW.

    33. Re:Congratulations you invented LOGO! by Etcetera · · Score: 1

      Congratulations you invented LOGO!

      Or, they could've dug through their own software catalogue:

      https://en.wikipedia.org/wiki/HyperCard

      I love HyperCard and HyperTalk; but it does NOT have nearly the "Natural Language" properties that Bill Atkinson and Dan Winkler thought it did. And as far as "wordiness", COBOL has NOTHING on HyperTalk!!!

      https://en.wikipedia.org/wiki/...

      Proof: One has to look no further than AppleScript, which is the syntactic kissing-cousin of HyperTalk.

      That, then, raises a second question: If Apple didn't want to, or couldn't remember how to, reach back into the 80s and 90s, why not beef up AppleScript?

      It's still an integral part of current OS releases, provides some level of natural text entry (or at least has DWIM syntax that's approachable by English-speaking beginners), and should provide a foundation for interfaces and modification easily enough.

      There's so much that could have been done with AppleScript and OSA in general that hasn't... And yet here they are reinventing things again. Apple 2017 truly is reminiscent of Apple 1993.

    34. Re: Congratulations you invented LOGO! by Dragonslicer · · Score: 1

      I was thinking COBOL...

      I guess that depends on your opinion of how easy it is to use Apple products.

    35. Re:Congratulations you invented LOGO! by TheFakeTimCook · · Score: 1

      But FileMaker simply can't be beat for being able to bang-out a really decent-looking, and acting, application in almost zero time.

      If all you want is to use it like Access, it might well be the best tool for the job. If you know you want web access out of the gate, I think it makes more sense to start with a CMS than a glorified desktop database. It was the right tool for the job at the time, but we weren't exposing it to the internet, either.

      Even though they actually have the same roots (starting out as the long-forgotten "Microsoft File"), FileMaker whips all over Access AND takes its lunch money!

      And FileMaker is kind of an interesting product. Closer to a Database that nearly anyone can create something useful-in. Used to have some serious limitations in its Scripting Language, and its approach to Relational Databases is, um, "unique"; but it has gotten steadily powerful over the years, and is a very good fit for a very large class of database-driven applications.

      I wouldn't try to write an ERP system in it; but for one employer, I did create a huge amount (like over a hundred) applications for production scheduling, equipment maintenance and calibration scheduling, Engineering Change Notice system, QA Tracking and Discrepancy-Tracking and Resolution System, R&D Inventory-tracking and BOM-Builder for new product designs, help-desk ticket-tracking, and even a custom labeling system that could not be replaced with ANY off-the-shelf package for over 12 years.

      Even though I have moved on, I recently heard that most, if not all, of those FileMaker-based applications are still in use today, a couple of DECADES later. I did finally find and use BarTender to replace my FileMaker-based custom labeling system, though.

      But never write-off FileMaker as "just another Access-like Database". The mere fact that it is decidedly cross-platform makes it WAY more useful than that bitch-ass Access EVER was!

    36. Re:Congratulations you invented LOGO! by TheFakeTimCook · · Score: 1

      Congratulations you invented LOGO!

      Or, they could've dug through their own software catalogue:

      https://en.wikipedia.org/wiki/HyperCard

      I love HyperCard and HyperTalk; but it does NOT have nearly the "Natural Language" properties that Bill Atkinson and Dan Winkler thought it did. And as far as "wordiness", COBOL has NOTHING on HyperTalk!!!

      https://en.wikipedia.org/wiki/...

      Proof: One has to look no further than AppleScript, which is the syntactic kissing-cousin of HyperTalk.

      That, then, raises a second question: If Apple didn't want to, or couldn't remember how to, reach back into the 80s and 90s, why not beef up AppleScript?

      It's still an integral part of current OS releases, provides some level of natural text entry (or at least has DWIM syntax that's approachable by English-speaking beginners), and should provide a foundation for interfaces and modification easily enough.

      There's so much that could have been done with AppleScript and OSA in general that hasn't... And yet here they are reinventing things again. Apple 2017 truly is reminiscent of Apple 1993.

      Well, one thing that AppleScript ISN'T is FAST. Never was, never will be.

      And there has been some interest in "updating" AppleScript, at least for iOS. Apple bought a company called "Workflow" about a year or so ago; but then... crickets. And the guy behind Automator, which is the GUI-implementation of AppleScript (kind of) for macOS, had his position eliminated; so?

      Here's an interesting article on some of all this:

      https://www.macworld.com/artic...

    37. Re: Congratulations you invented LOGO! by Aighearach · · Score: 1

      Great plan! You can start by looking up the word "giving," and see if you're then able to answer his question.

    38. Re:Congratulations you invented LOGO! by swb · · Score: 1

      I haven't touched it in years, but Filemaker was trivial to use for simple databases that were also fairly elegant to use.

      I remember thinking "Oh, I can pick up Access fairly easy" and found it fairly confounding and not nearly as easy to use as Filemaker for the same types of database.

      A parent poster said that people were stuck using Filemaker because of a convoluted setup and a bunch of sunk costs, but who hasn't seen that in spades with Access?

    39. Re:Congratulations you invented LOGO! by CWCheese · · Score: 1

      you're thinking of Compute! and Compute!'s Gazette magazine which had the hex code programs. I used to type them into my VIC-20 and then my C=64s. Amazing what you can do with 3.5KB RAM on a VIC-20 using the built-in routines that Commodore put into ROM. Do you remember Speedscript?

      --
      Have a Day!
    40. Re: Congratulations you invented LOGO! by Dog-Cow · · Score: 1

      How is a language that doesn't give a shit about indentation anything like Python? If it was, several thousand Apple devs would have torn their headquarters to pieces and put what was left of Cook on a spike.

      Basically, you know absolutely nothing about Swift, and you are proud to display your ignorance in public. You are an idiot.

    41. Re: Congratulations you invented LOGO! by drinkypoo · · Score: 1

      There is something to be said for easy to deploy but comparatively crappy solutions.
      [...]
      The other thing these languages need is exportable data, and exportable UIs. We don't want to lock companies in to poor solutions while providing an "onramp" to grow the market.

      That's gonna be a problem for filemaker. You can export the data (by hook or by crook) but you can't export the UI without saving web pages and then using them as templates.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    42. Re: Congratulations you invented LOGO! by Agripa · · Score: 1

      I was thinking COMAL but not as good.

    43. Re: Congratulations you invented LOGO! by david_thornley · · Score: 1

      I had a lot of trouble with I = I + ! when I first saw a programming language, and I have a certain amount of talent in the field. ADD 1 TO I. is more readable to someone not already familiar with programming.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    44. Re:Congratulations you invented LOGO! by david_thornley · · Score: 1

      Logic is math. You're good at one part of math, so I wonder why you're not good at other parts. Bad teaching? Lack of applications? Nobody told you that logic is math, so it didn't register as something you can't do until you were already doing it?

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    45. Re: Congratulations you invented LOGO! by CyberRacer · · Score: 1

      I wrote an assembler that used speedscript. Lol.. Those were the days. Just to date me though, my 1st programming experiances were 8080 machine code (entered in binary) and my highschool's Dec PDP-11. Well before my beloved C64 and Amiga days.

    46. Re:Congratulations you invented LOGO! by TheFakeTimCook · · Score: 1

      Logic is math. You're good at one part of math, so I wonder why you're not good at other parts. Bad teaching? Lack of applications? Nobody told you that logic is math, so it didn't register as something you can't do until you were already doing it?

      Logic is math only for very limited values of "math". ;-)

      My parents got divorced at a crucial time for learning basic math skills, and I ended up going to a bunch of different schools and never quite caught back up in the math department. Plus, I had an algebra 1 teacher who was so smart he just couldn't fathom how it wasn't just "obvious" to everyone, so he was no good at breaking things down in a way that made sense to me.

      My IQ was around 142 last I heard; so it's not like I'm exactly an imbecile; but IMHO, "math" is what a calculator does.

      Odd, since I taught myself trigonometry out of a Radio Shack electronics book...

    47. Re: Congratulations you invented LOGO! by ebvwfbw · · Score: 1

      Normal sane people,eh? Yea, everyone knows what pic 9v99 is, and so on.

      Then there was the JCL to handle the program... and data sets... Ugh.

      At least it's not APL. That's an insane language, however excellent for what it was for.

    48. Re:Congratulations you invented LOGO! by Zaelath · · Score: 1

      I knew of a similar situation where the Filemaker database was accessed via Terminal Services from remote site offices.

      Unfortunately, the site offices were real estate agents, who wanted to print high quality colour brochures from the remote server. Printouts that were 80-90 pages and being pushed over a 1Mbit connection @ 15 minutes/page.

      We suggested that they could print locally to a 10Mb PDF, move that to a local machine, and print it in a few minutes.

      Client: OMG SO MANY STEPS!!!

    49. Re:Congratulations you invented LOGO! by david_thornley · · Score: 1

      Logic is math. Trigonometry is math. Arithmetic operations are very basic math.

      If you taught yourself trig, you're not bad at math.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    50. Re:Congratulations you invented LOGO! by TheFakeTimCook · · Score: 1

      Logic is math. Trigonometry is math. Arithmetic operations are very basic math.

      If you taught yourself trig, you're not bad at math.

      Maybe not; but I sure have convinced myself, and several math teachers, of that, LOL!

  2. Oh God by Anonymous Coward · · Score: 1

    If languages are too "greeky," they should apply for a janitorial position.

    1. Re: Oh God by Monster_user · · Score: 3, Insightful

      Might be a good comment. Just because we can, doesn't mean we should. Who benefits from a large base of barely coders?

      One of Microsoft's advatages early was was that it was easy to program for. Bring down the difficulty of programming, and you bring down the cost of the programmer. Bring down the cost of the programmer, and you bring down the cost of the software. Bring down the cost of the software and you open up the market.

      However, bring the time and knowledge to program down too low, and you end up with bad programmers and users that blame the OS and/or computer, not the skill level of the programmer.

    2. Re: Oh God by Monster_user · · Score: 1

      A bridge for lego men doesn't have to be built with the same standards as a bridge for people.

      Similarly, different bridge construction techniques and knowledge are needed for different types of bridges. You don't need to know how to build the Golden Gate bridge to built a simple arch bridge over a stream in a garden.

      The other point is that failures in I.T. shouldn't be anywhere near as disastrous in the lower experience levels as in bridge building. Loss of life should not be a risk. Even loss of data shouldn't be a significant risk. The skill level of a programmer should reflect the value of data he is addressing. Not all data is valuable enough to pay a programmer several hundred grand a year. And some programs barely touch any data at all.

  3. Exposure and accessibility by ArtemaOne · · Score: 3, Insightful

    I can see exposure and accessibility being a factor in getting people interested in computer programming. Kind of like Carl Sagan's and Bill Nye's attempt to get simplified science to the masses. The reach sparked a passion in people that may have never had a reason to get into the field and expand their horizons.

    1. Re:Exposure and accessibility by SirGarlon · · Score: 2

      I think the idea Cook is advocating is that Swift isn't just a "toy" language to be used for kids' classroom projects.

      I've taken an interest in human factors lately and realized in my reading that human limitations such as working memory are a big part of why programming is difficult, and an abundant source of programming errors. Those limitations can't be wished away. Neither is it necessarily a wise allocation of labor to demand exceptional working memory as an entry condition to the career of programming.

      I haven't tried Swift myself but I'm open to the idea that the last 30 years since Java was developed have taught us a thing or two about patterns and abstractions that can make the complexity of software tractable.

      At first my reaction was to dismiss Cook's position as "dumbing down" a fundamentally complex task. Then I realized that one could view C as a "dumbed down" version of assembly language. I do not enjoy programming in assembly and I feel no shame in admitting that it would not be my first choice of language to implement a smartphone app. Therefore I probably shouldn't judge someone who says the same thing about Objective-C or Java.

      --
      [Sir Garlon] is the marvellest knight that is now living, for he destroyeth many good knights, for he goeth invisible.
    2. Re: Exposure and accessibility by Anonymous Coward · · Score: 3, Insightful

      I think Tim Cook is just publicizing Apple.

    3. Re:Exposure and accessibility by TheRaven64 · · Score: 4, Interesting

      Back when I was a PhD student, I came across a study showing that about 10% of the population naturally uses hierarchies in their mental model of structure. This came up in the context of HCI research, where you find things like filesystem hierarchies that make complete sense to some people and are largely incomprehensible to others. This was one of the reasons for iTunes' early success (before version 5, when they completely screwed up the UI): music was in a flat library, with arbitrary filters. You could filter by album, artist, or genre independently, there was no hierarchical structure. Geeks said 'why would I need this, I already have my music in a music/{genre}/{artist}/{album}/ hierarchy, people too stupid to understand that shouldn't use computers'.

      Why am I talking about this? Because almost all mainstream programming languages implicitly adopt hierarchical structures. We have namespaces containing classes containing instance variables and methods. We have nested scopes. We have call stacks of subroutines (though coroutines are starting to come back into fashion).

      So what makes Swift different? Absolutely nothing. It has a load of marketing behind it, but structurally it is no different from any other Algol family language with some Smalltalk influence. It requires thinking in precisely the same way as Objective-C or Java, it just spells some of the things differently. And it is both more verbose slower than Objective-C++ for pretty much every task.

      --
      I am TheRaven on Soylent News
    4. Re: Exposure and accessibility by Maury+Markowitz · · Score: 1

      > A serious language would be stable and not have such bloating problems.

      So when these are complete this year, it will suddenly be serious? It's not like they don't talk about this:

      https://github.com/apple/swift/blob/master/docs/ABIStabilityManifesto.md

    5. Re:Exposure and accessibility by SharpFang · · Score: 1

      Hey... it looks like you nailed the point behind the success of BASIC!

      It was flat as a table. All variables were globals; its loops, subroutines and conditionals behaved like a GOTO with a little extra flavor added, essentially no hierarchy whatsoever, just sequential execution line by line with jumps here and there. And beginners loved it, while experts lamented the "negative learning".

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    6. Re:Exposure and accessibility by dgatwood · · Score: 2

      You could filter by album, artist, or genre independently, there was no hierarchical structure. Geeks said 'why would I need this, I already have my music in a music/{genre}/{artist}/{album}/ hierarchy, people too stupid to understand that shouldn't use computers'.

      Those geeks were nuts. Manually creating a hierarchy where you can look things up by genre, artist, album, and title creating at *least* three symlinks for every single file you add, and if it involves more than one artist, potentially more than that. And it still provides you with no good way to search by a partial title/artist/album. Hierarchical organization is a good starting strategy, but when things need to have multiple designations, searchable tagging (like the card catalog in your library) is a much more practical approach.

      The other problem with hierarchies (besides the challenge presented by multiple parallel hierarchies that share data) is the tendency to add more levels than needed under the assumption that you'll need them someday. For example, I never could understand why people would want to use namespaces. Name your classes something useful/non-generic, and you won't have collisions. It's an unnecessary level of hierarchy that does nothing but create frequent compile errors because you forgot to "use foo".

      Either way, I agree with you that Swift (which IMO just looks like a bizarre blending of Objective-C and Pascal) doesn't make programming accessible to non-geeks in any meaningful way. I think the original idea was that if you could program in a scripting language, you could maybe handle Swift, but the thing is, people who can program in scripting languages are still solidly on the geek end of the spectrum. The only thing they usually lack for understanding Objective-C is a semester-long crash course in the language, if that. The whole "playgrounds" thing makes it slightly easier for those geeks who are just getting started and haven't worked with a C-based language, but on the whole, Swift mostly just takes off a few sharp edges and creates some new ones in the process, e.g. some amount of additional pain while calling into C code, having to cast even for trivial, guaranteed-safe promotions of integer types to larger-sized integer types (wat?), and so on. Most of what makes writing software hard is still hard.

      The biggest problem with trying to create a new programming language for "non-geeks" is that anybody who already knows how to write software well enough to create one almost certainly intuitively finds the hard parts of programming easy, which means they are unlikely to ever be able to recognize them. The hard parts of programming are not minor hassles like declaring types ahead of time, or any of the other trivial syntactic sugar that Swift provides, but rather the very act of thinking algorithmically in the first place. If you can't think like a computer thinks (understanding boolean logic, being able to conceive of multiple paths through the code, understanding recursion, etc.), you'll never be able to write code that the computer understands. And all of those things are inherently geeky.

      If somehow you could abstract programming enough that those things don't matter, you'd have a programming language for a non-geek, and it would basically be Hypercard minus the part where you dig in deeper and write actual code — a series of actions that happen when you do something. And if you get to that level of functionality, maybe you might then be able to get some subset of the people who understand the most basic visual programming to stretch their minds enough to write simple actions that do simple, linear things.

      But no, Swift is not that language. Call me when I can click on a button in Interface Builder and, without writing a single line of code, make it add the contents of a group of text fields as a new record in a SQLite database. Call me when the view automatically populates itself with the contents of that database without writin

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

    7. Re:Exposure and accessibility by DavidHumus · · Score: 1

      Those of us in the array-programming communities have been aware of the limitations of working memory - and the concomitant problems - for decades: http://code.jsoftware.com/wiki... .

    8. Re:Exposure and accessibility by Dragonslicer · · Score: 1

      Back when I was a PhD student, I came across a study showing that about 10% of the population naturally uses hierarchies in their mental model of structure. This came up in the context of HCI research, where you find things like filesystem hierarchies that make complete sense to some people and are largely incomprehensible to others. This was one of the reasons for iTunes' early success (before version 5, when they completely screwed up the UI): music was in a flat library, with arbitrary filters. You could filter by album, artist, or genre independently, there was no hierarchical structure. Geeks said 'why would I need this, I already have my music in a music/{genre}/{artist}/{album}/ hierarchy, people too stupid to understand that shouldn't use computers'.

      I wonder if this is why so many programmers have trouble with database design and sometimes even just writing SQL. Something like an entity-relationship model grates against their hierarchical mode of thinking.

    9. Re:Exposure and accessibility by Dog-Cow · · Score: 1

      Why would you change? Languages without hierarchy were replaced for production code for a reason.

    10. Re:Exposure and accessibility by Dog-Cow · · Score: 1

      If you don't get why namespaces are useful, you've never worked on a system involving lots of code from third-parties that you can't (or don't want to) change. If all you deal with are toys, you don't need a lot of complex, but useful features.

    11. Re:Exposure and accessibility by TheRaven64 · · Score: 1

      Language without structure were replaced for production code for a reason. Hierarchy is not the only structure. Dataflow languages don't impose a hierarchical structure, yet are often both easier to teach and a more natural match for the problem. Erlang has some hierarchy, but far less than most languages and is probably the modern language that maps most naturally to modern hardware, as well as making it easy to write very complex programs that scale to large clusters.

      --
      I am TheRaven on Soylent News
    12. Re:Exposure and accessibility by TheRaven64 · · Score: 1

      Could be, though SQL is also fairly declarative and programmers with a strong imperative background tend to try to force it to behave like an imperative language in ways that make life harder for the query optimiser.

      --
      I am TheRaven on Soylent News
    13. Re:Exposure and accessibility by TheRaven64 · · Score: 1

      Alan Kay has done some work that shows that teaching students the actor model first gives better results (and gives students who can write parallel code as easily as serial code). A language like Erlang, but with syntax that doesn't assume that you're already fluent in Prolog, combined with some graphical tools for setting up communication channels would probably be a good starting point.

      --
      I am TheRaven on Soylent News
    14. Re:Exposure and accessibility by dgatwood · · Score: 1

      Everything I've ever worked with involves lots of code from third-parties, and I not only don't think namespaces are useful, but actually find them to be harmful.

      In the Objective-C world, we have sensible naming conventions, and everybody agrees to them, with the most important of those being that every project has a three-letter prefix, and your class names always start with that prefix. And the language goes on from there to encourage rich, long names that are unlikely to collide.

      Namespaces, by contrast, seem primarily intended to encourage people to choose stupid, generic names, like "queue", rather than something sensible, like FQGHTTPOperationsQueue. And by encouraging people to choose stupid, overly generic names, it means that as soon as you actually have to search your code base to try to find one of those poorly named classes so that you can decide whether or not you really want to keep using that library, you can't easily do it, because there are eighty classes, all named "queue", that differ only by namespace. (Yes, I'm being hyperbolic, but not excessively so.)

      By delaying the point where you start to notice these badly named classes and methods and functions and constants, every developer who uses that shared library ends up building up huge code bases around those poor naming choices, and when they later decide to change to a replacement library, they experience serious pain. If you don't hide the conflicts behind namespaces, those sorts of stupid naming decisions get quickly nipped in the bud (filing bugs against early beta versions) before they become a problem, and searching for places where you used those classes (or whatever) is trivial, as it rightfully should be.

      No, my distaste for namespaces isn't because I lack experience. Rather, it's because I don't. I've had enough bad experiences caused by such foolishness that I can't imagine why anyone would willingly subject themselves to it unnecessarily. To me, namespaces are the antithesis of good programming practice, because they actively encourage bad programming practices. They're the programming equivalent of peril-sensitive sunglasses, hiding serious design deficits behind a thin veneer that only protects you from seeing the peril, thus preventing you from avoiding its eventual effects. And that is why I think namespaces are a fundamental mistake.

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

    15. Re:Exposure and accessibility by im_thatoneguy · · Score: 1

      encourage people to choose stupid, generic names, like "queue", rather than something sensible, like FQGHTTPOperationsQueue

      Hahahahahahahahahaahahaha... oh man. Thanks for the laugh.

  4. Coding is cool bro! by Austerity+Empowers · · Score: 5, Funny

    Code like a beast Bro! Bro that code into shape! Be awesome! Beer at noon. Pointers? What are you a nerd? Memory management? That's like for the CPU to deal with, bro, be bro! Efficient code? BRO! They keep making faster CPUs! Mutilate that code!

    Bro, it's got what your body craves.

    1. Re:Coding is cool bro! by jellomizer · · Score: 1

      However for a lot of the most common programming you will be always writing the same code over and over again. To deal with these internals.
      Making sure you don't miss pointers, having to measure every value... All for the normal CRUD Application we need to produce over and over again.

      Because of these higher level languages the stability of our code has noticeably increased. Think back to using a computer back in the 1990's. Even if you had a solid OS such as a Unix, Linux, even NT which wouldn't cause the full system to go down, chances are what ever program you are running will often fail after time. Hence we have policies (often still in place) for scheduled reboots.

      We had and will always have bad programmers, and we will also have good ones. However we should be able reduce the damage of the bad programmers so their applications still work.
      We can use the good ones to write code where efficiency really does matter.
       

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    2. Re:Coding is cool bro! by Anonymous Coward · · Score: 5, Interesting

      Because the world needs more "programmers" that think like this.....

      Do us all a favor Cook, get rid of it. If they need a "cool" language to be programmers, then we DON'T need them to be programmers. We WANT the geeks who will try to make their code as efficient as possible, or implement a RFC with immaculate detail. We WANT them to know the limits and pitfalls of their chosen language forwards and backwards so that they make better more secure code. We DON'T want people who will only code if a monkey can do it. (Chances are you could automate that anyway.)

      I'll take the geek's code over the quarterback's code any day, and if we had our way Cook, you wouldn't have a choice about it either. (We want some laws to forbid the company ideal of profit over responsible software development.)

    3. Re:Coding is cool bro! by AmiMoJo · · Score: 1

      Because the world needs more "programmers" that think like this.....

      Yes, actually. A lot of programming doesn't need a deep understanding of things like memory management or how a CPU works. Javascript is a great example - as maligned as it is, there are literally millions of web sites and business applications written with it that do useful work, that are adequate and were cheap and quick to develop. For the desktop you have things like C#, where array.Sort() might not be the most optimal solution but it works and takes about a second to type.

      Building the tools to make that kind of thing robust and perform reasonably well is a highly skilled, difficult job. It's also one that is in heavy demand. Since non-programmer programming languages from the 80s and 90s failed it's all we have.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    4. Re:Coding is cool bro! by TheRaven64 · · Score: 2

      We WANT the geeks who will try to make their code as efficient as possible

      We do, but we also want people who will spend 10 minutes throwing together a simple program that will automate something in their workflow and save them half an hour a week for the rest of the year. We don't really care if it takes 30 seconds of CPU time to run, when a good programmer could optimise it to run in under a millisecond, because it's still far cheaper to spend 30 seconds of CPU time than 30 minutes of human time each day.

      We WANT them to know the limits and pitfalls of their chosen language forwards and backwards so that they make better more secure code

      If they're writing reusable code, or code that's taking untrusted data and doing dangerous things with it, sure. But if they're just doing some small automation tasks? I just want them to get their job done faster.

      Stop thinking of programming as something that only people who work as full-time programmers do. Most jobs have huge inefficiencies in their workflow because people who know exactly what steps are simple and repetitive don't have the skills to apply some trivial automation.

      --
      I am TheRaven on Soylent News
    5. Re:Coding is cool bro! by beuges · · Score: 1

      For the desktop you have things like C#, where array.Sort() might not be the most optimal solution but it works and takes about a second to type.

      I code in C# all day long. A few years ago I was maintaining a system built in C# by a team whose primary forte was Java. You'd expect some inefficiencies there from the java devs who maybe didn't know about some C# library or language feature which would have made things easier for them, and that would have been fine. I cut down a database query from 20 minutes to under a second by removing a few dozen pointless joins and adding a few indexes, and reordering some loops in the code.
      None of that would have been any different regardless of what language was being used. The problem was that the people who wrote the original code simply didn't put any thought into the resource implications of the decisions they made.

      You don't necessarily have to be able to understand assembly fluently to be a good dev, but you have to understand what your code is doing behind the scenes, how your operating system is servicing requests from your application runtime, etc, in order to write proper, efficient code.
      I always see answers on StackOverflow suggesting to just call .ToList() on a linq query to solve all your problems, which is fine when you're writing a high school assignment, but when your .ToList() is going to end up materializing a multi-million row database table, you're going to end up in a world of pain. It's better to understand what your compiler, framework, runtime and operating system are doing behind the scenes, even if just at a high level, in order to be able to write good code, rather than just code that works.

    6. Re:Coding is cool bro! by gbjbaanb · · Score: 1

      Most jobs have huge inefficiencies in their workflow because people who know exactly what steps are simple and repetitive don't have the skills to apply some trivial automation.

      sure, but most jobs also have huge inefficiencies because someone decided to automate their workflow using Excel macros.

      The problem is one of expertise, coding isn't easy to do right and although I wish there were ways to automate workflows by using some simple and easy to use system (eg a more expressive batch language) the number of systems, and languages, mean that you have to become a semi-professional programmer just to make things work. Otherwise, you're just guessing and throwing together some code you found on the web and ending up with unmaintainable messes that cost more in the end.

      Even with programmers, you have to become knowledgeable at algorithms and languages - and there are so many languages trhat you're never good at all of them. And here's Swift, yet another language to add to the ecosystem. No doubt in a few years there'll be another one and everyone will be fighting over an even larger ecosystem.

  5. Wait, what? by squiggleslash · · Score: 5, Insightful

    I know Jobs had an RDF, and Cook presumably wants to copy that, but the RDF was supposed to affect the people around him, not himself. Does he really think Swift, which is another me-too language that looks like almost every other popular programming language except Python, is somehow not "geeky"? It's no more or less programmer hostile than Javascript FFS.

    Is Cook trolling? That's got to be it, right?

    --
    You are not alone. This is not normal. None of this is normal.
    1. Re: Wait, what? by Anonymous Coward · · Score: 2, Insightful

      Not trolling, but clever marketing. Look at his audience. Heâ(TM)s trying to hook the kids before they get comfortable with other tools and environments

    2. Re:Wait, what? by AHuxley · · Score: 5, Interesting

      Its virtue signalling and educational political correctness.
      So much money has been added to gov education over the decades from the gov and private sector in the USA.
      The amount per student in some city and states should have produced amazing results if a lack of spending in the past was the only problem.
      After decades of testing the results are not looking as good as expected. Average students given support, funding, new computers, GUI robots, computers in the home still all fail to study, won't learn, cant pass tests, cant pass exams.

      The politically correct educators cant admit they got it so wrong for many decades and that all that new funding was wasted on below average students.

      So its has to be what was been used to educate the very average and below average students. Change the computer education and the results for below average students will improve for some reason.
      More spending and a new way to look at computers has to work in ways that past funding and new computers did not.
      Everyone just wants to keep the funding going and see the next gen of computers sold and supported.
      The sales pitch is the new language. In the past it was robot kits, tablets, laptops, GUI, desktops, new calculators with the needed new textbooks.
      The test results stay the same every generation as the problem is not lack of funding, the lack of computers, the wrong computer language.

      The students just won't, cant, have no interesting in study. Every other aspect of education has been improved. Books, GUI, buildings, food, more teachers, better teachers, more gov money, private sector money, computers.

      --
      Domestic spying is now "Benign Information Gathering"
    3. Re:Wait, what? by Hal_Porter · · Score: 3, Insightful

      I dunno, I think he's smarter than he looks.

      Consider.

      Back when people wrote code in Objective C it was easy to have some Objective C for the iOS UI, some Java for the Android UI and a big gob of portable C/C++.

      Now if they write the whole app in Swift it will be easier to get it running on iOS. And it seems like there are various projects to get Swift running on Android too.

      E.g.

      https://medium.com/@ephemer/ho...

      I.e. Apple have something which is a competitor to writing everything in C# and using Xamarin to target both platforms.

      Xamarin has always seemed a bit horrid to me frankly. And doing the 'big gob of portable C/C++ with two sets of UI code is also horrid.

      If Apple can build a platform that people use for IOS apps knowing they can run well on Android they've got a pretty compelling platform. And if it turns out not to work very well on Android they've got more iOS exclusive applications.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    4. Re:Wait, what? by werepants · · Score: 5, Informative

      So much money has been added to gov education over the decades from the gov and private sector in the USA.

      The amount per student in some city and states should have produced amazing results if a lack of spending in the past was the only problem.

      What the hell are you talking about? In my state, total per-pupil funding is about $7000-$8000/yr, and has barely been keeping pace with inflation. For reference, daycare for one kid costs about $2000 PER MONTH here - what the schools get is a pittance by comparison. And keep in mind that daycare can be done by college students and stay-at-home moms, while teachers must have a bachelor's degree, minimum, and often have an advanced degree. Many of those are STEM degrees, worth quite a bit in industry.

      The schools haven't been adequately funded for decades, and things are only getting worse.

    5. Re:Wait, what? by AHuxley · · Score: 1

      The US private sector has added their funding in too in some cities and states. Nothing really got the exams and test results expected given the amount of funding given. Its not a lack of funding per student.

      --
      Domestic spying is now "Benign Information Gathering"
    6. Re:Wait, what? by Bright+Apollo · · Score: 2

      Grow up.

      Programming is *hard*. It's hard for a variety of reasons, but one of which is the mutation of your end user's problem into something that can be automated. The language is really the last thing that's a barrier to new entrants. A failure to teach problem decomposition is where I'd address this, first.

      Swift. Spare us, who make a living doing this, the next Silver Bullet.

      --#

    7. Re:Wait, what? by ZiakII · · Score: 1

      Depends on the state we spend $20,000 up to $35,000 in NJ.

    8. Re:Wait, what? by Anonymous Coward · · Score: 1

      Public schools have larger teacher to student ratios than daycares typically. Also, schools are often open for a shorter period of time, e.g 8:30am-3pm, where a daycare might run 7am-5pm. Another factor is schools not being open in the summer. $2K/month for daycare for one child is much higher than average in most of the US.

    9. Re:Wait, what? by PmanAce · · Score: 1

      How is Xamarin horrid? I's not even a language.

      --
      Tired of my customary (Score:1)
    10. Re:Wait, what? by Rande · · Score: 1

      The achievement of students is highly correlated with the success of their parents, much higher than the quality of the school and the teachers and materials.

      So instead of mucking around spending money on schools, how about we get better parents?

    11. Re:Wait, what? by cascadingstylesheet · · Score: 1

      So much money has been added to gov education over the decades from the gov and private sector in the USA.

      The amount per student in some city and states should have produced amazing results if a lack of spending in the past was the only problem.

      What the hell are you talking about? In my state, total per-pupil funding is about $7000-$8000/yr, and has barely been keeping pace with inflation. For reference, daycare for one kid costs about $2000 PER MONTH here - what the schools get is a pittance by comparison. And keep in mind that daycare can be done by college students and stay-at-home moms, while teachers must have a bachelor's degree, minimum, and often have an advanced degree. Many of those are STEM degrees, worth quite a bit in industry.

      The schools haven't been adequately funded for decades, and things are only getting worse.

      You must be in a low cost of living state: see this.

      The comparison to daycare is also bizarre. Daycare, you may be surprised to learn, lasts all day, and doesn't take random days, weeks, and MONTHS off.

    12. Re: Wait, what? by Hal_Porter · · Score: 1

      Notice the way he doesn't say "I've developed a cross platform application using [some language/framework] and it had [list of positives] and [list of negatives]".

      I'll start

      Xamarin/C#.

      Positives : For dialog box applications this works pretty well. C# isn't a bad language.
      Negatives : Last time I looked at it vector graphics was supported only via an extremely crack addled hack to use a bunch of BoxViews invented by Charles Petzold, though this has apparently changed. It's hard to make dialog applications look completely native. Xamarin was a bit expensive when I looked at it.
      Summary: It's a good environment for Line of Business type apps which are just a bunch of forms.

      Portable C/C++ with per platform veneers

      Positives : You can use OpenGL for vector graphics. OpenGL is really fast and IMO elegant and I'd honestly rather use it than Skiasharp. On iOS XCode works really well for debugging. You can pull in C/C++ libraries. OpenGL works on a lot of platforms and not just Android and iOS. C/C++ which is basically "C with classes" is a really fast and intuitive language.
      Negatives : C/C++ is a bit too low level. Building UIs in OpenGL is time consuming. The apps don't look native. Debugging on Android is a bit of a mess. C/C++ seems like a bit of second class citizen on Android compared to Java, though it seems like this is less true with newer Android releases.
      Summary: It's a good environment for games and graphically intensive stuff, particularly if you already know some OpenGL and C and have written some video game code. Performance is amazing because C translates very efficiently to native code for the CPU and OpenGL translates very effectively into GPU operations.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    13. Re:Wait, what? by AHuxley · · Score: 1

      That was attempted by spending on computers, calculators, books, science, math in past generations.
      Poor areas stayed poor even after a lot of new investment per student for generations.

      --
      Domestic spying is now "Benign Information Gathering"
    14. Re:Wait, what? by Solandri · · Score: 4, Informative
      Schools are vastly over-funded. The U.S. spends more on education per student than any country except Switzerland. While a few states dip into the $7k/yr per student range you give, the national average is over $12k/yr per student.

      Total expenditures for public elementary and secondary schools in the United States in 2013â"14 amounted to $634 billion, or $12,509 per public school student enrolled in the fall (in constant 2015â"16 dollars).

      (Discrepancy with the OECD stats is due to being from different years, and the OECD stats including post-secondary non-tertiary education, while the NCES stats are for only K-12).

      Spending per student has about doubled in inflation-adjusted dollars over the last 40 years. and tripled since the 1960s. It peaked around 2007, and the people trying to get even more money put into education have been abusing that by using 2007 as the start of their spending graphs.

      Where is all the money going? I don't have time to find it again, but the Education Department's own stats are contradictory. If you take the amount of spending it lists in teacher non-salary benefits, and divide it by the number of teachers they give, it ends up something like $50k/yr per teacher. What's going on is the number of non-teaching administrators has exploded since 1970, far outpacing the growth in number of students. These administrators have been hiding it by shifting some of their salary expenses into those of teachers in the stats. Every time education receives a spending increase, the administrators sop up most of it and let only a trickle get through to teachers. Every time education receives a spending cut, these administrators pass it all on directly to the teachers and students, while protecting their own jobs and salaries. As a result, the teachers are constantly complaining of not having enough money despite the huge increases in education spending over the decades.

    15. Re:Wait, what? by TheFakeTimCook · · Score: 1

      I dunno, I think he's smarter than he looks.

      Consider.

      Back when people wrote code in Objective C it was easy to have some Objective C for the iOS UI, some Java for the Android UI and a big gob of portable C/C++.

      Now if they write the whole app in Swift it will be easier to get it running on iOS. And it seems like there are various projects to get Swift running on Android too.

      E.g.

      https://medium.com/@ephemer/ho...

      I.e. Apple have something which is a competitor to writing everything in C# and using Xamarin to target both platforms.

      Xamarin has always seemed a bit horrid to me frankly. And doing the 'big gob of portable C/C++ with two sets of UI code is also horrid.

      If Apple can build a platform that people use for IOS apps knowing they can run well on Android they've got a pretty compelling platform. And if it turns out not to work very well on Android they've got more iOS exclusive applications.

      And unlike his predecessor, Tim Cook actually CAN code:

      https://www.macrumors.com/2018...

      And even better, his example in the above article sounds like it was a real-time control application, which has its own special difficulties.

    16. Re:Wait, what? by TheRaven64 · · Score: 1

      Now if they write the whole app in Swift it will be easier to get it running on iOS

      Apple keeps asserting that, and in comparison to Objective-C Swift does have some improvements in code density. In comparison to Objective-C++, it's feels horribly verbose and full of redundancy. Swift also has really crappy C++ interop, so if you're using any C++ libraries then you can either use Objective-C++ and get the interop for free or Swift and be forced to jump through hoops.

      --
      I am TheRaven on Soylent News
    17. Re:Wait, what? by Dan+East · · Score: 1

      Daycare is for children younger than school age. It is harder to take care of them and keep them safe than school aged children. That is why here, in Virginia, the teacher to child ratio for children 3 to 5 years old is 1 : 10. One teacher can only have at maximum 10 children. For younger children up to 16 months the ratio is only 1 : 4. Most school classrooms will have 1 teacher to 20-25 students (I remember a lot of classes that had around 30 students). You're not factoring that into the school vs daycare costs.

      --
      Better known as 318230.
    18. Re:Wait, what? by deesine · · Score: 2

      Tell that to the administrators at a school board meeting, and get arrested.

      --
      damaged by dogma
    19. Re:Wait, what? by liefer · · Score: 1

      Back when people wrote code in Objective C it was easy to have some Objective C for the iOS UI, some Java for the Android UI and a big gob of portable C/C++.

      This was never the case. While technically possible, no one ever did this. Have you actually ever done this yourself? Its an absolutely terrible experience, especially on android. You will likely spend more time wrestling with the JNI layer and the oddities of the Android NDK, than you would simply writing 2 completely separate apps. To be fair the Android NDK has improved a lot since but i think its safe to say that only a very small minority uses this approach I think you realize this since a moment later you say so yourself:

      And doing the 'big gob of portable C/C++ with two sets of UI code is also horrid.

      Why was this contradictory mess of a comment modded up? Not to mention this blanket statement with no explaination:

      Xamarin has always seemed a bit horrid to me frankly

    20. Re:Wait, what? by vtcodger · · Score: 1

      Actually, I think the reason kids (and adults) are turned off by programming is that after you've learned a bunch of rather abstract rules and persuaded you computing device to print or display "hello world", there's nothing useful you can do with your knowledge. Scripting routine tasks might be useful. But your OS, applications software, and web browser will probably have defenses in depth to make scripting as difficult as possible. If they don't prevent it entirely.

      --
      You can't see ANYTHING from a car, You've got to get out of the goddamned contraption and walk...Edward Abbey
    21. Re:Wait, what? by MoralCharacter · · Score: 1

      Notice how it's Xamarin/C#? C# is the language, Xamarin is the framework that you write C# into in order to make cross platform applications.

      It's meant to be comparable to other things like Ionic/JS or ReactNative/JS.

      Personally I find the way Xamarin does binding between the model and the view to be a cludge compared to the simplicity of using AngularJS (which is different from Angular mind you, which Ionic uses).

    22. Re:Wait, what? by PmanAce · · Score: 1

      Of course I know Xamarin uses C#, I have 3 apps on the app store. Except I use mvvmcross, nobody should be using Xamarin.Forms, you can't replicate all native UI elements yet. And no, Xamarin is not comparable to Iconic, ReactiveNative or any other JS framework, server side is not comparable to client side.

      --
      Tired of my customary (Score:1)
    23. Re:Wait, what? by Hal_Porter · · Score: 1

      Have you actually ever done this yourself?

      Yeah. This book describes it well

      https://www.wiley.com/en-us/Ga...

      You don't need much platform specific code to get an OpenGL capable window and redirect touch events into it. I've seen the same technique used for cross platform OpenGL Win32/Mac applications - platform specific code creates a window, listens for events and then makes callbacks into cross platform code.

      Admittedly I couldn't get breakpoints to work on any of my Android devices. But they did on iOS.

      Pleco is structured like this, even though Pleco must have a lot of native UI code - it's not just getting an OpenGL window and drawing into it

      https://www.plecoforums.com/th...

      And I bet a lot of games are like this - e.g. Angry Birds on Android is a native library and a small amount of Java

      Basically if your app resembles Angry Birds more than it does Pleco it's not a bad approach.

      But I'm not really satisfied with either the "mostly portable C/C++, platform specific wrapper" approach or the "Write in C# for Xamarin" one as I've said in each and every comment in this thread.

      So I was sort of hoping someone would come up with some concrete alternatives for a cross platform app.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    24. Re:Wait, what? by gnasher719 · · Score: 1

      If you call Swift a "me too" language, then you are either clueless, have never seen it and never used it, or you are a troll.

    25. Re:Wait, what? by werepants · · Score: 1

      Depending where you are, the cost of living here (CO) isn't particularly low, but we are consistently in the worst 10 states for school funding and teacher pay. Last I checked, starting salaries for teachers ranged from about $26k - $40k in the state. Some charter schools I know of TOP OUT at $38k/yr - that's with 30 years of experience and a doctorate.

      Money in schools is just like money in life - if you've got enough to get by, an excess isn't going to improve things that much, but if you don't have enough for the basics, things are going to be miserable. The federal government is NOT dumping cash into education, and the schools that are well funded are the ones where local taxes are high.

    26. Re:Wait, what? by lgw · · Score: 1

      School funding isn't the answer, or even the question.

      Most differences in school outcome can be explained statistically by the income level of the students' families. Once you adjust for that, there's almost no correlation between school funding and outcome.

      Also, teachers with STEM degrees? Where is that? Teachers have education degrees.

      --
      Socialism: a lie told by totalitarians and believed by fools.
    27. Re:Wait, what? by Hal_Porter · · Score: 1

      Actually Mekorama, one of my favourite Android games works like this too

      http://www.mekorama.com/faq/

      What game engine does Mekorama use?

      I wrote the engine myself, from scratch, in C. It is cross platform (iOS, Android, Windows, OSX), uses OpenGL for graphics, and integrates the Bullet Physics library.

      If you unzip the apk file you find most of the code is in libmekorama.so. Run arm-linux-androideabi-nm on it and grep for Java_com and you see all the JNI entry points. And it's stuff like Java_com_martinmagni_mekorama_Mekorama_add_1touch, Java_com_martinmagni_mekorama_Mekorama_remove_1touch, Java_com_martinmagni_mekorama_RendererWrapper_on_1draw_1frame , Java_com_martinmagni_mekorama_RendererWrapper_on_1surface_1changed and so on. Pretty much what you'd expect.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    28. Re:Wait, what? by Comrade+Ogilvy · · Score: 1

      I agree that we should be skeptical about computer spending in schools. My own child is homeschooled and has carefully limited access to media and computers. And when my wife is asked about how he will learn those allegedly important "computer skills" he is missing out on, her answer is that most of the critical computer infrastructure we rely on was built by a generation of engineers that (mostly) never touched a computer until they were 18.

      Educational expenditure levels, in general, are complex, confounded by important social changes over the decades. A century ago a woman with literally genius level brains would happily accept a job as a teacher for the pay near that of a unskilled male laborer. Today, such a woman can choose between careers offering six figures. Unless we legislate to destroy the free market system, it was inevitable that school costs would rise much faster than inflation.

    29. Re:Wait, what? by werepants · · Score: 1

      School funding isn't the answer, or even the question.

      That's just obviously wrong. There is a massive teacher shortage right now, in large part because of teacher pay and work conditions. In every other industry, it's accepted that you get what you pay for when it comes to employees. The countries with the best education systems pay teachers better than ours, generally.

      Also, teachers with STEM degrees? Where is that?

      Ever had a math or science teacher? At least in my state, those teachers are required to have a B.S. in the subject area they teach, and often have a minor in education. Speaking from experience, I taught for about a year, saw that it was a bullshit career, and then decided to leave for industry and use that STEM degree to approximately quadruple my earnings. New teachers are leaving in droves because the pay is shit, the students and parents offer no respect, the performance scrutiny is worse than just about any other career, and the weekly hours are brutal. I've worked in software development, aerospace engineering, and IT, and none of them have been close to as demanding as teaching.

    30. Re:Wait, what? by ceoyoyo · · Score: 1

      It's true, isn't it? Most languages look like C. Except C++, which looks like C that was rescued from a corrupted hard disk.

    31. Re:Wait, what? by Hal_Porter · · Score: 1

      If we both agree that neither C#/Xamarin nor "portable C/C++ library and platform specific UI wrappers in Java/Objective C" are good ways to make cross platform applications doesn't that mean that Apple is right to try to develop and alternate way to do it? I.e. there's a gap in the market for a good cross platform mobile environment.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    32. Re:Wait, what? by liefer · · Score: 1

      If you decide to write OpenGL you are kind of forced to use C++. It was never an actual choice for you. I really dont see your point here... like, at all

  6. The 60's called: they want BASIC back by klubar · · Score: 4, Insightful

    If you want easy to use languages that teach the concept of programming (as opposed to ones for developing professional applications) there are better choices.

    I think there needs to be a distinction between intro languages and ones used for developing complex, large applications. It's great to give beginners (whatever their age) an intro to programming and maybe Swift is the language for this.

    This is sort of the same as the woodshop class for 7th graders that doesn't use power tools. Great intro to woodworking, but not the approach you'd use if you were building a house. The class might inspire kids to learn more about the field -- which is all you are looking for.

  7. Same same by gdonald · · Score: 2

    To me it looks like Javascript on top of ObjC with a little bit of Rust syntax here and there. Not really all that revolutionary. The thing it does for newcomers (young or old) is that it takes the C feel out of iPhone development.

    1. Re:Same same by angel'o'sphere · · Score: 1

      How can it look like ObjC in the slightest when it contains none of the syntax squirts of ObjC?

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    2. Re:Same same by TheFakeTimCook · · Score: 1

      To me it looks like Javascript on top of ObjC with a little bit of Rust syntax here and there. Not really all that revolutionary. The thing it does for newcomers (young or old) is that it takes the C feel out of iPhone development.

      Translation: I didn't invent it, so it sucks balls.

    3. Re:Same same by TheRaven64 · · Score: 1

      It has named parameters, like Objective-C, and it sometimes has the Objective-C object model (and sometimes doesn't, because consistency is a bad thing now).

      --
      I am TheRaven on Soylent News
    4. Re:Same same by gdonald · · Score: 1

      I found it ordinary, I didn't say it sucks balls. What are you 12?

    5. Re:Same same by TheFakeTimCook · · Score: 1

      I found it ordinary, I didn't say it sucks balls. What are you 12?

      Just emulating the usual Slashdot-speak.

  8. I filtered out "Tim Cook" and "Trump by Anonymous Coward · · Score: 1

    Administration" and now the only thing I can see on Slashdot is "AI"

  9. Tim Cook says a lot of shit. by Gravis+Zero · · Score: 5, Insightful

    Just because the CEO of Apple says something doesn't mean he's not totally full of shit. Does anyone honestly think removing the 3.5mm jack from the iPhone was about courage?

    --
    Anons need not reply. Questions end with a question mark.
    1. Re:Tim Cook says a lot of shit. by king+neckbeard · · Score: 1

      Just because the CEO of Apple says something doesn't mean he's not totally full of shit.

      Of course not. If the CEO of Apple says something, that DOES mean he's full of shit.

      --
      This is my signature. There are many like it, but this one is mine.
    2. Re:Tim Cook says a lot of shit. by hcs_$reboot · · Score: 1

      Tim Cook is out within a year anyway, 1.5 max. And he knows it.

      --
      Slashdot, fix the reply notifications... You won't get away with it...
    3. Re:Tim Cook says a lot of shit. by TheFakeTimCook · · Score: 1

      Just because the CEO of Apple says something doesn't mean he's not totally full of shit.

      Of course not. If the CEO of Apple says something, that DOES mean he's full of shit.

      You can say that; but he still knows how to code:

      https://www.macrumors.com/2018...

    4. Re:Tim Cook says a lot of shit. by Plumpaquatsch · · Score: 1

      Just because the CEO of Apple says something doesn't mean he's not totally full of shit. Does anyone honestly think removing the 3.5mm jack from the iPhone was about courage?

      Well, since it wasn't Cook but Schiller who said that, maybe you are the one who is full of shit?

      --
      Of course news about a fake are Fake News.
  10. Less geeky? by Daetrin · · Score: 5, Funny
    I've never used Swift, let's see what the code samples on wikipedia look like...

    var str = "hello,"
    str += " world"
    ---
    let myValue = anOptionalInstance?.someMethod()
    ---
    let leaseStart = aBuilding.TenantList[5].leaseDetails?.startDate
    ---
    guard let leaseStart = aBuilding.TenantList[5]?.leaseDetails?.startDate else {
    //handle the error case where anything in the chain is nil
    //else scope must exit the current method or loop
    }
    ---
    protocol SupportsToString {
    func toString() -> String
    }
    extension String: SupportsToString {
    func toString() -> String {
    return self
    }
    }
    ---
    func !=(lhs: T, rhs: T) -> Bool

    Ahh yes, it's very clear how Swift is so much less "geeky" than other languages like C# or Java! I'm sure a student looking at it for the first time would instantly realize how much better it is instead of saying "that's not for me"!

    --
    This Space Intentionally Left Blank
    1. Re:Less geeky? by mwvdlee · · Score: 5, Funny

      It's the lack of semicolons. Kids think semicolons are geeky ;)

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    2. Re:Less geeky? by coofercat · · Score: 1

      First time I've seen that - I'd say BASIC was a lot less geeky.

    3. Re:Less geeky? by Verdatum · · Score: 1

      Thank you for finally being a comment that explains this. I was very confused, and as usual, the other comments are just being snarky. The quotes made it sound like the code itself is somehow "less geeky". But if they genuinely did design a friendlier, more accessible IDE, then that's fantastic. They all build on top of the ideas of their predecessors in ways that only make sense if you know the long history of software development, or you just shut up and don't question it. IF they managed to improve any of that, then I commend their efforts.

    4. Re:Less geeky? by Existential+Wombat · · Score: 1

      I've never used Swift, let's see what the code samples on wikipedia look like...

      var str = "hello,"

      str += " world"

      ---

      let myValue = anOptionalInstance?.someMethod()

      ---

      let leaseStart = aBuilding.TenantList[5].leaseDetails?.startDate

      ---

              guard let leaseStart = aBuilding.TenantList[5]?.leaseDetails?.startDate else { //handle the error case where anything in the chain is nil //else scope must exit the current method or loop

              }

      ---

      protocol SupportsToString {

              func toString() -> String

      }

      extension String: SupportsToString {

              func toString() -> String {

                      return self

              }

      }

      ---

      func !=(lhs: T, rhs: T) -> Bool

      Ahh yes, it's very clear how Swift is so much less "geeky" than other languages like C# or Java! I'm sure a student looking at it for the first time would instantly realize how much better it is instead of saying "that's not for me"!

      Swift always looks to me like C# run through Apple’s legal department.

      Aple’s mian problem is that their framework sucks.

    5. Re:Less geeky? by R3d+M3rcury · · Score: 1

      let myValue = anOptionalInstance?.someMethod()
      let leaseStart = aBuilding.TenantList[5].leaseDetails?.startDate

      And with that, I ran screaming into the night.

      LET statements? Really? I thought those went away in the 1970s...

    6. Re:Less geeky? by millette · · Score: 1

      Going full circle https://github.com/christophwi...

      module.exports = function (data, force) {
      ;;var opts = {
      ;;;;preset: 'default',
      ;;;;indent: {
      ;;;;;;value: ';;',
      ;;;;;;ObjectExpression: force ? 1 : 0
      ;;;;}
      ;;}
      ;;return esformatter.format(data + '\n', opts)
      }

  11. Re:OK then, invent a translator by Zontar+The+Mindless · · Score: 1

    There was a BASIC keyword translator for the Commodore 64 that I had some fun with, back in the day.

    --
    Il n'y a pas de Planet B.
  12. WTF is he trying to Say? by aaarrrgggh · · Score: 2

    I am sure there is an intelligent comment in there somewhere; does anybody have any idea what he means? I can see how someone could apply "too geeky" to certain languages which makes them a poor choice for your first useful program... but talking to 7th graders it doesn't really make sense to talk about C, at least to me.

    1. Re:WTF is he trying to Say? by mark-t · · Score: 2

      I am sure there is an intelligent comment in there somewhere

      When you begin with a flawed premise, your chance of arriving at the correct conclusion drops significantly.

    2. Re:WTF is he trying to Say? by Anonymous Coward · · Score: 1

      This is typical marketeering bullshit. The kind of fib polite society or politicians tell. The stuff that makes nerds' bullshit detectors explode violently. But anyway. He's trying to sell something. As Apple CEOs are wont to do.

      Apparently "being geeky" is no longer cool. But to keep his walled app garden filled with revelers he needs "coders" to make the "apps", so that'll have to be made cool again, only without the "being geeky" part.

      Personally I think he might have had a chance with something like HyperCard, and my impression is that Swift isn't even close to that. But who knows, maybe the horse will sing.

    3. Re:WTF is he trying to Say? by Jeremi · · Score: 1

      I am sure there is an intelligent comment in there somewhere; does anybody have any idea what he means?

      I think he's referring not to the language's syntax (which isn't all that different from many other computer languages) but rather to Apple's approach to teaching the language, which involves interactive playgrounds rather than the traditional "type in a few paragraphs of mysterious text into a blank IDE and hope something happens" approach.

      --


      I don't care if it's 90,000 hectares. That lake was not my doing.
    4. Re:WTF is he trying to Say? by AHuxley · · Score: 1

      Follow the money.
      City and state govs have another generation that cant pass a test after all the tablets, new teachers, GUI robots, laptops, internet, desktop computers, new buildings.
      Nobody wants to admit its the many below average students given the education funding over the past decades in parts of the USA.
      Funding that was expected to ensure everyone could get a good job, into university.
      It was only a lack of money that held back poor areas. Add the funds and it would all be equal. Exam results would equal the best results in other wealthy city areas and states once every generation got all the funding and new computers.
      So the only way out is to try another way to think about how to educate with a computer.
      The teachers have to buy new support, a new GUI has to be approved. Then a generation has to be educated and the results considered a decade later.
      No questions have to get asked for many more years about why another generation cant pass a test, do math, cant pass an exam. Given decades of spending.

      --
      Domestic spying is now "Benign Information Gathering"
    5. Re:WTF is he trying to Say? by TheFakeTimCook · · Score: 1

      I am sure there is an intelligent comment in there somewhere; does anybody have any idea what he means?

      I think he's referring not to the language's syntax (which isn't all that different from many other computer languages) but rather to Apple's approach to teaching the language, which involves interactive playgrounds rather than the traditional "type in a few paragraphs of mysterious text into a blank IDE and hope something happens" approach.

      BINGO!

    6. Re:WTF is he trying to Say? by skids · · Score: 1

      Ah, I guess that makes sense. Because using "let" as a declarator/initializer is about as math-geeky as you can get, so I had no clue what he was talking about.

    7. Re:WTF is he trying to Say? by Waccoon · · Score: 1

      It's the same message as when the company said Intel processors weren't very good until Apple started using them.

  13. Programmers bottleneck by neutrino38 · · Score: 1

    Good move from Apple serving his own interests !

    Programmers are the bottleneck of the digital economy. Scare and valuable resources. So the master plan looks good!

    1. Design a fun and easy language to develop powerful applications
    2. Get the kids hooked on it (meaning Dad and Mom has to pay to by a Mac AND the school too)
    3. Say: hey! you can put your first app on the AppStore and maybe earn monies
    4. Get more adult programmers trained on Apple only dev env.
    5. $$$
    6. Create another new and fun and easier language and deprecate the previous one
    7. Sell migration tools and other training courses
    8. $$$

    1. Re:Programmers bottleneck by AHuxley · · Score: 1

      Its like selling the calculator and the needed math book to schools together with a way of educating that needs a brand of calculator.
      Once the gov accepted the method, the books, calculator and support had to be accepted.
      But now new code and a GUI that has to be "upgraded" every year due to advancements.
      Teaching only works well with the brand. The brand sets the computer and math standards.

      --
      Domestic spying is now "Benign Information Gathering"
    2. Re:Programmers bottleneck by TheFakeTimCook · · Score: 1

      Good move from Apple serving his own interests !

      Programmers are the bottleneck of the digital economy. Scare and valuable resources. So the master plan looks good!

      1. Design a fun and easy language to develop powerful applications
      2. Get the kids hooked on it (meaning Dad and Mom has to pay to by a Mac AND the school too)
      3. Say: hey! you can put your first app on the AppStore and maybe earn monies
      4. Get more adult programmers trained on Apple only dev env.
      5. $$$
      6. Create another new and fun and easier language and deprecate the previous one
      7. Sell migration tools and other training courses
      8. $$$

      Apple Open-Sourced Swift, you tool.

      How does that promote Apple Lock-In, as you are alluding-to?

  14. Why is it not geeky? by volodymyrbiryuk · · Score: 2

    Because you can use emoji characters? "Oh look how cute I can name this variable *pile of poo emoji* now I want to be a programmer more than anything in the world".

    --
    sudo rm -r -f --no-preserve-root /
    1. Re:Why is it not geeky? by cascadingstylesheet · · Score: 1

      Because you can use emoji characters? "Oh look how cute I can name this variable *pile of poo emoji* now I want to be a programmer more than anything in the world".

      OK, so my son would think that was funny and cool, and likely be more interested because of it.

      But he'll grow out of it, I swear ...

    2. Re:Why is it not geeky? by serviscope_minor · · Score: 1

      Because you can use emoji characters? "Oh look how cute I can name this variable *pile of poo emoji* now I want to be a programmer more than anything in the world".

      You can -sort of- do that in C++.

      By sort of I mean that the standard recognises explicit wide characters in identifiers, via \uXXXX and \UXXXXXXXX and lists the allowed ranges of wide characters which happen to correspond to certain unicode ranges and of course not others. How the source encoding is translated into that form is left as an exercise for the implementation.

      IOW you can have a variable called pile of poo in clang but not gcc. Both are compliant.

      --
      SJW n. One who posts facts.
    3. Re:Why is it not geeky? by ceoyoyo · · Score: 1

      Hm. I enjoying the ability to use greek letters as variables in Python 3. Makes writing math-related code very nice.

      However, I do have a few projects for which the ability to name variables *pile of poo* is very interesting....

  15. Standard correlation is not causation rules apply by mark-t · · Score: 1
    I think it is more likely, if there is even the correlation as Cook observed, that it happened to be the case that Apple simply invented Swift around the same time that students were starting to stick with programming more than they had been. This is Cook giving Apple credit for something that there is precisely zero evidence that they had any influence on at all.

    It's roughly on par with thinking that pressing a street crossing button multiple times is going to make the light change any faster than just pressing it once.

  16. Don't laugh by rsilvergun · · Score: 1

    Bros can code, and them getting into coding means more competition for scarce jobs and wages. Nerd stuff is the one thing us nerds had. And it's been taken away from us.

    --
    Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
    1. Re:Don't laugh by Austerity+Empowers · · Score: 2

      No not really, I still code in C. I don't see it going away any time soon. I'm not releasing UI layer applications, and not terribly concerned with first to market.

      It frustrates me that C#/Swift/etc. are being pushed so hard at the application layer and forcing C coders to do a lot of undocumented and probably shadier stuff than they were doing before, just to use OS API calls to functions that we all know were coded in C to begin with.

    2. Re:Don't laugh by Dog-Cow · · Score: 1

      It frustrates me that C#/Swift/etc. are being pushed so hard at the application layer and forcing C coders to do a lot of undocumented and probably shadier stuff than they were doing before, just to use OS API calls to functions that we all know were coded in C to begin with.

      That makes no sense at all. If you are always this illogical, I hope I'm not using any of your code.

  17. Stupid argument, is stupid. by geekmux · · Score: 4, Insightful

    Complaining that programming code is "too geeky" is like complaining that a steamroller is "too flatty".

    We have enough issues and vulnerabilities being generated today by the "geeks" who have the mental capacity and intelligence to code.

    The last thing software security and integrity needs is coding dumbed down to the point where Cletus T. Dipshit is at the programming helm of next-gen solutions.

    1. Re:Stupid argument, is stupid. by OneAhead · · Score: 1

      Complaining that programming code is "too geeky" is like complaining that a steamroller is "too flatty".

      ... or water is too wet, yes. I'd even go one step further and say there's a contradiction hidden in Cook's reasoning. So he sets out to create a good programming language (that's pretty much a given, unless he's into esoteric languages) that is not geeky. To meet the "not geeky" design goal, he could make it either:
      - appeal to the general public but not to geeks. But, geeks are the ones who program - if it doesn't appeal to them, chances are it's just not a good language.
      - appeal to not only geeks but also the general public. Fine, but if it appeals to geeks, using it becomes a "geeky" activity, so it ends up being perceived as "geeky" anyway.

      Conclusion: Swift is actually an esoteric language.

      Disclaimer: this post is largely a word game and may contain logical fallacies. We accept no responsibility for any harm resulting from thinking about it.

  18. Coding by nycsubway · · Score: 1

    I can't stand that word...

    1. Re:Coding by Opportunist · · Score: 2, Funny

      It gets worse when you speak German where the homonym "Kot" literally means excrement.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  19. Speedware by Oswald+McWeany · · Score: 2

    Not sure if Speedware is still around. I briefly did a little work with that. They had one command that was ahead of its time. Would have been a hit with millenials.

    Do Nothing;

    Yes, that was the command. Don't remember the rest of the Speedware syntax, so below is wrong, but the idea was:

    if (x)
    {
            Do Nothing;
    }
    else
    {
          CallMyProcedure();
    }

    For some reason "Do Nothing" was preferable to them than saying "Not X" in the If statement. I used to pepper my code with "Do Nothing" just to be silly. (I was young and liked having a laugh back then).

    --
    "That's the way to do it" - Punch
    1. Re:Speedware by chefren · · Score: 1

      Hey if you get paid by or evaluated based on the number of lines of code you write, this probably seems like a great idea! If every other line of code you write is "Do Nothing;" the amount of bugs per line in your code is halved. Great success!

    2. Re:Speedware by tepples · · Score: 1

      I guess it's like Python pass, which allows filling a syntax slot that requires a compound statement (such as catching an exception or defining a dummy function or class) but otherwise is like writing the constant None on a line by itself.

    3. Re:Speedware by Eric+Sharkey · · Score: 1

      Most languages have a no-op statement. C allows just a plain ";" as a do nothing statement. Even going back to Fortran, there was CONTINUE. It's a very old concept.

    4. Re:Speedware by Oswald+McWeany · · Score: 1

      Most languages have a no-op statement. C allows just a plain ";" as a do nothing statement. Even going back to Fortran, there was CONTINUE. It's a very old concept.

      Very true, although ";" is decidedly less amusing than "Do Nothing"... at least to me.

      --
      "That's the way to do it" - Punch
    5. Re:Speedware by PmanAce · · Score: 1

      if (!x) { CallMyProcedure(); }

      There fixed that for you.

      --
      Tired of my customary (Score:1)
    6. Re:Speedware by Oswald+McWeany · · Score: 1

      how come you misspell "millennials" in the exact same incorrect way that everyone else does?

      Because if I misspelt it any other way it would be different to how everyone else misspelt it.

      --
      "That's the way to do it" - Punch
  20. isnt swift just a reworked objective-c ? by Idimmu+Xul · · Score: 1

    it still doesnt feel good to me to use

    --
    The problem with slashdot is that most of its users were bullied and stuffed into lockers as kids!
  21. Agreed, LOLCODE more geeky by Anonymous Coward · · Score: 5, Funny

    Probably the students had the (usual) comparison between Swift and LOLCODE. Here is a Wikipedia example of Swift:

    guard let leaseStart = aBuilding.TenantList[5]?.leaseDetails?.startDate else { //handle the error case where anything in the chain is nil //else scope must exit the current method or loop
            }

    Here is an example of LOLCODE:

    HAI 1.0
    CAN HAS STDIO?
    I HAS A VAR
    IM IN YR LOOP
          UP VAR!!1
          VISIBLE VAR
          IZ VAR BIGGER THAN 10? KTHX
    IM OUTTA YR LOOP
    KTHXBYE

  22. Tim Cook? Really? by Opportunist · · Score: 5, Insightful

    That's the man that thought removing a headphone jack from a cellphone is a good idea and that having non-replaceable batteries are what customers want.

    Who in their sane mind listens to an imbecile like that?

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    1. Re:Tim Cook? Really? by geek · · Score: 1

      Courage

    2. Re:Tim Cook? Really? by geekmux · · Score: 1

      Courage

      You misspelled Investors.

      The screaming stupidity of any asinine idea can be drowned out with the sound of thunderous revenue. - Greed

    3. Re:Tim Cook? Really? by Opportunist · · Score: 1

      The annoying orange? Yeah, I noticed.

      (It's not like the rest of the world has not noticed what you did, we still think it would be a cool sitcom if it didn't involve him being able to launch nukes)

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    4. Re:Tim Cook? Really? by TheFakeTimCook · · Score: 2

      That's the man that thought removing a headphone jack from a cellphone is a good idea and that having non-replaceable batteries are what customers want.

      Who in their sane mind listens to an imbecile like that?

      Ever seen the unit sales of iPhones, even those without a headphone jack?

      And virtually NO phone has a removable battery. But in iPhones (and many others) they ARE replaceable.

    5. Re:Tim Cook? Really? by Opportunist · · Score: 1

      I don't care what someone sells when the question is what programming language is easy to learn.

      He might be someone to listen to when it comes to the question which programming language sells well, but aside of that, what's his expertise when it comes to programming?

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    6. Re:Tim Cook? Really? by TheFakeTimCook · · Score: 1

      I don't care what someone sells when the question is what programming language is easy to learn.

      He might be someone to listen to when it comes to the question which programming language sells well, but aside of that, what's his expertise when it comes to programming?

      Glad you asked!

      Not only does he have an Engineering Degree; but he actually DOES know how to code, at least somewhat:

      https://www.macrumors.com/2018...

    7. Re:Tim Cook? Really? by david_thornley · · Score: 1

      iPhone batteries are replaceable. Apple will charge me $79, which is a whole lot less than the cost of a new phone. iFixit will sell me tools, instructions, and battery for $25. They aren't easily user-replaceable, which isn't real important for something that's likely to last three or four years.

      Customers don't specifically want batteries that aren't easily user-replaceable, but they want thinness and battery life, and they don't care about exactly how to change the battery in three years.

      Meanwhile, iPhones without the headphone jack are selling nicely. Not quite what I expected, but there's multiple reasons I'm not in marketing.

      Doesn't sound like an imbecile to me.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    8. Re:Tim Cook? Really? by Opportunist · · Score: 1

      Customers don't specifically want batteries that aren't easily user-replaceable, but they want thinness and battery life

      Somehow I doubt that "thinness" is the one on top of the triad

      battery life
      user-serviceable
      thinness

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    9. Re:Tim Cook? Really? by david_thornley · · Score: 1

      You want to look at marketing research and sales figures? We're not the smartphone target audience, and projecting from what we in general like to what's going to sell on the mass market is really iffy.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    10. Re:Tim Cook? Really? by Opportunist · · Score: 1

      I guess I don't know anyone from the general target audience for smartphones. Which could well be the case, considering that two of my friends have flip-phones because the functionality they're looking for in a cellphone is text messages, telephone and an alarm clock...

      I guess I'm getting old.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  23. Re:OK then, invent a translator by olsmeister · · Score: 1

    Me too. Clearing like 8 kb of bitmap RAM with a BASIC loop and POKE command was a joke. After I saw how fast you could do it with assembly language, I was hooked.

  24. thank god! by Anonymous Coward · · Score: 1

    Apple has save us from our uncool selves yet again. First, I was uncool with my non-bright blue computer, but apple saved me with the imac. Then, I was listening to music like some fucking peasant, but apple made music cool with the ipod. I'm not getting started on how my phone actually had a headphone jack... saved again.
    Now, finally, the last uncool piece of my life can be brought into the light and reformed with Apple's Swift!

    Im now like a real life Fonzie!

  25. Even if swift was good by fred6666 · · Score: 1

    It's still an Apple-only language and as such should be avoided by beginners at all costs.

    And no, crappy swift ports for other platforms, with zero real-word use, don't count.

    1. Re:Even if swift was good by geek · · Score: 1

      The language is now multiplatform. The libraries used on Mac are still locked away. Its like C# and .Net, you can technically use it but all the shit that makes it useful is closed to you.

    2. Re:Even if swift was good by hcs_$reboot · · Score: 1

      crappy swift ports for other platforms, with zero real-word use, don't count.

      These ports would have to keep up with the huge language syntax changes. Not easy!

      --
      Slashdot, fix the reply notifications... You won't get away with it...
  26. Re:Objective-C by pauljlucas · · Score: 1

    From the people that brought us Objective-C...

    Objective-C was created primarily by Brad Cox and Tom Love in the early 1980s at their company Stepstone. It was then later licensed by NeXT, then Apple bought NeXT and released MacOS X that still used Objective-C as its implementation language.

    --
    If you reply, do so only to what I explicitly wrote. If I didn't write it, don't assume or infer it.
  27. Re:"coding is a horizontal skill" by Anonymous Coward · · Score: 2, Funny

    Prostitution, and painting the ceiling of the Sistine Chapel are known to be horizontal skills. I'm guessing that Cook is implying that the occupation of computer programming has more in common with the former than the latter.

  28. I thought that was Hypercard by alternative_right · · Score: 1

    Hypercard was far ahead of its time. Unfortunately, most of these friendly languages are not very effective at hardcore tasks.

  29. That's only half of the problem. At best. by Qbertino · · Score: 4, Insightful

    Yes, PLs need to be consistent, easy to learn and easy to use. All true. But PLs also need to offer easy solutions to tougher everyday problems. Cross-platform portability, the ability to easyly abstract away the hard stuff like networking, GUI, graphics and such and an easy integrated way to swtich from OOP to functional to sequential, from event-driven to imperative and back.

    The PL squaring the circle the best right now is Python. And it show, as Python is the only PL used professionally in every field you can think of while at the same time being known for a very n00b friendly PL. If Apple want's Swift to compete/beat Python in that field they have to offer all that Python offers + a free cross-platform IDE + a binary cross-compiler for all major platforms including mobile. You know, like Python freezing, only better. That would be something new and get opinion leaders on board. Until then I'm not hodling my breath.

    My 2 cents.

    --
    We suffer more in our imagination than in reality. - Seneca
  30. So which is it? by K.+S.+Kyosuke · · Score: 1

    coding languages were too geeky

    coding is a horizontal skill like ... mathematics

    So which one is it? Can programming languages be "less geeky" or nor? And what the hell is a horizontal skill? I'd think that would be swimming or bench pressing or something.

    --
    Ezekiel 23:20
  31. Re:Apple does what James Damore was fired for by king+neckbeard · · Score: 1

    No, what Damore was getting at was that while tech environments often have good pay, they are highly abusive, like working for assholes like Steve Jobs. People that care about work-life balance are thus discouraged from tech, and that bears out statistically with having a lot of young white dudes.

    Damore wasn't saying that tech needs to be cool. Damore was saying that someone should punched Steve Jobs in his asshole face when he abused his employees.

    --
    This is my signature. There are many like it, but this one is mine.
  32. What is too geeky? by kilodelta · · Score: 1

    I mean come on, BASIC isn't geeky, neither is C, C++ etc. And now Python sure.

  33. The problem with our education system is funding by rsilvergun · · Score: 1

    but more specifically it's _unequal_ funding. In America we fund schools with local property taxes. We do this so that rich people don't have to pay for the poor to be educated. To the point where if you try to send your kid to one of the nicer schools you'll get prosecuted for theft.

    The result is that if you look at per-capita spending on schools it's very, very high but if you look at the results across entire districts they're very, very poor. It doesn't help that America has a massive underclass of working poor. Even if the kid wants to study it's hard without the support of parents.

    --
    Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
  34. Learning is geeky by TeknoHog · · Score: 1

    almost by definition. Film at 11.

    --
    Escher was the first MC and Giger invented the HR department.
  35. Swift looks like C# to me by PmanAce · · Score: 1

    I always thought Swift took many concepts from C#. Programming is geeky, what is the big deal?

    --
    Tired of my customary (Score:1)
  36. And it's not even true by iMadeGhostzilla · · Score: 1

    I never coded in Swift so just searched for an example and found this, literally the first Swift code block I ever saw:

    override func viewWillAppear(_ animated: Bool ) {
            super.viewWillAppear( animated ) // Create a button which when tapped blah blah
            let button = UIButton(type: UIButtonType.system) as UIButton
            let xPostion:CGFloat = 50

    and so on (along with misspelling for xPosition). This doesn't look to me any different nor any less geeky from most standard programming languages. If anything, the dangling underscore in the func seems more geeky, not less.

    1. Re:And it's not even true by ceoyoyo · · Score: 1

      When Swift was first announced it sounded like it was supposed to be Apple's version of Python. I was disappointed when I first saw it. It's basically C with some sane object oriented extensions (i.e. not C++) and some random unnecessary stuff like those let keywords.

  37. Apple now just Trolling by Roger+W+Moore · · Score: 1

    Does anyone honestly think removing the 3.5mm jack from the iPhone was about courage?

    Yes, it was about having the courage to see if you could get your customers to give you more money by having to buy new earbuds from you. Apparently they will.

    The next bit of courage was removing the function keys and all but one of the ports while raising the price significantly and using one year old GPUs and CPUs...and apparently customers still bought it.

    At this point, Apple is just trolling its customers to see how bad it has to get before they refuse to buy things. If you have any doubts about that just look at the MacPro: it was released in 2013 and has not been updated since yet they are still asking full price for it!

  38. Re:Objective-C by phantomfive · · Score: 1

    the only programming language that seems strange with a decade of coding experience

    Oh, wait until you find out about Forth.

    --
    "First they came for the slanderers and i said nothing."
  39. Re:The problem with our education system is fundin by AHuxley · · Score: 1

    That was corrected for by politically funding and the private sector wanting to be seen supporting poor areas. Even with much more spending per student the tests did not get passed, the exams did not get passed. The costs of supporting new computers, GUI robot kits, laptops for each average student.
    The results of more funding would have been seen in much better results over generations if a simple lack of funds was a problem.

    --
    Domestic spying is now "Benign Information Gathering"
  40. Re:Tim Cook is deluded... Swift is like Java/C#... by angel'o'sphere · · Score: 2

    Object orientation is difficult to teach to people who already are poisoned by simple procedural languages.

    Simply for the reason of learning the rudiments of program flow, logic concepts, simple data structures, et cetera

    This is all included in Java/C# etc. in beginning classes ... or do you believe loops are any different there? OTOH "list.foreach { lambda }" is probably even simpler than writing a for loop your self.

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  41. Re:Objective-C by angel'o'sphere · · Score: 2

    What is wrong with view!?.superview?.layer
    It saves you from testing if any of the attributes are null.
    I think the groovy guys invented that syntax.

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  42. Foot in the mind by duke_cheetah2003 · · Score: 1

    Hey, anything that establishes a foothold in a young mind that programming is fun and interesting is all good in my book.

    BASIC, Logo, Swift, whatever you want man, getting that foothold in the young mind is extremely important.

    One should not be concerned with proper programming, or railing certain languages for encouraging poor programming techniques, that's all ok. As a person matures, so will the languages they use, grasp of them and proper techniques.

  43. Re:Classic engineer obliviousness by TheFakeTimCook · · Score: 1

    I know Cook isn't an engineer, but what he is talking about has plagued computing from the start, engineers are notoriously bad at thinking out other aspects of things. This is why modern smartphones are so popular - the technology is mostly invisible. What he says is absolutely true. Now they must deal with the fact that, rightfully, *not everyone is interested in learning to code or becoming an engineer*. Kinda seems like the same clueless phenomenon all over again, yes?

    Actually, Tim Cook not only has an Engineering Degree (surprised?); but he actually knows how to CODE:

    https://www.macrumors.com/2018...

    So there!

  44. nice meme by thebullshitpatrol · · Score: 1

    While I love swift, this is absolutely hilarious when you consider how germane and simple languages like python are compared to it.

  45. LiveCode by hawk · · Score: 1

    I have a commercial license to LiveCode (nee Runtime Revolution, neeMetaCard), but there is also an open source version.
    Basically HyperCard on steroids with support for the modern world, databases, etc.

    hawk

  46. Not the language, it's the logic by WillAffleckUW · · Score: 1

    The problem is that students don't learn logic.

    This may shock you, but it used to be true that most students learned Logic in high school. Debate, Logic, Analysis.

    Now they learn it during the second year of college. Maybe.

    --
    -- Tigger warning: This post may contain tiggers! --
  47. Re:Woodshop by magarity · · Score: 1

    Most likely there are no shop classes anymore since everyone knows all children must only take STEM classes and go to college.

  48. I looked up some tutorials by rsilvergun · · Score: 1

    and they were heavy on GUI tools to build apps. It reminded me of VBA. I think that's what he means. You don't have to set up your own UI or learn a markup language.

    --
    Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
  49. Re:Objective-C by gnasher719 · · Score: 1

    I thought Swift syntax was an improvement over Objective-C until this, for instance; view!?.superview?.layer

    view!? doesn't make sense. You copied something wrong. It is either view! or view?

    What it means: view is an optional object. Swift doesn't repeat the "billion dollar mistake" of having nil pointers. So you have objects that can never be nil, and optionals that can be nil.

    view! means: "I know that view is an optional, but I bet it contains an object. So give me the object, and crash if it is nil". view? means: "Give me the object if it is not nil, and don't continue with the expression if it is nil".

    A view has a superview, which is optional. So if view! didn't crash or view? wasn't nil, we get the superview. And we stop if that is nil. And the superview has a layer. So the result is an optional layer, and the expression works just fine if the view or the superview or the layer was nil. Except if you started with view! then the app will crash (intentionally, and guaranteed) if view was nil.

    In Java you would write "if view != nil && view.superview != nil && view.superview != nil ..."

  50. Makes Sense by EndlessNameless · · Score: 1

    A really programmer will have to learn all of the complex "geeky" concepts---eventually.

    A good starter language should abstract away a lot of those things. It is very difficult and potentially discouraging to tackle flow of control, obscure IO interfaces, and UI quirks all at once.

    I don't know if this is marketing fluff (never personally written Swift code), but a good starter language that runs on a popular platform should be a basic elective course for middle/high schools.

    Out of curiosity, would anyone have suggestions for the best starter languages for Windows and Linux systems? Preferably something with native libraries for implementing a GUI?

    --

    ---
    According to the latest ruleset, this post should be modded as Vorpal Flamebait +5.
  51. BASIC, LOGO, FoxPro, etc. by luis_a_espinal · · Score: 1

    Tim Cook: Coding Languages Were 'Too Geeky' For Students Until We Invented Swift

    Hahahaha, no. What an absurd claim (considering the very simple syntax behind languages such as BASIC, LOGO, FoxPro, etc.)

    Not to mention that a student (a good student with the right aptitude) that goes into programming will already be inclined towards the esoteric details of programming and programming languages.

    I mean, for f* sake, students learned using assembly and they came out quite capable. Nowadays, many (not all) colleges are just Java/.NET shops producing code monkeys that cannot code without a damned wizard and an IDE.

    That's no progress.

  52. Time to do the Monkey Dance, Timmy! by AmazingRuss · · Score: 1

    Developers! Developers! Developers!

  53. Re:Whatever Cook! by gbjbaanb · · Score: 1
  54. Re:Tim Cook is deluded... Swift is like Java/C#... by javabandit · · Score: 2

    Object oriented languages are NOT difficult to learn for people who know procedure languages. C is a procedural language. Some of the best object-oriented programmers in the world started in C.

    I would actually say the opposite to what you said. People who did not bother to learn procedural programming first are TERRIBLE in object-oriented languages. Because these kinds of programmers overly abstract everything, create millions of functions and/or methods unnecessarily. Create useless interfaces. Utilize GoF patterns which explode their code base completely unnecessarily.

    There are FAR more poor OO programmers out there than procedural programmers.

  55. Re:Tim Cook is deluded... Swift is like Java/C#... by ceoyoyo · · Score: 1

    Why is learning Python first ridiculous?

    Python is one of the few current languages that you can learn as a purely procedural language, but also has a sane standard object system you can pick up later, without having to completely switch to a new language. As an extra benefit it's widely used.

    The OOP extensions of Pascal were also like that and, not coincidentally, were the standard learning languages for a long time.

  56. Expected code samples not cats and dogs by NearO · · Score: 1

    I forgot to look at the destination URL of the "as easy to learn as our products are to use" link and opened it in a background tab, expecting it to lead to a page with some code samples. A bit later I was very confused where the tab with a video of a cat mauling a tablet came from.

    What's the point of that link?

    --
    foldl1' (\ a f -> (f =<<) . a) fs
  57. Re:Hypercard's logical successor by drinkypoo · · Score: 1

    Second: FileMaker is in itself a very successful and robust platform, not any more similar to HyperCard than say PowerPoint.

    Uh, what? It's based on flat, static pages, with drag and drop elements and scripting, and it produces interactive applications. Of course it's more similar to Hypercard than Powerpoint.

    It has robust realtime editing tools that let you add features or correct bugs on complex deployed mission critical mobile and web based systems, literally in minutes with zero user down time.

    Uh yeah, that's what they say about web development with an IDE, too. And it's bollocks. If you don't use a testing server, then you're using your users to do QA, and that's irresponsible on a good day.

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  58. Re:Tim Cook is deluded... Swift is like Java/C#... by angel'o'sphere · · Score: 1

    They learned the syntax, yes.
    But it takes 10 years or more to transform a procedural programmer into an oo programmer.

    You must be lucky and have only met super smart programmers. And I must have been lucky as well, as I had a big share of class room trainings where I earned a lot of money from people who where to dumb to grasp the core differences between 'procedural' and OO :)

    People who did not bother to learn procedural programming first are TERRIBLE in object-oriented languages.
    That is nonsense ...

    There are FAR more poor OO programmers out there than procedural programmers.
    Because those most likely had learned a pure procedural language first, and still have not bridged the transition to OO.

    In our times people usually start with OO programming in universities, and in my experience the people who started with OO directly are much better than those that switched from languages like C or Pascal to an OO variant.

    But you might have different experiences ...

    Problems with GOF patterns usually only occure when people are new to patterns. They often get force fed them and then they don't really graps when and why to use one. That is completely unrelated to procedural versus OO first, how should a procedural programer know anything better about an oo pattern than an oo programmer that never programmed procedural?

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  59. Way back... by Doctrinsograce · · Score: 1

    I seem to recall some Dartmouth guys who said the same sort of thing in the early 70's. :-)

  60. Re:Hypercard's logical successor by drinkypoo · · Score: 1

    It felt VERY much like building a HyperCard app!

    Having done both myself, I agree. What I found interesting was that it was easy to make Filemaker connect to something else, run commands, whatever. Making Hypercard do anything interesting cost money, which is IMO what actually killed it.

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  61. Re:The problem with our education system is fundin by david_thornley · · Score: 1

    Private schools can accept their own students. Public schools have to take whoever lives in the district. A lot of money can go into services that private schools don't provide, since they can just reject the students that need them.

    --
    "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes