A new way to capture the brain's electrical symphony - <AUTHOR> https://www.nature.com/articles/d41586-018-06694-6 <comment><USER2> I'm tempted to attach electrodes to this very article in the hope of extracting some information from the noise.

Someone should write a generator of articles like this:

"One day, in <random_year>, <intro_character> was [swimming in the Caribbeans|strolling in the streets of Manhattan|hunting bears in northern Alaska|having a tooth removed|relaxing in an Amsterdam coffeeshop] when [received an unexpected phone call| noticed something relevant to her research|experienced a vision of the Truth]".

<intro_character> had been working for [months|years|decades] on [visualising neurons activity|teaching salmons to count|developing fluorescent cabbages|cloning ancient etruscans]. Now, there was some hope...

Since <other_random_year> scientists had been studying the issue, but progress was slow, because [only a few researchers in the field| salmons brain is very small| Italian bioethical laws].

In the meantime, [5000 km away| on the other side of the globe| in the opposite building| in Poughkeepsie] <another_random_character> had been... Etc.

<comment><USER3> yeah I really dislike this style, and you see it everywhere. For some reason this sort of pop science article always needs to start with a person doing something somewhere picturesque

<comment><USER4> Just today I remembered the well known fact that story telling facilitates memorization.

The other day I wondered whether story telling was the highest form of art, prompted by HN comments on the reception of art. Later I wondered how much the sequential nature of histories facilitated the development of language, and how the need to express parallel developments using a sequential medium created syntax, recursion and dialogue.

Here, the author isn't in the place of the protagonist, neither is the reader. But a story needs a hero. Especially in topics such as this it helps to remind that these could be familiar people. Naturally, in science the heroic result should be most important. In that regard this is click bait. It paints a stark contrast. It does not present a new way, just another stepping stone to high fidelity measurements. It's way over the top for entertainment purposes.

The style doesn't prohibit skim reading though. If jumping to the highly abstract abstract would be too terse ... maybe the story you are trying to compose by reading nothing in particular is highly parallel, but lacking interaction.

</comment></comment></comment><comment><USER5> Is it possible to use the information from the florescent flashes to build a truth table for individual neurons over time?

<comment><USER6> not really. Neurons fire in the absense of any stimulus at some base noise floor rate, so there's always a little bit of uncertainty. They don't really act like logic units, close up.

<comment><USER7> Why would this be an argument against getting data of an individual neuron? We would obviously just have some filtering applied to it to attempt to remove the noise, in the simplest case even just a noise gate adjusted to that default rate. It would still provide information from individual neurons.

<comment><USER6> you can absolutely get data from an individual neuron. What data you get is not a truth table.</comment></comment></comment></comment>


Gold: Google Releases New and Improved GCC Linker - <AUTHOR> http://google-opensource.blogspot.com/2008/04/gold-google-releases-new-and-improved.html <comment><USER2> That's pretty cool. I've worked on projects where the link stage would take minutes, and therefore constitute most of the incremental build time, and it's not like you can avoid it. Visual C++ has a special incremental linker, it always surprised me that nothing similar ever hit the mainstream GNU toolchain. It'll be interesting to see if this gains traction.

</comment><comment><USER3> I'm just waiting for Google to start making their own motherboards, chipsets, and CPU architectures. That seems to be the logical conclusion of their tendency to respond to the uniquely demanding requirements of their mission by creating new, improved infrastructure.

<comment><USER4> Nope, far from it, they're using the most commodity hardware infrastructure they can find. Their whole system is built around cheap, widely-available hardware. Even with the volumes they are using, they would not get production high enough to compete with the commodity PC market on price.

<comment><USER5> They are trying to get more efficient power supplies.. <http://tech.slashdot.org/article.pl?sid=06/09/26/2039213>

</comment></comment></comment><comment><USER6> how they monetize this? it ads adsense for every new executable? :)

<comment><USER7> Some intern probably wrote a MapReduce job which discovered that Google engineers collectively spend thousands of hours per year linking, so writing a new linker can be justified as a cost savings. :-)

OTOH, <http://xkcd.com/303/>

</comment></comment><comment><USER8> doesnt link linux. FAIL.

jk.. this is one of the better projects ive seen come out of google. 5 times speed increase is huge for big apps. does anyone know if it was a 20% project? hopefully this gets picked up and ported around so that it becomes a viable alternative to the gcc linker.

</comment><comment><USER9> He doesn't fully realize that __he __is the only one (with the other writing code for this project) that is really giving back something, not "Google". This corporate thinking is sad.

<comment><USER10> Although you may be partially right in this case, I think that people take on this corporate-hating mentality too often (against Google, against Sun, against Microsoft even!). Give credit where it's due - it's a pretty impressive thing for a company to let its employee's spend 20% of their time on their own interests, and then pay them for it.

<comment><USER9> Credit to google for the openmindness, but 1) Google is doing this for its own interests of course. 2) this does not change the fact that the main credit is due to the guy that wrote the code that could have used his time to produce something not useful for the external community.

</comment></comment></comment><comment><USER11> FINALLY! Now can someone please rewrite GCC? That is the ugliest piece of code I've ever seen.

<comment><USER12> Is it hindering innovation to that extent to justify the rewrite? Remember, GCC is the one of the most fundamental pieces of software running the entire OSS eco-system. It's internal beauty isn't so much important as it's utility to this system.

<comment><USER7> Apparently GCC is crimping Apple's style enough to justify a rewrite, although that may be due to licensing and lack of modularity more than ugly code.

</comment></comment></comment><comment><USER13> I wish I knew someone still running gentoo so I could see their weeping for joy.

</comment><comment><USER14> Another open source release by google which no one really needs. Is is it really that important that the linking takes a few minutes less. There are probably tons of interesting projects at google which they could release, but they are too evil to do that, because they fear their competitors. Not like yahoo and microsoft, which give much more back to the community then google.</comment>


Show HN: Edit many files as one - <AUTHOR> https://github.com/xixixao/many-to-one <comment><USER2> Only for Atom?</comment>


Yesterday's best-practices are today's HTTP/2 anti-patterns - <AUTHOR> https://docs.google.com/presentation/d/1r7QXGYOLCh4fcUq0jDdDwKJWNqWK1o4xMtYpKZCJYjM/present <comment><USER2> Can I get some of the http/2 performance benefits by putting a http/2 reverse proxy in front of a regular http server? Does such a thing exist?

<comment><USER3> Yes, you can just configure the spdy plugin for nginx and place it in front of your webserver. Easy and we measured significant load-time wins.

<comment><USER4> This might be too much to ask, but you can share the Nginx config file(s)?

<comment><USER5> Adding SPDY is really nothing much in nginx (and that one of the thing that makes it awesome).

In practice, if you already have an SSL server, just add the "spdy" to the listen line like "listen 443 ssl spdy;", restart and you are done[1].

Then making it proxy request is just one location definition with "proxy_pass"[2].

