What If Unhappiness Contains the Secret to Happiness? - <AUTHOR> https://medium.com/personal-growth/what-if-controlling-unhappiness-contains-the-secret-to-happiness-acd96242970c <comment><USER2> This is similar to Type 2 fun that is part of the popular "Fun Scale" ([https://www.rei.com/blog/climb/fun- scale](https://www.rei.com/blog/climb/fun-scale)) idea in backcountry activities: Type 1 fun is an activity that is enjoyable while it is happening (eating, drinking, sex, etc.). Type 2 fun is not only not fun while it happens, it's miserable (freezing all night in a tent, being hungry for days on end, fearing for you life, etc.) - but in retrospect the experience creates a great deal of happiness, satisfaction, and a desire to do it again.

<comment><USER3> I've always considered the existence of "Type 2 fun" as a bug in our brain hardware: it's the same mechanism that makes your brain believe that experiences like "playing a slot machine for hours with a negative rate-of- return (both average and total)", or "taking a drug that you've long grown habituated to and don't experience a high from any more", were still rewarding-enough experiences to reinforce their addictive potential.

<comment><USER4> There's the reverse side too. Many experiences are unpleasant but I'd consider important for people to "enjoy". I don't have kids, but I think raising kids is a good example? No the direct experiences of being awake 24/7 picking up poop isn't fun, but the overall experience is what people are after?

<comment><USER3> IMHO people are often (not always) after specific things that _having raised kids_ provides—posterity, people who will take care of you when you're old, etc.—and are actually not interested in _any_ aspect of the experience of actually raising them.

For people with such perspectives, I would say that what they experience is less like "something that was no fun in any part but still fun as a whole", but rather "an _input_ of a non-fun activity that is expected to _pay out_ in happiness down the line"—in other words, the same kind of experience that working at a job to earn money is.

As such, people (for whom this calculus works out) don't actually have to be irrationally drawn to having kids by addictive brain signals. They have perfectly _rational_ reasons to do so!

<comment><USER5> I think in many ways, you have just describe _most jobs_.

</comment></comment></comment></comment></comment><comment><USER6> Nerd summary: let feedback do its job. The point of being unhappy is to allow adjustment. To let that happen, you generally need to talk about what's happened, acknowledge it, make changes.

There's been a fair few happiness articles on here lately. I've commented on all of them, it's not necessarily happiness that you should care about. Someone suggested equanimity as the thing to strive for.

There's a point where you've seen all the major life events. Either they happened to you or someone you know. There's no avoiding them, and they happen to everyone. It's part of the marvel of existence, a thing that had endless content whether you zoom in or out.

</comment><comment><USER7> Say the sun makes you happy, and one day you wake up to a cloudy day. Will you be unhappy? The sun didn't impose happiness upon you, just like the clouds didn't impose unhappiness. Your expectations and desires created your feelings, which respond to change. But you can choose what your expectations and desires are. And this means that you choose what creates happiness or unhappiness.

Rather than having an expectation, have no expectation. Don't have an expectation, and you won't be disappointed at a different outcome. Don't have a desire, and you won't be unhappy when it goes unfulfilled. Don't expect the sun, and the clouds won't make you sad. Don't desire pleasure, and you won't feel cheated when you receive none.

Aside from your feelings, you can of course change things in your life if you want to. You can right a wrong, improve your standing, paint your room green, move to a new city, whatever. But don't do those things in order to chase a feeling of happiness; that's a dog chasing its tail.

<comment><USER3> But on the other hand: if you aren't consciously acting to optimize your life- experience toward any particular terminal preferences you have, then aren't you just a mental vegetable—in the "elephant and rider" metaphor, an elephant whose rider has checked out and isn't steering the elephant any more? Can the rider actually _survive_ without ever attempting to do anything but passively observe? I would expect your consciousness to simply decay, like an unused muscle. (And it is my understanding that heavy enough doses of anti-psychotic drugs, taken chronically, _do_ effectively submerge consciousness in this way, resulting in [https://en.wikipedia.org/wiki/Delirium](https://en.wikipedia.org/wiki/Delirium) .)

I get that this is kind of what is meant by the Buddhist concept of nirvana; but I've always wondered what the difference is between "achieving nirvana and then living for a hundred years" and "achieving nirvana and then immediately committing suicide." If you don't _care_ any more, why are you still going on? Why is the sensory tape still playing, if nobody is watching to learn anything from it?

<comment><USER7> Does a flower stop being pretty just because you don't expect or desire it to be pretty? Your desires don't have any effect on the flower. But it's still pretty. And so, it being pretty, you can choose to experience this flower as a beautiful, wondrous thing, and take great pleasure out of its existence.

It may also be stamped upon in the next moment by a passer-by. But because you did not expect this gift, when it is gone, you won't despair. So if life gives you a gift, receive it with humility and gratitude, but do not expect to be given it.

I think there's more to it too, like how you can use your time here to create things that will also bring you peace and happiness, and not being disappointed when they don't work out. Hard to explain here as it's kind of a broad topic and I'm no Buddhist monk ;)

<comment><USER3> What does it mean for something to be beautiful, except to _desire_ the sensory experience of looking at it?

I mean that in a neurological sense—is there really any kind of reward you can experience from sensory data other than the dopaminergic kind that is attempting to potentiate you toward a specific response to said stimulus (e.g. increasing place preference for places that have pretty flowers in them)? If you were to permanently shut down your dopaminergic reward system—to cease to want—would you still experience sensory stimuli as rewarding? (I honestly don't know; it's an interesting question.)

If you truly have _no desires whatsoever_ —if all is equal in your mind—I would expect you to also have no aesthetic experience. You wouldn't see "a beautiful flower"; you'd just see "a flower."† Seeing a flower and seeing a garbage dump would be strictly equivalent to you, just as they are to someone who is heavily depressed. (And this is what I was getting at by mentioning delirium: people in a delirious state do not bother to move their heads to look at things, _unless_ doing so is necessary to do something they're forced or ordered to do. This is because they _don't_ prefer the experience of looking at a flower to the experience of staring at the wall—so why stop staring at the wall?)

† Which is, again, a thing they say that reaching Buddhist enlightenment gets you: "mountains are mountains, and waters are waters."

<comment><USER7> Desire isn't pleasure. Desire is essentially an expectation with an ultimatum: I want this thing, and if I don't get it, I'm going to be unhappy. Desire is a slightly more intense form of 'to want'.

Pleasure is a subjective, aesthetic experience. Increased dopamine levels certainly map to increased feeling of pleasure, but you can also experience pleasure without increased dopamine levels. You can feel pleasure about just about anything - it's just an idea in your head. You don't even have to "want" that idea, as in expecting it, working towards it, etc. It can just kind of pop up in your brain and you can feel good, or you can search for it and make it pop up.

I think the distinction is really whether you have pleasure as your goal, and whether you let outcomes change your state of mind. If the root of suffering is the dissonance between desire and reality, avoid suffering by not having a stake in the outcome. Decide to experience pleasure when you want to, without attaching it to an expectation. Go for a walk to look for pretty flowers, but don't expect them to be there. I would again compare it to a gift: don't feel bad when you don't get one, but enjoy it when you do.

</comment></comment></comment></comment></comment><comment><USER8> What's the deal with randomly italicizing words? Annoying trend I have seen a lot lately. Dunno how this got 4.4k claps. Nothing that interesting here. Seems like medium is an inverse-meritocracy where the most unoriginal stuff written for marketers and by marketers get all the votes and promotion and traffic.

Happiness comes from the attainment status and progress, and those two things tend to be correlated. That's why beating a video game level or getting an award or promotion makes you happy. it does not come from reflecting on failure or any abstract philosophical belief/teaching. The idea that happiness is encoded in failure seems ludicrous unless one means not repeating mistakes, but that is learning , which is not the same as happiness as an emotion. Not a fan of stoicism either. I think people should express how they feel. Bottling it up only makes it worse later.

<comment><USER9> > Not a fan of stoicism either. I think people should express how they feel. > Bottling it up only makes it worse later.

Being stoic doesn't mean not expressing your feelings.

Issues that someone would have to bottle up because it introduces entropy in their feelings about life might be a non-issue/non-existent to a stoic. i.e. why get angry and express my feelings if someone that cuts me off on the highway, when I've learned not to care about such events? There's plenty of other things a stoic can express their feeling about.

<comment><USER10> Any reading on stoicism that you recommend?

