Unconscionable Public Education Practices - <AUTHOR> http://www.sfgate.com/cgi-bin/blogs/jtaylor/detail??blogid=180&entry_id=62665

<comment><USER2> Before I say this let me just say that I'm not defending LAUSD and I do think there are better ways they could be doing things. But as someone who lives in the area there's more story here.

Budget cuts have brought the LAUSD to the point where classes are literally 50+% fuller than they should be. That's at least 45 kids in class rooms designed for 30. You go into one of these classrooms and you'll find kids sitting on the floor or one kid in a folding chair sharing a traditional desk with the other kid who is actually sitting in the desk. As atrocious as some of the behavior in the article seems it's been brought about by the hard reality of there being no place for these kids to go even if the school did hold them back.

(For frame of reference LAUSD had a budget deficit of around $894 million last year which is about $1,290 per student)

I have many criticisms of public schools in the U.S. but this isn't about that. This is about 3 Government bodies (Federal, State and Local) that all spent way more than they could afford on trivial things and now have no money left to do what's important.

<comment><USER3> Thanks for the marginal information, but according to Wikipedia, the total LAUSD budget for 2008-2009 was $13,645,600,000. Divided by 700,000 pupils comes out to $19,493 per student!!!

<comment><USER2> I don't really see your point. The reality is that money is going to other places. Most notably Pension payments (<http://www.atr.org/californias- billion-pension-bomb-a4786#>). Keep in mind teachers can retire after 25 years but continue to get about 65k a year indefinitely plus Medical, Dental, etc.

