Google Is Uncovering Hundreds of Race Conditions Within the Linux Kernel - <AUTHOR> https://www.phoronix.com/scan.php?page=news_item&px=Google-KCSAN-Sanitizer <comment><USER2> Yay Konstantin Serebriany and his team! The dude behind these sanitizers is quite brilliant. The Universe should know its heroes.

</comment><comment><USER3> Race conditions create meta-stable states. Fixing them always increases predictability of the code. It can also result in fixing formerly "cosmic ray" type bugs that occurred once or twice and were never seen again.

This is because one of the sources of very hard to reproduce bugs is a set of race conditions aligning just right.

<comment><USER4> Meta-stability [0] is a hardware issue, surely? Race conditions can create some crazy effects (BTDT) but at least they are fixable in software.

[0] [https://en.wikipedia.org/wiki/Metastability_%28electronics%2...](https://en.wikipedia.org/wiki/Metastability_%28electronics%29)

<comment><USER3> With all due respect to Wikipedia, the term meta-stability is applicable to any system issue where the behavior of the system is undefined when one or more of its inputs can be undefined.

The inputs to "software" finite state machines are typically inputs in the form of variables. Those inputs define which branches within the routine will be taken during processing.

You can model a subroutine as an FSM for which its "outputs" are its state, the FSM takes inputs, processes them, and sets new outputs or a new state.

We use fuzzing to expose the state machine to all possible combinations of inputs and this identifies all possible exit states from all possible input states, _but assumes the input states are stable._

Multi-processing introduces the possibility of race conditions. In a race condition, one input state is present when the state machine is entered, but _during execution_ the race completes which changes the input value.

We use 'stable' to define an input that has the same value across the entire duration of the state machine's state execution.

During a race condition, an input may change value one or more times across the time interval of the state machine's state execution. Thus at any _instant_ in time the input has a singular value, during an _interval_ in time that value may have many different values. These inputs are meta-stable.

And yes, you can fix meta-stability in software with things like mutexes and execution exclusion. Just like you can fix meta-stability bugs in hardware signals by add a clock synchronization domain that spans the widest period of meta-stability possible for a signal.

One of the things that makes race condition bugs so hard to debug is that your typical tracing facility _assumes_ that the inputs passed to a function are stable and don't change. Thus you'll see a trace record of a function call, with its parameters, and walk through the code and say "Wait, with those parameters this code could never do what it just did." Or conversely, that variables that have shared write status across execution domains will be the same throughout a function.

Does that make is clearer what I was talking about? Race conditions suck :-)

<comment><USER5> I think Wikipedia would benefit from your contribution!

</comment></comment></comment></comment><comment><USER6> This is why open source for lower level systems is amazing!! That is why graphic card drivers should be open sourced

<comment><USER7> They are for the 2 of the biggest GPU vendors.

<comment><USER8> Is nVidia no longer one of the two biggest GPU vendors?

<comment><USER9> I don't think that's what meant. "2 of the biggest GPU vendors" !== "the 2 biggest GPU vendors".

<comment><USER10> Nice distinction! Thank you.

</comment></comment></comment></comment></comment><comment><USER11> I'm not surprised that there are vast numbers of latent low-probability race conditions in the linux kernel or any major software project. Having seen the testing process in both hardware and software projects, the two are not even comparable. The testing process in most software projects is dominated by fully deterministic unit tests that are very simple in nature, and make large numbers of assumptions about the behaviors and interactions with other components. Low-probability race conditions between different components is exactly the outcome I would expect from this testing process.

