Slashdot Mirror


User: dgatwood

dgatwood's activity in the archive.

Stories
0
Comments
14,277
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 14,277

  1. Re:The most disgusting part.. on IT Layoffs At Insurance Firm Are A 'Never-Ending Funeral' (computerworld.com) · · Score: 5, Insightful

    <sarcasm>But, but, but... regulations are bad. We should let the market decide....</sarcasm>

    Yeah, this falls under the category of C*Os being crooks and lying on their H1B applications. That should result in jail time for everyone involved even tangentially in the decision. Fraud is a felony.

  2. Re:Swift 2.0 on Apple Releases First Preview of Swift 3.0 (macrumors.com) · · Score: 1

    Different people define "obsolete" in different ways. I might feel justified in calling my 6502 assembly language knowledge not obsolete because just last year I found work as lead programmer for a project using it [3dcartstores.com].

    LDA year ; offset from 1900
    CMP #115
    BGE 75

    Or something.

  3. Re: "source-breaking changes" on Apple Releases First Preview of Swift 3.0 (macrumors.com) · · Score: 1

    No, they're one-upping Python and breaking source compatibility with every release. :-D

    They say that everything from 3.0 onwards should be source-compatible, but lots of folks were also saying that for 2.0, so... I'll start paying attention to Swift when there are no big source compatibility regressions for two major releases in a row.

  4. Re:Neighboring Countries on Chile Has So Much Solar Energy It's Giving It Away for Free (bloomberg.com) · · Score: 1

    Or they could just build the first intercontinental underwater superconducting power line. You'd probably have to build several floating heat exchangers along the route, but in principle, I don't think there's anything preventing you from running a cable from Chile all the way to the U.S. west coast. And as long as it is HVDC, you don't have to worry about phase issues.

  5. Re:Same reason TV VCR's sold so well. on Ask Slashdot: Why Do You Want a 'Smart TV'? · · Score: 1

    In theory, it is nice. In practice, you find that your smart TV won't play from Amazon Prime Instant Video and your smart Blu-Ray player won't play from Netflix. Before long, you give up and just buy an Apple TV or buy a Chromecast and use it with your phone.

    The whole "one device" thing only really works if the people writing software for it have an incentive to update it and fix it. People who sell hardware that consumers buy once and keep for a decade don't have that incentive. By the time you replace it, the company that built it will have changed names and been bought out three times.

    As far as I'm concerned, the only smart TVs that should even exist are the ones based on open platforms, where the content providers can create their own apps and deploy them globally to every smart TV from every manufacturer.

  6. What car is that? What year?

    2007 Rav4.

    I'd complain to Apple about that, something is wrong with your phone.

    It is not just me. The original poster there says that it is fixed in 9.3; I avoided 9.3 and 9.3.1 like the plague because of some other issues with those releases. Now that 9.3.2 is out, I finally had time to do a backup last night so that I could update. Here's hoping that the dead A2DP issue really is fixed. I never want to get that ear-splitting beep again. :-)

  7. Please report this. on Apartment In US Asks Tenants To 'Like' Facebook Page Or Face Action (business-standard.com) · · Score: 5, Informative

    IIRC, that's a violation of Facebook's Terms of Service. Please report it to Facebook, and if enough people corroborate the report, the business in question won't have a page anymore.

  8. Well on the flip side, the headphone plug/jack connector is a common point of failure across multiple failure modes. You snag the cord and the phone goes flying, the thread-like conductors used in the cable break at the plug; water infiltrates through the jack into the case; mechanical wear caused by frequent insertions/removals degrades the electrical connection.

    Which they're replacing with a Lightning connector that is even thinner, has even thinner wires, and smaller contacts that are more likely to stretch in such a way that they no longer make reliable contact.... The best part is that when your Lightning port fails, you don't just lose your use of headphones; you can't charge the device anymore....

    I'm not saying that headphones aren't a risk, but they're a well-understood risk, and a risk that lots of people choose over the alternatives, which means that there's something wrong with the alternatives that the people who use Bluetooth haven't encountered yet, like the fact that 3.5mm connectors are ubiquitous, and Bluetooth isn't, or like not having to charge your headphones, or like being guaranteed that when you plug it in, it will just work rather than having to reboot your phone because the A2DP stack has bricked itself again or having to turn the receiver off and back on so that the device will pair properly or....

  9. How many people are buying a new $650 phone, but have a car so old it doesn't have Bluetooth?

    *raises hand*

    Actually, that's not true. My car has Bluetooth, but it is headset profile only (no A2DP), which means that I can't use it for playing music or anything else. But even if it did have proper Bluetooth A2DP, the experience would still suck horribly, from what I've seen.

    As an experiment, I bought a Bluetooth receiver (JETech) to see if I could survive with Bluetooth if Apple decided to ditch the headphone jack. I'm about to switch back to using the headphone cable, because the experiment did not go well. Specifically:

    • Unreliable detection of receivers: When iOS sees multiple Bluetooth devices come online at the same time, it ignores the A2DP receiver and continues to ignore it until I tell the Bluetooth dongle to re-pair by holding and pressing the button. After ten seconds, the A2DP receiver gives up, reannounces its availability, and iOS finds it and starts talking to it. But that means I can't just leave the Bluetooth device hidden in my console. It has to be in a place where I can get to the button. As a user experience, this seriously sucks. If it is as inconvenient to use Bluetooth as it is to fiddle with a cable, there's no benefit, only downside.
    • Audio stack bricks itself: Every so often iOS's Bluetooth audio stack becomes completely bricked. When this happens, the audio is replaced by a loud buzzing noise, and I'm unable to get A2DP audio working again until I reboot the phone. This happens about every two weeks, give or take.
    • Death by beep: If I make the mistake of hitting the pair button (and sometimes even if I don't) while the phone is in this bricked-BT-audio state, I get an ear-splitting beep that is orders of magnitude louder than the normal pairing beep—loud enough to cause hearing damage.

    Before Apple makes Bluetooth be the only way of connecting headphones to their device, they need to dogfood their Bluetooth stack in the real world for about three more years and fix every problem that they encounter. I think they'll be unpleasantly surprised by the results, because it is not anywhere near being up to snuff.

  10. Re:"software magnate" on John McAfee Denied Libertarian Party Nomination For President (reason.com) · · Score: 1

    But now the leftist insurgency that Ralph Nader headed in 2000 is happening inside the Democratic party, and instead of getting 1% of the vote, Bernie Sanders has 40%. He isn't winning, but he is doing way better than Ralph did.

    Either way, the result is the same, whether the left votes for somebody else or doesn't bother to show up on election day. They failed to learn the real lesson, which was that a centrist Democrat can only win if that candidate is popular and energetic and enthusiastic (like Bill Clinton) and doesn't act like a Republican. If you have a choice between a Republican and a Democrat who acts like a Republican, the Republican will win every time—doubly so if the Republican acts enough like a Democrat.

    The only good news is that the President's power is limited by Congress, so no matter who we pick, there's only so much damage that he/she can do in four years, and then we have a chance to try again and maybe get it right this time.

  11. Re:He's wrong of course on Net Neutrality Is Complicated: Wikipedia Founder Jimmy Wales (indiatimes.com) · · Score: 1

    Wikipedia's own motivation is simple: they want more of the world's eyeballs to have access to the world's largest online encyclopedia so that the whole world is better-informed. It's their most-basic mission. WP Zero is letting people read encyclopedia articles on their mobile devices without paying exorbitant bandwidth charges. The alternative is that it's too expensive and these people remain ignorant of and disconnected from a world of knowledge that's out there to help and empower them.

    No, the alternative is that they find ways to reduce the cost of Internet service in those countries non-preferentially, so that those people actually have access to that world of knowledge, rather than just a limited, filtered, sometimes biased fragment of it. Wikipedia is acting as though their information is the only information of value. Their "Internet" is like a closed-access journal that gives free access only to summaries of the articles. It impedes understanding and progress. It hurts the very people that they're trying to help.

  12. Re:WP:OBLIGATORY on Net Neutrality Is Complicated: Wikipedia Founder Jimmy Wales (indiatimes.com) · · Score: 3, Insightful

    -Zuckerberg and Wales want to give poor people in the third world free access to the a massive chunk of human knowledge and instant worldwide communication.

    Now let's analyze what's wrong with that. Facebook is a for-profit company whose business model depends on being able to communicate with anyone through their service. Therefore, their efforts to enable people to access Facebook are entirely self-serving. That means that they aren't noble or generous at all, but rather strategic.

    Now if Facebook's funding also benefitted every other social network from the tiniest site all the way up through Google+, I would consider that philanthropy. As long as it only benefits them, it isn't really benefitting the poor, because the perceived benefits are balanced out by limiting their future access to other competing services and reducing competition that will eventually provide improvements that they care about.

    The same argument holds for Wikipedia, even though there's no profit motive. Imagine if every time somebody threatened to fork Wikipedia to push them to fix governance issues, Wikipedia said, "Yeah, but a third of your potential audience won't even consider going to your competing site because it will cost them money." So market manipulation on behalf of Wikipedia will have a chilling effect on dissidence.

    So no, net neutrality isn't complicated. Manipulating the price of Internet service in favor of specific companies or organizations always comes with a price. The notion that something is better than nothing might be true in the short term, but it has very real long-term consequences.

  13. Re:Canada gets screwed by the AGW scam on Canada's Energy Superpower Status Threatened As World Shifts Off Fossil Fuel (www.cbc.ca) · · Score: 5, Insightful

    Voicing my opinion that AGW is a scam will result in my post being censored to -1. If AGW were real, there would be no need to censor dissenting views; the facts would prove the point far better than any moderation.

    Around here, we tend to be okay with dissenting views, as long as you provide evidence or interesting reasoning that poses new questions. When your post gets modded down, it will be because we're still waiting for you to provide either of those things....

  14. Re:I'd argue we need moalready to mucre humanities on Apple CEO Tim Cook: I'd Require All Children To Start Coding In 4th Grade (thehill.com) · · Score: 1

    No disagreement here. None of the studies out there are perfect, and I'm not really arguing that music is critical to CS instruction, but rather taking a contrarian position to point out that we can't assume that those other areas aren't important, particularly when there's evidence that they might actually be important.

    One thing I would point out, though, is that people who do music tend to have less time for studying. School band usually soaks up two or three hours almost every afternoon in the fall semester, plus usually football games every Friday night, plus band competitions all day on Saturday. I would be surprised if those folks actually put in more time studying, because I'd be surprised if that were even possible. It is more likely that the opposite is true—that they're forced to use their limited studying time more efficiently, and as a result, don't find it as onerous. It is also quite possible that additional socializing in school actually provides a tangible benefit in terms of outcomes, with band being just one way of doing that.

    I guess the bottom line is that any changes to our education system need to be tested first, and if the changes seem to help, we should roll them out more broadly. Right now, it seems like education changes get rolled out haphazardly and broadly first, and ten years later, we panic and ask why our kids are falling behind in science.... :-)

  15. Re:Lost, not 'denied' on John McAfee Denied Libertarian Party Nomination For President (reason.com) · · Score: 2

    You don't? It's ample. The first key to someone being a nutball is how broadly they broadcast views which are obviously going to be rejected. It doesn't matter if you're right, if you lose interest in whether people will think you're insane when you speak... you're insane.

    By that standard, Trump, who appears to have no filter, is clinical. Clinton, who appears to have almost nothing but filter, is sane. I would reject that analysis. Trump is too over-the-top with his speech, and Clinton is too reserved.

    There's a happy medium between the two extremes in which people present unpopular ideas and explain why they're the right choice in a way that the people can understand. Sane people try to sway public opinion through always telling the truth and trusting that the public will recognize genuine truth when they see it. They don't throw a bunch of s**t at the wall and see what sticks, and on the other hand, they don't try to protect themselves from criticism by always choosing their words extremely carefully and deliberately, and by never saying anything that they consider controversial, by never taking sides on controversial issues, etc.

    What's funny here is that if you look at the way they speak, Clinton, a Democrat, is the most conservative candidate out there, and Trump is the most reactionary liberal. Sanders, who politically qualifies as the lunatic fringe, comes across as the sane one. How the heck did that happen?

  16. Re:"software magnate" on John McAfee Denied Libertarian Party Nomination For President (reason.com) · · Score: 2

    Also, third parties do not need to win to matter. The Green Party campaign in 2000 cost the Democrats the election, and sent a clear message that they could lose more votes on the left than they were gaining in the center.

    And yet here we are just four presidential elections later, and the Democrats are leaning towards former Secretary Clinton. You can send a clear message all that you want to, but that doesn't make any difference if the people on the other end don't even bother to read the message.

    If you look at American party platfoms in 1900, the most successful political party over the next 100 years was the Socialist Workers Party. They advocated public pensions, welfare, unemployment pay, and free healthcare for the elderly.

    Maybe, but it could also be argued that they had no effect at all, and that instead, the rise of muckrakers and investigative journalism brought sunshine to dark corners of public policy. It could easily be argued that the decline of American politics into pure noise has been caused by the decline of the news media as a career choice for the best and brightest, caused in turn by a combination of media consolidation and chronically low wages. (Great pun in that last sentence, too.)

    If you want to make a difference, vote 3rd party, and send a message. This is especially true if you live in non-swing state, as most Americans do, where your vote is otherwise meaningless.

    If I thought that message would have an effect, I would do that. I probably will anyway, but I wouldn't blame the people who don't bother. Unfortunately, at this point, our system of democracy is so broken that, at least at the federal level, our votes are almost as meaningless as in the mock elections that we used to joke about in other countries. The two parties are indistinguishable on all the issues that actually matter and have a nonzero chance of actually resulting in changes to our laws.

    You basically have some wedge issues like abortion and the death penalty that tend to divide the parties, with the Republicans coming down on the moral side of abortion and the public good side of the death penalty, and Democrats choosing the opposite sides. These issues are so complex and thorny that nobody wants to touch them beyond using them as a cheap 30-second sound bite, which means no matter who you vote for, we're not going to see anything happen in either area. The only way either will change is through ballot measures.

    And then you have the core issues, like privacy, national security, the economy, etc. In these areas, although there's ostensibly a huge difference between the parties, in practice, they're nearly identical.

    On the economy, Democrats tax and spend, while Republicans borrow and spend, devaluing the dollar, effectively taxing and spending. In a perverse way, the Republican approach in that area turns out to be more fair because it taxes the rich more than the poor, proportional to their savings and income, but they make up for it by trying to shove regressive tax structures down our throats, so it's basically a wash. At best, Democrats avoid more of the really foolish decisions like lowering taxes on the ultra-wealthy, but that's like saying that shooting yourself in the foot is better than shooting yourself in the gut. It is technically true, but either way, you're still shooting yourself. Neither party is fiscally conservative, because neither party has the self-control to limit spending.

    About the only area where they differ meaningfully is in their approach to regulations—whether they favor regulations or trust in the free market. Unfortunately, neither approach works all that well. Both work under certain circumstances. Neither party seems to recognize that, or acknowledge that there are situations where their approach falls apart. This mostly results in bad regulations that don't have the desired effect, coupled with missing r

  17. Re:I'd argue we need moalready to mucre humanities on Apple CEO Tim Cook: I'd Require All Children To Start Coding In 4th Grade (thehill.com) · · Score: 1

    Firstly, how much time did You spend learning how to play an instrument? Do You believe that this would be possible without a mind that is calmly capable of analyzing mistakes it had made, and then making corrections? Or do You believe that Your skill in playing an instrument stems exactly from pure emotions You have?

    No, but I wouldn't describe it as a "punishing amount of self-training". First, unlike programming, most people are taught to play music, rather than being self-trained. The stuff that you do on your own is more typically practice. The distinction is subtle, but important; training is learning new skills, whereas practice is honing existing skills through repetition. Second, the word "punishing" sounds like practicing an instrument is torture. Well, maybe if you play violin, but....

    Secondly, who says that analytical things aren't fun?

    I didn't say that they aren't. You can find fun in anything; I didn't mean to imply otherwise. My point was that if it feels like punishment, that's probably a bad sign. :-)

    Just because two things use the same wiring of the brain (which is what we assume here), doesn't necessarily mean that excersising one helps the other. The correlation can also be a negative one: one thing might be damaging to the other.

    True, but if that were the case, there wouldn't be a strong correlation between musical ability and programming ability, because learning music would ruin you as a programmer, rather than strengthening your spatial-temporal reasoning as it appears to do.

    Still a bit of "a failed musician" (I apologize again for the ad personam) -- I dare say that You could be a much better and a more accomplished musician if You could devote the fullness of Your time to the lifelong stufy of music.

    Certainly true. I've definitely hit a plateau where improvement is relatively slow because of lack of practice. That would be true for splitting your time between any two or more skills, of course. I wouldn't call that a failure, though, just a choice of balance between competing activities. For that matter, I also have to balance it with all of my other hobbies, including writing, photography, videography/moviemaking, woodworking, electronics, etc. After all, there's only so much time in a lifespan.

    Similarly, I can't say "oh, I can adjust it later" in woodworking.

    Although true, it's not really the same. This is why we take the time to laboriously measure wood before we cut it (and then swear when we measured it wrong). There's a lot of planning involved, a lot of design, a lot of careful planning. With music, you have to do almost everything in real time. There's careful planning, but the careful planning is in the form of doing the same thing over and over until you can do it (approximately) right every time. I guess to some extent that's true for some aspects of woodworking, such as turning something on a lathe, but it is kind of the exception rather than the rule, and it is also the sort of thing that we often do with CNC machines these days.

    Now in theory, writing software is supposed to involve lots of advance planning, too, but in practice, we usually just hack it together with Perl. And software continually gets redesigned. It's the computer equivalent of an office building's architecture, where you build the basic structure to be flexible, knowing that they are going to rip the walls out every two years and completely change everything... except that they constantly change the slabs and the roof, too. That's why learning to rapidly adjust to unexpected inputs results in both better musicianship and better coding.

    I will, however, grant you architecture and gardening, at least when done on a large scale. The ability to visualize such things in three dimensions

  18. Re:I'd argue we need moalready to mucre humanities on Apple CEO Tim Cook: I'd Require All Children To Start Coding In 4th Grade (thehill.com) · · Score: 1

    How do You know that programmers who are also musicians are like that because music enables them to understand math? My bet is on any of the logical fallacies, especially post hoc (many technical schools have music because it is the easiest thing to teach technical people, but there is no causal effect between being capable to play and programming), ...

    Actually, technical schools are less likely to have music programs than liberal arts colleges, not more. So the correlation is in spite of a negative correlation in availability of music classes.

    joint effect (both math/programming and playing music requires a calm, analytical mind that is capable to withstand punishing amount of self-training),

    That doesn't sound like music to me. Music is fun, first and foremost. If you aren't enjoying it, you're doing it wrong. :-)

    You're probably correct that there's a joint effect at work here, but any such joint effect means that at an absolute minimum, the two skills both benefit from certain parts of the brain being wired in certain ways, and therefore both skills will tend to exercise the brain in similar ways.

    or even wrong direction (it is people who program who later become musicians, and not musicians who later become programmers).

    Definitely not. Very few people ever successfully learn to play musical instruments after they graduate from high school, much less college. By contrast, a lot of people went into CS because they started out as musicians and, upon getting to college, learned that there's no money in it.

    As for grammar, I really don't know any, in any of the languages that I speak -- even my mother tongue. And the same is true for most of native speakers of any language -- do a test and ask a person who speaks a language as a native to codify it for You in nice and rigid forms of grammars. Let's not forget, that human grammar is rather different from mathematical and computer grammars -- more rigid and often too formal for most people to "speak", or even comprehend.

    When you truly know a language like a native speaker, the grammar often becomes intuitive. Either way, though, whether consciously or unconsciously, you learned to recognize the patterns and to replicate them.

    BTW, although it is true that computer grammars are a lot more rigid than natural languages, even in natural languages, there tend to be certain near-invariant aspects. For example, in English, adjectives always come before the nouns that they modify (ignoring predicate adjectives, that is).

    Having good grammar and spelling also makes you better able to communicate with the people around you, which comes in handy when you're trying to explain the software architecture that you're designing.

    But you're right that education in English (or whatever one's native language is) is by far the least correlated with CS success. It is also not strongly correlated with music or, really, much of anything else besides other writing-related classes. So let me pose it a different way. If we don't have writers, we don't have news, and we don't know what's happening in the world. For the same reason that knowing enough of history to avoid repeating it is important, knowing whether we're already repeating it is important. :-D

    As for these things being vital to computer science -- You sound like a failed painter or a musician that learned to code to do anything useful in Your life.

    Actually, no. I started learned to code at about the same time as I learned piano (late first grade and early second grade, respectively). Learning music didn't make it easier to learn programming later, because I learned both during the same part of my life. That said, for people who picked up CS later in life, musicians statistically do better than average.

  19. Re:Oh for fuck's sake on Apple CEO Tim Cook: I'd Require All Children To Start Coding In 4th Grade (thehill.com) · · Score: 1

    It is a mathematica skill.

    Then explain why it is easy for people with almost no knowledge of math to learn how to write software.

    The fact is that there's almost no math involved in actually writing code. Knowledge of math can come in handy for simplifying boolean expressions, and it can be useful if you're trying to get the computer to actually do math (e.g. writing a spreadsheet app, writing code for computing trajectories of a rocket, etc.), but fundamentally, math and programming are completely orthogonal.

    It is far closer to a language skill, in that it is a means of taking an idea and expressing it in a syntax that a computer can understand. It involves taking an idea that is entirely abstract and turning it into a concrete representation of that idea. That's art, not science or math. This is not to say that there aren't aspects of science and math involved, or that understanding how a computer works won't make it easier to write good code, but they aren't strictly required.

  20. Re:Oh for fuck's sake on Apple CEO Tim Cook: I'd Require All Children To Start Coding In 4th Grade (thehill.com) · · Score: 1

    Programming is not a language skill. Any reasonably skilled programmer with knowledge into multiple paradigms could pick up any new programming language quickly. Language skill does not matter.

    The word "language" is overloaded here. The difference between any two programming languages is pretty small unless you include non-OO, non-procedural languages like LISP or ALGOL. But either way, the manner of expressing yourself through code and algorithms is hugely different from English, and hugely different from the types of math that they teach in school, and hugely different from... well, really anything taught in school. And that's what I was trying to express by using that word.

  21. I never said that it was taking code. I said it was "taking something". It is downright silly to argue that an API isn't "something", or that it is possible to use an API without first obtaining a copy of it. So how how can you claim that implementing an API does not involve taking that API and using it?

  22. Re:It just won't work, and make more trouble later on Apple CEO Tim Cook: I'd Require All Children To Start Coding In 4th Grade (thehill.com) · · Score: 3, Insightful

    You have to have the fundamentals of AT LEAST algebra first.

    Without the math that underpins ALL computers, you can't program. Not even a spreadsheet.

    And this sort of excuse is why so few people understand how computers work. FWIW, I started learning to write BASIC code using the "Teach Yourself BASIC" series of books and tapes in first grade. The only thing hard about it was that I didn't understand multiplication or division, so I didn't really understand those parts of the exercises, but everything else was straightforward.

    In about third or fourth grade, I went to a music education conference with my parents, and went to a "Computers in Music" lecture, and they couldn't get their software to work. And suddenly, there I was, this little kid raising my hand and walking up to these college students and teachers to point out their typo.

    By fifth grade, I was writing Apple II programs for things like quizzing people on arbitrary subjects. I disassembled part of a computer in class just to point out the various electronic components inside it. And so on.

    By the time I took algebra in eighth grade, I was already teaching BASIC programming to other students. The concept of variables was second nature, so algebra came pretty easily. It was basically just a more advanced form of simplifying boolean expressions, just with numbers instead of booleans, and math instead of logical operators. And instead of assigning something to a variable and getting a result based on known values, you were figuring out what values those variables could plausibly have.

    So no, in my experience, learning to program makes learning math easier, not the other way around. Math has very limited value when it comes to learning how to write software. It certainly helps you understand how to do math with a computer, but that's a tautology. So you are technically correct that you can't learn how to do math in spreadsheets without knowing math. By that same standard, clearly you can't learn how to drive a car until you learn how to adjust the fuel-air mixture in a carburetor, because race car drivers have to know how to do that....

    It does not follow.

  23. Re:Oh for fuck's sake on Apple CEO Tim Cook: I'd Require All Children To Start Coding In 4th Grade (thehill.com) · · Score: 1

    The correct answer to the statement "every child should start learning code during the 4th grade", sure not a problem, where is the one coding language that follows on as a sound extrapolation of English and Maths formula - one language. ...

    IMO, the language isn't as relevant as you seem to think it is. The thing is, most computer programmers know at least half a dozen different programming languages. Picking up another one is really no big deal. The concepts are the important part, and with the exception of functional programming languages and logic programming languages, those concepts are pretty much universal.

    Honestly, I'd love to see schools teach a little bit of hands-on CS and robotics starting from about first grade. Start with really simple pieces that they can put together without screws, and use a really simple programming language with approximately the complexity of Logo (possibly Logo, even) to control the little robot in the real world.

    Eventually, move up to a simple procedural language like BASIC. I know folks are going to trot out Dijkstra here, but concepts such as function calls and recursion go way beyond elementary school, and really, even junior high school. Start teaching proper procedural languages (any of them) in high school.

    C would be a decent language for this, as long as you include a few small bits of C++ or Objective-C around the edges, e.g. string classes. With that said, PHP is a better choice. It is close enough to C syntax that it won't be hard to move up to C++ or Java, but it lacks the horrible string baggage of C, and lets you start coding immediately without first learning concepts like exceptions and classes and data types (even though it does support those things to some degree).

    By college, you'll be able to start with a semester of OOP (in C++ or Java or whatever), and move on to more complex subjects from there. You'll be able to spend your class time teaching the art—architecture, security, design patterns, networking, databases, operating systems, etc.—instead of having to waste much of the first two years teaching people the fundamentals.

  24. Re:I'd argue we need moalready to mucre humanities on Apple CEO Tim Cook: I'd Require All Children To Start Coding In 4th Grade (thehill.com) · · Score: 4, Interesting

    The schools are already busy teaching kids to be wimpy little fucks, and know-nothings. They don't need to be teaching "humanities" IMO.

    That's sarcasm, right? I hope so. A shocking percentage of computer programmers are musicians (at least 3x as many as in the general population), and this correlation is not a coincidence. Music in the schools teaches skills that give students a leg up in math classes later, and also teaches them skills that make it easier for them to understand how to write code later.

    And language skills are also important to learning CS. That's where we learn the basic concepts of grammar that we later build upon when learning about how compilers work.

    And history teaches us to avoid making the same stupid mistakes time and time again, and thus greatly increases our chances of still being around to write software in a hundred years.

    All of these skills are of vital importance to computer science. Learning science without learning the arts will get you a generation of people who can't program their way out of a paper bag, because they've never learned spatial skills by studying art and perspective, or learned how to create large works of art from a million tiny brush strokes; they've never learned how to see a symphony as a collection of tiny notes, each one equally important; they've never learned to simultaneously use both sides of their brain to precisely count the duration of notes while emotionally feeling how to express them dynamically; and so on.

    So no, reducing humanities education is not the solution to the problem. It is the problem.

  25. Re:Oh for fuck's sake on Apple CEO Tim Cook: I'd Require All Children To Start Coding In 4th Grade (thehill.com) · · Score: 4, Interesting

    He's wrong, but not for the reason you think. He's wrong because fourth grade is way too late to start teaching kids to code. Computer programming is a language skill, and the later you learn, the harder it is to learn. You're better off teaching them the basics in first or second grade and then building it up a little bit at a time over the next decade.

    And everybody ought to learn to paint and play basketball, too, at least a little bit. When I was a kid, we had art and music once a week, we had actual PE during recess some of the time. And so on. Not all of us went on to become artists or basketball players (for example, I only became decent at art when they invented multiple levels of "Undo", and I still can't shoot baskets to save my life), but exposing everyone to those skills early in life means that those who have the natural aptitude for them are more likely to become good at them. And for everyone else, as long as it is enjoyable and failure isn't treated as a mark of shame, there's no harm in teaching a wider range of skills in our schools.

    In fact, I'd argue that the worst thing that has happened in our education system in the past couple of decades is the reduction in arts and music education. There's a strong correlation between musicianship and computer programming abilities. Yet for some baffling reason, we keep seeing schools reducing funding for the single most generally accessible way for students to learn the core skills that computer science depends upon:

    • The ability to simultaneously interpret something at both a detailed (notes) and at a high level (musicianship)
    • Grasp of how complex things are composed of many smaller things, such as individual instrument parts in a large ensemble work, and learning how they all fit together
    • Basic algorithmic thinking, such as loops and conditional branching
    • Reasoning skills (the sound system doesn't work; let's figure out why)
    • Fractions (You can't learn to read music without it, so students who learn music as kids have a huge leg up in math later on.)

    and so on. It amazes me that after decades of cuts in music education, suddenly, the tech industry wonders why CS graduation rate is declining. Well, duh. You can't lump computer science in with STEM and expect to get good outcomes. Computer science is not a science, nor is it math.

    Sure, there are aspects of science and math in computer science, just as there are aspects of science and math in music—acoustics and psychoaccoustics, metrical division of measures, relationships between frequency and pitch and wavelength, and so on. And sure, when you make music or write code, you have to follow certain rules or it won't compile (performers won't be able to play it). However, on top of that foundation of rules and technical details, there's a huge mountain of artisanship, and that's what makes the difference between someone who does well in CS and someone who doesn't.

    Performing music and writing software are closely related skills; composing music and writing computer software are nearly identical skills, and use basically the same parts of the brain in the same way. The difference is that most kids won't get interested in something that looks boring, and they initially see computers as boring. Music doesn't have that problem.

    Of course, if we could make programming more fun, that might help, at least a little, but either way, the best way to end up with more programmers is by having more music classes, more art classes, more dance, more theater, more... everything but STEM. There's some irony for you.