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."

335 comments

  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 AHuxley · · Score: 0

      A new slow generation gets to try "BASIC" when the real people with real skills did Assembly language https://en.wikipedia.org/wiki/...

      --
      Domestic spying is now "Benign Information Gathering"
    4. Re: Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      As much as I am not an apple person, I still remember HyperCard and how easy it really was.

    5. 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.

    6. 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.)

    7. 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.'"
    8. Re:Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      Which Python GUI tool did you choose? There are so many!!

    9. 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...

    10. 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
    11. 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.

    12. 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"
    13. 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
    14. 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.'"
    15. 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.

    16. 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.
    17. 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.

    18. 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.

    19. Re:Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      Swift very closely resembles C#, which, in turn, resembles Java.

      I don't see how they "invented" anything other than a way to spin their years of dragging their feet in replacing Objective-C with something non-stupid.

    20. 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.
    21. 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.

    22. Re: Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      Everyone can also understand

      "Load 15 into register 1"
      "Load 31 into register 2"
      "Add the contents of register 1 to register 2"

      But nobody likes to program that way (unless they're geeky).

    23. 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.

    24. 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/

    25. 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.

    26. 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!

    27. 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.

    28. 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!

    29. 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?

    30. 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.

    31. 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?...

    32. 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.

    33. 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.

    34. 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.

    35. Re:Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      Yes... I think we can put BASIC in there too.

    36. 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"
    37. Re: Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      I always had a paragraph called "MIRACLES". That way, at some point my program would contain the phrase "PERFORM MIRACLES."

    38. 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.'"
    39. 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.

    40. 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.

    41. Re:Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      I absolutely SUCK at math; but LOGIC is not Math, per se; and am GREAT at Logic.

      The converse can also be true - I once knew a statistics PhD (from a respected university) who tried for years to learn/use FORTRAN, but never succeeded. Perhaps it's because so much math/stat teaching s badly taught just memorizing "stupid pet tricks" (per johnny Carson) instead of pondering fundamental insights (logic?)

    42. Re: Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      English 101, study it - it's for everyone!
      Purposeful illiteracy is a sad thing.

    43. 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.

    44. 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!

    45. 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...

    46. Re: Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      Except for the part where I made most of it up because I can get away with it because im an anonymouse crowad

    47. 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.

    48. 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?

    49. Re: Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      > I don't know why people find concurrency so difficult.

      In a word, interrupts.

      When I learned to program, it was presented as if you had full control of the machine and each instruction immediately followed the previous one. Then you dig a little deeper and they tell you, "well...that's not how it REALLY works..." :)

    50. Re: Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      Yeah. I used to program in assembly language using the dice compiler on my amiga

    51. Re:Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      >> 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)

      I once thought programming languages like Labview would take off more than they have. Sure you have Simulink, which is sorta similar. I'm not sure if National Instruments have solved some of Labviews scaling issues yet or not.

      Labview was one of the few ways you could do multi-threading without much thought. The block diagram and front panel approach works well from a design point of view, since your subvi's (functions) have their own front panels that can be opened to help debug. If closed the front panel is ignored.

      At any rate I still think the design pattern has potential, since a correctly implemented program has a block diagram that looks much like you would diagram an actual program.

    52. 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!
    53. 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.

    54. 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.'"
    55. Re: Congratulations you invented LOGO! by Agripa · · Score: 1

      I was thinking COMAL but not as good.

    56. 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
    57. 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
    58. 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.

    59. 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...

    60. 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.

    61. 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!!!

    62. Re: Congratulations you invented LOGO! by Anonymous Coward · · Score: 0

      I had a lot of trouble with I = I + ! when I first saw a programming language

      I'm having a lot of trouble with it right now. o_O

    63. 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
    64. 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 Anonymous Coward · · Score: 0

      Um, what? So, if a bridge falls down and the engineer said "well, bridge building is too hard!", the problem isn't his skill level?

    3. 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 Anonymous Coward · · Score: 0

      No stable ABI. Huge bloat thanks to included libraries because of a lack of stable ABI. Single apps like Twitter or Facebook are now larger than the entire hard drive on my laptop in 1995.
      Yes, Swift is a toy language. A serious language would be stable and not have such bloating problems.

    4. 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
    5. 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

    6. Re:Exposure and accessibility by Anonymous Coward · · Score: 0

      "Because almost all mainstream programming languages implicitly adopt hierarchical structures." It turns out so does nature. The tail doesn't wag the dog.

    7. 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
    8. 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.

    9. 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... .

    10. 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.

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

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

    12. 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.

    13. 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
    14. 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
    15. Re:Exposure and accessibility by Anonymous Coward · · Score: 0

      So, the obvious question is: how can you make a programming language for the other 90%?

      If you are correct, then most of the human population cannot program using the current hierarchical organizational structure. Would some other structure work better? Would some other structure work at all? When I think of other programming concepts, such as functional programming, there are even fewer people that can grok that. How can you make a 'flat' programming language?

    16. Re:Exposure and accessibility by Anonymous Coward · · Score: 0

      I'm skeptical of that study. The shelves go in the shop, the products go on the shelves. Is it that hard to understand? Are millions of shopkeepers doing it wrong?

      Normal people are perfectly capable of thinking hierarchically. It's a serious disability to not be able to handle that and it's also a detriment to the ability to code effectively. If you take those people who can do things as fundamentally simple as organise that'll enable them to be 10 more effective as things build up. Organisation (as long as it's kept simple and minimal in accordance to actual requirements) reduces its own cost as well. This is a case of PICNIC and tends to be more down the laziness than incapability. That's a slightly higher initial cost versus just throwing something anywhere. This is all well and good until you want to retrieve those things. If everything doesn't have its own place and if related things aren't kept close together good luck being efficient.

      The actual problem tends to be access. Such a structure only represent one access pattern into something. You've mentioned that effectively but you're not clear on the implications. You've also right that Swift isn't special in regard to other programming languages. The thing is, though, it's not really a problem you can solve in a meaningful way beyond reaching the point programming only consists of describing features in plain English (a language which also has some nesting) to a computer.

      Java and that style of OOP do indeed have a problem with hierarchies or in this case inheritance trees. However that's not a the language is too complicated for humans problem. That's a hard mathematical problem. Not everything fits into a tree in reality. If it can, that's what you do, you keep things simple. You don't have a full omnidirectional graph with all the ways to add the edges and so on when you can have a tree. That's all well and good until things are more tree like. Those languages only have interfaces to directly deal with that and that doesn't include implementation. This is where composition comes into play through which you build an object graph..

      Languages have many hierarchical features but they also have other features. There's nothing stopping you putting all your classes in one folder or even having one big class. Nothing in Java stopping you from programming flatly and procedural. Plenty of languages you can still have one function with nothing but global variables and gotos. This isn't much to do with systems working in a way that's bad for humans. This is what systems are and consist of. It's a bit like saying maths is bad for humans because it's got numbers in it. It's really more down to order versus chaos.

    17. 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
    18. 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.

    19. 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.

    20. Re:Exposure and accessibility by Anonymous Coward · · Score: 0

      Uh, you absolutely can use Core Data in that way without writing a single line of code. The problem is that it's the mother of all syntactic sugar and is basically only useful for slick WWDC demos. To really understand what's going on takes a pretty solid understanding of Swift and Cocoa.

  4. OK then, invent a translator by Anonymous Coward · · Score: 0

    10 Shout Out to Peeps "Hello world!"
    20 Different Day Same Shit 10


    could compile to

    10 Print "Hello world!"
    20 Goto 10

    1. 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.
    2. Re:OK then, invent a translator by Anonymous Coward · · Score: 0

      When I quickly found out the limits of that BASIC, I taught myself assembly language from the C-64 manual. I also learned Forth on the C-64. Kids these days...

    3. 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.

  5. 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 Anonymous Coward · · Score: 0

      High level languages are good, no doubt.

      Swift?? is? a! terrible?? language!?

    4. Re:Coding is cool bro! by Anonymous Coward · · Score: 0

      The thing is, determining the exact placement of a button on some application somewhere takes human effort.

      Having someone who is best suited to fixing an RFC implementation or who knows their chosen language backwards and forward adding spacer and tweaking the position of that control is not efficient.

      Non-programmers are very rarely capable or willing to tweak configuration files to do exactly this. In fact, the willingness to tweak low level APIs to get a button in the right spot may disqualify them as user interface experts; anyone whose preferred editor is vi should not design a consumer-facing interface.

      So we need programming languages that permit you to position a UI element carefully, for efficiencies sake.

    5. 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
    6. 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
    7. 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.

    8. Re:Coding is cool bro! by Anonymous Coward · · Score: 0

      Bro, it's got what your body craves.

      As long as what your body craves is dick.

    9. Re:Coding is cool bro! by Anonymous Coward · · Score: 0

      Yeah your confusing automation with programming, two totally different things. OS/X already has an automator tool, and in this context/discussion, swift has nothing to do with automation so your parent was correct - this is a horribly stupid idea that has tried and failed before.

    10. Re:Coding is cool bro! by Anonymous Coward · · Score: 0

      Hey, this guy's a communist! GET HIM

    11. 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.

  6. 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 Anonymous Coward · · Score: 0

      I'm struggling to think of a comment that Cook could have made that would have alienated current programmers more.

      Kids don't get turned off of programming due to its syntax. Kids get turned off of programming because they "don't want to take apart the toaster to see how it works."

    3. 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"
    4. 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;
    5. 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.

    6. Re:Wait, what? by Anonymous Coward · · Score: 0

      I think the biggest problem is that the funding that does exist does not go where it should. Increase teacher salaries to attract better teachers. Hire more teachers to reduce class sizes. (Somehow force the unions to be more flexible and allow ineffective teachers to be fired.)

      These changes will have a much better effect than buying more equipment or increasing the size of the administration.

    7. 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"
    8. 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.

      --#

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

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

    10. 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.

    11. Re: Wait, what? by Anonymous Coward · · Score: 0

      Wtf is with the hostility, dude? Cool off.

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

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

      --
      Tired of my customary (Score:1)
    13. 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?

    14. Re:Wait, what? by Anonymous Coward · · Score: 0

      In my state, total per-pupil funding is about $7000-$8000/yr

      Jesus! You must be in one of the "those mining jobs will be coming back any day now" or "me and my sister-wife voted Trump, cuz he jus' like us!" states. Sorry.

    15. 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.

    16. 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;
    17. 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"
    18. 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.

    19. Re: Wait, what? by Anonymous Coward · · Score: 0

      I was perfectly comfortable with BASIC and assembly growing up. Same with the next dozen or so languages that I learned. After than it just became tedious to learn another. Sure I could spend a day and do it, but I have more important things to do.Yawn

    20. 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.

    21. 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
    22. 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.
    23. Re:Wait, what? by deesine · · Score: 2

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

      --
      damaged by dogma
    24. 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

    25. 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
    26. 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).

    27. 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)
    28. Re:Wait, what? by Anonymous Coward · · Score: 0

      last time I looked, all serious statistical analysis of actual data showed no difference in outcomes for students for anything but parental income or educational attainments: no measurable benefit for more money per pupil, hours per day in school, days per year, teacher credentials, etc etc

    29. 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;
    30. 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.

    31. Re:Wait, what? by Anonymous Coward · · Score: 0

      also I suspect he's using the brand new infant price for daycare, which is indeed quite high because infants are very labor intensive, most states have regs that say there can be no more than 4-6 infants per staff person on duty. That's a big contract to public schools where 20/teacher is amazingly low and 30+ is more likely

      daycare for older kids where the staff ratios are not so low is generally way way cheaper, even premium brands (the big chains) may be as low as $700 per month

    32. 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.

    33. 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.
    34. 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;
    35. 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.

    36. Re:Wait, what? by Anonymous Coward · · Score: 0

      Cooks has an RDF. It's just has a reverse polarity.

    37. 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.

    38. Re:Wait, what? by Anonymous Coward · · Score: 0

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

      Did you know that a teacher can have MORE THAN ONE degree? My high school physics teacher had a masters degree in civil engineering, he later got a teaching degree when he got burnt out on doing civil engineering and dealing with bureaucrats(why he became a teacher then, I don't know). I'd sure hope that teachers teaching STEM related topics on an advanced left would have some sort of relevant degree in addition to their teaching degree.

    39. 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.

    40. Re:Wait, what? by Anonymous Coward · · Score: 0

      His point is to throw out a bunch Christmas of nonsense a d link it to the idea of political correctness. He does this so he could look smart and make so e other idiots go on yea this is why political correctness sucks. Then anytime someone here's things tied to political correctness they can shake their heads and say yes that sucks, let's hate it and go against it.

      Political correctness is a term used by the weak minded to prey on the weak minded.

    41. Re:Wait, what? by Anonymous Coward · · Score: 0

      In my experience, Xamarin still requires a whole bunch of platform specific code. Even if it didn't, you'd still have to run your tests of each targeted platform, which arguably takes more time than development. I really hate it when some new programming platform is touted as the greatest thing ever, will reduce coding time by 10-fold, will be easier to maintain. Inevitably it never does but the buzzwords and fancy demos sure convince the tech-illiterate manager making the calls. Soon enough I get to learn yet another programming platform instead of sticking with what works. It's almost as if everybody forgot that the arguments presented in the Mythical Man Month still apply 40 years later. There is still no silver bullet.

      But hey, now I can add another line to my resume.

    42. 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;
    43. 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

    44. Re:Wait, what? by Anonymous Coward · · Score: 0

      that's a ridiculous comparison. first because your number for day care is more than twice as high as reality - the fact is you're cherrypicking some luxury day care and comparing it to average tuition number. why not compare to the costs per student at Choate if you're going to do that.

      http://www.rasmussen.edu/degrees/education/blog/why-is-child-care-so-expensive/

      second, the ratio of caregivers to crotchfruit is 3:1 or 4:1. one teacher can teach about 20 students. there are a lot of ways that these numbers don't compare - daycares don't have gyms and football fields or need science equipment, etc.

      just saying it's a dumb comparison.

  7. Total Marketing Speak by Anonymous Coward · · Score: 0

    Everything was crap until we came along and made the greatest thing eva! Aren't you sold now?

  8. 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.

  9. BWahahaha hahah ahahahaa by Anonymous Coward · · Score: 0

    bWAHAhahhahaha hahahaha aaahaaahaahaa hahahaha bwa HA hahahahah.

    Tim's comment makes no sense. The language hasn't changed anything. There will be those that think it's geeky and there will be those that don't. The world we live in right now is the most geek-accepting of all and there are still tons of "we will be facing a shortage of programmers in X years" stories. It's not attracting more to the industry.

  10. 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: 0

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

      "on top of" != "looks like". Your reading comprehension skills are right up there with President Pussy Grabber.

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

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

    6. 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.

  11. 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"

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

      I'm pretty sure the only thing you would see is CRYPTOCURRENCY PRICES UP 28% THIS MORNING

  12. Mr. Cook has by Anonymous Coward · · Score: 0

    Lost his marbles. We need to break out into the Balmer Developers song rant. .

  13. Whatever Cook! by Anonymous Coward · · Score: 0

    Look Cook, as somebody who only fits one politically-correct victim category for being gay (but still white and cis-gendered you patriachal pig!) you have no right to mansplain to women and minorities about code!

    All properly-woke Womyns understand that Servo is the only programming language that truly takes into account the plight of women and minorities, and any other programming language is merely a tool of oppresion by white racists who have prevented progress for thousands of years. Get woke!

    1. Re:Whatever Cook! by gbjbaanb · · Score: 1
  14. 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 Anonymous Coward · · Score: 0

      Thank god.

      My '12 Macbook is dying, and I can't justify spending exponentially more on subpar hardware and a disaster of an OS.

      So now I'm left with spending less on excellent hardware and a disaster of an OS.

      I don't give a fuck what I have to pay for hardware, really, so long as I can get a decent OS. Which isn't possible today. OS X has turned to shit; nothing need be said about Windows 10; and MAYBE IT WILL BE THE YEAR OF LUNIX ON TEH DESKTOP REEL SOON NAO GAIZ AMIRITE?!?!?!!!!!!!

      Fuck. Jobs was an asshole, but you need a little Hitler to stop engineering fucks and cloudfuckers from shitting down the throats of users.

    5. 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.
  15. Apps are not for geekz by Anonymous Coward · · Score: 0

    Appy apps don't need geeky code !

  16. Pure Unrefined Hubris by Anonymous Coward · · Score: 0

    That should be Apple's new tagline now that they don't really "Think Different."

  17. 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 Anonymous Coward · · Score: 0

      It's the name. "C", "Java", "Python", "Pascal"... they all *scream* "geek"! And "Basic"? Puh-leez. Who wants to be associated with being basic? But "Swift" sounds like some nice, modern, simple thing you push around in your kitchen to clean the floor with, that anyone can use.

    3. Re:Less geeky? by Anonymous Coward · · Score: 0

      Admittedly, I hate the semicolons.

      Program in C# and Python, those semicolons always get me when I switch back to C#.

    4. Re:Less geeky? by Anonymous Coward · · Score: 0

      Children are not googling for example code, they are taking classes provided by Apple.

      The Swift development environment has a bunch of features built in for teaching young people, without using a toy language. Toy languages are easier to comprehend, not practical in the real world, but after learning one language others are easier - not knocking it, but Apple is going in with one language.

      If you don’t have kids, you might be missing the absolutely crazy amount of teach kid to program stuff being made right now. From Lego BOOST (younger version of mind storms), to a freaking linkable playmat with... not the alphabet but procedural code steps, for toddlers. It’s unreal.

    5. Re:Less geeky? by coofercat · · Score: 1

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

    6. 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.

    7. 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.

    8. 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...

    9. Re:Less geeky? by Anonymous Coward · · Score: 0

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

      Unless used in an emoticon ;)

    10. Re:Less geeky? by Anonymous Coward · · Score: 0

      Not cool! Where are the data and read statements? Real languages have data and read (and poke and peek like it's 1979).

    11. Re:Less geeky? by Anonymous Coward · · Score: 0

      Case in point ...
      https://www.sitepoint.com/creating-hello-world-app-swift/

    12. Re:Less geeky? by Anonymous Coward · · Score: 0

      This article would make so much more sense if it were about Python.

      Swift is an incredibly weird language to me. I pushed myself through learning the eccentricities of Objective-C enough to code a bunch of applications. When I heard that Apple was hawking a new language, I thought, great! - then I saw the messy garbage syntax of Swift, and realized that Apple had somehow made Objective-C even worse.

      Someone please explain to me what they find appealing about this ad-hoc mishmash of soupy syntax.

    13. Re:Less geeky? by Anonymous Coward · · Score: 0

      Close, but it's really the lack of whitespace. Kids see all the geeks arguing over tabs vs spaces. Then they come across Daetrin's post and realize they've now found a language which had the foresight to remove such unwanted discourse. No longer do you have to pick between your friends, now everyone can be the same while still being special too. Whitespace is too annoying to type and doesn't display well on your phone. Swift is the language for phone users.

    14. 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)
      }

    15. Re:Less geeky? by Anonymous Coward · · Score: 0

      Well, you didn't include a selfie of Swift wearing a black turtleneck.

  18. Changing the language routinely by Anonymous Coward · · Score: 0

    "Why is why we decided to change the language every six months, because allowing users to have a stable code base and the ability to find usable online tutorials is too geeky."

    1. Re: Changing the language routinely by Anonymous Coward · · Score: 0

      Ah, the Perl model.

  19. 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 Anonymous Coward · · Score: 0

      He means if you can't program other computer languages, you learn something else and move on. If you can't learn Swift, you aren't cool and should probably die or something.

    7. 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.

    8. 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.

  20. 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?

  21. 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....

    4. Re:Why is it not geeky? by Anonymous Coward · · Score: 0

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

      When they get into a CS program, they'll learn about lists of poo, queues of poo and trees of poo.

      From now on, I'm going to use 'poo' and 'bar' in my code!

  22. 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.

  23. 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.

  24. 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.

  25. 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.
    2. Re:Coding by Anonymous Coward · · Score: 0

      That's probably what Swift rhimes with sh*t.

    3. Re: Coding by Anonymous Coward · · Score: 0

      Itâ(TM)s okay, you can say Shift on the Internet.

  26. 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 Anonymous Coward · · Score: 0

      This is a feature in most (all?) languages:
      https://en.wikipedia.org/wiki/NOP

      In Python it is the keyword 'pass', in some languages it is just an empty code segment.

      In Python it is important for cases of try/except where you don't want to handle the exception, but you need something in the block to prevent a syntax error. I'm sure there are other uses, I've used it for debugging, etc.

    4. 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.

    5. 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
    6. Re:Speedware by PmanAce · · Score: 1

      if (!x) { CallMyProcedure(); }

      There fixed that for you.

      --
      Tired of my customary (Score:1)
    7. Re:Speedware by Anonymous Coward · · Score: 0

      Apparently you didn't read the last sentence of his post?

    8. Re:Speedware by Anonymous Coward · · Score: 0

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

    9. 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
    10. Re:Speedware by Anonymous Coward · · Score: 0

      But now you don't know if the developer forgot about the other case. Having the do nothing action makes it clear that all possibilities were considered and that doing nothing when x is the proper action. When you're trying to write bug free code you end up writing a lot you don't need, but it protects you from tons of mistakes.

  27. 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!
  28. Objective-C by MatiasKiviniemi · · Score: 0

    From the people that brought us Objective-C, the only programming language that seems strange with a decade of coding experience. Its not a coincident.

    1. Re:Objective-C by hcs_$reboot · · Score: 0

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

      --
      Slashdot, fix the reply notifications... You won't get away with it...
    2. 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.
    3. 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."
    4. 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.
    5. 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 ..."

  29. Apple does what James Damore was fired for by Anonymous Coward · · Score: 0

    Apple acknowledges that a way to attract people to STEM is by understanding people get interested in things differently, invents a new language to appeal to more people, profits.

    Google totally misses the mark, gets offended because no cognitive dissonance, and fires an engineer that's suggesting something along the lines of what Apple did with swift, but in a more broad scope.

    1. 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.
  30. Classic engineer obliviousness by Anonymous Coward · · Score: 0

    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?

    1. 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!

  31. 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

    1. Re:Agreed, LOLCODE more geeky by Anonymous Coward · · Score: 0

      Heh, good one and I can't believe this hasn't been done already. Why hasn't someone written a bro-language spec and built an actual parser out of this? Bolt it on to a compiler/linker and go.

      Would be a great undergrad thesis project.

  32. 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 Anonymous Coward · · Score: 0

      There are many imbeciles who drink the kool aid.... Remember who our President is.... (assuming you are a US citizen)

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

      Courage

    3. Re:Tim Cook? Really? by Anonymous Coward · · Score: 0

      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?

      The imbeciles who keep buying Apple products.

    4. 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

    5. 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.
    6. 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.

    7. Re:Tim Cook? Really? by Anonymous Coward · · Score: 0

      I don't remember the battery on the first iPhone being that easy to replace, and I don't remember the charger being particularly standard.

    8. 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.
    9. 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...

    10. 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
    11. 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.
    12. 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
    13. 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.
  33. "coding is a horizontal skill" by Anonymous Coward · · Score: 0

    I have had many jobs, the main one was a software engineer. How does his analysis of "coding is a horizontal skill" fit in with these occupations that I have had?
    labor pool worker
    cab driver
    truck driver
    bus driver
    electronic technician

    And others occupations:
    nurse
    talk show host
    cop
    pilot
    Some might use software, but the need to code is not there. His "coding is a horizontal skill" analysis and necessity is synonymous to being told that everyone needs to learn a foreign language. It is nonsense.

    1. 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.

  34. 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!

  35. Oblig by Anonymous Coward · · Score: 0

    Swift is the programming language for the rest of us(TM).

  36. 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...
    3. Re:Even if swift was good by Anonymous Coward · · Score: 0

      Except C# and .Net are fully open (note: not free, just open) and cross-platform now. Most .Net library maintainers are busy rewriting their libraries to be .Net Core compatible.

  37. 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.

  38. 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
    1. Re:That's only half of the problem. At best. by Anonymous Coward · · Score: 0

      Point taken, but in fairness it should be pointed out that the language itself is not locked in to Apple: https://swift.org/blog/swift-linux-port/

      Figured it was worth mentioning for those unaware.

    2. Re:That's only half of the problem. At best. by Anonymous Coward · · Score: 0

      Objective-C is not locked to Apple, but most of the ecosystem is for Apple platforms. That could change in the future, for example C# and Mono, but that's heavily dependent on how much the open source community wants to invest in Swift.

      Swift is unfortunately somewhat tied to its Objective-C legacy, and Objective-C is a pretty crufty language despite all the people who have managed to make it work out of sheer perseverance.

  39. 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
  40. If you ever wonder why so many hate apple by Anonymous Coward · · Score: 0

    look no further then tims comment. What a disrespectful thing to say to all the real tech pioneers

  41. Students eh? by Anonymous Coward · · Score: 0

    No they've moved on to Google Chromebooks, becuase Google makes computers. How someone could be handed schools on a silver platter and piss it all away in less than a decade is a true mistery.

  42. Guys, relax he just has no idea what to do anymore by Anonymous Coward · · Score: 0

    Guys, relax, just ignore him. This kind of comments mean that he as a leader of the Apple has no idea what to do anymore, so he jumped into pure software developers discussion. It is the same as age long fight of pro-Unix vs pro-Windows professionals. At the end of the day it does not matter, the winner is the guy who wins market with new products.

    Frameworks, coding languages, operating systems they are all belong to software engineering space of responsibility. They are very important in terms of general product architecture, development velocity, system scalability and reliability, they are all REQUIRED for product success, but they are not ENOUGH to make product really great and successful like general understanding of product's market, new design innovation, usability and everything else what makes successful product successful.

    The original iOS and coding is crappy, but the product itself i.e. iPhone, New mobile Browser, New application Store that was the real success.

  43. learning curve by Anonymous Coward · · Score: 0

    Programming does need to be more accessible when you're first learning it. Back in the 90s, I learned LOGO and BASIC. If I had to learn Objective C with its obtuse syntax, it would be a higher learning curve.

  44. Tim Cook is deluded... Swift is like Java/C#... by javabandit · · Score: 0

    Apple probably should have done an independent survey before Tim Cook (or anybody else at Apple) made such a statement. Anybody with a remote amount of objectivity can see that the language is very similar to C# and/or Java. Which I'm not saying is a bad thing, but inferring that it Swift is "less geeky" than Java and/or C# is just disingenuous.

    The most non-geeky (and IMHO among the greatest) programming languages were invented in the 60s/70s and were procedural. That is just plain truth. COBOL, RPG, FORTRAN, BASIC, and LOGO. Obviously, those languages are the greatest in all contexts, but those languages advanced scientific and business systems development more than any other in that space.

    I am still of the opinion that students new to programming should be learning a procedural language first. Simply for the reason of learning the rudiments of program flow, logic concepts, simple data structures, et cetera. Learning things like templating, objects, structs, inheritance, etc... those things can be learned after the rudiments have been absorbed.

    Learning a language like Swift, Python, Java, C# first... seems ridiculous to me. Teach the basics, then open up their world with more advanced languages.

    1. 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.
    2. Re:Tim Cook is deluded... Swift is like Java/C#... by Anonymous Coward · · Score: 0

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

      Disagree. If you use a procedural language that has structures/records, and know how functions work, you are already 90% of the way to OOP.

      I would find it far more difficult to have learned OOP first and then have my hands tied by a procedural language.

    3. Re:Tim Cook is deluded... Swift is like Java/C#... by Anonymous Coward · · Score: 0

      I'll cop to learning a procedural language first. And still write procedural code. It drives me up the wall when someone shits all over my filesystem with class definitions and code cruft to something infuriatingly simple. We don't need OO everywhere. We don't need Functional everywhere. Sometimes you just need to fucking echo 'hello world' (well, the equivalent) and get on with fucking off at work.

    4. 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.

    5. 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.

    6. 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.
  45. 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.

  46. 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/
  47. Learning is geeky by TeknoHog · · Score: 1

    almost by definition. Film at 11.

    --
    Escher was the first MC and Giger invented the HR department.
  48. 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)
  49. 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.

  50. 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!

  51. LOLCODE by Anonymous Coward · · Score: 0

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

  52. Huh?? by Anonymous Coward · · Score: 0

    He's not smarter than he looks, at least not on this point.

    Making programming easier (while still exposing all necessary functionality) is a good thing. However programming is probably always going to be geeky and Swift does nothing important in that respect. Those were poorly chosen words and that's being charitable.

  53. 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"
  54. The pointers argument is one of incompetence thoug by Anonymous Coward · · Score: 0

    h. And of uneducated snobbery.

    I don’t mean as a reference for some address in whatever. I mean as a form of unstructured data that is analogous to unstructured code.
    I'm a "both" guy. Structured code is good. And having goto available, just in case you need more power, is good too. Same thing with pointers. They definitely should be around. But doing all your data structures with them, is insanity. Yes, no matter if you are actually a competent pointer juggler.

    Also, regarding memory management, I make the same argument: We solved memory management!
    You know how a programmer approaches something repetitive? By factoring it out into a nice separate piece of code!
    Too bad, cripplingly primitive languages like C and C++ (and most C-likes) don't support aspects, and so it’s barely possible to factor out aspects.
    But in languages like Haskell, where the semicolon is a programmable operator, and the concept of sequencing actions is exchangeable by other implementations (E.g. allowing things like the TARDIS monad, where you can operate on values before you created them.), doing memory management that is both as fast as hand-made C code and as reliable as a small piece of well-matured code, is easy.

    People like you annoy me, because you believe you are so superior, but really, you're as dumb brats as the dumb brats on the opposite side of the spectrum which you criticize.
    You cling to C and refuse to ever look past your own tiny horizon, because there is only sports jocks from 60s/70s/80s movies, and cool hackers who program computers by directly shorting the bus circuit lanes with some static from polyester against your hair, and write code with C-x M-c M-butterfly, and NOTHING beyond that one dimension.

  55. Stfu tim by Ryanrule · · Score: 0

    He’s a damn logistics guy. Wtf does he know.

  56. Re:The problem with our education system is fundin by Anonymous Coward · · Score: 0

    I went to a private school that had less the half the funding of neighboring public schools, but came in first in the state academically.

  57. Woodshop by Anonymous Coward · · Score: 0

    I agree with your points, but a 7th grade woodshop without power tools? Has such a thing really come to pass?

    1. 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.

  58. Forget Swift... by Anonymous Coward · · Score: 0

    Before you call yourself a JavaScript programmer, read the first volume of "You Don't Know JS" (free ebook). Most people who use a JavaScript framework know only enough JavaScript, say, "Hello, World," to make the framework work but not enough to understand and solve problems when the framework doesn't behave.

  59. 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.

  60. 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.

  61. And people wonder why I don't code for money... by basic.gongfu · · Score: 0

    I've sworn to never write another stupid line in freaking agenda crap languages; Java, C#, Go, Swift, Rust. They're all solving a problem that didn't really exist, how to get everyone and their dog to write code safely. People bitch about Intels latest snafu; just wait until the next, less nerdy generation takes over. My yoga teacher used to tell a story about a Yogi who decided to hibernate all the way through Kali Yuga to not have to eat the "food", if I had known what was coming up around the corner in software land I would have done the same thing. My theory is the suits got shit scared from depending on code magicians and having to treat employees like humans out of fear of loosing them, and have been working 24/7 ever since to dumb everything down to a level where any moron will do.

  62. Great... by Anonymous Coward · · Score: 0

    If I had a dollar for every time I had to fix something written by a "Coder". Oh, wait. I do. And sometimes a lot of them. "Coding" isn't always hard. "Programming", "Designing", and "Architecture" are a lot harder and if not properly done, you can be coding crap. It's not just learning another language, as in being able to ask someone where the bathroom is. It's like learning a foreign language and pumping out Harry Potter.

  63. 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

  64. "Everyone can code" by Anonymous Coward · · Score: 0

    Well, that explains Apple's bugginess.

  65. Why..?? by Anonymous Coward · · Score: 0

    I mean why do they think everyone should code... is everyone should be a doctor, No, is everyone should be a plumer no. So why should everyone program. Everything is not for everyone.... Its alright that some people dont want to code, we need doctors and plumers...
    Just give it up, the more a language is for "everyone" the worst it is for everything.... Visual Basic was very easy to program.. is it a Enterprise grade programming language.. NO.. no one uses VB for large scale programs. ( and if they do, they are doomed )

    Access was made to make database for everyone... is it a good tool for large scale.. noooo (a resounding no here)

  66. 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! --
  67. dafuq? by Anonymous Coward · · Score: 0

    It's like saying calculus is too geeky for mechanical engineers or rocket scientists ...

  68. Hypercard? by Anonymous Coward · · Score: 0

    Pfft! I learned to program on an Apple II with BASIC.
    Yes. I'm old.
    And yes, I am aware of Djikstra's sentiments on BASIC, so don't bother pointing that out.

  69. 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/
  70. Tim Cook can fuck off. by Anonymous Coward · · Score: 0

    That is all.

  71. As I age... by Anonymous Coward · · Score: 0

    ...I'm finding that I'm remaining employable because I actually know how to program.

  72. 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.
  73. Hypercard's logical successor by Anonymous Coward · · Score: 0

    Two comments:

    First take a look at LiveCode for Hypercard's Logical Successor. Multi-Platform, Open-Source, and 99% compatible with native HyperCard code.

    Second: FileMaker is in itself a very successful and robust platform, not any more similar to HyperCard than say PowerPoint. One of its best features, IMHO, is that while you CAN program it to do stupid things, in stupid ways, its rather hard to make typical programming mistakes like syntax or reference errors. 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. It's not free or open-source but very sophisticated (and well documented) applications can be developed released in a fraction of the time and expense of the alternatives. The only real knock I have against it professionally is that the new user based licensing model makes it too expensive for a number of applications.

    1. 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.'"
    2. Re:Hypercard's logical successor by Anonymous Coward · · Score: 0

      About 10 years ago, I worked for a university department that had a tough time keeping track of their equipment, whom it belonged to, which labs it was in, etc.

      But they had FileMaker Pro. So I built them a database with a custom layout showing a map of each floor in the department, and each room was a button you could click on that would take you to the equipment list filtered by location. You could click on each piece of equipment and see who bought it, when, what software was on it, etc.

      It felt VERY much like building a HyperCard app!

    3. 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.'"
  74. 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.

  75. Apple is such a pile of shit by Anonymous Coward · · Score: 0

    Condescending shit heels, top to bottom.

  76. Or really Tim? by Anonymous Coward · · Score: 0

    https://en.wikipedia.org/wiki/GW-BASIC

    Called to say hello from back when I started writing code in elementary school back in the 1970's.

    1. Re:Or really Tim? by Anonymous Coward · · Score: 0

      I should have put a more generic BASIC link.

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

  77. Software gets on my nerves by Anonymous Coward · · Score: 0

    Why? The commercial software world is nonstop marketing bullshit. The academic software world is nonstop pedantry and often behind the times. The OSS world is mostly obscure.

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

    Developers! Developers! Developers!

  79. LOL FUCK YEAH by Anonymous Coward · · Score: 0

    my job security just got awesome

  80. 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
  81. It makes no sense by Anonymous Coward · · Score: 0

    What's not geeky about swift? It has assignments, classes, operators, functions, it has function bodies, it has bodily functions it even has braces for goodness sake. That is nothing fundamentally different between it and other languages out there. It's almost AS3 plus a few bits from other languages. Computer programming is fundamentally geeky. If it's not geeky, it's not computer programming.

  82. 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. :-)

  83. OMG by Anonymous Coward · · Score: 0

    It's like TOO hard.

    So, let me get this straight. You are willing to create an entirely new programming language in order to attract lazy people, as long as those lazy people are young. However, someone who has worked in 3rd generation languages for 20 years is just too old and stupid to be given a chance to learn new technologies?

    I swear the tech industry in run by people who score highly on the Dunning-Kruger index.

  84. 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
  85. Apple's vision by Anonymous Coward · · Score: 0

    A boy using a tablet.
    A woman: What are you doing on your computer?
    Boy: What's a computer?

    A boy programming in Swift.
    Someone: what are you programming?
    Boy: What's programming?