[1]: [http://nginx.org/en/docs/http/ngx_http_spdy_module.html](http://nginx.org/en/docs/http/ngx_http_spdy_module.html)

[2]: [http://nginx.com/resources/admin-guide/reverse- proxy/](http://nginx.com/resources/admin-guide/reverse-proxy/)

</comment></comment></comment></comment><comment><USER6> Do these HTTP/2 server implementations downgrade to HTTP0.x/1.x if the client support only an older version? Will there be v2-only servers in near future?

If the answers are in the slides, forgive me - using the iPad the Google slide software breaks the back button and is too annoying to read beyond a few slide pages. Debugging and implementing older protocols seem to be easier, as they were text based.

<comment><USER7> > Do these HTTP/2 server implementations downgrade to HTTP0.x/1.x if the > client support only an older version?

Many do, yes.

> Will there be v2-only servers in near future?

Yes.

> Debugging and implementing older protocols seem to be easier, as they were > text based.

Implementing text protocols _seems_ to be easier, but writing an implementation that can handle the wide variety of both compliant and slightly non-compliant traffic is an exercise in frustration.

This is not helped by the fact that people see the text protocol and think that it's easy to implement, so they go and write their own HTTP/1.1 server and leave it on the internet. Their server is probably not quite spec- compliant, so everyone else is left trying to interop with it.

Binary protocols are hard to debug by eye, but they aren't hard to write parsers for.

<comment><USER6> > Binary protocols are hard to debug by eye, but they aren't hard to write > parsers for.

Implementing a text based protocol (SMTP, POP3, HTTP0.x/1.x) for a client application is certainly easier and less documentation is required. Knowing the clusterf __k of the binary Office document formats, the newer text based ones re far easier to parse (be it XML or plain text doesn 't matter). Be it binary or text based, one has to write a parser anyway. Only with text based protocol one could also use Regex or string match during, which is quite useful for non-production development/testing.

I read about "prioritisation" of data as a hint for the server, and less caching of data on the client. With the reoccurring "net neutrality" debates, let's hope this protocol cannot be misused/used to prioritise certain packets for parties who pay extra. I am not into this debates, but it would be certainly a disadvantage for startups over established parties. Given the many problems with SSL (heartbeat, broken/outdated certs, hijacked cert vendors) an HTTP/2 without SSL would be a nice fallback scenario - wildcard certs for new startups are still a bit expensive, especially if one will have to replace (=costs) the certs every few months due security concerns.

<comment><USER8> I'm going to strongly disagree with this. The problem with office docs was due to lack of documentation not because they were binary.

When you're parsing text, all kinds of crazy stuff can happen. You need to resize buffers as you read data, you need to know the escaping rules of each field, you need to know about line continuations, you have to know the text encoding, and many many other things.

Binary data in the abstract form has three elements: tag/type (may be inferred from position), data length (may be inferred from tag) and optional data itself. There are various ways to compose that information, but that's it otherwise. Binary protocols may be harder to read for people (you can just use wireshark dissectors though), but writing a correct and bug free de/encoder for one is massively simpler than for a text one.

By design, every text protocol will require more documentation than binary, because you need to include information about data escaping and encoding.

If you want to see this in practice, implement a client for something which does support both options. I recommend memcache.

<comment><USER9> Parsing Office docs is parsing XML. We have lots of tools for parsing XML, and escaping, line continuation, text encoding etc. are all well-defined and don't need to be reimplemented specifically to support Office.

Whether parsing binary is easier or harder than parsing text depends almost completely on the grammar of the language being parsed; and let's not forget, text is, of course, a type of binary format.

If I have to do ad-hoc parsing or generation, I prefer a text format, because I have lots of tools that understand text. If I need to do production-quality work, I prefer a binary format, because I need to be complete. But if I'm integrating multiple heterogeneous systems, I want a format that is trivial to inspect and test; that may mean a well-specified text format, like JSON or XML.

I'm fairly sanguine about HTTP/2 because it's at a lower level. If I were in the business of writing HTTP clients or servers on a regular basis (rather than using existing libraries), I'd be more concerned. I only do a telnet HTTP/1.0 session every 4 months or so.

<comment><USER8> Regarding missing docs, I meant the original .doc. That was all undocumented, proprietary binary.

But again, I have to disagree about parsing text ever being easier than binary. Basically for the same protocol, passing the same data and implemented in a sane way, the text protocol is the same as binary + variable length metadata + data escaping + value conversion + text encoding of metadata. I'm happy to challenge anyone with the following: it's not possible to create a simpler text protocol than a well designed binary protocol. (looking only at encoding/decoding, not debugging side)

Where by simpler I mean, less likely to get exploited, less ambiguous, shorter to document (when concatenating with docs of all encoding protocols you depend on, like JSON or XML)

<comment><USER9> _it 's not possible to create a simpler text protocol than a well designed binary protocol_

Huh? That's irrelevant, surely? It doesn't speak to your assertion. The best binary formats don't necessarily need "parsing" at all; it could be a simple matter of mapping into memory and adjusting offsets, like an OS loader. I don't think there's any debate that binary formats can be designed so that they are far easier to load than text. We're not talking about the design of protocols here (in this subthread). We're talking about writing parsers.

Parsing an obscure binary format is harder than parsing a simple text format.

<comment><USER8> I find the response confusing. First, I was responding to "Be it binary or text based, one has to write a parser anyway. Only with text based protocol one could also use Regex or string match during, which is quite useful for non-production development/testing." which we both seen to agree it's false. Well designed binary doesn't even need parsers sometimes. If you add steam multiplexing regexes won't help you anyway.

I'm not sure where do obscure binary formats come in. Http2 had a choice of slightly complicated binary, or more complicated text. Office had lots of programmers, even more money and simply didn't care. It's a completely different situation than http2.

So finally: why the obscure binary format? Http2's choice is good text or good binary really.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> "This would have a larger effect on the speed of the internet than increasing a users bandwidth from 3.9Mbps to 10Mbps or even 1Gbps"

I'm sold. What would be the easiest way to makes this happen for someone like me with a pretty vanilla LAMP server?

<comment><USER11> Install nginx as a reverse proxy, add spdy to the server directive. Enjoy.

<comment><USER12> So the spdy directive also does http/2? I seem to remember looking for HTTP/2 support in NGINX and finding that they only support it in the commercial version?

<comment><USER13> SPDY is an experimental protocol that does much of what HTTP/2 does ( you can think of it as the beta version of HTTP/2). It will be phased out starting next year over favor of the real protocol but people use it now with nginx.

<comment><USER10> thank you, I have been looking for this exact explanation. Ive been wondering why everyone keeps recommending SPDY when this whole thing is about http2

</comment></comment></comment></comment></comment><comment><USER14> I never took the time to try WebSockets, so please forgive me if this question doesn't make sense, but, does HTTP/2 supersedes WebSockets? I'm under the impression that HTTP/2 covers all the WebSockets' use cases, is this a correct observation?

<comment><USER15> If you use WebSockets mainly because you want to multiplex many requests/responses over a single TCP channel, then HTTP/2 may be a preferable substitute for WebSockets.

If you use WebSockets for "realtime push", then HTTP/2's server push feature could potentially be used as an alternative (though I've not heard of anyone actually doing this yet).

If you use WebSockets because you actually want a bidirectional message- oriented transport protocol, well then you'll keep using WebSockets. :)

<comment><USER16> > If you use WebSockets for "realtime push", then HTTP/2's server push feature > could potentially be used as an alternative.

One thing to keep in mind with HTTP/2 server push is that a server can only send a push in response to a client request. So this isn't a drop-in "real- time push" mechanism. To implement the equivalent of real-time push would likely require client/server to keep a stream within the connection in the "open" state whereby the server can send continue to send data frames on that.

<comment><USER14>
        One thing to keep in mind with HTTP/2 server push is that a server can only
        send a push in response to a client request.

This was the difference that I was not aware of, thanks. So HTTP/2 server push is just opportunistic, while WebSockets are real-time push with a persistent connection.

</comment></comment></comment></comment><comment> fake-name Holy shit, fuck that site. It overrides the BACK AND FORWARD BUTTONS for fucking page changes.

<comment><USER17> I can't actually tell if that's sarcasm anymore or not. Next slide is a new URL, new page. Based on initial testing, the behavior seems fine. Same behavior as one would have for something like [http://example.com/my- presentation/1.htm](http://example.com/my-presentation/1.htm), 2.htm, 3.htm, etc. and navigating them with hyperlinks on each slide that link to neighboring slides.

It's not like Back/Forward browser buttons are overrode to behave and previous/next for the slide presentation.

Remember those horrible embedded Flash presentations that you couldn't directly link to a particular slide within the blob? Yeah, that "breaks the Web". Back/Forward is supposed to go back to the previous page the user was on (which is a "slide" in this case).

Using Chrome 43.0.2357.81 (64-bit) / OS X.

<comment><USER18> I would agree except that they also use scrolling to change slides. It feels a little weird to scroll down 3 ticks of the mousewheel, then have 3 clicks of the back button do the reverse action.

<comment><USER17> Scrolling is a separate matter. I didn't even bother to scroll the first time. I just pressed the next/previous buttons on the slide navigation bar.

In the scrolling case, I still don't see how it's "overriding the browser buttons", but rather having a JavaScript that advances to the next page on scroll.

In the scrolling scenario, my actual back and forward browser buttons behaved as expected — just for the pages (slides) I visited. No more, no less.

</comment></comment></comment></comment><comment><AUTHOR> The chapter in the book goes over more details: [http://chimera.labs.oreilly.com/books/1230000000545/ch12.htm...](http://chimera.labs.oreilly.com/books/1230000000545/ch12.html)

</comment><comment><USER19> Interesting read, but as far as I can tell this article mostly makes a strong case that using HTTP/2 at all is an "anti-pattern" for most projects[1] today, for at least three reasons.

Firstly, the presentation seems to start by arguing that round-trip latency has much more of an impact on perceived performance than bandwidth, but then argues for several techniques whose principle advantage is saving small amounts of bandwidth. So how much improvement will these new techniques really offer over current best practices for "an average web site"?

Secondly, the presentation seems to argue that simplifying front-end development processes by avoiding things like resource concatenation is a big advantage of HTTP/2, yet despite repeatedly emphasizing the need for the server to provide just the right responses to make HTTP/2 work well, it almost completely ignores the inevitable challenges of actually configuring and maintaining a server to take advantage of all of these new techniques in a real, production environment, with rapidly evolving site structure and content, numerous contributors, etc.

Essentially, this seems to be advocacy for dumping tried, tested, universal "workarounds" for the limitations of HTTP/1.1 in favour of new techniques that work well with HTTP/2 and only HTTP/2, but as an industry we have relatively little experience in what actually works well or doesn't with HTTP/2 and we have relatively few tools and relatively little infrastructure available that support it right now. And crucially, making the shift is not by any means a neutral activity; it is actively and severely harmful to several of the most important tried-and-tested techniques we've used up to now.

Finally, there is the simple matter of trust or, if you want to be kinder, future-proofing. The presentation notes that Google are deprecating SPDY from early 2016. That is the supposed HTTP replacement that was the New Shiny... yesterday, I think, or maybe it was the day before. When arguing for fundamental and irreversible changes in the basic development process and infrastructure set-up, you lose all credibility when your so-called standards fall out of favour faster than a GUI or DB library from Microsoft, and when your own browser frequently breaks due to questionable caching and related behaviour.

It's certainly true that HTTP/1.1 isn't perfect and there are practical ways it could be improved, but I don't think this presentation makes a strong case for adopting HTTP/2 as the way forward.

[1] YMMV if you actually do work for Google/Facebook/Amazon, and you really do have practically unlimited resources available to maintain both your sites and your servers, and you really are making/losing significant amounts of money with every byte/millisecond difference.

<comment><USER20> I almost didn't reply because it sounds like you have a bit of an axe to grind against HTTP/2, but the concerns you state are overblown. All I really gathered from the presentation was that spriting and concatenation negate the caching advantages HTTP/2 could provide and are unnecessary. It doesn't make HTTP/2 worse than HTTP/1.1. As for protocol turnover, arguably adopting SPDY was premature, but everyone knew it was when they did it. It'd be the same for someone who chooses to adopt QUIC now. One point of standardizing HTTP/2 was to let the more conservative among us start to use it now.

<comment><USER21> Definitely. I actually gave them props for their SPDY work, including the name: it matching a common word would make it easier for lay people to remember. Many organizations and academics made alternatives to common protocols without the user base or influence to make them real. That Google was in a position to make things better, built a practical improvement, deployed it, and inspired the update to HTTP is a great credit to them. I wish more companies in similar positions would follow suit.

And, hopefully, Google's experimentations in other protocols and domains will challenge those controlling the status quo to adapt to the times as well. Not holding my breath but it would be nice.

</comment></comment></comment><comment><USER22> This is a really interesting read (linked from that presentation)

[http://chimera.labs.oreilly.com/books/1230000000545/ch12.htm...](http://chimera.labs.oreilly.com/books/1230000000545/ch12.html)

* one tcp connection per request

* Server push functionality / server initiated streams

* current implementations means http/2 works over tls _only_ - neither Firefox nor chrome currently support non encrypted connections. This does keep things simpler with things like proxies in the middle I presume also.

* tls implementations must now support sni also so basically http/2 is now a forcing function for supporting sni which is awesome.

</comment><comment><USER23> what are the current http/2 server options?

<comment><USER24> Undertow and Jetty are both Java options that support HTTP/2\. I've been playing with both and it's still very rough around the edges (have to mess with bootpath to get ALPN to work), but it does work. F5 are supporting it now too.

<comment><USER25> From the presentation, Jetty's smart push feature sounds really cool, do you know if there's more information available on that feature?

<comment><USER24> Basically it caches requests per referrer so the next time a request is made, it can guess what subsequent requests will be made. Documentation is still sparse and a lot of it is carryover from their SPDY features.</comment></comment></comment></comment>


Getting Started with Security Keys - <AUTHOR> https://paulstamatiou.com/getting-started-with-security-keys/ <comment><USER2> I've recently moved to using a yubikey for u2f and I'm really impressed! Usually when you try to be more secure you lose some convenience, but in the case of u2f I've gained both security and convenience.

I've also tweaked some pam (a Unix auth stack) module settings so that I can required u2f in first login; and unlock the screen & run sudo with just my yubikey.

Since I shutdown my machine once a day and I am very disciplined to always have my keys in my pocket, I think I have a generally more secure system that is also more convenient to use.</comment>


Ask HN: Software engineers, what was your experience during the 08/09 recession? - <AUTHOR> <comment><USER2> I'd been founding a startup at the time and decided that if I wanted any income for the next couple years I should probably look for a job. Ended up getting hired by Google despite the press reporting they were in a hiring freeze.

It was...a good decision, but I sometimes wonder if it could've been better. Financially I did really well, because my stock options were granted at the bottom of the market in 2009, and I got to work on a bunch of really cool stuff with really smart teammates, and I'm also glad to have worked at Google in the 09-11 period when they still had a fair bit of the old culture in them. Plus in 09 everybody was just glad to have a job, any job, and it felt like the rat race fell away for a couple years. My rent didn't budge for the first 3 years I was in California. I've heard that there may be a reputation bump from getting hired at Google in 2009 (since they hired so few people), but I haven't looked for a job since then, so I dunno how true that is.

OTOH, I look at people who _did_ keep going with their startups, and actually accelerated into the discomfort, and sometimes I wonder if I made the wrong choice. The class of startups & computing projects released during the 08/09 recession includes DropBox, AirBnB, Thumbtack, WhatsApp, Bitcoin, Node.js, Angular, and several you haven't heard of (sometimes they were started beforehand, but this is when they started getting adoption). And my plan-B if I didn't get into Google was to go all-in on Android development. People who actually did that in 2009 did pretty well, because it was a time when the huge markets hadn't yet been picked clean and the hardware was getting better every year.

</comment><comment><USER3> The VCs that were funding the startup I worked for got spooked and demanded an immediate reduction in force; I was one of the programmers that got hit.

The market the company was in didn't shrink, and they kept on making money, so the VCs were definitely not the all-seeing oracles that day :-)

Personally: the Seattle-area housing market shrank (and has since recovered), which didn't affect me because I already had a house. And I found a new job pretty quick.

</comment><comment> o-__-o Enterprise tech jobs where still in demand, the startups cooled down for awhile and I remember a lot of folks losing free parking, snacks, etc. if you were in the NYC area and didn't have a job then your pay took a haircut. Many many many financial tech jobs where cut to the tune of 80k workers flooding the marketplace at once. I saw wages plateau for almost 4 years during that time, I did witness an influx of hires to the DC area for government contract work which proved lucrative if you wanted to go overseas.

But I was job hopping from 05-08 and didn't blink an eye leaving in 2011. Of my friends who couldn't find a job during this time the one thing that was common was that they could not move and were in a place like Michigan or Rhode Island where tech jobs don't grow on trees. Recessions are the best time to startup and grow a solid base for investor excitement during the next boom cycle

</comment><comment><USER4> Just graduated college. Got a job before I graduated (Windows support at a bank), so it didn't impact me at all. However, the company I worked for laid off a bunch of people that year, so people definitely got affected.

Some of my non-engineering friends had a really rough time finding a job, though.

</comment><comment><USER5> I fared well during the recession overall. The company I worked for was affected more than the overall economy since we were an MBA prep company so I figured with the collapse there would be fewer jobs for MBAs in the coming years. I was planning on quitting in November 2008 and I actually handed my letter of resignation to my boss on a Friday, but he told me to take the weekend to reconsider. What he knew then, and what I was about to find out, was that they were laying off most of the tech team, including me. By not resigning I was able to get a 6 week severance. I took a vacation to Cancun before starting a better job. I lasted at the new company about a year before jumping ship for a 45% raise in November 2009.

</comment><comment><USER6> I was in high school at the time, and it encouraged me to pick a lucrative career track. I did have an interest in programming -- I didn't choose it solely for the money, but it made me prioritize financial security. Seeing our financial markets melt was impactful. I remember my economics teacher showing on the projector a graph of the Dow on one of the large three-digit (possibly four-digit) down days and talking about the significance of it. It shaped how I view money, and would be somewhat attribute to my interest in achieving financial independence before standard retirement age.

</comment><comment><USER7> I had friends tell me I was taking an unreasonable risk by quitting my job at Microsoft early in 2009, but I couldn't take it anymore and left anyway. I took a couple months off to work on a Burning Man project, spent a year doing contract work and messing around with electronics, then got a job doing firmware. It was fine. I would have made more money if I'd stayed, but not enough to make the experience worthwhile.</comment>


Tesla confirms Q3 production: 80,000 vehicles and 83,500 deliveries - <AUTHOR> https://electrek.co/2018/10/02/tesla-q3-production-deliveries/ <comment><USER2> Between the SEC essentially dropping any of their real threats, and finally getting to solid production numbers it looks like Tesla has really stabilized. Yet for some reason the stock price is barely getting back to where it was at the beginning of the year. Are there more subtle figures that are showing warning signs for TSLA?

<comment><USER3> There are still questions surrounding the profitability of the cars, something Tesla hasn't released much information on.

<comment><USER4> They did predict profitability and positive cash flow for Q3 provided they reach their delivery guidance.

AFAIK, they did achieve their goal so what else should we expect?</comment></comment></comment>


"The web is a terrorist's command-and-control network of choice" – GCHQ Director - <AUTHOR> http://www.ft.com/cms/s/2/c89b6c58-6342-11e4-8a63-00144feabdc0.html#axzz3I2F0l6FM

<comment><AUTHOR> According to the UK agency "...privacy has never been an absolute right and the debate about this should become a reason for postponing urgent and difficult decisions"

This article seems like a clever bit of propoganda to justify increasing surveillance</comment>


Feinstein: CIA searched Intelligence Committee computers - <AUTHOR> http://www.washingtonpost.com/blogs/post-politics/wp/2014/03/11/feinstein-cia-searched-intelligence-committee-computers/?hpid=z1

<comment><USER2> I'm curious, Senator: Would this also be called "protecting America"? Or is it somehow different when it happens _to you_?

<comment><USER3> That's nice & snarky.

IT looks like this genuine misconduct on the part of a paranoid intelligence agency trying to cover themselves from an investigation. This is what many allege the NSA was doing w/ bulk collection- individual people actively snooping around.

W/ the NSA program, you're just a row in a database, if you're not a terrorist* and do not associate with terrorists nobody has time to give rat's ass about what you're doing unless one can relate you to another suspicious character. That's national security stuff, sorry if ya don't like it, but tough.

THIS is different. This is real domestic spying by spies.

*"But how do we define terrorism, isn't one man's terrorist another man's freedom fighter wahhhh" -Tsarnaevs & people like them? Those are terrorists. Bad guys, got it?

<comment><USER4> _IT looks like this genuine misconduct..._

That doesn't make it different. An important reason for (ignored) prohibitions against what the NSA is doing is _because_ of the possibility of misconduct. We must expect that, because it's humans running these programs, they will behave as humans.

So it's incorrect to say that we should view the violations as separate from the programs themselves. It's all part of the same discussion, which must include weighing what might go wrong, and the damage that it might do.

 _W / the NSA program, you're just a row in a database,..._

Which vastly multiplies both the opportunity for malfeasance, and the potential scope of damage that would result from it.

UPDATE: to whoever downvoted the parent, I don't think that's correct. Although I strongly disagree with its message, it is a common feeling that needs to be addressed. Even if it's wrong, having the comment as part of the discussion is valuable, as it allows us to explore _why_ it's wrong. I have compensated with an upvote of my own.

<comment><USER5> > An important reason for (ignored) prohibitions against what the NSA is doing > is because of the possibility of misconduct.

Not exactly. FISA wasn't adopted because of the abstract _possibility_ of abuse of domestic surveillance, it was adopted because of actual and substantial abuse of domestic surveillance, including for political purposes.

</comment></comment></comment></comment><comment><USER6> > The head of the Senate Intelligence Committee on Tuesday sharply accused the > CIA of violating federal law and undermining the constitutional principle of > congressional oversight as she detailed publicly for the first time how the > agency secretly removed documents from computers used by her panel to > investigate a controversial interrogation program.

> Sen. Dianne Feinstein (D-Calif.) said that the situation amounted to an > attempted intimidation of congressional investigators, adding: "I am not > taking it lightly."

I guess the outrage, and constitutional protectiveness, depends on which citizens are being spied on.

You know, we mere citizens are supposed to have overall oversight on Congress and the government. Can't we get a little outrage love too?

<comment><USER7> Glad to see she has belatedly grown a sense of moral indignation about overreach by intelligence agencies. Once can only hope that this debacle will add credence to the idea that the US clandestine apparatus is in dire need of meaningful reform.

</comment></comment><comment><USER8> What in the world would the CIA be looking for in searching members of Congress?

Do they actually think that elected officials are involved in terrorism or endangering the security of the US? If members of Congress are being watched, then I really have to assume that everyone is a suspect.

To be honest, the makes the Nixon spying stuff seem tiny in comparison. I have voted for Obama twice, but if it turns out that this came from his administration it really does seem like grounds for some sort of hearings (I really can't believe I'm saying that, because 99.999% of calls for impeachment are just absurd)

<comment><USER9> _I have voted for Obama twice, but if it turns out that this came from his administration..._

The heads of the nation's intelligence agencies answer to the President. Congress may approve their funding, but he provides their marching orders.

If there was ultimately nothing inappropriate about this, then _their boss_ , the President, needs to be publicly standing behind the CIA.

Otherwise, if he remains silent and heads do not roll, then he is either complicit or indifferent.

<comment><USER10> Or powerless. There seems to exist a large, perhaps even predominant, section of the government that exists outside of the control of the democratic process. The de jure objection to this is that the Administration can fire and hire at will, and can affect these agencies with that power. The de facto reality, however, is that the President only has limited ability to affect these agencies, much more limited in power than we are taught in school.[1] Further, the oversight abilities of Congress have been negated in ways that are well demonstrated here.

I am no Obama fan, especially in this regard, but I do believe his Administration is the problem. The problem is systemic rather than political, and these institutions are structured such that they are almost entirely outside of the ability of the democratic process to change.

To say that Feinstein has encountered face of the real American government is probably an exaggeration, but not enough of one for comfort.

[1] [http://billmoyers.com/2014/02/21/anatomy-of-the-deep- state/](http://billmoyers.com/2014/02/21/anatomy-of-the-deep-state/)

<comment><USER11> This is silly. Presidents routinely fire generals, even during military conflicts. The CIA and the NSA are under his direct perview. Buck stops with POTUS on this.

<comment><USER12> Generals are easy to fire and rarely have direct effect on the day to day operations. A new general may attack today instead of tomorrow, but it will be the mid-ranking officers who determine what set of rape pillage and plunder happen in the aftermath.

It is the same with the CIA. The director may set targets and direct stratagity but it is the untouchable civil servants who run the show. Given the Hall of Mirrors effect, I think it could be possible that the appointed leaders are mere figure-heads just there to take the blame what a job goes bad.

<comment><USER11> "Generals are easy to fire and rarely have direct effect on the day to day operations"

The second half of this sentence doesn't ring true.

The last two major generals Obama fired were McChrystal and Patraeus. Both hugely influential in structuring day to day operations, if not direct tactical decision. The latter was the author of [http://armypubs.army.mil/doctrine/DR_pubs/dr_a/pdf/fm3_24x2....](http://armypubs.army.mil/doctrine/DR_pubs/dr_a/pdf/fm3_24x2.pdf).

[https://en.wikipedia.org/wiki/Stanley_A._McChrystal](https://en.wikipedia.org/wiki/Stanley_A._McChrystal)

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

</comment></comment></comment></comment></comment></comment><comment><USER13> Senator Feinstein is shocked, SHOCKED, that the dogs she said should be trained to bite other people's hands have bitten hers. Never saw this one coming.

</comment><comment><USER14> To paraphrase Bender, "This is the worst kind of spying: the kind against me!"

</comment><comment><USER15> They threatened her staff; that's why she's speaking out.

I honestly dislike Senator Feinstein. I think she's excused actions that are unacceptable to me and her conception of her constitutional duties to the people of the United States seems off.

However, if this is what it takes to get some of this out in the open, so be it.

</comment><comment><USER16> So someone correct me if I'm wrong, but is the CIA really investigating a leak ..... to the oversight committee?

</comment><comment><AUTHOR> And her actual speech here: [http://www.washingtonpost.com/world/national- security/transc...](http://www.washingtonpost.com/world/national- security/transcript-sen-dianne-feinstein-says-cia-searched-intelligence- committee- computers/2014/03/11/200dc9ac-a928-11e3-8599-ce7295b6851c_story.html?hpid=z1)

</comment><comment><USER17> Ohhhh, I see.

It only 'raises Constitutional issues' and '[undermines] the Constitutional framework' when it happens to _you_.

<comment><USER18> A new category of laws needs to be enumerated: "Laws that only apply to Congress".

This is the reverse of the "Laws that do not apply to Congress" [0]

[0] Whistleblower Protections; Subpoenas for Health and Safety Probes; Keeping Workplace Records; Prosecution for Retaliating Against Employees; Posting Notices of Workers' Rights; Anti-Discrimination and Anti-Retaliation Training

[http://www.propublica.org/article/do-as-we-say-congress- says...](http://www.propublica.org/article/do-as-we-say-congress-says-then- does-what-it-wants)

</comment></comment><comment><USER19> Would someone be willing to share with me their impression of Senator Feinstein? I have thought quite highly of her because every time there's been an issue I care deeply about, I have noticed her name as one of the Senators who wrote the relevant bill or supported it very early on. I recently mentioned this to a friend who had nothing but horrible things to say about her record and it seems she isn't so popular on HN as well (and the politics of HN and those of my friend differ greatly - hence my curiosity about what her reputation is). I feel like I must be misinformed about some other things :)

<comment><USER20> I don't know that much about her in general, but from what I do know she has typically defended the actions of the NSA. So I would think that for her to come out publicly against the CIA like this is a pretty big deal.

<comment><USER21> Yeah, I just got an email from her that said:

> First, please be assured that the NSA does not conduct mass surveillance on > U.S. citizens. Its mission is to collect foreign signals intelligence to > detect foreign national security threats.

Stating the mission as a rationalization to deflect accusations is just silly. Frankly, I see little difference between the two agencies. They clearly are doing whatever the hell they want with our data.

</comment></comment></comment><comment><USER22> So they _are_ getting charged under the Espionage Act, right? Or is that reserved only for whistleblowers now, and not for real spies, spying on their own country? Just wanting to make sure.

</comment><comment><USER23> Feinstein's motivations are confounding.

I suspect that she knows that in the long run of history the Rendition, Detention and Interrogation program will be considered an unambiguous set of war crime's authorized at the highest levels of the US government and seeks to be personally exonerated from these crimes.

Anywho, [https://shameonfeinstein.org/](https://shameonfeinstein.org/)

<comment><USER24> Everyone in this thread seems to be conflating the NSA metadata spying and the CIA torturing people. These are very different things and it seems Feinstein has been (surprise surprise) consistent in her view that torture is bad and the CIA shouldn't do it, and that the NSA's activity has adequate oversight.

I disagree on the latter point, but I have to say the former is more important and can't fault Feinstein for focusing on it.

</comment></comment><comment><USER25> With my tin-foil hat on, this is just a ruse to improve her credibility.

<comment><USER26> At first, I was excited about this and saw it as our generation's "only Nixon could go to China" moment. The spy agency's leading cheerleader within Congress accused them of going too far? Wow!

However, according to the NY Times article, the documents were removed from the computer her staff was using in 2010. It clearly wasn't enough to change her mind in the past 4 years. That makes me rather cynical about whatever she is doing now.

</comment></comment><comment><USER27> "The searches, officials said, were conducted in an effort to determine how committee staff members had gained access to a draft version of an internal agency review of its controversial interrogation program."

"Feinstein confirmed that committee investigators had received and reviewed documents detailing the interrogation policy but said she didn't know whether they were provided intentionally or unintentionally by CIA officials or by agency whistleblowers."

These political games are extremely complex and I don't know if we'll ever know what actually went on here. I suppose it's possible that the CIA leaked these unauthorized documents to Feinstein to give them a pretext for searching her computers.

</comment><comment><USER28> Let me know when the perps are put on trial. The rest is noise.

</comment><comment><USER29> "Even the police began to sit up and take notice."

</comment><comment><USER30> And they found what we all know, her husband, Richard Blum, has had billions steered his way in the form of government contracts.

</comment><comment><USER31> Apparently it goes both ways.

[http://www.mcclatchydc.com/2014/03/07/220273/senate- staffers...](http://www.mcclatchydc.com/2014/03/07/220273/senate-staffers- slipped-secret.html)

<comment><USER32> You could argue that the legislative branch has every right to do this, regardless of if the CIA knew or approved.

After all, even if the CIA declared legislators broke the law (which they probably didn't due to their constitutional oversight role in the government trumping any normal laws), legislators are in fact the only people in government who could retroactively make their actions legal-

<comment><USER33> No, I don't think you can. That isn't how classification boundaries work.

<comment><USER32> The Constitution is more authoritative than some law, which by definition is secondary to the Constitution. Congress could also pass a law that gives all of these committee members full access to everything that exists, and the CIA would be powerless to stop it without breaking the law.

</comment></comment></comment></comment><comment><USER34> Her CSPAN video: [http://www.c-span.org/video/?c4486712/sen-feinstein- accuses-...](http://www.c-span.org/video/?c4486712/sen-feinstein-accuses-cia- searching-congressional-computers)

</comment><comment><USER35> What's the big deal? So long as they've got nothing to hide they shouldn't be worried.

</comment><comment><USER36> First reported 5 days ago, only news once Feinstein says something?

</comment><comment><USER37> The spies will spy. This is nothing new you cant fault them for it. Put someone on trial and maybe things will change.

<comment><USER22> What you said is contradictory. Either they "can't be faulted" or they can, and need to be charged.

However, it doesn't make sense to say "spies will always spy". So are you saying they should have the power to spy on anyone? Even Congress, the president and their overseers? That doesn't sound very good for democracy to me. So if it _is_ legal to do that for them now (which I'm sure it isn't), then it should be made illegal anyway.

<comment><USER37> Spies spy, that's what I am saying. It is in their nature to be deceptive, that is why I said cant fault them for it. Not in a legal way just it is what they do. Until you hold them accountable they have no reason to change.</comment></comment></comment>


Show HN: CakeResume v3 – Making your resume a piece of cake - <AUTHOR> https://www.cakeresume.com/v3 <comment><USER2> I now want my CV to be available as a nice, double layer, chocolate vanilla sponge.</comment>


Ask HN: How do you manage "knowledge" - <AUTHOR> I am not sure "knowledge" is the right word to put it but this is something I've been struggling with, how to manage all the things that are not in your mind yet
Things to Do, Things to Learn, Things to Consume (Watch/Read/Listen), Save good things to find later (Articles, Infographics, Quotes etc), Quick Note, Unsorted Web Links, Thoughts on various topics (Impact of various tech on specific domains, better team building, various design practices etc ), etc
I sometimes spend a couple of days or so restructuring all these and then slowly I drift away to reach the same point where I started from (usually takes less than 3 months) and when I reach that stage my productivity comes to a halt, and the cycle continues
Every-time I try a different Method (Bookmarks, Google Keep, Plain Text notes, OneNote) but nothing seems to be "just right" <comment><USER3> I've found the opposite approach to be more useful: elimination, selectivity, and focus.

For example:

Read only the best books, take notes on them, and absorb them fully. Book lists are good, but they tend to grow unbounded and promote anxiety. It's not difficult to get to a book list of 300-500. Once you're there, there's little reason to update it often. The focus should instead become chewing through the list you've created and periodically retreading some of the best ground you've already covered. Most people who are reading are not truly _learning_ , and even fewer are _applying_. When you find a book that's valuable, expending the additional time and effort to fully incorporate its content and lessons pays tremendous dividends. The best books should be given a chance to fundamentally change how you think. That doesn't happen on a first-pass read.

Aggressively cultivating a frontier of possibilities (I would call this "metaknowledge") is easy, often addictive, generally not useful, and usually detrimental to your emotional health. Most people are not short of possibilities. They're short of the focus, willpower, and grit needed to convert those possibilities into hard-won experience.

<comment><USER4> Ah, now I realize this post is about how to process information, not just representing and storing it.

I once took it upon myself to map as much of my knowledge as I could. (I had heart surgery and wasn't sure I'd live a long time. Turns out I have.) I would collect lists of ideas, and then stare at them until I knew which categories they belonged in, and then split them up into the appropriate category. Long sentences I would compress into shorter ones, often two or three words (and maybe some symbols in an evolving language of punctuation). It's much easier to internalize a concept when it's written in few symbols.

I just looked through my Semantic Synchrony knowledge graph for an example. I found "?is thing = ?has logic". That's shorthand for "to wonder if a pattern is an entity is to wonder if it the pattern has a logic". Kind of abstruse, admittedly, but my point is the compressed version was much easier to internalize.

To create a knowledge base is to create a big collection of mandalas. Meditating on them is rewarding -- new ideas spring from them. There is a spectrum of cognitive processing states, from empty mind, to feeling an idea form, to having the words for it, to deciding it is worth writing down, to reading things (that you or someone else wrote) earlier deemed important. They are all valid and valuable.

Discovering writing was a big deal for humanity, because writing lets you collect a lot of good ideas, and then distill them into a more powerful form. We now have the capacity (with graphs) to process information nonlinearly. This lets us move faster, theoretically processing much more information than linear presentations like books permit.

I've written a little about the advantages of nonlinearity here[1].

[1] [https://github.com/synchrony/smsn- why/blob/master/nonlinear-...](https://github.com/synchrony/smsn- why/blob/master/nonlinear-is-easier-to-organize.md)

</comment></comment><comment><USER5> I use Evernote for exactly this. I organized it with a couple of notebooks: Filing cabinet, Family, Work, Inbox and Templates. I have about 20 tags that I can assign to each note and I rename all notes with the date in the name so a combination of tags, title and notebook alsways yields the result I want.

A couple of takeaways: \- Evernote Premium is well wort hit, it converts all PDFs and images with OCR so that the text within it is searcheable

\- I scan each incoming mail item that's even remotely significant. All bills, letters etc. go into the filing cabinet, should I ever need it.

\- The scannable app (by Evernote) outperforms almost any scanner below 500 dollars. And it's free.

\- The web clipper is awesome for storing websites for future reading

\- I use Evernote not only as a filing cabinet, but also as a notebook for random notes/ideas, repository for my children's drawings, scrapbook, wish list, to-do pad, grocery list, you name it.

We're completely paperless (only some really important papers and drawings are kept) and it's a huge improvement in our lives. As opposed to most people, I can tell you exactly how much our electric bill is, when the last PTA meeting was, what the VIN number of the car is, the exact dimensions of my living room and where/when we bought that nice IKEA vase. All within seconds. I find it liberating how much space in my head is cleared because I don't have to remember all that stuff anymore.

If you're interested in going paperless: [https://www.jamierubin.net/going- paperless/](https://www.jamierubin.net/going-paperless/)

<comment><USER6> As much as I hate Evernote, I still haven't found anything better yet.

<comment><USER7> Evernote app quality has gone down hill considerably in the last two years. Total shame. They really have something useful

</comment></comment></comment><comment><USER8> If it's not interesting enough for me to want to learn it _right away_ then it's not interesting enough. Also lets say you have a normal distribution of 1-10 scale, where 10 is the most interesting thing you ever learned about. And you find an 8 or better, just stop looking and learn that. Because it's very unlikely you will find any better in the near future. Also don't do todo- lists, make schedules instead! In order to add something to your time, you have to remove something else! So is this thing more important then what you currently spend your days doing !? Then set aside time for it.

</comment><comment><USER9> Finer grained changes and _git_. When reading online or books, notes go in _git_. If you don't have time to type and just want to squiggle, try a wacom tablet and inkscape. If you have time, markdown all the things. Learn tools such as _graphviz_ [0], _mscgen_ [1], _mermaidjs_ [2], _syntrax_ [3] and _wavedrom_ [4] to assist with clear communication.

[0] [https://www.graphviz.org/](https://www.graphviz.org/)

[1] [http://www.mcternan.co.uk/mscgen/](http://www.mcternan.co.uk/mscgen/)

[2] [https://mermaidjs.github.io/](https://mermaidjs.github.io/)

[3] [https://kevinpt.github.io/syntrax/](https://kevinpt.github.io/syntrax/)

[4] [http://wavedrom.com/](http://wavedrom.com/)

</comment><comment><USER10> Interesting that you mention those categories. I have an Org file organized into those headings. TODO, TOLEARN, TOCONSUME. Read/watch/listen subdivisions of each. Items are kept roughly sorted when I feel like it or when I update the progress of something (when I watch an episode I will note the next episode and move the show to the top of the category for example.)

On a day to day basis, I filter things through various channels (HN bookmarks, Reddit saves, emails, YT notifications, links shared to Keep from my phone) into that file. Time sensitive things get an email, etc. The system is certainly not perfect but it's good enough for me. It's made me more aware of the information I consume since there's no way I can possibly get to everything I want to.

</comment><comment><USER11> I've been spending some time over the past few months developing a app for myself and family to help with this.

Basically, what I do is:

\- make a list of books that I want to read

\- over time, as I acquire the book, I have a tool to split up the book into separate chapters. These chapters are then loaded into the reading app.

\- every day, I open the app and it chooses a chapter from a random book for me to read

\- as I read, I highlight interesting, useful or difficult sections that I want to remember/study further

\- instead of showing me a chapter, the app can also show a list of highlights from a previously read chapter. During this step it asks me to create little quizzes from the notes - either in the form of cloze replacements or simple q&a. Alternatively I can also create reflection questions or daily actions from the notes.

\- in addition to the previous steps, the tool then also uses spaced repetition algorithm to review the little quizzes that I created from the books I've read

\- every morning it chooses 10 of the actions that I identified and asks me how I am going to implement/practice them today

\- every night it asks me how I practiced those actions

It does a bit more than this, but that's the main part. I've already seen great results from doing this, as I've always found the biggest problem with reading is that it tends to be too passive, and having the review and action steps helps alleviate that problem.

<comment><USER12> This sounds awesome. I've been using a spaced repetition app within my reading process for a while now. But your process looks intriguing! For for the curious here's my current process: [http://www.opensourced.me/2018/02/11/how- i-remember-what-i-r...](http://www.opensourced.me/2018/02/11/how-i-remember- what-i-read/)

Can your app be made publicly? I'd love to experiment with your setup.

</comment></comment><comment><USER13> I have struggled with this same issue as I would keep things in a paper sketch pad or in something like a bookmark or note manager.

It just seemed too difficult to bring together all my ideas.

I recently picked up a copy of the 2001 GTD book and I am working through getting into the process of using an app called Things 3.

Getting it all out of my head and being able to partition it into projects even if they are someday type things has been very powerful.

</comment><comment><USER4> Be like Google! Build a graph!

I use a free, open-source knowledge graph database[1] with an Emacs frontend. It resembles tree-based knowledge schemes like FreePlane or Org Mode, but things can have multiple parents, not just multiple children. It offers full- text search via Apache Lucene, which resembles regular expressions but also offers boolean operators. It also lets you selectively merge your knowledge base with other peoples' \-- share what you want with who you want, without having to segment your experience of the data into separate files.

(I am one of the developers.)

[1] [https://github.com/synchrony/smsn/wiki](https://github.com/synchrony/smsn/wiki)

<comment><USER14> The intro video looks good. I will have to try this.

Currently I use Zim wiki.

</comment></comment><comment><USER15> There's this habit I've been trying to inculcate since the past few months → Writing 10 ideas every day.

Whatever things I read about technology (most of them are research papers from Hardware Architecture / Emerging Tech section of ArXiv which I visit daily, The Morning Paper by Adrian Colyer, The Ryg Blog by Fabian Giesen et al) - <USER2> try to collate and correlate all these ideas and try to imagine something of my own.

Fun PS → James Altucher has promised we will get a seat in the Justice League Watch Tower for sure if we imbibe this habit of writing 10 ideas daily. Such is the power of this idea.

</comment><comment><USER16> What started off as a few small lists have expanded (over ~5+ years) into a full-fledged "notebook" with pages on various topics.A lot of pages in my Zim notebook are lists of resources and tips, organized by theme (eg: speaking/presenting, things to buy, digital currency, sci-fi to read) i.e. hard to come by nuggets whose collective perspective seems valuable. I can look up things by theme whenever I seek, and also add to those pages whenever I find a new nugget. This structure also implicitly encourages spaced repetition when used for ideas/concepts [1].

One reason I like this approach is that it allows me to de-clutter my working memory, eg: number of open browser tabs [2]. It helps me avoid FOMO. As Scott Hanselman said: "It's not what you read, it's what you ignore". I keep adding to my lists over time, and this also helps me get a sense for which themes/resources/recommendations keep popping up repeatedly, which helps me prioritize what to spend time/money on.

I use the Zim desktop wiki, on linux [3]. Also, I download a PDF copy of any thought-provoking online content that I really like, since I don't want to risk the links not being around years later.

[1] [https://en.wikipedia.org/wiki/Spaced_repetition](https://en.wikipedia.org/wiki/Spaced_repetition)

[2] I loved Firefox tab groups, and am on the lookout for alternatives compatible with the new Quantum FF.

[3] [http://zim-wiki.org/](http://zim-wiki.org/)

</comment><comment><USER17> Teach others about what you want to acquire. That's why I believe that blogging is a very efficient exercise if you want to truly learn something.

Teaching requires you to absorb, eliminate and bring order into your thoughts. This is when learning happens.

Regarding what tool I'd recommend, I use Scrivener. As I mostly write in order to learn, and Scrivener is a writing tool, I've come to use Scrivener for almost everything.

</comment><comment><USER18> OmniFocus for all actionable items Pinboard for tagging links Google doc listing quotes I like Instapaper for reading later YouTube for watch later Overcast + huffduffer for listen later

All of these work/sync cross my desktop laptop and iPhone.

In progress is a wiki type system for potentially typing it all together. Dropbox Paper has been great for the wiki part.

</comment><comment><USER19> I'm guessing you've considered it, but a wiki is a straightforward, highly flexible solution. Some wiki software supports structured data (alongside unstructured, of course), if you want that.

In my own experiments, I've found that the speed of the interface for input is very important. There's not enough time to input everything I would like; the longer input takes, the less knowledge I capture. Many wikis are weak in this regard; input requires a lot of reloads and scrolling, mainly because of the different modes for reading and editing:

1\. Load the page on which you are inputting the data. Read it to decide where the new info belongs.

2\. Click edit, wait for page reload.

3\. In edit mode, scroll and read the page again to find the place you identified in step 1.

4\. Add the new knowledge.

5\. Click save, wait for reload.

6\. Scroll and read to find the new knowledge on the updated page; verify that it's what you want.

7\. If it's not what you want, return to step 2.

</comment><comment><USER20> Definitely agree with the synthesize, select, focus approach, though I find software can make this process cleaner / more enjoyable. You just have to guard against it (the software) becoming an end in itself. For suggestions, check out this HN discussion from a few years back: [https://news.ycombinator.com/item?id=8270759](https://news.ycombinator.com/item?id=8270759) . Pay particular attention to Ixiaus' emacs org mode comment. That's pretty close to my ideal solution.

</comment><comment><USER21> If I must do something it goes on the to do list. For everything else, if I don't remember then ah well I guess it wasn't that important.

</comment><comment><USER22> I use the tool I finally wrote for this (work in progress but very stable and I use daily; AGPL):

[http://onemodel.org](http://onemodel.org)

</comment><comment><USER23> I created [http://bigpictu.re](http://bigpictu.re) exactly for this. Maybe you ll find it useful.

<comment><USER24> Mobile devices not supported (yet).

I really wanted to see what it's about but I guess I won't find out.

You could at least add some pictures and a simple description to entice people to go to a desktop to see it.

</comment></comment><comment><USER25> Bookmarks aren't enough. You lose old material when the URL changes or the site gets taken down. And you can't search the content of bookmarked pages.

Text files don't allow you to embed images, video. Structuring of data is too one-dimensional.

Other document files take too much time and energy to search and maintain.

Online services like Evernote cost money and have too many annoying quirks.

Mediawiki is too slow and bloated. It's editor sucks and it takes too much work to upload and embed images.

BookStack is the way to go:

[https://www.bookstackapp.com](https://www.bookstackapp.com)

It's a wiki. It's fast. It's searchable. It's got a great WYSIWYG/Markdown editor with code highlighting.

You can manually upload images or upload them by pasting then directly into the page.

It's Book-Chapter-Page organization is easy and intuitive.

It's also free, open source, and easy to self-host.

</comment><comment><USER26> We have a bot which includes relevant discourse forum links in our GitHub issues as links.

We make it a point to summarize discussions from Slack in discourse after which the discourse topic is closed.

We also use Trello but not for extended discussions, just for prioritizing.</comment>


Tesla's Autopilot was engaged when Model 3 crashed into truck, report states - <AUTHOR> https://www.theverge.com/2019/5/16/18627766/tesla-autopilot-fatal-crash-delray-florida-ntsb-model-3 <comment><USER2> "our data shows that, when used properly by an attentive driver who is prepared to take control at all times, drivers supported by Autopilot are safer than those operating without assistance"

This is nonsense. The whole core of the argument against this sort of system is that it _induces_ inattention. The fact that Tesla consistently refuses to share full data on identical models driving with autopilot turned on, enabled but not turned on, and not enabled is extremely suggestive that the overall safety rates for autopilot on are not better.

(edited for formatting)

<comment><USER3> That might very well be the case.

Still we as a society usually decide not ban things that hurt only irresponsible people. There is an exception to this for children, but they are banned from driving already.

If the autopilot crashes start resulting in a number of deaths outside of the drivers car that might shift the public opinion.

<comment><USER2> Lawn Darts only killed one person before they were banned, I think Autopilot is at 3 or 4 and counting, and Uber's driverless system has killed at least one pedestrian.

<comment><USER4> Never heard about Lawn Darts.

> In the previous eight years, 6,100 people had been sent to the emergency > room due to lawn darts in the U.S. Out of that total, 81% were 15 or > younger, and half of them were 10 or younger. On the week the commission > voted to ban the product, an 11-year-old girl in Tennessee was hit by a lawn > dart and sent into a coma.

From wikipedia. It's a bad example.

<comment><USER2> It once was the canonical X in "we banned X why haven't we banned Y" (where Y is something like "assault rifles" or "peanuts") but perhaps only for people of a certain age. A more recent example: the Boeing 737 MAX was grounded after two accidents out of a few hundred thousand flights.

</comment></comment></comment></comment></comment><comment><USER5> Beats me why hasnt Tesla auto pilot been shut down already. If the car is on Autopilot then people will get used to it and use that time to check on mail, call a friend or simply doze off. Some of these guys will end up getting killed and 'we told you so' simply doesnt cut it.

EDIT: The accident rate is a statistic thrown by Tesla and only serves the purpose its meant to serve. Do we have any statistics on accidents caused comparing the situation when car is on auto-pilot vs similar cars driven by similar drivers under similar conditions without autopilot ?

<comment><USER6> Because the accident rate is still lower than it is with humans driving.

<comment><USER7> Objectively not true....Autopilot is only used in a small subset of driving situations that are less risky than overall driving. And yet in the last 8 months alone, Autopilot has caused 3 easily avoidable deaths.

Autopilot is getting _worse_ not better with time, and Tesla's tendency to introduce regressions (as with the Bay Area crash) means any temporary improvements in driving AI are just that--temporary.

<comment><USER8> > And yet in the last 8 months alone, Autopilot has caused 3 easily avoidable > deaths.

This number by itself is absolutely meaningless without more context.

In 2017, 37,133 people in the United States died in an automotive crash. It is _expected_ that some number of Tesla owners will die in a crash, regardless of currently engaged safety features.

Tesla has produced around 600,000 vehicles in total, including over 100,000 Model 3 vehicles.

I'm not making any claim or dispute regarding the effectiveness of Autopilot, whether or not it's improving. I'm just saying, making that statement you made is meaningless at least and misleading at most.

<comment><USER7> _I 'm just saying, making that statement you made is meaningless at least and misleading at most. _

I'm just pulling a page from Elon Musk and Tesla's marketing department.

</comment></comment></comment></comment></comment><comment><USER9> Here's a recap of the pertinent NTSB's conclusions from the last time this happened. How many will apply again this time?

"There was sufficient sight distance to afford time for either the truck driver or the car driver to have acted to prevent the crash."

"The Tesla's automated vehicle control system was not designed to, and did not, identify the truck crossing the car's path or recognize the impending crash; consequently, the Autopilot system did not reduce the car's velocity, the forward collision warning system did not provide an alert, and the automatic emergency braking did not activate."

"If automated vehicle control systems do not automatically restrict their own operation to those conditions for which they were designed and are appropriate, the risk of driver misuse remains."

"The Tesla driver was not attentive to the driving task, but investigators could not determine from the available evidence the reason for his inattention."

[https://www.ntsb.gov/investigations/AccidentReports/Reports/...](https://www.ntsb.gov/investigations/AccidentReports/Reports/HAR1702.pdf)

</comment><comment><USER10> Doesn't appear to differ from previous Tesla autopilot accidents where the vehicle couldn't detect a tractor trailer crossing the path of travel with cameras or front facing radar. Interesting that Autopilot had only been activated for 10 seconds prior to the incident occurring.

I am not a domain expert. Front facing radar and cameras alone is clearly inadequate for forward facing object detection [1] (unless we're going to mandate radar detectable skirts and images superimposed on the sides of tractor trailers for vehicle detection). Would solid state LIDAR (essentially laser ranging I suppose, as you're not building a 360 degree point cloud) solve this particular edge case? Some automakers are including laser headlights in their vehicles [2] (although I don't believe this is yet approved for the US market); would it not make sense to convert the headlights into front laser ranging sensing systems along with their illumination function?

[1] [https://www.caranddriver.com/features/a24511826/safety- featu...](https://www.caranddriver.com/features/a24511826/safety-features- automatic-braking-system-tested-explained/)

[2] [https://www.osram.com/am/specials/trends-in-automotive- light...](https://www.osram.com/am/specials/trends-in-automotive- lighting/laser-light-new-headlight-technology/index.jsp)

<comment><USER11> I don't think we can conclude that cameras are inadequate for forward object detection. Only that the processing systems used so far were. This can be a matter of training of the neural networks and the amount of processing power used in the computing units. Radar is limited, as long as trailers in the US are allowed to have such high gaps to the ground. A lower bar on the sides would both help the collision detection systems as well as reduce the crash itself.

<comment><USER12> > _" Radar is limited, as long as trailers in the US are allowed to have such > high gaps to the ground."_

One of these crashes involved a firetruck, which unlike a semi-trailer, does not have a large gap underneath it.

Radars are limited period. The radars used by Tesla lack the angular resolution to distinguish between a stationary object next to the road (e.g. a building or parked car) with a stationary object parked right in the middle of the road.

<comment><USER11> _One of these crashes involved a firetruck, which unlike a semi-trailer, does not have a large gap underneath it._

That fire truck wasn't crossing the road, it was at the road side, which creates a different situation. The problem with high trailers is, that they very much look like a bridge to a radar. In any case, a proper side bareer can prevent deadly accidents.

<comment><USER12> If the radar cannot distinguish between a bridge with five meters of clearance and a "bridge"(trailer) with a single meter of clearance, then the radar simply lacks the angular resolution to be effective. It's the same exact issue as it being unable to distinguish objects on the side of the road and objects in the middle of the road.

It's insufficient angular resolution for the application, no matter which way you slice it.

</comment></comment></comment></comment></comment><comment><USER13> It seems like this is a case where the autopilot thought that the truck was a stationary object. Based on my reading of the press release, it seemed like the truck was turning across the car's path, which should look like a stationary "bridge" to the model and subsequently ignored.

This seems to be a hard problem where you don't want the model to false positive on a stationary object on the side of the road and slam on the brakes.

<comment><USER14> > Based on my reading of the press release, it seemed like the truck was > turning across the car's path, which should look like a stationary "bridge" > to the model and subsequently ignored.

So if I understand you properly, an adversarial attack against Tesla autopilots would be to suspend a ladder across the road at windshield height?

"Vulnerable to being clotheslined" seems like a bit of an oversight.

<comment><USER15> How many human drivers would be able to avoid that same thing though? Most of the reason we can safely move cars is because most people follow the rules and aren't murderers. There are plenty of "attacks" you can do against human drivers too.

<comment><USER16> I agree with your general message but basically no human drivers are going to plow into the side of a a semi truck or a partial lane obstruction with no attempt to afford it.

<comment><USER17> Really? So no one ever is going to take a quick glance at their phone, not see the truck start to pull out, and do the exact same thing this Model 3 did? No one? I can say with 100% certainty that this exact same thing has happened at least once in history to a normal driver who simply got distracted.

</comment></comment></comment></comment></comment><comment><USER18> I am beginning to get frustrated with news surrounding both Tesla autopilot crashes, and self driving car crashes. I understand that we are seeing lots of news about it because it is new, and people are scared that self driving cars are going to kill people. But can you imagine if an article trended every time someone got into an accident while using cruise control?

<comment><USER19> This is about surrender responsibility to a piece of software and trust it 100% with your life and/or your family members lives or take responsibility and engage in driving the car. The news, and legitimately so, are covering the unusual - surrender your abilities, judgments and consequently and directly your life, to faulty saftware and hardware.

</comment></comment><comment><USER20> I have said this to my friend, so far all autopilot accidents resulted in Tesla drivers death, but there is a person out there, hopefully not a child, whose car Tesla will ram on autopilot and their death will put an end to this stupid advertising/naming with fine print excuse.</comment>


Fake and cheap 3D metaball - <AUTHOR> http://blog.edankwan.com/post/fake-and-cheap-3d-metaball <comment><USER2> I read this as meatball and was terribly confused for about a minute. Still very interesting article on 3D modelling.

Now I'm hungry...

<comment><AUTHOR> I was hungry before I opened the page and I saw meatballs. It took me minutes to recognize the meta vs meat.

</comment></comment><comment><USER3> This is pretty cool. The technique reminds me of a similar rendering trick outlined in this Nvidia presentation ([http://developer.download.nvidia.com/presentations/2010/gdc/...](http://developer.download.nvidia.com/presentations/2010/gdc/Direct3D_Effects.pdf))

</comment><comment><AUTHOR> The corresponding blog article: [http://blog.edankwan.com/post/fake-and- cheap-3d-metaball](http://blog.edankwan.com/post/fake-and-cheap-3d-metaball)

<comment><USER4> That gives more background, so we changed the URL to that from [https://www.clicktorelease.com/code/bumpy- metaballs/](https://www.clicktorelease.com/code/bumpy-metaballs/). People who are interested should look at both.

<comment><USER5> I was confused at first, because the authors are different for these two things.

The current link, fake and cheap metaballs, references the original bumpy metaballs, but only to compare the fast-but-fake version to a slow and complete version.

<comment><USER4> I didn't realize that. So what's the best URL?

<comment><USER5> I can't comment on that directly, except to say that both are very interesting and that I enjoyed the blog post more.

One is a beautiful demonstration of metaballs, and the other is a technical description of how to get a similar result without the same cost.

I guess ideally they would have separate threads, but that horse has probably bolted. HN doesn't really have the capability to have a post that says: here are a collection of interesting posts by different people about this interesting subject, beyond the comments like we have here or a self-post with some discussion. That's probably ok.

</comment></comment></comment></comment></comment><comment><USER6> Title should include that this is a WebGL experiment.</comment>


Angular 2 coming to Java, Python and PHP - <AUTHOR> http://blog.jhades.org/angular-2-coming-to-java-python-the-first-multi-language-full-stack-platform/ <comment><AUTHOR> Its really exciting for this possibility. On the other hand, i am really convinced at this time that Javascript is a better language specially with ES6+, and that the node runtime is a better environment in terms of ease of use (developer ergonomics), performance, the fact that its thread safe (at the application level) by design and modular (via CommonJs).

I hope this does not mean in a few years that we are running Angular inside Websphere, but it might be the case.

</comment><comment><AUTHOR> The PHP reference is found in Github -> [https://github.com/angular/universal/issues/281](https://github.com/angular/universal/issues/281)

And this is the Java issue, there is already a POC -> [https://github.com/angular/universal/issues/280](https://github.com/angular/universal/issues/280)</comment>


Ask HN: GitHub Issues or alternative for non-tech related projects? - <AUTHOR> I'm love GitHub Issues and would want to use it for task management / todo-list for other team members for general tasks.<p>Are there any good alternatives for this, or do anyone have experience with using GH Issues for this? <comment><USER2> What is it you like about github issues, compared to all the other man an board and to do list software out there?</comment>