SIMD Everywhere: 0.5.0 - <AUTHOR> https://simd-everywhere.github.io/blog/announcements/release/2020/06/21/0.5.0-release.html <comment> Const-me I sometimes write code portable across SSE4 and NEON, and I'm not sure this is going to work fast enough for that. There're important unique features.

SSE has shuffles, pack/unpack, movemask, 64-bit doubles, testzero, float rounds, blends, integer averages, float square roots and dot product.

NEON has interleaved RAM load/stores, vectors operators with scalar other argument, byte swap, rotate, bit scan and population count, and versions of all instructions processing 8-byte long vectors.

That's enough differences that I have to adjust both algorithms and data structures to be portable between them. I'm not convinced it's possible to do automatically.

<comment><USER2> > I'm not sure this is going to work fast enough for that.

From reading the SIMD Everywhere description, it seems to me that SIMDe is a way to _allow_ code that targets only a platform to work on other platforms as well. As a nice byproduct, you get _some_ speed up if architecture targeted by the code is similar to the architecture that will run the code.

Portability is the main focus, not speed.

Obviously, once you have a good emulation of an architecture the first question is going to be: can I make it faster?

<comment><USER3> All other chip architectures should adopt Arm's SVE2 or something similar.

[https://community.arm.com/developer/ip- products/processors/b...](https://community.arm.com/developer/ip- products/processors/b/processors-ip-blog/posts/new-technologies-for-the-arm-a- profile-architecture)

<comment><USER4> Hi there! It looks like you've been shadowbanned, I vouched a few of your comments because they didn't seem terrible, but I didn't scroll very far. It might be worth sending a mail to dang to ask him to take a look at your account or something!

<comment><USER5> That account has 33k karma and is 8 years old.

I just can't imagine a set of circumstances where a shadowban of all things could be justified if they transgressed in some way.

It's probably a mistake?

<comment><USER4> or they said something ridiculously heinous

<comment><USER5> In that case one should point that out to them and warn them.

Shadowbans are quite a heinous punishment in themselves, and better used to prevent spammers etc. from creating new accounts.

But people who make thousands upon thousands of comments are bound to make an emotional comment or an error of judgment at some point.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> If you're doing new development and not opposed to using C++, I recommend xsimd, which provides a higher-level interface to architecture-specific SIMD instructions: [https://github.com/xtensor- stack/xsimd](https://github.com/xtensor-stack/xsimd)

<comment><USER7> Apart from the fact that you have to rewrite your code, the big disadvantage to something like this is that it's a bit slower.

With SIMDe you're still free to use functions like `_mm_maddubs_epi16` and they'll be _really_ fast on x86, but still work everywhere.

With xsimd (and similar libraries) you're generally limited to the lowest common denominator.

FWIW, if abstraction layers are your thing you might want to look at std::experimental::simd ([https://github.com/VcDevel/std- simd](https://github.com/VcDevel/std-simd)) instead. Google's Highway ([https://github.com/google/highway](https://github.com/google/highway)) is also pretty interesting.

<comment><USER8> Not sure where you got that from... xsimd will detect your instruction set automatically. Do you mean that if you're distributing a single binary then you'll need to compile for the lowest common denominator?

If so, that's not necessarily true either. A few patterns exist here. One is what the intel compilers do where you conditionally call variants of a function based on the instruction set. Another is to compile SIMD-accelerated functionality into shared libs that are dynamically loaded at launch based on the instruction set.

<comment><USER7> > Not sure where you got that from... xsimd will detect your instruction set > automatically. Do you mean that if you're distributing a single binary then > you'll need to compile for the lowest common denominator?

No, what I mean is that since xsimd is an abstraction layer you can't really use the "full" ISA extension; you're limited to composing operations based on a simpler subset that is supported across multiple architectures.

For example, consider `_mm_maddubs_epi16`, which is a favorite example of mine because it's so specific… I honestly have _no_ idea when this is useful, but I'm sure Intel had a particular use case in mind when they added it. It adds a 8-bit signed integer to an __un __signed 8-bit integer, producing a signed 16-bit integer result for each lane. Then it performs saturated addition on each horizontal pair and returns the result.

Now I'm not that familiar with xsimd's API, but I can't imagine they have a single function that does all that. It's much more likely that you have to call a few functions in xsimd; maybe one for each input to widen to 16 bits, then at least one addition. For pairwise addition there might be a function, if not you'll need some shuffles to extract the even and odd values. Then perform saturated addition on those, which [isn't supported by xsimd]([https://github.com/xtensor- stack/xsimd/issues/314](https://github.com/xtensor-stack/xsimd/issues/314)), so you'll need a couple of comparisons and blends to implement that.

That's basically what we have to to in SIMDe in the fallback code; I don't have a problem with that at all. However, even if you're targeting SSSE3 xsimd it's pretty unlikely xsimd will be able to fuse that into a single `_mm_maddubs_epi16`.

OTOH, in SIMDe we can also add optimized implementations of various functions, and `_mm_maddubs_epi16` is no exception. There is already an AArch64 implementation which should be pretty fast, and a ARMv7 NEON implementation which isn't too bad.

With SIMDe what you get isn't the lowest common denominator of functionality, it's the union of everything that's available. SIMDe's `_mm_maddubs_epi16` may not be any faster than xsimd _if you 're not targeting SSSE3_, but if you _are_ targeting SSSE3 or greater SIMDe is going to be a lot faster.

SIMDe's approach isn't without drawbacks, of course. For one, it can be hard to know whether a particular function will be fast or slow on a given architecture, whereas lowest-common-denominator libraries will pretty much be fast everywhere but functionality will be a bit more basic. It's also a _lot_ more work… there are around 6500 SIMD functions in x86 alone, and IIRC NEON is at around 2500.

</comment></comment></comment></comment><comment><USER9> I'd like to commend the authors for embarking on this. Complex ISA's are an unfortunate reality for performance as advances in cycles-per-second on a single core are negligible. The divergence of these increasingly complex ISA's among platforms weigh heavily on competitive application developers.

As someone who is interested in writing cross-platform SIMD code the most valuable asset to me is a library or compiler that can generate the instructions dynamically from otherwise normal'ish looking C/C++. This is the most powerful mode of development in my experience. Clang already does this remarkably. I can write with standard C++ syntax (albeit awkwardly) and maybe using a few custom types with `__attribute__((vector_size(x)))` and _not_ have to involve explicit intrinsics except perhaps for a very small number of leaf operations that cannot be expressed. At this time Clang has the upper-hand on GCC: the latter cannot generate code which scales between platforms utilizing different vector sizes. For example, if you try to perform an operation on a 256-bit vector using a 128-bit target: Clang will seamlessly generate two 128-bit operations; GCC will fall back entirely to scalar. My assumption is that developments in Clang for ARM's SVE have carried over to generating scalable code for other platforms, but nevertheless it is remarkable.

I don't believe that writing functions comprised of hand-crafted lists of intrinsics is the best way forward. Undoubtedly it's worked for projects, even quite well to ship stable software -- but it scales and adapts poorly in a fast-developing and diverse market of hardware. For example, years ago I wrote a simple `tolower(string)` implementation using an assemblage of 128-bit standard-Intel SSE2 statements and today the instructions it produces are exactly the same as the day that I wrote it. All I can hope for is that 256-bit capable architectures can execute two of my operations at once. That's not ideal.

<comment><USER10> If you just need "big" numbers, Rust supports 128 bit int on all platforms using Clangs code generation

<comment><USER11> No need to reach for rust; just use __(u)int128_t. Works with gcc, too.

</comment></comment></comment><comment><USER12> Very cool. This is effectively a replacement for the now unfortunately abandoned Yeppp library which I used with C# - though modern .NET has SIMD now too. [https://news.ycombinator.com/item?id=10232395](https://news.ycombinator.com/item?id=10232395)

<comment><USER13> This would not replace yepppp. This is more like a library yeppp would use. If you need to replace yeppp look at something like Intel MKL or Ipps.

</comment></comment><comment><USER14> Some matrix math libraries like Eigen[1] support vectorization via SSE, AVX, NEON, etc. and also use cache friendly algorithms for larger matrices. Highly recommended when you don't need to go quite as low level as individual instructions.

[1] [http://eigen.tuxfamily.org](http://eigen.tuxfamily.org)

<comment><USER15> If you need to work on large matrices, Eigen is highly recommended. If you need to do a stream of custom processing in small steps, Eigen is not a good fit. Eigen is a super complicated, template-heavy library that can compile very heavyweight tasks into very efficient code (eventually).

For custom work, [https://github.com/VcDevel/std- simd](https://github.com/VcDevel/std-simd) is working it's way into the C++ standard.

<comment> Const-me > Eigen is a super complicated, template-heavy library

I agree, but that feature allows to apply optimizations by specializing these templates.

Works for both micro-optimizations (in their pbroadcast4<__m256d> they do 4 loads, on many CPUs AVX2 can do better with a single load + shuffles) and replacing large parts of Eigen (I was able to improve performance of conjugate gradient solver by moving the sparse matrix into a SIMD-optimized structure).

</comment></comment></comment><comment><USER16> A similar library in Rust: [https://github.com/jackmott/simdeez](https://github.com/jackmott/simdeez)

<comment><USER17> That library is not even remotely similar to SIMDe. The goal of SIMDeez is to provide an abstraction over different SIMD instruction sets (different versions of the x86 SIMD instructions: SSE2, SSE4.1, AVX2). The goal of SIMDe is to let you run code using platform-specific intrinsics _on machines that don 't have these instructions_, e.g. run code with SSE/AVX intrinsics on an ARM-based CPU. They're very different things.

</comment></comment><comment><USER18> Careful when invoking (some) AVX-512 instructions, because having a process using them on just one hardware thread can cripple your entire system and hurt overall performance in workloads where the kernel or another process on the system is doing a lot of the work.

<comment><USER17> While that's true, I don't see how this is relevant to SIMDe? SIMDe lets you compile code using (e.g.) SSE/AVX intrinsics for ARM targets, using the target platform's SIMD intrinsics when possible. It doesn't even officially include support for AVX512 yet.

Anyway, for anyone looking for details on what the OP mentioned, it's an implementation detail of Intel CPUs, see [https://en.wikichip.org/wiki/intel/frequency_behavior#Base.2...](https://en.wikichip.org/wiki/intel/frequency_behavior#Base.2C_Non- AVX_Turbo.2C_and_AVX_Turbo)

<comment><USER7> It does include support for AVX-512, it's just still a work in progress. AVX-512 is enormous (IIRC ~ 4k functions), so it will be a while before it is fully supported.

If you're targeting AVX-512 but don't have hardware that supports AVX-512 (like all AMD CPUs), SIMDe can be quite nice. The result is much faster than Intel's SDE and it's just native code that you can use your normal debugger on.</comment></comment></comment>


Maidsafe is working on a decentralized network - <AUTHOR> http://techcrunch.com/2014/07/23/maidsafe/ <comment><USER2> [http://en.wikipedia.org/wiki/Freenet](http://en.wikipedia.org/wiki/Freenet)

      Freenet is a peer-to-peer platform for censorship-resistant
      communication. It uses a decentralized distributed data store to
      keep and deliver information, and has a suite of free software
      for publishing and communicating on the Web without fear of
      censorship.[4][5]:151 Both, Freenet and some of its associated
      tools were originally designed by Ian Clarke, who defined
      Freenet's goal as providing freedom of speech on the Internet
      with strong anonymity protection.[6][7]

      Freenet has been under continuous development since 2000.

I ran a Freenet node for quite a while. I eventually stopped for two reasons:

1.) Freenet is really astonishingly slow. Think ten kilobits per second of transfer, and tens of seconds of latency. It doesn't fit the www user interface very well at all. It would probably need to maintain a dozen copies of every file in order to attain a reasonable amount of throughput. Bittorrent has it beat cold for mildly illegal files, (copyrighted music, movies, etc) which means that Freenet's users mostly use it for very illegal files, thus:

2.) Man, it is absolutely full of child porn. If you donate 10 GiB of disk space to Freenet, then you can be sure that at least 5 GiB of that is going to be dedicated to child porn.

<comment><USER3> Yep I love the idea of a decentralized, free network (mesh or otherwise) but it has to be very specialized or it gets used for CP all day long. I think the answer is way less bandwidth so it can only be used basically for text-based data - chat, scientific stuff, streams from temperature and wind gauges, etc.

<comment><USER4> I had the idea a long time ago for a decentralized network with really small object size limits and bandwidth caps. It dodges a lot of the scalability problems. The idea would be for people to use it for communication, not big file transfer. If someone wanted to send a file they could post a magnet: link or a regular http: link, etc.

</comment></comment></comment><comment><USER5> I would like to point out that maidsafe is objectively a scam.

Operation of the maidsafe system as advertised relies on a number of provably impossible technologies, like purely algorithmic proof-of-identity.

They gave a presentation at a recent Bitcoin conference in DC. I asked a few basic questions about how they planned to do certain things critical to maidsafe's operation (that no one knows how to do, and many think are impossible), and their answers were so obscenely stupid that anyone in the room with relevant technical knowledge was laughing.

Example: "How do you plan to prevent bots from gaming the data transfer payment system?" The answer was something like "Oh, it's way too hard to make a bot. There are too many steps."

<comment><USER6> > purely algorithmic proof-of-identity

Is that what's presented in this paper? [https://github.com/maidsafe/MaidSafe/wiki/unpublished_papers...](https://github.com/maidsafe/MaidSafe/wiki/unpublished_papers/SelfAuthentication.pdf?raw=true)

<comment><USER5> No. Proof-of-identity means proving you are a unique human. I.e you're not a bot, and one human can't claim to be multiple humans.

It is not possible to have proof-of-identity on a distributed system without having a trusted centralized identification service (which maidsafe claims to have solved, yet offers no evidence).

<comment><USER7> Yes, as far as anybody seriously believes this is completely impossible. Their "solution" will likely be not one at all. There's several comments floating around that MaidSafe has saved all of the people who bought MasterCoin and didn't have anywhere to dump it due to the markets being too shallow. I'm inclined to believe that's more the purpose than anything.

<comment><USER8> They started coding 6 years ago.

<comment><USER7> They had the "IPO" in April.

Just because the same is the same doesn't mean the target is the same (see Ripple being bought out and turned into a pump and dump).

</comment></comment></comment></comment></comment></comment><comment><USER9> Repeating my comments from another thread:

I thought like this once.

Futurists have a tendency to imagine a world of changed human behavior and it's compelling to do so. The reality is that the future rarely arrives as sweeping change, but rather as metaphor and specialization.

Whereas you can imagine others adopting new patterns of behavior because you understand the underlying reasons why such behavior is reasonable, the metaphor through which you explain this change is not readily understood. Why, as a User do I want this? If the answer is control and privacy, you might be barking up the wrong tree (time and again we've shown that those are not things consumers want or are willing to pay for).

If you want to drive dynamic change in the world, you have to change the underlying structure of complicated systems while steadfastly avoiding changes in user behavior. It turns out this is quite hard.

I applaud your efforts but encourage you to avoid the rabbit hole of endless specialization and to improve the marketing metaphor/rhetoric.

<comment><USER10> I think you are wrong on the control and privacy issue. It would seem to me to be more a lack of understanding on what control and privacy mean for the average user. Most Internet users are like most car owners. They have no idea about the inner workings, nor do they care. They don't generally assume that having a seat belt is more safe than not having one. And they generally trust that the manufacturer has their [the user's] individual best interests in mind when developing, building, and selling the car. -- Likewise, most internet users firmly believe that if it was "good" for me it would be already "built- in" to the system. This inherent trust in what is presented is the problem, rather than consumers not wanting control and privacy.

<comment><USER11> The problem is far bigger than just loss of control and privacy. We are paying so much more[1]:

1\. The advertisers who pay for it all still get their money from us, but baked into prices of the things we buy from them. There is no free lunch.

2\. The overhead cost of advertising is huge and we pay for that too. Ad systems and data collection systems, ad engineers and people like the author. Ad agencies. Creative agencies. Ad tracking. Marketing departments.

3\. As the article points out, we pay the opportunity cost of a product that cannot put users first because they live or die by giving advertisers what they want. Costs include our lost privacy, content and services design that optimize for advertising revenue instead of its users, and our time and attention stolen by surreptitious ads. As has been said, we are more Google's products than we are their customers.

4\. We pay the social costs. Democracy and the free market assume people make voting and purchasing decisions based on facts and reason. Advertising is predominantly about manipulation and deceit. To me this is the most expensive cost of all.

Added together, we are paying a lot more for "free" web content and services than if we could just straight up pay web sites for straight-up ad-free versions. But as in the prisoners dilemma, we individually make decisions that hurt us all collectively. Whatever you think of MaidSafe, the article is so right when it says,

 _" Do we have the Internet we deserve? There's an argument to say that yes, we absolutely do. Given web users' general reluctance to pay for content. We are of course, paying."_

So, as you point out, the question is, "How do we get users to understand this?" Got any ideas?

-

[1] This is a condensed version of a more detailed case with reference links that I made here: [https://news.ycombinator.com/item?id=7485773](https://news.ycombinator.com/item?id=7485773)

</comment></comment></comment><comment><USER12> Maidsafe makes some big claims about their cryptography and verifiable behavior that was panned in this /r/crypto thread [1]. Can anybody add some thoughts to this?

1\. [http://www.reddit.com/r/crypto/comments/24zext/what_does_rcr...](http://www.reddit.com/r/crypto/comments/24zext/what_does_rcrypto_think_of_maidsafes_self/)

</comment><comment><USER13>
      "Our network knows within 20 milliseconds if the status of a
      piece of data or a node has changed. It has to happen that
      fast because if you turn your computer off the network has to
      recreate that chunk on another node on the network to maintain
      four copies at all time."

What do they mean by that 20ms figure? That can't be the entire network, since trans-pacific latency is something on the order of 100ms

<comment><USER7> Sounds pretty made up. It's over 200ms for me to see a reply from most servers just due to the latency coming in and out of the deep sea cables. I wager most nodes in a p2p system would have peers far above that. You can't get around limitation that no matter how fancy your code.

<comment><USER4> It's possible with central tracking servers if you de-hype-ify that number to say <500ms. With a decentralized network it's not possible. Even trying to achieve this would result in completely insane exponential bandwidth overhead and consummate issues around vulnerability to amplification DOS attacks.

This is why we have no huge-scale meshnet. As the network's size increases the bandwidth required to maintain the network's routing tables increases exponentially, not linearly, until no bandwidth remains for actual traffic.

If this is solvable it will either require a creative redefinition of the problem or a fundamental innovation in mathematics, probably in the realm of graph theory.

<comment><USER7> I think the lack of wider scale meshnets is just that the people willing to set one up or join one are either geographically isolated or aren't aware of others in a similar position. You need a high density of willing participants for something like it to work. Yes there's issues with authentication and flood control, but I'm not sure meshnets have ever become a big or important enough thing for that to be an issue (I'd love to be corrected on that).

</comment></comment></comment></comment><comment><USER4> I wish these guys luck, but I'm becoming increasingly pessimistic about the idea of a 100% edge-only decentralized network that is really robust and useful.

I don't think it's just a matter of putting the engineering effort to bear. I think there are fundamental mathematically-based barriers here. Try this paper for starters:

[https://www.zerotier.com/misc/2011__A_Little_Centralization_...](https://www.zerotier.com/misc/2011__A_Little_Centralization__Tsitsiklis_Xu.pdf)

The CAP theorem is also very relevant.

</comment><comment><USER14> I was thinking about something similar to this the other day for a replacement (or evolution of) wikipedia. If you wanted to store all of human knowledge and history in some sort of archive, it would be enormous - but build it on a p2p basis, everyone having a slice of it and that slice being replicated on everyone's machine. Access would mean that you have to agree to hold on to and serve part of it.

But I don't get how that could work for applications, especially in security sensitive applications.

<comment><USER15> You might be interested in Smallest Federated Wiki[0][1], a software project by Ward Cunningham (creator of the first wiki). It focuses more on collaborative, distributed editing than distributing content though.

[0] [https://github.com/WardCunningham/Smallest-Federated- Wiki](https://github.com/WardCunningham/Smallest-Federated-Wiki) [1] [https://github.com/fedwiki](https://github.com/fedwiki)

</comment></comment><comment><USER16> Servers have a lot of nice features that are hard to replicate in a totally decentralized environment - I say this as someone who experimented a lot with different peering structures for a hobby project.

And indeed, this too seems to rely on persistent nodes, though they don't say in what capacity (whether they work like torrent trackers or if they actually relay content).

In an increasingly mobile-flavored network where one person has many devices it makes sense to have servers. However, that doesn't mean we all need to get behind the mega silos of Facebook and Google. The early internet actually got this right, both technologically and topoligically.

The problem is partly cultural since we have gotten used to the all-or- nothing, anti-federation approach of Web 2.0+, but it's also due to the inability to deliver and change features in a timely manner. But if, say, Facebook UI innovations were to stagnate (and some say that they already have), it would become more feasible to implement a slower-moving federated service.

</comment><comment><USER17> This sounds good but there are some problems that I think can't be solved.

1st: What if a user wants to flood the network with meaningless data?

2nd: Latency-critical applications, especially on geographically distributed peers.

<comment><USER18> Doesn't MaidSafe have some kind of cryptocurrency? You should have to pay for any resources you use.

</comment></comment><comment><USER6> Does anyone have opinion about the MaidSafe self-authentication paper? [https://github.com/maidsafe/MaidSafe/wiki/unpublished_papers...](https://github.com/maidsafe/MaidSafe/wiki/unpublished_papers/SelfAuthentication.pdf?raw=true)

I came across it a while ago somewhere but still haven't read it.

</comment><comment><USER19> It sounds like they are reinventing Freenet. Badly. Not realizing how hard some things are. Instead, they make big claims. Where's the code?

Not that I think Freenet is terribly good.

<comment><USER8> > Where's the code?

Enjoy! [https://github.com/search?q=maidsafe&ref=cmdform](https://github.com/search?q=maidsafe&ref=cmdform)

</comment></comment><comment><USER20> Like FileCoin, this is very interesting but is any of those networks ready to be used _today_? Even in some limited capacity? Right now, it sounds like pure hype.

<comment><USER18> Space Monkey works but it's a proprietary system.

</comment></comment><comment><USER21> I find it very hard to believe that datacenters, not programmers, are the most expensive part of running the Internet.

</comment><comment><USER22> Something like this has already been done with I2P minus the cryptocurrency aspect.

</comment><comment><USER23> I thought RUDP was just a draft spec from 1999. [https://tools.ietf.org/html/draft-ietf-sigtran-reliable- udp-...](https://tools.ietf.org/html/draft-ietf-sigtran-reliable-udp-00) Is there a more recent standard?

</comment><comment><USER24> It's all fun and games until the government decides you're hosting child porn on your computer, even if you didn't put it there.

So, they'll have to come up with some means of centralized censorship, which is going to hack off the devout civil libertarians who would initially support it. And the vast majority of internet users aren't going to care until someone tries to explain to them how the internet is using their resources for storage.

Then the fun starts.

<comment><USER2> In the Freenet model, the local cache is encrypted, and you don't have the decryption key.

[http://en.wikipedia.org/wiki/Freenet#Technical_design](http://en.wikipedia.org/wiki/Freenet#Technical_design)

</comment></comment><comment><USER25> So I'm a little confused here - let me just ask something;

How is this going to work?

The answer seems obvious, but look at the battle raging over net neutrality right now. With a decentralized infrastructure, it's going to be a lot harder to get around the prospect of paid peering then it'd be with Uncle Google and/or Amazon paying their way into your home.

</comment><comment><USER26> An alternative approach is something like sandstorm.io

</comment><comment><USER27> Can anyone suggest a better (i.e. more neutral and accurate) title?

<comment><USER28> Perhaps something like "P2P/distributed hosting with Safe", "MaidSafe: Decentralized servers/hosting", or some combination like that?

<comment><USER27> We picked language from the article that seems to describe it.

</comment></comment></comment><comment><USER29> as long as it's not overpriced like AWS, I dun care. Otherwise, no, give me back my cheap server.

</comment><comment><USER30> So all of your users data is going to be stored in random places? I don't see how anyone thinks this could feasibly work unless everyone is suddenly cool with loss of trade secrets, the wholesale giveaway of intellectual work, and complete loss control over data/content.

Unless I'm missing something?

<comment><USER31> It's hypothetically possible to come up with versions of algorithms that distribute the processing of your data such that each node does not get enough information to recover secrets, in a cryptographically secure fashion.

As a developer though in 99% of cases I'd much rather just pay for a few servers in multiple datacenters and load balancing than waste time researching the above, let alone proving its cryptographic security for my use cases.

It could, however, be useful for cases where you're trying to get over foreign government censorship or oppression against whatever service you're trying to provide. Imagine, for example, a free speech discussion service that was decentralized and essentially un-blockable. Bonus points if its cryptographic system can be designed such that an arbitrary processing node can never be proven from its data alone that it was helping run the service (among other services).

<comment><USER32> It's already possible to execute some algorithms on untrusted computers using homomorphic cryptosystems. I'm not sure what to what extend this will proceed - it might be possible to securely execute arbitrary algorithms on untrusted platforms. This is sort of a holy grail of cryptography - to be able to process secret information efficiently without gaining knowledge of it.

</comment></comment></comment><comment><USER33> This is the internet all over again. Remember "online services"? BBSes?

Some form of this was bound to sprout as the internet became feasible to regulate and demarcate. It started with BitTorrent because people wanted to pirate music. (Maybe before, but torrents are impressive in that they reside literally nowhere).

This is going to happen. Maybe in 2014/15, maybe in 2020 when people are having their prostates probed by the NSA/Europe's right to forget/Brazil's lei de mídia/yadda yadda yadda.</comment>


What if your Karma was Currency? - <AUTHOR>

Just a quick thought...  What if you were able to use your Karma to give multiple upvotes, instead of just one?  If people agree (by also upvoting that post), you can earn additional Currency.  If you assigned multiple upvotes where others downvote, you lose your currency.<p>In my head, it creates an interesting environment where the people that frequently "invest" their Currency correctly will earn an abundance.  But that's fine if they're actually good at picking what I want to read. <comment><USER2> Your idea relies on karma having been earned because of your contributions here. It's just a number.

If you subscribe to the usual tech blogs and rush to submit (or in many cases resubmit) everything they publish indiscriminately you will get a lot of karma.

If you have your own site and dump every link you produce here you will get a lot of karma (unless or until the mods notice).

</comment><comment><USER3> Assuming I was karma-rich and wanted more, I'd contact other high-karma folks and rig the system with them.

<comment><AUTHOR> Certainly, the system would need to be unriggable.

There's a number of hiccups but nothing that strikes me as impossible to manage. You and your karma rich folks could "invest" in other posts as much as you'd like, but if the non-Karma rich don't offer a simple upvote, I don't see why you'd receive a return on your investment.

There'd also need to be some element of time, so the sooner you invested the more you can potentially make back. And perhaps if you invested too late, you still have potential to lose.

</comment></comment><comment><USER4> Are you trying to kill the independent mind and promote herd mentality? If things worked this way during the renaissance, Michelangelo would have died like Van Gough (broke and a total failure).

As PG has noted as well on many-a-occasion, the best ideas seem crazy at first.

</comment><comment><USER5> What if HN displays the sum of the users' karma that voted up and down? What if we could see who voted?

</comment><comment><USER6> What if karma was just based on up and down votes?

Wouldn't that be simpler and more fair?</comment>


The Investment Secrets of Al Gore - <AUTHOR> http://www.theatlantic.com/magazine/archive/2015/11/the-planet-saving-capitalism-subverting-surprisingly-lucrative-investment-secrets-of-al-gore/407857/?single_page=true <comment><USER2> "Generation's best-known analysis is its 2013 report asserting that coal and petroleum reserves were "stranded assets" whose theoretical market value would never be realized, because environmental, legal, technological, and market constraints would inevitably prevent much of that carbon from being sold and burned."

That might be another motivating factor for the Saudi's to sell their oil cheaply. Sell as much as you can now because the future market will be more hostile.

<comment><USER3> From time to time they talk about it candidly, the recognition that the electric vehicle shift poses a huge threat to oil demand as a whole (typically interwoven with a discussion on solar or renewables in general). All sorts of knock-on effects occur if you remove 1/3 of a market.

Saudi has around ~268 billion barrels of oil. They're producing at 10.x million barrels per day currently (let's say 3.8 billion barrels per year). Estimated reserves are almost always wrong to the low side, at least in the prior century projections were overwhelmingly that way. Saudi might have a century of oil production left at these levels. I think I'd be happily selling it cheap today as well (and considering their cost basis), I wouldn't want to be dependent on oil in 40 or 50 years, much less 100.

<comment><USER4> The challenge is that there isn't a single car company making money on electric vehicles. Even Tesla selling their cars at around $100k is still seldom profitable (and when they are it's because of selling credits).

It's tough to say that EVs are the future when it isn't clear that anyone can make money selling them.

<comment><USER5> part of why they're not profitable is because of the saudis dumping oil, which may well be part of their motivation

<comment><USER6> How is that part of why they're (EV manufacturers) not profitable?

<comment><USER7> Easy. There is zero incentive to build a better car when the one you can buy now is so cheap. This is why in the States, SUV sales follow gas prices [0].

[0] - [http://www.npr.org/2015/01/05/375201451/car-sales-surged- in-...](http://www.npr.org/2015/01/05/375201451/car-sales-surged-in-december- capping-a-good-year-for-the-industry)

<comment><USER8> That speaks to the "operating" costs not to the initial "investment" to get the vehicle off the dealer lot.

Why can't a manufacturer make a profitable vehicle which is also affordable for the consumer, even at the high-end of the market?

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> TLDR: a "poor" senator (meaning just ~$2 million throwing away money), gets kicked out of the white house, and connects with loads of high tech firms and big banks and "somehow" gets >100x investment return in ~10 years, or 10x market return (70% per year average) through his hedge fund (the 10x return is on his own money, of course, not on the people who paid him to manage their money, article doesn't state what their return was).

Looking up what return he provided for clients in the same period, for one client (NY city/state [2]) it appears he managed to deliver 32% in the 2009-2012 period. Per year that comes out to 9.5%, assuming reinvestment. Keep in mind that plain S&P 500 rose from 90 (SPY approx value in 2009/1/1) to 205 (SPY approx value 2012/6/1), or 233%, or 32% per year.

Can someone explain to me why anyone parks even a single penny with this firm ? Although the article does say that it was public funds looking for an "environmentally friendly" way to invest.

Some interesting things, apparently ethical investing means mostly tech companies, with Microsoft being the #1 single investment. Generally looks like a run-of-the-mill, a lot riskier than usual (has biotech & tech, he's got to be down 10% for the past month, at least. And if his bond portfolio is this risky, more than 10%), portfolio.

[1] [http://www.nasdaq.com/quotes/institutional- portfolio/generat...](http://www.nasdaq.com/quotes/institutional- portfolio/generation-investment-management-llp-733957)

[2] [http://www.businessinsider.com.au/al-gores-generation- invest...](http://www.businessinsider.com.au/al-gores-generation-investment- management-wins-1656-million-nyc-pension-contract-2012-6)

<comment><USER10> The bulk of his money came from co-founding Current TV then selling it to Al Jazeara for an estimated $500 million in 2013. He also made a killing off of getting a bunch of Apple options for serving on their board in the early 2000s.</comment></comment>


The HemLoft - <AUTHOR> http://thehemloft.com/the-story/

<comment><USER2> The story: "Since the treehouse was built on crown land, I don't technically own it, and so its fate is uncertain. For three years I kept the HemLoft secret, but now that I'm finished, I've found myself wanting to share it. I even shared it with a big glossy magazine! Coming out of the bush about the HemLoft is fun, however it poses a few problems; if people know about it, they might try to find it. And if the wrong people find it, they may make me take it down."

"It took a lot of work to build it, and I'd rather not take it down, just yet. So I've been thinking of ways to expose the HemLoft, while somehow making it legal. To the best of my knowledge, Squatting on Whistler Mountain, beneath some of Western Canada's most luxurious mega-homes would not be looked favourably upon. However, I've thought of a few ideas that might be… I'd like you to read the ideas below and vote on the one you think I should do!"

Also, I had to find a mirror to see it ([http://solarburrito.com/blog/2012/04/09/the-hemloft- secret-t...](http://solarburrito.com/blog/2012/04/09/the-hemloft-secret- treehouse-near-whistler-b-c/)) just to get some ideas on what it was, as well as a map (<http://goo.gl/maps/iof7T>) of where it was located.

Meh, it is a nice place, neat looking, but I don't see a strong reason to classify it as a national monument or art project worthy of preserving.

What happens in 5 years after the creator has moved to a new thing? Just let it sit there as a derelict building in the middle of a national forest? Why not let people put mobile homes up there then?

<comment><USER3> If I was in charge I'd congratulate the guy, then seize the building and make it a rest stop for hikers and stuff. It's definitely neat enough (in my opinion) to dedicate a little bit of time to provided it's publicly accessible.

<comment><USER4> It's not on or even really near any existing trail that would make it useful as a rest stop for hikers. It's about 300m from the road up to a bunch of the most expensive houses in whister, and anybody who can find it can stop in. There's no need to 'seize' it, just leave it as is. which is exactly what's happening - it's been sitting there for a couple years now and nobody has torn it down, seized it, vandalized it, broken it, or hurt it in any other way. It just sits there as an interesting artifact for anybody who wants to stop by and take a look.

</comment></comment></comment><comment><USER5> Personal use of public lands of this nature can almost always be classified as "misuse," no matter how cool or ingenious the project.

<comment><USER6> > _Personal use of public lands of this nature can almost always be classified > as "misuse," no matter how cool or ingenious the project._

Of _which_ nature? Many people camp and graze on public lands without committing violations, so merely "personal use" is certainly allowed.

You seem to be saying, "illegal use is illegal".

<comment><USER7> I would think that the 'permanent structure' is probably the defining thing done here that makes it incontrovertibly illegal.

Generally speaking, camping on lands like this requires permits (though not always) and are generally overlooked because 1) they aren't as heavily patrolled (because there isn't the expectation of campers) and 2) the campers generally leave little trace of their comings and goings.

<comment><USER6> >Generally speaking, camping on lands like this requires permits

Nah. Places that require permits are typically developed camping sites. The vast majority of public land in the US (and Crown land in Canada) requires no permits to camp on. BLM land (1/8 of the US) is free to camp on unless local regulations say otherwise.

<comment><USER7> Thank you for the correction. That's what I get for using anecdata to assert a claim.

Edit: Now that you've pointed that out though, I did a quick search and found that while free, there is a "14 day limit per calendar year" on camping on BLM land (it doesn't specify if this is confined to a single piece of land or all land in general), and for periods longer than 14 days, a permit is required.

</comment></comment></comment></comment></comment><comment><USER8> Hmm. That he planned to get others to pay for his retirement through fundraising is quite depressing/worrying.

Building the tree house was a nice story, but I'm waiting for the 'fundraising' to buy the land and obviously plenty of err... administration costs for doing so.

<comment><USER9> He is accepting donations for an undefined project on the What's Next page.

<comment><USER8> Good spot. Freeloader?

<comment><USER10> he paid for the bits of the treehouse (that he didn't get free on craigslist) with his carpentry jobs in Whistler, right? so no. he paid for it.

On what he does next, who's to say. In his own words:

"I now feel like I want to create something new, something of value that also doesn't belong to anyone. It will be radically different in form and function than the Hemloft, however, it will have some similar characteristics: it will be remote, it will have a minimal footprint, it will be built mostly out of used materials, and it will push the boundaries of design."

Maybe he's lying. But the dude can at least build cool treehouses.

</comment></comment></comment></comment><comment><USER11> I recall a reddit thread about this (which I cannot find) on which a commenter explained that this tree house design would, over time, kill the tree it is attached to. If that is the case, I think the house should be taken down.

</comment><comment><USER12> If you do the research and are not tied to "the perfect spot" that happens to be on public land, there are (not expensive) remote lots of land for sale where the only problem is access.

</comment><comment><USER13> How did he anchor it to the tree with damaging the bark and therefor the tree?

</comment><comment><USER3> For anyone wondering about relevant laws here's a relevant section of the BC Land Act[1]

[1] [http://www.bclaws.ca/EPLibraries/bclaws_new/document/ID/free...](http://www.bclaws.ca/EPLibraries/bclaws_new/document/ID/freeside/00_96245_01#part6)

<comment><USER6> >A person who does anything that is an offence under section 60, or who directs or causes an offence to be committed under section 60, is liable to compensate the government or the person against whom the offence is committed for loss or damage suffered by the government or by that person because of the contravention.

Charge him for the price of the tree.</comment></comment>


Tim Sweeney: The end of the GPU roadmap [pdf] - <AUTHOR> http://graphics.cs.williams.edu/archive/SweeneyHPG2009/TimHPG2009.pdf

<comment><USER2> One thing that didn't seem to be addressed in the slides themselves is the reason that GPUs have fixed function texturing operations, a fixed pipeline stage configuration, etc. It saves on memory bandwidth by making the memory accesses more coherent and dramatically magnifying the usefulness of relatively small caches.

Basically this is a claim that there's a massive amount of graphical quality that will be unleashed once we're unchained from the tyranny of the fixed function GPU behavior that remains, and that this is worth whatever loss in computational power we'll have when we increase the sizes of caches to cover the less-coherent memory access.

I'm not sure if I buy that. Games look quite nice already, and I'm not sure if I could personally tell the difference between what we see in something like Crysis and something like Toy Story, which didn't have the shackles of fixed function pipelines.

An easier explanation that's long been a pet theory of mine is that Larrabee is essentially a thread parallel FP-heavy processor for the scientific market motivated by GPGPU's encroachment on that market segment, and necessarily labeled a "CPU/GPU" in order to not step on toes in the wrong places at Intel.

It's definitely going to be an interesting next couple years in graphics, though.

<comment><USER3> Pixar has their own style that is intentionally not photorealistic. Also, Toy Story is from 1995. Try instead comparing Crysis to the effects from a modern blockbuster, which have to hold up well when compared to the live action shots.

Ditching the fixed-function pipeline isn't all about realism, though. More flexibility will allow more experimentation with non-photorealistic rendering. Maybe we'll see more games with graphics that look like they were painted or drawn.

Another benefit of more flexible rendering should be easier game development. Writing a complete renderer from scratch will be hard but most games will use middleware for that. The most expensive part of a modern game is the art, and a flexible renderer could do a lot to make generating that art easier.

I do share your pet theory about Larrabee trying to avoid stepping on toes at Intel by labeling themselves a GPU. However, in order for Larrabee to be worthwhile for Intel it needs a mass market, and graphics is it. If Larrabee fails at graphics it will likely not survive.

</comment></comment><comment><USER4> "Load 16-wide vector register from scalars from 16 independent memory addresses, where the addresses are stored in a vector!"

Wont that cause 16 memory reads that are much costlier than what one can benefit on a 16-way SIMD ALU operation?

What I wanted when I tried to write highly optimized computer-vision code was to have multiple "cursors" in memory that i would read from and increment. I.e. that the hardware would prefetch data and my code would operate as if data was a stream.

<comment><USER5> Your processors fetches a whole cache line at once anyways, so it isn't more memory reads. The memory address needs to be aligned to 16 byte, though.

<comment><USER4> But it says the addresses in the vector are independent. What if they don't all point into the same cache line? You could have 16 cache misses.

What have I misunderstood?

<comment><USER6> yes, you could have 16 misses, but the next n (where n=cacheelinesize/size of entry) after that will all be hits...

You have to risk that miss at some point. And it does not matter whether you see the misses one-by-one or 16 in one go, it's the same penalty.

<comment><USER7> A more interesting worst case would be one where the 16 slots take turns in missing the cache, so that almost everything is read from the cache, but there is still the penalty for a cache miss between every two SIMD instructions. But if you write your code in that style you get what you deserve :-).

Even some current architectures [edit: like, for example, x86] have instructions that give hints to the MMU that the program intends to stream some part of the memory in the near future, I guess these will rise in importance when more programs have to avoid these kinds of problems.

</comment></comment></comment></comment></comment><comment><USER6> That's a really great presentation!

One observation though, what is sold as a 'game' today is more of an interactive movie.

As to the larrabee, I can't wait until it comes out. That chip is going to give NVIDIA serious headaches.

Lots of good stuff in there, I just skimmed it will go back later to read it again.

<comment><USER8> Larrabee seems very Itanium-like to me... And something I'd never really considered, but seems like GPUs actually take a lot from the Itanium camp.

Perhaps they were on the right track, but simply too early (afaik one of the root-cause problems of Itanium was the die size).

<comment><USER9> Itanium?!

Itanium is not a many-core processor: it is a VLIW processor.

If the Larrabee can remind someone of another processor, it's the Niagara family from Sun.

<comment><USER10> I read "itanium-like" not in terms of architecture, but in market timing, delivery on performance promises, and scalability for future revisions.

<comment><USER9> I think Larrabee is a lot more promising than Itanium ever was. At the bare minimum, it's a server-like x86 processor.

I would prefer something with a more elegant ISA than an x86, but that's what we have in front of us now, thanks to the huge mass of non-portable x86 code that's so critical for success on the desktop...

</comment></comment></comment></comment></comment><comment><USER11> The epic gaming guys always have the most interesting presentations, they seem more up on more current software techniques like STM and functional programming, I don't hear a lot of other game companies talk about.

</comment><comment><USER12> It's particularly interesting to read Sweeney's views on this subject, considering that he's been talking about the shift back to software rendering since 2000 or so, when GPUs started becoming programmable.

Check out this old interview: <http://archive.gamespy.com/legacy/interviews/sweeney.shtm>

_2006-7: CPU's become so fast and powerful that 3D hardware will be only marginally benfical for rendering relative to the limits of the human visual system, therefore 3D chips will likely be deemed a waste of silicon (and more expensive bus plumbing), so the world will transition back to software-driven rendering... If this is a case, then the 3D hardware revolution sparked by 3dfx in 1997 will prove to only be a 10-year hiatus from the natural evolution of CPU-driven rendering._

His timeline was off by a few years, but I think he basically had the right idea all along.

<comment><USER13> Note that now he's not saying that GPUs are becoming margunal, it's the fixed- function pipeline he dislikes. The "software rendering" he calls for will most likely run on a GPU.

</comment></comment><comment><USER14> The return to CPU-based rendering might do wonders for PC gaming's popularity. It hadn't occurred to me until I read this, but it seems like the decline of PC gaming has mapped fairly closely to the increase in reliance on top-end graphics cards. There is probably a huge slice of people at the margins that have shunned PC gaming (actively or passively) because of the various burdens that requiring a graphics card adds.</comment>


How I learnt how to steal like an artist in a month and designed my website - <AUTHOR> https://medium.com/learning-lab/4-how-i-learnt-how-to-steal-like-an-artist-in-a-month-and-designed-built-my-new-companys-c5c68ffcf251 <comment><USER2> Nice idea the swipe file! defenetly implementing it myself</comment>


15 Essential Packages to Get Started with Electron - <AUTHOR> https://nodesource.com/blog/fifteen-essential-packages-to-get-started-with-electron/ <comment><USER2> "15 Essential Packages", but you shouldn't use more than 9 of these at a time.

"Essential" was probably not the best word to use.</comment>


Can we get some support for SSH in Windows? - <AUTHOR> https://windows.uservoice.com/forums/265757-windows-feature-suggestions/suggestions/6506603-scp-ssh-sftp-support

<comment><USER2> I fail to understand how Microsoft working on OpenSSL is any hint of SSH support coming...

</comment><comment><USER3> looks like wishful thinking that Microsoft will save all of us from PuTTY</comment>


Y Combinator Mentoring for Women - <AUTHOR> http://www.christine.net/2008/10/mentoring-women-for-the-next-y-combinator-1017-deadline.html

<comment><USER2> I apologise in advance as this is probably quite a controversial rant, but this sort of thing has always really frustrated me.

I guess it comes down to this: I don't see how sex matters when you're a business person, when you're programming, when you're building things. The sex of the person rightfully shouldn't come into it - it's their skills that matter. The interpreter, afterall, doesn't spit out a different result depending the sex of the coder - a computer is ultimately a great leveller. It has been a long fought battle to try and gain equality between the sexes and I firmly believe society is increasingly heading towards that goal.

And then when I read things like this it feels like a punch-in-the-face, as though it's saying "equality doesn't matter when it helps women". Or, even worse, there's perhaps an implication that women /need/ the help of other women to succeed and deserve special treatment. Or should I get ideas that there is some sort of conspiracy to form the inverse to the stereotype sexist "men's-only club" boardroom and there's some sort of attempt to reverse that through a "women's-only club". I loathe all these implications.

I've often wondered about this curious double-standard. There's previously been women-only discussions by Google in Computer Science at my University, but I bet there isn't men-only discussions in the psychology department, languages or other women-dominated social sciences and I think they'd be highly controversial if they did. Often an eyelid isn't blinked when someone offers something exclusively for women, but there'd rightly be uproar if someone offered it for men-only. I often wonder if the fact that men do significantly worse than women in exams (and as such University admissions) in this country would be quite such a footnote if the shoe was on the other foot.

<comment><USER3> Might I suggest that you consider taking part in a class dominated by women? Perhaps something discussing the proto-feminist leanings of Woolf?

I'm not kidding.

I think you'll find that you're lonely. That you gravitate towards talking to other men in the group. That you feel like your voice isn't heard. That you sense resentment towards you. That your opinion isn't valid.

Now imagine going through that every day in your college career.

(I'm assuming you're a man. If you're not, then my 97% die roll failed me.)

<comment><USER4> I know exactly what you're talking about. I once worked for a software company where the female engineers/managers way outnumbered the male engineers. It became known as a friendly place for female engineers to work and that, in turn, attracted more female engineers.

But that's not my point. My point is, at that company, I would often go to engineering meetings (with five to seven other people) where I was the only man in attendance. And I can tell you without a doubt that it was hard to get my opinion heard and I felt isolated.

So, I completely agree with your argument. You don't know what it's like until you've been there.

<comment><USER5> I'm a man, and I've worked as an ER/ICU nurse for the past 15 years. Being a gender FOO in a gender BAZ dominated industry can be unpleasant and challenging at times.

Not to complain, but to make the point:

* I almost got expelled from nursing school because of what I believe was discrimination towards men. I've talked to other men who've had similar experiences.

* I worked on a unit where my charge nurse repeatedly called me a "boy nurse".

* I am frequently referred to as "one of those male nurses".

* Many patients have asked me, "are you going to go on to be a doctor". When I tell them that I'm not, I hear, "Oh." and get a surprised, concerned look.

* I've had my ass pinched/slapped by coworkers. (I'm married. It's not appreciated)

* I had a coworker ask me to help with her, "fertility problems" and don't I look just like her boyfriend.

* Last week, I had a coworker come behind me and start braiding my long hair. I had to tell my coworker that I don't like people messing with my hair. Can you imagine if I did that to a female coworker at Google, IBM or Ford?

* I'm frequently around when women trade child birthing stories, or hear coworkers talk about their menstrual cycles.

* I've had bosses talk to me about how men don't really do foo very well as nurses.

* I'm frequently asked to "be a big, strong man and help me move my patient". I have back problems from 15 years of being asked to do things because of my size and gender.

* I've often been asked to care for hostile, combative, drunk or otherwise chemically altered patients, because I'm a "big, strong man".

I could go on.

Let's just say that I'm happy to mentor any man that comes into this profession. There are certain tricks of the trade that will help a lot that I've picked up along the way. And, there are benefits to being a man in this profession as well.

If the gender FOO's want to get together and help each other out or talk about how to deal with being FOO around so much BAZ... More power to them.

<comment><USER6> I'm a bit confused about the last two points. If you were a big strong female would they not have asked you to help move patients or take care of hostile patients? Were you asked to help with physical tasks because you are a man or because you are strong?

<comment><USER5> I suppose that's a good point.

In thinking about it, however, I haven't noticed when working in an ICU that stronger women are asked to care for the 400+ lb patients more often.

It is a fairly common occurrence, however for men to be asked to care for certain patients because "men are stronger". I've also been told by women that they are glad to have more men in the industry because "men are stronger".

I could be wrong, but I struggle to think of an instance where it would be okay for me to to categorize female coworkers as being inherently better or worse because of a physical attribute, however.

</comment></comment></comment></comment></comment></comment><comment><USER7> This is a fascinating set of responses. For those men who don't see the need and therefore don't approve, I wonder why you are objecting? For those who see this as exclusionary, you might ask yourself whether an all white organization seems meant for and welcoming to a person of color, and then swap out gender and see what your response is. Just because women live in a world where most engineering cultures are set by men, that doesn't mean that everyone, women and men, are impacted by the lack of diversity and gender difference. As someone who took a woman-founded team to TechStars (yep, and I'm not an engineer, either), we found a strong interest there in supporting many diverse types of teams as they also sought to support the strongest teams they could find that year. I left a voice mail for Jessica Livingston letting her know that we were going to do this before we started it, and if I'd been more aware of the deadlines earlier, I would have reached out earlier and started it earlier. There are no factors except culture, comfort and class that make it neccessary for 98% of the applicants and teams selected for YCombinator--or any competitive program--to be male. This mentoring effort, which I started with some friends, is meant to give women who qualify and want to apply some support that they may perceive as lacking in a program that, to date, has been almost exclusively male, as are most programs in the start up world. Will this effort be exclusive to YCombnator? I think not. But you're our first noble experiment, and if you're reading this and are a woman who'd like mentoring or to support this, email us at email@example.com \--Susan Mernit

<comment><USER8> I'm applying for this year's cycle and have sent pinkgaragementors a couple of emails with no reply. Any other way to get in touch?

<comment><USER7> jodie--the email is firstname.lastname@example.com or email me directly via my blog-susan mernit

</comment></comment></comment><comment><USER9> _"At the last Y Combinator Demo Day I attended, there were 3 women in a room of over 100 people. That just seems a bit low to me, and I have no doubt that it reflects the candidate pool"_

I'm glad she mentioned this. How could Livingston not want more women founders? She's trapped with 80 dudes six months out of the year.

I'm certainly for equal treatment, but whether the media wants to admit it or not - people are different. That's why Title 9, quota hiring and Chief Diversity officers (gag!) have been such utter failures. Right idea, wrong execution. Working in admissions in school was one of the most eye opening things I've ever done. Some of the other efforts are great, but most come off as discriminating double standards.

<comment><USER10> Just curious whether you'd be willing to share some of those eye-opening insights with us.

<comment><USER9> Wouldn't really call them insights, but sure.

HHI 60k, Black, 2.1 GPA, similar EC, no record, ACT Score 16 - Accepted.

HHI 50k, White, 3.2 GPA, similar EC, no record, ACT Score 22 - Rejected.

Most were variations of that. That is, less qualified applicants in similar economic situations were admitted solely because of race. Obviously I knew these practices existed (oh hai Division 1 athletics), I was just surprised how blatant it was especially with economic situations being roughly equal in many of the cases. Scholarships were even worse, but seeing as it was a few years ago, I don't remember specific cases. Just apply the above to general scholarship fund stuff.

Edit: Didn't like how the first sentence read.

<comment><USER10> Oh. Not that surprising, really. Affirmative action exists. Even (especially?) in the best schools in the nation. It's not just for race, though. Women get it at tech schools, men get it at some state schools, and poor people get it anywhere where most students are wealthy.

For the record, I'm an adamant supporter of AA. And not entirely because it helped me out personally.

edit: I go through all this work to say something to get an argument, and all I do is get a downvote? C'mon guys...

<comment><USER11> Don't worry aston, the News.YC audience is primarily white male libertarian (both right and left) leaning. Although it's a philosophically consistent position, I think it fails to recognize that there are deep inequities in society that the market/competition just cannot fix (and sometime the market sometimes exacerbates).

<comment><USER12> Free markets never fix societal inequities. In fact, they exacerbate them. People with wealth use that wealth to generate more wealth. Additionally, only a percentage of the lower class can climb to the upper class in each generation. It amazes me that anyone thinks there can ever be "equality".

<comment><USER13> Given a choice between equality in actual misery and "poor" people who have multiple TVs, decent housing, way too much food, and so on, why would anyone prefer equality?

I mention that tradeoff because it's the decision we get to make. Free markets give us poor people who live like kings compared to the poor bastards who are all equal.

I think that Bill Gates and Warren Buffet are an acceptable price to pay for a well-off poor people.

Me - I'm far more concerned with what I've got than I am with what someone else has. Why are you so concerned with what other people have? More to the point, how much are you willing to give up for equality?

<comment><USER12> I am not sure why equality === misery. But I am not talking about everyone having the same amount of money- using the word equality did not adequately convey my feelings on this. I am talking about setting a standard for living (we already have explicit and implicit standards) and then actually following the standard.

Depending on the metric you are using we do well. If you are talking about making sure people have the bare essentials, we do pretty well. The "extras" like education are lacking though.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> I like and appreciate this effort on behalf of women. I want my girls to grow up feeling comfortable getting involve in hacking because of some of you out there playing the role model for them.

All through my career I have seen a handful of women hackers and some were pretty damn good ones. Keep on pushing girls!!

</comment><comment><USER15> I think this is a great idea! She is offering help.

Frankly, this is the first post I've read where someone is offering plain and simple help. It would be great if she could help everyone, but her available 'free helping' time is I'm sure limited, and she choose a filter to limit the pool and to serve her personal goals as well.

I say thank you!

</comment><comment><USER16> Yay! It's really nice to see women help other women out like this. I'm not applying for this upcoming cycle, but I have benefitted from talking to and being mentored by other women with more experience. Helps a lot when there's only a very, very tiny percentage.

</comment><comment><USER17> I'm a girl and found the suggestion interesting. Support when you are starting is apreciated :)

Sometimes you need someone to look upon, who you can use as inspiration or for support. The closer they are to you the better you tend to feel. For example, I would look first for a local incubator (Spain) instead of aiming for a foreign one (e.g. US), but that doesn't mean the foreign ones aren't as good, just that I probably will feel more comfy on the one that's closer and consider we will understand each other better. This of course can be true or not, and I will find out eventually.

Before thinking about "does genre matter", think of the subject and change genre for something else. Does it sound normal to you? Then why the controversy when it's about genre (or race, politics or whatever)? This is just a proposition to try to bring more players into the game :)

</comment><comment><AUTHOR> We're hoping that it gives more women the gumption to apply. It's Susan Mernit's idea, and a good one.

</comment><comment><USER18> Is it ever okay to suggest that a demographic balance is just fine?

There is a lack of european-descent long-distance runners in the top tiers. Not too many woman play football. Very few men do much knitting. Do we need outreach and mentoring to change make sure that all groups are a mirror of the world's demographic makeup?

Women and men are different, and perhaps the reason that software startups are male-dominated speaks to that difference rather than a social issue. In other words, perhaps our society is that way because of how we are rather than how we are being driven by our society.

All that being said, I met Christine at Demo Day was was very impressed-- if she's offering to mentor you, you should take her up on it. If you couldn't/wouldn't have the guts to dive in and kick ass without this mentorship/support group, I'd suggest that you probably aren't temperamentally suited to be an entrepreneur.

<comment><USER7> So white males are the most affluent, successful class because of their geneitics? ROFL.

<comment><USER18> Feel free to read up on what a Straw Man Argument is at your leisure:

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

</comment></comment></comment><comment><USER11> For all the gents out there, please stop griping. We need more women in startups (seriously, have you been to the meat market parties after tech events?!).

Moreover, it'll give lonely male hackers more choice beyond the no talent Julia whatsherface-cant-get-back-my-15minoflife-after-reading-her-lameness-in- Wired, the designer and "community" chicks, the high-powered VC women, and the one or two technical female founders (re Leah Culver).

I've met some really talented technical women out there (see the women of Meebo) and I've learned a lot from just talking to them and giving them the leg up of YC, LB, or TS would be a good move.

<comment><USER19> _We need more women in startups (seriously, have you been to the meat market parties after tech events?!) ... Moreover, it'll give lonely male hackers more choice_

Although you probably didn't mean it, this attitude is most definitely Part Of The Problem. It's a pain because you're right - in an ideal, evenly-divided environment, there would be a lot of within-group dating, and everyone would be fine with that.

The problem is that, as long as there's a significant imbalance, the constant romantic interest is going to be seriously offputting for the few women in the group.

The men don't even need to be malicious or socially maladroit (although, let's face it, as a group hackers tend to lack social skills, which makes things much worse). What would be a perfectly reasonable level of possible romantic interest _from each individual person_ rapidly becomes intolerable if it's all concentrated on the lone female in a big group of males. Which is why you hear so many female geeks screaming "Stop trying to date me, damn it, and look at my code!"

<comment><USER20> Just to add, the guys have it far worse in this situation.

<comment><USER19> _Just to add, the guys have it far worse in this situation._

-Clonk.-

Yes, the guys have it worse _if you view it primarily as a dating situation_. But _viewing it primarily as a dating situation_ is a large part of what makes it so uncomfortable for the women in the first place.

Consider this very crude quantitative model: There is a group of 10 (straight) male hackers who spend workdays together. They would prefer to spend 95% of their day working, and 5% flirting. So they spend 5% of their time frustrated, and 95% satisfied.

A female hacker joins the group. She's no celibate saint - she, too, would like to spend 5% of her time flirting and 95% working. But, because she's the only woman around, 50% of her time is occupied by her coworkers trying to flirt with her. So, despite a much better position _in the dating situation_ , she spends 45% of her time being frustrated by the constant romantic attention when she'd far rather be working.

Do you see how we could end up with a situation in which "normal" behaviour, or "just treating someone like you would anyone else", can make someone feel very uncomfortable indeed?

It's certainly much more serious than the minor inconvenience of being unable to meet potential romantic partners at work.

<comment><USER20> Wow, interesting. The only shortcoming is that you made this all up.

People in PLENTY of more evenly paired occupations flirt all day long. If flirting is something a woman hates then go right ahead into programming! You can easily avoid human interaction almost entirely.

</comment></comment></comment></comment></comment><comment><USER21> As a female/startup co-founder, I find it rather unfortunate that Christine chose to close with:

 _Let's work constructively to get more bright young women to apply._

Why young? Are women over 30 over-represented among start-up founders? Does she feel that we are ticking time bombs waiting to run off to have babies? Is she simply uncomfortable mentoring someone slightly older? What is it?

I don't question the intentions. But I do question the _quality_ of a mentoring group where the mentors themselves carry outdated self-defeating stereotypes. Reminds me of an otherwise intelligent Indian friend of mine who is completely hung up about having darker skin.

<comment><USER22> My sense is that most of the YC applicants are not just male but under 30. Is this incorrect?

I am one of the mentors in the group and participated in TechStars at the grand old age of 38 and have two young children, and I can say that our group would be happy to work with applicants of any age. I don't believe that Christine's comment is meant to indicate our support of women within a particular age range (or whether they have or plan to have children) -- it's a reference to what we believe the median age of YC applicants are.

Your comment does make me wonder, however: what is that number? Does anyone know?

<comment><AUTHOR> Lisa is correct - the comment was pragmatic, not didactic. I don't know the actual median age of the YC applicant pool, but in my own anecdotal and unscientific experience (e.g., who have I met in person at events, or heard a pitch from) the median YC participant is around 23, and has yet to develop the familiarity with pitching that comes from years in the industry. Also, if program awareness comes from social networking or from university outreach, I'd expect a dominant concentration of 20-somethings in the pool.

</comment></comment></comment><comment><USER23> Surely this could have been worded to come accross as slightly less offensive:

"Y Combinator Mentoring from prominent businesswomen".

<comment><USER24> And less accurate, yes.

Considered asking yourself why something being for women is offensive?

<comment><USER23> Sure, for the same reason if something is for whites only it's offensive, or for men only.

It's pointless anyway... Why aren't there more white basketball players? Racism? Probably more likely the same reason there aren't more women founders.

You have to admit a special school only for white basketball players would be pretty offensive. no?

<comment><USER24> No no no; I said _ask yourself._ Don't just repeat what you already know; think a little longer and look a little deeper into where the offense, the _feeling of offense in you,_ comes from.

<comment><USER23> heh I don't take life seriously enough to get offended.

I'm just looking for a bit of consistency here though. Either every instance of racism/sexism is offensive, or they are all fine.

</comment></comment></comment></comment></comment><comment><USER25> shouldn't the mentoring be for your start-up in general, and not just the YC app?</comment>


Android Hack Games and Apps - <AUTHOR> https://nepmod.com <comment><AUTHOR> free download latest games and android apps</comment>


Shortest way to reverse a string in programming languages - <AUTHOR>

My vote goes to Python: [::-1]<p>Can your's do better? Better here is "shorter" <comment><USER2> As usual, APL wins: ⌽'string' . In J that's |.'string' .

See [http://rosettacode.org/wiki/Reverse_a_string](http://rosettacode.org/wiki/Reverse_a_string) for plenty of other examples.

<comment><AUTHOR> Interesting, how would one go about finding ⌽ on a keyboard.

<comment><USER3> In the usual way, of course.

</comment></comment></comment><comment><USER4> if length of the string is 1, this may shorten some answers, no?

<comment><AUTHOR> Well, in Python the reversing is as short as a print</comment></comment>


BTW, Apple's stock is crashing - <AUTHOR> http://www.businessinsider.com/apples-stock-is-crashing-2012-10

<comment><USER2> Nice bit of chart manipulation by Blodget, but if you look at the 12 month view, you see that it's not an abnormal hump:

<http://ycharts.com/companies/AAPL>

If you follow Apple at all, you'd also know that Apple's P/E ratio has been extremely low for the entirety of the iPhone's history.

In this chart, the historical P/E is the blue line:

[http://www.asymco.com/wp-content/uploads/2012/10/Screen- Shot...](http://www.asymco.com/wp-content/uploads/2012/10/Screen- Shot-2012-10-12-at-10-12-2.08.05-PM.png)

<comment><USER2> Haha ... he changed the headline to "Why Apple's Stock is Dropping" and rewrote copy to soften his claims but the CMS retained the earlier "crashing" reference in the URL slug and title element.

</comment></comment><comment><USER3> I'm sure if they release a 7" iPad we'll see a bump. I'm totally confused that the author totally ignored the upcoming event on October 23 where it will be announced: [http://www.reuters.com/article/2012/10/12/us-apple- miniipad-...](http://www.reuters.com/article/2012/10/12/us-apple-miniipad- event-idUSBRE89B0S020121012)</comment>


"Getting Started" Guide to Cybernetics - <AUTHOR> http://www.pangaro.com/definition-cybernetics.html <comment><USER2> I was ready to jump in here with a dismissive comment, but then he mentioned Wiener close to the top, and I was disarmed. It's a pretty good collection of links. Unfortunately, the prefix "cyber" has rather jumped the shark, but the whole idea of biological and even social systems as exhibiting the same communication and control mechanisms we're familiar with from engineering is worth contemplating.

</comment><comment><USER3> See also W. Ross Ashby (1956): "An Introduction to Cybernetics"

(PDF available from [http://pespmc1.vub.ac.be/ASHBBOOK.html](http://pespmc1.vub.ac.be/ASHBBOOK.html))

</comment><comment><USER4> This is great. I haven't delved into AI much yet, but what I've seen through 10 years as a language-learning specialist is that information and computational approaches to learning fail miserably in ESL, as does most schooling.

The brain is wetware. It's organic and grows into abilities through practice and use with proper modelling from an expert.

I get an itch to correct when I read AI discussions, as they usually assume information theory as fundamental to intelligence and mind.

Go try to learn something really hard, and pay attention to your internal process as youre doing it, then go and teach someone else that same skill and pay close attention to their process, while comparing it to what yoh went through to learn the skill you are now teaching. Then you'll have the substance necessary to theorize about the learning mind. Then again, me telling people who only deal in abstractions to go out and learn through concrete experiences is probably barking up the wrong tree.

</comment><comment><USER5> Certainly interesting, but (just me?) reads like some kind of optimised/feedback-tested meme-vehicle for the authors' ideas — repetition, restatement, phrasing means I feel like I've been "actively" programmed (rather than my normal experience of contemplation, integration, learning, etc.). Not necessarily a bad thing, mind.

</comment><comment><USER6> My Bachelor Thesis on applying Sociocybernetics using Web-Technology. I should've really read this "Getting Started Guide" before :)

It's really a very interesting field and the most modern term I know describing it maybe a conflation of Mathematical Sociology & Psychology.</comment>


We Could Save 1,000 Lives per Year If Just 10 Percent of Cars Were Self-Driving - <AUTHOR> http://www.huffingtonpost.com/2013/10/23/self-driving-cars-study_n_4144183.html

<comment><USER2> It's even more important on a global scale - many countries have poor vehicle, road and law enforcement standards. Here in Costa Rica, far from the worst, it's normal to wait for the _last_ person to run red lights and attitudes on drink driving, cell phone usage, speeding, seatbelts etc are decades behind western countries. Automated cars immediately catch up to modern safety standards.</comment>


Patents show Google Fi was envisioned before the iPhone was released - <AUTHOR> http://www.networkworld.com/article/2914833/opensource-subnet/patents-show-google-fi-was-envisioned-before-the-iphone-was-released.html?nsdr=true

<comment><AUTHOR> Contrary to reports, Google didn't become a mobile carrier with the introduction of Google Fi. Google Fi was launched to prove that a network-of- networks serves smartphone users better than a single mobile carrier's network. Patents related to Google Fi, filed in early 2007, explain Google's vision – smartphones negotiate for and connect to the fastest network available. The patent and Google Fi share a common notion that the smartphone should connect to the fastest network available, not a single carrier's network that may not provide the best performance. It breaks the exclusive relationship between a smartphone and a single carrier.</comment>


Ask HN: Webapp workflow - <AUTHOR>

I have had a good idea in mind for the past year and I think it's time I move my ass and do something about it. A friend suggested me to start formalizing every aspect of the the webapp, creating a very detailed graphical/worded description of what the site should be, page by page. I think it's a good suggestion (I know, I am _so_ naive).<p>What tool do you recommend to do that? Any webservice or software (preferably for linux)? <comment><USER2> I do agree you should start to get everything written down. Open up a Google doc, email, pen&paper, whatever- and start writing.

Stay away from making everything detailed though. Your ideas will change, you do not want to invest all this time in "formalizing every aspect of the webapp". There is no way you can even begin to foresee every single aspect.

Instead, invest that time creating/building the webapp. Build the home page, make some images, start writing code. Reference what you've written down and be prepared to change/edit/redo your notes.

Once you get some working examples/demos/mockups then start to use more traditional formalizing software. A ticket system for features/bugs, or maybe a spiffy project tool for notes/todo. Whatever floats your boat.

<comment><USER2> oh, and btw, the tools I use (or have used and enjoyed) to stay organized:

git/github, lighthouseapp, pivotal tracker, batchbook.

</comment></comment><comment><USER3> If you are on a Mac there is no substitute for Omnigraffle. in the PC world a lot of UX designers use Visio I am not a big fan of it, but it does get the job done. There are a good deal of online tools as well.

</comment><comment><USER4> balsamiq mockups maybe? then there is always pen and paper.

<comment><AUTHOR> I am not a big fan of pen and paper.

<comment><USER5> I do most of my mockups on pen and paper. I can draw quicker than I can use a mouse. I can scratch things out, jot down notes anywhere around a mocked up screen. And information transfer is faster (for me). To each their own, though. That method works for me, but I know folks who just mock it all up in Photoshop.</comment></comment></comment>