<comment><USER11> _Marcus Aurelius Meditations: A New Translation_ by Gregory Hays.

 _The Discourses of Epictetus_

</comment></comment></comment></comment><comment><USER12> I'm reminded of my favorite quote by pioneering alpine climber Mark Twight —

"It doesn't have to be fun to be fun."

</comment><comment><USER13> Reminds me a lot of the idea of Wu Wei.

</comment><comment><USER14> My dude Maarten would love the Pixar movie Inside Out

</comment><comment><USER15> tl;dr: learning from our mistakes is good for us.

</comment><comment><USER16> This article is unrelated to programming and technology in general. I enjoy seeing these articles make it to the front page but I also wonder why they do.

What is the relation between this seemingly unrelated topic and technology in general? Did this article make it to the front page because engineers are unhappy or did it make it to the front page because people in general are unhappy?

<comment><USER17> I think its a question for all humans, not just specifically related to engineers.

</comment></comment><comment><USER18> Quite Interesting!

</comment><comment><USER19> What if we all treated each other with respect and compassion?

What if creating happiness in others was our fundamental objective as individuals and societies?

Only with compassionate honesty can we root out the truly bad seeds and strip them of their power to harm others.

Without compassion as our basis, our prejudices blind us and lead to callous, destructive competition via blind ambition.

Only in compassionately equal cooperation can we determine which individuals and groups seek to oppress others, for cooperation is anathema to those filled with hatred and cruel self-superiority.

Our callous attitudes and systems of competition are destroying the Earth and inflicting misery upon the vast majority of humanity for the benefit of the few.

Committing oneself to become consumed by selfless compassion that motivates us to shape our societies into compassionate systems of mutual benefit and cooperation for ALL human beings is the ONLY path to happiness. Happiness for the individual begins in every interaction we have with each other and the Earth itself. The goal of that happiness is to spread this wisdom far and wide.

To achieve that ideal we must strip the cruel, hypocritical, hateful liars of their power to cause misery for others. And this unfettered capitalism must be tamed to serve everyone while allowing the ambitious to reap the benefits of their hard work.

Happiness is not pleasure and is so rare these days because very few people learn to selflessly, compassionately serve others' happiness. Worse yet, the most ruthless, amoral people have usurped the power structures of the world: governments, corporations and religious institutions.

Selfless compassion is the root of happiness and we much each hurry up and implement it because the evil bastards are running rampant over our precious, beautiful Earth and the vast sea of poors.

As with all things human, it is equally each our choice.

<comment><USER7> Fwiw, I think you've been downvoted because of the dissonance between being selflessly compassionate and being preoccupied with "cruel, hypocritical, hateful liars". Ultimately we're all the same, so if you really want to be selflessly compassionate, that should apply to those people you dislike, too.

<comment><USER5> Hmm to "ultimately we're all the same".

A quote I like says, paraphrasing, "as soon as you realise _you and I are different people_ , then we will start to get along much better".

<comment><USER19> And related: "Know your enemy."

</comment></comment></comment></comment><comment><USER20> There is a stoichiometric mix of pain and pleasure that lends to happiness. In the present time, we have too much pleasure over pain, and we respond to unhappiness by adding even more pleasure.</comment>


Mathematical Obfuscation Against Hackers Is Focus of New Cybersecurity Center - <AUTHOR> http://spectrum.ieee.org/tech-talk/computing/software/cybersecurity-center-mathematical-obfuscation#.U-0rFwOUr_s.hackernews <comment><USER2> Obfuscation is a really exciting field that's blown up in the last year or so. Hopefully advancements will bring down some of the parameters so that we can see small-scale obfuscation in the real world.</comment>


Ask HN: Is Airbnb down? - <AUTHOR>

Can't navigate the site for the past couple of hours. <comment><USER2> [http://www.downforeveryoneorjustme.com/airbnb.com](http://www.downforeveryoneorjustme.com/airbnb.com)</comment>


If a Hacker can edit download link, they can edit your SHA256 hash - <AUTHOR> Why do websites list SHA256 hashes next to their download links? If 1 is compromised, the other could be too? <comment><USER2> You could always check the SHA256 from a separate device on separate network, ie your smartphone.

<comment><USER3> Original poster is suggesting that if one can change the downloaded file on the source location, then the same person can update the SHA256 string used to "guarantee authenticity". They're not suggesting a MTM style attack where one changes the string mid flight.</comment></comment>


The top blogs in one place - <AUTHOR> http://www.blogmetrics.org/ <comment><AUTHOR> It looks very outdated...</comment>


Show HN: new feature for searching and brainstorming domain names outside of .coms - <AUTHOR> http://www.panabee.com/name-generator?domain-name=cool+picture

<comment><AUTHOR> Domain suggestions are usually oriented around .com for obvious reasons.

But most good .coms are taken, many new TLDs are coming, and more people only need domains in their home country.

So we built a feature focused on domain names outside of .com: TLDs like .co.uk, .de, .in, and all the new ones coming online soon.

