Vi Hart: Every school should replace calculus with recreational math - <AUTHOR> http://www.newscientist.com/blogs/culturelab/2011/03/mathematical-artist-why-hyperbolic-space-is-awesome.html# <comment><USER4> I'm a Math and CS student and still wonder how was it even possible that I did not start to hate math in high school. Things done there are dull and boring, exercises are repetitive and do not teach anything substantial other than applying another algorithm shown by a teacher. I found out that almost everyone did not really understand not only the problems that were told to solve, but also the solutions they gave -- and it was hard to blame them, for it was mainly teacher's and education system's fault not to give them thorough understanding of what is math really about.

My idea? Dump all that algorithmic crap and teach real problem solving. Do not punish for bad performance, because it is really hard to actually come up with a solution to a problem, and this skill is not something that can be learned by doing the same thing over and over again. Problem solving also require less concepts to be introduced and internalized, so more time can be spent on actual thinking and discussing, and less on preparations.

This kind of math course may seem not to prepare to good to "university level" math, but in fact it is quite opposite -- universities have to start almost from scratch anyway, and it is easier to teach new concepts a person who has a good understanding what math really is, than a person who only know tens of algorithms, used in high school to grind all kind of "problems" given there.

<comment><USER5> I'm probably one of the few, but I didn't have any problem with the _paradigm_ of high school math education, just the _pace_.

As far as my later career, it's been my experience that rote manipulation without conceptual understanding _can_ solve your problem, and that the converse _isn't_ true. Sometimes, if you do the math right, it will contradict your intuition.

I'm hesitant to endorse any paradigm that aims to make math more intuitive, since at the end of the day that's a _lie_. One of the take-home messages of mathematics education should be that these mechanical processes are _better_ than your own "problem-solving skills".

<comment><USER6> I guess I've rarely had situations where I had to _manually_ execute most of that machinery. I agree the rote machinery is quite useful to apply, but the question for me usually is what to apply and how. Applying it is a job for computers.

For example, it's quite important for me to know when I might need to compute an integral, and what I'd do with it. But when it comes to banging out the symbolic manipulations, remembering tables of what integrates to what, recalling integration strategies for common kinds of integrals, etc., Mathematica is more skilled than I am, so I defer to its expertise, and haven't tried to keep any of that stuff in my head since high school.

<comment><USER5> One case I have trouble doing in Mathematica, etc. are variable transformations to increase numerical stability. A lot of times if you're clever you can do a variable change on an improper integral with (integrable) singularities to get an integral of a continuous, bounded, function over (0, 1). Working out this change of variables is something I find easier to do by hand.

I also generally have trouble getting Mathematica to do all of the work I need to do to come up with error bounds on numerical schemes.

</comment></comment></comment></comment><comment><USER7> If you aren't familiar with Vi Hart, let me suggest some of the more awesome videos that seriously tickled my geeky innards.

<http://www.youtube.com/watch?v=DK5Z709J2eo> (infinite series through doodling)

<http://www.youtube.com/watch?v=heKK95DAKms> (graph theory awesomeness, through doodling)

<http://www.youtube.com/watch?v=e4MSN6IImpI> (some lovely properties of binary trees ... through doodling)

<http://www.youtube.com/watch?v=Gx5D09s5X6U> (snakes)