[https://software.rajivprab.com/2019/04/28/rethinking- softwar...](https://software.rajivprab.com/2019/04/28/rethinking-software- testing-perspectives-from-the-world-of-hardware/)

</comment><comment><USER12> Maybe this will do a better job of identifying the race condition that made the AMD card in my laptop unusable. About 5 years ago a bunch of changes evinced a change in behavior when trying to switch hybrid graphics controllers. I worked in a bug report for a long time after I and a few others fingered it as a race condition (it failed maybe 1/10 switches). A cluster of other changes meant it was difficult to bisect (it broke one way at a few points and broke differently at other points, but in a way that made it difficult to identify whether the bug we were triageing existed at that point.)

</comment><comment><USER13> Solid contribution. Will hopefully improve stability even further.

Does this automatically generate fixes too, or does someone need to investigate time for each by hand?

<comment><USER14> It needs investigation by hand. I don't see how that can be automated.

<comment><USER13> I would have thought so too, but the github says:

>kcsan-with-fixes: Contains KCSAN with various bugfixes for races detected; the commit messages for those bugfixes include the KCSAN report as-is.

Which to me seems to imply some sort of automatic mitigation. Maybe I'm reading too much into it

<comment><USER14> Nope, that's just the repository with manual fixes.

</comment></comment></comment></comment><comment><USER15> For those interested, here are some of the bugs which their tool has found: [https://github.com/google/ktsan/wiki/KTSAN-Found- Bugs](https://github.com/google/ktsan/wiki/KTSAN-Found-Bugs)

<comment><USER14> No, that's KTSAN, which is different from KCSAN, although they do find similar bugs.

</comment></comment><comment><USER16> Are there any HN readers here that use MINIX or possibly another OS that does not have the Linux kernel? I'm not about to argue pros/cons but would like to see peoples' use cases; my own use cases have not necessitated using anything more complicated than Ubuntu, and quite happily so.

Still, I think from my interest point of view it would be interesting to not only understand the Linux kernel better, but also other OS design paradigms.

<comment><USER17> I swear by OpenBSD. I use it on my home server. I use it to write C code (their C standard library has a few very nice things, such as arc4random, strl{cat,cpy}, explicit_bzero, timingsafe_memcmp, libtls, and other things that I run into often enough that I don't want to think about them before I start adding portability stuff).

Of course, it's not much of an option for anything I require proprietary software.

<comment><USER18> Openbsd has opened my eyes to how deficient documentation is in Linux.

<comment><USER16> Meaning it has good documentation?

</comment></comment></comment></comment><comment><USER19> I'd be shocked if something written in C that's as complex as the Linux kernel didn't have race conditions.

<comment><USER20> The language a program is written in has no bearing on whether or not the program is susceptible to race conditions. You can have data races in Python, Javascript and Rust as easily as you can in C.

<comment><USER21> You cannot have data races in safe Rust.

<comment><USER20> Race conditions aren't necessarily data races. This article and the parent comment was about race conditions in general.

<comment><USER21> The parent comment literally says

> You can have data races in Python, Javascript and Rust as easily as you can > in C.

Don't use "race conditions" and "data races" interchangeably if you understand the difference...

</comment></comment></comment></comment></comment><comment><USER22> I wonder if any software rely on these bugs

EDIT: windows famously had bugs and had to add special code to preserve the buggy behaviour to keep certain applications that relied on them working [https://www.joelonsoftware.com/2004/06/13/how-microsoft- lost...](https://www.joelonsoftware.com/2004/06/13/how-microsoft-lost-the-api- war/)

<comment><USER23> You assume every race is a bug.

Part of the job of a kernel is to resolve races. Requests come to it from multiple threads and processes in a parallel fashion. Sometimes your timing will be one way and get you one result, sometimes it will go another way. That's OK. It's the nature of the beast.

<comment><USER24> This is a misunderstanding. A situation where "either process A or process B gets a resource first" is not a race condition. A situation where both of them get it at the same time is.

<comment><USER23> Ok, I was being imprecise.

Even if there is parallelism and multi-core, it is still a question of ordering, and from there we can use language like who gets there "first" [indeed "race" suggests this]. Or, did this read of a machine word see somebody else's write, etc.

</comment></comment></comment></comment><comment><USER25> I am wondering if machine learning can use used to solve these problems. I have heard that Google uses a machine learning to auto find the bugs and raise merge request against them. Someone from Google can confirm.

<comment><USER26> You don't need machine learning, you need a better architecture. Micro kernels can be made in such a way that they are guaranteed race condition free.

<comment><USER27> If you're willing to throw a large part of the existing code away to move to a microkernel architecture, you might as well rewrite it in a language that doesn't have race conditions by design.

<comment><USER26> Race conditions can be constructed in almost any language. It is more of a systemic thing than a language artifact though some languages are more race condition prone than others.

You can even have race conditions in hardware. Multi-threading or distributed software are excellent recipes for the introduction of race conditions, sometimes so subtle that the code looks good and the only proof that there is something bad going on is the once-in-a-fortnight system lockup.

<comment><USER28> I believe the undocumented instructions in the 6502 was caused by race conditions in the CPU. Some of these instructions are actually usable while others give random results.

<comment><USER26> I wrote a 6502 assembler and had a really hard time not giving $88 it's own mnemonic in the main table rather than to load it at the start of every file from an include. It was just too useful :)

<comment><USER28> Why wouldn't you? These opcodes seems to be used by most people these days, so there seems to be no reason not to treat them just like any other opcode?

</comment></comment></comment></comment></comment></comment></comment><comment><USER27> I really like the development of all the sanitizers we got in the last decade or so. I only wish that more could be done at compile time as opposed to these runtime checks.

<comment><USER29> Is there even an approach to doing that? Intuition tells me that's a mathematically intractable problem.

<comment><USER30> Rust prevents data races at compile time. Note that data races, while a common form of race condition, is not the only kind of race condition, and Rust won't prevent the others.

</comment></comment></comment><comment><USER23> Doesn't the kernel make use of some lock free data structures? Like RCU? I would be surprised if there are no races there, but the point is that they are harmless and handled.

<comment><USER14> Lock free data structures still use atomics, which this tool understands. All bugs found really are data races.

<comment><USER31> The tool doesn't understand all lockless techniques, so there will be some false positives. For example, there are some cases where people have used the low-level primitives barrier() and cmpxchg(), which this tool (not possessing human-level intelligence) can analyze.

Also, not all data races can be exploited into serious bugs (in some cases, some stats might just be incorrect, for example).

That doesn't make the tool useless, of course! Just that one should take the numbers with a grain of salt.

<comment><USER14> I don't see how any lockless techniques can cause false positives on this tool, since this tool ignores them. The tool instruments plain memory accesses. For each access, with some probability, 1. setup watchpoint, delay, and then delete watchpoint, or, 2. check watchpoint. If there is a matching watchpoint, two threads made "simultaneous" accesses, hence data race.

</comment></comment></comment></comment><comment><USER32> 1) data races are different from race conditions. and data races are what this sanitizer detects.

2) data races are undefined behavior in C, but:

3) they don't necessarily translate to bugs in practice. for example:

[https://godbolt.org/z/Z9RvpB](https://godbolt.org/z/Z9RvpB)

this is a data race, but in practice everything works as expected.

in cases like this, fixing the data race adds overhead without giving us much benefit.

</comment><comment><USER33> Any chance of this sanitizer being generalize for use outside of the kernel? Someday could the we use this like UBSan?

<comment><USER34> I'm not sure about other platforms, but in Xcode, there is the ThreadSanitizer option in the Scheme diagnostics. Sounds similar to the Kernel Thread Sanitizer mentioned in the article. I assume it's part of clang, but am not positive of the under-the-hood implementation. If so, it may be available on other platforms. (I mention it because Xcode also has options to use Address Sanitizer and Undefined Behavior Sanitizer, so perhaps it's the same thing as the Kernel Thread Sanitizer but for user-space stuff?)

<comment><USER35> Could you please stop creating accounts for every few comments you post? We ban accounts that do that. This is in the site guidelines: [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html).

HN is a community. Users needn't use their real name, but do need some identity for others to relate to. Otherwise we may as well have no usernames and no community, and that would be a different kind of forum. [https://hn.algolia.com/?query=by:dang%20community%20identity...](https://hn.algolia.com/?query=by:dang%20community%20identity&sort=byDate&dateRange=all&type=comment&storyText=false&prefix&page=0)

</comment></comment></comment><comment><USER36> Reading the article, it seems like these are from an automated tool. I wonder how many of these are actual race conditions, vs false positives because of logic that the tooling can't decipher.

</comment><comment><USER37> This is a non-issue and really a false narrative blown up into something that isn't really an issue. Any concern of society can be fed into an AI and out comes a desired result. It's a computer program.

</comment><comment><USER38> Boy, there are a lot of negative comments here. Google is contributing to the Linux kernel and released their tool as open source. Why all the hate?

Anyway, back on topic: would fixing these race conditions be only beneficial to stability, or would this also improve performance/responsiveness?

<comment><USER39> Fixing races generally means stricter synchronization, which makes for slower code. The world is complex and there are always exceptions, but I'd expect performance to decrease.

Edit: it goes without saying, but it's much better to fix the race conditions, regardless of what it means for performance. Some people seem to think I'm advocating for not fixing them.

<comment><USER40> "brakes make my car slower, so I'd expect my average velocity to decrease if you fixed them"

<comment><USER41> _" brakes make my car slower, so I'd expect my average velocity to decrease if you fixed them"_

Just to be pedantic... in some contexts better brakes actually allow you to go faster. Consider racing on an oval track... a car with better braking ability can maintain speed longer as it approaches a corner, then scrub off speed more quickly to navigate the corner. A car with inferior brakes has to start slowing down sooner or risk crashing by taking the corner too fast. So better brakes can lead directly to faster lap times.

<comment><USER42> Indeed, disk brakes were first used on race tracks before being available on street cars.

<comment><USER43> And some people now argue that disc brakes on road bicycles are more dangerous because you learn that you can brake later and more suddenly. I.e You will more frequently approach the limit of friction between the (very narrow) tyre and the road.

<comment><USER41> I had not heard that one. I always thought the main argument against disc brakes on road bikes was they they aren't good for long descents where you're riding the brake for long periods of time... due to heat fade or whatever.

Of course both things could be true...

<comment><USER44> >I always thought the main argument against disc brakes on road bikes was they they aren't good for long descents where you're riding the brake for long periods of time... due to heat fade or whatever.

No, you have it the other way around. Rubber brake pads on wheel rims fade with heat; disc brakes are able to dissipate far more heat, and are basically essential for long descents.

The _only_ valid argument against disc brakes on bikes is that they weigh a little more (maybe 1 pound). I suppose you could also argue that brake fluid is more trouble to deal with than a cable, and certainly not as easy to jerry- rig, but hundreds of millions of cars use hydraulic brakes without any trouble these days, and I wouldn't want to have jerry-rigged brakes anyway.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER45> We're getting closer to "How Google got me fired for the 532 bugs it found in my code..."

EDIT: It was meant as a joke as to how media manages to make something that's good into a problem.

<comment><USER46> In any decent organisation, a bug that goes out to live isn't the developer who wrote the codes fault.

It's a team fault, meant that maybe the PO didnt spec correctly, then the developer implemented something wrong, then this was missed in the code review, then missed in team testing, then missed in testing before going live. Missed in the PO sign off before live...

If anything I would hope that stuff like this by Google helps to encourage orgs to build better processes. If you succeed as a team, you fail as a team. No scapegoats!

<comment><USER47> > In any decent organisation

Yes, and in my physics classes I learned a lot about spherical, frictionless cows in a perfect vacuum.

In the real world, the shape of cows is not a sphere, nor even a closed-form equation. And real organization care about blame, and as the saying goes, shit rolls downhill.

<comment><USER48> It's your responsibility to work on a team that handles bugs like adult engineers rather than school children or politicians. Engineers have a duty to be spokespersons for rational and humane engineering processes.

I've shipped more than my share of bugs live. I've never felt like I didn't have a team behind me. Obviously I shipped a lot of things that work, as well.

Working someplace humane and rational doesn't just happen, it requires work.

I expect anyone with "Senior" in their job title to do that work, both in terms of setting team culture and establishing post-mortem policies with management.

</comment></comment></comment></comment><comment><USER49> Linux will be the mainstream kernel for anything eventually. And companies will bundle it with their proprietary solutions.

</comment><comment><USER50> Not to mention there are +9K open source contributors on KCSAN project.

<comment><USER14> Nope, that's because it is developed as a fork of Linux kernel. Those +9K people are Linux kernel contributors.

</comment></comment><comment><USER51> I think would be more helpfull if Google invest into model and describe Linux Kernel with TLA+. I googled ad found only one person trying doing it ([https://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/ker...](https://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/kernel- tla.git/))

</comment><comment><USER37> Seriously...?

"Google is uncovering millions of gender preference in literature..." /sarcasm

<comment><USER35> " _Eschew flamebait. Don 't introduce flamewar topics unless you have something genuinely new to say. Avoid unrelated controversies and generic tangents._"

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

</comment></comment><comment><USER52> I can't help but feel most of these bugs and vulnerabilities in the Linux kernel could be avoided with a more robust foundation than C. It's nice to see that Rust is starting to be tolerated in the Linux kernel for modules.

It would be nice to see an effort to migrate some of the kernel core, but I can't see Rust gaining widespread acceptance in the kernel development community any time soon.

<comment><USER53> > It would be nice to see an effort to migrate some of the kernel core, but I > can't see Rust gaining widespread acceptance in the kernel development > community any time soon.

I don't even think that a migration effort from C -> Rust for the Linux Kernel is even feasible or even worth it, given the scale of the project. At this point, you might as well start from scratch.

Google is already experimenting with Rust for OS development with their new Fuchsia operating system [0], which has some drivers written in Rust with a capability based security model.

[0] [https://fuchsia.dev](https://fuchsia.dev)

<comment><USER52> Developing a new kernel or operating system in Rust is a good idea, but a massive undertaking, and it's hard to see it gaining adoption quickly. I think a more credible way to benefit from Rust in the short term is to rewrite small but critical components of existing kernels, or adopt Rust components from experimental Rust OS projects.

Similarly, Firefox's Project Quantum seeks to bring Rust to Firefox from the more experimental Servo project.

</comment></comment></comment><comment><USER54> Unless these linting tools go out there with source, I'm going to be skeptical of Google's magic code checking and bug finding process.

And IMHO, such large number of patches / fixes on Linux should always use a decent open audit process.

<comment><USER38> > Unless these linting tools go out there with source

The tool _is_ released as open source.

> such large number of patches / fixes on Linux should always use a decent > open audit process

All contributions to the Linux kernel are audited by the kernel development team. Look at kernel.org, you'll see that contributions are always signed off by at least one other kernel dev, and often also Linus himself.

</comment></comment><comment><USER55> Google is a corporation. The linux kernel is [by implication] developed and maintained by Linus. Please don't do this. If there are race conditions, fix them following the process of kernel.org.

<comment><USER56> Something like 80+% of commits to the kernel are by people paid to work on Linux (Google employees among them). This is just part of the Linux development model and has been for a long time.

<comment> non-entity Off topic, but what companies, besides Redhat or Google, will pay you to work on Linux. I imagine that would be an enjoyable job.</comment></comment></comment>


TechStars Raises Fresh $24 M, Offers New Startups $100K Each - <AUTHOR> http://www.betabeat.com/2011/09/21/techstars-raises-fresh-24-m-offers-new-startups-100k-each/

<comment><USER2> The reason the Start Fund works is that the terms are so good--uncapped and no discount--that if you're planning to raise money at all, you should take it, and so the investors get a real index, including the potential home runs.

These terms are significantly below the mean for the last YC batch, and I'd bet that some of the best startups don't take the deal. It's a decidedly less clear strategy to invest in only the not-so-good startups in a batch.

</comment><comment><USER3> _"Y Combinator started the year before us, and it's the same genre, but under the microscope, we could not be more different," said Mr. Cohen. "The fundamental difference between us and the other accelerator programs is they have a black box, while we have open sourced our model."_

TechStars and YC are certainly different but having read:

What Happens At Y Combinator: <http://ycombinator.com/atyc.html>

and the TechStars equivalent:

Do More Faster: <http://www.domorefasterbook.com/>

YC doesn't seem like any more of a black box than they are.

<comment><USER4> Cohen is referring to the fact that TechStars is essentially a franchise and YC is not.

<comment><USER5> And that the first month of TechStars is a lot of back-and-forth, matching startups with mentors and mentors with startups. Where all three months of YC is build, build, build. (And getting ready to demo.) To stretch an academic metaphor, TechStars reminds me of a residential college (where you do everything with your cohort) and YC reminds me of the traditional Oxbridge model (some lectures, lots of independent study and regular one-on-one sessions).

Neither is particularly "right" or "wrong", they're just different models.

</comment></comment></comment><comment><USER6> This is excellent news, and a good alternative to YC.

Because of the Yuri/Conway offer, YC had been a substantially more financially viable program for a lot of startups that need capital to get moving- This helps level the playing field.

While I love YC, competition in this space is good for everyone.

</comment><comment><USER7> It feels like the amount given to incubated startups is creeping up, both in YC and now in TechStars, as the programs have gotten more popular.

Do people no longer feel that "the amount a graduate student makes for three months" is enough to actually start a company? Or is this more reflective of the market value rising for the amount of equity typically taken by a top incubator? If it's the latter, wouldn't there be a new opportunity for an incubator to give grad student wages to willing companies for a much smaller equity stake?

<comment><USER8> So you know how startups are a star search with returns dominated by whether you invest in Google/FB/etc? This is apparently pretty true for YC as well: the AirbnBoxen/Dropboxes will swamp most everything. Given that everyone is trying to invest in that one best startup this year, the prior valuations of "we guess the best starup will be in this pool" are pulling away from the generic "two guys with a gleam in their eye" ones, as a consequence of market participants reacting to YC et al being ridiculously better at picking winners than previous screening mechanisms.

Yay capitalism, by the way.

</comment></comment><comment><USER9> Someone should do a side-by-side comparison of the batting averages of all these incubator programs and their respective terms.

<comment><USER10> Here is the TechStars data. Anyone know if YC has published their results anywhere?

<http://www.techstars.com/companies/results/>

<comment><USER11> I'm intrigued by the fact that the piece highlighted by techstars is simply the number of companies acquired (along with founded, active, and failed). That shouldn't be the metric of success for a company.

I founded a startup to build a big scaleable business. If I end up selling, then it will only be a success if the acquiring team, the impact to our vision, and the economics are all excellent.

If I wanted to compare the incubators, I'd want to see relative user bases, revenue generated, valuations, etc. The proof is in the pudding, and that's the pudding.

<comment><USER5> I believe their results page is largely automated based off of Crunchbase data. From what I understand it's not necessarily their metrics, but just the ones that people ask about and are fairly easy to access. (Particularly since what you're asking for is sensitive/confidential info!)

<comment><USER12> Yup, you're right: the data is automated by CrunchBase. It should also be noted that fundings, exits, etc are under-reported, as CrunchBase is generally a little bit behind for two reasons: 1) Not everyone keeps their companies up to date 2) Some people don't want to make much noise with their financial events

</comment></comment></comment></comment></comment><comment><USER13> The names on the funding aren't quite in the Ron Conway, Yuri Milner realm - access to that network is one of the most important pieces of Startfund for follow-on, BD, etc.

That said, it's still awesome to see expansion in funds available for early- stage companies.

</comment><comment><USER14> It's great to see a lot of incubators really coming to life recently. What's even better is that entrepreneurs have _options_. If you agree with one ethos, you can apply there and if not, look for someone else. My only hope, though, is that this becomes a staple in business and not just a fad. I also hope that the quality of these incubators remains extremely high and that they continue to select companies with a fine tooth comb. Congrats to TechStars for moving forward.

</comment><comment><USER15> Its great for startup companies, now they just have to worry about executing in the first year. I do think they will miss a lot of the struggle and hardwork in fundraising, but as pg says thats just a time sink. One jab: Whats better than 100K...150K

</comment><comment><USER16> Great news for more quality startups to be founded.

</comment><comment><AUTHOR> How are these terms different than what goes on with YC and StartFund? Better or worse?

<comment><USER17> The $100k is a $3m cap with a 20% discount [0]

Assuming the companies seed round prices above $3m, it's an additional 4% dilution to the company (bringing total initial dilution to about 9%)

[0] [http://www.readwriteweb.com/archives/techstars_nearly_matche...](http://www.readwriteweb.com/archives/techstars_nearly_matches_ycombinators_new_money_de.php)

<comment><USER18> Seems to introduce some signaling issues...

The stronger the company, the less likely they are to accept the note at a 3mm cap.

<comment><USER13> Agreed - seems like the terms could potentially defer the top-quality companies (although most would be happy to have the $ in their pockets), while the start-fund structure makes it attractive to any stage.

I'd hope the money is elective though, as that would certainly solve the problem.

</comment></comment></comment></comment><comment><USER19> Regarding transparency: TechStars New York is currently on Bloomberg as a series, albeit quite some time after the fact (e.g., Toviefor folded just weeks after TechStars ended & is one of the featured startups).

HN link (submitted by me): <http://news.ycombinator.com/item?id=3021939> video: <http://www.bloomberg.com/tv/shows/techstars/>

</comment><comment><USER20> The discovery of these incubator models is one of the most interesting things happening in the startup community - in addition to giving aspiring entrepreneurs an opportunity to build great things, they are creating an even more tightly knit startup community. They are making it easier for new people to get involved in this network/community, who in turn give back because they have such a great experience.</comment>


Bringing Video to the Next Wave of Connected Devices - <AUTHOR> http://blogs.skype.com/developer/2011/06/bringing_video_to_the_next_wav.html <comment><USER2> tl;dr Skype finally (they took down all documentation for over a year) releases their SDK/APIs with runtimes for various platforms that allow pretty much anything that Skype can do, in particular: video.

To get into the program, developers need to pay a one-time $10 fee.

I have a question regarding the runtimes ([https://developer.skype.com/skypekit/development- guide/skype...](https://developer.skype.com/skypekit/development-guide/skype- kit-runtime-versions)): does anybody know if that could be used inside an iOS or Android app? Not necessarily approved for the AppStore but for internal development.</comment>


Ask HN: Would you incorporate a technology accelerator into your startup? - <AUTHOR>

I am running a slightly new concept of accelerator where we provide the acceleration on the technology and product development side, instead of networking, funding opportunities, mentoring, etc.<p>If you were on a startup who is in a seed capital stage and you were looking for a CTO, would you feel all right to pay us a monthly fee to become your CTO and do all the things related to IT, software and product development? <comment><USER2> Not sure how this is different than just hiring a freelancer to do the work?</comment>


Web 2.0 experts share startup lessons - <AUTHOR> http://www.linuxworld.com.au/index.php?id=681581068&rid=-50 <comment><USER2> How could they not talk more about the 100 chicken nuggets in one sitting?</comment>


How Silicon Valley Perfected Ice Cream - <AUTHOR> http://www.wired.com/business/2013/06/the-blue-bottle-of-ice-cream/

<comment><USER2> _" Freezing speed is correlated with freezing temperature. So if you can freeze it really, really cold, you can get smaller ice crystals. And if you can freeze really cold, you can freeze really fast. The benefit of that is if you make small enough batches you can freeze to order. Therefore you don't need any of those extra ingredients that make ice cream far from natural."_

You know what else works for that? Fat. It's why iced custard is smoother than philadelphia ice cream. It's also much easier and more manageable than using liquid nitrogen, but, you know...you can't sell regular ice cream to hipsters at a massive markup.

That's it...I'm opening an easy-bake oven bakery in Hayes Valley. After all, cooking with lightbulbs is slower, and therefore, more love goes into each cookie.

<comment><USER3> Your dismissive snark is fail. What makes you think there's no fat in her ice cream?

<comment><USER3> Okay I'll spell it out for the reflexive drive-by downvoters: The ice cream _is_ real ice cream, and crystal size is an orthogonal issue to fat content. I'm not sure what hipsters have to do with it, but I find it a sad reflection on the state of HN that the middle-brow prejudiced dismissal of imagined cultural reasons gets a higher vote than someone pointing out how said dismissal is based on an utter absence of facts.

<comment><USER2> _" The ice cream is real ice cream, and crystal size is an orthogonal issue to fat content."_

I never claimed the ice cream wasn't "real", and crystal size is correlated to fat content: the higher the fat content, the smaller the crystals. Liquid nitrogen is a gimmicky method of accomplishing something that is already done in simpler ways.

<comment><USER3> So given a maximally (because there is obviously a limit before it becomes gross right?) high fat ice cream, you are claiming it won't have smaller ice crystals using liquid nitrogen compared to traditional methods?

</comment></comment></comment></comment></comment><comment><USER4> They might have popularized it or invented the machine, but the technique is at least 20 years old.

1994: [http://www.nhn.ou.edu/~johnson/Education/SeeS_SZ/Chemistry_o...](http://www.nhn.ou.edu/~johnson/Education/SeeS_SZ/Chemistry_of_Cooking/Supplemental/2004_Sciam- KitchenPhysics.pdf)

[http://en.wikipedia.org/wiki/Molecular_gastronomy](http://en.wikipedia.org/wiki/Molecular_gastronomy)

</comment><comment><USER5> The Discovery series about food chemistry had a segment about using liquid nitrogen to make ice cream. I think they concluded that it is the perfect way to make ice cream.

The show had many other very interesting segments (like how to make mashed potato that doesn't turn into glue) with all the chemical backgrounds for great foods. It is fascinating stuff.

</comment><comment><USER6> I don't doubt this is great ice cream, but this is also a superb example of PR at work.

</comment><comment><USER7> I assume the OP has never been to europe.

<comment><USER8> Exactly my thought. On top of my head:

[http://www.berthillon.fr/](http://www.berthillon.fr/) [http://www.grom.it/](http://www.grom.it/)

A matter of taste?

</comment></comment><comment><USER9> Might want to take a look at [http://www.blueskycreamery.com/](http://www.blueskycreamery.com/) where they've been freezing ice cream with liquid nitrogen in large quantities (rather than the tiny spheres of Dippin' Dots) for a long time; the two founders came up with the process when they were Iowa State students back in 1999.

</comment><comment><USER10> Graeter's perfected ice cream decades ago. It's not techy or Silicon Valley or in Wired but it is definitely the best. There is no need to look further. Anyone else claiming ice cream perfection is a charlatan.

</comment><comment><USER11> We did this in highschool. Tasted amazing, the texture was perfect!

<comment><USER12> We did as well. Tasted a bit buttery and I don't think we had enough vanilla extract.

<comment><USER2> The "buttery" nature of it could have been the kind of milk that was used -- one consequence of freezing high-fat milk quickly is that the fat will tend to "crash out" of emulsion (this is a side-effect of the same phenomenon that makes the ice crystals smaller). So you'd want to use a leaner mix.

If your teacher used half-and-half or cream, the resulting ice cream was probably pretty fat-forward on the tongue.

(Aside: I've seen this demo done by a bunch of different people, and I'm always a little disappointed by the level of science involved. Usually, it's little more than _" See? Liquid nitrogen is REALLY COLD"_. That's fine, I guess, but there's much more interesting stuff going on!)

</comment></comment></comment><comment><USER13> I'm not jealous of San Fransisco. We've got Mardi Gras, Jeni's Splend, and Graeters within walking or driving distance. Columbus, OH is where the ice cream is.

</comment><comment><USER14> Dinner (dinnerbyheston.com) has a similar machine. I know it was custom built. I wonder if there is some connection.

<comment><USER15> Heston has been doing nitro ice-cream for at least a decade at this point - it's a fairly common technique in higher-end restaurants.

</comment></comment><comment><USER16> [http://foundation.bz/28/](http://foundation.bz/28/)

</comment><comment><USER17> it's a fun gimmick, but "those extra ingredients that make ice cream far from natural" achieve the same thing at a fraction of the cost and a fraction of the effort.

also: I haven't looked closely at their formulations, but I'm guessing that they are likely guilty of using a few ingredients in their own ice cream that are also far from natural...</comment>


The incredible stock-picking ability of SEC employees - <AUTHOR> http://www.washingtonpost.com/blogs/wonkblog/wp/2014/02/27/the-incredible-stock-picking-ability-of-sec-employees/ <comment><USER2> > Nester explained that before staff can work on an issue that involves a > company, they have to sell any holdings of stock in that firm. As a result, > he said, there shouldn't be any surprise that a sale would precede the > announcement of an enforcement action.

Can I use this fact to detect upcoming potential investigations or enforcement actions which may not be public knowledge, and use that to my advantage?

[Edit:] This also seems to have the unfair effect that SEC employees get an "out" from previous investments in companies that the SEC is about to investigate. Isn't that ultimately another form of trading on insider knowledge, even if it's mandatory?

On the other hand, if SEC employees are not forced to sell, then their holdings may diminish their impartiality. It seems like the only fair and neutral approach is to require SEC employees to hold no individual stocks at all during their employment - or any type of financial instrument issued by organizations they might potentially investigate.

(Is this perhaps what the SEC means, that employees are forced to sell because they've just joined the SEC? If they're forced to sell an individual instrument only at the beginning of a specific investigation into a single organization who issued the instrument, then that seems like a loophole.)

<comment><USER3> > On the other hand, if SEC employees are not forced to sell, then their > holdings may diminish their impartiality. It seems like the only fair and > neutral approach is to require SEC employees to hold no individual stocks at > all during their employment - or any type of financial instrument issued by > organizations they might potentially investigate.

The solution is blind trusts, with the additional cost picked up as part of their compensation package. The way to guarantee impartiality is to remove any chance of impropriety.

I would also settle for extremely common ETFs like the SPDR S&P 500.

<comment><USER4> SEC employment is often preceded by time in the industry. This means a large fraction of high-value employees are likely entering their roles with existing holdings. Requiring immediate divestment for all SEC roles sounds extreme.

It makes sense that any _new_ investments made during one's time at the SEC should be made into index funds or accounts managed at the independent discretion of a non-SEC manager. But banning all SEC employees from holding any individual stocks during their employment is a deterrent to recruiting.

<comment><USER3> But what do you with existing holdings? Do you "lock" them so the employee is prohibited from dumping/purchasing them in the event of insider information?

<comment><USER4> SEC employees should be able to sell at any time after review by their supervisor and a compliance officer - this would treat the employees no differently than the securities employees they regulate. I also agree with mandatory divestment prior to an expected conflict of interest.

To incentivise against insider trading: anonymous public disclosure of all un- forced stock sales by SEC employees. This would expose suspicious trades _ex post facto_. In the event of prosecution or investor lawsuits (a) the name of the employee would be unsealed during discovery and (b) the SEC, the employee, and the supervisor and compliance officer who approved the trade(s) would jointly share civil and criminal liability.

<comment><USER3> I believe we're in violent agreement!

</comment></comment></comment></comment></comment></comment><comment><USER5> The SEC's response: "Nester explained that before staff can work on an issue that involves a company, they have to sell any holdings of stock in that firm. As a result, he said, there shouldn't be any surprise that a sale would precede the announcement of an enforcement action."

I don't know about anybody else, but this seems pretty plausible to me.

<comment><USER6> If you change "sell any holdings of" to "short" that statement sounds absurd, but they're roughly equivalent.

How about not allowing staff to hold stock in companies they might have to deal with?

<comment><USER7> That would be "all companies."

<comment><USER6> I was thinking certain employees could deal with certain sectors or something.

</comment></comment></comment></comment><comment><USER8> My two favorite government investing scams:

(1) Congress's insider trading exemption - Until recently legislators and their staff were completely exempt from insider trading laws while they were often privy to insider information[1]. It's no wonder they do so well in the market. Too bad some minor restrictions recently were enacted - but no worries they just got rid of them as soon as the noise died down[2].

(2) Tax-free portfolio rebalancing - Big shots like the Secretary of Treasury often sell billions in stock without paying any capital gains tax. This allows them to fully take advantage of the free step up in basis when they die. So they can never pay anything on the fortune they made at Goldman Sachs[3].

Fuck these assholes!

[1] [http://www.thewire.com/politics/2011/11/hustle- defuse-60-min...](http://www.thewire.com/politics/2011/11/hustle- defuse-60-minutes-congressional-insider-trading-story/44952/)

[2] [http://www.techdirt.com/articles/20130416/08344222725/congre...](http://www.techdirt.com/articles/20130416/08344222725/congress- quickly-quietly-rolls-back-insider-trading-rules-itself.shtml)

[3] [http://www.celebritynetworth.com/articles/entertainment- arti...](http://www.celebritynetworth.com/articles/entertainment- articles/the-200-million-reason-henry-paulson-became-treasury-secretary/)

<comment><USER9> As to the tax-free sale, unless I misunderstand, this is extremely limited and far from "often". Few people will ever have the opportunity, it occurs once in a lifetime, and it is offered as compensation for the forced liquidation of one's entire stock portfolio to become a public servant.

<comment><USER8> Yes you get to sell all your stock in one company and buy a diversified portfolio. Maybe you haven't heard but diversification is good. And NOT FREE for everyone else. Do you understand the value of this?

In my view everyone should be able to do this under the ancient English law principle of like-kind exchange. But in the US today it is "special people" only.

To recap: Why are you taxed for something? Because they can tax you. There are no principals just opportunity. Much like why did your car get broken in to. Because they can.

</comment></comment></comment><comment><USER10> This is absurd. Why would we ever let _regulators_ of the market be active participants in it. Certain jobs in the government require for one's assets to be in a blind trust for there to be no conflicts of interest. If anyone in the government is doing it, it should be the _SEC_.

<comment><USER11> If you read the article, the SEC states that the reason they sold is because they were forced to by law, as they were soon going to being regulators of the securities they were going to regulate.

However it does appear to be a good indication that something is coming down the line if SEC people sell...

<comment><USER12> They should be barred from changing any position they have the moment there is a whisper of some sort of regulatory action against a company.

This policy is forcing them to act on non-public information, which is very illegal for everyone outside of the SEC.

<comment><USER10> Maybe allow for two options:

Option A: Blind trust with some capital gains incentives?

Option B: Ability to manage your own portfolio, but can't act on SEC+company news until x hours after publicly disclosed?

<comment><USER13> How about C: They aren't allowed to trade at all.

<comment><USER14> Isn't that a bit extreme? I'm not saying there should be implicit trust or that there is no risk of insider trading, but still. Its not right to deny them of all rights to have other sources of income apart from their job. I mean, having to sell all their stocks of a certain company before investigation is forfeiture enough.

My two cents,

D: Some sort of anonymized peer review of transactions? Maybe even automated.

</comment></comment></comment></comment></comment></comment><comment><USER15> SEC employees should not be allowed to trade stocks, period! Fed chairman abides by these rules, it's ridiculous that employees of SEC do not.

<comment><USER4> In an ideal world. In practice the most qualified people for SEC roles have a background in industry, and prefer to have a say on their portfolios. Prohibiting discretionary trading (or worse, stock ownership) would likely catastrophically restrict the pool of applicants to the clueless and unqualified.

<comment><USER16> "catastrophically restrict the pool of applicants"

This is amusing, but false. This is similar reasoning to why CEO's should make 10-20million dollars a year, rather than say...$10MM/yr. There is actually no shortage of people to be the CEO of any company (or the top rank in any hierarchy) and truth be told, Boards of Directors could not tell the difference for 9/10 candidates. As the saying goes, "graveyards are filled with the people thought previously indispensible". And empirical examples abound. Just imagine Apple without Steve Jobs, or Yahoo without whoever the guy was before Marissa Mayer. The only thing keeping quality applicants out of the SEC is power, presitige, and respect. There are many jobs that people work for low pay (eg Academia) provided that their social status is secure.

<comment><USER17> > Just imagine Apple without Steve Jobs

Ironically, Steve Jobs is the best counterexample, IMHO. He took a failing company and propelled it to market leader, launching several great products (the iPod, iPhone, iPad; disclaimer: I'm not a particular Apple fan and don't own any of these devices, but I have to give credit where it's due). We'll see where Apple is going from now on, but my bet is they're never going to have huge hits like the iPhone again; instead, they'll just keep doing incremental updates of their current products.

Another good example is Bill Gates. Regardless of the man's moral qualities (or lack thereof), he was great at running Microsoft. After Gates left, Ballmer has only been dropping the ball on everything except consoles. Apple and Google are slowly but surely taking Microsoft down (how many people own Windows Phones, versus Android or iPhones?).

It may seem easy to keep a profitable company going as usual, but it's really hard to take a failing one or a startup and make it succeed.

</comment></comment></comment></comment><comment><USER18> Cool, so can you trade on this?

Specifically, is the SEC's turnaround time to Freedom of Information Act requests fast enough that you could make a viable trading strategy out of "ask for the last week's worth of trades and rebalance appropriately"?

</comment><comment><USER19> Insider trading seems unfair. But after a lot of thinking and listening to arguments on both sides, I now actually find the argument in favor of legalizing insider trading fairly compelling. I'd suggest that anybody with strong feelings against it take a little time to consider the arguments for.

The argument for has two levels:

1) The trade is a victimless crime. Given the way markets worse, the naïve party would have bought or sold the asset anyway from someone else. Think about how you buy stocks: you just call your broker and ask to buy at the market price. If you do that and end up buying from an insider, you are no worse off.

2) Insiders actually move the price in favor of the naïve party they trade with. If a stock is being sold on the market $29 and the insider knows its true value is $20, they must sell below the other offers (e.g., $28.99) to make the trade. This is in favor of the buying party relative to the outcome without the insider: the buyer will lose $.01 less per share. At large trading volumes, insiders will actually move the market strongly in the direction of the fair price, making all trades of that asset more fair.

Unfair though it may be, society at large does not benefit banning insider trading, and allowing it would make stock market prices more accurate which is actually probably a fairly strong benefit to society.

<comment><USER20> The victim is trust in the market. If you know that someone else may have better information than you do, you get a "market for lemmings" situation where everybody assumes that the only reason someone would sell a stock is that they know it's going to tank, and so nobody buys. Liquidity collapses, and with it, the market.

The SEC isn't intended to protect individual investors, it's intended to protect the market as a whole. That's why they don't care when individual people get screwed, only when people _get screwed to an extent that they won 't invest in the market_. People change their behavior based on what other people do; without full public information, the result of that tendency is to tend towards zero liquidity.

<comment><USER21> forgive me if I don't shed any tears for 'trust in the market'. Shouldn't we be more suspicious about the market? People blindly throw their money at the hands of fund managers etc, which means our society is overleveraged on risky propositions.

<comment><USER20> There's a lot wrong with the financial markets today, but I'm pretty certain life would be significantly worse if they didn't function at all. I don't think that most people realize the extent that our modern, industrialized, highly complex society depends upon efficient capital markets.

You can order a TV off Amazon and have it shipped to your doorstep tomorrow. That TV was probably assembled in Taiwan from parts made in China and Vietnam, shipped across the Pacific, loaded onto a trailer, sent to an Amazon warehouse, FedEx'd in a jet plane and driven to your house. The majority of firms in that value chain are public companies; what they do is capital intensive. Without functioning capital markets that money would've been used to buy up city real estate and drive up rents.

</comment></comment></comment></comment><comment><USER4> The paper [1] finds "at least some of these SEC employee trading profits are information based, as they tend to divest (i) in the run-up to SEC enforcement actions; and (ii) in the interim period between a corporate insider's paper- based filing of the sale of restricted stock with the SEC and the appearance of the electronic record of such sale online on EDGAR."

On (i): SEC employees are required to divest of their holdings in a company before working on an issue relating to it. The findings thus demonstrates an alignment of ethics and private interests.

On (ii): there is potential for abuse. When an insider sells stock, the sale must be reported electronically to the SEC via Forms 3, 4, and 5. When an insider sells _restricted_ stock it is reported via Form 144. Form 144, unlike Forms 3, 4, or 5, may be filed electronically _or by paper_ \- over 90% of Form 144s are filed by paper. These paper filings are only available through third-party data providers, e.g. Bloomberg, and even then at a delay from filing.

[1] [http://www.darden.virginia.edu/web/uploadedFiles/RajgopalSEC...](http://www.darden.virginia.edu/web/uploadedFiles/RajgopalSECtradingpaper.PDF)

</comment><comment><USER22> The TSP (fed retirement) plan has 5 basic funds: Large , Small, international equities and corporate and government bond funds. Perhaps allowing a similar mechanism to invest a private portfolio in these funds and allowing re balancing once a year would be a good policy. Investments and withdrawals will be weighted based on selected allocation.

<comment><USER23> Very good idea, and one that I hope they had brought to the table (I wasn't at the table and I would love to know if you were). I have to imagine that something like this was brought up as an option, and it was struck down due to a counter argument that these are former stock traders and to disallow the stock traders to do what they love to do, would not allow the SEC to get the best talent.

</comment></comment><comment><USER24> Is it really that hard to do a t-test comparing the buys and the sells to find out if the difference is statistically significant at this sample size? I'm sure there are better tests, but that one is literally the first test you learn in a statistics course. Are there no journalists at the Post who have taken a basic stats course?

They could literally just punch in the 10 numbers (buys and sells for each of the five events) into [http://studentsttest.com/](http://studentsttest.com/) and get a result.

We should really figure out some way to enable more science students to pursue journalism. What's the point of having thousands of brilliant scientists doing research if journalists are just going to mangle it every time? Distribution is just as important as production.

</comment><comment><USER25> Quis custodiet ipsos custodes?

The wealthier our societies, the more numerous and lucrative the government positions, relative to the population median. At some point, the social fabric is likely to rip in awful ways.

<comment><USER26> > The wealthier our societies, the more numerous and lucrative the government > positions, relative to the population median.

Evidence?

<comment><USER25> The abusive stock-profits of these SEC employees is not an isolated event. The enormous difference in salary levels and wealth accumulation around DC vs the rest of the country over the last few years should be a clue.

Similar disparities in economic fate --between government employees and those they perceive as subjects-- are visible in most Western European countries I know well.

As our societies have gotten wealthier, governments have grown in disproportion -- and opportunities for steady income (including very early retirement) and indirect graft have increased.

<comment><USER27> What a load of crap. While it is true that the number of government employees tends to be higher in more prosperous countries (e.g. OECD), the total share of wages going to government employees is lower and therefore the (relative) wages per government employee must be _much_ lower. Check out table 3 on page 9 of this:

[http://elibrary.worldbank.org/doi/pdf/10.1596/1813-9450-1806](http://elibrary.worldbank.org/doi/pdf/10.1596/1813-9450-1806)

It's disgraceful that SEC employees seem to be engaged in insider trading, but to extrapolate there to "government employees and those they perceive as subjects" is quite literally insane.

<comment><USER25> I think we're using different lenses. The WorldBank stats you reference are very restrictive, being limited to central government employees in the 90s. But today's actual government cost is more than that.

If we look at recent OECD and local numbers for what one would more expansively consider the "public sector" the proportions are much higher in e.g. Sweden [1] and Greece [2]. Further, I would suggest that to measure the full impact of government on society, one should include the pension costs of retired public sector employees (one of the major driver in the PIGS crisis in recent years) as well as public works contractors (e.g. hundreds of millions of dollars for recently failed IT projects in the US). One could also argue that the cost of mass unemployment caused by government policies should be factored in as well (e.g. contrast Spain and Germany).

[1] [http://www.oecd.org/gov/pem/OECD%20HRM%20Profile%20-%20Swede...](http://www.oecd.org/gov/pem/OECD%20HRM%20Profile%20-%20Sweden.pdf) [2] [http://www.sant.ox.ac.uk/seesox/pdf/IordanoglouPatronageandP...](http://www.sant.ox.ac.uk/seesox/pdf/IordanoglouPatronageandPublicEmployment.pdf)

<comment><USER27> "Different lenses" is a cute term for cherry-picking. Using Sweden as an example is bad enough, since they're well known for having one of the most "social democratic" governments in the world. Using Greece is even worse, and I shouldn't even need to explain why. It's like using Iceland as the only data point in a discussion of bank regulation, or Ukraine in a discussion of nuclear safety. Also, the numbers for local government (including US states) are likely to be even worse for your point. I challenge you to show that the numbers measured _across the whole world_ (not just OECD and certainly not just two outliers) have changed significantly.

It's probably quite reasonable to include pension costs. You also forgot to mention the salaries of government contractors (especially military). On the other hand, the numbers we have are already limited to people in the workforce so adjusting separately for unemployment would be double-counting. Nice try. When all reasonable adjustments are made, the results might show a slightly greater advantage for government workers, but still _very_ far from your wild claims about government workers getting super-rich off the backs of the rest of us. Those remain utterly unfounded, and the burden is still on you to provide more than a few shreds of pseudo-evidence.

</comment></comment></comment></comment></comment></comment><comment><USER28> Just think about how good Mt. Gox employees must be in bitcoin speculation.

</comment><comment><USER29> This problem is trivially solved -- force new SEC hires to buy one or more market index funds and put them in a blind trust for the duration of their employment.

Historically, market index funds do as well as active portfolios (on average), unless brokerage commissions and tax implications are included in the assessment, in which case they do better (a fact proven by the now-famous WSJ dartboard contest). So SEC employees would have a more profitable portfolio than usual for the duration of their employment, and they would avoid even the appearance of impropriety.

How is it that this obvious solution hasn't been put in practice?

</comment><comment><USER30> Aren't the employees' sales a useful contribution to the stock market? They're turning private knowledge about upcoming SEC actions into public information, assuming that the public bothers to correlate stock sales with SEC employee lists. (If either of those pieces of information isn't publically known, then an SEC employee selling stock doesn't contribute any more information than any random shareholder's sale.)

</comment><comment><USER31> Are we just going to ignore that this data only began to be collected in 2009, at a stock market bottom? _All_ stocks have done well since then..

</comment><comment><USER32> Members of the sec could be required to register their trades (tested against IRS records yearly to ensure 100% accuracy and eventually automated).

Now, place all holdings in a database table.

When a company is going to be investigated, select only sec employees who are not listed as having holdings in that company.

My solution is obviously incomplete, but maybe it could be the basis for a more robust system.

</comment><comment><USER33> Seems like a pretty small sample size. Shouldn't we expect it to be less like the overall market?

</comment><comment><USER34> 6 out of 56 doesn't seem "incredible" to me.

</comment><comment><USER35> Isn't this like telling people to not to break the law but we can because we are the law?

What stops a hedge fund manager from being extra nice to the boys that turn Bud Fox?

</comment><comment><USER36> What do you expect in a perfect libertarian free market system??? Oh. Wait.

Sorry, I had to after reading all the bitcoin hate in other threads.</comment>


CERN ditching Microsoft software, angry over price increases - <AUTHOR> https://www.businessinsider.com/cern-ditching-microsoft-software-angry-over-price-increases-2019-6 <comment><USER2> [https://home.cern/news/news/computing/microsoft- alternatives...](https://home.cern/news/news/computing/microsoft-alternatives- project-malt) EDIT: [https://news.ycombinator.com/item?id=20166070](https://news.ycombinator.com/item?id=20166070)

</comment><comment><USER3>
        Microsoft isn't evil, they just make really crappy operating systems - Linus Torvalds

</comment><comment><USER4> > First of all, before we even start rendering the rest of the page, here's a > big banner that you can click to download the app!

> Oh no, you're using an adblocker! Click here to [something something] or > here to [something something else]

</comment><comment><USER5> I don't click on those links anymore. Heading straight to the comments to get a TL;DR.

</comment><comment><USER6> Can we get a non paywall link

</comment><comment><USER7> Why dont they retitle inc.com fortune.com and businessinsider.com under the headline clickbait.com</comment>


Article 13 and Article 11: EU's Terrible Copyright Bills Pass Vote - <AUTHOR> https://gizmodo.com/the-end-of-all-thats-good-and-pure-about-the-internet-1826963763 <comment><USER2> Not quite correct. There will still be a 2nd vote required in the parliament in early July. Only if it passes there, it actually would be implemented.</comment>


Interesting use of JS: Copy text in an article, then check your clipboard - <AUTHOR> http://www.nydailynews.com/money/2009/08/14/2009-08-14_plane_crazy_for_new_allyoucanfly_pass.html

<comment><AUTHOR> Haven't seen this done before, but pardon me if it has. (I also didn't know the clipboard was accessible in Firefox, but perhaps they're using Flash.)

At least on my browser/config, the clipboard now has the text I copied, and a link to the story. Even better -- the link is to a version of the story with the text highlighted in it (using more JS + an anchor).

Pretty cool feature, although I could see some people being annoyed/surprised by it.

</comment><comment><USER2> That's nice but then again I would expect browser to take care of it. Opera and its notes are just about ideal. You get text, url and datetime. Plus it has a keyboard shortcut, they can organized in folders and searched

</comment><comment><USER3> Interesting feature. I know there is a jQuery plugin that uses flash for copy/paste. Anyone can figure how it is done on this page? (They have a combination of traditional javascript and jQuery on the page).</comment>


Show HN: WoofJS, easy to learn graphics library - <AUTHOR> http://woofjs.com?ref=hn4 <comment><AUTHOR> As a computer science teacher, I was struggling to find a graphics framework for my students. Because my students all loved MIT's Scratch, I heavily leaned on it for inspiration.

The result is an object-oriented graphic framework and IDE with built-in documentation, autocomplete, auto-run, and more!

While it was created with 11-year-olds in mind, I hope WoofJS will be useful to anyone making graphical experiences. You can use it to make games, animations and art.

One of our high school students made a version of Frogger: [http://woofjs.com/create.html#Frogger](http://woofjs.com/create.html#Frogger)

And another made a fun dodging game with emojis: [http://woofjs.com/create#poop-emoji](http://woofjs.com/create#poop-emoji)

We're open source if you wanted to contribute :)

[https://github.com/stevekrouse/WoofJS](https://github.com/stevekrouse/WoofJS)

</comment><comment><USER2> My feedback:

1\. The site captures my keyboard and prevents me from using it to navigate my browser. This is a substantial accessibility issue.

2\. Also curious about any pedagogical research behind WoofJS's development.</comment>


The Scarcest Resource at Startups is Management Bandwidth - <AUTHOR> https://www.blossom.io/blog/2013/06/26/the-scarcest-resource-at-startups-is-management-bandwidth.html

<comment><USER2> _I like to counsel that the best teams are often defined by what they choose not to do._

Too very true. I usually over complicate my projects as well...and what every colleague, firm, and even business class taught me...a refined niche is more valuable than a swiss army knife.

There's a reason the saying " _there 's an app for that_," exists, because it solves a purpose and fills a clear and concise niche. If I can't pitch the core idea in one statement, I've failed before I've started.

<comment><USER3> Why is a refined niche more valuable than a Swiss army knife? What if a Swiss army knife is exactly what you need, where the integration of the features is the killer feature? There are cases where the integration of a few features is more important than either of them individually, and where the whole is more than the sum of its parts.

<comment><USER2> Your exactly right, with the fact that those features serve 1 purpose and 1 niche.

To clear a little confusion by what I mean on unrefined products, I can think of a prominent Swiss Army Knife...Google.

If I asked you to convey to me what is Google as if I didn't know, you'd probably say they're a search engine. While I don't mean to discredit all the products Google has, they themselves have been known to kill off their own products (Reader, Checkout, Buzz, Wave, ect) to refine a centralized purpose (ex. if you sign up for youtube, you now have a google plus).

This is the art of the niche, bringing multiple features to form one cohesive purpose.

<comment><USER3> Yes. For example, I'm working on a language learning web/mobile app, where the value proposition is that you can use this one "Swiss army knife" tool to keep track of everything, to study in a consistent way, and that works on most devices all of the time. There are lots of great tools for language learning out there, lots of flashcard apps, apps for learning to write Chinese characters, for learning pronunciation, a great site with subtitled videos etc. Learning a language takes many years though, and throughout that time you'll be using lots of tools and lots of different resources, but they're all walled gardens and isolated, and mostly work for just one or two platforms. Switching between them and keeping data synced between all of them is a pain. Also, who knows if you'll be using an iPhone forever, and whether they'll ever come around to making an android version of that app you need?

I think this is a case where the integration of all the features and data is more than the sum of its parts. The difficult part is knowing what the essential features are, and providing something useful until all of the necessary features are there.

</comment></comment></comment></comment><comment><USER4> It's a bit naive to write such pieces without asking the question _why do start up founders do this, really?_

Here is the entrepreneur's perspective.

After all, we are not dumb. We may love to work but most of us wouldn't just want to take so many initiatives if we didn't get the impression that we must to acheive goal x.

In this case, goal x is often more funding or traction. And as part of the funding process, you get feedback about the milestones you must hit to get your next round of funding. Moreover, you get shit load of very conflicting feedback, in some cases by the same VC just on a different day.

Entrepreneurs trying to attack from many different angles are basically hedging their bets due to a lack of clear signal from the market.

The solution to this problem is not as simple as the original post makes it appear.

\--Entrepreneur

<comment><USER5> Put another way:

        VC: I want you to put all your wood behind one arrow.
        Entrepreneur: Which arrow?
        VC: ... I gotta go.

</comment></comment><comment><USER6> Great post by Mark Suster. I constantly struggle with analysis paralysis and saying 'no' to opportunities that sound like a great idea at first. It's easy to forget about added complexity and cost (e.g. technical debt, positioning, marketing, support, documentation, expectations, …)

</comment><comment><USER7> Couldn't agree more (I am writing this from my own personal experience), Bandwidth is one of the (I think second) biggest internal reason for a startup to succeed or fail, way too many people (including me) tried to chew more than what they could swallow leading to waste of precious resources (time, money, human skills) which eventually leads to half baked product and loss of focus.

The number one reason is of course, you doing things which you don't like, are not good at and not enjoying what you are doing.

</comment><comment><USER8> But then startups are averse to General managers..

</comment><comment><USER9> Advertise your startup by republishing random startup stories for HN instead of writing them! Genius!

</comment><comment><USER10> another excellent guest post on the Blossom blog. keep it up guys.

</comment><comment><USER11> the blossom blog is one of the best in the game

</comment><comment><USER12> Spot on!</comment>


A Beginner's Thoughts on PLs (Part 3 – Lambdas, Closures, Functors) - <AUTHOR> https://medium.com/@chcokr/a-beginners-thoughts-on-programming-languages-part-3-lambdas-closures-functors-922a6a887575

<comment><USER2> Please don't use the word _functor_ to refer to C++ function objects. It already has a well defined and widely used meaning in mathematics and computer science which bears almost no resemblance to its C++ counterpart.</comment>


10 Papers Every Programmer Should Read (At Least Twice) - <AUTHOR> http://blog.objectmentor.com/articles/2009/02/26/10-papers-every-programmer-should-read-at-least-twice <comment><USER2> He forgot: <http://www.cs.utexas.edu/~shmat/courses/cs345/whyfp.pdf>

"Why functional programming matters" by John Hughes</comment>


Taking the pain out of debugging with live programming - <AUTHOR> http://www.techworld.com.au/article/459054/taking_pain_debugging_live_programming/

<comment><USER2> Just some links if anyone is interested. The LTU post which has a long debate about live programming and live coding:

<http://lambda-the-ultimate.org/node/4715>

The paper submission being reported on in the article (warning PDF!):

<http://research.microsoft.com/pubs/189802/mcdirmid13.pdf>

</comment><comment><USER3> Surprisingly, no mention of Light Table.

<comment><USER2> There is definitely overlap. Keep in mind that the paper is design/academic and not product-oriented; its stepping back and trying to figure out how live programming can be useful. There are a lot of ongoing efforts today that are trying to build useful products, the most promising one being LightTable.

Its an exciting time to be a PL researcher.</comment></comment>


Seven New Mini-Frogs Found – Among Smallest Known - <AUTHOR> http://news.nationalgeographic.com/2015/06/150604-frogs-new-species-brazil-rainforest-science-animals/

<comment><USER2> _with some species only growing to about about 0.3 inch (a centimeter) long._

What? 0.3 inches is 0.76cm, and a centimeter is 0.4 inches.</comment>