Vint Cerf: SOPA means 'unprecedented censorship', will undermine security - <AUTHOR> http://cacm.acm.org/news/144398-vint-cerf-sopa-means-unprecedented-censorship-of-the-web/fulltext

<comment><USER2> His actual letter (from the CNET article): [http://news.cnet.com/8301-31921_3-57344028-281/vint-cerf- sop...](http://news.cnet.com/8301-31921_3-57344028-281/vint-cerf-sopa-means- unprecedented-censorship-of-the-web/)

December 14, 2011

The Honorable Lamar Smith Chairman, Committee on the Judiciary U.S. House of Representative 2138 Rayburn House Office Building Washington, DC 20515

Dear Chairman Smith:

I appreciate the opportunity to express my concerns about and opposition to the managers' amendment to the Stop Online Piracy Act (SOPA) and, in particular, the "technological solutions" related to the Domain Name System (DNS) and search engines.

By way of background, I am a Vice President and the Chief Internet Evangelist for Google. I also serve as a Fellow of the Institute for Electrical and Electronics Engineers (IEEE), the Association for Computing Machinery (ACM), the American Association for the Advancement of Science (AAAS), and the American Academy of Arts and Sciences, and I am a member of the National Academy of Engineering.

I have held positions at MCI, the Corporation for National Research Initiatives, Stanford University, UCLA and IBM. Until 2007 I served as chairman of the board of the Internet Corporation for Assigned Names and Numbers (ICANN) and I was the founding president of the Internet Society.

As one of the "fathers of the Internet" and as a computer scientist I care deeply about issues relating to the Internet's infrastructure. In that spirit I wish to join the Internet and cybersecurity experts who have already expressed concern about the original version of SOPA's DNS provisions. Former NSA general counsel Stewart Baker, Sandia National Laboratories, small businesses such as OpenDNS, inter-industry groups such as the Messaging Anti- Abuse Working Group (MAAWG), five leading DNS engineers (Steve Crocker, David Dagon, Dan Kaminsky, Danny McPherson, and Paul Vixie), and dozens of individual security experts have detailed these concerns in previous letters.

Unfortunately, the amendments to SOPA do not resolve the fundamental flaws in this legislation; the bill will still undermine cybersecurity including the robust implementation of DNS Security Extensions, known more commonly as DNSSEC.

Section 102(e)(2)(i) continues to require service providers to block access to sites. While that provision no longer mandates DNS blocking in order to accomplish that goal, it still permits falsifying IP addresses in response to domain name resolution requests. Any response that provides a false IP address triggers potential damage to the intent of DNSSEC.

If these changes were meant to dispel the concerns of the security community, then they fall far short of the mark. The Section 102(e)(2)(ii) "safe harbor" effectively singles out the manipulation of DNS as the preferred mechanism for blocking access to sites. A key presumption in the Internet design and architecture is the global consistency of DNS lookup responses.

I continue to have concerns regarding the efficacy and wisdom of this legislation. First, attempts to manipulate DNS will reduce the utility of DNS as our chief mechanism for locating sites, and encourage abusers to adopt alternative mechanisms, such as IP address lists. Second, clients of the infringing content can readily change their DNS settings to utilize offshore DNS resolvers. Third, sites dedicated to infringement have many options for evading these measures, such as registering multiple domain names with offshore registries in order to stay ahead of court orders. Fourth, falsifying responses to domain name resolution requests will compromise the "downgrade resistance" of next-generation improvements to DNSSEC, because systems that do not receive a signed answer from a resolver will fall back to accepting unsigned responses to resolve a domain name.

Thus, even with the proposed manager's amendment, SOPA's site-blocking provisions remain problematic. They would undermine the architecture of the Internet and obstruct the 15 year effort by the public and private sectors to improve cybersecurity through implementation of DNSSEC, a critical set of extensions designed to address security vulnerabilities in the DNS.

This collateral damage of SOPA would be particularly regrettable because site blocking or redirection mechanisms are unlikely to make a significant dent in the availability of infringing material and counterfeits online, given that DNS manipulation can be defeated by simply choosing an offshore DNS resolution provider, maintaining one's own local DNS cache or using direct IP address references.

The search engine remedy also suffers from the fact that it will not be effective in preventing users' access to illegal, offshore websites. A congressional "tech mandate" on search engines to delete a domain name from search results does not result in the website disappearing. Users can and do today find their way to these websites largely without the help of search engines. Relative to the questionable efficacy of this proposed remedy, requiring search engines to delete a domain name begins a worldwide arms race of unprecedented "censorship" of the Web.

Rather than continuing to promote ineffective and harmful "technical" solutions as those found in the managers' amendment to SOPA, I urge Congress to pursue a more tailored, effective approach, such as the "follow-the-money" tactic. Such an approach would cut off funding mechanisms to rogue foreign sites by withholding their ability to generate advertising revenue and their ability to have payments processed.

Sincerely,

Vint Cerf

</comment><comment><USER3> My prediction is SOPA will not pass. In the near future, a new bill will be introduced. Similar, but different theme. They will target child pornography. "SOCPA": "Stop Online Child Pornography Act"

Addendums to this new bill will be added late in the process, containing all the major clauses that the entertainment industry wants, expanding the powers from simply controlling child pornography to controlling anything that is copyrighted. This version of the bill will pass and there's not much we can do to stop it.

<comment><USER4> The movement should create advocate SOICA, Stop Online Internet Censorship Act. The opposite of SOPA and likely SOCPA.

This means that congress would have to repeal this SOICA in order to pass SOPA related laws.</comment></comment>


Ask HN: Curious about the Tesla Self Driving Computer - <AUTHOR> I am very curious to know what HN users think about which HW ip(licenses) they are using. Unlikely to be able to develop everything in house within 3 years. GPU + Deep learning accelerator + Video encoder/decode. <comment><USER2> Jim Keller designed it for them.

<comment><USER2> There's a picture of the circuit board on reddit and discussion below [https://www.reddit.com/r/teslamotors/comments/bga5zt/tesla_f...](https://www.reddit.com/r/teslamotors/comments/bga5zt/tesla_full_selfdriving_computer_7k_resolution/)</comment></comment>


Data Engineering Patterns with Apache Airflow [video] - <AUTHOR> https://www.youtube.com/watch?v=23_1WlxGGM4 <comment><USER2> Apache Airflow seems like a really interesting project but I don't know anyone using that can give a real life pros/cons to it.

Anyone here dares to give some feedback in that sense?

Ps: Why do people still use Prezi? It gives me vertigo.

<comment><USER3> We tested it, but the performancd was bad. We needed hundred workflows with few hundred taks each, and Airflow would just topple over daily.

We ended up with proprietary tool from Teradata thats basically Airflow written in perl - but it can handle all the work.

Other than scalability, Airflow is pretty nice.

<comment><USER4> [full disclosure, I'm the creator of Airflow]

Many environments run tens of thousands of concurrent tasks, and hundreds of thousands of tasks daily. The list of companies using Airflow speaks for itself [https://github.com/apache/incubator-superset#who-uses- apache...](https://github.com/apache/incubator-superset#who-uses-apache- superset-incubating)

But hey, it's like anything, you have to do a bit of work to get distributed systems to run at scale. There are now hosted solutions to help with that (Google Cloud Composer and Astronomer.io)

<comment><USER5> [https://github.com/apache/incubator-airflow#who-uses- airflow](https://github.com/apache/incubator-airflow#who-uses-airflow)

:)

</comment></comment></comment></comment><comment> xkcd-sucks What strategies do people use to make Airflow behave like an "event-driven" scheduler versus a "time-driven" scheduler? Like, for example, processing data as it is received versus processing data at set time intervals

<comment><USER6> (Newbie Airflow user here). I believe one easy way to do it is by using Airflow's 'sensors'.

Sensors are operators which _poke_ continuously with an action until it returns True (eg. until a file exists, an API gives a specific response, a process/query has finished).

Another way to do it would be to 'XComs', small pieces of information flying between DAGs, or 'Triggers', but these require some more setup, and IMO depend more on the way you're setting up your tasks.

<comment> xkcd-sucks Yeah the issue is once a sensor fires once, it doesn't reset and keep firing on new data

My homegrown solution is a sensor at the beginning, and at the end an airflow api call to trigger a dag run of the same dag. Not DagRunOperator because then no dag would never finish due to infinite recursion

It seems kinda sketchy so I'm considering a lower level Celery implementation or even GenStage

</comment></comment></comment><comment><USER7> I've no idea what that presentation thing is, but no. It's stuttering, grinding my mac to a halt, makes skimming through tedious.

<comment><USER8> I couldn't be bothered to even pay attention to the material. I found the presentation repugnant.

From Prezi's homepage: "Harvard researchers find Prezi more engaging, persuasive, and effective than PowerPoint.". My experience was the complete opposite. The medium completely destroyed the message.

</comment></comment><comment><USER4> Here's the actual talk: [https://www.youtube.com/watch?v=23_1WlxGGM4](https://www.youtube.com/watch?v=23_1WlxGGM4)

<comment><USER9> Ok, since people were complaining so much about the previous url, which was [https://prezi.com/p/adxlaplcwzho/advanced-data- engineering-p...](https://prezi.com/p/adxlaplcwzho/advanced-data-engineering- patterns-with-apache-airflow/), we've switched to the video. Thanks!

<comment><AUTHOR> Thank you for switching to the video - I was late to response due to different timezone. (I've chosen slide over video thinking people generally don't like video. Seems the slide format was more disturbing)

</comment></comment></comment><comment><USER10> This is the type of slides that would benefit HN if they had the video with them as well.

<comment><USER11> [https://en.wikipedia.org/wiki/Matthew_7:7%E2%80%938](https://en.wikipedia.org/wiki/Matthew_7:7%E2%80%938)

:

[https://www.youtube.com/watch?v=23_1WlxGGM4](https://www.youtube.com/watch?v=23_1WlxGGM4)</comment></comment>


Child abuse images hidden in crypto-currency block chain - <AUTHOR> https://www.bbc.com/news/technology-47130268 <comment><USER4> Possession of this type of image is a federal crime in the US.[1] When I took a digital forensics course about five years ago, we were told that if we ever discovered any on a system we were investigating, it needed to be reported to the FBI immediately or we could also be charged.

If someone does this in a way that goes unnoticed, and it's discovered after long enough that rolling back is impractical, does that effectively kill the blockchain where the data is embedded, at least as far as the US and countries with similar laws are concerned?

[1] [https://www.justice.gov/criminal-ceos/citizens-guide-us- fede...](https://www.justice.gov/criminal-ceos/citizens-guide-us-federal-law- child-pornography)

<comment><USER5> Related:

What's the smallest piece of data that qualifies?

Can a 16x16 image be illegal?

What about a 64x64 image?

What's the situation like if you have two chunks of data (perhaps at two separate locations on the blockchain) and only if you XOR them you get the illegal image?

<comment><USER6> Like most things, there isn't a magical number, and the notion that there should be (or that there is, but not codified) is a dream that tech people would have to imagine how the world works. They think they outsmart the law with various technicalities and hypothetical solutions - but in the end it comes down to a judge's interpretation, and no amount of "well actually"ing will get you around that.

So you might think "a 16x16 image can be illegal?! ridiculous!" \- well tough, the law doesn't care about how many pixels the image contains, despite a hacker's incredulity.

<comment><USER7> Well as a non pedophile I have no desire to possess child porn, but I also don't want to be framed or blackmailed over innocent data that becomes illegal under some technicality like "when xor'd with the blackmailer's carefully constructed data this becomes child porn" \- because the latter could happen to anyone?

<comment><USER6> That's an issue that's mostly irrelevant to the law, though. Even if you were to receive XOR'd data (or something encrypted), simple possession wouldn't be illegal if you reasonably weren't aware that it could be interpreted that way, or (as someone else pointed out) at least in the UK you didn't have the "knowledge or tools" for such a decryption. Intent obviously matters here, among a host of other factors. That was really my point all along - <USER2> this as detached from the actual workings of the law and situations is a fun mind game for hackers, but is ultimately irrelevant when it comes to human judges interpreting human laws.

</comment></comment></comment></comment></comment><comment><USER8> > He said there was "ongoing research" to find ways to remove such content > from block chains but these were "not yet mature".

Either you have centralization, which nobody wants, or you have a bot that everyone agrees on to censor things, and people will will always find ways around bots. Are there really any other alternatives?

<comment><USER9> The easiest solution is probably just limiting how much data you can add to the ledger. There's no real reason why people need to add more than 10kb of information to a transaction. Cryptocurrencies aren't meant to be image hosting platforms anyway.

<comment><USER10> Images can be split into 10kb blobs...

<comment><USER9> Then there's also a million other ways to store or transmit images if you use tiny segments. Encode the image in base64 and you can use Twitter, reddit comments, SMS etc.

The point is to make it unfeasibly hard to store/send the images, not impossible.

</comment></comment></comment></comment><comment><USER11> Aren't we getting back to the hypothetical question that any image, digitally encoded, would theoretically exist at some index of any infinite number (e.g. Pi), given enough digits? Is the possession of Pi then illegal?

<comment><USER8> Very far-off digits of π (assuming π is even a normal number) are not easily accessed or enumerated. In fact, you'd probably need more information to encode the index and length of your sequence than you would to just write the data out. In contrast, a block chain is easily downloaded and traversed, indices are small, and most importantly, there is a very, very obvious intent to distribute illegal content. I don't think that these situations are comparable.

<comment><USER12> "The Bailey–Borwein–Plouffe formula (BBP formula) is a spigot algorithm for computing the nth binary digit of the mathematical constant π using base-16 representation. The formula can directly calculate the value of any given digit of π without calculating the preceding digits. (...) Though the BBP formula can directly calculate the value of any given digit of π with less computational effort than formulas that must calculate all intervening digits, BBP remains linearithmic (O(n log n)), whereby successively larger values of n require increasingly more time to calculate; that is, the "further out" a digit is, the longer it takes BBP to calculate it, just like the standard π-computing algorithms."

[https://en.wikipedia.org/wiki/Bailey%E2%80%93Borwein%E2%80%9...](https://en.wikipedia.org/wiki/Bailey%E2%80%93Borwein%E2%80%93Plouffe_formula)

</comment></comment></comment><comment><USER13> So, the easiest for the government to destroy blockchain is to supplant their own illegal images onto the blockchain themselves...

<comment><USER14> No, the easiest for the government to destroy blockchain is to just declare it illegal.

<comment><USER15> Do you seriously think that will be effective? Have you never heard of marijuana?

<comment><USER14> Well, in that case embedding child porn on it will not help either, would it? I was just highlighting the massive fallacy of parent.

<comment><USER15> I think that attempting to pretextually take action based on some threat (and let's be honest, "think of the children" is one of the primary vectors for this) is more likely to curry political favor (and provide political cover) than mere censorship.

So yes, I think that embedding illicit material is a more likely tactic than prohibition. The latter - because it will be such a colossal failure - <USER3> only serve to show the state's inability to control the internet, and that's exactly what the state is trying to hide right now.

<comment><USER14> To use your own argument, "child porn being illegal didn't work for stopping child porn, did it"?

The second huge fallacy (you are also making it) is that the government wants to ban crypto, but is afraid of saying it and comes up with all kinds of contrived tactics.

<comment><USER16> > The second huge fallacy (you are also making it) is that the government > wants to ban crypto, but is afraid of saying it and comes up with all kinds > of contrived tactics.

"Government" is a term that covers an awful lot of groups with differing agendas.

Law makers make laws. But "government" includes spy agencies, law enforcement, central banks, competing political actors, as well as just rogue individuals.

Making cryptocurrency illegal would require having some degree of popular support (which maybe they would have).

One dude with an agenda, though, could poison the blockchain with a single image. And that one dude (or dudette... i shouldn't be so close minded) could very well be a high-ranking member of a government agency of some sort.

To be clear, I'm not suggesting there's any evidence for this. Just that it doesn't seem entirely unreasonable to consider the possibility.

</comment></comment></comment></comment></comment></comment></comment><comment><USER17> The inevitability of "defacing" the blockchain was discussed back in May 2017 as well: [https://news.ycombinator.com/item?id=14434786](https://news.ycombinator.com/item?id=14434786)

Global public blockchains are too tempting a target for that type of thing. It will interesting to see how this plays out and whether government agencies respond (or ignore it).

<comment><USER18> > It will interesting to see how this plays out and whether government > agencies respond (or ignore it)...*

I don't think I'd count on government agencies ignoring child abuse images.

</comment></comment><comment><USER19> This makes me think. Any data in a certain form could be used to generate an image.

What if someone added data in a form that only later after a viewer appeared will it reveal this type of content. This would make any system with that data immediately illegal.

Looking down the road what it was encoded in dna would it be illegal for someone to read another person's dna?

If someone had a tattoo on there face of one of these images would security cameras need to wipe any data caught?

<comment><USER5> Remember that every imaginable image is also somewhere in the digits of pi. You "just" have to find it. Does that make the number pi illegal? I guess not. Does it make programs illegal that can calculate those digits of pi? Doesn't sound reasonable, does it?

<comment><USER20> This analogy to "storing information" in the digits in pi is simply incorrect. The reason why it's incorrect is that in order to "store information", your access key must by definition be smaller than the data you are storing. This is not the case for "hiding" things in the digits of pi. In general, the index offset needed to find something will have more bits than the target information. This is clearly not the case for storing information in a blockchain as you only need a small index to find the transaction.

</comment></comment></comment><comment><USER21> Given any arbitrary stored sequence of bytes, one can always devise an algorithm which converts those bytes into other meaningful sequences of bytes. This is interesting because it would appear that the liability of possessing CP on the blockchain is dependent on the ease of converting those bytes into a meaningful sequences of bytes of an image file, but where does it stop? Do the bytes have to be a raw sequence of exact image bytes stored contiguously? Does simply flipping the bits make the byte sequence lose enough 'meaning' to get rid of liability? If one requires the bytes alone to have the 'meaning', then what about image compression and the associated algorithms? There are some heavy-duty thought experiments with this type of problem that the courts are probably ill-equipped to address.

</comment><comment><USER22> I have multiple questions.

> In addition, Money Button has banned the user that uploaded the material.

> It has also put in place filtering systems to spot when anyone tries to > upload similar content.

> "We have all the information we need to track down criminals and prosecute > them."

Doesn't blockchain technology exist to prevent censorship and provide anonymity (in terms of not being able to link transactions to a real life identity)? So why would anyone want to use a client that collects and stores this kind of information about them? Doesn't it (almost) completely erase the point of having a blockchain in the first place?

And how is this case handled now? Money Button said they forwarded the identity of the uploader to the authorities but is anyone gonna do anything about the problematic data?

</comment><comment><USER23> So, possession of the Bitcoin blockchain is now illegal, according to the laws of most developed countries.

<comment><USER24> This is "Bitcoin Satoshi Vision", which is completely different and appears from a quick Google search to be completely irrelevant.

<comment><USER25> Of course it's completely irrelevant. It's a cryptocurrency.

For a cryptocurrency, it's relatively important. It's not one of the big boys, but it's supposedly worth $1 billion.

</comment></comment></comment><comment><USER26> How do chains which value absolute immutability deal with this? Such as Ethereum Classic.

<comment><USER27> They don't.

</comment></comment><comment><USER28> Ah, this old chestnut.

So from the last time this came up: [https://thebitcoinnews.com/no-there-isnt- child-porn-on-the-b...](https://thebitcoinnews.com/no-there-isnt-child-porn- on-the-bitcoin-blockchain/)

With the important bit here:

 _80 bytes is all that OP_RETURN can store, and what's more that information is subject to deletion. That's because bitcoin nodes are capable of pruning "provably unspendable" UTXOs for efficiency, which include OP_RETURN data._

TL;DR the last time the schadenfreudists were looking for something to point and laugh at on this front, they didn't understand the technicalities of what they were talking about _at all_.

This BBC article makes an interesting claim:

 _" In January, the amount of data that could be added to the BSV block chain was increased significantly._

 _Before that, people could generally add only short chunks of text or web links to the block chain._

 _But now it is possible to add full images in an encoded format. "_

I've never heard of this BSV coin before, so I don't know the details of this change. Assuming it's a fork of bitcoin and all they did was increase the allowable size of the OP_RETURN, this will once again be sensationalist reporting with no substance. I'd imagine the first thing BSV nodes would do is prune the OP_RETURN garbage because who wants to be paying the storage cost of other peoples embedded images?

But hey, the BBC article is extremely light on details. Maybe this is something that can't be pruned so easily? Does anyone know?

<comment><USER29> Following links from the article:

[https://blog.moneybutton.com/2019/01/26/how-we-added- support...](https://blog.moneybutton.com/2019/01/26/how-we-added-support-for- giant-op_return-data-in-money-button/)

[https://www.yours.org/content/the-unfuckening-of- op_return-b...](https://www.yours.org/content/the-unfuckening-of- op_return-b10d2c4b52da)

" _We're about to take the red pill and see how deep the rabbit hole of on chain data storage really goes. Tokenized is ready for this, yours.org is ready for this, @_unwriter and his plethora of tools are ready for this as are others. Calvin Ayre has previously spoken of the 'Cambrian explosion' of creativity and I believe that unbounded-by-anything-except-fees data storage will be a key trigger for this._ "

<comment><USER28> Yep, so it is OP_RETURN and therefore can and will be pruned.

</comment></comment></comment><comment><USER30> BSV is, apparently, yet another bitcoin fork — it's a 4 month old Chinese bitcoin fork with 1 released version and a very vague website[1]. BBC does not explain at all how this differs from Bitcoin or the relevance of this coin.

[1]: [https://bitcoinsv.io](https://bitcoinsv.io)

<comment><USER31> It's principally backed by Craig Wright (Australian with dubious claim of being Satoshi, original creator of Bitcoin) and Calvin Ayre (investor born in Canada). I wouldn't categorize it as Chinese (Bitcoin Cash/BCH is probably better categorized that way, being backed by Bitmain)

<comment><USER30> Thanks for the correction. I was assuming going off the Chinese flag on their site and the vague descriptions.

</comment></comment></comment><comment><USER32> This is old news.

[https://www.dailydot.com/business/bitcoin-child-porn- transac...](https://www.dailydot.com/business/bitcoin-child-porn-transaction- code/) (2013)

[https://news.bitcoin.com/no-isnt-child-porn-bitcoin- blockcha...](https://news.bitcoin.com/no-isnt-child-porn-bitcoin-blockchain/)

[https://www.wired.com/story/why-porn-on-the-blockchain- wont-...](https://www.wired.com/story/why-porn-on-the-blockchain-wont-doom- bitcoin/)

</comment><comment><USER33> People were worried about this in 2011. I haven't heard of any doors getting kicked for having a copy of the blockchain.

</comment><comment><USER34> This is why data regulation will never work. GDPR and Copyrights included. Nothing can be done about it, short of banning blockchains.

</comment><comment><USER14> > _Returning to our analogy, the publisher of a best-selling book might > announce that the first letter of every line in the book can be interpreted > as a sequence of pixels that represents a pornographic image of a child. Can > the police then arrest owners of the book? Common sense suggests that the > answer is no, and most lawyers would agree._

[https://www.wired.com/story/why-porn-on-the-blockchain- wont-...](https://www.wired.com/story/why-porn-on-the-blockchain-wont-doom- bitcoin/)

</comment><comment><USER35> So is it going to be illegal to have the full blockchain data? That could prevent a lot of miners from operating</comment>


Dallas school district starts video game teams on 64 campuses - <AUTHOR> https://www.dallasnews.com/news/education/2019/10/13/friday-night-bytes-dallas-isd-starts-video-game-teams-on-64-campuses/ <comment><USER2> Quote pulled for critical context - The schools want everyone involved in an extracurricular activity. This solves tons of issues - bad home life, gangs, loneliness/depression, etc.

> Finding a niche for all students to participate in an extracurricular > activity is one of the DISD's key goals. Trustees made extracurricular > participation a major priority in 2017, setting a districtwide goal of 78% > participation by the 2021-22 school year.

<comment><USER3> >This solves tons of issues - bad home life

Not at all. It's just more excuse to babysit teens. Bad home life will only be fixed by raising living standards, by reducing number of hours parents need to work, providing vacation time, etc. But that would require redistributing wealth instead of raising property taxes a couple percent.

<comment><USER4> It seems like there's an awful lot of useful improvement in the space between "doing nothing" and "redistributing wealth", so I commend the DISD for not letting perfect be the enemy of good.

</comment></comment></comment><comment><USER5> I really like this idea. I bonded with friends over video games in highschool. I would have probably benefited if a coach were involved - informing and teaching me and my friends about teamwork, strategy, and training skill/tactics.

The competition and comradery of playing against other teams in the area seems to me like it would make for higher stakes (involving pride and an in-person level of gamesmanship). I'd argue these are important skills in living a social life.

I also think that including some level of physical exercise, even if just as an ante to participate under the school's charter of the sport, would make students more healthy. I don't know if any research or statistcs exist correlating cardiovascular health to markers associated with better video game performance. But it would not surprise me if a lap or two around a track before a practice or competitoin would sharpen minds, reflexes, nerves, etc. If nothing else, it would reduce apprehension to adminstrators sactioning kids playing video games.

<comment><USER6> When I was in the Marine Corps, I developed a "gaming workout routine" to keep in shape and still have time to play video games where I didn't even have to leave the desk, and it worked wonders. I have always thought it would be awesome to somehow make it a more popular thing. For a while I have thought VR might be the killer app that makes it a reality.

For those interested, it was mostly just bodyweight exercises, eg between counter-strike rounds do crunches at desk, pushups, dips, etc. When I finally buy a house I have this idea that I want to design my computer desk to also be a workout desk... pullup bar and everything.

<comment><USER7> my friends and i used to play workout games (similar to drinking games) where if you die you do x pushups, if you get a kill everyone else does pushups, if your team loses everyone does pushups, etc

</comment></comment></comment><comment><USER8> I hope this spreads.

Team games---LoL, DotA, Overwatch---have been twisted and distorted by their respective companies to try to fit the wishes of their playerbase, who generally play these games solo. Thus team games steadily become less and less team-oriented, _or_ more team-oriented, at the cost of ham-handed algorithmic authoritarianism (e.g. role queues).

But if stuff like this takes off, maybe companies will be more true to their vision and less pliable.

<comment><USER9> At least in the case of Overwatch, role queue feels more like an attempt to assure a minimum level of viability for each team and less like an authoritarian approach to controlling how the game is played.

<comment><USER10> Basically this - it reduces variance in the games you play, along with increasing MMR accuracy. There's some unfortunate side effects (it's a long wait to solo queue as DPS, some strategy options are reduced), but overall I'm happy with the results.

<comment><USER8> Sure, it reduces a _certain kind_ of variance for the solo queue experience. It increases it other kinds, though. Removing player choice decreases flexibility and ability to react to changing conditions. So your team is guaranteed to fit a certain design---but it might very well be that that design is ill-fitted to conditions. It's Waterfall for video games. There were other, cleaner ways to work toward the same goal, that didn't violate the core design and cripple player freedom.

I'm a Lisp guy, so you can probably guess my opinions on whether it's "worth it" or not to aim for The Right Thing. And one thing I've found in my career is that the teams and individuals that make the best use of Lisp are fairly _disciplined_ about it---they care a lot about functional purity, documentation, interopability, etc.

In other words, they're still operating under restrictions, but they're _self- imposed_ rather than incidental. This foundation of order lets them do crazier things on top of it.

Reducing variance in one's play is the equivalent of writing code without side-effects---it's the fundamental principle of playing nicely with others in its respective domain.

Just as this is best achieved by developer education and discipline in the programming sphere, there needs to be a _player ethic_ of reducing variance (which is why I'm glad to hear about Dallas). And without that, the problem will persist, showing its face in one form or another.

MMR accuracy is probably true, but sheesh, only in a Goodheart's Law kind of way. If it was inaccurate before, that suggests a problem with the _statistic_ , not the game! In a complex game like OW, MMR was always going to be most accurate when applied to teams rather than individuals.

</comment></comment></comment></comment><comment><USER11> I don't see a problem with this if there is demand. If anything, this is schools catching up with reality. Kids share their gaming experience with one another. It is a social thing, and they've been using Twitch and Youtube to create alternative media choices for some time. Kids even stage up Roblox and Minecraft videos to tell stories and present shows.

Still, I do think it's sad that the bro culture has completely erased every other kind of competitive video games. Most of our top competitive games (particularly those made in the US and Europe) replicate some of the worst aspects of human society. Lethal conflict, industrialized warfare, conflict over scarcity, imperialism simulators, and a view of science as a tech tree with resource unlockables. It's a fairly toxic view of the world and it taints a lot of kid's viewpoint of the world.

<comment><USER12> Violence is entertaining on some level. Even cutesy games like Mario have him stomping on mushrooms and turtles and avoiding deadly obstacles. I've also heard it said that all good stories involve conflict. It's a part of human psychology for better or worse. It's why we watch sports. It's why we play video games. It's why dogs play fight. It's deeply embedded in our chemistry.

<comment><USER11> > Violence is entertaining on some level. Even cutesy games like Mario have > him stomping on mushrooms and turtles and avoiding deadly obstacles.

Sure, but so are lots of things. It's just a cultural artifact of the west's love and expectation of violent solutions to conflict that we glorify this activity over others. For example, a game of Go is surely a conflict between two people, but unlike a game of Overwatch or the like it involves a lot fewer guns, bombs, and patchy plots about world governments authorizing unilateral violence.

> I've also heard it said that all good stories involve conflict.

This is a cultural lens. Lots of stories don't have an external conflict and they can be great. You know what's a great example of this? The Moive Jacob's Ladder. It was about someone reflecting on their life with pride and regret, not actual conflict.

People frame this, unsurprisingly, as "Man vs Nature". But we might as well also define it as "Human Overcomes Hardship." And that line seems much more natural. Surely much of our hardship is inflicted by our peers, but is it a deliberate "versus" scenario? I suspect not.

<comment><USER13> >Sure, but so are lots of things. It's just a cultural artifact of the west's love and expectation of violent solutions to conflict that we glorify this activity over others. For example, a game of Go is surely a conflict between two people, but unlike a game of Overwatch or the like it involves a lot fewer guns, bombs, and patchy plots about world governments authorizing unilateral violence.

I don't think this really has anything to do with the west. Non western cultures have been producing violent art before the west even existed, and if you look at modern non-western movies and games, they aren't less likely to involve violence.

As for Go, people in countries that play Go also play plenty of games that are violent, and plenty of people in the west play Checkers.

<comment><USER11> I can't work out what this post is saying. What do you mean?

My point about Go was that Go is still a game of conflict, but it's not a game where we murder one another or try to anthropomorphize the pieces to make it more like actual killing.

<comment><USER13> > It's just a cultural artifact of the west's love and expectation of violent > solutions to conflict that we glorify this activity over others.

The implication to this sentence is that the west is unique in this regard. The only non-violent exemplar game you presented being a non-western game strengthens this implication.

The point of my post was to make an argument against that suggestion. If you didn't mean to imply that, then it really has no point.

However, if that was the case why mention the west at all? Particularly when the OP gave a non-western example (Mario) in the first place.

<comment><USER11> > The implication to this sentence is that the west is unique in this regard. > The only non-violent exemplar game you presented being a non-western game > strengthens this implication.

Unique? No. Distinct in character, yes.

> The only non-violent exemplar game you presented being a non-western game > strengthens this implication.

Minecraft. Night in the Woods. Slenderman. Kerbal Space Program. SpaceChem, TIS-80, InfiniMiner, InfiniFactory, a huge portion of Stellaris's gameplay. Untitled Goose Game. Online Go. Candy Crush. Many many subgames in Roblox.

Can you stop this line of questioning now? It's boring.

<comment><USER13> >Unique? No. Distinct in character, yes.

So not unique. But actually unique?

>Minecraft. Night in the Woods. Slenderman. Kerbal Space Program. SpaceChem, TIS-80, InfiniMiner, InfiniFactory, a huge portion of Stellaris's gameplay. Untitled Goose Game. Online Go. Candy Crush. Many many subgames in Roblox.

Had you used those examples in your original post, then it would have had less of that implication.

>Can you stop this line of questioning now? It's boring.

If you weren't implying that the west has a "love and expectation of violent solutions" while the rest of the world does not, or that the west has more of a "love and expectation of violent solutions" than the rest of the world, then just say so.

Or you are free to stop responding if you're bored. I won't be offended.

<comment><USER11> > >Unique? No. Distinct in character, yes.

> So not unique. But actually unique?

I don't know what you think "distinct" means but it's obviously different from the sense I'm using.

> Had you used those examples in your original post, then it would have had > less of that implication.

I've had several threads about this. Sorry I don't replicated every aspect of the entire conversation for your convenience. Most folks aren't bringing the "aren't you a japanophile insulting my gloriously progressive culture" angle to the table, so I haven't felt the need to specifically defend against that ridiculous argument in every post.

> If you weren't implying that the west has a "love and expectation of violent > solutions" while the rest of the world does not, or that the west has more > of a "love and expectation of violent solutions" than the rest of the world, > then just say so.

Perhaps being less defensive would be more productive in the future. Sadly, I'm taking your offer to ignore you from here on out. Thanks for reminding me why this place is such a waste of time.

<comment><USER13> >Most folks aren't bringing the "aren't you a japanophile insulting my gloriously progressive culture" angle to the table.

Wow maybe you should tone it down a bit. You've actually manage to use an ad hominem in an attempt to accuse me of the of the same. Also notice that there's another person who had the same impression I did, so if you didn't mean to leave that impression, you should probably edit your post. If you did, then you shouldn't be upset when someone offers a counterpoint.

>Perhaps being less defensive would be more productive in the future. Sadly, I'm taking your offer to ignore you from here on out.

Except for this one last attempt to get the final word in right? If you're going to ignore me, ignore me, you don't need to keep making one last reply telling me that you're going to do it.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> This is a really interesting phenomenon we noticed as started doing some research into esports: There's a ton of interest in organized game teams as perhaps an alternative to traditional sports for students with different proclivities.

This is just one example, but I suppose what I'm trying to say is that this will likely become the norm not the exception.

</comment><comment><USER15> I would really like to see them emphasize sportsmanship and in a small way help try to make the gaming related community on the internet a bit nicer.

</comment><comment><USER16> "Interscholastic sports spread rapidly from the 1930s through the 1950s, at a time when the medical and physical education communities were opposed to competitive sports for elementary and junior high, and occasionally high school, students." — [https://education.stateuniversity.com/pages/2443/Sports- Scho...](https://education.stateuniversity.com/pages/2443/Sports-School.html)

</comment><comment><USER17> I rather have my kids play sports outside. But I guess this is a case of "if you can't beat them join them"

<comment><USER18> Best e-competitors need body training, this could be motivating.

</comment></comment><comment><USER19> The headline made me think it was about creating some kind of competition to _create_ video games, rather than _playing_ them. Alas, not.

I still think that could have been an exciting idea.

</comment><comment><USER20> Something that makes you think "Why the hell didn't we have this 30 years ago!"

</comment><comment><USER21> I'd say it might be more educational if they are on C64 machines.

</comment><comment><USER22> Finally a college team I can get behind!

</comment><comment><USER23> Hopefully this helps make video gaming a more community oriented activity instead of something done at home alone.

</comment><comment><USER18> Competition of the mind, yes!

<comment><USER11> I get the sentiment, but I don't think video game competition isn't deeply physical in nature. Sure, experience and kinetic intelligence matter a lot in video games, but as any fighting game player can tell you: some folks just have fast reflexes and can train their bodies to react to even your best setup. Games build in cooldowns, frame locks and combos to help smooth out these ability curves but there is a lot of raw physical ability in pro gaming.

But I have to ask, isn't the pointless, manufactured competition actually the worst part of all this?

Games could recreate any universe we can imagine. Worlds without scarcity, worlds without conflict, worlds deeply simulating fantastical aspects of an alternative universe where any experience is possible. Weirdly, all those games end up with people pointing guns at one another.

Even a lot of AR games try to recreate all the "fun" of urban warfare by manufacturing. It's pretty depressing, if you ask me.

<comment><USER24> > Games could recreate any universe we can imagine. Worlds without scarcity, > worlds without conflict,

The thing is, all that is _boring_. If there is no scarcity, there is no progression. This can be OK if there is other sources of conflict like in Kerbal Space Program sandbox mode where you have an unlimited amount of parts and Kerbals to build with but you have to overcome environmental challenges inherent in flying a ship to another planet and back. Even so there are people (like me) that find sandbox KSP not very fun because there is no progression/scarcity.

If there is no conflict of any kind there is nothing preventing you from achieving your goal immediately without having to do much of anything, which isn't exactly very fun.

> worlds deeply simulating fantastical aspects of an alternative universe > where any experience is possible.

This is a description of the environment of a game, not a game itself. Very few people want to play "games" that are solely experiencing the environment with no real goals. The only games I can think of that are like that are sandbox games like Minecraft, and TBH I don't think sandbox Minecraft really counts as a game anymore than building a stick fort does in real life. (Also, survival mode in Minecraft is very popular. And guess what it has? Conflict with the environment and players)

> Weirdly, all those games end up with people pointing guns at one another.

Because (most) people need to have goals to work towards both in real life and in games. If you don't give a player goals, they will make their own, often being "make the most money" or "be the best at combat." Combat as a game is far from modern, the only modern thing we've added is making it virtual combat.

<comment><USER11> > The thing is, all that is _boring_. If there is no scarcity, there is no > progression.

That's just false. One of the most popular games in human history, Minecraft, completely destroys this notion. Every resource is infinitely renewable and available in great supply.

> This can be OK if there is other sources of conflict like in Kerbal Space > Program sandbox mode where you have an unlimited amount of parts and Kerbals > to build with but you have to overcome environmental challenges inherent in > flying a ship to another planet and back.

This sentence seems contradictory. The challenge is in the doing of a thing. That's not conflict OR scarcity, it's simply your experience. And it's a fun and famous game with a huge following.

> If there is no conflict of any kind there is nothing preventing you from > achieving your goal immediately without having to do much of anything, which > isn't exactly very fun.

This is that "cultural lens" thing I've referred to in other posts. You're defining this as conflict, but it's not really conflict. It's overcoming hardship. The way you define this matters for how you think about it.

> Very few people want to play "games" that are solely experiencing the > environment with no real goals.

So I submit the majority of gaming time on the most popular gaming platforms (mobile) are in fact exactly like this. There is no forced conflict in Neko Atsume or Candy Crush Saga. Roguelike games do model violence conflict, but largely do away with specific goals and simply let you revel in an environment that is new and surprising each time.

> Because (most) people need to have goals to work towards both in real life > and in games.

Why does this _require_ repeated and somewhat authentic modeling of fatal violence?

> If you don't give a player goals

I'm trying to work out how you're immediately equating "slaughter each other in PUBG while rolling around in a jeep for now reason" is "goals" but "build a pyramid with your friends in minecraft" is not. In terms of hours and copies sold, the later absolutely annihilates the former, and yet here you are arguing that the former is the only fun option.

<comment><USER24> > That's just false. One of the most popular games in human history, > Minecraft, completely destroys this notion. Every resource is infinitely > renewable and available in great supply.

You completely ignored this:

> Very few people want to play "games" that are solely experiencing the > environment with no real goals. The only games I can think of that are like > that are sandbox games like Minecraft, and TBH I don't think sandbox > Minecraft really counts as a game anymore than building a stick fort does in > real life.

I don't really consider sandbox Minecraft a game any more than building something out of Legos or a stick fort in the woods is a game. Is it fun? Yes! Is it creative? Yes! Is it a game? I would say no.

>> This can be OK if there is other sources of conflict like in Kerbal Space Program sandbox mode where you have an unlimited amount of parts and Kerbals to build with but you have to overcome environmental challenges inherent in flying a ship to another planet and back.

> This sentence seems contradictory. The challenge is in the doing of a thing. > That's not conflict OR scarcity, it's simply your experience. And it's a fun > and famous game with a huge following.

The challenge is the conflict with the environment. Maybe you don't view this as conflict, but the prevalence of "Man vs. Nature" as a kind of conflict is huge in Western culture.

The scarcity in KSP only comes into play in science mode (science points that you need to unlock technology is a scarce resource) and career mode (science points + money to build your rockets is a scarce resource)

>> Very few people want to play "games" that are solely experiencing the environment with no real goals.

> So I submit the majority of gaming time on the most popular gaming platforms > (mobile) are in fact exactly like this. There is no forced conflict in Neko > Atsume or Candy Crush Saga. Roguelike games do model violence conflict, but > largely do away with specific goals and simply let you revel in an > environment that is new and surprising each time.

Goals != person on person conflict. In Candy Crush you are trying to complete a level that is designed to make that a hard task (Man vs Nature where the level is the "nature"). I haven't heard of Neko Atsume so I can't comment on that.

For rougelikes, isn't the goal often to beat the end boss? Obviously the journey has to be fun or people won't play, but they still have a goal or give you enough space and tools to let you define your own.

>> Because (most) people need to have goals to work towards both in real life and in games.

>Why does this require repeated and somewhat authentic modeling of fatal violence?

Again, goals != person on person conflict. Conflict != person on person conflict. I personally can't stand games with authentic person on person violence, but I love games like Celeste where the goal is to climb the mountain and you have to face many kinds of conflict (Man vs themself, Man vs Man, and Man vs Nature)

>> If you don't give a player goals

> I'm trying to work out how you're immediately equating "slaughter each other > in PUBG while rolling around in a jeep for now reason" is "goals" but "build > a pyramid with your friends in minecraft" is not. In terms of hours and > copies sold, the later absolutely annihilates the former, and yet here you > are arguing that the former is the only fun option.

PUBG has a very clear goal: Be the last person alive by any means necessary. You may not find that fun. I know I don't. But it is still a goal, and considering how popular it is a goal that many people find fun to achieve.

Building a pyramid in Minecraft is a self imposed goal, there is nothing about Minecraft that says "you must build a pyramid to win." Again, I view sandbox Minecraft as a building toy like a box of Lego bricks, not a game in the traditional sense. Also, you are completely ignoring survival mode which hey what a surprise features conflict between the player and the environment (creatures that want to kill you) and sometimes conflict between players.

I'm not saying that the former is the only fun option. I'm just saying that for a game to be fun it needs to let the player have goals to work towards and some kind of conflict (NOT necessary person on person conflict) that makes the player work to achieve their goals. Would Mario Bros. be fun if there was no enemies to avoid or defeat and the level was just a strait line from the start to the goal with no obstacles in between?

<comment><USER11> > I don't really consider sandbox Minecraft a game any more than building > something out of Legos or a stick fort in the woods is a game. Is it fun? > Yes! Is it creative? Yes! Is it a game? I would say no.

So now kids playing with legos isn't a game becuase it lacks conflict? ... That's... not a very realistic definition in my book.

> The scarcity in KSP only comes into play in science mode (science points > that you need to unlock technology is a scarce resource) and career mode > (science points + money to build your rockets is a scarce resource)

There is a scarcity mode if you want it, yes. But it's not exactly actual scarcity. It's more like, "You just need to wait longer to do action X." There aren't hard choices to be made nor are there ever dead ends from those choices.

> Goals != person on person conflict. In Candy Crush you are trying to > complete a level that is designed to make that a hard task (Man vs Nature > where the level is the "nature"). I haven't heard of Neko Atsume so I can't > comment on that.

Even the words you're using are begging the question. Is that lens of "man vs ____" actually a valid one? Why? The designer isn't trying to actually be in conflict with users. Candy Crush isn't trying to make levels hard. They're trying to make them fun.

> For rougelikes, isn't the goal often to beat the end boss? Obviously the > journey has to be fun or people won't play, but they still have a goal or > give you enough space and tools to let you define your own.

Not really? Lost of the famous ones have a goal that is not "kill a thing" but rather "escape with an object" which is always harder. Rogue never had an end. Nethack has you escape with an item; actually fighting the Wizard of Yendor is a waste of resources. Dead Cells has tons of endings and a few don't even involve final bosses.

> Building a pyramid in Minecraft is a self imposed goal, there is nothing > about Minecraft that says "you must build a pyramid to win." Again, I view > sandbox Minecraft as a building toy like a box of Lego bricks, not a game in > the traditional sense. Also, you are completely ignoring survival mode which > hey what a surprise features conflict between the player and the environment > (creatures that want to kill you) and sometimes conflict between players.

Well this is another subtle cultural perspective, isn't it? Success, PUBG and Fortnite's Battle Royale posit, come from external validation. You have to want both the validation and agree that getting it is an accomplishment. I can see how folks like trying to make this perspective appealing to kids, but it's not really a reflection of reality nor the human psyche. There are an unlimited number of kinds of external validation we all ignore.

> . I'm just saying that for a game to be fun it needs to let the player have > goals to work towards and some kind of conflict (NOT necessary person on > person conflict) that makes the player work to achieve their goals

With all respect: I think you want to say this but in fact your words betray you. Your first instinct for game conflict is violence. I somewhat agree with the point you've made, but I want to point out how your worldview undermines that point.

<comment><USER24> >> I don't really consider sandbox Minecraft a game any more than building something out of Legos or a stick fort in the woods is a game. Is it fun? Yes! Is it creative? Yes! Is it a game? I would say no.

>So now kids playing with legos isn't a game becuase it lacks conflict? ... That's... not a very realistic definition in my book.

I have _never_ heard anyone call building with Legos a game. Heck, Lego themselves made a theme called "Lego Games" where you built games to play with out of Legos! This wouldn't make very much sense if they considered Legos themselves to be a game. So yes, I wouldn't call building with Legos a game, I would say that it is playing with a toy. In the same spirit I would say playing sandbox Minecraft is playing with a virtual toy.

> There is a scarcity mode if you want it, yes. But it's not exactly actual > scarcity. It's more like, "You just need to wait longer to do action X." > There aren't hard choices to be made nor are there ever dead ends from those > choices.

OK, I must have misunderstood what you meant by scarcity. I took it to mean that you have no limits on your resources, not that it had to be very difficult to obtain those resources and that there had to be a finite amount of them to allow dead ends.

>> For rougelikes, isn't the goal often to beat the end boss? Obviously the journey has to be fun or people won't play, but they still have a goal or give you enough space and tools to let you define your own.

> Not really? Lost of the famous ones have a goal that is not "kill a thing" > but rather "escape with an object" which is always harder. Rogue never had > an end. Nethack has you escape with an item; actually fighting the Wizard of > Yendor is a waste of resources. Dead Cells has tons of endings and a few > don't even involve final bosses.

As you can probably tell I haven't played many rougelikes so thanks for showing me that they are a lot more diverse than I thought. However, I would still say that they all have conflict, just not always violent conflict.

> Well this is another subtle cultural perspective, isn't it? Success, PUBG > and Fortnite's Battle Royale posit, come from external validation. You have > to want both the validation and agree that getting it is an accomplishment.

Not really? Success is winning a round. There is nothing external in that. _Wanting_ to win a round of PUBG can be external (although I wouldn't agree that it has to be, lots of people just find that kind of game fun) but actually winning a round of PUBG isn't.

>> . I'm just saying that for a game to be fun it needs to let the player have goals to work towards and some kind of conflict (NOT necessary person on person conflict) that makes the player work to achieve their goals

>With all respect: I think you want to say this but in fact your words betray you. Your first instinct for game conflict is violence. I somewhat agree with the point you've made, but I want to point out how your worldview undermines that point.

Wow, I guess I've been lying to myself all these years about how I don't like graphic violence or gore in games or movies. Thanks for telling me my true self internet stranger! /s

But seriously, I've said multiple times that I don't like those kind of games. Battlefield, PubG, Fortnight, and all the other person on person combat/battle games could have never been made and I would be perfectly happy. If you think I'm lying that's fine, but I'm not going to continue to discuss this if that's the case.

</comment></comment></comment></comment></comment></comment></comment><comment><USER25> This should not be something cash-strapped schools are spending $450,000 on. This is just public-private transfer into the coffers of Blizzard, Nintendo et al.

If it has merit, it has merit with free software.

<comment><USER2> There is no mention of being cash-strapped in the article, unless I missed it?

<comment><USER25> Public schools in the US are almost universally cash-strapped. Regardless, my point stands: no school should be spending a half million in tax money on corporate video games.

There are plenty of cheap/free games that could serve the purpose just fine, if indeed there is any educational merit whatsoever to this initiative (which I highly doubt).

<comment><USER13> How is this any different than public schools buying baseballs from Rawlings (co-owned by the MLB). Or football pads, basketball goals etc... I guarantee that the district in question spends far more than $450k purchasing sports equipment from corporations.

And since public schools are mostly locally funded, some districts aren't cash strapped.

>my point stands: no school should be spending a half million in tax money on corporate video games.

This decision is made at the district level, if the people don't like it, they can very easily vote in a different school board. The local voters are the ones who get to decide what they "should" spend their tax money on.

> if indeed there is any educational merit whatsoever to this initiative > (which I highly doubt).

Participation in after school activities has been shown to positively impact educational performance.</comment></comment></comment></comment>


Express.js and Node.js as a prototyping medium - <AUTHOR> http://blog.mediumequalsmessage.com/understanding-expressjs-and-nodejs-as-a-medium-for-prototyping/ <comment><USER2> Prototyping with Express is definitely a great way to get started quickly. The one thing I'd say for newcomers is that it can get messy pretty quickly (mostly when it comes to the files), which anybody with MVC habits will probably notice relatively quickly. I made this [https://github.com/grownseed/NodeExpressStartingPoint/tree/v...](https://github.com/grownseed/NodeExpressStartingPoint/tree/v0.2.0) a while back, it helps me get started even more quickly and it attempts to keep the file structure relatively manageable.

</comment><comment><USER3> Express is a nice framework and all, but you need to have a pretty deep understanding of Node AND JS to actually do something. Are we just designing? If so, run the command below in the directory of files:

$ python -m SimpleHTTPServer Serving HTTP on 0.0.0.0 port 8000 ...</comment>


Twitter suspending users for "breaking rules" unless you give them a tel number - <AUTHOR> https://old.reddit.com/r/privacy/comments/ivhguw/twitter_is_suspending_and_blaming_users_for/ <comment><USER2> That's been the case for new accounts for years as far as I know. (although I'm not sure about the "breaking rules" part - the usual "reason" was "suspicious activity", which makes a tiny sliver more sense. But if they want that for everyone, they should just drop the pretext and require it from the start)

</comment><comment><USER3> > For full access, please: > Pass a Google reCAPTCHA challenge > Verify your > phone number

Now I don't know why anyone wants to register on that website. You don't give your phone number to random strangers. So why should anyone have to give their numbers to a surveillance capitalist company like Twitter.</comment>


Feedback needed: App lets you redirect yourname.isfound.at to your blog's URL - <AUTHOR> http://isfound.at My co-founder and I have thrown up a fun little web app to test the waters for bigger projects. It would be great to get some feedback on what you do and don't like about it. Both on the concept and the implementation.<p>The idea is pretty simple: let people register for a really easy to remember URL ($FOO.isfound.at, get it?) that our service redirects to the actual website or blog. Sites are easer to visit if you can remember where they are, after all. It is by no means a technological breakthrough, but it is useful service nonetheless. What do you all think? <comment><USER2> You should drop the user-generated-directory aspect of it. Interface all the good people search engines, and use google as a fallback.

</comment><comment><USER3> how is that better than .name?

</comment><comment><USER4> why is openid required?

<comment><AUTHOR> Partly because my co-founder has a strong OpenID background (he wrote the first Drupal 5.0 OpenID module), and partly because we didn't want to create Yet Another Account for people to remember.

We are adding the feature to create a new account (which happens to be an OpenID account, but users don't need to worry about how the backend is done) from within the site, so anyone can register without an existing OpenID account.</comment></comment>


EFF no longer accepts donations in Bitcoins - <AUTHOR> http://www.bitcoinmoney.com/post/6100385027/eff-bitcoin-donation-review

<comment><USER2> I'm torn between liking stories that shine a skeptical light on the bitcoin fad and being appalled at how much coverage bitcoin gets on HN. The "hiring" thread for June was pushed off the front page in less than a day, but we've had, what, 5 bitcoin stories hit the front page in the same time period?

I think it's time for some REPL intervention.

<comment><USER3> It's so tedious. I would have literally no idea that Bitcoins existed if it weren't for the flood of articles on HN. I don't understand - who are all the people who find this interesting or relevant?

<comment><USER4> It's at the intersection of a lot of things that people here find interesting. It's potentially a way to make money (some say ponzi scheme), it has a tech component, there's a anti-government component, etc... so I do believe a lot of people here do care about it. I mean I keep reading the damn articles too...

<comment><USER2> I think the kernel of contributors with a good-faith interest in bitcoin is smaller than you think it is, but either way: if bitcoin is getting multiples of the attention that the hiring thread is, I think most reasonable HN people can agree that it's being overrepresented.

Lawyering over the site guidelines here isn't productive, since nobody (that I've seen) is arguing that bitcoin contravenes them directly.

<comment><USER5> Do you think the "reasonable HN people" who can agree bitcoin is overrepresented are the same ones giving it all the attention?

I for one find bitcoin far more "intellectually gratifying" than the hiring thread, which, with great respect to our host, has no interest for me.

</comment></comment></comment></comment></comment><comment><USER6> I love this comment: "UPDATE: The EFF is still unofficially accepting Bitcoins, but their address has changed to: 16g5mes4kW1gpX9Vp1F5VG7HXqN8ySar9EI've just donated a few BTCs to help them protect the freedom of the Internet - please help them too!" Nice one "Rebecca S. Reagan"!

</comment><comment><USER7> There's a website that shows you how much money you've received, from whom, and how much you have now? Wow, the public nature of bitcoin had never sunk in until I saw that.

It's like my wallet is open to everyone!

<comment><USER8> You can create a new Bitcoin address for every single transaction you make if you wish.

<comment><USER7> Sure, but you have to transfer your money somehow, and it will be easier to track, let alone a huge hassle for you...

<comment><USER9> Not quite. Your wallet can have an arbitrary number of addresses. You can receive at one address, then send that balance out to a dozen different people using a dozen different sending addresses.

<comment><USER10> To do that, you still have to perform a transaction to transfer the amount from your recieving address to your sending address.

<comment><USER9> ...no. That's not how it works. Your wallet has a pool of private keys. Addresses are the corresponding public keys. You can send or receive from any address you have the private key for (minor simplification, but doesn't affect my point).

There is no transaction necessary to send money from a completely new address, other than the transaction itself. All of your addresses point to the same wallet.

<comment><USER10> Each bitcoin is owned by the public key that it was last sent to. You can't send it from a different key - it won't be accepted by the network. The public key continues to own it until a transaction _signed by that public key_ is accepted by the network. Read the whitepaper.

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> I'm not a big fan of bitcoins, but if there's anything I would want to buy with them, it'd be a donation to the EFF. Somehow, that just seems to fit together in my mind.

I hope they review what they need to and decide to put the donation link back.

</comment><comment><USER12> "The U.S. Supreme Court's Citizens United ruling which allows anonymous spending in the campaign finance environment and its impact on elections may be one of the issues triggering this review by the EFF."

Sorry, but what does that have to do with it? The ruling is a 1A issue.

</comment><comment><USER13> all those who naysay - why not yasay or say nothing at all?

i get a big impression that all(most) would at least agree what we have in place now is more flawed than bitcoin. corruption is but a moral decision away (to those in the right positions). politics are slimy, and rub off on current currency models. violence has strong leverage over societies current credit symbol (crack-head in dark alley - good luck punching your way into my SSH box on the other side of the world. and if you do, ill just make a transaction, rendering my wallet you stole useless).

whats holding you back from going all in? hmm, IF ONLY everyone would put some faith behind a new system, and accept it as the new standard. that system could grow, and overtake the current shady one in place (or at least parallel it). it could become as common as visa, accepted everywhere.

ahhh, but not everyone will adopt this overnight - it will be a long slow road. don't look for the overnight solution. if i told you bitcoin would overtake the worlds currencies in 100 years, would it be worth taking a slight risk now? what have we got to lose? a shitty status quo?

FULL DISCLOSURE honestly, i don't have any bitcoin ...yet. and i say all this by ignoring the fact there seems to be at least a slight whiff of scam afoot... perhaps a few admins with access to a few petaflops are laughing away printing these bits like water... as long as that's not the case, wellll, GO BITCOIN! but even GIVEN that scenario, it would be just as easy (if not easier) for many more people to print counterfeit paper. but at least there is a maximum amount that can be scammed in bitcoin, and then that's that - bitcoin could live on and fulfill its purpose.

</comment><comment><USER14> It's kind of funny to watch people trying to justify not having bought in earlier, with the logic that it's going to crash. Good old sunk costs fallacy.

Yeah maybe it'll crash one day. Maybe it'll go from $1000 clean down to $100, destroying much of the world economy (i.e. that part that was backed by speculation rather than real stuff to begin with) in the process.

<comment><USER15> The entire value now is backed by speculation rather than "real stuff." The widely repeated "market capitalization" figure vastly overestimates the actual value given and obtainable for Bitcoins, and the price does not even closely reflect that value. The price is simply the result of what game-theorists call a "beauty-contest" game: it's based on baseless estimates of the value that others will assign to it in the future.

Alone, that's just speculation. Backed by a massive marketing push that doesn't convey the right message to the public, it's functionally indistinguishable from a pyramid scheme.

</comment></comment><comment><USER16> Two negative parts of BC, 1 - A group of nerdy/freedom-chasing (that's a complement) say no to it without any reason (such as legal advice on it), 2 - Read the first comment of the blog post.

</comment><comment><USER17> Well that didn't take long.

</comment><comment><USER18> They're still accepting pinecones, confederate dollars and unicorn horns though, right?</comment>


Distributed production of N95 mask filter material. DIY with NC license - <AUTHOR> Manu Prakash lab - see 1000x1000 project at http://web.stanford.edu/group/prakash-lab/cgi-bin/labsite/publications/ <comment><USER3> Waste styrofoam as source, that would be excellent.

"Project 1000x1000 refers to the idea of distributed medium scale manufacturing of N95 grade nano-fiber material across the country, in small factories with 2-10 people involved with a capacity to make enough filter material for 10,000 to 20,000 masks a day. This allows for an alternative approach - where if 1000 small businesses engaged across the country - <USER2> 1 to 10 million masks could be produced in a distributed manner.

We propose to use waste styrofoam - commonly available everywhere - as a raw material to convert it into N95 grade nano-fiber material which provides the key ingredient needed for making high grade PPE masks necessary for health care workers. "</comment>


Judge Who Provided Legal Basis for Drone Strikes on Americans to be Confirmed - <AUTHOR> http://www.bostonglobe.com/news/politics/2014/05/20/david-barron-author-controversial-drone-memo-looks-likely-for-confirmation-appeals-court-democrats-say/sC0PW4fmoaN9qgaWWxHUTL/story.html

<comment><USER2> Obama also appointed as federal judge in NY someone who was general counsel at FBI prior to that and was advocating _legal backdoors_ in technology products. I don't remember her name, but Chris Soghoian from ACLU talks about it in some of his speeches.

The administration has fallen, Congress has fallen, and now they are trying to subvert the Courts and justice system, too, by appointing this type of people as judges.</comment>


Going back to a dropped salary negotiation - <AUTHOR> I've switched to a new technical field and started working with startups instead of larger companies. I declined an offer 2 weeks ago because I assumed I could get better pay elsewhere. However, I haven't been able to find the pay I was hoping for, I'm running out of money, getting new expenses, and that previous offer is starting to look pretty good. I'm pretty sure there's no way to look good going back to someone for pay you say you didn't want, but what would be the most graceful way to handle that? Is there a chance it'd succeed? <comment><USER2> Does the company still need someone? If so, they will probably be happy to talk to you. They may be concerned that you'll take the job, but leave the moment you find something better, but maybe if you spin it as you realising that this is what the market is willing to pay you and make it not seem like you're going to only stick around long enough to find a new job.</comment>


A long list of GRUB2 secure-boot holes - <AUTHOR> https://lwn.net/Articles/827403/ <comment><USER2> Well, another way to bypass secureboot on old/not updated devices, I guess.

Tangentally, how can I secure my intramfs against an evil maid attack? My kernel is signed by secureboot, and my rootfs is encrypted, but the initramfs is neither... I haven't rally seen that documented anywhere.

Ideally, I'd just sign it with the same key as the kernel, and the kernel would check it matches.

</comment><comment><USER3> Related thread on the front page: [https://news.ycombinator.com/item?id=23990075](https://news.ycombinator.com/item?id=23990075)

</comment><comment><USER4> Basically dupe of [https://news.ycombinator.com/item?id=23990075](https://news.ycombinator.com/item?id=23990075)</comment>


Ask HN: How do you get paid for remote freelance work? - <AUTHOR> Are there any better alternatives to ol' Paypal? <comment><USER2> Easiest for (without loss of generality) US clients: Establish a US bank account and get paid with checks, ACH (in-country electronic transfers), or wire transfers.

Easiest for you: Establish a bank account in your country and instruct your US clients to pay you with international wire transfers.

US clients are often not very experienced with international wire transfers and it causes hitches for their internal processes and banks, so the US account option will save you a _lot_ of friction on a per-client basis in return for having more headaches up front. (The easiest way to set up a US bank account if you don't physically reside in the US is to do it through a local branch of a US-homed megabank. Despite the general impression of a lot of freelancers on this matter, international commerce is in fact fairly routine and "the Patriot Act" \-- Know Your Customer and anti-moneylaundering regulations -- are not an absolute barrier to this.)

You should probably avoid using Paypal for transfers of more than a few hundred dollars. I like Paypal, don't get me wrong, but they're not well- suited to running a consultancy on top of.

<comment><USER3> Just to add to this, I think any serious company you'd work with would be shocked by someone wanting to be paid in anything other than a wire transfer (and by "shocked", read "wouldn't be able to do it and wouldn't take you seriously because of it). In my experience, this is how almost all payments are made in the real world.

If you're a professional, use a wire transfer like everybody else.

<comment><USER2> Absolutely correct with regards to "clients will neither comply with nor be impressed by requests to pay in any manner they're not used to paying by", but I think that wire transfers are actually fairly exotic by US standards. They typically expect to pay with checks or ACH payments. (More often checks, in my experience. Source: I've cashed hundreds of thousands of dollars of them, and every time it happens I worry that this is finally the time that I'll be shot for robbing the bank.)

<comment><USER4> Imagine what it's like to walk into your Podunk suburban bank every two weeks with a $50K+ check in your hands from a company with a .com in their name. Yeah, that was fun.

But Patrick's absolutely right re: checks. If cash flow is tight, my favorite trick is to FedEx a prepaid overnight envelope to your client. Ask them to place the check inside. This elimates the "check is in the mail" song and dance, and it's only marginally more expensive than a wire fee.

</comment></comment></comment></comment><comment><USER5> Background: I'm a UK freelancer working with UK, EU, US and RotW clients.

Per other commenters, my UK and EU clients are usually happy to pay by bank transfer. My invoices include UK payment details, along with IBAN and SWIFT details. I am also starting to include Paypal details to go with the path of least resistance.

Now, US clients tend to pay via Paypal or US check. In the past I've used brokers like AuctionChex[1], and also used a USD deposit account with CITI[2].

AuctionChex went out of favour with me when their exchange rates went into free fall for no obvious reason, and CITI screwed me for fees after a mistake at their end. I no longer use either.

With the CITI USD account, it is possible to have it fee-free if you're careful: if you have a current account and 2 standing orders set up, hold a certain balance and you transfer in a given amount per month, there is no fee for either the current account or the USD account.

Now, I take the hit on USD checks and use my business bank (NatWest) account for it. They charge a set-fee to process the cheque, around 10GBP for the value I deposit, and I just mark it on my accounts as a bank charge. My accountant is happy, and there are no shady brokers in the equation.

[1] [http://auctionchex.com](http://auctionchex.com) [2] [http://www.citibank.co.uk/personal/banking/international/eur...](http://www.citibank.co.uk/personal/banking/international/eurocurrent.htm)

</comment><comment><USER6> Bitcoin, hands down. Specifically Bitpay You can get paid in 9 different currencies in 33 countries with 0% fees. Zero exchange rate risk unless you want it. Bitpay is especially nice for freelancing because you can issue manual invoices.

[https://support.bitpay.com/hc/en- us/articles/201890513](https://support.bitpay.com/hc/en-us/articles/201890513)

I use Bitcoin, Paypal, and Stripe in my own business and I like Bitcoin the best by far. No charge back hassles, zero fees, no waiting 3 days for ACH payment confirmation.

There is one draw back that I see, that being that right now it isn't quite popular enough yet that it can be your only payment method. Some people are just not going to be capable of using it. That said you would be surprised I suggested it to a parts supplier I was working with who because of their location costs me $110 per wire to pay invoices. At first he told me no way until I told him flat out he was losing business on my smaller orders because even though his product was best on price the very high transaction fees made them more expensive for orders under several thousand dollars. They were interested in it all of a sudden. Funny how that works.

</comment><comment><USER7> I would say Bitcoin, although my background is a little different to yours.

I primarily get hired to build Web applications which deal with some type of bitcoin payment (no bitpay or coinbase), so it makes sense for me to be paid in Bitcoin.

I'm a Bitcoin evangelist, so I generally pay for most things with bitcoin, so I don't have the issue of converting it to fiat.

</comment><comment><USER8> It depends on the company. I always try to get people to pay with direct bank transfer, which is very easy within Europe now everyone has an IBANN by default, but seems to be trickier for clients with US bank accounts.

I've so far been paid by: direct bank transfer; Paypal; check.

Bitcoin is a viable alternative for overseas transfers and is worth investigating.

</comment><comment><USER9> Transferwise! For payments from the US to my country (EU) there is a fixed 1% fee. In addition, their exchange rate is 3% better than in my local bank. Clients send the money with ACH or wire transfer. I have it in my bank after two days. Overall, much faster and cheaper than Paypal or international transfers.

</comment><comment><USER10> at 2.9% + 30 cents stripe isn't all too bad [https://stripe.com/nl/pricing](https://stripe.com/nl/pricing) you have to build your own checkout page though

<comment><USER11> That's a ton (it's really 5%) for for convenient international movement of money, I actually agree it's not horrible given the dearth of better options.

Something built on BTC/Steller/Ripple will probably improve upon this soon, and HOPEFULLY somebody nails international ACH and makes it super easy/safe/reliable in the next few years. That would help Steller/Ripple/BTC networks and provide a non-crypto option which, let's face it, no matter how bullish you are on crypto it's gonna be a while before you can reliably expect someone to participate in the crypto economy.

</comment></comment><comment><USER12> I'm a US employee who's been working part-time and traveling abroad for the last 2-1/2 months. I have a Charles Schwab Investor Checking account that has no-fee ATMs all over the world (no ATM fee, no conversion fee, ATM fee reimbursement).

My employer does direct deposit into that account, but they also accept ACH and wire transfers, and you can also use their mobile app to deposit checks with your smartphone. I'm not sure how difficult it is for a non-US-citizen to open one of their accounts, but perhaps it's worth looking into.

</comment><comment><USER13> What's wrong with bank transfers?

Or do you mean internationally remote?

<comment><AUTHOR> for EU-US payments bank transfers seems quite expensive to me

<comment><USER14> They are - I'd try something like Transferwise, that's what we use to pay our international contractors. Or Stellars.

<comment><USER15> +1 on TransferWise. For other countries I've found Hifx ([http://www.hifx.co.uk/](http://www.hifx.co.uk/)) to be fast and not too expensive.

</comment></comment></comment></comment><comment><USER16> What, no one saying bitcoin? :)

<comment><AUTHOR> good point, this should be what BT is made for (or at least a very good use case) and yet, no mention.

<comment><USER2> I'm going to again solidify my position as HN's Official Bitcoin Critic with this, but the reason I didn't suggest it is because BTC is a terrible method for doing international payments.

1) See elsewhere on this page where we explained that most companies are unwilling to add new payment types to accommodate individual vendors. This is as true for Bitcoin as it is for Paypal. It is probably more true, actually, since Paypal is a known-to-be-legal regulated subsidiary of a US Fortune 500 company and Bitcoin is Bitcoin.

2) Suppose you issue a US company an invoice for $10,000 and say "You can settle this invoice in Bitcoin." How are they actually supposed to do that? My impression is that the best option currently is to connect their bank account to Coinbase (note: non-starter!), wait a few days for it to be connected, then purchase $10k worth of Bitcoin at market price. $10k is +/\- 17 BTC, which they won't actually be allowed to purchase in a day. It will actually take four days of repeated work to buy that $10k of Bitcoin. Then they can actually transfer it to you and, yay, you now have BTC.

3) But wait! What happens if the BTC price changes over the ~7 business days it takes from the time your client starts taking action on your invoice to the time they send you your BTC? Answer: somebody pays for this risk. _Volatility is an implicit tax on transactions._ One of the parties is going to be short BTC and one will be long BTC for the week, and given that BTC can _very easily_ move 20% in a week, that means that your $10k invoice might be $8k or $12k.

3a) Clients do not like when $10k invoices turn into $12k invoices because To The Moon, Yo.

4) Suppose you have +/\- $10k worth of BTC. How do you solve the Last Quarter Mile problem to your own bank account and/or local currency? Your options are a) send the BTC to an unregulated exchange and accept counterparty/currency risk (then hope that getting a large wire transfer from them doesn't cause your bank to reevaluate how desirable your business is) or b) attempt to deal with LocalBitcoins sellers multiple times, which apparently combines the wonderful trust of the clandestine drug economy with the mind-altering properties of currency exchanges.

4a) Time you spend on figuring out how to turn $10k of Internet money into $10k of local currency is time you aren't spending lining up your next $10k engagement.

5) If at any point you or one of your counterparties screw up in securing any computer or trusting any member of the Bitcoin economy, your $10k vanishes into the ether.

You should neither accept nor request BTC for professional services. They're more expensive end-to-end than dealing with banks and expose you to multiple unique sources of risk. You have plenty of risk in your business already, and if your risk appetite is high, there are more lucrative forms of risk you can "buy" than transacting in BTC, such as attempting to move your consulting practice upmarket.

<comment><USER6> I disagree. This was the state of things perhaps 1-2 years ago but this doesn't represent the situation at all today.

Using a bitcoin payment processor like Bitpay you have zero exchange rate risk and can receive payment in 9 different currencies in 33 countries.

Coinbases daily buy limit is $50,000 not 10k

You still have the computer security problem when you are using online banking and any reputable Bitcoin company has as good or better security than a bank. Two factor auth, and hardware tokens are the norm. I can't say the same for most of the banks I've used.

<comment><USER17> _any reputable Bitcoin company has as good or better security than a bank._

Like Mt Gox? It was reputable enough to handle 2/3rds of all bitcoin transactions.

Besides, if you're concerned about your banking, you can easily shop around and find one with the hardware token security you like.

<comment><USER6> Mt. Gox wasn't reputable and anyone willing to look would have seen that disaster coming 6-9 months away at least. People were just being greedy because of the higher BTC exchange rate there.

</comment></comment></comment></comment></comment></comment><comment><USER18> After months of frustration, I recently set up a way getting paid using credit card via stripe through WordPress. Main advantage: knowing a deposit is paid immediately. For whoever's interested, I did a write up on what I did on my blog:

[http://trenvopress.com/2014/08/stripe-for- freelancers/](http://trenvopress.com/2014/08/stripe-for-freelancers/)

<comment><AUTHOR> thats cool thanks for sharing this!

</comment></comment><comment><USER19> Sending invoices and getting paid by standard bank wire transfer.

</comment><comment><USER20> I actually use square cash and it's been great! No fees, it's simple. It's good as long as your pay doesn't exceed the weekly limit. (2500)

</comment><comment><USER21> Bitcoin.</comment>


Why Michigan is the Midwest's most improved startup community - <AUTHOR> https://medium.com/@hydeparkangels/why-michigan-is-the-midwests-most-improved-startup-community-90a6eefd3e5d <comment><AUTHOR> They didn't mention Kalamazoo which has at least two VC firms and an active angel community. Neither Lansing nor Grand Rapids have resident VC firms, though both have developing angel communities.</comment>


Subtleties of the ANSI/ISO C standard [pdf] - <AUTHOR> http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1637.pdf <comment><AUTHOR> Money quote for those checking the comments first:

"Furthermore, we argue that the C standard does not allow Turing complete implementations, and that its evaluation semantics does not preserve typing. Finally, we claim that no strictly conforming programs exist. That is, there is no C program for which the standard can guarantee that it will not crash."

<comment><USER2> Well at least the section explaining why they think C is not Turing complete is beyond ridiculous (TLDR: memory is not infinite so there exist a state machine... WTF????? technically mathematically true but has always been completely irrelevant when talking about real implementations)

And it seems to be written with a serious tone, it is probably not even a joke!

<comment><USER3> The point isn't that memory isn't infinite, but that C's memory _model_ isn't infinite. There are other languages that do have an infinite memory model (for instance, any language with a builtin bignum type).

I mean, if you want to judge ridiculousness, then their explanation of why there are no strictly conforming programs (specifically: even a program with an empty main function cannot be guaranteed not to overflow the stack) is also ridiculous, but it's still interesting.

<comment><USER4> I agree that it is interesting. For example, what if you can implement, in C, an interpreter for a language that has a bignum type? I am thinking along the lines of Greenspun's tenth rule (which I realize is not even close to a rigorous argument.)

<comment><USER5> I'd say the interpreter is interpreting a non-Turing complete subset of the bignum language. That said, what is and isn't "Turing complete" is hardly relevant for practical purposes. C has obviously been very useful as a language, despite whatever theoretical statements can be proven about it.

<comment><USER4> It is not clear to me why it would be a subset (I'm assuming proper subset here) or why it would have to be non- Turing-complete.

I agree that none of this has any obvious relevance to the practical usefulness of C, but all of us here in this thread have chosen to put that aside, at least for now, in order to contemplate a somewhat esoteric though less practical question.

<comment><USER5> The key distinction to note is the one between specifications and implementations.

As a small example, consider Brainfuck. The Brainfuck specification (if such a thing exists) has no upper bound on the number of memory cells, but practical implementations generally _do_ have a limit that "useful" Brainfuck programs will rarely hit. The specification describes a TC language, while the implementation does not.

Therefore, if a language is TC according to its specification, but has an implementation in a language that is shown to _not_ be TC, then it follows that the implementation must be of a non-TC subset of the language. This is, of course, assuming both that the specification has been proven TC, and that the implementing language has been proven non-TC.

I believe the point being made in the paper is that the C specification itself is restrictive enough that it describes a non-TC language. In other words, any implementation of C that is truly Turing complete would be violating the specification in some way. In that case, it follows that a C implementation of a TC language (such as the bignum language) must only be an implementation of a non-TC subset of the language.

(As an aside, consider that nothing running on an isolated machine will ever be truly TC, since an isolated machine has a finite amount of memory and so can't be TC. It's not that much of an inferential jump to see that this kind of TC-breaking limitation could end up in the specification of C, a language quite close to the metal.)

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> We discussed the Turing completeness of C a while ago on HN ( [https://news.ycombinator.com/item?id=4795542](https://news.ycombinator.com/item?id=4795542) ). Also the following was produced around that time:

[https://tdotc.wordpress.com/2012/11/20/on-the-turing- complet...](https://tdotc.wordpress.com/2012/11/20/on-the-turing-completeness- of-c-part-2/)

<comment><USER7> When you say "C" and "Turing machine" in the same sentence, you should immediately think of how you would go about explaining a proof of, say, the fact that a one tape TM can simulate a k tape TM using C. C is just one of many languages in which you can express the state transition diagram of a TM.

<comment><USER6> The point being you can't, due to the finiteness of c's abstract memory model, both for the heap (the tape) and stack (state transition graph)

<comment><USER7> No, any undergraduate CS major at a top 5 university should be able to do this. It's possible to do this for any programming language. If you need help then it's on p. 161 Theorem 7.2 of Hopcroft and Ullman (1979).

</comment></comment></comment></comment><comment><USER8> There are so many things wrong with this paper, and nearly all of them have to do with their "proof" that C is not Turing complete.

First off, they say that C isn't complete because its functions for reading/writing files are "bounded". Since most other programming languages are really just implemented in C, wouldn't that mean that either ALL programming languages aren't Turing complete, or that C is?

Secondly, they mention that programming languages that have "bignum" types get around the "bounded" memory problem (because you can access "infinite" memory). But you can implement a bignum in C...

I hope this is a joke.

<comment><USER9> > Since most other programming languages are really just implemented in C, > wouldn't that mean that either ALL programming languages aren't Turing > complete, or that C is?

No: it means that the imperfect emulation of those programming languages, as implemented in C, will fail to be Turing complete. Put another way, there are programs that are valid Haskell programs that can be proved by the rules of Haskell to halt on certain inputs and generate particular results, which will not be able to execute as the C emulator will run out of state in which to perform the simulation. The interesting point to make here is that it isn't just that C is being limited by the real world constraints of hardware, but that C is itself limited as if it were hardware. That said, this was always an obvious result to anyone who ever bothered asking the question and understands the formalisms, so I am not certain of the contribution of this paper ;P.

</comment></comment><comment><USER10> As the author points out, the standard does not mention stack overflow at all. From this, the author concludes an implementation that always overflows stack is conforming, therefore no strictly conforming programs exist, therefore all implementations are conforming. More reasonable conclusion is that under the current standard, implementations are not allowed to overflow stack, therefore no bounded storage conforming implementation is possible, and all current implementations are buggy. Is anyone surprised that all current implementations are buggy?

It would have been more interesting if the author discussed Microsoft's solution to this problem, namely __try/__except and EXCEPTION_STACK_OVERFLOW, which is actually used by programmers to recover from stack overflow.

</comment><comment><USER11> tl;dr; Some interesting points about bits of C that are undefined. Some points valid, the other ones appear to be self-panicking unless you're heavily in the theorem-proving correctness camp.

I remain unconvinced that memcmp of pointer values is at all interesting (viz the pointer normalization dancing acts of the early x86 memory models, ugh).

From a working programmer's point of view, it's useful to know some of the points in the paper; just read the middle third and skim the rest.

</comment><comment><USER12> Interesting article that exposes some problems of C, that some take for granted or ignore.

However the arguing that C is not Turing complete after you take away the IO and limit yourself on an non-abstract machine is silly. C can simulate any Turing machine limited by the same previously mentioned rules and the same holds if you remove those rules for both systems, not just for one.

</comment><comment><USER7> int read(void); void write(int); void left(void); void right(void);

read returns 0 or 1. write only uses the least significant bit.</comment>


3.5" Is Enough : Assembly 2009 Oldskool Demo Winner - <AUTHOR> http://www.unrealvoodoo.org/projects/three-and-a-half-inches-is-enough/

<comment><USER2> Love it :) There were some other pretty decent entries at this year's Assembly, too.</comment>


Super Fast Cameras (2013) [video] - <AUTHOR> https://www.youtube.com/watch?v=7Z8EtlBe8Ts <comment><USER2> Not really super fast camera but more sequential instances of different but similar events in time.

</comment><comment><USER3> Url changed from [https://curiosity.com/paths/super-fast-cameras-nova- pbs](https://curiosity.com/paths/super-fast-cameras-nova-pbs), which points to this.</comment>