Search at [http://www.panabee.com](http://www.panabee.com) with the desired TLD in the query like mobile.co or mobile.me. All suggestions and searches will get oriented around that TLD instead of .com.

No, we don't steal domain names. FAQ: [http://www.panabee.com/domain-name- search/panabee#domain_nam...](http://www.panabee.com/domain-name- search/panabee#domain_name_theft)

Note: some TLD searches are slow since the feature is in beta. If there's interest, we can accelerate searches in the future.</comment>


Self-propagating heap memory crawler in x86-64 Linux Assembly - <AUTHOR> http://pastebin.com/rtGeDEmC

<comment><USER2> I'm a Windows guy, so maybe this is a stupid question. Don't you eventually have to call mmap to get more memory committed to your address space?

Also, it seems weird to me that the heap pages are marked as executable by default.

<comment><USER3> In answer to your two questions:

1: Yes, you will eventually need to mmap more memory. Since you want to minimize the number of mmap calls necessary for things like heap allocations, you generally allocate in larger chunks then necessary and then malloc etc. allocates from these chunks. It doesn't matter too much in terms of memory waste, since in the back end, linux allocates physical memory lazily, so the extra allocated block of virtual memory doesn't get a physical allocation until something tries to access it. For this reason, it can sometimes seem like a malloc call completes successfully, but you run into an out of memory condition once you try to actually use your "successfully" allocated memory.

2\. It turns out most kernels don't actually enable the NX bit automatically, with the reason given being that early processors have buggy implementations, so by default the NX flag is not honored. As a result, all memory is executable by default, unless explicitly set not to be (i.e. using memprotect), and this is only if the kernel is compiled to support NX, which it may not be. This is changing, and some systems such implementing SELinux or similar are supposedly stricter but I haven't actually tested this out myself.

<comment><USER4> 1\. Elaborate more on this, as this doesn't agree with my understanding of it. Glibc Malloc allocates differently depending on the size of the allocation -- glibc uses dynamic mmap thresholds, which as I previously stated starts at 128kb, but when blocks larger than the current threshold are freed, the threshold is adjusted to the size of the freed block, unless once again, you've set any of the slew of paremeters that disable the threshold in which case you'll go back to either "old school" brk() memory management by storing current and previous results of sbrk(0) or you will have arenas for small allocations managed through mmap().

2\. If only this were true, I regularly pine for the days of EIP -> 0xc0c0c0c0. It is true that some compilers generate entirely RWE memory pages, but usually for much different reasons (Executable stacks for GCC trampolines, for example)

</comment></comment></comment><comment><USER5> Done correctly, you don't even need to use assembly to do this sort of thing. <http://stratiger.com/cpup4.c> is a straightforward C member of the same category of programs.

<comment><USER6> For anyone trying this, there's a typo in the URL, it is actually <http://stratigery.com/cpup4.c>

</comment></comment><comment><USER7> A fork bomb will also reproduce a program until you run out of memory, and actually stand a better chance of crashing the system if that was your goal.

<comment><USER8> Did you even read what it does, or are you just spouting out other arbitrary ways to crash systems?

There are a host of ways to run out of memory and crash a system. Why not list every single example, if that's your intention, because the fact that it runs a machine out of memory is about the only thing it has in common with a fork bomb.

In fact, a fork bomb doesn't even imply the system runs out of memory, but only that the system runs out of a finite resource.</comment></comment>


Announcing the `http` crate - <AUTHOR> https://users.rust-lang.org/t/announcing-the-http-crate/12123 <comment><USER3> It's great to see this approach to core API design, and I wish other platforms adopted it. There are many advantages to having a rich ecosystem of third- party libraries, but composability becomes a problem when they define different types for the same concepts. This is the best of both worlds - <USER2> get multiple competing implementations of the interesting bits, but everything "just works" with any of them.

<comment><USER4> I couldn't agree more. Although, as someone mostly in to C++, I think data types like this should be standardised as concepts rather than added as concrete types. The HeaderMap described in this crate sounds like it is quite complex. I'd rather have a concept with some kind of trait mechanism for determining if e.g. the type preserved insertion order (which defaulted to false)

The Beast HTTP library that just got accepted in to Boost follows this approach. E.g. the following Fields concept specifies the requirements the library has on its any HeaderMap-like type you feed it. Writing an adapter for your own types then becomes straightforward

[http://vinniefalco.github.io/beast/beast/concepts/Fields.htm...](http://vinniefalco.github.io/beast/beast/concepts/Fields.html)

<comment><USER5> Defining the type as a trait would prevent link-time optimization of library- consumer-side manipulations of data of that type, no?

Really, you want a concept that's like a trait, but is explicit about the fact that there's exactly one implementation of the trait, and that that implementation is discoverable at compile time. Less like an interface, more like a C typedef in a third-party-library header file—just without the "header file" part.

<comment><USER6> Most Rust compilation is non-incremental but rather one shot with all type information available. Thus, because of LTO optimization either in Rust or LLVM the compiler should discover what the concrete type of the trait is and be able to optimize / inline accordingly.

</comment></comment></comment></comment><comment><USER7> One watch out here is patterns that encourage developers to do the wrong thing.

With golang, for example, it's common to see applications that don't set reasonable cache control headers, content type and length headers, handle head requests properly, compression, and so on.

It's not that golang can't do those things, but the libraries, documentation, and examples don't encourage it. So you see a lot of minimal http implementations that "work", but not well. It's like every (less experienced) end user of the library has to learn all the basics by trial, error, bug reports, etc.

<comment><USER8> I'd argue that all but the most extremely basic of HTTP options are far from universal, and defining sane defaults is the responsibility of frameworks and not a core library.

<comment><AUTHOR> Agreed. And in particular, these kinds of types would make it much easier to write a framework-agnostic library that helps you handle caching correctly, built on top of these types, like Request and Response.

<comment><USER9> I'd argue that at the API level, these things should be required to think about. Any level of "help" so that I don't have to worry about cache headers should be from a framework that tells me what they think about them.

<comment><AUTHOR> > I'd argue that at the API level, these things should be required to think > about. Any level of "help" so that I don't have to worry about cache headers > should be from a framework that tells me what they think about them.

Agreed completely. The lowest-level API should expose them and every other bit of the standard, and higher-level APIs should handle them automatically in sensible ways.

</comment></comment></comment></comment></comment><comment><USER10> Would it not be better to call it http-types/http-base/http-common as this just provides common types and not the transport or security? Thanks and keep up the awesome work.

<comment><AUTHOR> I think "http" actually makes sense here, for two reasons.

First, this crate provides a common layer for the HTTP protocol; if you're interacting with HTTP, you'd use this crate and its types, often directly. Note, in particular, that this crate provides builders to construct HTTP requests and responses, which is often a large part of client and server libraries, respectively.

And second, I don't think any _specific_ HTTP client or server software should claim the crate name "http". A common layer like this, built around the protocol itself, seems to have a much more reasonable claim to it.

<comment><USER8> In addition, the "transport" and "security" portions are the least-HTTP- related parts of an HTTP stack. Far more than HTTP runs on TCP and TLS.

</comment></comment></comment><comment><USER11> Seems like they took the hint from haskell :) good job. We have WAI ([https://www.stackage.org/lts-9.0/package/wai-184.108.40.206](https://www.stackage.org/lts-9.0/package/wai-188.8.131.52)) a common interface for multiple HTTP Web Servers. It's very useful, and a rich ecosystem of middleware has flourished.

</comment><comment><USER12> I really wish I could start a rebellious movement in HTTP libraries to call the constant UNAUTHENTICATED and for it to return

        401 Unauthenticated

…and then once rough consensus switches, get an update in the RFC.

(I'd likely be horrified to learn that something out there critically depends on the Reason Phrase…)

<comment><AUTHOR> You're not _supposed_ to depend on the specific reason phrase given with the code, but I wouldn't find it surprising if something does.

See [https://hackernoon.com/three-bytes-and-a- space-8f9fbd1c669b](https://hackernoon.com/three-bytes-and-a- space-8f9fbd1c669b) for a related debugging adventure.

Also, technically, you can return 401 for either "unauthenticated" (you need to pass authentication information) or "unauthorized" (you passed authentication information but it wasn't acceptable), depending on the nature of what you need.

<comment><USER13> 401 Unauthorized means you aren't authenticated, or your authentication is broken/expired/invalid.

403 Forbidden means that your authentication is valid, but that you don't have access to the resource.

401 should not be used to indicate the latter.

<comment><USER14> Why not? 401 seems like a fine fit if your client doesn't need to differentiate between authentication and authorization; most don't need to at all.

Also, you can fail authorization without passing authentication. For instance, you could be authorized by ip range or something unrelated to any of the data in the http request.

<comment><USER15> Wut. Most clients don't need to differentiate between "you're not allowed to do that" and "you're not logged in"? Those things require totally different reactions, no?

</comment></comment></comment></comment></comment><comment><USER16> I can't seem to find a parser for HTTP requests in the repo. I assume this is out of scope for the crate?

<comment><USER17> To quote the announcement:

>It does not cover transport, but is rather intended for use in libraries like Hyper, and to support an ecosystem of crates that can share HTTP-related types.

So I don't think they added any implementation details to the crate itself, to avoid people taking issue with something being too bloat-ey or not to their need, and rejecting the common types, which seem to be the real goal. It does seem like something you'd always need, though - I can only imagine that a proper parser would be pretty large, and they didn't want people to complain about it.

<comment><AUTHOR> I wouldn't be surprised if an "http-parser" crate pops up on top of this. But unlike the http crate, an http-parser crate would have to make at least one potentially controversial choice, namely "which parsing library".

<comment><USER18> I've been working with this crate for a while, and use [https://crates.io/crates/httparse](https://crates.io/crates/httparse) with it, it works pretty well.

</comment></comment></comment></comment><comment><USER19> Interesting micro-optimizations... For example the use of lookup tables and nested switches in uri.rs and method.rs.

Is this common practice in Rust? Shouldn't the compiler be smart enough to do that for you? Such code seems quite sensitive to typos.

<comment><USER20> I don't think the lookup tables is a micro-optimization. They're both clear and fast in this case (I can't think of a more clear alternative, just of a less verbose one). The "switches" are actually pattern matching, a very powerful feature of Rust. I'm not sure about nesting them being a micro- optimization either. I think it's also a choice that is both readable and fast. Can a more experienced Rust code shed light?

</comment></comment><comment><USER21> This is good news. Waiting it to be merged with hyper including the http2 support. With both of them it will make Rust the perfect choice for all my current use-cases.</comment>


Show HN: Dataset of Linus Torvalds' rants sorted by hate - <AUTHOR> https://github.com/corollari/linusrants <comment><USER2> Highly amusing. Though, I think the original title "Dataset of Linus Torvalds' rants classified by negativity using sentiment analysis" is more accurate (and also funnier).

<comment><AUTHOR> Yeah, I may have made the title worse by trying to shorten it. If a mod can change it back it'd be great.

</comment></comment><comment><USER3> There are repeats in that list. For example, 2 entries contain:

> YOU DO NOT SEEM TO UNDERSTAND WHAT THE TEST ACTUALLY IS!

You can use Ctrl-F to see them.

</comment><comment><USER4> This is fun</comment>


CAP Twelve Years Later: How the "Rules" Have Changed (2012) - <AUTHOR> http://www.infoq.com/articles/cap-twelve-years-later-how-the-rules-have-changed <comment><USER3> I know this is the man who formulated the CAP Theorem to begin with, but I am shocked to hear him say "partitions are rare" without any justification. Could somebody please expound on this, as my bread&butter comes from building distributed databases, and I can assure you I encounter faulty networks all the time. Am I just crazy, or call me maybe?

<comment><USER4> True Partitions are rare; For most datacenters, the ingress and egress port (fiber link to the outside world) is the same, and if they have redundancies they have enough and are self-healing enough that it's all-or-nothing - <USER2> you're down, and can safely consider that node 'lost', or you're not, and you can communicate with it.

Remember that CAP refers to the whole network. When you partition, you can safely ignore a large portion of the network. So long as you have greater than half in a network shard, you can continue serving safely from that section. If you have datacenters A, B, and C, if C drops from the network consistently, you can still serve traffic from A and B while C is down - And your logic should be built to handle this case. AWS and similar frameworks give you all the tools you need to build this. If you're multihoming your IP, your backend detects the partition, and stops offering the route. If you're using an ELB, you start failing health-checks [1]. Partitions are not rare - Full service partitions, where A, B, and C are in their own shards, are, and you have the tools to deal with it.

On the other hand, where the P still matters a lot is in speed. If you need replicas of data in the US, Europe, and Asia, you're going to have a bad time - For all three to agree takes >100ms, even in the best case. That is where you start thinking of the tradeoffs - Do you sacrifice unified-worldview for speed? The answer is almost certainly yes - Very few idioms require unified worldview, even banking.

[1] [http://docs.aws.amazon.com/ElasticLoadBalancing/latest/Devel...](http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb- healthchecks.html)

</comment></comment><comment><USER5> I wonder what the author would think of this in light of FoundationDB and Google's F1 RDBMS.</comment>


Terraform OPA Integration - <AUTHOR> https://www.scalr.com/blog/opa-is-to-policy-automation-as-terraform-is-to-iac/ <comment><AUTHOR> Scalr has introduced its Infrastructure as Code Platform, which is a remote operations backend for Terraform. The Open Policy Agent integration is one of the main differentiators that reduces stack complexity and lock-in from proprietary standards with open source principals.</comment>


Ask HN: What side projects are you working on? - <AUTHOR> <comment><USER2> This is the first time I am mentioning this publicly, but I have been working on Educator News. It's a clone of HN for the education profession.

It's been attempted before, and was well received. The people who made it previously were not programmers, so when it immediately outgrew the platform on which it was built, it disappeared. I think I can do it right. :)

I am planning a soft launch this weekend. After working out any immediate bugs, I will do a Show HN.

<comment><USER3> Sounds nice. Are you using the original HN code?

<comment><USER2> No, I'm building it in Django. I have been looking for a well-defined project to build, and this ended up being a perfect project. It's inspired by HN, and to everyone here it's a clone of HN, but most educators who end up using the site will probably never know HN exists.

It's a completely open project, and if things go well I'm going to write a Django tutorial based on building EN. I'm going to write the tutorial as part of another project I started this year, [http://introtopython.org](http://introtopython.org). It's been a busy year. :)

</comment></comment></comment><comment><USER4> Automated NBA game recaps with more context than your typical boxscore.

Note: I am not a web developer, so this project has been mainly to teach myself a new technology (Rails, primarily). It is very much a work in progress. Also, clearly, I am not a designer and am not really sweating that for now.

[http://recappd.com/games/2014/2/24](http://recappd.com/games/2014/2/24)

<comment><USER5> Site seems to be down.

But when you're finished, hawk this on /r/nba. Lots of devoted fans there, and contributions are very much appreciated.

<comment><USER4> Thanks for the feedback! It's running on a single droplet on DigitalOcean, so my guess is it can't handle even the slight amount of traffic I'm getting from this HN post. Beyond server-side caching, I think my code is fairly non- optimal.

If anyone has any tips for serving up a site like this with limited resources, feel free to teach me.

<comment><USER5> I don't know if you're aware, but the community section of Digital Ocean has some informative articles on stuff like this, there was actually one posted today about scaling Ruby on Rails applications.

Either way, it's a good problem to have!

[https://www.digitalocean.com/community](https://www.digitalocean.com/community)

<comment><USER4> Thanks for the link, I will definitely take a look at that. I have found some of those articles to be useful, although external blog posts and gists have proved just as valuable. One recent accomplishment was automating deployment to a single command with Capistrano. Took me a lot longer to set that up than it probably should have, but feels great now :)

</comment></comment></comment></comment></comment><comment><USER6> I made a 3D flappy-bird inspired game: "Droppyship". [https://itunes.apple.com/app/droppyship/id820172550](https://itunes.apple.com/app/droppyship/id820172550) Finishing up a quick update this weekend to add gamecenter and ios7 controller support, but I don't know if I'll take it much further.

</comment><comment><USER7> [http://lottolane.com](http://lottolane.com)

LottoLane is a lottery pool management tool. It will handle email invites/reminders, payment tracking, sharing pics of tickets, and more. It will take care of everything involved in a lottery pool except for buying tickets.

<comment><USER8> that's funny 'cause i would actually play the lotto (esp. those scratch off games) if buying a ticket was as easy as clicking a button, or sending an email. A daily email with the results of the lotto would be great too.

<comment><USER7> Here's a site that sells lotto tickets online:

[https://www.lottoland.com/en](https://www.lottoland.com/en)

Legality of doing something like this is questionable. Plus, there's the issue of trusting the site if the ticket hits the jackpot. I believe they have people that physically go to convenience stores to buy the tickets for you.

I do have some ideas of how to facilitate playing in pools without having to be geographically close to the pool manager. But, overall, the pool manager should be someone you know.

</comment></comment></comment><comment><USER9> [http://www.yearloop.com/](http://www.yearloop.com/)

Each day it sends me an email with pictures from 1 yr ago, 2 yrs ago, etc. It is powered by Dropbox. Beta testing now if you want to join in for free!

</comment><comment><USER10> I'm downloading all of Project Gutenberg and gonna run a markov chain text generator on it and see what works of genius it produces (inspired by the King James Programming post yesterday).

I think it'd be cool to have a site that lets people input sources and then it displays output from the generator. Need to do some more reading on markov models and see what improvements I can make to Barrucadu's code

</comment><comment><USER11> A twitter clone with a fully nonblocking Play framework/Redis backend and a angularjs frontend that communicate (almost) exclusively by websocket. It's nothing that hasn't been done before, but it's a chance to play around with some new tools.

</comment><comment><USER12> I am working on a (to be, hopefully) open source support ticket system based on Laravel and Bootstrap (So easily themeable). The primary feature is that it works with, not against other ticketing systems. For example I can 'push' a ticket to github or bitbucket. I also want to try and integrate email, so that sending an email to a support mailbox will automatically create a ticket. It would be nice to also have an API for web sites to use, so support tickets will also be created on errors on the production servers.

Just in the initial planning stages but it would work well in my workflow.

</comment><comment><USER13> The web UI for Camlistore: [http://camlistore.org/](http://camlistore.org/)

      - video overview: http://www.youtube.com/watch?v=yvjeIZgykiA
      - early web UI: http://www.youtube.com/watch?v=yvjeIZgykiA#t=24m5s

It's written in a combination of React and Closure. It's a single page app that doesn't care about IE<9\. I get to use workers, blobs, transforms, svg, flexbox, typed arrays...

Oh, and everything in the UI live-updates automatically as a side-effect of using React + Web Sockets.

So much fun. You should come contribute.

</comment><comment><USER14> [http://hackerlunch.com](http://hackerlunch.com)

I'm working on Hacker Lunch, which lets you meet up and have lunch with another hacker in your area.

Launched a super rough MVP only for hackers in San Francisco, you can try it at [http://hackerlunch.com](http://hackerlunch.com)

A few people tried it out and had a pretty fun experience, so I hope more people try it out.

I plan on building this out fully into a mobile app, so the process is a bit more natural and instantaneous.

<comment><USER15> Dang! Not available in my area! I tried in Portland, OR. I'm super in to this idea.

<comment><USER14> I'll add more cities soon. I wanted to try out the idea in one city first - and SF seemed like the logical choice.

</comment></comment></comment><comment><USER16> [http://www.lessonwell.com](http://www.lessonwell.com)

([https://github.com/qdonnellan/lessonwell](https://github.com/qdonnellan/lessonwell))

the current task: refactoring my code to incorporate new things I've learned, namely: TDD and knockoutjs + json API. After 2 years of self learning python, I'm looking to transition from teaching into development and am hoping to use this project to showcase what I've learned!

</comment><comment><USER3> eh... I keep telling myself I should have a side project ready the next time one of these threads shows up, but it never is.

[http://precis.gopagoda.com/url/http://www.reddit.com/r/progr...](http://precis.gopagoda.com/url/http://www.reddit.com/r/programming)

I'm playing around with creating feeds from metadata - specifically, building feeds with 'expanding' views which build trees from the outbound links on pages. The reason the url is appended there is the thing doesn't even have any caching - but just add a url to the form at the top or tack it on like so and it should build the feed out of whatever.

The [+] links should expand the feed. Unless they don't. Because it sometimes doesn't. When it does though it's nice.

Also trying to get dynamic rss to work but unless the dynos at pagodabox are really spinning this can be insanely slow:

[http://precis.gopagoda.com/rss/http://www.reddit.com/r/progr...](http://precis.gopagoda.com/rss/http://www.reddit.com/r/programming)

But yeah... someday i'll get my crap together enough to make it into something worth something.

Also I have a hnlike forum i'm building in laravel - it mostly works but it isn't online. Maybe next time.

</comment><comment><USER17> Designing and prototyping an elegant bookmark manager. I find existing solutions clumsy in their functionality and ugly on top of it. The inspiration comes from the design world. Think about the look of table of contents in a beautiful art book or signage and navigation in a modern library building. I would like to have my hundreds of links presented with minimal elegance and modern information design functionality...

</comment><comment><USER18> Trying to give Julia a far shot. My current scientific computing stack is Python+numpy+scipy+matplotlib, with wrapped C and Fortran where needed.

Also, I wrote a fast numpy implementation of Conway's game of life yesterday, for the heck of it. [https://github.com/thearn/game-of- life](https://github.com/thearn/game-of-life)

</comment><comment><USER19> [http://u8this.com](http://u8this.com)

Food diary site, mostly done as a learning experience, and because I wanted it. Blog post about how I made it here: [http://chris.brooks6.com/2014/02/19/side- project-u8thiscom/](http://chris.brooks6.com/2014/02/19/side- project-u8thiscom/)

</comment><comment><USER20> Building a media management and streaming server for my local network, in javascript with node.js, along with an android app, so I can organise my music and listen to it at home from my phone :)

All these components exist, but its an exercise in software design, as well as learning both about Android and Javascript.

</comment><comment><USER21> A music discovery site: [http://tuned.io](http://tuned.io)

SoundCloud API + Node + Backbone + MongoDB

Intend to use it as a learning platform for a lot of data analytics / machine learning. Grouping similar users, identifying tastemakers, etc.

Currently it's a lot of electronic, no-vocals, coding music.

</comment><comment><USER22> I'm currently making one new HTML5 game per week. My project was recently on the front page of HN.

You can play my games are learn more about the project (tutorials, etc.) on my website: [http://www.lessmilk.com](http://www.lessmilk.com)

</comment><comment><USER23> I'm currently working on an open-source phishing toolkit written in Go and AngularJS called gophish ([http://github.com/jordan- wright/gophish](http://github.com/jordan-wright/gophish)).

</comment><comment><USER24> SimpleGym - SaaS product for CrossFit Gyms ([http://www.simplegym.co](http://www.simplegym.co)). Rails-based web application that includes a jQuery mobile UI for phones.

<comment><AUTHOR> Great site I hope it becomes a success for you. Their is some spelling mistake tho, isnt Philisophy supposed to be Philosophy?

</comment></comment><comment><USER25> Mulling over the idea of remote system administration as service:

[http://remote-sysadmin.com/](http://remote-sysadmin.com/)

</comment><comment><USER26> Hacker News newsletter with daily top 5 posts. [http://top5hn.launchrock.co](http://top5hn.launchrock.co)

</comment><comment><USER27> Programming language, as if there were not enough of them :)

<comment><USER28> Are you writing the compiler in assembly language or some other high level language(c,C--, Python...)

</comment></comment><comment><USER29> Lockfree OS kernel. Give it a couple weeks.

<comment><USER30> How do you even start writing something like that?

<comment><USER29> Well, I'd done a small kernel for a class. Later, I wrote a lockfree malloc and realized that large lockfree programs are actually pretty managable, and that was the start. It's generally just a matter of designing around simple data structures (which are the only ones you can really do lockfree) and a repetition of some key tricks like refcounting, generation counting, and type- stable memory. Writing the data structures and primitives was tough, but otherwise you don't have to worry about locking and things come out quite neatly as a result.</comment></comment></comment>


Approximate Results May Vary - <AUTHOR> https://ericlippert.com/2020/08/21/approximate-results-may-vary/ <comment><USER2> One that bothers me is "fake" precision when a writer has converted some units and not considered the original precision - and on the internet this is just the start of a broken-telephone game.

E.g some article about power generation starts with "12 Gigajoules" (probably +/\- .1GJ) then is converted to "3.33 MWh", inevitably, this is either converted back a suspiciously accurate value of "11.8 Gigajoules" or someone doesn't understand the difference between MWh and MW and butchers it even and we get some completely ficticious value

</comment><comment> mark-r The example of the weight of a Robin may have been backwards. It could be that the reference was the weight in grams which was then converted to ounces, with rounding.

</comment><comment><USER3> 9/5 of a cubic inch is a fluid ounce, not 5/9, which is why you divide and not multiply.</comment>


What's the other 75 Percent? Blogs - <AUTHOR> http://search.wikia.com/blog/2008/07/28/whats-the-other-75-percent-blogs/

<comment><USER2> Google may not index them because if you have one entry tagged 'cats', it is the only entry for January 2008, it is the only entry in the 'misc' category, etc., the same content will show up on three or four different dynamically- generated pages.</comment>


Source: Tesla Responsible for Model 3 "Production Hell" - <AUTHOR> https://dailykanban.com/2017/10/source-tesla-responsible-model-3-production-hell <comment><USER2> I'm not sure what this article says that's new other than letting incumbents cast shade in their terms on what Tesla is doing. It seems like Tesla's been pretty up front that they're doing it their way and there will be some chaos, but they are going faster than the incumbents.

There's two ways to look a tooling order for the 2020 model year being started before the Model 3 order. The one way is, "Oh those silly Tesla people have no clue, they'll never get it done at real auto company scale." The other is, "Tesla is changing the pace of the auto industry and if they only let their schedule slip by 50%, they'll leave everyone in the dust." I guess it is in the eye of the beholder.

<comment><USER3> "Doing it their way" isn't smart if their way isn't actually better, which they haven't demonstrated to date. And judging from this article it seems Tesla is cutting corners (which seems habitual with Tesla) as if you can take a Zuckerberg-style "Move fast and break things" approach to building physical products.

</comment></comment><comment><USER4> "it'll be so easy to disrupt the ________ industry, those old dinosaurs haven't got a clue what they're doing!"

<comment><USER5> Disruption complete! Every car manufacturer has now been forced to respond with radical strategy shifts. Whether the model 3 succeeds massively is just a measure of how _soon_ global car electrification takes place.

</comment></comment><comment><USER6> I'd be wary of any blog posting "news" from an unnamed source about a publicly-traded company with such a high valuation as Tesla's...

<comment><USER7> I'm pretty sure I read some of the same lines on SeekingAlpha a few days ago.

</comment></comment><comment><USER8> Basically, they were too busy to write unit tests.

</comment><comment><USER9> Sad how all these are just simple bad decisions. Rushing ..

</comment><comment><USER10> Interesting to see how this post is being sent back to the second page even though it has 43 points in 4 hours. In front are posts with 12 points in 5 hours.</comment>


Bill Gates' project at Microsoft rumored to be persalsonal assistant app - <AUTHOR> http://www.windowscentral.com/bill-gatess-personal-agent-project-microsoft-might-be-called-office-now

<comment><USER2> A few years ago I would have been skeptical, but in the last year I started using Office 365, was accepted to BizSpark, and bought an inexpensive Windows 8.1 laptop that is surprisingly nice to use.

I think that Google Now is interesting, and sometimes useful, but Microsoft might be in a better place to extend Office 365 to act as a general life assistant agent.

All that said, I would rather have an open source kit that I could modify, but for a commercial solution I would rather pay Microsoft for a life agent rather than get something for free from Google because they would need to monetize on my personal data.

</comment><comment><USER3> Will it have a spellcheck?</comment>


Giving Every Child a Monthly Check for an Even Start - <AUTHOR> http://www.nytimes.com/2016/10/19/business/economy/giving-every-child-a-monthly-check-for-an-even-start.html <comment><USER2> So, the US has a high proportion of children in poverty, where "poverty" is defined as inequality. (Specifically, earning half or less the median income makes you "poor", no matter how much money you have or don't have.)

The solution is, naturally, to give each child a fixed amount of money! Nobody in the article seems to notice that this conflicts with the definition of "poverty" they want to be using.

If you think it's necessary that all children be "guarantee[d] a minimum level of well-being", perhaps we should evaluate whether they're already getting it, as opposed to whether some other children are getting even more.</comment>


A Costco opens in China, draws such crowds it has to close early - <AUTHOR> https://www.nbcnews.com/news/world/costco-opens-china-draws-such-massive-crowds-it-has-close-n1046801 <comment><USER2> Slightly an aside, but reading news about the crowds in Shanghai made me think of this Chinese buffet clip from a Thai resort: [https://gfycat.com/ultimategenerousichneumonfly](https://gfycat.com/ultimategenerousichneumonfly)</comment>


Cron schedule monitoring dashboard for Laravel - <AUTHOR> https://cronboard.io/ <comment><AUTHOR> Cronboard is a powerful dashboard for your Laravel applications that helps you manage and monitor scheduled tasks. Its deep integration with Laravel makes it extremely easy and quick to set up. It supports the full range of scheduler settings, and allows you to modify and manage scheduled tasks through an easy to use UI.

It will constantly monitor your cron schedule and notify you in the case of any issues. It detects not only missed cron jobs but also performance issues or logic problems. If any are found - detailed information will be provided to you on how to resolve them. This coupled with the powerful logging capabilities available and on-the-fly task executions makes identifying and fixing bugs a breeze.</comment>


Scientists Unveil New 'Tree of Life' - <AUTHOR> http://www.nytimes.com/2016/04/12/science/scientists-unveil-new-tree-of-life.html <comment><USER2> This is a delightful article. I love that the scientists are arguing whether bacteria or microscopic fungi are the best places to look for increased diversity. It's so rare to avoid our biases toward [https://en.wikipedia.org/wiki/Charismatic_megafauna](https://en.wikipedia.org/wiki/Charismatic_megafauna)</comment>


Wouldn't Censorship Be Exciting - <AUTHOR> https://al3x.net/2015/06/04/wouldn%27t-censorship-be-exciting.html

<comment><USER2> I didn't really want to vote this up, as it is pure cant, but the topic is worthwhile.

<comment><AUTHOR> I had the same feeling when I submitted it; was hoping for an interesting discussion.

</comment></comment><comment><USER3> I don't know urbit but I do know rationalizing when I read it. The same kind of words used to curtail freedoms because 'think of the children!'

You need to know the downward spiral of appeasing the unending train of butthurt masses. It never ends and it always gets worse over time. First a few complaints, then some group with an ideology infiltrates the leadership, then kills it from within.</comment>


Google, Facebook and Apple draw hordes of tech tourists - <AUTHOR> http://www.mercurynews.com/business/ci_30046793/google-facebook-and-apple-draw-hordes-tech-tourists <comment><USER2> Apple has always invited some form of tourism or another to One Infinite Loop - hence the Apple retail store right there in the building. I remember going down to see the icon garden before Steve Jobs came back and had it removed. Rumor was that was one of the first things that he did.

It's kind of fun to see the campuses. It feeds some of the geek bucket that many of us have.

</comment><comment><AUTHOR> I've made multiple trips to Silicon Valley and usually I try to work in a wee bit of tech tourism. I think the tech giants are overlooking a huge source of revenue by not giving formal tours. Might even be a source for new employee leads as well.</comment>


The "Oh-My-God Particle" - <AUTHOR> https://en.wikipedia.org/wiki/Oh-My-God_particle <comment><USER2> Hey this is the field I did my PhD in!

Some fun facts:

* The flux of particles in this energy regime is so low that you get about 1 per square kilometer per century, so studying them necessitates doing really wild stuff like instrumenting a patch of land the size of Rhode Island.

See: [https://en.wikipedia.org/wiki/Pierre_Auger_Observatory](https://en.wikipedia.org/wiki/Pierre_Auger_Observatory)

* These particles are so energetic that in their frame the nominally low-energy photons that comprise the cosmic microwave background appear as an impenetrable gamma ray wall thats prevents them from traveling more than about 100 million lightyears. This seems like an incredible distance but in astronomical terms this means that whatever is producing them is "nearby." We also know they don't come from our own galaxy because arrival directions don't correlate to the galactic plane.

* Current consensus says that these particles probably come from very large and active black holes in the center of certain galaxies. These objects are called active galactic nuclei (AGN).

<comment><USER3> What would happen if this particle hit a person?

<comment><USER4> Arg. Had a moderately long, not quite Randall Munroe worthy explanation written up but it got lost by accident. Sorry. :(

In a nutshell, that'll never happen. You'd have to be the unluckiest astronaut to ever live. These particles reach Earth at a rate less than 1 per century per square kilometer. So you'd have to hang out in space for like a hundred million years...

The original particle never reaches the ground. It gets annihilated in a collision some tens of kilometers up in the atmosphere.

If you were hit, I'm not sure the cascade would do significant damage before it exited your body on the other side.

<comment><USER5> If it wasn't for the atmosphere, with 7.6B people each presenting 𝜋/4 m² cross sectional area, 60 people per year should get hit.

</comment></comment></comment></comment><comment><USER6> Not on this particle but relevant if you're interested in cosmic particles: For my son's 5th grade Science Fair project we are building a cloud chamber to detect cosmic particles! As crazy as that sounds we've decided on this project after watching videos showing how _ridiculously_ easy it is to build one, e.g. see this one: [https://www.youtube.com/watch?v=pewTySxfTQk](https://www.youtube.com/watch?v=pewTySxfTQk). Most designs call for dry ice (cheap, ~$10 for 10 lbs but may be hard to find a local store) but you can also build one using an air duster: [https://www.youtube.com/watch?v=QCAVlMTBMe0](https://www.youtube.com/watch?v=QCAVlMTBMe0)!

Fun fact that I've learned from him during research: humans are exposed to cosmic radiation which is on average equivalent to 10 chest x-rays per year. It would be interesting to look at the impact of this on, e.g. cancer rates among people living at sea level versus cities with high elevation, e.g. Quito in Ecuador.

<comment><USER7> Volume/time - pour slowly into a funnel and it works, pour too fast the funnel overflows and you get cancer. People accustomed to high altitudes likely have bigger funnels.

<comment><USER8> What isn't known about the relationship between exposure regimes and poor outcomes could fill the complete OED. Is it really a hormesis model? Linear No Threshold? Linear? Supra-linear? Linear-quadratic?

We don't know, and generally speaking it would be unethical to try and find out using humans.

</comment></comment></comment><comment><USER9> "In the particle's reference frame, the photon would move away from it at the speed of light."

For some reason I've never been able to wrap my head around this. Anyone know a good explanation for this stuff?

<comment><USER10> Imagine you were driving a car with a stuck accelerator an no brakes. The car always moves at 100 MPH. So you can't change the car's speed, but you can change its direction. So you can drive north, at which point your east-west velocity is zero, or you can drive east, at which point your north-south velocity is zero, or you can drive in some other direction, which will give you a mix of north-south and east-west velocities. The faster you move east- west, the slower you move north-south and vice versa.

You are kind of like that car. You (and everything else) are always moving at the speed of light, but through spaceTIME, not through space. When you move through space you are not changing your speed through spacetime, you are only changing your direction. The faster you move through space, the slower you move through time, and vice versa.

<comment><USER11> The bug in your explanation is that turning the steering wheel performs a rotation (which moves vectors along the edges of circles) on your velocity vector, but in spacetime that would be a hyperbolic rotation (which moves vectors along hyperbolas). The result of this is:

If I am an outside observer measuring your position with a very long ruler and your time with my wristwatch, all while watching your dashboard clock, I have access to three numbers. (Your clock, my watch, your position on my long ruler.)

There are three ways to compare these numbers. If I compare my watch to your position down the ruler, I will obtain "classical speed." The behavior of this number is very confusing when it is high.

I may also compare your dashboard clock with my ruler position, or your dashboard clock with my watch. Both of these can lead to a "speed," in the sense of one number changing at a certian rate with respect to another.

If Vx is the rate of change of the ruler position with respect to your dashboard clock, and Vt is the rate of change of my wristwatch with respect to your dashboard clock, and c is the speed of light, then it turns out to be always true that c^2*Vt^2 - Vx^2 = c^2. If you graph this you will see that it is a hyperbola.

In the parent's example, the car situation would obey V(north)^2 + V(south)^2 = 100mph^2. If you graph that it is a circle, as it differs from the above by the minus sign.

<comment><USER10> Yes, I know that, but I think this inaccuracy is a price worth paying to achieve an initial intuitive understanding. As a student reflects more deeply on what it can possibly mean to "move more slowly through time" the negative sign on the time dimension can be introduced. But as an initial intuitive picture to get a student out the the Galilean rut I think the circular rotation works well.

</comment></comment></comment></comment><comment><USER12> My favorite speculation is that it's the jet wash from someone's interstellar antimatter rocket. Unlikely, but fun. :)

</comment><comment><USER13> It's too bad there's no anecdote in the article as to how the particle came to be such named.

Compare with the Wow! signal[0] for what I mean. I bet something similar happened.

[0]: [https://en.wikipedia.org/wiki/Wow!_signal](https://en.wikipedia.org/wiki/Wow!_signal)

<comment><USER14> I assume it was an intentional play on the "God particle" nickname for the Higg's boson.

</comment></comment><comment><USER15> To make it a bit more graspable; A baseball at 90% the speed of light will cause a fairly large nuclear detonation. [0]

This particle moved at 99.99999999999999999999951% the speed of light. IIRC from when I worked it out a month ago or so (baseball with that speed), it was in the region of 10^25 J, pretty close the energy the entire sun is outputting each second or a couple million nuclear bombs. (10^25 particles, 4.8 joule per particle)

[0]: [https://what-if.xkcd.com/1/](https://what-if.xkcd.com/1/)

<comment><USER16> If such a particle interacts with the water of my brain- would i drop dead?

<comment><USER17> [https://www.reddit.com/r/askscience/comments/7dqqsh/what_wou...](https://www.reddit.com/r/askscience/comments/7dqqsh/what_would_happen_if_you_were_hit_by_the_ohmygod/)

[https://www.reddit.com/r/askscience/comments/3o16ut/what_wou...](https://www.reddit.com/r/askscience/comments/3o16ut/what_would_happen_if_the_ohmygod_particle_had_its/)

</comment></comment></comment><comment><USER18> So we don't know what particle this is?

Do we know that it's not any of the particles we already know about? As in, is it a new kind of particle, for sure?

Or is it just an energised photon or something?

</comment><comment><USER19> So did the detector get clobbered by this particle?

<comment><USER20> The detector used doesn't interact directly with the particle - it observes the light emitted as the particle (& the subsequent shower) interacts with the atmosphere.

<comment><USER21> They're called Air Showers - [https://en.m.wikipedia.org/wiki/Air_shower_(physics)](https://en.m.wikipedia.org/wiki/Air_shower_\(physics\))

<comment><USER22> Non-mobile link: [https://en.wikipedia.org/wiki/Air_shower_(physics)](https://en.wikipedia.org/wiki/Air_shower_\(physics\))

</comment></comment></comment></comment><comment><USER23> Interested to know what the kinetic energy of a near Planck particle would be.

</comment><comment><USER24> this particle physics is just silly and it will never lead to anything but more tiny and faster particles which do inexplicable things. such useful science ... really...

Here's something actually interesting >.> but no one care about it.... [http://aip.scitation.org/doi/abs/10.1063/1.2423240](http://aip.scitation.org/doi/abs/10.1063/1.2423240)

<comment><USER25>
      and it will never lead to anything

Which particle physicist hurt you?

<comment><USER26> Well they are certainly very good at building big honking machines with our tax dollars! :-)

<comment><USER27> Without being an expert on the subject, I hope some of what is learned from the engineering of those big honking machines might be relevant for attempts at sustainable fusion.

Plus: [https://en.wikipedia.org/wiki/Particle_physics#Practical_app...](https://en.wikipedia.org/wiki/Particle_physics#Practical_applications)</comment></comment></comment></comment>


Tell HN: The Pragmatic Bookshelf is having a 40% off sale - <AUTHOR>

Today only, you can use the coupon code TURKEY at http://pragprog.com/titles to purchase anything at a 40% discount. I thought this may interest some fellow programmers here. <comment><USER2> When I first saw the prices for ebooks (~$22) I was initially shocked (but the 40% makes it a better deal). However, then I noticed the value-add that PragProg provided their customers. I think they should advertise these features more prominently:

1\. You get all 3 formats

2\. You get constant updates to the book (errata and such) [edit: not new editions.]

3\. You can connect your PragProg account to your Dropbox so that your books are delivered there automatically.

#3 is a new addition, but it's killer for me. I get all formats uploaded instantly to Dropbox, so they're available on all my devices. And when I buy a Beta book it gets updated automatically without me having to remember to login and redownload.

<comment><USER3> #3 is great, but I don't see anything about Dropbox in my Pragmatic account. Looked under FAQs couldn't find it there either. I'll keep looking but in the meantime I'll just download and then upload to Dropbox.

Update: It's under 'edit profile' right before the last listing about Kindle settings.

<comment><USER2> My Account --> Edit Profile. Scroll down to "Dropbox Settings".

</comment></comment></comment><comment><USER4> I'm particularly interested in these two books. My buying decision (vs. a book about how to grok a library I really want to grok) is that these books cover topics that I can't simply learn by downloading the documentation for a code project. For better or worse, they will be dogmatic and not purely technical, so they won't age as quickly as a book about a new technology.

Designed for Use: Create Usable Interfaces for Applications and the Web <http://pragprog.com/book/lmuse/designed-for-use>

Lukas's blog posts (<http://ignorethecode.net/blog/>) have appeared on HN many times, and I have made a mental note to buy his design book.

Technical Blogging: Turn Your Expertise into a Remarkable Online Presence <http://pragprog.com/book/actb/technical-blogging>

Antonio has also posted on HN. I've been on the fence about this book, not sure if I need it, and I decided to pull the trigger and buy it.

So I am now the proud owner of these two books.

[edit: I think I might also get SQL Antipatterns <http://pragprog.com/book/bksqla/sql-antipatterns> after recognizing one in my own code. And Web Development Recipes <http://pragprog.com/book/wbdev/web- development-recipes>. Am I done buying yet? Great deal.]

</comment><comment><AUTHOR> Direct link: <http://pragprog.com/titles>

Disclaimer: I'm an author for the prag prog.

<comment><USER5> which one?

<comment><AUTHOR> Technical Blogging: <http://pragprog.com/book/actb/technical-blogging>

<comment><USER5> Interesting topic and quite relevant to me especially since I'm a recent CS graduate just starting my career. Why is the book in beta?

<comment><AUTHOR> Thanks for your interest. It's in beta because I finished writing the last chapter a week ago, so it's not available in print yet.

</comment></comment></comment></comment></comment><comment><USER6> Picked up the Clojure book, although in beta I'll receive the finished book as paperback - thanks for the heads up!

Too bad they do not publish the actual Pragmatic Programmer book.

</comment><comment><USER7> What happens to authors' commissions with a sale like this? It says on the site that authors get 50%. Do they continue getting 50%, just of a smaller pie? Or do they receive the same amount per book sold and PragProg eats the discount? If the former, do you have to get permission from the authors to do the discount or is it baked into the contract when they sign with you? I have no idea how the publishing industry works and I'm just curious. And thanks for the discount!

<comment><AUTHOR> I can't speak for the publisher, but my understanding is that you get 50% of a smaller pie, and the publisher is free to run any promotion without having to ask for permission.

</comment></comment><comment><USER8> PITA to order. The member confirmation was so slow I completed the order as guest before it arrived. But I appreciate getting the Clojure ebook for $13.20!

</comment><comment><USER9> How do I buy a book from this site? I don't see "Buy Now" or "Store" buttons anywhere. Terrible design.

<comment><AUTHOR> There is an "Add to cart" button below a "Buy Now" section: [https://lh5.googleusercontent.com/-0AujcdQL-- E/TtAXH9xNwXI/A...](https://lh5.googleusercontent.com/-0AujcdQL-- E/TtAXH9xNwXI/AAAAAAAAAvI/Yprn83KZHAg/s912/1322260253003.png)

<comment><USER9> Indeed. The original "The Pragmatic Programmer: From Journeyman to Master" book has no such section. Even if they don't publish it themselves, they should have some sort of link, even if it's to Amazon or something.

<comment><AUTHOR> They do have a link, but it's a bit hidden in the Purchase section.

</comment></comment></comment></comment><comment><USER10> Great! Snapped up a few books. Thanks for the heads up.

</comment><comment><USER11> can i get some recommendations on what book to buy ? other then the official the pragmatic programmer...

<comment><AUTHOR> What are you interested in?

<comment><USER11> I went ahead and bought new programmer's survival manual, and the developer's code. Having browsed through them already - both books seem pretty good.</comment></comment></comment>


Algorithm-based decision making - <AUTHOR>

I built this algorithm site to help myself make a weighted decision on my next career step. http://decidealgo.com/ I hope others find it useful too. It won't tell you what decision to make, but I find it very helpful for thinking about what factors/considerations matter and relatively how much they matter. <comment><USER2> crappy site.</comment>


Why business needs people with Asperger's syndrome, ADD and dyslexia - <AUTHOR> http://www.economist.com/node/21556230?fsrc=scn/tw/te/ar/inpraiseofmisfits <comment><USER3> Dr. Temple Grandin, an adult with autism who became a successful engineer, academic and speaker, believes that her disorder is an asset. She once famously called NASA a sheltered workshop for people with autism and Asperger Syndrome. She believes that people with autistic spectrum disorders are the great innovators, and "if the world was left to you socialites, nothing would get done and we would still be in caves talking to each other."

<comment><USER4> I'm sure the special needs teachers who made that possible, and the taxpayers who fund them, are delighted to hear that. Maybe the socialites would still be in caves, but the "aspies" would be outside starving.

The symptoms of Asberger's are so indistinguishable from "being a dick" that they might as well be synonymous.

<comment><USER5> Your post angers and insults me. Everything you said is negative and mean, while the original poster was at least trying to add to the conversation. Even calling those with Asperger's "aspies" is condescending.

<comment><USER6> People find their place in the world. I cannot imagine being dyslexic or unable to empathize with people. It's inspiring that people can turn those "handicaps" into competitive advantages.

While the comment wasn't very sensitive, it also happens to be true. Our society tries to build a support structure around folks to enable them to reach their potential. Sometimes we're successful, other times we're not successful. In the past, unless your family was able to help you find a place, folks with mental problems were basically discarded by society.

<comment><USER7> "Our society tries to build a support structure around folks to enable them to reach their potential."

I would argue most of the success is due to coping mechanisms developed by people than societal support structure. In fact, the free markets probably have more to do with their success than society.

<comment><USER4> NASA isn't a product of the free market, except in the sense that that "socialites" who work in the free market pay their taxes so Dr Temple can sneer at them from her ivory tower.

<comment><USER8> NASA is hardly typical of employers, and the free market is not the sole origin of value. Perhaps you are taking a tongue-in-cheek remark a little too personally. It's a big world, and it has room for some generally anti-social loners as well.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> "Recruiters have noticed that the mental qualities that make a good computer programmer resemble those that might get you diagnosed with Asperger's syndrome... an addiction to repetitive tasks"

I think someone is forgetting one of the three virtues of programming: laziness.

<http://c2.com/cgi/wiki?LazinessImpatienceHubris>

<comment><USER10> I thought the same thing. If there's anything a good programmer shouldn't be doing, it's repetitive tasks. If you're coding the same thing over and over again, you're doing it wrong.

<comment><USER11> By the time I find myself doing something for the third time, I start thinking: automation.

</comment></comment></comment><comment><USER12> I wonder just how much I'm overreacting by feeling disgusted about the way that Asperger's, ADD and stuff like that are suddenly a thing of fashion. It seems to be a trendy thing for journalists to discuss and a sort of a fashion statement for geeks.

Maybe I'm wrong, but to me this is a rather simple matter: there are great people who happen to have Asperger's syndrome, ADD, dyslexia, autism or what have you, but unless someone proves some sort of link between their greatness and things they were diagnosed with, then that's just what it is -- people who happen to be both great and have one of the above.

<comment><USER8> As someone with ADD, I have trouble gaining and maintaining focus while ignoring distracting factors. However, in an environment where distractions are minimized (eg a traditional library), or where there is an agreed-upon system for handling distracting factors - some kinds of workplaces, or an understanding about personal space/time boundaries - then the flip side of this is an ability to stay focused on something for hours, days, weeks, if necessary and a capacity for very rapid adaption and innovation.

In film production, which I used to work at, a _lot_ of people have ADD - <USER2> the highly procedural (and proceduralized) nature of the work optimizes for this. You need to be willing to keep doing the same thing until you get it right 10, 20 or more times in a row, but also to drop it and switch to something completely different at short notice if other conditions change. I have a strong hunch that people with ADD are considerably over-represented in the military as well.

</comment></comment><comment><USER13> I can't speak for dyslexia or asperger's, but there _are_ documented advantages to not being able to pay attention: [http://www.wired.com/wiredscience/2012/02/why-being- sleepy-a...](http://www.wired.com/wiredscience/2012/02/why-being-sleepy-and- drunk-are-great-for-creativity/)

</comment><comment><USER14> And maybe the way Bill Gates rocks in his chair is low-level aspbergers and the incidence of aspbergers in men explains why men dominate the computer industry and possibly these disorders are both indicative of strength in the area and encouraged by the usage of technology.

Yeah, either that, or pop-science doesn't actually have much explanatory or prescriptive power in this area until they clear up their own messes with ADD diagnosis and poorly crafted studies.

<comment><USER15> I don't know about Bill Gates, but several of the people mentioned (e.g., CEO of Jetblue) have clinical diagnoses and would not have been able to be where they are without understanding their conditions.

</comment></comment><comment><USER16> Two of the three of those have prevalence rates at around 10% of the population, so if nothing else not effectively employing such people cuts your pool of potential employees by 10%...

</comment><comment><USER17> Sure, the outlook for people with these disabilities look good. But it is no fun raising a child with one, every day is a challenge.

</comment><comment><USER18> I recently read Elizabeth Moon's Nebula Award winning _Speed of Dark_. It's about a cure for autism being forced upon employees by a corporation.

[http://www.amazon.com/gp/product/B000FC1B2Y/ref=pd_lpo_k2_dp...](http://www.amazon.com/gp/product/B000FC1B2Y/ref=pd_lpo_k2_dp_sr_2?pf_rd_p=486539851&pf_rd_s=lpo- top- stripe-1&pf_rd_t=201&pf_rd_i=0345447557&pf_rd_m=ATVPDKIKX0DER&pf_rd_r=1AZESFK9ENHSB7612CV9)

<comment><USER19> It wasn't forced upon the employees; they were free to choose to take the cure or not. Personally, I think Moon's portrayal of the protagonist was overly dark and depressing (probably to shed some light into the kind of nasty shit that can happen to an autistic). Given the choice, I'd refuse the "cure".

</comment></comment><comment> excuse-me There is no such thing as Asperger's or ADD. It's just the term boring morons use for interesting clever people.

If we were in charge we would have medical terms for "unable to set the clock on a VCR" and "unable to read a book when Oprah is on"

But fortunately we don't care what a bunch of dreary moron office drones think of us - even when we bother to notice them.

<comment><USER20> I met a friend in college with _real_ ADD. The type where the medication he takes is about 2 chemical reactions away from straight-up cocaine. One day, he forgot to take his meds, and I was talking to him at lunch. He was in the middle of a sentence, and he just... stopped. Completely frozen. Motionless, mid-gesture, staring off into space. He stayed like this for close to a full minute, and just as I was about to ask him if he was ok, he yelled out "SHIT, WHERE'D IT GO!?!" Apparently the sentence he was saying evaporated from his head while he was in the process of speaking it.

So yeah, there really is such a thing as ADD. I won't contest that it's overdiagnosed to hell and back. I wouldn't be surprised if only 1 case in 100 is the real thing, or even 1 in 1,000. But there actually is a real thing, that exists, underneath all the misdiagnoses.

<comment><USER21> Could that not have been withdrawal symptoms?

<comment><USER22> From my personal experience this is an entirely plausible reaction.

</comment></comment></comment></comment><comment><USER23> wannabe big soon companies want socially nice ppl . very few companies hire for shear capacity because their culture can not handle it ... capacity is looked at with fear since plain jon/jane can not simply grok ...

is it a problem ? well really its a opportunity ...

the most wanted ppl. is free for hire ...

<comment><USER24> Legitimate post, but you're probably being downvoted for the txtspeak and grammar.</comment></comment>