I don't know where the number is now but in 2006 the city would have needed $10 billion to cover its pension costs and it didn't have that then: [http://www.thefreelibrary.com/LAUSDS+RUNAWAY+BENEFITS+PRICE+...](http://www.thefreelibrary.com/LAUSDS+RUNAWAY+BENEFITS+PRICE+TAG+RETIREE+EXPENSES+PUT+AT+$10...-a0142222213)

I think that's ridiculous and I don't think they ever should have been given that kind of deal but the School District is still contractually obligated to pay those pensions. The city of Vallejo actually tried to declare bankruptcy because it couldn't afford the enormous debt generated by pensions and the result was the California Legislature voting to exempt pension payments from city bankruptcy.

<comment><USER4> _Keep in mind teachers can retire after 25 years but continue to get about 65k a year indefinitely plus Medical, Dental, etc._

In spite of that, we continue to believe teachers are underpaid.

<comment><USER2> It's a whole new discussion but I'll just quote the facts. From here: <http://www.freerepublic.com/focus/f-news/2095889/posts>

===Begin Quote===

According to information provided to the Daily News by the LAUSD, the average salary for teachers is $63,000 - not too shabby that.

But more than 8,500 teachers pull in between $70,000 and $80,000 a year. Nearly 2,000 make salaries between $80,000 and $100,000, with a very lucky (and likely very experienced) 331 enjoying more than $100,000 in annual salary.

And then there's a benefits package that would be the envy of any worker not in the public sector. Medical, dental, pension - let's just say that anybody who puts in their time at the LAUSD won't be uncomfortable in their golden years.

===End Quote===

That's on a 180-day (or 36 week) per year schedule.

<comment><USER5> A few bits of perspective on this:

LA is one of the most expensive housing markets in the country. There's been some decline, but a few years ago a small, poorly-built house in an undesirable part of the metro area would typically run around $400K.

LAUSD covers an enormous area. Teachers don't get much say in their assignments, so might be commuting 1.5 hours each way.

At least some (possibly all) of LAUSD runs on a year-round calendar. Teachers don't get the same summer break as they would in many other districts. Most of their off-cycle time is spent doing professional development. Saying they only work 36 weeks a year is disingenuous.

</comment></comment></comment></comment></comment></comment><comment><USER6> It's important to differentiate between public funding and public provisioning of public education.

Public funding might mean that a kid from a less wealthy family could afford to attend a private school via a grant from the state.

Public provisioning means that schools ultimately have more in common with the DMV than with elite educational institutions.

Public schools are intended to be daycare centers for the poor and middle class, so that women can join the work force without having to care for their children during the day.

The goal of public schools is to teach children to conform to the expectations of the work force, so depending on where the school is located the students may end up barely literate but sufficient to fill the local factory jobs, etc.

It's important to keep this in mind when thinking about public education. Public schools have not failed, they are succeeding quite well at what they are actually intended to accomplish.

Some public schools (those in rich suburbs) actually provide a good education (chances are someone who attended one of those schools will object to this comment). Those are an exception and exist in areas where residents could afford to send their kids to private school if necessary.

<comment><USER7> _Some public schools (those in rich suburbs) actually provide a good education (chances are someone who attended one of those schools will object to this comment). Those are an exception and exist in areas where residents could afford to send their kids to private school if necessary._

I think a few things are worth pointing out here:

The best 10-20% of teachers are really good, because teaching is (although not as admired as medicine or law) admired enough that some seriously talented people enter it. Those teachers are highly desired and usually end up at the most reputable schools teaching honors and AP classes. So if you're lucky enough to have such teachers, you're going to get a good education.

Good schools have no problem getting a satisfactory percentage of students to pass the assessment tests and therefore actually teach. Mediocre schools that are on the bubble begin "teaching to the test" (which means a focus of attention and resources onto the worst students, to the detriment of average and good students) and therefore the quality of education declines even further.

<comment><USER6> I think you make an accurate point that people who teach (who are capable enough to have other options) are probably not motivated solely by the financial rewards.

But there is nothing about teaching that would prevent a top teacher from earning $250K per year. The reason that doesn't happen (and the reason we don't see more luxury cars in the teachers' parking long) is because unions have forced wages to be based on seniority and not based on merit.

This means that rather than one teacher (a good one) making $70K and another (not so good one) making $30K, they both make $50K. This gives the bad teacher every incentive to continue being a mediocre teacher for decades rather than moving on and finding a career he/she is good at.

</comment></comment></comment><comment><USER8> The public school system in the United States is a wonderful undertaking. Unfortunately it is deeply flawed and in its current state does a great disservice to the students that attend school within the public system.

My wife works with undergraduate students at a major university every single day and she is a first hand witness to the poor quality of public education nationwide. The students that she encounters are often woefully unprepared for a college education-they have a poor grasp of written English, have low reading comprehension and their grasp of basic mathematical skills is better left unexplored. These students ARE NOT the bottom of the barrel either-the admission system filters most of them out. Its a very sad state of affairs.

Our children will be attending private school-even though I don't agree with their religion (most private schools here are Catholic) I can't argue with their results. My wife left her private high school with English, math and science skills that rival most college graduates.

<comment><USER9> I apologize for being That Guy, and your comment's content was very nice, but hyphens should not be used to separate words -- for that, you should use longer dashes. You can imitate this in plain text with the string " -- ". This makes your words easier to read, since using a single hyphen makes it look like you're just using hyphenated-words.

<http://en.wikipedia.org/wiki/Dash>

(Back on topic, my public school education _never_ mentioned this. I learned it from the documentation for LaTeX. A sad state of affairs.)

</comment></comment><comment><USER10> _But what is the message that students get from social promotion? How about that there is no incentive to learn_

An educational system that incentivizes learning via fear of failure (public humiliation in this case) is broken.

This false dichotomy of social promotion versus holding students back ignores the necessity of finding new ways to engage struggling students. Of course promoting kids to face material for which they are not prepared is going to be a problem. But having them repeat the material in the same manner and expecting them to catch on the second time around is lunacy as well.

The biggest problem that I see in education is the focus on measuring achievement in an easily-measured, narrowly-defined way. That such a system has become gamed to the point that even the successful students aren't really learning should be no surprise.

What's the solution? I know there aren't easy answers, but it has to start with making learning and teaching fun. The happiest moment in a teacher's day is when the light switches on for a student. Though it is cliche, learning is fun, but the caveat is that it's the most fun when the lesson is applied.

<comment><USER11> _An educational system that incentivizes learning via fear of failure (public humiliation in this case) is broken._

While nobody likes to fail, failure is not important mostly as a means of motivation. It is important because repetition often helps.

You claim that it is lunacy to expect that a second go will solve problems. Yet that "lunacy" has worked out pretty well for people I know who had to retake courses and grades. The second time through, usually with different teachers, the students learned. Part of it was the age advantage. Part of it was a different teacher. Part of it was the fact that if you halfway learn the first time, there is less to learn the second time.

Taking failure off the table out of excessive concern for hurting fragile feelings does everyone a disservice. And is a far greater lunacy than being willing to tell people, "You haven't learned this material, you need to try again."

<comment><USER10> _Taking failure off the table out of excessive concern for hurting fragile feelings does everyone a disservice_

There's more at stake than students' hurt feelings. Your anecdotes aside, statistics show that retaining students is expensive and largely ineffective [1].

What's most dangerous to me is the idea that without the threat of failure there is no incentive to learn.

That's a viewpoint that deserves scrutiny.

It's narrow-minded and serves mostly to blame the student. It also closes the door to examination of alternative ways to best serve the section of the student body most likely to be considered for social promotion.

The other side of the spectrum is standardized testing, which places the blame on teachers and encourages them to narrow their focus to material that will be on the test.

And it's all built around proving that students can fill in the right circles on a standardized test, such that even the successful ones aren't guaranteed to be able to do practical things (e.g. CS majors that can't write a program).

The bottom line is that we are not really teaching. More importantly, we are not teaching kids how to learn, which is the key to motivated students.

[1] <http://www.ssc.wisc.edu/cde/cdewp/99-06.pdf>

<comment><USER11> _What's most dangerous to me is the idea that without the threat of failure there is no incentive to learn._

You are arguing against a straw man. I gave you several specific reasons why it is good to fail students who have not learned the material they need for their further education, and you have addressed none of them.

To your straw man I'll reply with something that should be both obvious and important. There is no possibility of learning when you are put in a classroom with material that assumes you possess a foundation you don't have. Furthermore if the teacher attempts to address the deficiencies of those who haven't learned the basics, there is no possibility of teaching what was supposed to be taught in that class. Therefore social promotion creates a situation where teachers get a choice of bad options, and no available good ones.

The costs of these poorly set up classrooms are extremely difficult to properly measure. But they are absolutely real. And it is important to note that a significant fraction of those costs fall on the students who were not socially promoted.

Looking at the research you quoted, this critical factor is ignored. Yes, students who are allowed to fail learn less than ones who are socially promoted. There wasn't strong evidence whether they learn less by the same grade. But the most important fact to me, whether or not OTHER students learn less when put in classrooms where teachers have a broader mix of students - wasn't even looked at.

Furthermore the option of summer school wasn't addressed. That gives you the best of both worlds. Students who need it get extra time. And get to stay on course. It worked well for me. I personally had a crappy grade 9 French teacher, was passed when I should of failed, then failed grade 10 French. I retook the course in summer school and passed. It would have been better still if I had failed grade 9 French instead. (And better still if I had a decent teacher there, but such is life.)

</comment></comment></comment></comment><comment><USER12> The real problem with public education: the parents.

You can't teach kids who come home to parents who do not value education.

An oversized classroom is not as bad as students who have no interested and no motivation to learn. But it's not the student fault, it's their parents.

Sad thing is, it's kind of an endless cycle. Maybe we should punish the parents... but I don't know how well that would work either...

<comment><USER13> When parents are almost entirely removed from the education process, without input into curriculum[1] or teacher selection[2], can you blame many for becoming disinterested bystandards?

In private religious and secular schools, I have noticed that parental involvement is much higher.

[1] Set at the state and national level as a result of funding.

[2] In many locales, set by unions and un-elected administration.

</comment></comment><comment><USER14> I would look at this from an even higher, more abstract level than budgets. It's a bit of a chicken or egg problem, but I went to what are considered some of the best public schools in NYC growing up, and I can tell you they aren't great. From a quick look they have all the right check boxes: experienced teachers (close look: old, tired, angry teachers), great math, science and humanities programs (rigid, standardized test based curriculum), etc. etc.

The education I got was by all means "good," but it was VERY herd mentality, and it as very much about standardizing a body of knowledge and culture NOT about promoting active discourse etc.

Yet, I still ended up alright, whereas, considering how "good" a high school I went to, many of the kids did not.

The difference was the home, the neighborhood and the culture we went home to at night. Now I know all of this is circular, and a bit of the chicken egg issue, but there is really nothing you can do for people when the household they go back to doesn't support their education. Conversely, even a horrible school can't ruin a good education provided by your family and community. You can give them all the help in the world, but no matter how many free college workshops you have, if education isn't explicitly a goal among their friends, family and community they'll realize pretty quickly that it wont be useful in their lives and will disengage.

So I'm all for education reform, I think it should be a constant in our society. Education ALWAYS needs improving. But we need to be a little more careful with understanding what exactly an education system can and cannot provide.

The problems that are in this article can't really be fixed with a better education system, they are symptomatic of far bigger cultural issues that need addressing.

</comment><comment><USER15> It's sometimes worse than this article describes and it's not just in LA.

I grew up in a small town in NH (population ~5k people). I have a close friend whose sister was in a "special attention" program (let's call her Jane). Jane was in a program for kids who were "slower" than the other kids. They didn't have any physical learning disabilities, just poorer grades.

The time came for the yearly standardized tests (called the CATs in NH). On the day of the tests Jane's class was taken out on a special 'field trip'; they all went bowling. In the morning the kids lined up for class and Jane and her friends gloated to the other suckers who had to stay behind, "We get to go bowling and you have to stay here and take tests."

The result? The school's scores were a little bit higher that year.

</comment><comment><USER3> If you read The Underground History of American Education, an opus of a book compiled over thirty years by John Gatto (former NY and NYC teacher of the year), you will learn that over a hundred years ago, powerful industrialists sought to shape the public educational system around Darwinian Evolution. What this means is that they believed that most poor children were, as evidenced by their poor status, lesser life forms, and that the school's job was essentially to destroy them, and among other things, remove them from competition for breeding.

Free online: <http://www.johntaylorgatto.com/chapters/index.htm>

</comment><comment><USER16> _A second practice involves teachers doing students' work for them just so students can pass the class...In a Bizarro world, this practice would be win- win_

From everything I've seen, big bureaucracies _are_ Bizarro World.

</comment><comment><USER17> Whenever you tie student test scores to national standards, which affect funding, and thus compensation, this is what you get.</comment>


Immutable URLs (2013) - <AUTHOR> https://medium.com/strong-opinions-lightly-held/immutable-urls-91925a8c9373#.8qs5jnol9 <comment><USER2>
      What if URLs were immutable?
      What if once content was posted to a URL (maybe a new kind of URL, the immutable IURL)
      it could never be changed?
      The contents of the site and the URL itself
      would be hashed together
      and out would come a key that could never be altered.
      Not even the theme and styling of the page could be rebranded.
      It would be frozen like Han Solo at the end of Empire Strikes Back

An interesting concept, and I think fatally flawed. There is a simple question of plumbing. Who'd pay for the kind of infrastructure required to make that happen? How would it be backward compatible with existing URLs?

Far more important would be issues of identity and freedom. They are related to Facebook's awkward handling of gender and name identities. What if you posted something embarrassing, libelous, or injurious to your professional career?

What if you became a "new person" through a religious transformation, witness protection, or some other kind of powerful ideological repositioning (think conversion to or from ISIS, for example)?

What if you want to become anonymous, or link yourself to a formerly anonymous publication after the fact?

It seems to me that freedom consists not just of being how you wish to be defined, but control over how you wish to be undefined.

<comment><USER3> You also obviously often want to slightly change the content of say a blog post, fixing typos or factual inaccuracies and such. Tracking down every old link and replacing it with an updated one would be a big undertaking.

</comment></comment><comment><USER4> There has been lots of work with this concept.

For example, [http://trustyuri.net/](http://trustyuri.net/)

Or it can be something like sha256://abc123... where the URI is the hash of the contents. It is infinitely cachable, doesn't require SSL for authenticity (just for privacy), and is location independent (can be hosted anywhere).

I forget how link cycles are resolved, but anyway that's the idea.

</comment><comment><USER5> I do something similar for [http://hashcache.rkeene.org/](http://hashcache.rkeene.org/)

</comment><comment><USER6> This is the core use case of IPFS: [https://ipfs.io/](https://ipfs.io/)

Neocities has just collaborated with Protocol Labs to host their content "permanently" on IPFS.</comment>


Ask HN: What place do you have for God in your life as a hacker? - <AUTHOR> <comment><USER2> Not really the Christian God, but I definitely do have a place for spirituality in my life. For me spirituality is appreciating nature, taking care of my plants and animals, casually learning and delving into polytheistic nature-worship and other left hand path religions, and just letting my own curiosity about what else might be "out there" roam free. All of this is completely outside of my actual daily work, but taking an interest in these things in my spare time seems to provide a comforting balance to my mind.

</comment><comment><USER3> What place do God have in a life of a wasing machine mechanist or a gardener?

You write God with capitalized letter so it must be some kind of monotheism but I still have to ask which God? If the one in the Bible then as far as I know it directs your moral compass and gives you relief of your sins you bound to do from time to time.

</comment><comment><AUTHOR> I communicate with God every evening to express my gratitude for the strength I had during the day to accomplish my wants and duties.

Job 1:21 God Gives and God Takes Away

</comment><comment><USER4> May not agree with everything Stallman says, but he's admirable nonetheless.

<comment><USER5> I loled

</comment></comment><comment><USER6> The religious leaders who tried to teach their followers about their ideas of gods may have been wrong about a lot of things, and right about others, but both can be instructive to research.

I believe folks who are offered the responsibility of building and maintaining complex systems, or the skills to manipulate those systems even without authorization can benefit from studying different systems of ethics and morality as well.

Even if you don't agree with a particular theological system or its teachings writ large, it can be instructive to question and explore why that religion promotes each of those teachings. It can be interesting to see what each taught once, but now sweeps under the rug.

If curiosity drives you to hack, it may be rewarding for you to delve into the religious writings, traditions, and histories of cultures around the world! Give it a try!

</comment><comment><USER7> I try to be respectful of peoples' faiths as religious was (and maybe still is) an important part of the evolution of civilization. But it's also important to realize the limits of faith and try to move past them.

God doesn't have a place in my life as a hacker, except maybe as a foundation for writing fun though experiment blog posts like this one:

[https://khanism.org/faith/fate-and-destiny/](https://khanism.org/faith/fate- and-destiny/)

Some hackers and coders do believe in God and are conservative and we shouldn't condemn people for that. At the same time, it's not important when contribution to the open source community. People just care that you want to contribute, and that people contribute useful stuff.

It's not something that should be really relevant past that.

</comment><comment><USER8> The issue is mostly orthogonal to the things I do.

</comment><comment><USER9> Little. Not because I don't believe, but because I do. I have read the text of my faith, and it doesn't support the puppet-master theology embraced in most churches.

</comment><comment><USER10> Spirituality (to generalize), is what makes me tick in a sound way every day. As a creative soul it's always a little bit destructive every day to work on bits and bytes, if I loose sight on the bigger picture. The common job is bit rot and the spirituality is my resilvering.

If I didn't there's no greater mean to why I'm doing my small part.

It's easy to get lost in the corridors of logic.

</comment><comment><USER11> 0\. Hard atheist.

</comment><comment><USER12> > as a hacker?

What a odd trait to get intertwined with one's religious views.

Seems like a weird enough combination that if someone said they were at all related, I'd look for a third thing that's impacting them as a pair.

</comment><comment><USER13> A substantial one, really. I'd go so far as to say my "life as a hacker" (or, well, software developer) has a "place" in my life with God, rather than vice- versa.

Full disclosure: the rest of this post is going to be me talking about how Christianity in particular has a positive impact on my life. It got a bit longer than I expected it to, so it probably looks like a screed, but at least it's a positive one. :)

My relationship with Jesus influences how I treat others; because he showed me the most profoundly self-sacrifical mercy ever, I am both motivated and reminded to show grace to others in how I treat them and interact with them. As it says in Ephesians 4: "Be kind to one another, tenderhearted, forgiving one another, as God in Christ forgave you."

This surfaces itself in emails, meetings, chat messages, code reviews...basically everywhere I interact with someone else. I don't always succeed, sure, but I know when I fail that there is both need for forgiveness (from the other person), available forgiveness (from God), and opportunity to learn and grow from it.

My confidence in God's unfailing love and omnipotence help me to handle stress better (or at least, better than my anxious mind would without such assurances). Because I know that my future is guaranteed by God (Romans 8:18 -- "For I consider that the sufferings of this present time are not worth comparing with the glory that is to be revealed to us"), I am able to endure (or at least endure _better_ than otherwise) in stressful or painful situations and to "count it all joy...when [I] meet trials of various kinds...[knowing] that the testing of [my] faith produces steadfastness", and to "let steadfastness have its full effect, that you may be perfect and complete, lacking in nothing." (James 1:2-4)

This surfaces all _over_ the place, when I do so successfully -- it's the area where I most often fail, personally. Tight deadlines, seemingly-doomed projects, team conflicts, bad management...all of those, if handled well, are growth opportunities. I'd sure like to be "perfect and complete, lacking in nothing" with regards to my faith. The reward is worth the price there. This obviously also shows up outside of work, probably more often than it surfaces _at_ work.

In part, my drive to learn is fueled by fascination at the levels of ingenuity possible in the world we live in, and my belief that learning about that world is learning about facets of my own maker's skill and apparently-infinite ingenuity. "The heavens declare the glory of God, and the sky above proclaims his handiwork", as David put it in Psalm 19. The circuits that guide the electricity powering the laptop I type this on, the logical foundations on which they're designed, and the chemical reactions in the laptop battery that provides the power to them are the result of studied observation into the systems and properties of the universe God made -- and we're nowhere near complete in our knowledge of that universe. And all of that apparent infinity just highlights how much larger the infinity of God's creativity and "engineering skill" are. "His invisible attributes, namely, his eternal power and divine nature, have been clearly perceived, ever since the creation of the world, in the things that have been made." (Romans 1:20)

It's also fueled by a desire to improve so that I can be skillful in my reflection of that creativity, and use that skill in diligent work that I enjoy, while balancing that work with a "longer-term" perspective on its priority. While I'm here, I should do my best and enjoy the my labor and its fruits, but I also know that said labor or wages aren't my "everything". Solomon had a _lot_ to say about this in Ecclesiastes, but in particular in chapter 2: "There is nothing better for a person than that he should eat and drink and find enjoyment in his toil. This also, I saw, is from the hand of God, for apart from him who can eat or who can have enjoyment? For to the one who pleases him God has given wisdom and knowledge and joy, but to the sinner he has given the business of gathering and collecting, only to give to one who pleases God. This also is vanity and a striving after wind."

This helps me to balance my priorities, while still encouraging diligence. It is a great thing to be able to enjoy the work I do (and I count myself blessed that I usually do enjoy it!), and it's a great thing to be able to enjoy what I'm paid for that work, but neither the work nor its profits are the point of my existence, nor are they my ultimate reward. In a way, it's like a camping trip: I'm not going to be staying in my campsite forever (or even for long, comparatively), but I should still take care of it, and enjoy it while I'm there.

Entire books have been written on this subject (since the subject of "how does your religion affect your working life" is a pretty big one), but I think those few points are pretty relevant to this post in particular.

I say all this not to say that I'm the best, or to try to shout out anyone with a different system of beliefs, or to advocate for some kind of religious hegemony among developers. I just thought it'd be helpful to express what I think is a not-often-heard viewpoint on HN: that Christianity _can_ have substantial benefits for the life of software developers, at least based on how it's had substantial benefits for the life of this particular software developer.

</comment><comment><USER14> It's an interesting question that's too rarely asked.

I find it surprising how many of engineers refuse God completely (as in, the concept of a creator).</comment>


Save the Males - <AUTHOR> http://entertainment.timesonline.co.uk/tol/arts_and_entertainment/books/book_extracts/article4448371.ece <comment><USER2> I see men around me being as macho as ever and the popularity of mixed-martial arts, wrestling, NASCAR and the use of the word "gay" to deride stuff. My anecdotes cancel her anecdotes!

</comment><comment><USER3> I'm glad someone out there is making a point about the emasculation of men at the expense of wimmin's lib, even if it's not in the most articulately expressed manner.

<comment><USER4> Do you really think that "wimmin's lib" emasculates men? In what way are your options in life more limited as a result of gender equality? How is it that equal opportunity makes you less of a man?

<comment><USER5> wimmin's lib emasculates men if they choose to listen and accept it.

</comment></comment></comment><comment><USER6> As the father of two boys, this was my favorite part:

"But seven-year-old boys are not interested in making lanterns from coffee tins. They want to shoot bows and arrows, preferably at one another, chop wood with stone-hewn axes and sink canoes, preferably while in them."

All true.

<comment><USER7> This is generally true. However, much to the consternation of my macho dad, I was the weird kid who was more interested in making lanterns from coffee tins than shooting at canoes or chopping wood with rocks.

If the author is really concerned about society going down the tubes it might be worthwhile to not include making things in her stereotype of behavior that isn't "manly." The guys who spent their youth throwing stuff at each other are the ones having the most problems when they grow up. Last I checked, makers do pretty well in adulthood.

<comment><USER8> I enjoyed making my bow and arrows and I am sure that would be included fully in her definition of manly. She is moaning about activities and toys that are unmanly, not the process of making stuff.

</comment></comment></comment><comment><USER9> Cherry-picked anecdotes and data to support _a priori_ conclusions.

<comment><USER10> That could equally well describe any essay. An essay is not a report on a controlled experiment. You have to work to decide which parts you agree with.

<comment><USER9> It could describe most bad essays, yes. Good essays either stay out of falsifiability territory, or they invite formal exploration of the subject.

In this essay, she makes claims that are supported only with anecdotes, when data could be used. This is important since I can easily think of counter- anecdotes that nullify her arguments. The biggest example is her claim that males are predominantly presented as emasculated in popular culture. I'm sure one can consume a subset of all popular culture where that is true, and I'm also sure one can do the opposite. But if someone were to actually come up with a metric and _test_ this idea, then that would be worthwhile.

<comment><USER10> _Good essays either stay out of falsifiability territory, or they invite formal exploration of the subject._

It would be a mistake to write an essay using anecdotal evidence to argue about a precisely defined question in math or the hard sciences. But outside math and the hard sciences, falsifiability gets fuzzy. A statistical (surely you don't really mean formal?) analysis of this topic would be in the domain of "social science," and though such studies usually measure something precisely, it's never clear what. Often a thoughtful essay will come closer to the truth, despite containing no tables of numbers.

<comment><USER9> I'd prefer an attempt at a statistical analysis (yes, that's what I was getting at) which is upfront about assumptions and methodologies. Essays are worthwhile, but are only honest if the author is upfront about their assumptions. This author presents her assumptions as fact. That's when I tune out.

In particular, this essay is predicated on the assumption that our culture is more emasculated than in the past - if this is not the case, then the entire thing falls apart. I think there are reasonable ways to test this assumption, but the author, as a reporter, is probably not equipped to do so.

</comment></comment></comment></comment></comment><comment><USER11> I think this article is somewhat self-selecting. For any guy who agrees with it - then maybe it is true. For guys who think it's a load of crap - then it probably is.

</comment><comment><USER12> What's interesting about these articles is how out of touch with reality the journalists are.

</comment><comment><USER13> I could be wrong, but as a Brit (ish) it seems America is a lot less forgiving of men on the whole. In the UK, TV adverts have Homer Simpson-like figures who are funny, but in a forgiving way.

I see feminism's flaw as being that women have wombs and can reproduce, but men can't. Fix that by letting single men adopt.

The other flaw is that feminism is an offshoot of Marxism.

<comment><USER4> Single men can adopt. One of my son's best friends is the adopted son of a single man.

<comment><USER13> Thanks for correcting me. I'd better do some more reading before jumping to conclusions outside my education.

</comment></comment></comment><comment><USER14> I wish I had read that article in my apartment rather than at a cafe. I could've cleaned the floor with all the sweeping generalizations in it.

The article raises some good points, especially on the reproductive inequity, but most of what is in it is just boring overgeneralization. It's too long for the few points it makes.

[Edit: Made this comment as I was RTFA. The second half is better.]

</comment><comment><USER15> To save everyone time reading complete garbage, allow me to provide one representative quote from the article:

 _The shame attached to unwed motherhood did serve a useful purpose once upon a time._

/sigh/

<comment><USER15> So I take it everyone here supports the view that single mothers are shameful. Wow.

<comment><USER16> No, you can take from your downmodding that this isn't reddit, and you'll need to make stronger arguments than that to be taken seriously.

<comment><USER4> It's amusing that the arguments in the original article are not strong, and are based on bias and anecdote. Also, the reply comments here are _extremely_ reddit-like.

<comment><USER16> People have already pointed out the former. I agree.

There are also some very astute comments on this article, which is hacker news all the way.

</comment></comment></comment></comment></comment><comment><USER17> It was an interesting reed, but why the hell was it on the front page of a computer nerd site? The sun has no spots on it? Ok, thats cool, and nerdy, thats real science, brain burning extra calories? Well interesting, of course, we are smart people and we care what happens in our brains, there are viruses in our genes, cool!!! But save the males? Who cares? Western civilization has a lot of more interesting issues than this. It wasn't even THAT interesting, just readable. I was alway annoyed by 'not HN' posts, and i know my post is annoying too, good, it was meant to be annoying, it's important, you can't ignore my bitter rant!

<comment><USER18> Based on your word choices and spelling mistakes, I'm gonna place your age in the neighborhood of 16-17. Am I right? Maybe you'll find this kind of topic more interesting when you're a bit older...

<comment><USER15> Where does _I'm gonna_ place you?</comment></comment></comment>


Up close with New Zealand's most notorious gang - <AUTHOR> https://www.huckmag.com/art-and-culture/photography-2/up-close-with-new-zealands-most-notorious-gang/ <comment><USER2> __> He points out that despite only making up 16 per cent of the country's entire population, Māori make up over 50 per cent of the prison population. It's this culture of prejudice and division, he argues, that has allowed Mongrelism to thrive. __

Oh no, I feel the need to be the ranting Pakeha. There 's always bloody one ;(

Note that this doesn't state 'Maori commit over 50% of the nation's violent crimes', but instead walks right past that and talks about a mysterious prison population that somehow just came about. Maori commit crime at a disproportionate level to their population, they are incarcerated at a greater rate almost wholly due to this. This is occurring because of socioeconomic inequalities that need to be addressed and remedied on a cross-generational timespan. Starting with improved early childhood and educational outcomes and working outwards from there. Not starting with kids viewing gangs as an attractive life choice.

As a demographic, Maori are at a notable disadvantage. On an individual basis, every fuckwit locked up for violent crimes deserves to be there.

NZ does have _proven_ bias in it's criminal justice system, but painting a picture of NZ culture as 'of prejudice and division' shows a lack of understanding and narrow lens. Article's got my back up because small-town NZ is _terrorized_ by gangs and by romanticizing them, as I feel this article does, it lends a legitimacy to plain criminality that actively sets Maori at even further disadvantage.

The piece is capped off with this statement:

 __> Working with the Mob is a singular lens through which to look at the social dynamic of the country. It is also true that there are hugely positive things happening for Māori and Aotearoa New Zealand is at the global forefront of addressing the difficult inheritance of colonialism. __

Can 't help but feel placing that statement earlier, where more article readers will actually encounter it, would be less ass-covering and more honest journalism.

<comment><USER3> "NZ does have proven bias in it's criminal justice system"

Exactly what part? Making sweeping statements like this is dangerous. Does racism exist? Yes. Point it out specifically and I'll fight it with you, but you had better point to specific cases otherwise you risk unfairly tarring people with the same brush.

Let me give you an example.

Years ago I was called up for jury duty. This was back in the days when juries needed to return a unanimous verdict.

I'm Pākehā the defendant was Māori... which made no difference to whatsoever to me. I took this man's fate seriously and carefully weighted the evidence presented.

However, deliberation was locked for two days as the two other jury members, who were both Māori, refused to return a not guilty verdict.

No matter what we did we could not convince those two other jury members and we were forced to return to the judge as a hung jury which required the defendant to remain incarcerated until a retrial.

We were told not to speak to anyone as we walked out of court and as we did, the defendant's family shouted abuse at jury members, including calling us, and that would include me, racist.

I remember feeling so upset over it, especially since I wanted to tell them that it wasn't me, the problem here was Māori being racist to Māori... it had nothing to do with Pākehā racism toward Māori!

So as someone who was temporarily part of criminal justice system, it isn't as simple as your sweeping statements indicates.

<comment><USER4> That's really grim.

The bias can also happen earlier than that too. My (white) father managed a big warehouse with a Samoan man. They had the same pay, same company car and similar route home. Every few weeks the Samoan man was pulled over and had his ID checked and was questioned about the late model car he was driving. My father wasn't ever pulled over.

<comment><USER3> Thomas Sowell's book Discrimination and Disparities discusses discrimination and has made me reconsider what is actually happening in the type of scenario you describe.

I highly recommend it.

</comment></comment></comment></comment><comment><USER5> As an Aussie, I was expecting a mob of angry Sheep ;)

<comment><USER6> you want peter jacksons (horrendous) movie Black Sheep [https://www.youtube.com/watch?time_continue=4&v=Hhck0SLcA6I](https://www.youtube.com/watch?time_continue=4&v=Hhck0SLcA6I)

<comment><USER7> Curiously, Black Sheep is the one weird horror film from NZ that isn't by Peter Jackson: [https://en.wikipedia.org/wiki/Black_Sheep_(2006_New_Zealand_...](https://en.wikipedia.org/wiki/Black_Sheep_\(2006_New_Zealand_film\))</comment></comment></comment>


Rust will likely not support tail call optimization - <AUTHOR> https://mail.mozilla.org/pipermail/rust-dev/2013-April/003557.html <comment><USER2> Note that we do sibling call optimization per LLVM, and you can use trampolines like Clojure does. Sibling call optimization, most notably, includes all self-calls. This means that calls to the currently executing function in tail position _will_ be tail call optimized, if there are no destructors in scope.

The biggest problem here is ABIs: you have to use Pascal calling conventions instead of C calling conventions. It's also difficult when you have destructors: there are not many tail call positions when destructors are in scope.

<comment><USER3> Wouldn't it be possible to have some sort of macro able to "manually" convert calls in a recursive style into loops? Something along the lines of Clojure's `loop/recur` but less tricky (and maybe with a single "word")?

<comment><USER4> Self recursion is only a particular case and you can often represent it with loops or folding patterns as you are imagining. However, the really cool use for tail call elimination is when you are calling _other_ functions since you can't rewrite the code without breaking encapsulation. Out of the top of my head, one important example of this would be continuation passing style (you need TCO to turn the continuations into real "gotos")

</comment></comment></comment><comment><USER5> Please, for the sake of $DIETY, stop calling it "Tail Call Optimization". It is not an optimization, and the wrong term causes lots of useless discussions and misunderstanding. Call it "Tail Call Elimination", because that's what it is.

With finite memory (that is, in the real world), a program that relies on tail recursion will blow up if TCE is not implemented even though it can run forever with TCE. Thus, it changes actual program results (rather than just runtime speed or amount of memory required), and cannot be considered just an "optimization", since it is functionally required.

And to future-language designers: Please, for the sake of $DIETY2, make the syntax for guaranteed-eliminated-tail-call different than a regular call: It's really a bad idea that a function such as:

        def f(x):
           ...
           return 0+f(x-1)

cannot in general be TCEd (adding 0 to a floating point imporper denormal will make it proper), whereas

         def f(x):
            ...
            return f(x-1)

can. I suggest "chain y" instead of "return y" so that the compiler can verify that a TCE can indeed happen.

<comment><USER6> _cannot be considered just an "optimization", since it is functionally required_

Here is a C program:

        #include <stdio.h>
        int main(void) { while (1) malloc(64); }

With clang, when compiled with -O0, this consumes all the memory on my system. When compiled with -O2, it runs forever in constant memory, because clang has optimized out the call to malloc. If I replace the call with, say, 'malloc((size_t)(-1) >> 1)', it even changes the output of the program.

Here is another example:

        int factorial(long long x) { return x * factorial(x-1); }

With gcc, when compiled with -O2, the factorial function can correctly compute the factorial of a very large number. When compiled with -O0, it cannot.

I would call both of these optimizations, even though someone may rely on either for correctness. So I don't think tail calls are unique in this respect.

 _make the syntax for guaranteed-eliminated-tail-call different than a regular call_

Agreed.

<comment><USER7> Both of those programs are playing with C's infamously broad undefined behavior rules, the first for a non-terminating loop and the second for using too much stack (when called with a sufficiently large number). -O2 being nice to you is a coincidence, not something you should rely on.

In a language which prefers diagnosing programmer error over punting both should be errors.

</comment></comment></comment><comment><USER8> Clojure also doesn't support TCO, and from what I can tell the explicit loop/recur is sufficient, which also has the advantage that it is very clear (i.e., the compiler will tell you) when TCO is _not_ being invoked. With implicit TCO you might think you're getting the benefit, only to have a stack blow up unexpectedly at runtime with an edge-case input.

<comment><USER2> Especially with destructors. Whenever you have a destructor in the frame, you're _not_ in tail-call position. This means that tail-call positions in Rust are going to be few anyway.

<comment><USER9> That calls for an interesting optimization: Using escape+liveness analysis you could probably call some of those destructors earlier.

<comment><USER10> The problem is that TCO in the sense we're talking about isn't really an "optimization". It's a language feature that removes the need for explicit looping constructs by allowing you to write them as higher-order functions instead. This only works if the guy writing the higher-order function can prove that the compiler will successfully "optimize away" the tail call, or if he doesn't care whether the program dies with a stack overflow. If the success of TCO is dependent on which conservative approximation the compiler is using for escape and liveness analysis, then people who care about their programs continuing to run will demand explicit looping constructs anyway.

There are three separate inventions in Scheme that work this way. Closures give you objects without an object construct, tail-call optimization gives you loops without looping constructs, and call/cc gives you threads, exceptions, and backtracking without thread, exception, or backtracking constructs.

(I mention Scheme because all three of these were, as far as I can tell, introduced in Scheme, and only later adopted by other functional languages like ML, although to be fair, TCO at least falls out naturally from combinator-graph reduction.)

In a sense, Scheme is sort of like a functional assembly language: there are lots of object systems, looping constructs, threads, and exception systems in Scheme, and they aren't compatible with each other. It's sort of like the situation with linked lists in C, where every library has its own linked-list type.

It's exactly the opposite of assembly language in another way, though. By making object instantiation and population implicit, both the compiler and the maintenance programmer have to do extra work to figure out what's an object and what's not, and what the object's fields are. The same is true of loops, threads, and exceptions. In assembly, instead, you have the problem of things being _too explicit_ , thus losing the signal in the noise.

That's my take, anyway. I haven't spent that much time programming in either Scheme or assembly, although I did write an almost-Scheme compiler targeting assembly called Ur-Scheme.

<comment><USER11> The "assembly language" for ML would actually be the lambda calculus. Scheme isn't really defined unless you're talking about some standard, and the semantics of the language are probably just defined in English.

<comment><USER10> Hmm, it sounds like you're trying to argue with me, but I'm not clear on what you're saying — some quick responses — hope this helps:

① I did not claim Scheme was an "assembly language" for ML. I said that programming in, reading programs in, and compiling programs in Scheme was like programming in, reading programs in, and compiling programs in assembly language in some specific ways, and very unlike it in others. The relationship between Scheme and ML is that some of the central insights of Scheme were adopted by ML.

② ML defines evaluation order. The lambda calculus does not. Typical ML implementations compile to the assembly languages of actual processors. Can you clarify?

③ I think Scheme is sufficiently well defined for this discussion — it's a family of languages originating in some papers by Sussman and Steele in the 1970s, and continuing through the current R7RS work, including a number of compilers. Several of the standards define the semantics of the language symbolically, not just in English.

</comment></comment></comment></comment></comment></comment><comment><USER12> It seems like part of decision was reached because of limitations in LLVM[1]. This makes me a bit uneasy, but I guess it has to follow C to meet its goals.

1) "LLVM does support tail call optimization, but it requires using a different calling convention than C and slowing down all function calls" from [https://mail.mozilla.org/pipermail/rust- dev/2013-April/00355...](https://mail.mozilla.org/pipermail/rust- dev/2013-April/003556.html) and [http://llvm.org/docs/CodeGenerator.html#tail- call-optimizati...](http://llvm.org/docs/CodeGenerator.html#tail-call- optimization)

<comment><USER13> They could also add their own calling convention to LLVM to support what they want like GHC and HiPE have done.

<comment><USER14> No they can't, at least not without compromising on several points laid out in TFA. Mainly these two:

        - Tail calls also "play badly" with assumptions in C
          tools, including platform ABIs and dynamic linking.

        - Tail calls require a calling convention that is a
          performance hit relative to the C convention.

See other posts in this discussion for examples of the impacts of some alternate calling convention choices.

</comment></comment></comment><comment><USER15> What is tail call optimization? How does it usually work? There's an implementation example on the Wikipedia page to answer this question a little bit:

<http://en.wikipedia.org/wiki/Tail_call>

<comment><USER16> And, of course, "Debunking the 'Expensive Procedure Call' Myth, or, Procedure Call Implementations Considered Harmful, or, Lambda: The Ultimate GOTO" by Guy Steele. Available here: <http://library.readscheme.org/page1.html>

</comment></comment><comment><USER17> I'm puzzled: if Rust and Clojure won't support TCO and they are both cool, why is there such bitter complaining every time it comes up that Python won't support TCO?

<comment><USER18> I can't speak for Clojure, but Rust's rationale for omitting TCO is based on sound engineering issues (as articulated) whereas Guido's sole reason for omitting it (as far as I've seen) is that you lose stack trace information, which is considered something of a red herring (as you can always selectively disable TCO for debugging, and there are ways of retaining stack information anyway.) Note that the original article here is quite disappointed that they _can't_ include TCO, because it would be a valuable tool and allow for different, efficient styles of programming.

<comment><USER19> I can't answer fully for Clojure's reasons for not supporting TCO, but it will at least be fundamentally rooted in the fact that the JVM, as a platform, does NOT support TCO.

Scala is usually the language brought up as a counter argument here, but Scala has the same limitations as Clojure - the JVM can't do the TCO. Scala's compiler tries, with certain types of tail calls, to optimize via (I believe) a trampoline – it reduces those calls into a loop, so they are no longer a function call.

But, only certain types of calls (specifically, the last line of code in a recursive function must be a call to the hosting function) can be TCO in Scala. There is an annotation, scala.annotation.tailrec, which can be placed above a method you want to tail recurse.

@tailrec does not, however, "force" the compiler to do TCO – it simply forces compilation to fail if the method in question cannot be Tail Call Optimized. It's a developer hook for saying "I realize the compiler _tries_ to do TCO where possible, but I require this method to be trampolined". If it can't be, you'll get a compilation error with details on why the TCO failed.

<comment><USER20> > the JVM, as a platform, does NOT support TCO.

And the x86, as a platform, does?

What, specifically, does the JVM do to make TCO more difficult than it would be in the machine code of your choice?

<comment><USER10> Yes, the x86 instruction that implements TCO is called JMP. The JVM doesn't have an equivalent instruction; you can only jump around inside a single method, not to the beginning of another method.

<comment><USER20> > The JVM doesn't have an equivalent instruction; you can only jump around > inside a single method, not to the beginning of another method.

OK, why do functions in the source language have to translate directly into methods at the JVM level? Purely for debugging?

<comment><USER10> The JVM also doesn't (I'm fairly sure) have an indirect JMP instruction, which means you can't compile a polymorphic source-language method call into a JMP inside of a single generated method. Instead you have to use a call to a method. That means that tail-calls to functions passed as parameters (rather than functions that can be statically bound at compile time) can't use JMP.

<comment><USER21> The "JVM" can use any instruction it wants to use.

If you want a runtime with proper tail calls, use a implementation which supports it.

<comment><USER10> I'm talking about the bytecode instructions standardized in the "JVM" specification. The "JVM" has to implement the semantics of the instructions found in your bytecode program, or your program won't run. Your bytecode program can only use bytecodes defined in the "JVM" specification, or it won't run on the "JVM".

<comment><USER21> There is no need or reason to change or add any bytecode instructions to support proper tail calls.

Take standard class files and execute them on a runtime with proper tail calls. Done. Works.

<comment><USER10> Which JVMs support proper tail calls? Doesn't this violate requirements of the JRE?

<comment><USER21> For instance oss.readytalk.com/avian. Why should it?

<comment><USER10> Because the security manager needs to be able to introspect the stack. Avian isn't a JVM; it's "designed to provide a useful subset of Java's features" and can run some Java code.

<comment><USER22> It's actually possible to implement the stack inspection in a tail-call- friendly way (along the lines of Racket's continuation marks IIRC), though AFAIK nobody does it.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER23> A TCO-support discussion on Y combinator.

OH IRONY.

<comment><USER24> Elaborate for the ignorant.

<comment><USER9> The Y Combinator is something important in the theory of functional programming. It takes one function as argument and applies it to itself ad infinitum. Together with lazy evaluation this is how you can implement recursion in a language which does not natively support it, namely (lazy) lambda calculus.

[http://en.wikipedia.org/wiki/Fixed- point_combinator#Y_combin...](http://en.wikipedia.org/wiki/Fixed- point_combinator#Y_combinator)

Actually, TCO and Y are not really related with each other apart from the fact that you usually learn about them in the same course about functional programming.

<comment><USER10> If you write your loops with the Y-combinator, you need tail-call elimination to keep them from overflowing the stack when they run for enough iterations, because the way your function f goes on to the next iteration of itself is by calling the (Y f) that was passed as its first argument.

<comment><USER9> You can write a lambda calculus interpreter which does beta-reduction. In this case, there is no stack which could overflow. Just a lambda expression, which is reduced to another expression.

<comment><USER10> Yes, as I mentioned in another comment in this thread, TCE falls out automatically from combinator-graph reduction.

</comment></comment></comment></comment></comment></comment><comment><USER25> The problem seems to be that you can't do tail calls with the C calling convention.

For example, let's say a 0-argument function tail calls a 1-argument one: the 1-argument function expects an argument on the stack, so the 0-argument function must push one.

However, when the 1-argument function returns, the argument will still be on the stack, because with the C calling convention the caller removes arguments from the stack.

But the caller called a 0-argument function, so he won't remove any argument, and thus the stack is now misaligned due to the argument left over there, which will crash the program soon.

However, just switching to the Pascal/stdcall convention, where the callee removes arguments from the stack should just work; it might be slightly slower, but on all modern architectures (i.e. those that aren't x86-32) parameters are going to be passed in registers anyway for must functions, so it shouldn't matter.

The problem of that is that non-varags functions cannot be called with a varargs prototype; this is an issue with K&R C that allows calling undeclared functions, but isn't an issue with Rust.

So, I'm not quite sure why Rust doesn't just switch calling conventions and support tail calls.

</comment><comment><USER26> Here is some information about TCE in LLVM from the lead developer: [http://nondot.org/sabre/LLVMNotes/GuaranteedEfficientTailCal...](http://nondot.org/sabre/LLVMNotes/GuaranteedEfficientTailCalls.txt)

</comment><comment><USER27> Screw it, we might as well use Go

Seriously though, why not just use a rec keyword and then disallow any of the things that don't play nicely when you're in the recursive function? If you really wanted to be cool you could put those things right into the type system.

<comment><USER4> As they mentioned in the original post, a big problem is that TCO does not play nice with two other important features they want.

1\. deterministic destructors that run at the end of functions (therefore making things that look like tail calls not actually tail calls) and

2\. binary compatibility with C and C++ libraries and tools (they say that tail recursion doesn't let you usethe C calling conventions that these tools and libraries expect you to use)

There is no point in allowing tail recursion in restricted contexts if you can't use these restricted functions to do the sort of stuff Rust was actually made to do

<comment><USER28> > binary compatibility with C and C++ libraries and tools >(they say that tail > recursion doesn't let you use the C > calling conventions that these tools > and libraries expect > you to use)

I've read variations of this comment about Rust C++ compatibility a few times, but haven't managed to find a source. Any references you could point me to?

<comment><USER29> AFAIK there's no plan to support any sort of C++ interop natively in Rust. However, it should work just fine if your C++ code exposes a C-compatible interface. Servo has to be able to call into SpiderMonkey _somehow_.

<comment><USER10> GCC C++ ABIs are unstable enough that cross-platform C++ libraries usually export a C-compatible interface already.

<comment><USER28> g++ vs itself, or g++ vs msvc? g++ uses Itanium C++ ABI on at least linux/mac/mingw, and the mangling and vtable layouts seem to be the same (I'm very interested in any information to the contrary - though I realize vtables are only part of the story).

<comment><USER10> Itanic may be an exception, but there have been at least two backwards- incompatible C++ ABI changes in G++ over the years. Casting to superclass in the presence of multiple inheritance and exception handling have been among the changes. Maybe they should change vtables too, I don't know.</comment></comment></comment></comment></comment></comment></comment>


Visual Studio Code: Shipping One of the Largest Microsoft JavaScript Apps - <AUTHOR> https://realm.io/news/GOTO-Alex-Dima-Visual_Studio-Code-JavaScript-Typescript/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+realmio+%28Realm+News%29 <comment><USER2> I switched to VSCode in a heartbeat after many years of Sublime. I love Sublime, but there are countless more benefits to using VSCode over it, and having 1 second slower startup time is well worth them.

<comment><USER3> Such as?

<comment><USER4> \- built in debugger with consistent/same usage experience regardless of language you are using it with.

\- built in terminal

\- git integration

to just name a few on top of my head

Sublime fell a sleep to be honest. I have a paid for license and I never use it anymore.

<comment><USER5> I'm a spacemacs guy, but the debugger in VS Code is freaking excellent. I've never seen a nicer cross-language debugging experience.

</comment></comment></comment></comment><comment><USER6> For naysayers, Electron only has to support one browser flavor and one version, which eliminates one of the biggest disadvantages of building Web based apps. With Electron and similarly with nw.js, the performance can be close to par with native apps without the cross compilation issues of native c++ frameworks like Qt. And with Electron, if you want to write some native code in C/C++, you can integrate that also. The only downsides I see is protecting closed source code and the lack of Mobile support, which is not coming any time soon due to Apple blocking Google V8 engine from their platform due to V8's use of JIT compilation.

<comment><USER7> Though at the cost of a ridiculous amount of processing overhead because you've chosen to forsake nearly every native programming feature the OS provides, in favor of an HTML engine

<comment><USER8> Native programming features the OS provides are also not free: it's still similar code drawing things on the screen, making sure they are properly aligned. HTML/CSS is a pretty flexible, and it indeed has some overhead compared to most native UI frameworks, but the "ridiculousness" of this overhead is imaginary.

<comment><USER9> > but the "ridiculousness" of this overhead is imaginary.

A few weeks ago:

VS Code uses 13% CPU when idle due to blinking cursor rendering

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

<comment><USER10> As someone who has been hit by every single one of these bugs[1][2][3] but somehow didn't get the VS Code problem I'm not at all convinced that is somehow inherent in using Electron.

I don't think I ever had a "IDE causing high CPU load in" problem in Delphi 2, 3, or 5. I did in Delphi 4, and I have in PowerBuilder, Sybase PowerJ (although there were much worse problems with that!), VB6, Eclipse 2, and I'm sure there are some I've missed.

Bugs suck, but they happen.

[1] [http://ridikulouse.blogspot.com.au/2015/02/visual-studio- hig...](http://ridikulouse.blogspot.com.au/2015/02/visual-studio-high-cpu- usage.html)

[2] [http://stackoverflow.com/questions/1369487/speeding-up- tomca...](http://stackoverflow.com/questions/1369487/speeding-up-tomcat-in- debug-mode-with-eclipse-ide/1373547#1373547)

[3] [http://stackoverflow.com/questions/38601171/intellij- idea-20...](http://stackoverflow.com/questions/38601171/intellij- idea-2016-2-high-cpu-usage)

</comment></comment></comment></comment></comment><comment><USER11> Interesting article.

VScode shows off a fantastic design by being responsive enough to use, and still using electron for drawing.

It's a great editor, but a lot of us (myself included) care a great deal about latency and performance in a text editor. It's our home, and we like it to be clean and organized.

Kudos to the VScode team for doing such a great job minimizing the headache that is electron, and building a very usable editor, but I'll stick to Emacs for now.

</comment><comment><USER12> Personally I think it's a biggest mistake to use browser engine for a text editor. We already knew how slow and clunky the browsers are and thanks to vscode and atom our text editors are becoming the same. I would stick to sublime text and vim for as long as I could. /rant

<comment><USER13> Personally I think that trotting out this argument in every single post about VSCode/Atom/Electron/etc. serves absolutely no good purpose at this point (other than upvotes or the pleasure of expressing an opinion, perhaps), but I'm happy to be corrected.

That said, I'm also still using Sublime Text / vim primarily because they do feel faster on startup and handle big files well.

But I think rationally it would make sense for me to move to VSCode, because 1) my code editor is almost always open, and 2) I rarely need to edit really large files, and 3) VSCode is plenty fast for pretty much all other use cases and offers a whole bunch of advantages over ST.

Atom I'm less sure of. It seems to get faster every few months that I give it a spin, but it still feels 'laggier' even in normal use, which is definitely a problem for me.

<comment><USER14> Well, the main question is still "why oh why?". It's not like Microsoft can't afford to pay developers to do something native.

Also, calling it Visual Studio is very deceptive. Most devs know VS to mean something completely different.

<comment><USER13> > Well, the main question is still "why oh why?". It's not like Microsoft > can't afford to pay developers to do something native.

Yeah I do share that question with you and would love an answer from the team!

> Also, calling it Visual Studio is very deceptive. Most devs know VS to mean > something completely different.

Could you clarify what you mean with that? Accusing me of being 'deceptive' seems a bit unwarranted and disproportionately antagonistic, considering that as far as I can tell I've made a clear distinction between VSCode and VS (meaning Visual Studio proper), and considering that I can't think of any reason why I would choose to deceive in this matter. Where did I go wrong?

<comment><USER15> I think the parent didn't mean to accuse _you_ , but _Microsoft_ , for re- using the "Visual Studio" brand in a product so completely different that it deserves a distinct name.

Reminds me of how pissed I was with Amazon calling their line of regular Android tablets "Kindle Fire". I don't know what the sales teams there think, but for customers, the "Kindle" brand was literally synonymous with "that _e- ink screen_ thing".

<comment><USER14> That's correct, I was talking about Microsoft.

<comment><USER13> Ah, fair enough. Was confused there for a bit.

</comment></comment></comment></comment></comment></comment></comment><comment><USER16> What I don't get is why they just arent using a stripped down version of Visual Studio for this. But maybe VSC is more like a test product for Microsoft to see how development in Javascript works out.

<comment><USER17> Visual Studio's codebase is 20 years old, and it wasn't built with cross- platform support in mind. It uses WPF as the UI toolkit, which is only supported on Windows. Stripping it down would most likely take an order of magnitude more work than just writing a new editor from scratch.

<comment><USER18> Do you have a source on the usage of WPF? Since it's a really new product compared to Visual Studio itself, I'd be surprised. Anyways, implementing something like a WPF-Gtk shim is not hard, especially for someone as big as Microsoft. The problem, AFAIK, lies in the usage of Windows API.

<comment><USER19> _> Do you have a source on the usage of WPF? Since it's a really new product compared to Visual Studio itself, I'd be surprised._

The parent comment was talking about Visual Studio itself, not VS Code.

<comment><USER20> Heh, yes and he did understand that as well. I actually had to look up the release dates because of your comment :)

> Windows Presentation Foundation (or WPF) is a graphical subsystem [...] was > initially released as part of .NET Framework 3.0[...].

> .NET Framework 3.0. release date

>> 2006-11-06

> Visual Studio Release Date

>> First entry on Wikipedia is Visual Studio 97 (1997). It was already Version 5 at that point. So even older I guess.

Professionally speaking WPF is still pretty young. Or at least a lot of developers think like that . There is still a lot of Software being maintained in Visual Basic, Windows Forms and whatever previous Frameworks existed. though it is pretty mainstream at this point, so most people just starting with the Microsoft SDKs never touch anything earlier than WPF.

<comment><USER18> Funny, I thought WPF is at least three years younger. Sadly, there are still schools (at least in Europe) that teach Windows Forms exclusively.

</comment></comment></comment></comment></comment></comment><comment><USER21> A little more than 1 year ago, I started experimenting with new editors. I move through Sublime, VSCode and Atom. VSCode felt very good but at that time it was missing a few features I needed it. I end up sticking with Atom. So far I think it is great.

If I have some time for another exploration I will take another look at VSCode and diving in WebStorm.

</comment><comment><USER22> I like VSCode and use it often, but Intellij is still so 'smart' it is hard to leave. Editing Terraform configs across many files? Intellij is the best I have seen at remaining context aware, following variables and marking errors. Same thing with JS, or even random things like nginx configs.

<comment><USER23> idk, I personally think if you need that kind of deep learning in your code then you are repeating yourself too much. I wrote a 30k line project with sublime and never faced any issues. Everything is as snappy as it was at 1k lines. Never needed intellij level code context awareness. I also worked on some android app some time ago and I probably could not have gone far without intellisense. So I think it depends on the language. Java is a lot more verbose than say php or javascript.

</comment></comment><comment><USER24> Love VSCode but still getting 100% cpu usage for php process on OSX. Great for Go dev though!

<comment><USER25> For Go I prefer Gogland

</comment></comment><comment><USER26> There is a spelling mistake in the module registration ;-) mimetype, not minetype.

</comment><comment><USER27> commonjs modules have lifetime cache ability. the more popular a module is the more likely it will already be stored locally. they can also be pushed by the server via package.json

</comment><comment><USER27> the small benefit of minifying is out weight by using a "compile" to JS language that usually produce much more code _:P_

</comment><comment><USER28> I know there are a lot of fans of VSCode (and also VisualStudio).. I use it frequently .. My problem with them is that no matter how fast computers get and how much memory it have, VScode and VStudio will be still slow.. I mean, the tools are great but I'm just wondering if java script was really the right approach...

</comment><comment><USER29> Was I the only one surprised with the variable minetypes: ['application/x-php'], focus on minetypes instead of mimetypes.

I guess they have a reason for keeping it that way, although if such a typo exists unfixed in the codebase, that gives you a general hint of the overall codebase quality.

<comment><USER30> You're extrapolating from 1 minor typo in a presentation. If I were to judge you based on just this comment, my impression about you would be far worse than your opinion about their code base quality :)

On a more serious note, Microsoft is one of the biggest software companies. It also consistently delivers high quality products to its customers. Products of incredible complexity such as Windows, Office or .NET. They couldn't do that without good engineering practices.

And specifically in this case, the Visual Studio Code team wouldn't be able to deliver very complex features so often if their code quality and overall engineering wasn't solid.

Have you ever read any of their release notes? Have you noticed the frequency of their releases?

Those alone should make you ponder for a while ;)</comment></comment>


Open Letter: Internet, Lighten up - <AUTHOR> http://devandpencil.herokuapp.com/blog/2013/01/25/an-open-letter-internet-lighten-up/ Being wrong on the internet can get you killed. <comment><USER2> Basically same problem different developer. There is an online community of developers who seem to enjoy devaluing another persons self worth.

Listen to your mother, she was right. If you don't have anything nice to say don't say anything at all. If you have someone do this to you, politely remind them that they have no right to devalue your life nor your self esteem. Give them some rope, let the people hang themselves.

Also realize the bigger the name, the bigger the ego.</comment>


The first battery-free Game Boy wants to power a gaming revolution - <AUTHOR> https://www.cnet.com/features/the-first-battery-free-game-boy-wants-to-power-a-gaming-revolution/ <comment><USER2> For the first time in like 20 years I played on a Game Boy just a couple of months ago after finding my old box with handhelds (also had quite some Game&Watch titles, but who has LR44 batteries these days..). Still fun. Unfortunately my 'Game Boy Oscilloscope' cartridge was missing, that was a pretty cool thing actually. Reminder of an era when things were different, but not necessarily worse. Probably I'll think the same of this decade 20 years in the future, but it's sometimes easy to foget how fast things can advance and holding an older piece of hardware always reminds me of that.

More on topic: the comment wrt batteries in the article is spot on. So common, yet so many problems with it. For that exact reason we have a kitchen scale driven by a small dynamo for generating power. No more empty batteries right when you need it. No more despair when the batteries it needs are not the type you have lying around. No more auto-off in the middle of weighing (cannot believe how many scales are plagued by that - or did I just get unlucky?). Just spin the wheel a couple of times and it goes on for minutes. Really hoping the thing lasts a lifetime; that's a good general rule for how tools should be actually: do one thing, do it good, and last forever.

Anyway: too bad this isn't up for sale, would make a nice gift for instance. But good to see there's still R&D being done in the direction of not requiring batteries, combining a couple of sources is perhaps the novelty here.

<comment><USER3> > For that exact reason we have a kitchen scale driven by a small dynamo for > generating power. No more empty batteries right when you need it.

That's interesting. Mind linking to it?

We've had a kitchen scale for about five years now, and I find myself becoming ever more dependent on it. They are just an amazing little piece of equipment that makes cooking so much easier.

And they do seem to die without warning, which is maddening.

I've started keeping more button cell batteries on hand exactly because of that situation.

<comment><USER4> Even better, why not use a mechanical scale? Digital is sure easier to read (plus you get neat features like tare and unit conversion), but a plain old mechanical force measure doesn't require batteries _at all_.

<comment><USER3> I haven't ever seen a mechanical kitchen scale that has any amount of capacity.

And they also tend to be much larger and bulkier than a digital scale.

</comment></comment></comment></comment><comment><USER4> Nothing is said about the hardware (which will be posted Sept 12), but I wonder what processor they're using. There have been a lot of advances in lower power processors over these last years.

I was once at a conference where Atmel was demoing their SAM L21 board by transmitting FM radio to a nearby radio receiver using the heat generated by your hand.

I went home and purchased a board and found it amazing. 48 MHz ARM Cortex-M0+ that consumed < 35µA/MHz [0]. You could run an IOT device for years on a coin cell!

Recently someone on HN mentioned the Ambiq Apollo3, which is even more incredible with up to 96MHz and less than 6 (yes, SIX) µA/MHz. [1]. Absolutely mind blowing.

That said, the biggest reason why I think new processors aren't used often is their support/documentation. AVR processors are pretty bad in a lot of ways (cost, performance, power consumption, etc) but you'll be hard pressed to find a problem which hasn't already been solved by the millions of Arduino users. Good luck troubleshooting your obscure interrupt issues with that one Microchip processor that only 10 people use.

[0]: [https://www.microchip.com/design- centers/32-bit/sam-32-bit-m...](https://www.microchip.com/design- centers/32-bit/sam-32-bit-mcus/sam-l-mcus)

[1]: [https://www.fujitsu.com/uk/about/resources/news/press- releas...](https://www.fujitsu.com/uk/about/resources/news/press- releases/2018/apollo3-blue-wireless-ulp-mcu.html)

<comment><USER5> I was wondering the same, especially since the Game Boy's Z80-esque processor was designed for minimal power consumption even at the time of the handheld's launch. I think it's outside the intent of the prototype, but I do wonder if avoiding an emulator would give more power savings.

<comment><AUTHOR> There's probably heaps of patents involved, including those from partners (mostly Sharp?), but my dream is that one day Nintendo fully opens the Game Boy for use as an educational platform similar to Raspberry Pi. Imagine widespread tinkering in robotics classes.

There's probably less than a 1% chance of it ever happening, but man, I wish someone would at least float the idea to the NCL higher-ups in an interview or something.

<comment><USER5> I think it'd be a nice platform to teach assembly to university students as well, given the hardware is so ubiquitous, straightforward, and fun.

</comment></comment></comment></comment><comment><USER5> > The team didn't trial the 1,000-plus titles released for the Game Boy, but > some of the biggest titles -- like Pokemon Blue -- have "sadistically huge" > memory and don't require constant button pressing. That's a problem.

I'm curious if the emulator the authors are using loads the entire ROM into the computer's memory before running. The Game Boy traditionally has a 16-bit address space; games that had a larger amount of data would include specialized hardware that allowed addresses 0x4000-0x7FFF to be re-assignable. [1][2] Tetris or Tobu Tobu Girl [3] fit inside the initial space without swapping, meanwhile something larger like Zelda switches banks.

[1] [https://gbdev.gg8.se/wiki/articles/Memory_Bank_Controllers](https://gbdev.gg8.se/wiki/articles/Memory_Bank_Controllers)

[2] [https://gbdev.gg8.se/wiki/articles/Memory_Map](https://gbdev.gg8.se/wiki/articles/Memory_Map)

[3] [https://tangramgames.dk/tobutobugirl/](https://tangramgames.dk/tobutobugirl/)

</comment><comment><USER6> >Beside the absence of a battery slot on the back, the device looks exactly like Nintendo's revolutionary handheld.

Does it?

<comment><USER7> It's a prototype (and thus exceptionally rough) but it is remarkably similar to the original Gameboy IMO.

<comment><USER6> I absolutely agree. But, saying it looks 'exactly' alike is just such a stretch.

</comment></comment></comment><comment><USER8> I found this really interesting to read. It's really cool that they use the mechanical press of the buttons to generate energy. I had never thought of that before. However when you think about those old longpress ratchet flashlights - that was the same concept.

<comment><USER9> philips hue buttons/switches power via the press of the buttons to transmit the commands to the hue base station.

[https://www.philips-hue.com/en-us/p/hue-tap- switch/046677473...](https://www.philips-hue.com/en-us/p/hue-tap- switch/046677473365)

> _The Hue Tap smart light switch is powered by kinetic energy, which means > that when you press the light switch you generate sufficient energy ..._

</comment></comment><comment><USER10> I wonder if harvesting energy from ambient radio waves would help ... or is that type of energy harvesting philosophically off-limits to the project, as you're just offloading the carbon footprint / energy source down the line?

<comment><USER11> the energy flux available in ambient radio waves passing through something the size of a handheld is _microscopic_ , pretty much.

</comment></comment><comment><USER12> Hopefully they can figure out how to make this work with sound!

<comment><USER13> So you can power your handheld by shouting at it?

<comment><USER14> I'm still yelling at my coffee[0] to warm it up.. 1 year, 7 months, 26 days, 20.5 hours didn't seem _that_ long

[0]: [https://www.physicscentral.com/explore/poster- coffee.cfm](https://www.physicscentral.com/explore/poster-coffee.cfm)</comment></comment></comment>


Ask HN: Do you use the most recent version of your preferred web browser? - <AUTHOR>

Are you using the most recent version of your web browser of choice? Do you know anyone that is still on a very old version (IE 6 or FF 2)? <comment><USER2> I use Flock daily. It's based on a not-so-up-to-date version of Firefox and I've seen at least a few "review-my-site" posts here where the site barfed catastrophically. I also use IE6 fairly often (mostly for testing though).

>> Do you know anyone that is still on a very old version

Yes. Most clients I work with either have employees on IE6 or need to support it for their users (usually both).

</comment><comment><USER3> I use the development version of google chrome when I do use it but most of the time I use conkeror which is probably pretty dated when it comes to css and html 5 (not so bad but around firefox 3.0 ish with xulrunner 1.9)

Everyone I know who isn't computer savvy uses IE 6 on xp 7 on vista and 8 on win7 and so on for operating systems you choose.

</comment><comment><USER4> Well, I'm reading / writing this using Chrome 6.0.447.0 dev, and the Firefox that's installed on this box is the FF4 beta candidate... so yeah, I guess I try to stay fairly close to the bleeding edge.

</comment><comment><USER5> I am, none of my clients ever are.

:(</comment>


Absurd Design – Free Surrealist Illustrations and Vector Art - <AUTHOR> https://absurd.design/ <comment><USER2> >In a digital era, we sometimes feel the need to interact with something more human that will make us appreciate both the beauty and the imperfection of something made by hand.

I appreciate the sentiment but I'm not sure a handful of illustrations actually does that.

I've often thought about what makes a website feel more natural but honestly sites like hacker news probabbly is as "natural" as an experience gets for a browser.

<comment><USER3> _waves hands vigorously_

Do you not understand art?!

<comment><USER4> Exactly my thoughts while reading most of the posts in this thread

<comment><USER2> Someone should tell them what they should understand.

</comment></comment></comment></comment><comment><USER5> I find the business model interesting. It is difficult to make a living as a content creator. Setting a limited number of subscribers on an exclusive illustration series will probably work better than giving illustrations away for free and then hope someone will hire you. Setting a quarterly subscription of $57 will give the designer $5700 a month if he manage to get 300 subscribers. I am sure this model can be duplicated by other independent content creators, and not only illustrators.

When it comes to the art itself I happen to like this artist's pen. That is a matter of taste and opinion of course. However, the business model is generic.

<comment><USER6> It's also pricing a job market into extinction.

<comment><USER5> That will depend on the market in question, wouldn't it? I mean, for example from the freelancers perspective it is not. From their perspective it could have the opposite effect; enable them to earn more by running parallel subscription based services.

</comment></comment></comment><comment><USER7> Just a little feedback on the website: the animating text on the fourth slide makes everything below it constantly jump up and down, on mobile. It makes most of the site a chore to read, and practically unusable.

</comment><comment><USER8> I can only applaud an artist taking a new approach to monitisation. I hope this catches on generally, as a way for artists to build sustainable patronage.

</comment><comment><USER6> I don't see how we're going to be able to produce good, quality, and original content with purpose with these types of pricing models and see media people earn a living wage.

</comment><comment><USER9> What makes these illustrations absurdist or surreal outside of the quarterly pricing?

<comment><USER10> They're free, billed quarterly. Got it.

<comment><USER11> That's absurd!

</comment></comment></comment><comment><USER12> Beautiful and minimalist style, but it isn't clear what happens when you cancel/pause the quarterly subscription.

</comment><comment><USER13> I like this. Illustrations are great and whimsical and they made my day.

</comment><comment><USER14> Idea is great. Execution and the artworks... not good.

<comment><USER15> Enjoying art is a subjective experience. Others might appreciate these illustrations.

<comment><USER16> Such as myself, I found them rather fun to look at.

<comment><USER4> Same here. Clever ideas reduced to an expressive and surreal form</comment></comment></comment></comment>


The godfather of fake news - happy-go-lucky https://www.bbc.co.uk/news/resources/idt-sh/the_godfather_of_fake_news <comment><AUTHOR> There's been a whole bunch of fake news and it all started way before 2016. I'd consider the whole premise of the Iraq War to be fake news, for example. The only reason they don't start there is that the same media now talking about fake news, helped to propagate them years earlier.

What made their fake news worse, is that it was propagated by supposedly trustworthy sources, in a serious tone. This guy seems like such a clown that you'd only "believe" him, if you're already predisposed to think these things anyway.

<comment><USER2> Okay, I need to object here: You can't say that reported lies of the officials are the same as fiction made by media even if the outcome was the same.

Media not doing good enough job to scrutinize public figures and officials are fundamentally different from media that creates content that is intentionally misleading or fake. One is screw up and the other one is fraud.

Are you going to be equally mad to a friend of yours who hears that your SO is cheating on you and tells you what he heard(and the story turns out to be incorrect) and a friend who makes up a story about your SO cheating on you?

<comment><AUTHOR> > You can't say that reported lies of the officials are the same as fiction > made by media even if the outcome was the same.

The notion that the media had no clue the official claims were thin seems extremely dubious to me. They knew. Even the fact that they didn't make a big deal out of not getting UN approval, or dismissing any doubters as unpatriotic suggests otherwise. It was simply a case of not wanting to upset their owners who in many cases stood to make a profit off the war, not wanting to seem unpatriotic, wanting to maintain "access" to high-level officials and going to the same parties as many of the officials they are supposedly watching over, (a room full of reporters was laughing even as Bush was making "jokes" about not being able to find WMDs), so there was simply no incentive to report the truth.

You can see it to this day, it's not like oopps, the media has learned from Iraq. They've been as gushy over military adventurism in Libya, Syria etc.

Luckily, the debate around Yemen is changing somewhat, if very slowly.

</comment></comment></comment><comment><USER3> I don't buy it. What is Mr. Blair doing is an equivalent of screaming "FIRE" in a theater, and then "exposing" those stupid enough to run even if there is no fire.

It reminds me of two Czech cinematographers who made a "documentary" \- Cesky sen - where the premise was that they made fake advertising for a new fake supermarket chain with things like large TVs for 5$ and so on, and then they "exposed the consumerism" of people "stupid enough to believe it" to come in droves for the mock opening.

I find this type of moralizing elitist and wrong. Garbage in, garbage out is true for humans too. If you deliberately feed people misinformation, then you have no right to complain (or feel morally superior) about bad decisions they make.

<comment><USER4> He writes stuff that is so over the top that it's obvious satire. Like The Onion article about Congress demanding a retracting stadium style roof. If you fall for an Onion article, you have noone to blame but your own gullibility and ignorance.

[https://politics.theonion.com/congress-threatens-to- leave-d-...](https://politics.theonion.com/congress-threatens-to-leave-d-c- unless-new-capitol-is-1819566457)

From their About Us page:

"DISCLAIMER: America's Last Line of Defense is a satirical publication that uses the imagination of liberals to expose the extreme bigotry and hate and subsequent blind gullibility that festers in right-wing nutjobs. We present fiction as fact and our sources don't actually exist. Names that represent actual people and places are purely coincidental and all images should be considered altered and do not in any way depict reality.

In other words, if you believe this crap you're a real dumbass."

<comment><USER3> I will repeat myself, but IMHO intent matters. Satire is fine if the goal is to expose a problem in a playful way or to take a certain argument to an extreme to expose hypocrisy.

Where it doesn't work is to show how people are stupid, while feeding them wrong (but plausible from their POV) information. Yes, people are sometimes stupid, but if you want to showcase that, I think there is plenty of material to work with, you don't have to make things up.

It's like when police makes up a crime by entraping somebody, who wouldn't do the crime otherwise. It is not helping society in any positive way.

<comment><USER4> [https://www.theonion.com/fbi-uncovers-al-qaeda-plot-to- just-...](https://www.theonion.com/fbi-uncovers-al-qaeda-plot-to-just-sit- back-and-enjoy-c-1819576375)

<comment><USER3> Exactly, this is a good example of what I am saying in [https://news.ycombinator.com/item?id=18576417](https://news.ycombinator.com/item?id=18576417)

The Onion was wrong to publish that article. Now the poor people who are not able to recognize satire will be left with an impression that America's crumbling infrastructure is a bigger threat to American way of life than Al- Qaeda. This threatens the funding for important counter-terrorism activities of the FBI and Department of Homeland Security.

</comment></comment></comment></comment></comment><comment><USER5> I'm not sure why we need another term, we already have lies, disinformation, propaganda, fraud. News is something true, if it's intentionally not true, then I don't see the point of using a new term with the word news in it.

</comment><comment><USER6> So is spreading intentional misinformation protected under free speech? What if for instance someone were to write an article about this gentleman something publicly shaming? That would be libel correct?

</comment><comment><USER7> A news article mis-representing a satirical[1] publication as "fake news". Expected better from BBC than going full meta-circular non-ironic, not-true _news_.

Particularly damning is the "The birth of the term" infobox, where authors complain > _The term 's meaning becomes fuzzy - it's also used to criticise opinion, spin and propaganda_ \- while further adding to the fuzziness of term "fake news" by mis-using it for satirical website.

\--

[1] [https://realorsatire.com/thelastlineofdefense- org/](https://realorsatire.com/thelastlineofdefense-org/) and other.

</comment><comment><USER8> I'm not even necessarily convinced the "non-fake" news is even good for people. The presentation of how content is all together like google news is possibly harmful to the human psych. As it's questionable how healthy it may be for people to digest content of every different emotion together, all in one sitting and it may even result in dehumanization subconsciously. I prefer to read my news from sources targeting my specific areas of interest and not see something negative when I'm subconsciously trying to be positive. I've also noticed how it's easy to nurture a defeatist mentality with negative news, the comments and just stumbling upon it without any intentions. News just feels like advertising, marketing and with some agenda at this point in my life. I think it should be irrational to assume the responsibility is on normal everyday people to be aware of all this. Fake news just seems like everyday "news" that is serving an agenda and is no different when it comes to negativity brought into society.

</comment><comment><USER9> it's sad when you run a satire site and are labeled fake news simply because people want to believe it (despite several fat warnings on the site that it's all satire). if you follow Western comedians around these days many will point out that comedy has become more difficult than ever.

people are even less able to recognize fake-news which were put forward by their own governments. In the West there are many puppet masters too that pose as investigative journalists (e.g. @pwnallthethings) but are most certainly in the pocket of intelligence community.

Some noteworthy fake news to remember:

      - Saddam's Bombs? We'll Find Them (2003): https://www.nytimes.com/2003/06/20/opinion/saddam-s-bombs-we-ll-find-them.html

      - Why We Know Iraq Is Lying (2003): https://www.nytimes.com/2003/01/23/opinion/why-we-know-iraq-is-lying.html

</comment><comment><USER10> Why is this story flagged?

</comment><comment><USER11> why does The Onion not count as fake news?

<comment><USER3> I think it is a moral responsibility of the satirist to make sure that, if people misunderstand the satire, the result is harmless to them and society at large. In particular, by not feeding the existing stereotypes.

It's like with any other prank. If it does a real harm, it is not funny anymore.</comment></comment>


When grandmasters blunder - <AUTHOR> https://medium.com/@jdoliner/when-grandmasters-blunder-a819860b883d

<comment><USER2> This article classifies blunders by their material value. I'd be interested to see similar analysis classifying blunders based on their depth and the player's rating. For example, failing to see a simple capture would be a depth 1 blunder. Failing to see an opponents capture response would be a depth 2 blunder. Failing to see a knight fork opportunity would be a depth 3 blunder. Failing to see your opponents knight fork opportunity would be a depth 4 blunder.... etc.</comment>


Show HN: Sysplatter – all server metrics in one place - <AUTHOR> https://sysplatter.com/ <comment><AUTHOR> Hey, hackernews!

I've build sysplatter to accomodate my open source Golang tool server-seer ( [https://github.com/andriussev/server- seer](https://github.com/andriussev/server-seer) ), which basically runs any defined commands at any interval. server-seer then send the data to sysplatter.

Sysplatter allows to set up a number of dashboards and provides some customization for them.

In the start, I've built that for personal projects and I currently use it for some more intersting stuff for sysplatter itself, like, total number of data entries, number of active dashboards, etc.

By the way, server-seer does not have to be used with sysplatter and can be used by itself 100%. There's a small example of the API call that it does and you can build whatever tool you want for handling the data (or you can just use the local sqlite database).</comment>