The Man Who Broke Atlantic City - <AUTHOR> http://www.theatlantic.com/magazine/archive/2012/04/the-man-who-broke-atlantic-city/8900/?single_page=true <comment><USER2> This stuck out to me:

 _Made famous in books and movies, card counting is considered cheating, at least by casinos. In most states (but not New Jersey), known practitioners are banned. The wagering of card counters assumes a clearly recognizable pattern over time, and Johnson was being watched very carefully. The verdict: card counting was not Don Johnson's game. He had beaten the casinos fair and square._

Card counting is not cheating, at least if you can do it without an external device. That's like saying that you can play this game but only if you don't think about it really hard. Even with card counting the casinos have a slight edge against you. They swap the shoe out frequently so that you have to reset your count.

The reason it's not illegal in NJ is because someone sued them and won. It _should_ be legal everywhere.

<comment><USER3> I thought card counting was legal, and according to wikipedia it is(<http://en.wikipedia.org/wiki/Card_counting>)

As of January 2012, there are no federal, state or local laws which prohibit card counting in the United States as long as no external card counting device or person assists the player in counting cards.

BUT:

In all parts of the United States, with Atlantic City being the sole exception, casinos may ban any player for any reason including card counting as long as the Federal laws against discrimination based on race, creed, sex, national origin, age, or physical disability are not violated.

\--

I think that a casino should be able to kick out anyone that they want for any reason, including card counting, being extremely lucky, being a jerk, etc...

<comment><USER4> Yes I think you're right, it is legal but it can hardly be used anymore because most casino's use an automatic shuffling machine where they refill the cards after every deal and that continually shuffles.

</comment></comment></comment><comment><USER5> The short version:

Because of the recession casinos are desperate for high-rollers. To lure them in they offer perks. Some of those perks include slight modifications to the rules and a "loss discount" -- for example: losing $500k only costs you $400k.

This guy negotiated rules that changed his odds to 50/50. Then he negotiated an 80% loss discount, which meant for each $1 of upside, his downside was $0.80.

So to pull this off, you need $1m to put down, great negotiation skills, even better blackjack skills, good luck, and a very sophisticated understanding of stats.

<comment><USER6> No, that still doesn't make sense. The loss discount was on a per-trip basis, not per hand, so basically if at the end of the week you were down $100k, you only owed $80k.

The rules were generous but NOT totally even. The house still had around 0.25%, which is low, but not unheard of. Even on the Vegas strip you can find Blackjack games open to the general public under 0.50% house edge. Of course, that's with optimum general strategy, not "playing your hunches", which could easily open the house edge to 10% or more depending on how dumb you're playing.

My guess is that he _was_ card counting, but not with a traditional system, and he wasn't using it to size his bets, just to make strategy decisions, which would be harder to detect.

The odds of beating 3 separate casinos, over a reasonable number of hands, even against a very low house edge, are quite small.

<comment><USER7> I agree, but it appears that while he doesn't "count", He plays a more general "averages" game. Per the article: "More useful, for his purposes, is running a smaller number of hands and paying attention to variation. The way averages work, the larger the sample, the narrower the range of variation. "

Edit: I would guess he's developed some algorithm for keeping track of swings and general variation, so he plays not hand by hand the way counting goes, but rather "batch" or "streak" While will also have wild swings of him making and losing lots of money, but if he keeps tabs on these variations, he can swing them in his favor over time.

<comment><USER8> Probably the best evidence for your argument is the fact that he apparently negotiated a hand-shuffled shoe. I'm amazed anyone would agree to it, since it's pretty much a giant warning sign that the guy is planning to exploit poor shuffles.

<comment><USER9> The shuffles needn't be poor. The existence of the hand-shuffled shoe just means he has the opportunity to count or shuffle track. The former is impossible if they use a continuous shuffle machine and I imagine the latter is either impossible or too difficult to use effectively. I agree it makes no sense for the casino to agree to that if that's outside their normal rules. I guess they want high rollers to think they've got an edge, but the casinos realize that most high rollers don't actually know how to count fast enough to realize that edge. And until this guy, they've always been able to identify the successful advantage players (not counting group players a la the MIT blackjack team) before losing millions of dollars...

<comment><USER10> another factor: as an inside guy, he probably knew their precise algorithm for catching counters. I suspect he does count, but knows exactly how to vary his play to keep just south of the model targeting him as a counter.

<comment><USER11> What are you talking about? A CEO got fired because of this. Anyone and everyone was watching this guy.

<comment><USER10> What I'm saying is, they have mathematical models that they follow to decide whether someone is counting. I suspect this guy was in fact using information about cards played to vary his future bets -- in effect counting, but he was doing it in a way that did not fit the house's models for what card counters normally do.

He clearly knew more than the people who were watching him, so the fact that all the 'experts' were paying attention doesn't mean he wasn't following a winning strategy.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> _"They began offering deals that nobody's ever seen in New Jersey history," he told me. "I'd never heard of anything like it in the world, not even for a player like [the late Australian media tycoon] Kerry Packer, who came in with a $20 million bank and was worth billions and billions."_

Kerry Packer's gambling is pretty legendary.

There's a story about how he was in a high-roller room in Los Vegas and there was a Texan (oil?) millionaire boasting about how big his ranch was.

Packer was annoyed at how noisy he was, so he walked over.

Packer: "So how much is this property worth then?"

Texan: "'bout $20 million"

Packer (pulls out a coin): "toss you for it"

Apparently the Texan didn't like that idea much...

Packer successfully invested a lot in building casinos in Australia and Macau. His son has taken over his empire and invested even more, though not as successfully.

<comment><USER13> His best ever gamble was selling Channel 9 to Alan Bond for $1 billion, before getting it back a few years later for $250 million.

He later said "You only get one Alan Bond in a lifetime ... and I've had mine".

</comment></comment><comment><USER14> There's a lot in this article that doesn't add up. For example this quote:

"So my philosophy at that point was that I can afford to take an additional risk here, because I'm battling with their money, using their discount against them."

If he's already up significantly (battling with their money) the discount isn't likely to come into play. And he's still playing a negative expectation game so every hand he plays he should expect to give back a little of his gain.

I don't think we're getting the real story here.

<comment><USER15> I agree - they state the following:

"You'd never lose the million. If you got to [$500,000 in losses], you would stop and take your 20 percent discount. You'd owe them only $400,000." ... So when Johnson got far enough ahead in his winning sprees, he reasoned that he might as well keep playing.

I don't quite see how this makes any sense - if you get far ahead in a winning spree, the value of your discounted loss diminishes significantly... doesn't it? For instance, if you won $2 million, the discount is now $100k on a $2.5 million loss, which is only 4% (much smaller than the initial 20% discount of $100k on a $500k loss)

<comment><USER16> He went in with $1M, odds of 50/50 and a 20% discount once the losses are over $0.5M. Lets assume for simplicity that all hands he plays are equal ($0.1M according to the article)

Because the discount kicks in at $0.5M of losses, he should plan to lose bets for $0.5M first. This is a setup.

Now he needs play to win the bets for remaining $0.5M he has.

Because the odds are 50/50, after a few rounds of playing with the $0.5M he has, he's going to have lost half the hands, and won half of them. While he gets 2x for his wins, he gives up only 0.8x for his losses.

Net = 2x - 0.8x = 1.2x. He just had to rinse and repeat with the $0.5M he was left with. Though I'm sure he brought in a lot more money once the $0.5M loss kicked in the discount.

Just note that this explanation is a simplification. 50/50 odds (technically 49.75/50.25 according to Johnson) have to be accompanied by an even performance on double-downs and splits.

</comment></comment></comment><comment><USER17> The article is a bit confusing. If I take it correctly, a few casinos offered him nearly 50:50 odds, and a discount on his losses if he lost more than ~500k. In other words, a great deal, worth ~$50k. And then he proceeded to have amazing games, winning millions by sheer luck. The article doesn't talk much about the luck this requires, and one wonders if he does have something else going on.

<comment><USER18> The negotiation on the rules of the game is key. For example the difference between a 'soft 17' and a 'hard 17' is worth a few percentage points, and those points are valuable.

<comment><USER6> No it's not. Soft 17 is worth approx. 0.25% on the house edge. Even in Vegas, it's not hard to find 0.50% edge blackjack, even at low stakes.

<comment><USER19> I've literally never been in a casino where a dealer can hit anything soft, or where a player can't. Admitedly I've never been in a US casino.

</comment></comment></comment></comment><comment><USER20> hey guys, i actually think he might have positive expectation:

he negotiated a .25% houe edge (roughly half of normal perfect play) and if he loses 500k he gets 20% back, each session independent.

check this analysis. he is +EV by martingaling his wins - 7/8 times he loses 400k with a 20% discount (400k x 7 x .80 = 2 240 000), 1/8 times he wins 400k x 8 with no reverse-discount = 3 200 000, so that's a mil in EV. if he pushes his martingale as far as he can his expectation grows superlinearly, which is why he martingales his wins until they cut him off.

is this math right? if he was -EV, the house would let him keep playing, hence telling him he can continue to play under normal rules. note he refused.

update: an easy way to see this (gross oversimplification) is if he plays only one hand/session he stands to win 100% of the money 49% of the time and loses 80% of the money 51% of the time.

<comment><USER21> This explanation seems most consistent with the limited information in the article.

We don't know whether he had several -$400K sessions before his big run. Gamblers and non-gamblers talk more about upswings than downswings.

There could be some other unmentioned factors that aided him a little, but the capped downside, a lucky run, and selective reporting are probably a sufficient explanation.

<comment><USER19> That's funny, I much prefer the story of mybiggest loss in an hour of blackjack than any of my winning stories, just seems more entertaining and less boastful perhaps.

</comment></comment></comment><comment><USER22> It seems that every once in a while an enticing story comes out about a person (or team) who beats the house and wins big.

I spent a short time in the 'gaming' industry building electronic slots and other types of games. The word on the street was that the industry encouraged these types of stories. And, while maybe they didn't directly sponsor them, they looked favorably on them. These types of stories perpetuate ideas of the little guy beating the house.

The profit of the gaming industry comes from the average person thinking that they can beat the house, when, the fact they can't. When the average person begins to believe that they can't win, casino profits go down. As such, casinos put billions of dollars into R&D and marketing to give the average person the illusion that they can win.

I wasn't involved long enough in the gaming industry to be an expert, and I'm sure there are some exceptions. But, generally, to average people, of which I would classify 99.9% of the population, even those of us terribly smart people, the house advantage always wins.

</comment><comment><USER23> The description of his odds system did not make a lot of sense to me; especially in light of the statement that he does not count cards. Can anyone elaborate?

 _"Many casinos sell laminated charts in their guest shops that reveal the optimal strategy for any situation the game presents. But these odds are calculated by simulating millions of hands, and as Johnson says, "I will never see 400 million hands."

More useful, for his purposes, is running a smaller number of hands and paying attention to variation. The way averages work, the larger the sample, the narrower the range of variation. A session of, say, 600 hands will display wider swings, with steeper winning and losing streaks, than the standard casino charts."_

<comment><USER24> The charts are maximizing EV without taking into account the discount he negotiated. With the loss discount, it becomes more profitable to increase short term variance beyond what the chart strategies would lead to.

<comment><USER23> I'm sorry but your answer neglects the second paragraph that I quoted. That seems sort of important...

</comment></comment></comment><comment><USER25> The article is clear on only one point, but it's not an explanation for his winning. That point is that if he loses $500K, he only has to pay $400K of it. I'm pretty sure that if you bet $100K a hand, and stop whenever you hit the first of +$500K or -$500K, and get a $100K rebate if you hit the lower number ... well, the whole plan would seem to have a positive expected value. And perhaps the same would be true even with a bet increment of $10K or less,

Second, it is strongly implied (without details being given) that he has negotiated rules giving him an unusually favorable expected value per hand -- either a very slightly negative one (which would explain why Tropicana is willing to keep playing with him), or perhaps even a positive one that they keep overlooking. The only rule I saw in there that sounds odd to me is "calling the hand" -- is that a recent twist to blackjack or something?

<comment><USER19> You're talking about this, right?

> _It was the dealer's turn. He drew a 10, so the two cards he was showing > totaled 15. Johnson called the game—in essence, betting that the dealer's > down card was a seven or higher, which would push his hand over 21. This was > a good bet: since all face cards are worth 10, the deck holds more high > cards than low. When the dealer turned over the house's down card, it was a > 10, busting him. Johnson won all four hands._

Pretty sure that by "betting that the dealer's down card" it means that this was the logic behind his betting on the four hands, not that there was a seperate bet on it.

"Calling the hand" most likely refers to the kind-of-tradition of cheering on what you want ("come on facecard... COME ON FACECARD!!")

</comment></comment><comment><USER19> The line that annoyed me most in this was about card counting, saying

> _"The tactic requires both great memory and superior math skills."_

Not honestly true, at least about the maths skills. Memory... isn't how I'd describe it, though I suppose it's sort of right.

In my opinion, the most difficult thing is concentrating on multiple things at the same time (1. Keeping the running count 2. Counting how many cards have been played 3. Following the game itself and deciding what to do 4. Chatting with dealer / other players) - so this can perhaps be called "memory" as you have to remember these things all at the same time.

But for each thing you need to remember, it's a very simple thing on its own. Counting isn't about remembering the order of every card that's come out, it's not even about remembering what card has come out.

If you were to watch a video of a Blackjack game, i.e. you were left in peace and not doing anything yourself, few people would be incapable of counting the cards.

<comment><USER26> exactly. the best blackjack dealers (for the house) are those that can keep you distracted.

<comment><USER19> As far as I'm concerned they're the best dealers for players too - I don't try and count cards in the casino, and find that both winning and losing sessions are much more enjoyable with a friendly dealer.

</comment></comment></comment><comment><USER27> I skimmed over the comments, and I'm surprised to see no mention of it here. Maybe I missed it.

The house always wins, and they still won. This is, for each of them at just a few million, very cheap advertising. Consider how poker/holdem was hyped during the last decade, this is just the same in a different setting.

They will easily win those few millions each back and more. For every smart person such as this guy, there are thousands of idiots out there. The article itself mentions they're trying to lure in high-rollers. This looks rather obvious.

Thus, the title, how Atlantic City supposedly "got broke" by a man, seems very misleading in this context.

Still, maybe I'm missing something here.

</comment><comment><USER28> Even taking into account his negotiated edge, which is impressive, it isn't enough mathematically to account for such substantial winnings over such a short period of time. I agree with what others have said and think he must either have had a counting system or had a terrific run of luck.

Great runs are rare of course, but not unheard of. The reason people don't hear about them often is that very few players play at such a sophisticated level to minimize the house advantage to a paper-thin margin, and even fewer do so at a high-stakes table where this would make big news.

</comment><comment><USER10> Classic ringer's game: they underestimated his ability, including the meta- ability to calculate odds and stay unemotional. Most players, even high rollers, get into the game and start to make hunch bets as play goes on. He was disciplined enough to trust the math and not waver his strategy.

</comment><comment><USER29> I thought casinos were mostly fronts for money laundering, but since this has a story to it, there is credibility that a growth industry like gambling has real credibility in the startup scene. Therefore, there should be more gaming startups in YCombinator.

</comment><comment><USER30> Just goes to show that the world is still human in some regards, and communication and negotiation skills are still king (pun def. intended.)

</comment><comment><USER31> I can't be the only one who thought this was about Donald Trump before I clicked through...

edit: I am completely serious

</comment><comment><USER32> Great PR for the Atlantic City Casinos? could that be the explanation for this great winning streak?

</comment><comment><USER33> Calling card counters cheaters is like calling people who get good grades on tests cheaters because they discovered the solution to the problem during the test with their mind by eliminating the wrong answers using statistics and probabilities.

Card counting is a code phrase that translates to "if you don't let the house win, we won't let you play".

</comment><comment><USER34> What is surprising is how easy it is to compute the odds..its just permutations and combinations..not that hard its a 100 level math course in most colleges.

What makes it different is that we needed two things to leverage the $1 million he put up per Casino and the Casino management being fool-hardy enough to believe that they computed the odds on the change in rules and discounts correctly.

It would be like say oh stacking the deck in that the founders get one class of stock and everyone else another class which allows the founders to retain ownership control of a start-up.

You do not need to card count as he changed the rules to only have hand shuffled six decks in the shoe..I can with a certain memory system compute the odds on cards dealt from that shoe and so can you..its not hard..its simple math..

<comment><USER35> How does hand shuffling six decks in the shoe give the player an edge compared to the normal machine shuffling of the same six decks ?

<comment><USER36> There is some debate about this (to say the least) but the theory is that "hot sections" of the deck are propagated between shuffles of the decks when hand- shuffled. So if you run into a streak of good cards at the beginning of one shoe of cards, then that means you'll have another streak of good cards mid- way through the next shoe (or whatever). Then you can plan your bets accordingly by placing small bets to minimize your losses during the cold sections and then upping your bets during the period of hot cards.</comment></comment></comment>


Haroon Moqtazarda: Experience Founding - <AUTHOR> http://www.heekya.com/blog/?p=5 <comment><USER2> _Simpler, easier, faster always wins out._

Man, do I hope that's true.

</comment><comment><USER3> _Don't be afraid to ask for...raw measures of intelligence, [like SAT scores]._ [loosely paraphased]

Interesting.</comment>


Extending the Linux Kernel with Built-In Kernel Headers - <AUTHOR> https://www.linuxjournal.com/content/extending-kernel-built-kernel-headers <comment><USER2> It's a simple and practical solution. It irks me for some reason but I can't think of something better.

<comment><USER3> It's too bad the squashfs idea was dropped. Having to download and unpack the archive somewhere seems like an extra step that should be unnecessary vs just loading the module and having the tree appear in /sys for you to point your compiler directly at.

Also a bummer that it looks like you have to be running the kernel to get access to this— perhaps the archive could be marked off in the binary somehow so that there's a way to access it for non-running kernels (eg, the dkms use case of wanting to build the module for that kernel you just installed ahead of booting it for the first time).

Overall binary size is a legit concern, but if this is going to be in an optionally-loaded module anyway, it seems weird to make that call just based on memory usage. I imagine most distro kernel builds will just disable this, since they already ship the headers in separate packages.

<comment><USER4> squashfs was dropped because Greg doesn't like squashfs, which I can understand somewhat (it doesn't have an active maintainer really, there's no userspace library, just binaries, etc.).

However, we're doing a project where I work that depends heavily on squashfs, so the fact that it was dropped from this even though it would have been nicer because people don't like it because it doesn't have a maintainer worries me. Hopefully someone picks it up :)

<comment><USER5> Oh, gosh. Since when it's without a maintainer? I would think it's quite an important piece of most embedded Linux projects. Those companies really should sponsor someone to take care of it.

My personal project also depends on squashfs. Are there any other options for read-only compressed rootfs?

Squashfs-tools are a bit rough around the edges that's for sure. I patched in ability to produce an image without root for my use, but I think it would be generally useful. Sort list file format is funky. It's: "filename_string priority_integer", so it will not work for files with spaces. Also new lines, but that's far less common. It was not yet a problem for me and I can always patch it more and one can say, that people having files with spaces deserve it, though it's entirely different issue.

<comment><USER6> squashfs has horrible performance. All requests to the block layer are 512 Bytes. Other filesystems like ext4 make much bigger requests and perform much better in the end despite the compression of squashfs leading to lower overall data volume.

Disclaimer: Measured 2 years ago on ARM32, emmc, with a 4.1(?) kernel.

<comment><USER7> Try using the SQUASHFS_4K_DEVBLK_SIZE config option next time

By default Squashfs sets the dev block size (sb_min_blocksize) to 1K or the smallest block size supported by the block device (if larger). This, because blocks are packed together and unaligned in Squashfs, should reduce latency.

This, however, gives poor performance on MTD NAND devices where the optimal I/O size is 4K (even though the devices can support smaller block sizes).

Using a 4K device block size may also improve overall I/O performance for some file access patterns (e.g. sequential accesses of files in filesystem order) on all media.

Setting this option will force Squashfs to use a 4K device block size by default.

If unsure, say N.

<comment><USER6> I'm quite sure I have tried all options available in the kernel I used back then without achieving performance comparable to ext4. My project manager was conviced that squashfs makes things faster (and so hoped I initially because the overall data volume is smaller) so I had a hard time to convince him that we will just drop that "optimization" from the project plan. (He was one of those who can prefer checkmarks over technical merit.) I don't remember the 4K option for sure, but if it existed, we tried and measured it. What is the size ext4 is reading from the block device? I'm reading this on holidays on my phone, so I cannot easily fire up blktrace. But I could guess it's 128K or even 256K. So still far from 4K.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> Why /sys and not /proc ? After all, the kernel binary itself is under /proc .

<comment><USER9> There is a very long thread on LKML discussing this. But I'm pretty sure the primary reason is that procfs has been slowly accumulating more and more random knobs, while sysfs actually has a structure that can be used reasonably by userspace.

</comment></comment><comment><USER10> Too bad there's no mention of the new BTF file format, which is supposed to resolve this issue for the eBPF side:

[https://www.kernel.org/doc/html/latest/bpf/btf.html](https://www.kernel.org/doc/html/latest/bpf/btf.html)

</comment><comment><USER11> Why can't they build the eBPF bytecode offline using the correct kernel API and ship the bytecode to the Android device?

<comment><USER12> If it's anything like GPU shaders, it's because the bytecode format itself is Turing-complete and not-so-sandboxed, and the actual security/fault-tolerance comes from a static analysis pass done during compilation that ensures the _source code_ being compiled isn't doing anything crazy.

If you were able to load bytecode directly, you'd skip this verification step.

(I've always thought VM runtimes should have signing keys, sign build artifacts—e.g. bytecode—as they create them, and then have the VM's module loader check the signature. This way, you could still rely on build-time static verification for your security, while also being able to share compiled artifacts among any set of runtimes that trust one-another's signing keys.)

<comment><USER13> eBPF is specifically not Turing-complete because you can not prove any property of Turing-complete language code.

<comment><USER14> eBPF is not Turing-complete, but static analysis can absolutely prove things about individual programs in Turing-complete languages.

<comment><USER15> You can prove some code in Turing complete languages.

You can construct non-turing-complete languages which all code can be proven, and that is the point the parent is making.

<comment><USER16> Forbidding loops in a language does make all code written in that language provably terminating. But there's not much _else_ it lets you prove for all code, at least not if you want to get results before the heat death of the universe. For example, you can't determine what inputs to a program will yield a given output: even classic BPF is probably expressive enough to implement a cryptographic hash, and eBPF definitely is. You can't enumerate all possible paths through the program: the number of paths is exponential in the size of the program.

On the other hand, forbidding loops does make some properties easier to prove _for restricted classes of programs_. For instance, Linux's BPF verifier tracks, for each instruction, the minimum and maximum value of each register at that point in the program. It uses that to determine whether array accesses in the program are bounds checked, and complain if not: that way, it doesn't have to insert its own bounds check, which might be redundant. Doing the same in the presence of loops would require a more expensive algorithm, so forbidding them is a benefit. Yet... Linux's verifier is sound: it will forbid all programs that could possibly index out of bounds, at least barring bugs. But it is not fully precise: it does not pass _all_ programs that have the property of never indexing out of bounds for any input. For example, you could have a program that takes a 256-bit input and indexes out of bounds only if its SHA-256 hash is a specific value. That program is safe iff there happen to be no 256-bit strings that hash to that value, something that you could theoretically verify – but only by going through all 2^256 possible strings and hashing each of them. Linux does not.

Nor would it be reasonable to, why does that hypothetical matter? Because the ability to prove arbitrary properties about _all_ programs, at the cost of arbitrarily long analysis time, is sort of the main mathematical benefit to non-Turing-completeness. But from a practical standpoint that's useless. And if you don't need that – if you only care about the ability to prove things about restricted classes of programs – well, you can achieve that even with loops. After all, that's what a type system does, and there are plenty of Turing-complete languages with type systems. As I said, disallowing loops makes the job easier in some cases. But that's more of a matter of degree, not the kind of hard theoretical barrier that "non-Turing-complete = analyzable" makes it sound like. That makes it a less convincing rationale for disallowing them.

</comment></comment></comment></comment></comment></comment><comment><USER17> What's wrong with shipping headers and using DKMS for building like in GNU/Linux?

</comment><comment><USER18> > embed the kernel headers within the kernel image itself and make it > available through the sysfs virtual filesystem (usually mounted at /sys) as > a compressed archive file (/sys/kernel/kheaders.tar.xz)

eeww

<comment><USER19> File this one under: kludges to get around openly user-hostile userland.

<comment><USER20> How so?

Seems like an elegant enough solution to ensure you always have the right headers to build modules against the currently running kernel.

<comment><USER19> Isn't kernel header availability a solved problem on any linux system that isn't busy pretending not to be built on linux?

<comment><USER21> The nice thing about this is that you can keep kernel headers around in a much smaller format on-disk, while still making them available separately as a package if you want.

A few problems this solves:

1\. Neither user nor tool knows specifically how to install the headers for specifically this version of the kernel.

2\. Manually installing a header package on e.g. Ubuntu marks it as manually selected, meaning it doesn't get cleaned up with an 'autoremove'; selecting a generic kernel headers package (like linux-headers-4.14-generic or something) means that every time your system auto-updates the kernel package version (which happens by default on, for example, AWS IIRC, and happens a lot) you end up with yet another copy of the kernel headers, and then you blow your I/O budget uninstalling them.

3\. It removes one extra step to running e.g. an eBPF program, or building an e.g. out-of-tree kernel module, so make scripts can now start to take advantage of that. For example:

        # Get headers
        if modprobe kernel_headers; then
          <unpack the tgz>
        else
          <scan through /usr/src, /usr/local/src, etc. for what looks like the right version, or fail>
        fi

</comment></comment></comment></comment></comment><comment><USER22> Shipping the kernel headers is complicated, but somehow a whole C compiler is not? Or doesnt BPF compilation need a C compiler?

<comment><USER9> BPF is compiled in user-space and the bytecode is provided to the kernel -- the compiler definitely isn't shipped as part of the kernel.</comment></comment>


Looking for a girlfriend who is well-educated, affluent, and Internet savvy? $55 for a thousand. - <AUTHOR> http://www.focus-usa-1.com/targeted_demos_females.html

<comment><USER2> I think the M means thousand, not million. Also, this is probably per use of the list (they insert ringers to check).

<comment><AUTHOR> You're right, I'll fix the title. Apparently M when used in marketing is actually the roman numeral M. I wonder if K was already taken by some other marketing thing.

<comment><USER3> <http://www.inboxmarketinginc.com/resources/glossary.php#c>

quote (CPM): The M stands for the Latin mille, meaning "a thousand."

<comment><AUTHOR> Given the expected 2% conversion rate on direct mail, you'd still be doing pretty well if you forked over the $55 to send out a personal ad. :-)

<comment><USER4> While the population as a whole may be savvy and sophisticated, the 2% that respond to a bulk-mail personal ad might not exactly be a random sample.

</comment></comment></comment></comment></comment><comment><USER5> Now that's the ultimate cold call.

</comment><comment><USER6> Wow, I didn't realize the "List Management" industry was this productized.

<comment><USER7> Bigtime, The lists are worth a lot of money because sending out mailers to people who won't act on them is expensive.

I'm simultaneously creeped out and impressed by the Comcast commercials that offer to target ads by age, sex, voter status, and other demos. They cross compiled all sorts of databases to get that info.

</comment></comment><comment><USER8> $55 seems quite cheap for a million addresses.

I wonder if you can get a volume discount. Buy 3 databases, get the 4th free!</comment>


Older Adults' Forgetfulness Tied to Faulty Brain Rhythms in Sleep - <AUTHOR> http://npr.org/sections/health-shots/2017/12/18/571120472/older-adults-forgetfulness-tied-to-faulty-brain-rhythms-in-sleep <comment><USER2> Sleep allows the brain to catch up on the day's events. That is, it buffers certain things to be processed in full later. Disrupt that process - e.g., not enough sleep, alcohol (as a REM sleep disruptor) - and memory will go sideways.

I'd be interested in knowing how many of the prescription drugs common among older adults have REM disruption as a side-effect. I wonder if that's even tested for. Perhaps we're managing one set of ills only to create another?

<comment><USER3> > Sleep allows the brain to catch up on the day's events. That is, it buffers > certain things to be processed in full later

Citation?

I didn't know there was a proven reason why we sleep...?

<comment><USER4> Here's a good review that came out not too long ago:

>Specifically, newer findings characterize sleep as a brain state optimizing memory consolidation, in opposition to the waking brain being optimized for encoding of memories.

[https://pdfs.semanticscholar.org/9ac5/c749244b9e2509a670a816...](https://pdfs.semanticscholar.org/9ac5/c749244b9e2509a670a8168507d4f07b1858.pdf) [pdf]

<comment><USER5> <clever analogy to some CS concept. life is a computer. human is a machine. brain is a program. all is binary. 0010100101. why does the treadmill speed up the harder i run?>

</comment></comment></comment></comment><comment><USER6> Ah, I'll have to share this with my wife! We welcomed our first child in November. Since then, we've been pretty sleep deprived thanks to the nightly feedings and diaper changes. Both of us were remarking this morning how forgetful we had become, even to the point that we couldn't recall how the night had gone.

<comment><USER7> Since having a kid myself, I've pretty much settled on the notion that it's an evolutionary trick: since you don't sleep much, you don't remember the hellish times during those early months (years?), so you're willing to have a second – or third, or fourth – kid down the road.

<comment><USER8> Ha! Funny but makes sense, though I think in this case it is a by product of our young forcing us to "pay attention" to them. The thing I always found more interesting is how babies tend to look more like their fathers than mothers at birth. The evolutionary advantage being to make it more obvious "who's kid it is". It is fairly easy to know the mother, but harder to "prove" the father, at least evolutionary speaking.

<comment><USER9> The young aren't forcing you to "pay attention" to them, they just want their needs met. One of those needs is to not be eaten by snakes or other predators, so they don't want to be alone. How people ever came up with the idea that putting a helpless baby in a different room was a good idea or even preferable to just cosleeping is beyond me.

<comment><USER10> Presumably it's a good idea because there is now no risk of them being eaten by snakes or other predators.

Are we supposed to stop adapting to our environment?

<comment><USER11> But they dont know that. And the stress they experience as a result is potentially damaging to a developing brain.

</comment></comment></comment></comment></comment></comment><comment><USER12> From the paper, it looks like the area involved is the medial pre-frontal cortex (mPFC). Give mPFC's role in memory, my initial suspicion is that the brain rhythms are a symptom, and not a cause, of memory loss. That means that fixing the brain rhythms might not fix the underlying memory problems.

It's also worthy to note that moderate exercise can improve connectivity of the mPFC, so that is at least one way to avoid these troubles.

</comment><comment><USER13> One of the more fascinating parts to me was how little it took:

"If you're like 50 milliseconds too early, 50 milliseconds too late, then the storing mechanism actually doesn't work."

<comment><USER14> Fascinating indeed. That's not very different from the timing of common music. Could it be that our appreciation of music is somehow related to the way our brains work?

<comment><USER15> I think music's appeal is related to the rythmns of heartbeats. Logic being you find comfort in being close to another human, an advantage to be in pairs. Therefore the brain is hardwired to prefer rythmns around that pace.

Just my theory though

<comment><USER16> One of the most popular recordings of the 20th century was basically in tempo with the resting human heart, with just that intro.

"The Dark Side of the Moon" by Pink Floyd

</comment></comment></comment></comment><comment><USER17> Best thing I did for my sleep and my life was quit drinking alcohol and caffeine. I feel like I sleep twice as good and feel twice as better throughout the day. No exaggeration. But the social pressure to use these drugs is intense, as most of the population is addicted to some degree.

<comment><USER18> Both alcohol and caffeine get related to health benefits in the popular press (including science press).

</comment></comment><comment><USER19> Quite by accident, I've discovered that taking a microdose amount of the antipsychotic (!!) seroquel/quetiapine dramatically improves sleep quality and amount. I use about half a 25mg pill every night. You have vivid, happy (no, really) dreams, and you sleep like the dead for 8h. In fact, the depth of sleep is the only drawback, IMO, as you can't take it if you're late to bed, or you will miss work.

A moderate dose of seroquel for actual psychosis would be like 400mg, and a typical off-brand use for sleep would be like 100mg, which is what my partner was on when I decided to take one of her pills (with her consent) and see what was up. I can't recommend higher than 25mg, however.

A nice indica also helps, in my experience.

It wouldn't surprise me if bedtime use of both these things are discovered to protect memory in older adults.

<comment><USER20> If you frequently use indica to help sleep, you'll find it even harder to sleep without.

</comment></comment><comment><USER21> They outline the experiment they need to run, every participant gets a neuro hat but neither the participants or investigators know if the participant got a 'sync the waves' hat or a 'disrupt the waves' hat. Then look at the results and unblind the hat choices.

EDIT: From the article -- _" But the study also suggests that it's possible to improve an impaired memory by re-synchronizing brain rhythms during sleep.

One way to do this would be by applying electrical or magnetic pulses through the scalp. "The idea is to boost those brain waves and bring them back together," Helfrich says.

Walker already has plans to test this approach to synchronizing brain waves."_

</comment><comment><USER22> Oh geez. Wondering why my sleep quality has diminished as I got older and my memory, um... Forgot what I was going to say. 8-(

<comment><USER23> Haha, your choice in emoji gives away your age in any case.

<comment><USER24> Note that HN doesn't support Unicode in comments, so plaintext emojis are the only option.

<comment><USER25> The point might have been that with access to emojis (on other platforms) youngsters no longer use the oldschool emojis. Use of oldschool emojis strongly suggests oldschool poster :)

<comment><USER24> Use of the word "emoticon" instead of "emoji" would also be a strong indicator :)

</comment></comment></comment></comment></comment><comment><USER26> So does anyone have recommendations on how to improve brainwave coordination and reverse the symptoms indicated in the article? Any tips, techniques, practices, other than avoiding alcohol/caffeine?

<comment><USER27> I would recommend the book "Make your brain smarter " by Sandra Bond Chapman.

<comment><USER28> Any good tl;dr's?

<comment><USER29> not read it, but i'm guessing her tedx is a tl;dr? [https://www.youtube.com/watch?v=xh8el8m9mLM](https://www.youtube.com/watch?v=xh8el8m9mLM)

</comment></comment></comment></comment><comment><USER30> Is it me, or do a lot of older people snore? Is there some sort of muscle that relaxes in the throat that as we age, causes that?

And if that's the case, is a simple CPAP part of the solution to this issue?

<comment><USER31> Assuming we're really talking about sleep apnea, which snoring is a symptom of, and does affect your sleep in some really nasty ways. The prevalence of memory problems goes beyond what apnea would cover.

Let's talk stats for a second:

There's a buildup of fatty tissue as you age. The soft palate changes in shape, and you're more likely to gain weight. Weight is the largest component, gender is secondary, and age is tertiary. Interestingly, while sleep apnea is more likely to occur as you age, the severity goes down.

Incidence in male population goes to about 20% after the age of 75. For women, it's a bit over 10 - though that's just an estimate because women show symptoms at a different rate.

I somewhat wish apnea was the cause, for selfish reasons. There would be more drive to improve the machines, and as a bonus, these people could start getting treated.

<comment><USER32> There's also skeletal changes with age: the facial skeleton shrinks starting in our 40s-50s.

Got a reference for severity claim? That measured in terms of AHI or significance of the events?

</comment></comment></comment><comment><USER33> Not sure if any here have tried it, but would looping a recording of isochronic delta-wave tones during sleep help sync brain rhythms?

<comment><USER34> This was my thought too. I use these nightly and sleep like a baby. I'd argue that it's also past the point of being a placebo, as I have done this for over a year and have only found a couple of tones that are actually effective. This is the current favorite:

[https://mynoise.net/NoiseMachines/isochronicBrainwaveGenerat...](https://mynoise.net/NoiseMachines/isochronicBrainwaveGenerator.php)

</comment></comment><comment><USER35> I wonder if this is at all related to the idea of interactive metronome therapy. See [https://www.interactivemetronome.com/what-is- im](https://www.interactivemetronome.com/what-is-im)

Im seems to be about improving "Neurotiming".

</comment><comment><USER36> Looks like I'm going to be the guy to shout "correlation is not causation" today.

What if older brains decide to filter more, store less and this is reflected in the brainwave patterns? A young brain might go "accept accept accept accept...." whereas an older brain might go "accept reject reject accept reject...". I'm pretty happy about having forgotten a lot of stuff.

After all, the older you get, the more you have to throw out to accommodate new memories. And it's mostly trash. So why remember it over sweet youth?

<comment><USER37> We're talking specifically about people forgetting things that they want to remember, I don't think your hypothesis applies.

<comment><USER38> It might be harder for older brains to forget the right stuff.

Wanting to remember something and remembering something isn't as much of a conscious choice as we would like.

I have noticed that my recall speed is exponential in the quality of sleep and exercise. If I work out, have a great sleep (post exercise sauna), I am _sharp_. If I trash myself, I have a noticeable 500ms+ access latency. Not for concepts, but for words. Words always take longer.

</comment></comment></comment><comment><USER39> so basically proving the old adage that it's hard to teach an old dog new tricks ..but maybe we can get around this by wearing electrodes on our heads to fix this as we get older, one can only hope.

</comment><comment><USER40> I've been wondering about this lately. Honestly, and it kind of pains me to say this, I'm coming to the conclusion that alcohol is Bad.

Hey, quit laughing - I don't think that it is necessarily unhealthy to try and smooth out some of the bumps along life's road, but there have got to be better ways. And don't say, 'exercise.'

The cognitive hits of alcohol are just looking like they're too long term. Not even over a lifetime, but over a week. With all the information coming in about how it messes with our REM cycles and potentially inhibits learning that took place over the past day or two from sticking to your brain...I dunno.

What is the point of dropping your day's problems on the floor in the evening if doing so prevents you from learning or benefiting from the experience?

Edit: By which I mean, alcohol seems to cause a lot of issues around what your brain does while it sleeps, which seems to be what this article is calling out as a problem that can be exacerbated with age. Sorry, I guess I kind of jumped between topics there...

<comment><USER41> I recently got an apple watch and along the way installed a sleep tracking app. I was skeptical of its accuracy until I realized that I could identify the nights I'd been drinking with 100% accuracy as those nights the tracker didn't seem to think I slept hardly at all. I always knew I'd be tired the next day but this was eye opening.

<comment><USER42> This is because alcohol is an anesthetic. And the human body will tend to wake up after an anesthetic wears off. I believe the anesthetic properties of alcohol lasts roughly 4 hours, so if you sleep you'll probably begin to stir and wake up 4 hours after your last drink. Very similar to surgery patients who naturally wake up after the anesthetic used for surgery wears off.

<comment><USER43> 4 hours for me like clockwork after a few drinks before bed.

<comment><USER44> This is crazy but I'm pretty similar, is this a documented effect that I could read more about?

Almost always after a night of heavy drinking I wake from anywhere between 5am - 8am and have a rough time getting back to sleep for at least a few hours. Knowing my drinking patterns, those times would tend to correlate to about 4 hours earlier passing out.

<comment><USER45> This happens to many people in around the same timeframe, I'm pretty sure it's due to GABA rebound [https://www.nature.com/scitable/blog/mind- read/alcohol_sleep...](https://www.nature.com/scitable/blog/mind- read/alcohol_sleep_and_why_you)

From what I recall, alcohol binds to GABA receptors, GABA builds up in the body, eventually metabolizes to glutamate which takes a few hours depending on how much you drink, but seems to be around half a night's sleep. The glutamate wakes you up and gives you energy, hence the strange "feeling great after a night of drinking on no sleep" thing.</comment></comment></comment></comment></comment></comment>


Ask HN: What makes front end apps defensible? - <AUTHOR> For premier front end applications such as Google Apps, what prevents a competitor from simply skimming the JS launching a competitor? <comment><USER2> It's ilegal to copy the JS of other site and use it, unless it has an explicit license that permit it.</comment>


Bill Gates interview (1986) - <AUTHOR> http://programmersatwork.wordpress.com/bill-gates-1986/

<comment><USER2> Thanks for posting the interview. The last time I read an old interview of Gates - more than 5 years ago, it was a huge belief changer for me.

This was just in time, was wondering how to structure my small company. Has got lots go good pointers.</comment>


Ask HN: Any C++ code coverage tools you would recommend? - <AUTHOR>

I have BullseyeCoverage and Squish Coco on my list to research. Any other interesting tools/solutions that I should check? If you have used any of the two solutions above, what was your experience with them? <comment><USER2> Among commercial products: Testwell's CTC++ [[http://www.testwell.fi/ctcdesc.html](http://www.testwell.fi/ctcdesc.html)]

Among freebie products: ggcov [[http://ggcov.sourceforge.net/index.html](http://ggcov.sourceforge.net/index.html)]

<comment><AUTHOR> Thanks for the suggestions. Have you used any of them?</comment></comment>


Awesome Platfrom to Promote Startups for Free - <AUTHOR> http://www.creativebuzz.co <comment><AUTHOR> It is a great place for promoting Startups, Blogs, Apps or Kickstarters</comment>


Ask HN: What is your favorite YouTube channel for JavaScript? - <AUTHOR> <comment><USER2> Traversy Media is incredible. Useful tutorials, very accessible instruction.

[https://m.youtube.com/channel/UC29ju8bIPH5as8OGnQzwJyA](https://m.youtube.com/channel/UC29ju8bIPH5as8OGnQzwJyA)</comment>


Show HN: War on Ether - <AUTHOR> http://waronether.com <comment><USER3> One of the toughest onboarding ever.

I read the text and I have no idea of what to do. Tried to click around, nothing. Tried to click on the example link and got a Firefox download dialog

        You have chosen to open:
        waronether_player_example.sol
        which is: BIN file (1.8 KB)
        etc

Going back to step 1:

> First, create a bot contract having an "execute" function which the game > contract will run each round:

How to do it?

<comment><AUTHOR> There's some prerequisite of knowing how Ethereum works and how to work with smart contracts at this point. There's room for more explanations for the public which is not that involved in Ethereum.

<comment><USER3> I realized that after reading the comments on HN, but the web page doesn't contain the word Ethereum. I think it should go into the very first line of the instructions.

Ether is a pretty generic term and I was setting up some IP addresses when I checked that site. I was primed for a different context :-)

<comment><AUTHOR> Heh. Good point.

</comment></comment></comment></comment><comment><USER4> Now I really want distributed corewars. Can we do that? I mean, if Etherium can back this sort of grid, and the contract interpreted redcode at %ip (to use at&t syntax: I don't think redcode has a notation for the instruction pointer) in the grid, and increment %ip (unless it's a jump, obviously), than we could probably get the MARS spec running. The only trouble would be ensuring the contract actually was a valid interpreter, and loading the data in the address space to begin with.

Or I could be totally wrong. I don't really know etherium that well.

<comment><AUTHOR> Interesting. I'll admit, my original goal was that the bots' code could also be overwritten by others, but that's not possible per the spec:

9.4.3. Jump Destination Validity. We previously used D as the function to determine the set of valid jump destinations given the code that is being run. We define this as any position in the code occupied by a JUMPDEST instruction. All such positions must be on valid instruction boundaries, rather than sitting in the data portion of PUSH operations and must appear within the explicitly defined portion of the code (rather than in the implicitly defined STOP operations that trail it).

I didn't consider implementing another spec though. Theoretically, should be possible, but I'll have to think about it some more!

<comment><USER4> Basically, all that's required for writing a MARS implementation is:

-Writing a Redcode assembler

-A contiguous address space of up to 8000 units, with circular memory (i.e all addresses are computed mod the size of the address space.), and a segregated, program-specfic address space (typically 1/16 the size of the full address space), if you're implementing ICWS '94

-Writing an actual Redcode VM, with support for all 16 (7168, actually, counting the different addressing modes) instructions, and process queues for each program.

Notably, all instructions take up one slot in RAM, and take one cycle to execute, after which control is passed to the program which has executed least recently, specifically the process in the program's process queue that has run least recently.

Finally, all assembled programs must be inserted into ram, and the emulator is started.

See, not hard at all!

No, seriously.

If you're interested, the ICWS '94 draft (ICWS died before it was ratified, but it remains the most popular dialect available today) is available at [http://corewar.co.uk/standards/icws94.htm](http://corewar.co.uk/standards/icws94.htm). A. K. Dewdney's orginal articles in Scientific American describe the origins of the language, as well as the oldest dialect of Redcode, if you're interested in implementing that, as wellas describing the basics of how to play. They're also just cool reads. They can be found at [http://www.koth.org/info/akdewdney/](http://www.koth.org/info/akdewdney/). Dewdney's Corewars guidelines, from '84, are also of interest [http://corewar.co.uk/standards/cwg.txt](http://corewar.co.uk/standards/cwg.txt). The Corewar wikipedia article is also informative.

Finally, [http://corewar.co.uk](http://corewar.co.uk), and [http://koth.org](http://koth.org) have links to a wide variety of resources about the game.

</comment></comment></comment><comment><USER5> Is this supposed to be a game?

Why would anyone pay $11 to play something so poorly documented with almost no fun factor?

<comment><AUTHOR> True enough on documentation. To be clear, you aren't supposed to join THIS game, it's a test network. You're supposed to either run an instance of this game yourself (and change parameters like the registration fee).

I'm also considering running an instance myself on the live network with different parameters (larger board, different fee).

<comment><USER6> >You're supposed to either run an instance of this game yourself

How is this different than hosting your own game server without a blockchain?

<comment><USER7> He means deploying to a public blockchain. You can then play this with your friend or someone else. It's different from running a game server since the contract will enforce the rules of the game, while if you control your own game server you can temper with it.

</comment></comment></comment></comment><comment><USER8> Using gas as a gameplay mechanic is such an obvious idea in hindsight. It's a glimpse into what "blockchain-native" games could become in the future. Apologies if this is a well-known trend and I'm just now learning about it, but I think it's pretty cool, and it's neat to see how this game implements it.

<comment><USER9> Yeah, because real gamers want to PAY for every move. Right.

<comment><USER8> That's going to be true of any game built on Ethereum. Might as well make it integral to the game.

<comment><USER9> That's what I'm saying. Games-on-blockchain are a completely non-starter.

<comment><USER8> The concept is fine as long as the transaction fee is low enough. The current minimum "gas" fee on Ethereum is something like a half-penny per transaction. That may indeed be too high for practical everyday gaming. But what if the transaction fee drops to a hundredth or thousandth of a penny? What if the rest of the game is otherwise free code on the blockchain, and you don't have to drop $60 for the privilege to play? Then the proposition is not so outrageous.

It wasn't so long ago that subscription gaming like World of Warcraft was a non-starter, or mobile micro-transaction gaming was a non-starter, but then both those concepts went on to dominate. There are many possible futures in which blockchain gaming could become viable. It's still early days for the tech. Much is in flux. None of us can be sure how it's going to play out.

<comment><USER9> > But what if the transaction fee drops to a hundredth or thousandth of a > penny?

That can never happen. Not unless the miners are willing to lose their asses off. Bandwidth, storage, CPU etc are not free, and blockchain tech is extraordinarily gluttonous for all of those things relative to transaction volume.

</comment></comment></comment></comment></comment></comment><comment><USER10> Interesting, but very light on documentation. Can the bots even find out how much gas they have available?

<comment><AUTHOR> Author here. True enough on documentation. About the specific question - <USER2> can calculate it from their number of tiles and the bonus for each tile. THAT will require tracking it or scanning for it, which costs some gas too :-)

<comment><USER10> I'm not very familiar with Ethereum. Can the players always see the code of the other player?

Can you explain the map?

The registration fee is 1 ETH ($11 currently)?

What does claimTile() do exactly?

<comment><AUTHOR> Of course!

The map shows the current state of the game board - one color for each player for his owned tiles. The tiles with * are "life tiles" \- you receive them when the game starts and they grant you a greater bonus, so there's an incentive to destory the enemy's life tiles first.

As each participant in the network sees the entire blockchain, the players can see the "compiled code", essentially the EVM opcodes, but only after all the players already committed to the hash of their code and new players can't commit anymore. This is a "commit-reveal" method that allows the game creator to accept registrations for a specific bot without actually revealing the player's code beforehand.

The registration fee is indeed 1 ETH at the moment, but that's a placeholder. The winner gets almost all the pool of registration fees (winning a game with 5 players = 4.5 ETH).

claimTile is the API exposed to the bot contracts - it's a way for them to change the board state to signify they own the tile. Of course, as every operation, it costs some gas. So you can have a strategy of claiming as many as possible by using only claimTile, but you could also seek enemy tiles and claim them. It's a trade-off of gas.

<comment><USER10> The bots can also examine the entire board (but that's something that consumes gas)?

If you run claimTile() on an enemy tile that is alive, it dies?

Calling move() will try to move a cell that is alive - can i only move the "alive" part of the cell into a cell that I claimed first using claimTile()?

The game ends after 10 rounds - the number of actions per round is only limited by available gas?

You are running the game on a test chain right now so there is no real ethereum (=money) involved yet?

<comment><AUTHOR> \- Yes, can examine and consumes gas.

\- It becomes your tile.

\- You can move only "life tiles", those with an asteriks, the 5 you have been allocated.

\- Limited by the gas you have been allocated at this round. Careful, though, if you exceed the amount of gas allocated, your actions are reverted. 10 rounds is more of an example. An actual game would have more I believe.

\- Test chain indeed. No money involved.

</comment></comment></comment></comment></comment></comment><comment><USER11> It's not clear what the rules are. What do you start with? What moves are legal?

<comment><AUTHOR> 3/3 comments on documentation ;-)

I will make that more clear on the site, but meanwhile: You start with 5 life tiles which grant you a larger gas bonus. Then, as the bot, you have an API to claim a tile, move your position (your life tiles) and to see the board state. You have to utilize the gas you are allocated smartly in order to eventually control more tiles than your enemies.

<comment><USER11> Okay, it seems like knowing how much gas each API call uses is rather critical to deciding on a strategy. Shouldn't that be documented?

(At first I thought "gas" was just an in-game resource. Didn't realize it was literally Ethereum gas.)

</comment></comment></comment><comment><USER12> Core Wars meets distributed computing, looks cool. Why 1 ether/bot?

<comment><USER7> The fee goes into a prize pool, the winner bot wins the prize.

<comment><USER9> Sounds like illegal gambling.

<comment><USER13> Sounds more like a 'game of skill'[0] than draftkings for example.

[0][http://www.legalsportsreport.com/9022/fantasy-sports-or- gamb...](http://www.legalsportsreport.com/9022/fantasy-sports-or-gambling/)</comment></comment></comment></comment>


Show HN: A place that lists free games - <AUTHOR> Most people like free things, some people like games. If you like 'm both then this might be something for you!
I've made a website, a Discord bot, a Twitter bot, and a bunch of scrapers that roam the web to find free games out there. Just so that they can be found in one place by other people.
I'm running this on my own server, so I'm curious as to how much traffic it can handle. The Discord and Twitter bots run on a fixed interval, so that shouldn't be much of a bottleneck.
You can check it out online at: https://www.freegameisafreegame.com
On Twitter at https://twitter.com/fgiafg
And you can check out the Discord server over here: https://discord.gg/upRUYWb
Let me know what you think, and what could be improved!
Cheers <comment><USER2> Epic bundle section: [https://www.epicbundle.com/article-category/for- free](https://www.epicbundle.com/article-category/for-free)

</comment><comment><USER3> There's a subreddit that does this as well.[1]

[1] [https://www.reddit.com/r/freegames/](https://www.reddit.com/r/freegames/)</comment>


BlindTool: Phone App That Audibly Identifies Objects (with Neural Networks) - <AUTHOR> http://laughingsquid.com/blindtool-a-smartphone-app-that-audibly-identifies-objects-using-the-phones-camera-and-a-neural-network/ <comment><USER2> "BlindTool watches Star Wars" [https://www.youtube.com/watch?v=52mYEkmBX30](https://www.youtube.com/watch?v=52mYEkmBX30) it calls Chewbacca a Yorkshire Terrier.</comment>


A social network for geeks? (Shuzak) - <AUTHOR> http://www.shuzak.com/ <comment><AUTHOR> I submitted to pose a question: Is there a demand for a geek-specific social network? I understand niche networks, but I don't know if this could be a viable community in itself. I understand geeks -- I AM a geek. But if I wanted to join a social network, a complete network full of all types of people is what I would be looking for.

Nonetheless, it's interesting to explore. Other than catering to a specific audience, I cannot see any "hooks" that differentiate them for other offerings.

Another note: there is a very Reddit-like look about it...

</comment><comment><USER2> It makes you register to even see anything. What were they thinking?

<comment><AUTHOR> That was one of my initial reactions when I came across the site.

Clicking one of their navigational buttons will open you up to the rest of the site. Still, there isn't anything engaging about it, though it definitely demonstrates how Reddit-like the design is!

Having mandatory registration would just be... well, something, something, nail, coffin.</comment></comment>


Ask HN: Is anyone building hospitals for Covid-19 patients before the wave hits? - <AUTHOR> I wanted to learn if any nation is bulding up hospital capacity way _before_ the wave of sick people hits. <comment><USER2> The "wave" may already be much further than expected in many places, since about 80-90% go unnoticed due to their mild form[0]. But this would actually be a good thing, as it would mean that:

* Mortality rate is way lower than currently estimated

* On average/median, cases are less sever than anticipated, meaning a much lower percentage of people will have to get hospitalized when infected, reducing the capacity burden

[0]: [https://www.nytimes.com/2020/03/16/health/coronavirus- statis...](https://www.nytimes.com/2020/03/16/health/coronavirus-statistics- undetected.html)</comment>


Facebook will reveal who uploaded your contact info for ad targeting - sahin-boydas https://techcrunch.com/2019/02/06/why-am-i-seeing-this-ad/ <comment><AUTHOR> I just counted and Facebook tells me that 1,147 advertisers have uploaded a contact list that contained my info, specifically found on [https://www.facebook.com/ads/preferences/?entry_product=ad_s...](https://www.facebook.com/ads/preferences/?entry_product=ad_settings_screen) :

        These advertisers are running ads using a contact list they or their partner uploaded that includes info about you. This info was collected by the advertiser or their partner. Typically this information is your email address or phone number.

Want to know what's funny? The email address I use for Facebook was created only for Facebook. I have never given it out to anyone else, ever. The inbox for that account only contains emails from Facebook. I have never given Facebook my phone number. I have never clicked on an ad in Facebook. I have never connected an app with my Facebook account. _Facebook_ itself is the only entity which has ever had my contact info associated with my account. So tell me, how did 1,147 other businesses and groups get their hands on my info if I've never given it out? I can't wait to see what the explanation is when this feature launches end of the month.

<comment><USER2> > Typically this information is your email address or phone number.

Which means they are also using other types of information to identify you, and since your email and phone number can't be used, it must be those other information types. I'd love to know what they are.

My count is 11,885 advertisers, for what it's worth. It looks like car dealerships are the majority of them... I've never bought a car from a dealership. Very odd.

<comment><USER3> Mine is _exclusively_ car dealerships. Are DMV records public?

<comment><USER4> Speculation elsewhere (a Twitter thread I've since lost) is that car dealerships are simply uploading every possible US phone number as a "contact". It seems reasonable, and I can't really think of other reasons car dealerships in states I've never visited have added me (or at least some info Facebook associates with me) as an ad target.

<comment><USER5> Why would this help them? Facebook already lets you target by geography, they could just target all US residents much more easily.

<comment><USER6> Advertisers want more control over who they target than just geographic regions. I'd bet that Facebook let's you select demographic targeting using _all_ of the information they hold on your contacts, so by uploading every phone number you can target people based on geography, age, income, family size, etc.

<comment><USER7> But you can't target demos for users not in your contacts? That makes no sense.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> Are they assigning blame to a single individual? Because I'm pretty sure 95% of my Facebook and Instagram friends have "connected their contacts" at some point. I've had this huge banner on my Instagram profile page for over a year now. It takes up over 50% of the screen and shows up every time I press the button to go to my page:

[https://i.imgur.com/PLvohTH.jpg](https://i.imgur.com/PLvohTH.jpg)

I've never clicked it and never will, but I don't doubt that many of my friends have just to get it to go away. That's why I only give out my Google Voice number to people and only use my real phone number when it's strictly necessary.

<comment><USER9> A person adding their contact list isn't "ad targeting." Some companies literally upload email contact lists to Facebook and pay for ads that will be shown to anyone on that list that also has a Facebook account.

<comment><USER10> It's worth noting that they hash their email lists and upload those. They are never given access to a list of the list of people on facebook who share those addresses.

</comment></comment></comment><comment><USER11> As a recovering media buyer I think this is one of the most concrete forward steps Facebook has made since their struggles began. "Custom Audiences" are great for CRM matching campaigns but so very easily abused. There used to be a 20 row min on lists. There was an article or reddit post I remember that showed how a kid trolled his roommate with ads targeted exclusively at the roommate and 19 fake people. They subsequently increased the list size minimum to 500, but I still cannot fathom that they left such a huge abuse vector open for so long. It's like they didn't care as long as the clicks kept coming.

<comment><USER11> Here it is: [http://ghostinfluence.com/the-ultimate-retaliation- pranking-...](http://ghostinfluence.com/the-ultimate-retaliation-pranking-my- roommate-with-targeted-facebook-ads/)

TIL even the 20 user mine wasn't required and today the min is only 100. I know for a fact that Trump 2016 used this technique with voter rolls to discourage turnout for likely Hillary voters based on a talk I watched by their media team.

<comment><USER12> How did they do that? Target them with ads that said "don't bother voting she's got it under control"?

<comment><USER13> I think parent is referring to a 60 Minutes interview with Brad Parscale, if you want to look it up.

<comment><USER11> The talk I was referring to was from Molly Schweickert, Vice President Global Media from Cambridge Analytica on "How digital advertising worked for the US 2016 presidential campaign"

[https://youtu.be/bB2BJjMNXpA?t=897](https://youtu.be/bB2BJjMNXpA?t=897)

Its really a fascinating watch, and a perfect case study for why GDPR is needed. After reviewing it I don't see any mention of specific techniques used to discourage turnout, but those techniques are well-documented elsewhere: [https://www.theatlantic.com/politics/archive/2016/10/trumps-...](https://www.theatlantic.com/politics/archive/2016/10/trumps- black-voter-dilemma/505586/)

</comment></comment></comment></comment></comment><comment><USER9> I went to a growth meetup last year and sat through a presentation by a Pinterest engineer who walked through how they upload emails from churned Pinterest users to Facebook to try to reactivate them as the primary use case for their FB ad spend.

Honestly didn't even realize it was "ok" for companies to share emails with third parties as I thought that is even considered PII.

<comment><USER14> I think they upload the hashes of emails they have, and facebook matches it with the hashes of the emails it has.

<comment><USER15> In some jurisdictions, that is still, rightly so, considered PII.

<comment><USER16> In what way is a cryptographic hash of your email personally identifiable?

<comment><USER15> if the purpose of an email hash is to identify me for ads targeting, then it is by definition reasonably identifying me, even if indirectly.

<comment><USER17> DJB on hashing identifying information[1]:

> Hashing is magic crypto pixie-dust, which takes personally identifiable > information and makes it incomprehensible to the marketing department. When > a marketing person looks at random letters and numbers they have no idea > what it means. They can't imagine that anybody could possibly understand the > information, reverse the hash, correlate the hashes, track them, save them, > record them.

[1] [https://projectbullrun.org/surveillance/2015/video-2015.html...](https://projectbullrun.org/surveillance/2015/video-2015.html#bernstein)

</comment></comment></comment></comment></comment></comment><comment><USER18> Of my list, which I'm still parsing, I'm seeing a TON of local car dealerships and realtors. What I really wish is I could see the supplier that's selling my data to these folks who are 100% not running their own Facebook ad campaigns. Actually - I might reach out to the car dealerships and try to figure out what agencies they are using.

<comment><USER19> Same for me with the car dealerships. I've never owned a car or even ever contacted a dealership before. My guess is maybe car rental companies are selling the data to dealerships, since they would be gathering email + phone and car-renters would be targets for car-sellers.

<comment><USER20> I've never owned or rented a car, contacted a dealership, or ever had a license, but my list is almost completely car dealerships. I'm beginning to suspect my state's DMV, where I got my state ID.

</comment></comment></comment><comment><USER21> It's reason enough to leave my Facebook account open. I've just stopped using it anymore and that's fine.

It's been months and I don't miss the constant barrage of political rants from my friends on both sides of the political spectrum.

<comment><USER22> At least on FB you can unfollow the main offenders. My feed is surprisingly tolerable. Enjoyable, even. The unrelenting barrage of political content comes to me from Twitter. Twitter is designed to surface popular tweets even from those you don't follow, and it's almost always low effort political tripe. It's exhausting.

<comment><USER23> I got bored of my feeds. Someone else succulently put, "20 minutes per week on a Sunday is more than enough to keep up with people"

<comment><USER24> Succinctly? :P

<comment><USER23> No idea what I was spelling there.

<comment><USER25> I just assumed that your source was a cactus.

<comment><USER26> He's a bit of a prick, but he makes some good points.

</comment></comment></comment></comment></comment></comment></comment><comment><USER27> The Do Not Call Registry obviously isn't 100% effective, but one possible regulatory move would be to create a similar service for email and phone numbers used in marketing lists, such that possessing a list with the PII of a person who had opted out would subject you to monetary penalties. Then make it incumbent on the company to prove that the person affirmatively consented to sharing their PII.

An attempt at such a concept appears to exist as implemented by a non- governmental group here [1], although that group is voluntary rather than compulsary, and probably doesn't have anything to do with the shadier data brokers.

[1] [https://dmachoice.thedma.org/](https://dmachoice.thedma.org/)

</comment><comment><USER28> >Starting February 28th, Facebook's "Why am I seeing this?" button in the drop-down menu of feed posts will reveal more than the brand that paid for the ad, some biographical details they targeted and if they'd uploaded your contact info. Facebook will start to show when your contact info was uploaded, if it was by the brand or one of their agency/developer partners and when access was shared between partners. A Facebook spokesperson tells me the goal is to keep giving people a better understanding of how advertisers use their information.

This is great and all but what about the people who don't have a Facebook account, which Facebook is still keep tracking of (e.g.: Facebook Pixel)?

</comment><comment><USER29> That just means that uploaders will scrub their data through an intermediary, if they aren't already.

<comment><USER30> I don't think it would help much in EU. :)

Would GDPR allow to withdraw consent for the intermediary? What if I disallow intermediary to handle my data but some other third party I gave permission to process data uses this intermediary?

<comment><USER31> The California Consumer Privacy Act (coming into effect in 2020) definitely does.

From [https://privacylaw.proskauer.com/2018/07/articles/data- priva...](https://privacylaw.proskauer.com/2018/07/articles/data-privacy- laws/the-california-consumer-privacy-act-of-2018/), the California Consumer Privacy Act specifies:

> 1\. the right to know, through a general privacy policy and with more > specifics available upon request, what personal information a business has > collected about them, where it was sourced from, what it is being used for, > whether it is being disclosed or sold, and to whom it is being disclosed or > sold;

> 2\. the right to "opt out" of allowing a business to sell their personal > information to third parties (or, for consumers who are under 16 years old, > the right not to have their personal information sold absent their, or their > parent's, opt-in);

> 3\. the right to have a business delete their personal information, with > some exceptions;

In fact, this entire facebook announcement looks like it's just compliance for #1.

Good for them for not waiting until the month before like GDPR, but don't be fooled that they're showing this information out of the goodness of their hearts.

</comment></comment></comment><comment><USER32> This is a step in the right direction. I would like to see more regulation around who can upload ads to Facebook as well.

</comment><comment><USER33> I got department of homeland security... [https://i.imgur.com/qlsKmNH.png](https://i.imgur.com/qlsKmNH.png)

</comment><comment><USER34> IMHO this would require a "I did not provide consent" button to keep the ad publishers (i.e. Facebook's paying customers) honest. There will obviously be many people clicking this "incorrectly" but much like your spamfilter, FB should eventually learn this user x _really_ doesn't want to hear about this company anymore.

Not that this is likely to ever happen, given the we are the product, not the user.

<comment><USER35> You can get to "Hide all ads from <advertiser>" in a few clicks. I mean that makes sense since if you really don't want to hear from a company, the company can better spend their money elsewhere.

</comment></comment><comment><USER36> If you make a POST request to [https://www.facebook.com/ads/profile/advertisers/](https://www.facebook.com/ads/profile/advertisers/) with your facebook cookies then you get the JSON back with all of your advertisers. Looks like I have well over a thousand of them.

<comment><USER37> Yeah, i'm interested myself. (Either my curl wrangling is wrong, or FB not playing nice now.) Would love to know how you're doing this.

</comment></comment><comment><USER38> I clicked "Show more" via the console until it stopped and then "clicked" every button and waited.

It's not a real solution, but at least I've voiced my intention to not be tracked by these advertisers. I wish deleting my Facebook was a valid option here, but as we all know they keep profiles on you anyways.

<comment><USER39> So I guess keep the facebook account because it's hopeless anyway? Way to be principled. How bout delete it and feed them less and stop being an ecosystem effect.

My friends from college for years were planning yearly meetups. 2 years ago enough of us dropped off FB that we started planning with email and MMS again. Quite a few more dropped as well last year and this. So it does work eventually

</comment></comment><comment><USER40> Could be good for competitive intelligence - discover your competitors ad targeting strategy

</comment><comment> sahin-boydas I just counted and Facebook tells me that 713 advertisers have uploaded a contact list that contained my info.

The super funny thing is that i saw my old girl friend create a page and upload my info and target me. ;)) (a good idea to create jealousy i guess)

</comment><comment><USER41> I'm not sure why anyone would trust this information.

there is a plethora of ways they could omit information or order information or over provide information to make this work in their favour.

</comment><comment><USER42> How about FB just allows a simple click of "ignore everything about me and provide phsyical proof that such is happening".

</comment><comment><USER43> When I created my Facebook account, I used a unique email address that I completely disabled after the signup process was over (because I wanted to avoid Facebook's email spam) and I never gave them my phone number and never used the Facebook apps on my phone... yet a bunch of companies uploaded that contact info? very strange.

<comment><USER44> Facebook does not tell you exactly what contact information was uploaded. Does your Facebook profile include your name? Birthday? Location? That's what it's gonna be. Not so strange.

<comment><USER43> Facebook should at least give you access to your shadow profile so that you know what they have. I didn't give them my real birth date or home address but they still could have them, I guess (some people wished me happy birthday on Facebook, for example)

</comment></comment></comment><comment><USER45> Not sure this can really help; information changes hands _quickly_. Once an agent misheard my name when setting up electricity and I received bills addressed to a similar-sounding name from them. For _years_ I would receive mail from all kinds of random things they clearly sold me to, with the exact same mistake.

</comment><comment><USER46> I looked at the advertisers who uploaded a contact list with me in it...

* Motley Denim

* TV2 Sumo

* Bandcamp

* NBA

I am a bit surprised it was only four, and a bit disappointed bandcamp was one of them.

</comment><comment><USER47> This is going to be very interesting year for a lot of industries and movements. It's only February.

</comment><comment><USER48> I can't tell if this change affects how lookalike audiences are described. Does anyone know how they are currently described?

 _"You are seeing this ad because BigCo wants to target people who like things similar to people whose email addresses they uploaded"_ or something?

</comment><comment><USER49> Otoh Techcrunch (I mean Oath Family) will not reveal this article if you are European and don't agree to their tracking. It presents a complex and captcha ridden interface where it is impossible to give/deny informed consent.

</comment><comment><USER50> Oh, I thought this was about my friends, so I could mention to my friends that I wasn't happy they uploaded my PII through their usage of Facebook.

</comment><comment><USER51> Most of the ones I have got are from apps I use (Netflix, Uber, Airbnb, etc...)

They already have me as a user, do they really feel the need to push it?

</comment><comment><USER52> And, is your Facebook-powered social media leaking your data? The answer may not surprise you. It's 'yes, it's Facebook.'

</comment><comment><USER53> Would've been nice for them to go a step further including the name of the person handling your information.

</comment><comment><USER54> How is any of this surprising? At this point pretty much anything you are doing is monitored including clicks and typing within iPhone apps

</comment><comment><USER55> I wonder how much Facebook are charging "preferred advertisers" to be left out of this?

</comment><comment><USER56> if you think facebook is doing this because they are "on your side" you are a complete sucker

<comment><USER31> You're right, but the reason they're doing this is less conspiratorial than you suggest... it's just compliance for the California Consumer Privacy Act coming into effect in 2020.

From [https://privacylaw.proskauer.com/2018/07/articles/data- priva...](https://privacylaw.proskauer.com/2018/07/articles/data-privacy- laws/the-california-consumer-privacy-act-of-2018/), the first major provision is:

> 1\. the right to know, through a general privacy policy and with more > specifics available upon request, what personal information a business has > collected about them, where it was sourced from, what it is being used for, > whether it is being disclosed or sold, and to whom it is being disclosed or > sold;

The UI mocks in the article are literally a checklist of each of these items.</comment></comment>


Greenwich: the rich town on the frontline of US hedge fund fight - <AUTHOR> https://www.ft.com/content/3bffaf1c-3e35-11e8-b9f9-de94fa33a81e <comment><AUTHOR> Non-paywall link:

[https://archive.fo/s7MQ1](https://archive.fo/s7MQ1)</comment>


BBC Horizon: Do you see what I see? "The Himba tribe" - <AUTHOR> http://www.youtube.com/watch?v=4b71rT9fU-I

<comment><USER2> Really great show if you can catch the whole thing. This however was perhaps one of the better parts, and a lot of the first little bits were perhaps review for many already aware of color perception issues.</comment>


T-shirts != success for a startup - <AUTHOR> http://www.aaronkharris.com/post/6634831350/its-not-about-the-t-shirts

<comment><USER2> There is a specific black t-shirt which is probably a worthwhile goal for a YC startup.

It should be solid orange for the IPO equivalent shirt, though.

</comment><comment><USER3> This is a pretty odd blog post.

 _Who_ would possibly think that success or even a metric of success was owning tshirts? Anyone that even suggests that, well, you probably want to avoid talking to them as they are clearly a delusional, for lack of a better word.

It'd probably take $20 and ten minutes to have bespoke tshirts printed. Did I miss something? Why is this a big deal either way? I'm a startup founder and I cannot stand startup printed tshirts. (I only wear slate james perse tshirts.) I didn't realise I was on such a back foot compared to other startups, irrespective of their funding or aptitude, but solely if they have tshirts with their shitty logo on them.

I can only rationalise this blog post by assuming you are alluding that people worrying about bespoke tshirts is the beginning of the end because you are _not focussing on creating a good product or talking to your users_

<comment><USER4> Making t-shirts is not the end goal, but I read another post recently that correctly noted that most people in the startup community are pleased that they have achieved a level of "success" in their lives where they can earn great livings, do great work, and yet be in an environment where they don't have to wear a uniform or business attire, even business casual.

Company t-shirts can be an easy way for your team to keep that startup vibe, without uniforms of any kind, and yet have a cohesive feel about them, a branded vibe, a way of saying to outsiders that they are part of something special. It's a way of boasting about your company, your product, while also saying, "I support this, because I want to, not because I have to."

In particular, making really cool shirts can be yet one more thing your team can be proud of. I wear my company shirt with pride for more than one reason. The first, because it's our company, and I'm proud of that. The second, because it's cooler than a shirt with a collar and a little jockey and horse on it. The third, because it gives me a reason to talk about what we do. And the list goes on.

Getting shirts is not the goal. Knocking out enough goals that you finally have a moment to stop, breathe, and order shirts, is a nice place to be. Don't prioritize it ahead of things, but don't underestimate the value your team places on being part of something, donning the flag, and having an opportunity to show people that they're successful enough to wear what they want, and that happens to be a shirt about a company they're proud to be a part of.

</comment></comment><comment><USER5> If you wear a tutorspree t-shirt everyday, people will ask you about it, friends will ask to wear them, and employees will wear them to work. You can get t-shirts made for less than 10 bucks each, hell you can make them yourselves with a printer. Sure, having people come up to you and say "Oh I was looking for a tutor for me/my kids/etc, can you please explain tutorspree to me?" isn't scalable, but its a great way to find potential new customers.

<comment><AUTHOR> And those are some reasons why having tshirts can be good/cool/useful for the company. The key is how you're framing it - as a piece of a larger puzzle, not an end goal in and of itself.

<comment><USER5> Oh god, people actually do this? I kind of feel pity for people who create companies with "creating t-shirts" being their end goal... unless they are a clothing company. I just think in your case, it would help and its silly not to do it on the aforementioned principal alone.

<comment><AUTHOR> 100%, we plan on getting shirts...it's on the list for one of our interns this summer.

</comment></comment></comment></comment><comment><USER6> Ha! [http://www.michielovertoom.com/pictures/y-combinator- shirt.j...](http://www.michielovertoom.com/pictures/y-combinator-shirt.jpg)</comment>


Google Docs now runs offline with Gears - <AUTHOR> http://ajaxian.com/archives/google-docs-now-runs-offline-with-gears

<comment><USER2> Yeah, I've used gears (or tried to) with Google Reader many times since its inception. It doesn't work. It is probably the worst product they've yet invented.

</comment><comment><USER3> Zoho did it a month before: [http://blogs.zoho.com/writer/zoho-writer-extends- mobile-supp...](http://blogs.zoho.com/writer/zoho-writer-extends-mobile- support-adds-offline-capability-for-windows-mobile-using-google-gears/)</comment>


Code Club - after-school code club initiative goes live - <AUTHOR> http://www.codeclub.org.uk Our mission is to inspire kids to learn how to code. Our plan is to create a nationwide network of volunteer-led after-school coding clubs for children aged 10-11.
We're asking interested programmers to teach for an hour a week at their local school using Scratch and lesson plans based on the Scratch curriculum. Lesson plans are currently being created and tested so interested programmers can sign up to hear when they are ready at www.codeclub.org.uk
You can follow our progress at www.codeclub.org.uk/blog and follow us on twitter @CodeClub <comment><USER2> There's no mention of the computing at school (<http://computingatschool.org.uk/>) group - is there any link up between the two?

<comment><USER3> There is no link. Yet.

</comment></comment><comment><USER4> I wish their scope wasn't limited to ages 10-11. Maybe in the future.

<comment><USER3> We're doing lesson plans for ages 10-11 first. Then we'll move on to other age groups :)

</comment></comment><comment><USER5> I run the computer lab and teach technology classes at an elementary school in California. Are there any similar programs in the states?

In the last year especially, I have seen lots of technology education programs like this start up in the UK. Seeing them in the UK is still inspiring and pushes me to do more, but I wish there were programs like this in the states.

<comment><USER3> You are most welcome to use all our lesson plans and projects to start up your own thing in the US.

<comment><USER5> Am I missing something, or are these lesson plans and projects not available on the web site?

</comment></comment></comment><comment><USER6> Best of luck - I've got a 12 year old brother who wants to learn to code, but probably needs quite a gentle introduction to it.

<comment><USER7> I have a nephew that wanted "to be a programmer".

Turns out he wanted to make games, and he thought that making games was a lot like playing them. :\

<comment><USER8> > Turns out he wanted to make games

Well, great for him! Many a programmer started this way. IMO it's one of the best motivation ever to start programming, and to actually learn stuff (you try to make a game, and suddenly maths and physics become interesting).

<comment><USER9> I know i started out that way. Then I realized that I could do a lot more with a lot less work in web programming. Games are hard and the payoff is much less compared to, say, making a web app.

Unfortunately most people don't understand that video games are one of the more difficult things to program. I know many people who start Comp Sci as a major and then quit as soon as they get past Java 101 (or some that quit before).

</comment></comment></comment></comment><comment><USER10> This looks great. I'm 19 now, but would have killed for something like this when I was at school.

</comment><comment><USER11> Great idea- I've signed up. The most challenging aspect is how to make these things accessible, enjoyable and educational all at the same time, while still doing some proper 'coding'

</comment><comment><USER12> I wish I had the time to really help out and engage fully in the going-to- schools aspect, but I can't. However, if there is anything else you need help with, let me know!

Good luck

</comment><comment><USER13> Congrats, it looks great.

Any plans to remunerate teachers? How much of a time commitment would this be for a potential volunteer?

What corporate structure have you taken?

<comment><USER3> Thank you. It shouldn't be any direct costs to teachers. The lessons might need to be supervised by a teacher, which would be an hour of their time once a week. As for volunteers, one hour once a week, plus travel, plus time to prepare (this will vary from person to person). We need to raise £5000 pounds before we can register as a charity [http://en.wikipedia.org/wiki/Charitable_organization#Charity...](http://en.wikipedia.org/wiki/Charitable_organization#Charity_registration)

<comment><USER13> Thanks for your reply. It sounds perfectly reasonable in terms of committment.

A further though is that if arts/crafts/sports-type workshop runners are charging around £200 a day for their work in schools, you could potentially tap into this portion of school budgets to earn the £5000 required or set up as a limited company with a social purpose. I suppose you've made plans on the costs front, and that fund raising for £5k a year is perhaps very manageable.

If not, you could set up on a UK-based Kickstarter-type site and I, for one, would be happy to contribute and potentially volunteer for our local school.

</comment></comment></comment><comment><USER14> For those who do not fall in this age group I'd recommend looking at <http://coderdojo.com>

</comment><comment><USER15> This is targeted towards 10-12 year olds?

Sounds like exactly what I need to get over the beginners hump with programming.

<comment><USER3> :D

</comment></comment><comment><USER16> <http://www.codeclub.org.uk/blog/>

Blog is 502'ing...</comment>


Proof of God's existence by 10th century Bishop - <AUTHOR> http://happydays.blogs.nytimes.com/2009/08/23/the-self-thinking-thought/

<comment><USER2> I believe in God and everything, but this is my rebuttal. My greatest startup: Will be known by everyone, make me trillions of dollars, solve world ills, and bring sheer beauty to the world.

If it doesn't exist, it isn't my greatest startup, is it? Therefore it must exist. Why do I have a day job again?

<comment><USER3> Exactly.

Frankly, the dude couldn't have been very smart if he didn't realize that you could replace the word "God" with any word you want in that "proof" and thus establish that it exists. This type of spot checking is important, and any competent mathematician or logician is expected to have worked out the limits of any new method to see if there's potential for ridiculous results to be "proven" as a result.

The only interesting part of this is pinning down exactly where the logic fails. And even that is not _very_ interesting, because it devolves into bickering over definitions: what exactly do we mean by "great"? Couldn't we imagine a thing whose "greatness" depends on its non-existence? ("Greatest non-existent entity" would result in some ridiculousness if you tried to apply this proof to it) What does "exist" mean? Mario and Luigi "exist" in a sense, even if they are fictional, and a good case could be made that they are, indeed, the greatest video game characters of all time (okay, maybe not Luigi :) ), despite their real world "non-existence". And so on...the end result being that we've neither proved nor illuminated anything at all, except that our original phrasing was too vague to mean anything.

But I'll give the philosophers this: they give the rest of us a great deal of evidence that you can prove very little about the actual world without actually referring to it to test your assumptions: they've been trying for several millenia, yet have accomplished all but nothing.

<comment><USER4> Alternatively, this proves the existence of the perfect hamburger. Now I'm hungry.

</comment></comment></comment><comment><USER5> Heh, like philosophers have never seen this argument before. Granted, it took a while to refute but none other than Immanuel Kant pretty much destroyed the ontological argument a long time ago.

[http://en.wikipedia.org/wiki/Ontological_argument#Kant:_exis...](http://en.wikipedia.org/wiki/Ontological_argument#Kant:_existence_is_not_a_predicate)

</comment><comment><USER6> That's not a proof by any definition of the word I understand. Imagining something does not prove the existence (or otherwise) of that thing. [edit] but a 10th century bishop writing 77 years after the end of the 10th century is still noteworthy :o)</comment>