Especially that last one, it poses a question as to whether you can use a grammar to show that a snake lives (doesn't bite itself). Unfortunately she doesn't provide a solution to the problem, but me and a few mates went ahead and proved that it is impossible to prove whether the problem is solvable without simulating the snake.

</comment><comment><USER8> I'm really not convinced by this. Sure, math education is far from ideal. But the solution cannot be to make it more "touchy-feely" and make everybody feel good.

Courant, in his book "What is mathematics?", says the field historically seems to go through alternating phases, from wild, creative, adventurous phases in which new things are discovered -- often inspired by "real-world" problems in physics or engineering -- to more sober, rigorous phases in which another generation takes over and basically cleans up the findings of their predecessors (making proper definitions, constructing and refining the proofs etc.).

But this is far from what math _education_ can be about.

The biggest obstacle to math education is the meme that mathematics is "only for intelligent people". Mathematics at the basic, cleaned up level has almost nothing to do with "intelligence" and a lot to do with memory. I know this first-hand because I used to be really bad at maths and then one day decided to learn it anyway (and did). Most often, when someone doesn't get some result or can't figure out the derivation, it's because he doesn't remember or has never learned the relevant facts. [EDIT: Also, if you think you need to be "intelligent" (however defined) to do math, you will give up sooner when you don't understand sth because you think "uh, I'm too dumb" instead of asking "what am I missing".]

Mathematics is a kind of language, and as in any language, most people will actually need to sit down and memorize vocabulary. It's mundane, it's not fancy-creative, it's a pain in your behind, but once you succeed in automating certain things, the process takes on a momentum of its own.

This "dragon mom" stuff I occasionally read about in the NYT is silly IMHO but it's just as silly for a 22 year-old, who by her own admission doesn't even know the standard curriculum of a plain vanilla mathematics education, to want to be "the ambassador of mathematics" (<http://www.nytimes.com/2011/01/18/science/18prof.html>). First you do the hard work, then you can fly.

<comment><USER9> _But the solution cannot be to make it more "touchy-feely" and make everybody feel good._

Why? That certainly isn't the type of response that would cut it in mathematics, since it is just an assertion without even a hand-wave to support it.

Also, I'm not sure you really understand her argument. Her point isn't that we should to make math classes easier so that people feel good about math; her point is that students might be more interested in math class if it contained some mathematics.

The primary aim of math class up through calculus is to teach kids to perform the calculations needed to do physics, which is needed to do engineering, which is generally perceived (correctly I think) to be greatly beneficial to society. This is fine, but there is a huge chasm between this and the types of things that actual mathematicians study. (My brother once commented that if people had any idea what was actually going on in the math department, there is no way in hell they'd fund it).

The best counter to Vi's point, I think, is "why would we want to make kids appreciate pure math?" It's really fun and really interesting, and personally I would love for more people to get to experience math, but I'm sure the same could be said of classical music, or poetry, or knitting or pretty much anything else that people find stimulating. There may be some benefit to it, but I don't think that benefit has been quantified.

btw... sitting down and memorizing vocabulary is an awful way to go about learning a language. Communicating in a langauge every day, reading a ton and trying to think in that language are much more effective.

<comment><USER8> I like/appreciate your reply a lot (except the first line ;) and would comment more in response if I didn't have to run just now.

But let me at least thank you for this: "The primary aim of math class up through calculus is to teach kids to perform the calculations needed to do physics, which is needed to do engineering, which is generally perceived (correctly I think) to be greatly beneficial to society."

This is the best summary I have yet seen about why math is taught the way it is (in high-school, not in university) -- and by extension why many people, incl. myself, feel or felt uncomfortable with math up to high-school.

<comment><USER10> Specially because it should be economics and budgets and financial stuff the focus of math in those formative years. And statistics too!

Not everyone will be an engineer, but almost everyone will have to deal with money in their life. And the world would be 1000 times better if only people could understand a little more statistics.

</comment></comment></comment></comment><comment><AUTHOR> When people start thinking about math education - as I have at considerable length - they always come up with the idea that since "real math" is about problem solving (which it is) and not about rote algorithms and manipulations (which it isn't) then what we should do is come up with problems to solve, not formulas to manipulate. We should encourage creative thinking, novel solutions, and ways of approaching problems.

This is, actually, all true. Students should indulge in problem solving, analysis, investigation, early proof, ideas of proof, argument, explanation, and all the things that math is really about, and which make math useful.

After all, who except for science and engineering students ever differentiate a polynomial? Knowning qualitatively and intuitively what rate-of-change really means is useful. Differentiating x.sin(x) isn't.

But here's the problem.

To within 20% or so life expectency in the UK is about 70, and there are about 70 million people, so roughly at every age point (up to about 50) there are about a million people.

How do you assess and grade the mathematical standard (whatever that means) of about a million children?

How do you persuade a government full of lawyers and classics graduates that what you're doing is better?

How do you assess the teaching, and the school, if not by the grades they and their students achieve.

It's all about assessment.

So that's the first stumbling block.

The second is the question of getting teachers who are up to the task of teaching in an open and interactive manner, rather than trying to teach rote algorithms and manipulations.

But you don't need to worry about that - schools will never teach proper mathematics. They'll continue to teach arithmetic and manipluation.

<comment><USER11> If you don't get the fundamentals down, you can't handle the applications. Wax on, wax off - boring but effective. But you also need to spend time putting those fundamentals to work.

The real question is, why do you need assessment? To test that most kids are getting the fundamentals? Easy. Have a few core tests. To check that class time is also devoted to creative stuff, and not just drills? That's a management problem. You _can't_ test whether or not kids have had (say) 50% of their time doing fun non-core work, but you can regulate that through other means.

<comment><AUTHOR>
      > If you don't get the fundamentals down,
      > you can't handle the applications.

Absolutely, which is why I advocatedoing the algebra, doing the manipulation, and doing "the sums" until the act of doing them is almost reflex.

      > The real question is, why do you need assessment?

I'm assuming you're serious. Society demands assessment. Government demands assessment. Employers demand assessment (and then ignore it and apply their own tests). Students themselves are conditioned to demand assessment - <USER2> are many instances of teachers or lecturers playing with the idea of not giving grades, and mostly the students hated it. (whether it worked better is another question)

FWIW - I advocate a radical shift in what's done, and am working subversively on a ten year plan to make changes. Just becuase I can identify some problems, don't assume I believe they are real, or insurmountable.

<comment><USER12> > Society demands assessment. Government demands assessment. Employers demand > assessment.

My college didn't hand out GPAs and all evaluations were narrative. Only on rare occasions has the lack of numbers attached to my performance prevented me from obtaining what I wanted, and even for those cases I remain dubious about the benefits.

<comment><USER13> How did they apportion scholarships or determine who received a spot in programs with a limited number of openings? Institutions assess for many reasons, but primarily because educational opportunities are rationed and they need some method for separating the worthy from the unworthy without relying entirely on personal testimonials or politics.

</comment></comment></comment></comment></comment><comment><USER14> Vi Harts youtube is pretty entertaining, Here's a video that shows pretty well what her videos are like: <http://www.youtube.com/watch?v=Yhlv5Aeuo_k>

The whole topic vaguely reminds me of Khan Academy, both seem to recognize that the way math is taught in schools at the moment is fundamentally broken, and doesn't engage students the way it should.

</comment><comment><USER12> Freeman Dyson wrote this of Richard Feynman: "The reason Dick's physics was so hard for ordinary people to grasp was that he did not use equations. The usual way theoretical physics was done since the time of Newton was to begin by writing down some equations and then to work hard calculating solutions of the equations ... Dick just wrote down the solutions out of his head without ever writing down the equations. He had a physical picture of the way things happen, and the picture gave him the solutions directly with a minimum of calculation."

edit: That's from Dyson's autobiography 'Disturbing the Universe'.

<comment><USER8> Which is interesting and awesome but so not relevant for general public math education... ;-)

</comment></comment><comment><USER15> Every school should replace calculus with spreadsheets and a basic programming course. Or maybe with statistics. Each is more practical than calculus.

 _(I don't mean to put down calculus; it's spiritually rewarding and, when paired with a few other subjects, yields crazy awesome higher math.)_

<comment><USER16> What basic programming language would you suggest? I started with Visual Basic, and I found that it really didn't prepare me for programming in general. It seems like the best combination of useful and easy would be either Python or bash, but I'm sure other people can come up with better suggestions.

I think the key is to find something that's teachable to people completely new at programming, but something that will be useful to them. I was thinking of Python due to it just feeling "natural" to me, at least after coming from VB and then Java. Bash is somewhat of a weird choice (especially considering most students aren't going to be using Linux), but I was thinking about that due to it being useful for immediate computer tasks, but it may not be enough of a "real programming language". I wish Windows had a good equivalent scripting language...

<comment><USER15> I'd start with Python. Try to figure out how to do one thing that you think would be cool w/ python. Like learning to play the guitar by learning a song you like.

Really it depends on what you want to do...but Python is widely used in science, finance, math, and the web (thru django). So that covers all of what I'd want. And it's a high-level (read: easy), widely used (read: supported) language.

If I were just starting out I'd use zed shaw's book. As it was I found the django tutorial good; and Norman Matloff's tutorial on scientific python.

I'd learn programming in linux. Install Ubuntu if you don't already use linux. You can dual boot and leave the windows side for video games.

HTH

</comment></comment></comment><comment><USER17> The only reason Calculus seems so dry is that the ones teaching it are not very competent and don't understand the subject quite well.

During my school I'd ask teachers all about limits and why we need it and their attitude was - Don't get too involved - here are the formulas, go learn them and solve the exercises.

I later discovered that there were some amazing applications of limits (calculus) but wasn't taught the way they were meant to. This is the reason why I never found Calculus to be interesting.

</comment><comment><USER18> If taught properly, and with the proper illustrative exercises, calculus is recreational. Period.

<comment><USER19> Here's the thing. Most of calculus's power comes from its use as a mechanical calculational system. Hence the name. Archimedes's proof of the surface area and volume of a sphere is far more insightful and explanatory than the standard calculational proof using integration that any unthinking freshman can crank through with ease. As a rule, calculation proceeds by reducing a big problem into a sequence of small, easily dispatched problems, but human understanding usually works the opposite way. So, it's not that calculus cannot be taught in a way that highlights human understanding, but the greatest strength of calculus is that it produces answers whether you understand what you are doing or not.

</comment></comment><comment><USER20> I know people here (the top 0.1% of the high school class) love to bash math education in particular. I'd like to ask how you would apply your views on teaching a topic such as History for instance.

Sure, rather than learning the dates of middle-age battles, it would be more fun to interpret a play, in costume, or rebuild a battlefield with legos.

But can you spend your entire school year this way, or could this "recreational" teaching need to be combined with more traditional teaching?

<comment><USER15> Use primary sources.

Have individuals or teams look at an original primary source, interpret it, then discuss with the class, who all interpret something from a related source. Students put their heads together, discuss/debate and post some interesting original research to the Net.

<comment><USER21> In mathematics?

Primary sources are way above the level of most college mathematics students, much less high school or younger students. Almost anything written in the last 50 years requires very advanced mathematical ideas, while anything written before that uses outdated notation which is very difficult to understand. Moreover, the primary sources for common ideas are often spread out over huge periods of refinements - going from a small idea to a general notion over the course of years, perhaps involving dozens of papers by multiple authors. One notable exception to this: Euler's papers. These might be readable by some students, yet when I see them presented in college courses, they are often presented by a secondary source for clarification.

The other thing I don't agree with is your use of the word "interpret." I don't think that it is common to find a mathematician who believes that mathematics is open to interpretation.

Lastly, original research in mathematics is hard. It's not the interpretation of previous ideas (although it is occasionally relating concepts previously thought to be unrelated - some consider this the most important type of mathematical result, but it is much harder to do than you might think), but the formulation of new ideas. Even to know if an idea is new requires a great deal of mathematical training.

Perhaps I'm wrong about this, but I think that for young mathematics students your ideas are unfeasible. Remember that the original sources for a lot of basic mathematics are hundreds of years old. Even Euler's famous writings on geometry (the exception that I said might be workable) were largely a rewriting of previous ideas into a coherent whole - basically a textbook - <USER3> could not really be considered an original source.

Edit: my apologies, I misunderstood. I did not realize that we were talking about teaching history, in which case I defer to someone of greater experience.

<comment><USER15> shou,

alain94040 asked what we would change about the way History is taught.

</comment></comment></comment></comment><comment><USER22> The head of the math department at my college actually taught one of these classes. He would assign two students each class period to take notes. He said that way, the rest of us could pay attention :) He would stand at the front and ramble about whatever came to mind, and scribble on an overhead transparency. He would start with a topic and take it wherever we asked: multiple dimensions, knot-tying, origami, computational geometry, ray-tracing. The course was called "3D Math" or something, so everything was relevant :) There were no tests, and we got to choose our own final projects. The notes and overheads were duplicated as study guides for the final, and the questions were taken right out of them. It was the most informative math class, if only because we were all doing our own thing and learning from each other.

I did a 3D extension of the Lyapunov fractal images that Mario Markus published in Scientific American in 1992. Markus's 2D: [http://charles.vassallo.pagesperso- orange.fr/en/lyap_art/lya...](http://charles.vassallo.pagesperso- orange.fr/en/lyap_art/lyapdoc.html) and my 3D <http://www.youtube.com/watch?v=-omN5ZM3Jho> with a moving cross-section <http://www.youtube.com/watch?v=ePRJfF3pwqg>

</comment><comment><USER23> Incidentally there is a textbook on calculus that Donald Knuth said he read in his first year at university, and after doing all the problems in it he moved from beginner to top of the class (and thereafter, renowned computing scientist). I think the author was named Thompson, but I haven't seen the book myself. Maybe some people here have?

<comment><USER24> Maybe it was "Calculus Made Easy", by Silvanus P. Thompson? That's an old book that explains the basic idea of integration and differentiation, but doesn't try to be rigorous at all. [http://www.scribd.com/doc/8533492/Calculus-Made- Easy-by-Silv...](http://www.scribd.com/doc/8533492/Calculus-Made-Easy-by- Silvanus-P-Thompson)

<comment><USER25> Non scribe D version: <http://djm.cc/library/Calculus_Made_Easy_Thompson.pdf>

</comment></comment></comment><comment><USER26> I had no interest in math until I had Calculus in High School. I then went on to pursue dual degrees in Computer Science (because I <3 Programming) and Pure Mathematics (because Calculus made me <3 Math).

Maybe it was just an exceptionally good teacher, but the more I learned about Calculus the more I feel it was the subject itself. There was something seductive in the idea that by changing the way you think about something, like the area under a curve, you could calculate the previously impossible. The core of Calculus (at least the part you would learn in High School), derivatives and integrals, are easily enough explained.

I'm glad I had Calculus or I wouldn't have gone on to pursue mathematics so doggedly, I wouldn't have gotten to learn the strange and beautiful world of numbers, I may have missed out on one of my great loves.

That said, I'm sure in the hands of a less than stellar teacher, Calculus is a painful thing.

</comment><comment><USER27> When I was in school majoring in math we always thought back to how poorly motivated the subject was growing up. So we decided to explain some pretty basic group theory (permutations, etc) to our friend's dad who taught elementary school.

When he brought in the topic with some basic shapes to illustrate the concepts to his kids (4th grade, I think), they all went crazy for it. We then gave him other concepts from a geometry class, which they loved as well (<http://www.gang.umass.edu/~kusner/class/462hw>).

I think catching them at an early age -- sparking their natural curiosity and giving them confidence in the subject -- is most important, before they're disheartened by all the years of computation and applying algorithms.

</comment><comment><USER28> Well some of the videos look interesting but I don't agree with the title, what is recreational math?

It would be great if Maths could be made more interesting and students make their own unique discoveries etc. However as a former maths teacher I can tell you that structure exists for a reason.

In a class of maybe 30 students for one hour, the teacher can afford to give at best only 2 mins average time to each student. Some students may work very well independently, but others would take advantage of the freedom to mess about.

Even if the students were focused how is a teacher with so little time per student supposed to pick up a random piece of work and then decide if the child is doing something of worth.

The Maths curriculum needs to be rethought for the information age, but the solutions need to be practical.

<comment><USER29> I think the Khan academy has a solution to this particular problem. Salman in his TED talk proposed that students view the videos in their own time for the basics, then engage in problem solving in class so that the teacher can devote much more attention to each student.

<comment><AUTHOR> Experience with this shows that the kids simply don't watch the videos. It sounds brilliant - let the kids watch videos together, they can eat pizza, drink cola, laugh, text, watch the video again to get the bits they missed, and then come to class to work the problems and get help.

The experiment has been done - the vast majority of the kids don't watch the videos.

<comment><USER29> Is there a record of the experiment online somewhere?

<comment><AUTHOR> I'm pretty sure I read of it on a web site lunk to from here, but I don't have a record of it. I have seen it reported from at least two different people who tried it, but don't have a record of where I read it. Sorry.

EDIT:

I've found one reference to a teacher who's trying it but has some kids who don't watch the videos:

[http://www.msteacher2.org/forum/topics/flipping-the-math- cla...](http://www.msteacher2.org/forum/topics/flipping-the-math- classroom?xg_source=activity)

Here's another in the comment stream for the Khan TED talk that suggests the idea:

[http://www.joannejacobs.com/2011/03/khan-use-video-to- flip-e...](http://www.joannejacobs.com/2011/03/khan-use-video-to-flip- education/comment-page-1/#comment-159231)

There are more, but they require filtering/finding:

[http://www.google.co.uk/search?q=math+homework+flip+video+%2...](http://www.google.co.uk/search?q=math+homework+flip+video+%22don%27t+watch%22)

<comment><USER29> Thanks. That's somewhat disappointing, I guess.

</comment></comment></comment></comment></comment></comment><comment><USER30> I have to ask... does the name Vi come from where I think it does? If so... that is awesome, and then I would have to ask is there a improved version of her named Vim?

</comment><comment><USER31> Everyone here on HN always seems to say the same thing: the way math is being taught in most schools sucks, we need to change it. Math is glorious, it's the kicks, etc.

I'm curious why everyone is so enamored with mathematics here though; I've tried to understand what is so captivating about the subject but have failed to do so for years.

I've never gotten past trigonometry and algebra myself, and this idea of Calculus being more than the tedious integration work that textbooks I tried to self teach from said it was is intriguing.

Enlighten me, how is mathematics not just a bunch of rules and methods to solve problems within constraints, and that some professional practitioners are forced to prove...

How many of you programmers and software engineers here even interact with the Calculus you learned in high school/college on a day-to-day basis in your apps/software projects?

</comment><comment><USER32> "You don't actually need to know a lot of the groundwork and the basics to appreciate the exciting bits of mathematics. The more technical things are still awesome as tools and are necessary in some places. But luckily I am usually with other people who do know that stuff."

How about this not being an either/or? Anything that exposes more people to the beauty and power of the maths, and convinces some of them to more of the "technical things" is goodness, IMHO.

</comment><comment><USER33> It's so true that the way that maths is taught at schools needs a complete revamp. At secondary school level it should be taught as a creative subject from the start: choose some rules and see what happens.

</comment><comment><USER34> Just one question -- does the US have a shortage of engineers because math education isn't touchy-feely enough now?</comment>


Erik Vorhees sells SatoshiDice for 126,315 BTC - <AUTHOR> https://bitcointalk.org/index.php?topic=101902.msg2751536#msg2751536 That's about 8-12 million dollars at current market prices. <comment><AUTHOR> That's about $8-12M dollars at the current market exchange rate.</comment>


Privacy is Expensive. - <AUTHOR> http://savemefrombschool.com/2010/04/privacy-is-expensive/

<comment><USER2> I wish privacy was expensive, because then I could just pay for it and be done. What bothers me are services where you can't get privacy for any amount of money.

</comment><comment><USER3> I remember when I joined Facebook, it was at least in part because it alleviated a lot of the MySpace privacy concerns. It didn't share data with outside companies, and only people with a UVA email address or who I accepted their friend request could see anything beyond my name, school, and photo. If I had known they would eventually be sharing my data such that CNN.com gets it if I just surf there or that it would publish my online shopping habits if I didn't opt-out (thankfully a rescinded policy), I'd have been more hesitant to sign up.

<comment><USER4> You know, I had forgotten about this until reading your comment, but a major (if not the only) factor in my initial decision to create a Facebook account was the fact that it was limited to college campuses, and that I could be sure that only other people at my university would have any interaction with my profile. The first couple of weeks on FB were exciting -- all these new people, and they're right here at my school! The next few months were useful -- all these people that I know, I can get to know better!

And now? My account has been deleted with prejudice, and I pray to Huitzilopochtli that their datacenters all catch on fire.

</comment></comment><comment><USER5> The real issue, at least to me, is how shady Facebook is being about the whole thing. They are trying really hard to expose people's data without the average user realizing it.

But truth be told, I've also found the average user doesn't really care once you tell them what is going on.

</comment><comment><USER6> If Facebook allowed me to pay a subscription fee to keep my data and usage statistics private, I would do so. If I could trust them to keep that promise.

</comment><comment><USER7> The whole thing with money is that its a way to mediate resource allocation.

As you point out, as the internet gets more ubiquitous, and there gets to be more money on the internet, it is bound to end up looking more like the "real" world.

<comment><USER8> Funny thing is that the real world has much more finer grained privacy controls. You can stash your magazines in a box, data is not very discoverable et al. In fact at the risk of being self promoting I have a blog post about privacy online and in the real world at <http://www.bitcrumb.com/blog/2>. By most metrics online privacy trails real world privacy in sophistication.

</comment></comment><comment><USER9> Everything is expensive when you consider 'money left on the table.' Privacy is not any more expensive than building a service to expose that data outsiders for pay.</comment>


The Robots Are Coming and Sweden Is Fine - <AUTHOR> https://www.nytimes.com/2017/12/27/business/the-robots-are-coming-and-sweden-is-fine.html?_r=0 <comment><USER2> The title should be "Fine for Now".

Maintaining Sweden's social safety net also requires that the public continue to pay tax rates approaching 60 percent for their current amount of displacement.

If automation starts to displace a huge number of people, and there is no job to transition, the social contract will break.

I'm really hoping we hit a star trek style utopia (especially in terms of energy and food) before we get close to social contract breakage. I fear we won't though, we already seeing severe signs of the social contract breaking in the United States.

<comment><USER3> > If automation starts to displace a huge number of people, and there is no > job to transition, the social contract will break.

Break because of what?

If a job is stupendously productive because of automation, it can support stupendously high taxes too.

<comment><USER2> Only if the people pay, it sounded like the one of Swedish economists from the article think there is a limit to what you can tax people before the social contract breaks.

I'm assuming this applies to individuals and populations.

<comment><USER4> In a post-labour society, labour is completely divorced from productivity, so you have to tax productivity somehow to get the resources you need to take care of your population.

So somehow, sometime, we have to stop relying on income-tax, and start relying on some kind of productivity tax instead, and forge a new social contract based on that.

Otherwise we end up in the situation you describe, an ever-decreasing sliver of the population is taxed to support the masses. And even though their productivity is multiplied enormously by technology, a lot of people will still think it's unfair.

<comment><USER5> > So somehow, sometime, we have to stop relying on income-tax, and start > relying on some kind of productivity tax instead, and forge a new social > contract based on that.

I don't think that's actually true, absent tax evasion. Take the limiting case of the "fewer people being more productive" scenario- someday only one person in Sweden participates in economic work (who operates all the robots, or whatever.) Since all economic production is hers, her salary is essentially equivalent to Sweden's GDP. Tax her at whatever absurd rate Sweden would tax such a person, and you can definitely pay for the social safety net.

(Actually, Sweden collects _much more_ in taxes in that scenario than in the present day, since the entire salary base is being taxed at the highest possible income bracket.)

This is perhaps counter-intuitive, and possibly irrelevant, because we're accustomed to high earners not paying taxes like ordinary folk do. In the above scenario, Sweden's sole worker would likely spend some effort trying to hide her income in the Canary Islands. Whether productivity-concentration harms social safety nets eventually comes down to the tax authorities' ability to stop that kind of behaviour.

<comment><USER4> Well, in reality the productivity gains usually go to the owners of the means of production, not labour. So if Sweden only required one person to actually perform labour, then that person would get paid a high salary, but the owners of the company doing that work would get all the profit, and you would have to tax them somehow. And _they_ would do all they could to evade taxes.

So to reach that limit example, you would have both productivity concentration, and an enormous amount of capital concentration in the background, screwing things up, making it harder to reason about the example.

I think Blockbuster vs. Netflix is a very good illustration of what happens when productivity concentrates. With Blockbuster, you had 300k simple low-wage jobs. But they were distributed across the country, so their collective income taxes were also distributed into a lot of local economies, doing good locally.

Blockbuster went bankrupt, and Netflix took their place. So instead of 300k distributed low-wage jobs, you now have 10k high-skill high-wage jobs, but they're concentrated to LA and Silicon Valley. Those employees pay local taxes there, and nowhere else. So from a national perspective, you now need to re- distribute those taxes to the areas who lost tax revenue, somehow, without pissing off the employees, and without pissing off Netflix, and without pissing off the local government in SF and LA. Usually this is done through federal aid/job aid programmes that take money from richer states and distribute to poorer states, but that's an incredibly blunt instrument.

But if you were to tax productivity and if you were able to tax it locally where it's consumed, this change from Blockbuster to Netflix wouldn't have disrupted local economies. Because then it wouldn't matter how many employees did the actual production, or where they were located, and that's good for the places that productivity is concentrated away from.

(Unless, of course, you are of the position that fuck those guys for living in the middle of nowhere, they should move to the cities like everyone else.)

Anyway, tying it all back to the original point, productivity concentration necessitates some kind of new/stronger redistribution mechanism so the gains are spread across the entire population. Previously, and still, when we have income-tax and a high percentage of the population participating in the labour force, that distribution happens automatically.

Maybe a productivity tax to make sure the country as a whole captures part of the GDP, UBI to spread it equally across the population, and then local consumption taxes to redistribute to local governments? I don't know.

</comment></comment></comment></comment></comment></comment><comment><USER6> Difference between Northern Europe and the US: we minimised low wage work long ago with automation. As a business you want to AVOID employing people at all costs. The drive for efficiency and productivity is relentless.

As for manufacturing: yeah most of that already left for China/Asia in the 70s and 80s. And what remains is already computerised and done by robots.

<comment><USER7> Does "automation" mean immigrants?

<comment><USER8> > _" Does "automation" mean immigrants?"_

> _" we minimised low wage work long ago with automation. As a business you > want to AVOID employing people at all costs."_

<comment><USER7> Yeah, I read that. It's a nice theory, I am asking about the practice.

Given the abundance of low-skilled workforce, I have my doubts.

<comment><USER8> If that's the case, then your question as phrased is a little bit disingenuous or flamebaity. Asking for measurements or evidence of how this was implemented is legitimate, and something I, too, would be interested in learning; insinuating that your parent was being euphemistic or misleading is another. Please ask questions in good faith.

<comment><USER7> You could say that, or you could say that bragging about being better without a solid proof is disingenuous or flamebaity. Not unreasonable, is it?

In this particular case, I've seen scores of advanced economies where the eloi are clueless about the stinky and dirty morlocks breaking their backs to power the paradise, and I believe a tiny bit of blindingly obvious sarcasm is not an overreaction.

</comment></comment></comment></comment></comment></comment><comment><USER9> [http://www.epi.org/publication/robots-or-automation-are- not-...](http://www.epi.org/publication/robots-or-automation-are-not-the- problem-too-little-worker-power-is/)

"Robots, or automation, are not the problem. Too little worker power is."

</comment><comment><USER10> Ironically, the article doesn't really discuss any legitimate reason as to why Sweden is – or indeed will be – fine despite automation. It's all about what Swedes expect and how much they trust their present society to hold. Also, labor union propaganda, but that's tangential. So, the takeaway is that Americans believe business to be cutthroat and competition to be effective at weeding out the least optimized actors, whereas Swedes feel that employers will take care of employees because this is a nice Sweden thing to do, or something. Beliefs, expectations, feelings, self-affirmations. «Everything is fine, we can provide everyone with jobs, we can even support a large and growing number of uneducated refugees and help them get jobs, we just need to innovate faster than anyone to be sure that our market share won't ever diminish, it'll all work out in the end". Well. Guess it's pleasant to be so positive. But how is any of this even relevant to the issue? The issue being, mind you, automation-induced joblessness, not people's anxiety about it.

<comment><USER11> If people aren't scared of automation there won't be any political pressure to restrict automation. This will probably increase the adoptation rate so I'd say it matters a lot in the discussion.

There __will __be problems because of automation and I think most Swedes realize this. The safety nets that are in place provide a buffer, and possible solutions, if you should loose your job because of it. I 'd say that's where the optimistic attitude in this article comes from.

Sustaining those safety nets is indeed going to be hard if unemployment increases. There probably won't be any "silver bullet" solution to the problem either.

[edit] spelling

</comment></comment><comment><USER12> Did some HMI before or troubleshooting offshore oil rigs in the North Sea, I can confirm that it is also possible to remotly have fully drilling operations from the shore.

This example is perfect for what a working symbiosis man / machine, not tehnology is the problem but value of human labour costs and machine investments. In Scandinavia this is not only fine but normal.

</comment><comment><USER13> What I get out of articles like this is that economic policy can easily fix the loss of jobs due to automation, but we will likely never see such policy in the US. In other words, job loss due to automation is a problem caused almost exclusively by the political system in which automation happens, not with the automation itself. Societies that make the right political decisions to accommodate for automation, like Sweden, have an advantage over societies that don't, like the US. Outside of jobs, this is obvious from comparing the different societies' approaches to education, parenting, and other social necessities, IMO.

<comment><USER14> This really depends on what you consider to be an advantage. The US already has a massive advantage when it comes to industrial power and economic output. For those in power, does anything else really matter to them?

<comment><USER13> "For those in power, does anything else really matter to them?"

Probably not, but I'm concerned about society as a whole, not a few hundred or thousand rich people. They'd be fine anywhere in the world. I'm talking about advantages for regular people who want to make something of their lives and don't have millions or billions in the bank. For these regular people, industrial power and economic output doesn't mean shit when they can't get health insurance, education, or jobs. Industrial power and economic output are irrelevant when you're bankrupt because of medical bills which you can't pay because you don't have a decent job since a bachelor's degree costs more than a lot of houses and education below high school level is almost nonexistent.

</comment></comment></comment><comment><USER15> Sweden is 'fine' and yet has to raise the retirement age to cover all the drain on their societal services?

[https://www.google.com/amp/s/www.thelocal.se/20171214/what-s...](https://www.google.com/amp/s/www.thelocal.se/20171214/what- swedens-new-retirement-age-means-for-you/amp)

Please.

<comment><USER16> With life expectation rising this seems a reasonable thing to do. How else do you want to deal with this?

<comment><USER17> That's fine for people who work desk jobs. But manual laborers tend to accumulate a variety of chronic injuries as they age. So increasing the retirement age means more of them will be forced to go out on disability pay instead of being able to retire with dignity.

<comment><USER16> Disability doesn't have to violate your dignity. That's a US problem. You can also give early retirement to people who can't work anymore. But in general something has to be adjusted for people getting older. It's simple math.

<comment><USER10> This is wrong. It's not needed because people are getting older, it's needed because the increase in productivity is not enough to cover expenses for long- lived retirees and other groups. If Sweden was 20% more productive, perhaps they could afford to just have longer and happier retirements. And if it was, say, 50% more productive, they could cut work week to 15 hours or decrease retirement age. Alternatively, they could cut other expenses (for example, stop bringing in more refugees) and still afford fixed retirement age. This "simple math" is not inherently linked to longevity of the Swedish elderly, it's the budget constraints that matter.

Edit: given that bringing up refugees invites downvoting, I want to clarify that this may not be among the major causes of Sweden's decision to raise retirement age (and is not the core idea of my message), but it's not negligible either: according to this guy [http://voxeu.org/article/fiscal- cost-refugees-europe](http://voxeu.org/article/fiscal-cost-refugees-europe) , current immigration policy costs Sweden 1,35% of annual GDP.

<comment><USER17> It's also important to distinguish between refugees versus other types of immigrants. Many of the people who have entered Sweden recently from Africa and the Middle East are just seeking a better life, and I sympathize with their situation, but legally speaking they aren't refugees.</comment></comment></comment></comment></comment></comment>


HN Opinion: Friends and family funding or... - <AUTHOR>

..crowdfunding? I'm looking for apx. $20,000 to fund my MVP. I know if I take the f&f approach it won't take nearly as long as a kickstarter. But then the issue arises of mixing business and personal relationships, what are your suggestions? <comment><USER2> [http://www.avc.com/a_vc/2011/05/financing-options-friends- an...](http://www.avc.com/a_vc/2011/05/financing-options-friends-and- family.html)

</comment><comment><USER2> I hear this question a lot too. Depends on what your goals are, the relationships of your family and friends (and how deep their piggy banks go).</comment>


Scalable C – Writing Large-Scale Distributed C - <AUTHOR> https://hintjens.gitbooks.io/scalable-c/content/preface.html <comment><USER2> _> The more C++ you know the worse you become at working with others. First, because your particular dialects of C++ tend to isolate you._

So why is using something non-standard and non-universal like <czmq.h> not perceived as a "dialect" of C?[1] Any non-trivial source codebase beyond _" printf("hello world")"_ will be a "dialect" of the programmer(s). When looking at the C source files of Linux kernel, Redis, and SQLite, etc, the syntax patterns, helper macros, string manipulations, etc do not look the same.

Also the author's example of,

      for (i = List.begin (); i != List.end (); ++i)
        cout << *i << " ";

is not the same semantics as:

      char *fruit = (char *) zlist_first (list);
      while (fruit) {
          printf ("%s ", fruit);
          fruit = (char *) zlist_next (list);
      }

The C++ loop is multithread safe. The C version is not. For the zlist_next() to work, the "list" data structure needs to maintain mutable state in between subsequent calls. (Think of how something like strtok() works by mutating the string).

[1]possibly because Pieter Hintjens is the programmer & CEO behind ZeroMQ and czmq.h. Therefore, it doesn't feel like a dialect to him?

<comment><USER3> CZMQ is a library of around 30K lines of code. The Scalable C book is in many ways a guide to using that library in real projects.

Of course every programmer develops their own dialects, just as every writer has their own voice. C is however a small language and if you stay away from weird macro magic, any well-written C code is mutually intelligible to other C programmers. Whereas with C++, dialects can have so little overlap they are not mutually intelligible.

FWIW neither of the fragments is safe if you are sharing state between threads. In practice we do _not_ share objects between threads, and each object holds its own state, and thus our C code is 100% thread safe and reentrant.

<comment><USER2> _> The Scalable C book is in many ways a guide to using that library in real projects._

I'm not criticizing the book or czmq. I'm sure it's a fine library. I just found your characterizations of C++ to be strange.

For example: " _> , any well-written C code is mutually intelligible to other C programmers._"

If you're going to qualify C code with " _well-written_ " to help make your point then can't the same qualification be applied to C++? If so, it means you believe that there is " _well-written C++ code_ " that is simultaneously unintelligible to other programmers. In your opinion, what would be an example of that? (E.g. If you can point to github of unintelligible but well-written C++ source code.)

And your other statement: _> , because your particular dialects of C++ tend to isolate you._

I don't know if CryEngine and Unreal game engines are well-written C++ but they seem attract developers. There's also the scuba diving app[1] written in C++ that also has Linus (who you already know hates C++) modifying the source code. I contend there are bigger factors than C++ dialects causing isolation.

The C++ _ABI_ may be more isolating than the C _ABI_ because of C++ name mangling incompatibilities. But I don't see how the C++ dialects (of well- written code) are isolating.

[1][https://github.com/torvalds/subsurface](https://github.com/torvalds/subsurface)

<comment><USER3> Since you ask, I'll admit it: I enjoy trolling C++ users because the language has so often thought of itself as superior to C. Beating on the language always gets lots of discussion going, which is fun. I've nothing against the language, or any other language, as such. Good tools, in the hands of good developers.

<comment><USER4> I find it the other way around. It's usually C hackers who tend to describe C++ as the devil incarnate. C++ developers tend to be more pragmatic - we'd happily write in C if necessary, we just find it limited. And since C++ is almost a superset of C, there's rarely any need to use it.

</comment></comment></comment></comment></comment><comment><USER5> Exactly the kind of code I make.

I use C for performance.... as an extension for python that have a GC and a GIL. But more than never, I first use numpy (fortran) because it is dazzling fast and has specialized tricks of digital signal processing availables (ifft). And I do C after the profiler says to do so. When needed. If needed.

Most of the dynamic data structure (message sent with zmq) the config, the parsing are better handled in python.

And since I do as much sloc / day in C and python ...

(1 python loc = 6 C loc)

I code 6 times faster.

And I don't have the headeaches of the dependency management

I am totally okay with C, but when doing distributed system more often than never you also multi-threading. And C is not builtin for thread safety, it is harder.

So I C some masochisms at work here.

And I am pretty sure I am not the only coder thinking this book is full of pedantism and of advices not to be followed and it is empty.

How did such a poor news made it to the top?

<comment><USER6> > more often than never you also multi-threading

This is a Windows-ism that's crept into Unix-likes over the years, and it's not a good trend. Just don't do it. Especially since sharing direct access to state makes it harder to decouple components to scale them further. This book specifically argues to pass state via IPC for a reason.

> And I am pretty sure I am not the only coder thinking this book is full of > pedantism and of advices not to be followed and it is empty.

Maybe, but iMatix has been a successful company for more than two decades, and delivered impressive open source applications (e.g. Xitami web server) and code-generation tools (Libero ec.) as well as cross-plaform utility libraries for C (SFL etc.) already two decades ago, and have gone on to develop large- scale C-based distribued systems and in the process developed things like AMQ and 0MQ that's been incredibly successful, so I for one tend to at least pay careful attention as they actually do have a track record.

<comment><USER5> I know a lot of successful companies with products that are notoriously poorly coded : \- "security software"; \- "game industry"; \- "car industry";

And if you read correctly I think the biggest issue is TIME is MONEY.

What are the advantages of using techniques that:

\- are expensive (productivity is constant in sloc whatever the language);

\- are notoriously a systemic risks given their domain of work and is hard to audit;

\- that can be smoothly achieved by upgrading a faster to build architecture in a scripting language ;

They may have bigger balls of steels than me doing it in C and be the best programmers in the world. My question is business oriented: what is the economic rationale of a full C solution from start?

<comment><USER7> Beats me.

I know that if I had a large enough project and had to add people, I have a dozen people in my Rolodex who speak 'C' at the expert level and that they will perform. But depending on the problem domain, that might mean C++ or it might mean Python or something else.

But given the level of hostility the language inspires, I have to wonder. To wit "bigger balls of steel" and "best programmers in the world." Both sentiments are quite foreign to the sorts of environments I've worked in, I assure you.

<comment><USER5> Sorry for you then. Living in such a boring world, and what a disdain-full answer that makes my point.

I have add my share of conferences technical or about FOSS. And I met peoples with a _lot of_ passion ... and code delivered. You probably use their software daily.

I have been using more than 13 langages ranking from C to forth, matlab, vhdl, spice, python, perl and php.

There are definitively cultures associated with languages and beliefs.

Perl community is thinking coding is like speaking/writing a foreign language;

Ruby about you IQ and technical skills are totally correlated with how nice your apple laptop looks like and how expensive it is. They are our hipsters (troll);

Python secretly hides a sect hating braces and everything that looks like C and believe C coder can't make safe thread code, malloc, correct string handling. And they hate braces.

for c++ coder referring to linus torvalds rant would be the spirit.

Java coder believe in the utltimate safe portable VM and the power of GoF. And think people look the wrong way;

Haskell thinks of themselves as alchemists loving to use obscure terms coined by an hallucinated metaphyscian priest that said ET must exists and that no one will notice. They still laugh of their ultimate joke;

And C coders think that only them are the pure programmer, the only one that can see the matrix between the purity of abstraction and the undetermination of hardware/norms due to the imperfection of the humans. But, with their discipline that is above the norm (no noob accepted) they can fight the God of Entropy

FORTRAN coder think that computers are a pain and would just like to have exact figures much more than nice looking interface and wonder when a correct intuitive language will appear (<\--- My sect)

They appear maybe because for each language comes a practical field of use and that one computer language cannot fill all the needs.

The need for correction and exactitude in science conflicts with the "ease of use" of numbers.

The need for having cheap workforce conflicts with efficient cheap to maintain code;

The need for preventing embezzlement (origin of SQL) conflicts with creative accountability;

At one moment, at my opinion C is like a middle age corporation. Trying to promote a one best way of CS that always boil down to C.

C community maybe "professional" as opposed to "enthusiasts". But I think it does not always serve them.

And I do not think that recognizing Computer Science is a peaceful uniform land, but an arena full of organic entities in conflicts with logical distinct rationalities for the same resources.

In short, I have the write to mock other cultures.

<comment><USER7> Nicely put. Very nicely put.

I don't know how you came up with "disdainful"; it's more sort of sad and weary as I read it now. After all, I started with "Beats me" \- such a decision would have to be very local. The first rule of 'C' is "don't use 'C'" these days... the people I know _DON 'T_ swagger; that was my point.

The "professionals" vs. "enthusiasts" divide is extremely interesting in all fields of endeavor. I'm definitely on the "professional" side.

I... don't think 'C' programmers are "above any norm"; they just sort of know where the rocks are right under the surface of the water. It's more difficult to explain than to do. If a bunch of people misrepresent themselves as ... badass because they sling 'C', I can't help that. The appropriate mentality for it is one of caution. I specifically called that out here...

It also matters less because coding a system is roughly 5-10% of the actual cost of most deployed systems. Language matters much less than mechanism.

Meanwhile, the worst horrors are inflicted using systems like SAP.

Don't feel _too_ sorry for me; I use at least three language systems every day, and have messed with ... dozens ( all resulting in deployed code at some level) , including graphical CASE tools.

</comment></comment></comment></comment></comment></comment><comment><USER8> This looks like it's coming from someone who doesn't know C++ well and is just coming up with reasons to fit their bias. The fact that he/she didn't mention any disadvantage to the C code written beside verbosity makes it clear.

For one, it's easy to forget to call zlist_destroy. Who owns what in C can get very complicated and you can run into dangling pointers. At least in the C++ version you can manage ownership easier in their case.

I am not defending one language over the other, I use them both and have experienced the advantages and disadvantages of each.

What's being shown in this book is not how typically you create link-lists. man queue(3) to see how it's generally done.

The C++ for-loop is not how you typically iterate over a list , again the author decided to show a bad example to confirm their bias:

      for (const auto& i : List)
        cout << i << " ";

<comment><USER4> More likely, someone who hasn't programmed C++ in the last 10 years. Forgetting auto, and using the cumbersome 3-part for loop with iterator boilerplate when you only need value shows age. Initializing the list is also easier now, with initializer lists syntax, so you could just do:

      list<string> lst = { "tomato", "grape", "apple", "orange"};

and cut another 4 lines, making the C++ line count half of C version. Not a negligible difference, as the author claims.

</comment></comment><comment><USER9> Nice work in progress, Peter. Look forward to seeing more of it given your prior work. I light how you preempt many C-related counterpoints with model- driven development that generates C. Done excellently by iMatix and many others. I'm especially interested in how you'll apply that to distributed C.

</comment><comment><USER10> I'm a cpp programmer who recently spent a week learning zeromq to replace named pipes in a project. By the end I was disappointed by the cpp language bindings as they only cover the low level library. Had I known from the start I probably would have looked elsewhere. Its a shame cpp is ignored in much of the open source community in favor of c. If nothing else Cpp after all is a safer c.

<comment><USER11>
       http://250bpm.com/blog:4

       http://250bpm.com/blog:8

<comment><USER10> Yes I read those before. I didn't find them convincing. Intrusive lists is an anti pattern that you can also do in cpp if you want. Getting rid of exceptions doesn't mean you get rid of errors. It just means you can more easily ignore errors and continue running a corrupted program. But the big picture though is that cpp I a safer language. A core library might be written in c for whatever reason. But its good to provide a wrapper in a safer language for users to use.

</comment></comment></comment><comment><USER12> > _/ /Solution: make /usr/local writeable.//_

> _This is a brutal and effective solution, the best kind of solution_

I... uhm, what?

> _Solution: grab the latest CZMQ git master from github._

No, you do not want to run your software off of master, and the fact that Master doesn't always build (because of errors) should be a fringe occurrence with CI now being free/cheap and highly flexible.

<comment><USER13> I'm not sure about CZMQ, but I assume what you eat is that you don't want to run code from a development branch that's rapidly changing. That's not necessarily what master is in all projects. The master branch is sometimes used as the latest stable release.

<comment><USER12> True, I forgot about that aspect. However in this case that doesn't apply either as a stable branch should always compile.

</comment></comment></comment><comment><USER14> It's funny how this centered around ZeroMQ, which is written in C++.

<comment><USER15> This might be part of the reason:

* [http://250bpm.com/blog:4](http://250bpm.com/blog:4)

* [http://250bpm.com/blog:8](http://250bpm.com/blog:8)

<comment><USER16> Which are weak arguments that point more to the author's dissatisfaction with the architecture of libzmq than with problems in C++ language. This was discussed previously here:

[https://news.ycombinator.com/item?id=3953434](https://news.ycombinator.com/item?id=3953434)

</comment></comment></comment><comment><USER6> Github repository: [https://github.com/hintjens/scalable-c](https://github.com/hintjens/scalable-c)

</comment><comment><USER17> I'd be interested in this if it were nearing completion. I think structuring the book around problem-solution pairs is a nice technique. But it would be a much better read if fewer irrelevant statements of opinion were strewn in. Also, a lot of the bizarre statements of irrelevant "fact" should be checked, for example:

> In the Old Times, creating a repository was days, weeks of work.

I can't begin to comprehend what this may mean. "svn create" (or whatever it was called) was always instantaneous. Setting your project up for network access took longer because you had to read docs and write a config file, but the same is true for Git.

> Optimizing compilers (...) may remove assertions.

Bullshit. Using NDEBUG removes assertions, and yes, this indeed means that assertions must be side-effect free. But an optimizing compiler? No. If that actually happened for calls to impure functions (and no, it really doesn't happen), it would be a major compiler bug.

> a nasty reminder of the old days when computers stored data and code on > different kinds of rust, and languages enforced that

Code and data do live in different places in memory; nowadays more than ever, for reasons of security. C's original "declarations before statements" rule (the context here) was simply because it makes it much simpler to write a primitive single-pass compiler.

> The standard C library often puts destination arguments first, which is a > hangover from assembly language. MOV X, Y.

... or maybe it's an analogy with assignment statements, X = Y?

Note that three out of these four examples are just irrelevant opinions, so they should be removed from the text even if they weren't factually false.

<comment><USER3> Creating an svn repo was fast, yet you could not use it without a dedicated server, DNS configuration, security configuration, firewall configuration, etc. etc. If this was your only job, sure, a few hours' work. For the rest of us, begging a sysadmin or spending days learning the details.

Whereas with git it's literally "git init ." or clicking on Github.com and we're ready to roll.

I do appreciate the fact checking, and you're welcome to send me more comments. Errors of fact don't survive the editorial process, one hopes. Opinions, that's a different story.

<comment><USER17> > with git it's literally "git init ."

That doesn't magically give you a shared, network-accessible repository with all the correct access controls.

> or clicking on Github.com

SourceForge has existed since 1999, and after a click you have always been ready to roll.

> and you're welcome to send me more comments

But I probably won't if your strategy is "spread misinformation first, then make others work to point out mistakes, then defend an indefensible position, then maybe change it". That's not how communities are built. That's what you yourself criticize in the section on merging strategies...

</comment></comment></comment><comment><USER18> > then you know where C stops working, as a language.

He actually makes a really strong argument against using C right in the first two paragraphs.

C is a dangerous language. Assembly is even more dangerous. There are languages that compile to close the same speed and are systems oriented with 0 overhead.

I'm truly curious, if you're working on a new project would you pick C? Or would you reach for something that's going to reduce the bugs that inevitably come from writing even 10 lines of C?

<comment><USER19> What languages would you personally pick over C?

<comment><USER18> Rust, no debate.

</comment></comment></comment><comment><USER20> this seems to be still it is early nascent stage, with a complete toc missing, most likely, in the works. caveat emptor.

<comment><USER3> Yes, indeed. I've updated the book title on Gitbooks to make this clear. I'm writing and publishing the book piece by piece, to get feedback early on in the process.

</comment></comment><comment><USER21> I know the basics of C, but stopped short of getting deep into threading and concurrency since it seems like Go and Rust handle that in a more efficient way (although there's no way I would use Rust in production yet). Are there any advantages to using C/C++ for a new large-scale project?

<comment><USER22> Just for curiosity's sake, what specifically would make you not use Rust in production yet?

<comment><USER23> Not OP but from the perspective of the industrial side: no track record, no formal standard, changes too fast, incomplete documentation, doesn't have an extensive commercial and supporting ecosystem (e.g. Parasoft, Java Path Finder), limited pool of experienced programmers with embedded and regulated environment experience. Arguably, it falls under the heading of "too new".

I'd prefer to deal with known knowns rather than the known unknowns or _gasp_ unknown unknowns of something new. It's a very conservative position, but it's borne out of the expense associated with mistakes and corrections of.

<comment><USER22> Cool thanks! I'm trying to figure out what blockers are so we can prioritize things; a lot of these are very reasonable, but not immediately actionable things for me. Sounds good. :)

<comment><USER23> Sorry I can't offer anything more specific and actionable; I guess comparing Rust to a fine wine, something that must be aged to reach full potential, will have to do :)

<comment><USER22> Hehe, no need to be sorry. It's one of the best answers, actually: it means that there aren't any fires, it's just about playing the long game and letting time pass. I prefer that. :)

</comment></comment></comment></comment></comment></comment><comment><USER24> > While C lends itself to building libraries, it has no consistent API model.

What language has? Wouldn't this require first class modules (which few systems have; JS' hacked together solution is obviously not to be considered a true solution)?

<comment><USER25> OCaml has a typesystem in which modules are first-class citizens, just like functions. They have a clear separation between interface (they call it "signatures") and implementation. The compiler enforces that you can only write against the interface, making modules with the same interface really exchangeable. The modules are also parametrizable (they call such modules "functors").

[http://caml.inria.fr/pub/docs/manual- ocaml/moduleexamples.ht...](http://caml.inria.fr/pub/docs/manual- ocaml/moduleexamples.html)

[https://realworldocaml.org/v1/en/html/functors.html](https://realworldocaml.org/v1/en/html/functors.html)

[https://realworldocaml.org/v1/en/html/first-class- modules.ht...](https://realworldocaml.org/v1/en/html/first-class-modules.html)

<comment><USER17> That's all true, but it doesn't mean that OCaml has a "consistent API model", whatever that may mean. Unless "provide a fold and a map for all datatypes", which I guess is consistent across most APIs, is a "model".

</comment></comment></comment><comment><USER26> So far I've only read the Preface and part of Chapter 1. What bugs me is this:

> * Write portable code that runs on all platforms.

Ok, good plan.

> * An operating system you are comfortable with. Linux will give you the best > results. OS/X [sic] and Windows are usable if you have no choice.

So... results vary by platform? And then after the "hello world" example:

> And you should see that familiar Hello, World printed on your console. If > you are using OS/X [sic] or Windows, it won't be this easy. I'll repeat my > advice to install Linux.

Funny, this example works just fine for me on OS X. You do realize OS X is a Unix-like system, right?

> Having said that, remember this rule:

> Linux is the native environment for C development.

Gee, I wonder how people like Dennis Ritchie ever managed to write C code before Linux came along?

</comment><comment><USER27> those three points in the bullet list near the start all seem to miss the mark for me.

</comment><comment><USER28> Love it.

I dream of the day when all current system-level fads bite the dust, replaced by new fads, while C is still running as the system layer. (hint: just like it is happening today with the 90s fad called C++, replaced by fads like Go, Rust, D).

<comment><USER29> lol? C++ is hardly a "fad"!

<comment><USER30> Well, IMHO it was, and C was too (google books magazines from 80s and 90s). The people left using both languages are usually doing so deliberately rather than because it is trendy.</comment></comment></comment>


What Constant Surveillance Does to Your Brain – Motherboard - <AUTHOR> https://motherboard.vice.com/en_us/article/pa5d9g/what-constant-surveillance-does-to-your-brain <comment><USER2> I wonder if there's a subset of the population that actually reacts to constant government surveillance by feeling safer. To continue the author's baby rat analogy, this would be the equivalent of baby rats believing the propaganda that the government surveillance system is their mother as opposed to a predator.

If it isn't clear - I'm talking about the "if you have nothing to hide then why do you need privacy?" crowd.

<comment><AUTHOR> Surveillance itself is opportunity protection job to be done better and effectively. The problems is with possessors of surveillance data and decisions makers. No man, no problem. May be regulations should be more stricter in not allowing people to abuse surveillance.

<comment><USER3> But who writes the regulations?

Who enforces them?

Who watches the watchers?

<comment><AUTHOR> Your questions are to the point. If the actors you mention are independent and no one single actor has authority over them, we have system that is self regulating. This system is working in mature democracies.</comment></comment></comment></comment>


It's iPhone, not Iphone or IPhone - <AUTHOR>

Please follow title advice <comment><USER2> HN is definitely reaching a "tipping point" moment. The fact that worthless entries like this are making it to the front page is very telling.

I wonder if PG would consider shutting down new user registration for a period of time to see what happens with traffic and submission quality.

I have a theory that the types of users that HN (or reddit in the beginning) would like to attract and keep are the very same users that show up in the first 6 to 12 months of the site's existence. After that point, it seems like all of the social network sites begin to homogenize to the digg model (in terms of quality of discourse).

<comment><USER3> > shutting down new user registration

A few users made their first posts more than one year after creating their accounts. Therefore, there could be a large number of dormant accounts on this forum. If you drastically limited supply then demand could encourage sales or auctions of dormant or active accounts. The market value for an account could exceed US$100 but none of it would return to the administrators. You could undercut the value and sell accounts directly to users, however this model is similar to SomethingAwful's one time fee of US$9.95, which has hardly been conducive to constructive discussion.

</comment></comment><comment><USER4> It's "indifference" not Indifference or INdifference.

</comment><comment><USER5> How did THIS get to the front page?

</comment><comment><USER6> I answer to a higher power: conventions of English capitalization.

</comment><comment><USER7> sometimes I wish HN had a bury feature...

</comment><comment><USER8> Companies trying to be memorable want to override a couple centuries of English history? Fuck 'em. The initial cap on proper nouns developed for good reasons.

</comment><comment><USER9> Thumb should stay _out_ of ass, not up it...

</comment><comment><USER10> Everyone's complaining about this post, but it bothers me that anyone cares about the IPHONE or any phone at all in the first place. 99 percent of what a telephone can do, and makes it necessary, was settled before WWI. Let's keep some perspective.

<comment><USER11> I'd say that iPhone is a pretty impressive hack friend. Well worth mentioning on HN.

<comment><USER10> I'd say you are misusing the word hack. I sure don't care if people talk about the iPhone, especially from a technical point of view. What bothers me is that people are getting all excited about it. It's a phone. Consumerism shouldn't mix with religion.</comment></comment></comment>


Nginx to support uWSGI out of the box  - <AUTHOR> http://lists.unbit.it/pipermail/uwsgi/2010-June/000353.html

<comment><AUTHOR> This benchmark impressed us all that uWSGI was a lightning bolt but it's huge drawback was having to recompile Nginx (package usage hell) but that might soon be a thing of the past <http://nichol.as/benchmark-of-python-web-servers>

<comment><USER2> Yes, wonderful news.</comment></comment>


Ask YC: Feedback on my new Template Creation Web App - <AUTHOR>

http://www.widgely.com
Widgely is an online template builder that lets people create, share and use templates to make many different types of document. These can then be downloaded as PDF, embedded into websites or viewed through widgely.com.
The site is in beta, and has been live for a few months now - mainly friends and family testing it while I make changes and add extra features.
I've just released the latest version (PDF download and a "Template Wizard" for creating templates) and was  hoping that some people here might be interested in taking a look and posting any feedback they have.
Cheers, thanks for your time :) <comment><USER2> \- I doubt mainstream users understand or care what's a pdf

\- The problem in any idea is how to make it appealing, and in this case how to does the word spread about your web service.

\- The public url for sharing their docs will help only if done right, so you should emphasize on making it more usable and visible...

Maybe you should make it possible, these documents to be embedeed in social networking sites and also make it possible to add some images.

\- The other thing is user experience, starting from using words people recognize easy.

For example "usa a template" should be "create a new document"

<comment><AUTHOR> Thanks for taking the time to comment, i really appreciate it.

Spreading the word is one of the things I'm trying to work out now. Good point about the public url ... it should be easy to use and remember.

Images can already be added to documents and templates. If a template has an image field, the user can just click it to change to another one. I've created a bunch of custom border, background and decoration images so that there is already some for users to choose from.

I provided the PDF download so that documents could be printed easier than through a browser, with higher quality. I hope that people will care because it does provide a benefit to them ... but perhaps I could say it in a better way on the front page

</comment></comment><comment><USER3> I like it - well done and good luck. I'll never use it but I see the value. If this were part of a site that I already used regularly, I'd use it but TBH I don't need/want another thing to bookmark remember that is so specific that I'll never remember/find it again.</comment>


Learn X in Y minutes - <AUTHOR> https://learnxinyminutes.com/ <comment><USER2> Ah, classic. X in Y minutes is a great resource if you want a concise, simple, brief example of what's cool about a language. It's not enough to actually learn the language from, but it's an excellent place to start.

<comment><USER3> If you know enough linguistic neighbors of the x you're trying to learn the xiny cheat sheets can actually get you surprisingly dangerous.

<comment><USER2> Ah, the classic assumption problem perhaps best demonstrated by lua:

"I wrote an hour's worth of code, and then I realized this language is 1-indexed when none of it worked!"

<comment><USER4> I somewhat like learning languages this way, I rarely forget my own mistakes I have to fix.

<comment><USER5> I think I like learning this way, but then I remember the time I learned the hard way that Matlab hates when scripts begin with a number, and I question my life choices.

</comment></comment></comment></comment></comment><comment><USER3> I've used this a ton. It's great if you need to modify some library or project and you don't know the language. In the most extreme example I twice got an interview challenge that was mandatorily in X (despite having previously covered that I didn't know X). One of those times I actually managed to pass the challenge and got an offer. Thanks learnxinyminutes!

</comment><comment><USER6> OT: XinY is a misnomer, since Y is constant: each of the articles is of fixed length. It would be really cool (more helpful) to have some sort of dynamically resizable guide to a language, where I could adjust its length and detail with a little slider at the top!

</comment><comment><USER7> this has been shared/posted a hundred times before... nothing new here.

<comment><USER8> Eh, I can't honestly tell if there has been more X's added since the last time it was posted and I don't feel like putting in the time into the wayback machine to find out.

<comment><USER9> The source is hosted on GitHub; there's a commit log (for each file and directory): [https://github.com/adambard/learnxinyminutes- docs/commits/ma...](https://github.com/adambard/learnxinyminutes- docs/commits/master)

</comment></comment></comment><comment><USER10> One may learn any x in y minutes, especially if there is no upper limit on y. So I'd like to see something like "Learn X in Y minutes provided Z constraints". But the moment I talk about constraints (like focused attention, practice, drill etc) then it sort of starts getting lesser and lesser popular.

Reminds me the famous old Euclid's remark - "there is no royal road to geometry".

<comment><USER11> I really hate it when people talk/write like you. Saying absolutely nothing, but using fancy words and phrasing to seem smart.

<comment><USER12> He has a point, though the way he said it might be a little too grand. Sometimes I feel that I'd like to learn some topic X for school, in enough depth that I can solve problems that appear on exams, while at other times, I wish I could learn X just enough to be dangerous. For this reason I sometimes wish there is one of resource for each of those situations, or as the previous poster called them "constraints". But then I realize that as you divide them up like this, they just don't get popular enough for the author to put in enough work or maintain quality.

Luckily, for the most part, the MOOC scene brings us one type and the other type exists a lot on youtube etc.

I hope I didn't sound too much like the previous poster, but when I read what he said, I realized that I too had the same thought process!</comment></comment></comment>


Retina Mac Apps: Not a Review, But a Site - <AUTHOR> http://theindustry.cc/2012/08/07/retina-mac-apps-not-a-review-but-a-site/ <comment><USER2> I've been a Linux user for a long time. But I'm switching. I have a MacBook Retina on order, so I looked these apps over. I am astounded by their high prices. $49 seems to be the average; that's probably more than I've spent on software (not bundled with hardware) in the last three years.

I guess we Mac users are so cash-flush, we're just itching to give some away.

The site, Retina Mac Apps, is a good 'un. Thank you.

<comment><USER3> Prices of apps made by independent developers are often higher than on Windows, simply because of less competition (at least it used to be that way but at least in the consumer space I feel that it's shifting). App quality is often higher however.

It's not really comparable to Linux packages. GPL software is nice, but it's usually also a lot of work until it works the way you want - paid apps are there to do that for you. You could still install most Linux tools using Macports / Homebrew. At some point you will recognize that sometimes spending 20-30$ instead of investing hours of your time is worth it.

Now concerning Apple's own software: IF they fit your needs they are usually a total no-brainer. Pages/Numbers/Keynote give you 90% of the power of MS Office, in a more consistent way and at 1/4 of the price. Similar things can be said about Aperture and Final Cut X, Logic Pro even being the industry leader from what I hear. Apple certainly doesn't make a profit on those alone.</comment></comment>


Goldiblox vs Beastie Boys - <AUTHOR> http://entertainment.time.com/2013/11/25/toy-company-files-suit-after-beastie-boys-threaten-action-over-girls-video/

<comment><USER2> I think the Beastie Boys are dead to rights here. There's no way using the entire song for a commercial enterprise can be considered a parody.</comment>


Ask YC: Does anyone here use jQuery? - <AUTHOR>

... and if so, do you find it has a lot of IE-related issues? Or is that just with the UI libraries?
Just including the js files for the dialog and tabs components makes IE7 give me an awesome 'Operation Aborted' error page, which pretty much prevents debugging. While I'd love to just pretend that my users will have Firefox/Safari/Opera, I suspect I can't be that optimistic.
So second part of the question... what strategies do you employ to get your sites to play well with all browsers? (Do you develop for one then bugfix on the others, or try and learn all the quirks ahead of time, or just avoid anything risky?) <comment><USER2> The jquery plugins are young, and you can usually find answers to all these things in #jquery on freenode. I'm surprised they break your IE, because jquery is one of the few libraries that does some very extensive optimization for IE, unlike some of the other top dogs.

I think a common paradigm is to develop for firefox (because it's convenient to debug with firebug, etc.) and then test in IE and figure out where IE's issues are. You'll learn things that IE doesn't like and avoid them in the future. IE doesn't have some of Gecko's js features, like generators and array comprehensions, so don't touch those. Also, in IE, a trailing comma in an inline object declaration is a syntax error:

var x={0,}; //i find this syntax convenient, so that always pisses me off

The event object disappears if your event handler invokes something to be done on a fresh callstack, even if you still have a reference to the object itself:

function someHandler(e){ setTimeout(function(){alert(e);},0); } //only lost when called via event invocation, and i'm not sure how widespread this problem is

Some DOM properties/attributes may be different/present/absent, but if you use jquery that'll be abstracted away. The event model in IE is lame (level 2 stuff), allowing you to attach only one listener per event per object, but jquery abstracts that away as well. What else... IE is known for leaking memory because each DOM element is actually a COM object, and cyclical references between the js engine and COM are undetected. There's a young tool called sIEve (currently v0.0.8) that can help you detect what leaked. anything else you want to know?

<comment><AUTHOR> All excellent pointers... thanks for the insight.

I have to admit I'm a total js newbie. jQuery makes it seem easy to pick up, but I know that if I had to do much outside of it I'd be lost.

I'm actually really surprised how powerful it seems. All that passing around of functions as data makes it fun to work with.

<comment><USER2> i think that jQuery mostly abstracts away the redundancy, not so much the complexity. so, in short, you have nothing to be afraid of :)

</comment></comment></comment><comment><USER3> I do, and didn't notice any IE issues (though our JQuery usage has gone up significantly since the last time I tested with IE...)

It's quite possible that UI has issues though - it's not really a 1.0-quality release, more like an alpha release that they put out in public. I had to write 3 patches for UI Slider to even _work_ , and much necessary functionality is either undocumented or unimplemented. There's supposedly going to be a release in mid-December to fix some of the outstanding bugs.

I haven't really noticed IE issues in general - I use CSS and portable libraries like JQuery and code to standards, and just do a single pass before release to fix any outstanding IE issues. Last time I did a release, it took less than a day to fix everything.

<comment><AUTHOR> Yeah I just submitted two patches for the UI Dialog. I guess I'll just have to sit down some day on a windows machine and deal with IE, even if I hate it. I suspect it's in the UI code, like you said.

</comment></comment><comment><USER4> Hi,

For IE debugging you can use DebugBar (<http://www.debugbar.com/>) and Companion.JS (<http://www.my-debugbar.com/wiki/CompanionJS/HomePage>) that give dev tools for developers : DOM inspector, HTTP viewer, JS console, etc...

Hope this helps.

JFR <http://www.debugbar.com>

</comment><comment><USER5> I used jQuery once as a very quick drop-in to replace some inline js on an internal reporting site. It was fantastic.

The changeover doesn't work in IE, though. I haven't had time to look at the problem in detail, but we're using XSLT to display the report in the browser, and $(document).ready() isn't firing.

</comment><comment><USER6> Check your CSS.

When I first used jQuery it wasn't working as I had expected it to. The stylesheets were invalid and apparently causing problems. Since then I haven't run into any issues with IE or otherwise.

</comment><comment><USER7> I lover jQuery but like others, I only use the core libary - I've yet to dabble in the UI library.

extJS support jQuery (as well as others) and is by far the best UI library available.

</comment><comment><USER8> I use jQuery (with thickbox and wymeditor plugins) it seems to work fine in IE, but safari is a mess for me.

</comment><comment><USER9> That's funny, we're using jQuery to avoid IE-related problems.

</comment><comment><USER10> we use jquery at <http://www.tastestalkr.com> and we haven't yet found any IE problems.

</comment><comment><USER11> never had an IE-only jquery problem, but I only use the core lib.</comment>


Sublime Text 3 lives on: Build 3100 released - <AUTHOR> https://www.sublimetext.com/3dev#3100 <comment><USER2> Its been Beta for over 3 years now, and has been pretty stable for that amount of time. Is it not time to just release it?</comment>


Autism research on single neurons suggests signaling problems in brain circuits - <AUTHOR> https://theconversation.com/new-autism-research-on-single-neurons-suggests-signaling-problems-in-brain-circuits-117074 <comment><USER2> Interesting discussion on twitter regarding the relatively small sample size (n=15) given the heterogeneity of the underlying condition - [https://twitter.com/WiringTheBrain/status/112928482114080358...](https://twitter.com/WiringTheBrain/status/1129284821140803584)

<comment><USER3> Finding an indicative difference in a tiny, yet random sample appears to have accomplished more than the guy yelling "small sample size" \- and, which I find ironic - "waste!" here. They managed to add a tiny bit of contrast to a picture that's totally blank, and provide 15 pixels of data, please explain how that's supposed to be worthless?

By the same logic, if I manage to cure an extremely rare type of cancer under certain circumstances when it's detected early on, I get fired for having too little success? I mean, what? Seriously?

By all means, prove them wrong, but stop the yelling. That's even more worthless than any form of pioneering research.

<comment><USER4> It hasn't been established whether this has "accomplished" anything at all or if it's a false positive. That's what's being discussed in the Twitter thread.

<comment><USER5> It has opened an avenue for future research that has better than "monkeys throwing darts" odds, which is an accomplishment.

</comment></comment></comment></comment><comment><USER6> Autism (or maybe some forms of it) are now linked to gut problems / inflammation and can be treated with fecal transplants:

University of Arizona experimental study on 18 children:

[https://microbiomejournal.biomedcentral.com/articles/10.1186...](https://microbiomejournal.biomedcentral.com/articles/10.1186/s40168-016-0225-7)

A very successful treatment of one child:

[https://youtu.be/KRXl_N0OtX4?t=1477](https://youtu.be/KRXl_N0OtX4?t=1477)

<comment><USER7> One complicating factor with a lot of these studies is how "autism symptoms" and the like are measured. Specifically, they measure something like "how much distress is the autistic individual under compared to how much they can handle". High level of distress leads to meltdowns, inability to handle outside behavioral demands, etc, and shows up as higher autism symptom load.

So this study is, IMO, much less about "gut problems cause autism", and I highly doubt that these individuals get any less autistic. A fairer characterization is "autistic people with gastrointestinal distress are less able to deal with things in general, and fixing the GI distress allows them to handle social demands better".

<comment><USER8> That depends on what Autism is/how we define it.

I think there may be people whose brain works like an autistic brain in that the things that specifically distress autists also distress them. But they are good enough at tolerating distress that they don't actually show the symptoms of autism.

If people like that exist and we don't consider them autistic, then improving someone's ability to deal with distress can indeed reduce or even cure autism.

</comment></comment></comment><comment><USER9> Unrelated : In this article double f, like in "affected" are rendered with the second f bigger than the first (both on firefox and chromium). I looked inside the css editor and the font seems to be ("Libre Baskerville", Georgia, Times, "Times New Roman", serif).

I guess this is probably to improve readability but it doesn't do this for other pairs of repeated letters.

It kind of sent me into a rabbit hole as I thought font were defined for a single letter only. I did a quick search and I couldn't find the rules which defined fonts. Is there some pattern matching for sequence of characters ? More importantly, when trying a new font how do we know that there aren't special cases like this ugly "ff" ?

<comment><USER10> [https://en.wikipedia.org/wiki/Typographic_ligature](https://en.wikipedia.org/wiki/Typographic_ligature)

Searching for "fonts ligatures" will give you more reading material.

>I guess this is probably to improve readability but it doesn't do this for other pairs of repeated letters.

Ligatures are mostly a style thing from the days of handwriting that got brought forward into print.

>Is there some pattern matching for sequence of characters ?

Yes, combinations are pre-defined in the font and picked up the renderer. In this particular case, LibreBaskerville defines a combination of two f's to render the first f in a slightly smaller size.

<comment><USER11> You can also control this with CSS using font-variant-ligatures.

</comment></comment></comment><comment><USER12> Dr Exley of Keele University has been studying the role of aluminum in autism.

> Levels of mercury, lead, and aluminum in the hair of autistic children are > higher than controls. Environmental exposure to these toxic heavy metals, at > key times in development, may play a causal role in autism.

"Assessment of Hair Aluminum, Lead, and Mercury in a Sample of Autistic Egyptian Children: Environmental Risk Factors of Heavy Metals in Autism"

[https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4609793/](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4609793/)

</comment><comment><USER13> Since when was autism classified as a disease?

<comment><USER14> Since always? It's a developmental disorder, and a disease is "a disorder of structure or function in a human, animal, or plant, especially one that produces specific symptoms or that affects a specific location and is not simply a direct result of physical injury."

Pretty much every medical body would list it under its classification of illnesses.

e.g. NHS: [https://www.nhsinform.scot/illnesses-and-conditions/brain- ne...](https://www.nhsinform.scot/illnesses-and-conditions/brain-nerves-and- spinal-cord/autistic-spectrum-disorder-asd)

<comment><USER13> With 2 kids and a partner diagnosed as being autistic, it's a massive trigger for me.

Seen so many health professionals because of my family, not one has ever referred to it as a disease.

Just to elaborate further.

Child 1 - ASD/ADHD Child 2 - ASD/SPD possibly PDA Partner - ASD/SPD

They're all different and display different characteristics,have differing needs and have different mental health issues. Child 1 is about 2 years behind their peers educationally and socially, Child 2 is on par.

<comment><USER15> The fact that it's a massive trigger for someone doesn't mean it's less of a disease. Maybe the problem is the negativity the word "disease" brings, but someone who suffers autism is a diseased person.

<comment><USER13> Or not

[https://www.nhs.uk/conditions/autism/what-is- autism/](https://www.nhs.uk/conditions/autism/what-is-autism/)

</comment></comment></comment></comment></comment><comment><USER16> Features are not bugs.</comment>


Facebook to stop stalking you off-site – but only if asked - <AUTHOR> https://www.bbc.co.uk/news/technology-49410371 <comment><USER2> I explicitly applaud the use of the word "stalking" because that's exactly what this predatory company is doing.</comment>