Where do you colo your servers? - <AUTHOR>

<comment><USER2> It depends on the level of reliability that you need, and the level of control...

At the company I work for, we lease space in datacenteres in a few spots around the country. [1]

The thing is, we do this because we have specific hardware requirements which require that we use our own hardware, and ensure we can't use anyone else's stuff very easily. The problem is, we pay through the NOSE for it.

IMO, the optimal choice for most startups right now is to have _very_ few servers (if any) that their run in-house, and to host the rest with other people.

There's a couple of reasons for this- The first is reliaiblity. Hosting companies have trained staff watching over the servers, and monitoring for a failure. While you might do a lot to watch for failures [2], you'd save sleep and sanity if you only needed to monitor for logic failures, and had someone else (the hosting co) helping watch for hardware problems.

The second major reason is Bandwidth! Getting quality, symetric bandwidth run to your door costs a LOT of money.. SpeakEasy DSL can get you started [3], you'll struggle to get anything higher that a 6.0/1Mbit line- For hosting, you need LOTS of upload- That 1Mbit will get taxed out quickly.

Take a look at Bandwidth offerings by Colos- Often you get Royally screwed, when compared to renting a dedicated server from them. Companies like ServerMatrix will give you 1.5 TB of monthly bandwidth for under $100.... That'd cost hunderds for the bandwidth alone in most colos.

The dedicated server places tend to assume you won't fully use the line, so they oversell- That's how you can get th e great deals on bandwidth.. The nice part is that if you go with a at least semi-reputable place (servermatrix, rackspace, etc) they have MORE than enough to cover you, even if they'll a littel annoyed that you use it all ;)

Read your TOS carefully.

Amazon's EC2 program is amoung the best for hosting, if you can get into it. It allows you to dynamically scale up the number of servers, and has very decent prices. This is among the best options for a startup because you can load balance to handle spikes in traffic, such as Digg, Techcrunch or Slashdot.

One other point I'll briefly touch on is depreciation of assets- If you buy your own servers, and add them to a colo, when they get old, you lose a lot of the initial value. You're often not going to want to keep the old servers in the farm, once they're so low they'll do more harm than good. With renting servers, along with the additional bandwidth and uptime, you get the advantage of being able to just say "I'm done with these servers.", and lose nothing.

-Colin

[1] I can't actually tell you the places for confidentiality reasons, but it's not important for this discussion anyway.

[2] Nagios Alerts to the Cellphone are a good start..

[3] Chosen because of good TOS, and reputation, but with the Bestbuy deal, be on your guard here. The situation could change quickly.

</comment><comment><AUTHOR> Just wondering, for those of you running your own servers, where do you keep them?

I started out with my boxes in my dorm room, under my bed :) Kept the bed warm, and I appreciated the "white noise," but reliability left something to be desired.

Any other stories? Does anyone know of a cheap colo in Boston/SanFran that will rent you 1U at a time?

<comment><USER3> I've had a box at Serverbeach for a few years, and they've been very reliable, and are pretty cheap. There's been a single issue I was unhappy about, which was a mandatory IP change for my box due to a reconfiguration of their network (after they were bought by peer1, a fiber/bandwidth company).

All else has been nigh on perfect. They do expect that you'll handle everything yourself that can be handled remotely, though I wouldn't think that was a problem in this crowd. :)

Edit: Er, and if you do choose to go with them, email me for a discount code if you want one.

<comment><AUTHOR> Cool - my brother uses Serverbeach and I've heard good things from him as well.

Oh, and I forgot to mention, Steve from Reddit.com was saying they've had a good experience with Server City, which will rent out fractions of a cabinet. I think they're based in Cambridge.

</comment></comment></comment><comment><USER4> WebHostingTalk.com for all of your questions about where to host and with whom. We use WebAir based in New York, I've got a direct line to the CEO whom is always willing to help in a sticky situation. The only problem I've ever had with them is during setup of our last system, they gave us the wrong speed Xeons in our quad box, which was fixed within 30 minutes.

</comment><comment><USER5> Just thought I would chime in here, from socialhelix.com

we are looking for a good deal too in the midwest, we are located in Milwaukee, WI and it seems like chicago is cheaper than Milwaukee area colocation services.

For now we are making use of a speakeasy 6/768 dsl line for our beta servers.

If barcampUSA panned out, we were going to offer our service to the public earlier and we were looking at getting a dedicated colo for 1-2 servers, but for now, our dsl is fine.

</comment><comment><USER6> We're using <http://www.futurehosting.biz/> now for our VPS. This is just a dev server though.

Go to <http://www.webhostingtalk.com/> and spend a couple hours there reading. You'll find some sharp folks on our end of things, and also some vendors who hang out and build their brand. Very helpful.

</comment><comment><USER7> NAP of the Americas in Miami. World-class facility. It houses one of the root DNS nodes and also a lot of E911 equipment. Expen$ive but it's the only place in the States with good ping times to both Europe and SA. They handled the 2004-5 hurricane season with no downtime. It takes some cojones to put a datacenter 100 meters from the ocean.

<comment><USER8> It takes even more cojones to host your applications there ;)

</comment></comment><comment><USER9> We use Rackspace for Paragent.com. They are a little more expensive, but they handle all the os-level patching, backup, etc. We basically just worry about the application. It lets us focus on the aspects of the business we are best suited to handle, and leave the os-level management to people that devote a lot more resources.

</comment><comment><USER10> I've used cari.net/complexdrive.com in san diego. They are pretty good.

<comment><USER11> HA! cari.net/complexdrive.com has bad bandwidth quality and poor facilities. aplus.net is also bad. And for the love of fnord avoid ADN. These are all poor choices in San Diego. cari.net does have good prices though.

</comment></comment><comment><USER12> CI Host... Terrible... Probably going to switch.

<comment><USER13> I feel your pain. Was a CI Host customer for YEARS and then left them. They got BAD. An old company of mine still has a half-rack with them, but only because of cross-connects in place we don't want to pay to move. We also put gaming servers up there on occasion, since we are paying for it.

Took a lot of customers with me when I left. I couldn't afford to support them on CI Host anymore. Too many problems. They pulled the power on our servers without warning and pulled out the power backup to upgrade it (without warning, mind you), then realized they didn't have a spare unit and left the whole rack unplugged. Had to drive out there and fix it myself.

Moved my stuff to The Planet, but have had problems with them after the merger with EV1. The support panel has slightly reduced functionality and some broken pages. Their support team takes up to thirty minutes to respond to issues. Just sad. It used to be great.

Colo4Dallas has pretty much non-responsive support teams. My employer is moving our remaining servers out of there. Took them forty-five minutes to get around to a down production box. That wasn't even to fix it, just to check it.

Have GREAT luck with Rackspace at work, but definitely more expensive. Very responsive. Preemptive maintenance. Prompt notifications of hardware issues, often before we notice them. IMMEDIATE support.

After they resolved some network instability issues, Sagonet was really good for an old venture of mine. Good prices too.

Geez.....I feel like an unfaithful lover after listing off all these hosts I have used. Probably even a couple more I can't remember.

</comment></comment><comment><USER14> In amazon's data centers! Go EC2 ;)

</comment><comment><USER15> Softlayer. Pretty good service.

</comment><comment><USER16> Mediatemple. Excellent.

<comment><AUTHOR> Wamily.com actually switched off MT because of downtime & mysql problems.

MT will definitely be one of my first choices when they get all that sorted out, though.</comment></comment>


Ask HN: How can I program till late (midnight) and have a good nights sleep? - <AUTHOR> <comment><USER2> Programming till midnight is not programming till late :-)

4am is..

And if you have been coding until 4am and want to start your day not later than 8am - bulletproof coffee might be what you need. Tried it and this worked nicely in my case (though I tend to limit such explosions of creativity since also in my case they later result in depressions of creativity)

</comment><comment><USER3> It's all about sleeping late then. You can't cut many corners on this.

I'm the opposite: I get my best work done early (4 or 5) in the morning before anyone gets up. The only way for me to get a good night of sleep is to go to bed by 9 or 10pm. I need 6 hours sleep to be functional without a load of coffee, 7 to be rested and 8 to be peaceful. It is the rare exception that can get by with 4.

</comment><comment><USER4> Don't drink caffeine 4-6 hours before midnight.

Install F.lux or reshift. They adjust your display's color temperature automatically to nightime.

<comment><USER5> redshift*, had to correct you, big fan and use it all the time.</comment></comment>


Javascript Arrays and Functional Programming - <AUTHOR> http://zabanaa.github.io/notes/functional-programming-and-javascript-arrays.html <comment><USER2> I accept that this is a widely used phrase now but I never understood why just using map/filter/reduce and avoiding state is enough for code to be called "functional programming".

Most functional languages feature pattern matching, algebraic data types, purity, currying, strong typing, type inference, recursion instead of loops and types that cannot be null. It's a completely different style of coding. Adding map/filter/reduce to an imperative language doesn't get you close to the level of robustness and ease of implementation for that safety you'd get in a functional language.

<comment><USER3> Wiki sums up the term well enough:

 _" In computer science, functional programming is a programming paradigm — a style of building the structure and elements of computer programs — that treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data."_

To that end map-reduce fits and can be referred to as 'functional programming'. The other things you mention are just great language features, but not specific to functional languages. Imperative C++ also has type safety, Swift has non-null types, etc.

<comment><USER2> > The other things you mention are just great language features, but not > specific to functional languages. Imperative C++ also has type safety, Swift > has non-null types, etc.

All those features in combination are shared by the vast majority of languages called functional programming languages. They're pretty much the defining features of functional languages was my point. Other languages can have a subset of the features but it doesn't make them functional languages. See: [https://wiki.haskell.org/Functional_programming](https://wiki.haskell.org/Functional_programming)

The Wikipedia quote is really vague.

<comment><USER4> None of pattern matching, algebraic data types, strong typing, type inference and types that can't be null are specific to functional, nor do they make it any more functional. Purity isn't a language feature, it's a measure of how functional a language is, so it's tautological to say functional languages share purity. Currying is a byproduct of first class functions, not of functional programming, and currying is common in JavaScript and Python and other non-functional languages including C++. Forced recursion instead of loops would just be a byproduct of not having mutable state. And a good alternative to a recursive loop is a call to map() or reduce().

> The Wikipedia quote is really vague.

I think the Wikipedia quote is clearer and FAR more precise than a common feature set. Functional programming "treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data." That is the definition of functional, and it's the _whole_ definition. No mutation, that's it. Including the features you wrote about is not functional programming, it's other things.

That's important to consider the precise definition if you're going to critique someone for talking about functional programming in a certain way. The author was pretty clear that this is functional programming concepts as applied to arrays in JavaScript, he never claimed that this post covers functional programming in general.

Map, filter & reduce are examples of functional programming, and if they were all you used, and you had only const and no var, then you might have a functional program. @zabana didn't claim that this is all you'll ever need.

<comment><USER2> > Functional programming "treats computation as the evaluation of mathematical > functions and avoids changing-state and mutable data." That is the > definition of functional, and it's the whole definition. No mutation, that's > it. Including the features you wrote about is not functional programming, > it's other things.

Are you meaning that "no mutation" is the definition of functional programming? That's such a vague definition I can't see how it is useful personally. "Stateless" is already a word that covers that.

If you're going to quote Wikipedia, keep going to the "Concepts" section that lists language features: "A number of concepts and paradigms are specific to functional programming, and generally foreign to imperative programming (including object-oriented programming). However, programming languages are often hybrids of several programming paradigms, so programmers using "mostly imperative" languages may have utilized some of these concepts.[40]"

> The author was pretty clear that this is functional programming concepts as > applied to arrays in JavaScript, he never claimed that this post covers > functional programming in general.

I even said I accept it's common usage of the phrase and I was just wondering why that was.

<comment><USER4> > Are you meaning that "no mutation" is the definition of functional > programming?

You can see that I was intentionally summarizing wikipedia's definition in one word to make my point more clear that functional does not mean type inference or currying, right?

> That's such a vague definition I can't see how it is useful personally. > "Stateless" is already a word that covers that.

Since I'm not offering "immutable" as the complete and final definition for functional programming, maybe you can find a better one to make your original point clear? Because the list of features you offered as defining functional programming doesn't define functional programming very well.

IMO, the entire first paragraph of Wikipedia's article on functional programming is pretty good. It repeats the concept of immutability in a bunch of different ways with clarifying examples, to make it more concrete and less vague.

I don't personally like "stateless" because it's not strictly true. Functional programs have state, and the state is contained in the stack. The point of functional programming is that the language avoids side effects, and the most direct word for something that avoids side effects is "immutable", not "stateless". I can accept that common usage of stateless is sometimes referring to immutability.

Note that WP's definition of "state" agrees with that, and talks about declarative state being indirect, as opposed to being stateless: "In declarative programming languages, the program describes the desired results and doesn't specify changes to the state directly."

[https://en.wikipedia.org/wiki/State_(computer_science)](https://en.wikipedia.org/wiki/State_\(computer_science\))

> I even said I accept it's common usage of the phrase and I was just > wondering why that was.

Because it's true and meets the definition? Your objection is too vague. What, exactly, is wrong with calling map/filter/reduce "functional"? In my book, referring to map as an example of functional programming doesn't stretch the strict definition of functional programming _at all_.

map() and reduce() were some of the very first things I learned about when I was introduced to the concept of functional programming in Scheme, more than 20 years ago.

The post didn't claim that map, filter & reduce were 'enough for code to be called "functional programming"'. He only ever implied that map, filter & reduce are _part_ of functional programming. That is absolutely true, always has been, and isn't a matter of common usage.

</comment></comment></comment></comment></comment></comment><comment><AUTHOR> Author here: I wrote this article mainly as a note to self that I could refer to in the future and as an exercise to help me learn the concept and force me to structure my thoughts into a coherent blog post. I thought I'd share it for those of us who are more intermediate and would like to pick up a few tricks along the way. Thank you all for the positive (and not so positive feedback)

<comment><USER5> Reading your blog allowed me to better understand the reduce function for the first time and I want to thank you for that.

</comment></comment><comment><USER6> I don't know if I'm delirious but I remember a few years ago when articles like this were very common on HN. Then all of a sudden it felt like everyone had "learnt" it and all that got upvoted was very complicated articles explaining some esoteric JS thing.

Now it seems we're back again with. Another example is the article explaining "this" which is on the front page again. It almost feels cyclic, like it's time for the new generation of programmers to learn the quirks.

It's probably an incorrect observation but it feels like the front page has developed with me. Like we all started on square 1, evolved together and now it's time to graduate and leave room for the new generation.

<comment><USER7> Maybe hacker news is starting to gain popularity with students, who are trying to follow the "pro hackers".

</comment></comment><comment><USER8> Some more practical examples

        // Grab unique
        [1,1,2,3,4].filter( ( item, index, array ) => array.indexOf( item ) === index )
        // => [1,2,3,4]

        // Flatten
        [[1,2],[3,4]].reduce( ( result, item ) => result.concat(item), [] );
        // => [1,2,3,4]

Not sure why the author missed `sort`.

        // Sort
        [1,2,4,3].sort( ( a, b ) => a - b )

<comment><USER9> The first is slow (O(n²) where O(n) will do), and the second is very likely to be slow (probably the same).

<comment><USER8> The good old question about sacrificing performance for readability. Anyway these days filter is not so bad.

[1] [https://jsperf.com/array-uniq-filter](https://jsperf.com/array-uniq- filter)

<comment><USER9> And insertion sort is not so bad with 20 elements. It doesn't take much for it to start falling over, though.

[1]: [https://jsperf.com/array-unique-filter-2/1](https://jsperf.com/array- unique-filter-2/1)

</comment></comment></comment></comment><comment><USER10> JavaScript has an advantage on Python in this style, because Python lambdas are hideously ugly and JS anonymous functions are less hideously ugly. In Python it tends to be cleaner (and sometimes faster) to write list comprehensions instead of map() and filter(), especially since Python also has lazy generator comprehensions.

<comment><USER11> Python actually discourages using map anf filter. Which is kind of weird to me but whatever.

<comment><USER10> Well in some cases it really is more efficient.

        [func(x) if x in collection if cond(x)]

makes a single pass over the data and gives you a list, but

        list(map(func, filter(cond, collection)))

makes two passes _and_ requires some extra function calls.

I think the real reason is perceived legibility on the part of the Python core devs. I seem to recall a document from a while ago in which GvR himself came out in favor of list comprehension style. "Explicit is better than implicit".

<comment><USER12> Both map and filter returns an iterator, so you only iterate once when creating the list.

</comment></comment></comment></comment><comment><USER13> Thank you for this! I've been learning JS for React and .reduce, .every and .some are new to me! Super helpful

</comment><comment><USER14> As a side note, using .push() isn't something I would consider being functional because immutability is a core concept of functional programming.

Too bad, JavaScript makes it hard to do it that way, in that concrete example using Object.assign() and .concat().

<comment><USER15> > immutability is a core concept of functional programming.

That depends very much on your definition of FP (or how "pure" the FP is, depending on your definition of "purity").

<comment><USER14> Fair point. All my touch points (Lisp, JavaScript, even a bit Haskell and several books) all proposed immutability as being a fundamental principle.

Would you mind expanding a bit on that point in case I totally misunderstood something?

<comment><USER15> You did not "totally misunderstand something": Immutability is a virtue in FP, you _should_ write in this style. But it is only a "fundamental principle" and "core concept" in _highly pure_ languages - and even Haskell allows mutable variables[1].

Sometimes you just need them, e.g. when handling potentially very large vectors in finite memory. CL's (sort ...) for example mutates the input sequence (or "destructively sorts" it [2]).

[1] [https://wiki.haskell.org/Mutable_variable](https://wiki.haskell.org/Mutable_variable) [2] [http://www.lispworks.com/documentation/HyperSpec/Body/f_sort...](http://www.lispworks.com/documentation/HyperSpec/Body/f_sort_.htm)

</comment></comment></comment></comment><comment><USER16> For more fun with FP checkout lodash fp [https://github.com/lodash/lodash/wiki/FP- Guide](https://github.com/lodash/lodash/wiki/FP-Guide)

Also read about using flow over chain

</comment><comment><USER17> Great article, but questionable formatting: `return {name: player.name, age: player.age }`

It also seems _wrong_ to mutate the accumulator in the reduce example, it would just be simpler to use `forEach` and use a variable defined outside if you're going to write code this way?

<comment><USER8> Wouldn't do it with variable, since it will make your function impure [1]

1 : [http://www.nicoespeon.com/en/2015/01/pure-functions- javascri...](http://www.nicoespeon.com/en/2015/01/pure-functions-javascript/)

<comment><USER18> That's the GP's point though: it already is impure! If you rewrite as

        let acc = {...}
        footballPlayers.reduce(...,acc)

It should become clear: acc is an external variable that got mutated by the reduce.

<comment><USER19> Indeed. A pure function should not depend on and / or mutate external variables.

I'd do it like this (yay for one-ish-liners!):

      const playersByCountry = footballPlayers.reduce((acc, player) => {
        return {...acc, [player.country]: [...(acc[player.country] || []), player]};
      }, {});

</comment></comment></comment></comment><comment><USER20> In his example Array.prototype.reduce, isn't this almost the same as just doing a foreach loop? I don't understand why doing this, it's pretty much the same number of lines.

<comment><USER21> In this example it is, but a nice thing about using map, reduce etc is that you can chain them together, ex:

      let out = ["a", "b", "c", 1, 2, 3]
      	// Turn letters to upper case
      	.map(i => {
      		return typeof i === "string"
      			? i.toUpperCase()
      			: i;
      	})
      	// Add one to numbers
      	.map(i => {
      		return typeof i === "number"
      			? i + 1
      			: i;
      	})
      	// split letters and numbers up
      	.reduce((all, i) => {
      		typeof i === "string"
      			? all.letters.push(i)
      			: all.numbers.push(i);
      		return all;
      	}, { "letters": [], "numbers": [] });
      // => { letters: ["A", "B", "C"], numbers: [2, 3, 4] }

<comment><USER22> The problem with this is that it generates two intermediate arrays in the maps, then effectively drops them in the reduce. This may be inefficient.

I wish that JavaScript's map/filter/reduce functions returned lazy iterators, like in Rust, so that code like this doesn't produce intermediate arrays. Does anyone know of a library that provides this?

<comment><USER23> Those intermediate iterations could be dropped by composing the map functions together (same with the reduce), if that really was a performance bottleneck.

<comment><USER22> With lazy iterators, there is the possibility of better composition of maps/filters/reduces. That's why I'm a fan of the lazy iterators approach -- otherwise the abstraction breaks too easily and it ends up looking like a for- loop anyway.

</comment></comment></comment></comment></comment><comment><USER24> I noticed you used let to instantiate variables. Should switch to const, and if really going functional, will begin to find few rare cases where let is needed.

</comment><comment><USER25> this post introduced me to the arrow function (([https://stackoverflow.com/questions/24900875)](https://stackoverflow.com/questions/24900875\))), which i'd previously not heard of. evidently it was introduced in ECMAscript 6 but for engines that use JavaScript and older browsers (amazingly, they still exist) it won't work

<comment><USER26> There is a spurious ) ending your link, resulting in page not found error.

For those using arrow functions these days for web, most will use Babel in the build process to provide compatibility with older platforms.

</comment></comment><comment><USER27> TL;DR author provides an example of map, filter and reduce functions in JS.

I have been wondering lately what is the value of articles like this. They do not convey any meaningful idea, they do not offer any useful insight on underlying matters; why do people even write something like this, except to litter the Internet even more? Anyone, who is distinctly familiar with functional programming or even just with the concept of higher order functions, surely knows those three basic primitives; those, who are not, would benefit much more from the basic concepts of first-class functions etc, than this random abrupt post.

<comment><USER28> Man, I had just worked up the nerve to start a personal dev blog but you've just scared me straight off.

<comment><USER27> I have wanted to start a personal dev blog myself for quite a while, but each time I think of a suitable topic, I immediately recall an article or a post that is already better than anything I could write myself on the matter.

If you think you have something valuable or interesting or just funny to share, that either was never discussed or written about or you know you can do better, then you absolutely should blog about it and do not let haters like me stop you.

As for the original article:

* It should have been named just "JavaScript arrays and higher-order functions" (I get that using term _functional programming_ is very catchy nowadays, but I am trying to talk about quality here, not clickbaitness)

* As it is aimed for people unfamiliar with the concept and coming from more imperative background, where first-class functions are either not present or not that popular or handy to work with, an introduction (even the most gentle one) would be very suitable

* Then the introduction of filter/map/reduce functions would be in place, ideally compared in place with imperative implementation of the same task

* The best way to make sure a reader understands how each of this functions works is to make them implement each one of them, even the naive implementation would suffice

* Finally, you could provide some reasonably unobvious usages of any of the functions, e.g. insertion sort done with fold-only.

<comment><USER29> > I have wanted to start a personal dev blog myself for quite a while, but > each time I think of a suitable topic, I immediately recall an article or a > post that is already better than anything I could write myself on the > matter.

Sounds like you should be curating a list.

</comment></comment></comment></comment><comment><USER30> This hardly covers any functional patterns that javascript is capable of. You can compose functions, avoid stack overflows in tail call recursion, use immutable values, etc. I've seen articles on pattern matching with Typescript or trampolining code but this is simple a descriptive look at three basic javascript functions. If you're interested in more of a functional approach in JS take a look at Immutable.js and/or [https://pattern-matching-with- typescript.alabor.me/](https://pattern-matching-with-typescript.alabor.me/).</comment>


Next-gen consoles should Not play used games - <AUTHOR> http://altdevblogaday.com/2012/02/02/i-feel-used/ <comment><USER2> Used games indirectly send money to game devs.

I'm not going to spend £30 on a game and just hope it's okay. But I might risk it if I know I can sell the game to someone else.

Bob might not have enough money to spend £30 on a new game, unless he sells some of his old games to someone else.

Ann buys secondhand games, but she also spends a lot on DLC.

</comment><comment><USER3> What am I to do with games that I purchase, but no longer enjoy?

Well, I now have _another_ reason to stick with my NES.</comment>


Neanderthal genes found for first time in African populations - <AUTHOR> https://www.theguardian.com/science/2020/jan/30/neanderthal-genes-found-for-first-time-in-african-populations <comment><AUTHOR> [https://www.cell.com/cell/fulltext/S0092-8674(20)30059-3](https://www.cell.com/cell/fulltext/S0092-8674\(20\)30059-3)</comment>


Ask HN: How did Y Combinator become so successful? - <AUTHOR> Fellow Hackers,
I am interested in the history of YC and started to look around for more stories and insights about how YC started and became what it is today.
There are some resources on the web [1,2] but I couldn't find too much.
As there are some alumni and employees from YC lurking around here, I just thought to ask you to share your stories!
1: https://web.archive.org/web/20140824071024/http://old.ycombinator.com/start.html 2: https://www.ycombinator.com/principles/ <comment><USER2> PG has a few essays that talk through some thoughts about YC like this one[1]:

> Early YC was a family, and Jessica was its mom. And the culture she defined > was one of YC's most important innovations. Culture is important in any > organization, but at YC culture wasn't just how we behaved when we built the > product. At YC, the culture was the product.

Jessica Livingston shares some of her stories of the early days of YC here: [https://www.youtube.com/watch?v=8d-cApFHjeY](https://www.youtube.com/watch?v=8d-cApFHjeY)

1: [http://paulgraham.com/jessica.html](http://paulgraham.com/jessica.html)</comment>


Peek Inside Adam Savage's Famed SF Comic-Con Costume Closet - <AUTHOR> https://www.sfgate.com/entertainment/article/MythBusters-Adam-Savage-Builds-San-Diego-Comic-Con-14082850.php <comment><USER2> Sadly, this site does not work well on iOS.</comment>


Please Pull Over Before You Read This - <AUTHOR> http://blogs.forbes.com/davepell/2010/09/07/pull-over-before-you-read-this/

<comment><USER2> So people feel the need to be constantly connected and communicating. I can sympathize with this.

Maybe this means we can now embrace mass transit, where you can tweet and facebook to your heart's content without risking your own, or anyone else's life.

<comment><USER3> No. people feel the need to be artificially connected and artificially communicating while sacrificing the REAL connection and communication which is actually taking place at the moment.

<comment><USER4> I hate when people say this.

I am a bartender and a hacker. I go out at night. I have tons of friends. I can have an engaging conversation on the train with a complete stranger. I think I'm fairly social, moreover everyone else says I'm really social.

But at the same time I love Facebook. I'm on it all the time. I talk to people about their facebook comments, face to face. I talk to people telling them to expect a cool link on some new HTML 5.

Its not artificial, its just "the new hotness". I honestly think I can be hyper-social now, both through the net and the real world.

<comment><USER3> You missed my point, I said "at the moment", so let's repeat: it's artificial when it happens at the same time when real communication is in place already but people turn to their twitter or whatever.

On the other hand if you have a problem with what I said then it's just your another problem. I prefer to talk to people about life things not about Facebook comments. YMMV

<comment><USER2> Most of the world is not Reddit ;) Which is to say, I rarely see people on Facebook talking _about_ Facebook. In fact, they are more often than not talking about... life things.

> _"it's artificial when it happens at the same time when real communication > is in place already but people turn to their twitter or whatever"_

Yet... even before smartphones, before you could get lost in Facebook or Twitter on a bus, people _still_ weren't talking to each other. The fact that we are placed in a situation with great social potential, yet do nothing about it, is hardly the fault of this technology we've created. It's not as if buses and trains were the hub of social affairs prior to the invention of the mobile web.

<comment><USER3> You've touched a significant point I'd like to follow.

I guess we are very responsible for the impact of the technology we create. That's why I'm saying all this stuff here - we are not mere hackers who give people the toys or tools to work with and forget what and why we created it. With every new web application we're creating a new way people will spend their time (in the biz lingua: new business processes blah blah). It's our responsibility to make it meaningful for the people.

It's like with the mass media: some people say that making a silly tv show is what people want but my whole point is that such thinking is broken. People want to relax with what's on air and that's all -- they don't want to spend their time making superfluous choices to check what's really good for them. Everyone has such little time for entertainment in today's world. So if you're broadcasting something it's your responsibility to make it meaningful for the people, not _their_ responsibility. I'm thinking in the same way of internet tools and applications.

</comment></comment></comment></comment></comment></comment><comment><USER5> "Ryan, the plastic surgeon behind many celebrity looks, was reportedly tweeting about his dog just before he drove to his death off a Malibu cliff."

The only thing I have to say about this, is thank God he did not take anyone else with him.

<comment><USER6> Well, I kinda feel bad for the dog. I hope somebody took care of the dog.

<comment><USER7> I feel really unclean for having googled this, but you will be delighted to know that the dog will be fine.

[http://www.tmz.com/2010/08/17/dr-frank-ryan-dog-jill- border-...](http://www.tmz.com/2010/08/17/dr-frank-ryan-dog-jill-border- collie-vet-injuries-crash-jeep-death-dead/)

Re OP: my county has recently banned electronic devices while driving (only hands-free calling allowed), and completely anecdotally it has seemed to make a difference, although it's hard to say whether it is a temporary effect.

The geek in me is also thinking "how can it be proven that he drove off while actually twittering" but I am trying not to go there - it's besides the point.

<comment><USER8> Presumably he had time to text "FLLNG OFF CLFF ARGH" before hitting the ground?

Apologies - being over the age of 15 I am not familiar with the shorthand for falling off a cliff in TxtSpk.

<comment><USER9> !Γ

</comment></comment></comment></comment></comment><comment><USER10> >I'm usually at a stoplight or stuck in motionless traffic when I actually use my phone's virtual keyboard. That factor might make might my behavior slightly less risky, but it doesn't make it any less stupid.

Really? I would say it makes it a lot less risky, and a lot less stupid.

<comment><USER11> I often read HN on my iPhone while stuck in motionless traffic. Should I stop?

</comment></comment><comment><USER12> 1\. some bad thing recently happened due to the use of technology

2\. this is symptomatic of a more general trend; obviously the technology is useful, but we're overusing it

3\. back in my day nobody had this technology, and we got along just fine

4\. call to action to occasionally disconnect from the technology

Can we stop rehashing the same formula?

<comment><USER13> We're chopping and the branches with these laws. The root problem is our inability to recognize and respond to new risks associated with new technology. Behavior can either be changed through force (law) or persuasion (education). I'm glad this guy wrote this blog post and persuaded me to once again be more careful with these tools.

<comment><USER14> Sorry, the stupid outnumber the rational. I once was brought up short by a woman on a cell phone driving 40 mph straddling the two left lanes of a freeway where the normal speed is 70-75. Since CA passed the no-cellphone and no texting laws, there seems to be less of this insanity. The fines are modest, but with court costs it can be several hundred dollars a pop.

</comment></comment></comment><comment><USER15> <http://twitter.com/drfrankryan>

<http://twitpic.com/2fflev>

</comment><comment><USER16> I'm a terrible person. After reading about the plastic surgeon, I couldn't help thinking that we need more cliffs.</comment>


A better Aircraft engine - from South Africa - <AUTHOR> http://www.iol.co.za/index.php?set_id=1&click_id=31&art_id=vn20091209102249751C857427

<comment><USER3> Not much detail in the article, but it's right about GA engines not changing much in the last 40 years.

It's a classic example of regulation stifling innovation - aircraft engines must by law be completely disassembled, inspected and then rebuilt at regular intervals. All new engine designs are effectively penalized with shorter inspection periods until they've proven their reliability. Possibly not a bad idea from a safety perspective, but terrible if you want to modernize anything.

Given that it costs several thousand dollars to overhaul an engine, not to mention the more regular grounding of the aircraft, higher insurance and the lack of trained aviation mechanics, most manufacturers will just choose a "good old" (and I do mean old) Lycoming.

I wish these guys luck. Unfortunately they're not the first to have tried...

<comment><USER4> I sincerely doubt that these guys would be successful. In South Africa there is a habit to start impractical and expensive grandiose engineering projects with government money. Most of these will turn out to be white elephants (a few examples are the Rooivalk attack helicopter, pebble-bed reactor, Joule car, etc...).

The last one, they used funding from the DTI to start an electric car - <USER2> though it is not in SA's core competencies (<http://en.wikipedia.org/wiki/Optimal_Energy_Joule>). I have no doubt that that will fail and will cost a lot of money.

A much better model for an indigenous aircraft company is to perform the designs of low tech parts locally and import highly complex and critical (safety of flight) parts. That way you can utilise the strengths (design&low cost labour). A good example of such a model is this company <http://en.wikipedia.org/wiki/PAC_Cresco>.

<comment><USER5> In all fairness, the team at Adept Airmotive completed the majority of the design and development of their new engine platform with only private equity funding. They received an injection of cash from a state innovation fund a couple years ago to ease their way into production, but this has definitely not been a 'grandiose engineering project with government money'.

I do think they have a fairly good chance of succeeding with this, if only because their ambitions are fairly modest (they're seeking to build a better GA piston engine, not re-invent the industry) and because they're filling a fairly obvious gap. Their calculus, which seems sound, is that the low initial purchase cost and significant fuel savings will result in a TCO that's lower than what their competitors can offer even with more frequent service intervals until the engine becomes established.

The Rooivalk is a poor comparison, being as it was a hugely ambitious project initiated during a period when the country was under an arms embargo and unable to acquire such aircraft from outside. It was hamstrung in the end by the combination of an evaporating need (the country's involvement in Angola had ceased in 1989) and the concurrent slashing of the defence budget which elongated the development process, increased the unit cost and resulted in marketing opportunities being lost. But it's important to understand that it was originally designed to fulfill a local need, not for export, and that not only was the project an engineering success which established companies like Aerosud and ATE (both doing quite well) but its development made sense under the circumstances at the time. Similarly, SA had ambitious projects for an indigenous tandem trainer, the ACE, and an indigenous 4th-generation jet fighter under Project Carver, both of which fizzled out once the embargo ended and funding was decreased.

I won't quibble about the Joule though, which is admittedly a bit of an odd investment. South Africa was one of the research leaders in Lithium-ion battery technology prior to '92, but has done very little research in the field since then. Nevertheless, perhaps investing in high-tech industries with lots of automation does make sense for the country, as its cost of labour comparatively high and not competitive with other developing countries while it has a fairly active and effective scientific and engineering institutional infrastructure. And again, because Optimal Energy only exists thanks to government funding, they're a poor comparison to Adept Airmotive.

In terms of your last point, the Ravin 500 mentioned in the article is pretty close to what you're talking about, as it's a fairly simple composite aircraft improving on the basic design of the Piper Comanche but without re-inventing any technological wheels. Although it's being used as a test platform by Adept Airmotive, all Ravins sold to date have been equipped with more conventional Lycoming engines.

See: <http://www.saravin.com/>

<comment><USER4> > if only because their ambitions are fairly modest (they're seeking to build > a better GA piston engine, not re-invent the industry) and because they're > filling a fairly obvious gap.

The problem (IMHO) is that aircraft engines are safety of flight components. So, most engines are overdesigned by well reputed companies (definitely not start-up material). They may succeed and prove me wrong – I am not an expert in that area.

> it's important to understand that it was originally designed to fulfill a > local need, not for export, and that not only was the project an engineering > success which established

AFAIK, the whole idea of the rooivalk was to be a Soviet tankkiller (with obvious export potential). After 1990, there was no reason for continued funding of the project.

> which established companies like Aerosud and ATE (both doing quite well) but > its development made sense under the circumstances at the time.

Maybe. But its development also established companies such as Denel (which is a continual drain of millions on the government budget).

> South Africa was one of the research leaders in Lithium-ion battery > technology prior to '92, but has done very little research in the field > since then.

A battery company will then make more sense than a car company (the market for Lithium Ion batteries are much larger).

My point is just that less grandiose schemes will probably have a larger payoff. The fairly high labour rate is an unfortunate effect of legislation (with 40% broad based unemployment, the cost of labour should be much lower). If the country wants to succeed it should become a lot more like china.</comment></comment></comment></comment>


Writing Efficient Programs (1990) - <AUTHOR> http://www.crowl.org/lawrence/programming/Bentley82.html

<comment><USER2> All these still apply equally well today, but most have forgotten about them.

If you want to any form of performance or efficiency, you still need to pay attention to these.

</comment><comment><USER3> Read this text from 1982 (33 years ago) and wonder at the great lengths one had to go to write efficient programs at the age of scarce computational resources and simplistic compilers.

<comment><USER4> Sometimes you need to go further today, due to the complex and capricious compilers.

Not so long ago, I had to write a piece of Java code that sniffed a text file and tried to guess its encoding. The submitted files could be over a gigabyte in size - speed was a concern. We decided to support three main cases: pure ASCII, UTF8, and final fall-back to Windows-1252 in case of invalid UTF8 sequences. The idea being that the most common non-UTF8 file we'd have to support came from Western European Windows machines, and customers could always convert to UTF8 in case of encoding problems.

Writing the Java loop for scanning over the bytes, testing for high bits and UTF8 sequences, was interesting. Manual loop unrolling was a win when the loop body was complex, but an even bigger win was making the loop body extremely simple and making it break out whenever a high bit was seen; in this case, Hotspot did the unrolling itself. The simpler the code, the more reliably the JVM could unroll and hoist array bounds checking out. The final code walked a tightrope between getting more work with fewer branches, and less work so that Hotspot could optimize. Try to do a tiny bit too much, and performance fell off a cliff.

Looking at the generated assembly was still worthwhile to get an estimate of how much performance the JVM was leaving on the table, and whether or not it was worth working harder to extract it.

</comment></comment><comment><USER5> The article is from 1990, but the book it is summarizing is from 1982.</comment>


Microsoft rushes to fix browser after attacks; no fix for XP users - <AUTHOR> http://www.reuters.com/article/2014/04/27/us-cybersecurity-microsoft-browser-idUSBREA3Q0PB20140427

<comment><USER2> Enough warnings. People should have got their shit together by now.

</comment><comment><USER3> Why does this sound like a scare tactic to get people to drop XP?

<comment><USER4> I can't answer why you would think that, but it sounds quite unlikely. If you are still using XP, you should be scared. It's not a "tactic," it's the reality of your security situation. No vendor has any financial, legal, or social interest in your safety, and on top of that, you are running on tech that lacks many modern security features that at least delay the exploitation of vulnerabilities.

As to why Microsoft would care beyond altruism and their image with XP users (hah -- this is funny because you could hardly imagine a less profitable group of people to have a good image with), I can't imagine. They don't support XP any more. It can't represent a significant ongoing cost to them any more, since they neither sell it nor offer patches, upgrades, or any other service for it.</comment></comment>


68 things the CLR does before executing a single line of your code - <AUTHOR> http://mattwarren.org/2017/02/07/The-68-things-the-CLR-does-before-executing-a-single-line-of-your-code/ <comment><USER2> The article could benefit by having a single sentence explaining what CLR is:

"The Common Language Runtime (CLR), the virtual machine component of Microsoft's .NET framework, manages the execution of .NET programs [that runs primarily on Microsoft Windows].

\-- [https://en.wikipedia.org/wiki/Common_Language_Runtime](https://en.wikipedia.org/wiki/Common_Language_Runtime)

<comment><AUTHOR> good point, I'll update the post (although I think that _most_ people who read my blog are .NET devs)

</comment></comment><comment><USER3> Matt Warren's blog is great to learn about the internal mechanism of .Net. I wonder if there is any similar blog for JVM world, so far I have only know Mechanical Sympathy[1] but it doesn't seem as comprehensive.

[1] [https://mechanical-sympathy.blogspot.com/](https://mechanical- sympathy.blogspot.com/)

<comment><USER4> not a blog, but it might be just what you are looking for:

[https://www.amazon.com/Inside-Java-2-Virtual- Machine/dp/0074...](https://www.amazon.com/Inside-Java-2-Virtual- Machine/dp/0074639757/)

[https://www.amazon.com/Virtual-Machine-Masters- Venners-1997-...](https://www.amazon.com/Virtual-Machine-Masters- Venners-1997-09-01/dp/B01K3PBA3W/)

<comment><AUTHOR> Cool, thanks for the links, they look like interesting books (even for a .NET dev)

</comment></comment></comment><comment><USER5> The title could be read to mean that 68 things are done before every line of code is executed. Got me to read it.

<comment><AUTHOR> yeah you're right, I guess you can read it like that, I never noticed that before

(I was just so please that I managed to get a 'BuzzFeed' style headline into one of my blog posts!!)

</comment></comment><comment><USER6> Nice read, makes it a lot easier to understand how it works and a must read for people who want to contribute to CoreClr!

<comment><AUTHOR> Thanks, yeah that's the aim of writing posts like this (plus I find it fun to figure it all out!)

</comment></comment><comment><USER7> Is there a way to embed multiple, independent DLLs into one host application with the possibility to reload/unload DLLs in .NET Core? I didn't find a way yet because .NET Core does not seem to support the AppDomain concept.</comment>


Ten Most Competitive Countries In The World - <AUTHOR> http://www.businessinsider.com/most-competitive-countries-for-business-2011-9

<comment><AUTHOR> For the tl;dr here are the countries: 1\. Switzerland 2\. Singapore 3\. Sweden 4\. Finland 5\. The United States 6\. Germany 7\. The Netherlands 8\. Denmark 9\. Japan 10\. The United Kingdom</comment>


Ask HN: What tool do you wish existed? - <AUTHOR> I am looking for ideas for a next project, and I'd really like to make something people really need and are willing to pay for. What is your need that can be fulfilled with a piece of software (or maybe with something else)? <comment><USER2> There's lots. I made a Trello board.

[https://trello.com/b/alB1ryRP](https://trello.com/b/alB1ryRP)

<comment><AUTHOR> What would be the top several items if it was a priority list?</comment></comment>


Steve Jobs movie first look - <AUTHOR> http://www.loopinsight.com/2015/05/17/steve-jobs-movie-first-look/ <comment><USER2> I always found that the series "halt and catch fire" captured the early days of Steve Jobs and Apple really well without ever using its name, or Apple's for that matter. Looking forward to the next season.

</comment><comment><USER3> When was there ever an event where people were cheering that hard for Steve Jobs? It's moments like the one seen at the end of this trailer that detract from the historical accuracy of the film.

<comment> stephen-mw It's funny you mention this. Myself (and a quite few other Bay Area people) were at the filming for this film at the De Anza theater. Everyone was so bored and desperate to be on camera that they were cheering at the top of their lungs and flaying their arms about every time the camera turned on.

I remember thinking how absurd it was, but we were all bored so what the heck!

</comment></comment><comment><USER4> I wonder how this is different from ALL the other Steve Jobs movies</comment>


Securing Node.js Applications - <AUTHOR> https://medium.com/@peterchang_82818/node-security-authentication-javascript-tutorial-example-session-brute-force-rainbow-table-crack-hijack-3b6c56ee938c <comment><USER2> These are a bit generic imho ...

Here is something more specific related to the qs module in express and mongodb: [http://blog.websecurify.com/2014/08/hacking-nodejs-and- mongo...](http://blog.websecurify.com/2014/08/hacking-nodejs-and-mongodb.html)

</comment><comment><USER3> Article only scratch surface. XSS/CSRF, SQL injections, JavaScript injection, JSON hijacking, cookie poisoning and privileged escalation just to name few.

Each input from external source is potentially malicious. Passwords security is now well understood, there so many places where security can go wrong.

</comment><comment><USER4> This article made me confirm my suspicion about Node.js (and by the way I do program in Node.js as well): It is becoming the new PHP.

When you lower down the entry barriers to web development, more kids proclaim themselves as experts, or pretend to really _know_ how to create a deployable- in-real life web application, with disastrous results.

This article would be a great article if it was written in 1995, just after cookies were introduced.

Since this is 2017, the shallowness of the advice given makes me think that out there, there are thousands of javascripters* who are implementing web apps without knowing even the essentials of http/cookie/passwd security. Many of them, also, rely on MongoDB, the Snapchat of Databases, even though the information to be stored for their purposes is often clearly relational and the app require transactions.But no, let's use Mongo because we're with the MEAN stack and because it is so easy to setup.

*not to mention that still in 2017 many of them still don't adopt the Ecmascript2017 advantages, and are still doing boilerplate nightmare like:

if (err) {...} else { dostuff (x, function (err,res) { if (err) {...} else { dostuff2 (x, function (err,res) { if (err) {...} else { dostuff3 (x, function (err,res) { if (err) {...} else { dostuff4 (x, function (err,res) { if (err)

... instead of using async and await for bringing the code down to acceptable elegance levels!!

<comment><USER5> > This article made me confirm my suspicion about Node.js

> Becoming the new PHP

> Kids ...

> Many of them, also, rely on MongoDB, the Snapchat of Databases

These generalizations aren't helpful. Please don't pretend this wasn't an opinion you'd already formed.

<comment><USER4> I'm speaking about a real problem with the node.js community, and I say this as a user of the platform. The entry barrier is small and this creates some problems, not only the lack of security considerations on lots of web apps out there, but also on the quality of some NPM packages out there. Don't get me wrong, node.js is a good idea, but as ponted out by mikacsika's comment below:

"Also, a lot of Node.js teams popping up from development shops et al consist of front-end engineers that have never needed to understand the systems-level impact of their code"

One of my responsibilities is assisting a small start-up implemented in node.js. Guess what? A site developed exclusively by frontend developers. I pointed out many problems with the code, including security concerns. They were reluctant to implement the many changes i recommended, acting as if the targeted-to-frontend-turned-fullstack tutorials were always right... until their server and db got hacked 15 days ago. True story.

<comment><USER5> And I believe you. I still don't think that's a problem exclusive to Node. I've seen godawful, naive, insecure codebases written in C, C++ and PHP. I've talked to co-workers about similar experiences in Python, ColdFusion ...

This 'Node people are the worst because they came from the front-end' attitude is poison.

</comment></comment></comment></comment><comment><USER6> This title has been changed from its original. Mods?

Node.js applications are one thing, Express.js applications are another. This seems to talk about the Express.js framework, and Express has its own set of guidelines that should be followed as the bare minimum, sadly in the "advanced" section:

[https://expressjs.com/en/advanced/best-practice- security.htm...](https://expressjs.com/en/advanced/best-practice- security.html)

[https://blog.risingstack.com/node-js-security- checklist/](https://blog.risingstack.com/node-js-security-checklist/)

In reality I see two things that bite most outfits getting their feet wet with Node for the first time, and it's not how well the passwords are hashed.

First is the age-old problem of input validation. Express.js devs read the tutorials that show bringing in data directly from req:

[https://expressjs.com/en/api.html#req](https://expressjs.com/en/api.html#req)

... and just accept it. Unvalidated input / unfiltered output seems par for the course in a lot of smaller Express.js APIs, especially when they are using Angular, Knockout or another client-side framework that offers some filtering of data being returned from the API.

A close second is third-party dependencies. While the Node Security Project does what it can to help out, and nsp/snyk are good best practices, the Node.js culture of importing modules for everything often leads to really large attack surfaces with rarely-audited modules of unknown provenance added for development speed. Third-party modules -- especially less popular ones -- are a goldmine of critical vulnerabilities just as WordPress plugins used to be (and still are).

Also, a lot of Node.js teams popping up from development shops et al consist of front-end engineers that have never needed to understand the systems-level impact of their code. Many are used to JS for talking to API black-boxes and making cool effects or reactive user interfaces, and they're not often thinking about directory traversal, SQL injection or cookie poisoning because those have traditionally not been in the domain of the JavaScript-oriented developer.

<comment><USER4> Totally agree with you(see my comment above).

With NPM i have seen something i've never ever seen in my life with package ecosystems (i.e. Maven, Pip): On NPM, there are packages out there that can have as much as 32 dependences, and, more ridiculously, some of these 'libraries' are small snippets of code (just a few lines). It is really a cause of concern, for me...

</comment></comment><comment><USER7> Those two unhandled errors in the Rainbow bcrypt hashes are a big security bug: a constant (unnoticed) error would allow ANY password to be accepted! This is similar to an _old_ Linux bug where there was an equal instead of a comparison sign, allowing for any password. Use either a well tested library if you want a Promise-based bcrypt function or make sure you test yours.

However it still seems like a good starting point and if you follow those steps it's better than nothing.

</comment><comment><USER8> Kind of ironic, a Yahoo developer talking about password security.

<comment><USER9> When I left there in 2011 they still had unhashed passwords all over the place. I kept stumbling into them when I wasn't even supposed to have DB access, it was like a bad comedy.</comment></comment>


Coding mentoring.jam - <AUTHOR> http://www.gpestana.com/mentoring.html <comment><AUTHOR> Hey! OP here. I'll be around for answering questions and feedback!</comment>


Oak Island Money Pit: Unsolved Mystery - <AUTHOR> http://www.oakislandmoneypit.com/ <comment><USER2> It's hard not to read the whole thing and think the people involved were very foolish, and it's an example of the lengths to which people can push wishful thinking and confirmation bias and ignore basic arguments like 'how could someone bury treasure in such a difficult to excavate way without anyone noticing them constructing it all, and how did they ever expect to retrieve it?' For example, we're repeatedly told about the scanty traces of things dug up like coconut, and then later this bombshell is dropped:

> In 1937, Hedden and his contractors returned to Oak Island. This time the > company would encounter intriguing findings. Burrowing down one of the many > auxiliary tunnels pock marking the island, the team stumbled upon a number > of fascinating items including a miner's oil lamp with whale oil and > unexploded dynamite at 65 feet.

Where on earth did _those_ come from? Are the pirates supposed to have brought _dynamite_ with them a century or two before? This suggests to me that (1) all the previous expeditions and drillings have littered the island with all sorts of equipment and junk, and hence nothing found after the first expedition means much of anything or (2) the flood tunnels and other geological oddities move debris around and that is responsible for the dynamite, in which case there may never have been anything to explain in the first place.

> It appears far too simple to dismiss the efforts of respected lawyers, > businessmen, doctors, actors and even an esteemed president.

Does it now.

<comment><USER3> How someone could bury the treasure without anyone noticing them? Well, the same way they dug the hole without putting the treasure into it, I would think.

Why nobody would notice you is that it's 1600- or 1700-something and you're somewhere in the woods of what will be Canada one day.

What I don't get is why someone would play an elaborate prank, knowing that they probably won't be around to watch people's faces who try to find the treasure. No, it was no prank: this was a real pirate cache site.

I think that treasure had been there before, but it had been removed by the time those boys discovered the site. The encrypted sign was left behind, that's all.

I believe the encrypted sign was originally at the surface, perhaps not buried at all. Heck, maybe that sign had been put up in a nearby tree or whatever. The pirates used that sign so they can return to the site and recover the treasure. The treasure was 40 feet below that. When the pirates (or whoever) removed the treasure, they just threw the sign deep into the hole and buried it. So then the idiots who came later thought that the sign pointed down another 40 feet from there. (Why would anyone do that, doh!)

Pirates often left themselves clues to find their caches, like encrypted signs and such. Think about it: thousands of miles of ocean and coast-line (all of it self-similar) in a world without GPS navigation.

<comment><USER4> I suspect that this might be more accurate, in that several times folks put things there and took them back. There are interesting questions about sand deposits and the history of the island, and of course if it was a "good spot" to bury treasure during a time of privateering then perhaps there are several interesting places. Some of the more elaborate underground construction though seems to be in support of prohibition[1] (well in support of smuggling in liquor during prohibition).

A couple of things are hard to dispute, square cut timbers don't just "appear" underground, so someone put them there. But it could be for much more mundane reasons (like gold mines in the Sierra Nevada Mountains)and it makes for a spicy tale to through in pirates.

[1] [https://www.google.com/search?q=prohibition+tunnels](https://www.google.com/search?q=prohibition+tunnels)

<comment><USER2> You're assuming the original descriptions are trustworthy and not heavily biased. Yeah, maybe they were 'square-cut timbers'... or maybe it was driftwood and they were desperate to find something (see the 'treasure chests' in [https://news.ycombinator.com/item?id=8149351](https://news.ycombinator.com/item?id=8149351) ), or maybe natural processes produce squarish timbers (are the Giant's Steps produced by giants?), or maybe the original reports of squarish timbers were made up (wouldn't be the first time, to say the least).

<comment><USER4> You are no fun at all at parties I bet :-)

Everything you say is true, and it could all be one giant hoax by some land owner who said "I know, I bet if I make up a great story I can sell this worthless land for a few bucks!" What I did, and its useful for any story, is to make a "Charitable Assumption" which is to converse on the topic with the assumption that the other party is being as truthful and/or as accurate as they can. By doing so we can engage in conversation and perhaps learn new things. The trick is that one can make a charitable assumption and continue the conversation without believing that the assumption is "true" in the literal sense. It is sort of like a temporary stipulation for the purposes of discourse.

If we take the story at face value then the existence of non-natural artifacts, both timbers and other things, are considered "true" during our discussion. Then we can explore alternative reasoning (or even carry the existing reasoning further down the path) as to how or why that came about. What is important here is that there is no compulsion, either explicit or implied, in that sort of discourse that "forces you to believe" something which you don't.

<comment><USER5> You gotta decide which story to take at face value, though. In some versions it's only one layer of wood of unspecified shape and arrangement. In others it's layers of wood at regular intervals. In others it's specifically square- cut timber. Generally the more recent retellings of the tale have more of these juicy details than the older ones.

The thing about a good story is, it's hard to resist the urge to make it even better.

</comment></comment></comment></comment></comment></comment><comment><USER6> I've spent summers at my family cottage, looking across the water at Oak Island for 40 years, and am always interested when it comes up. I've been on Oak Island and the myth is 100x more interesting than what is there now, the rusting remains of recent exploration efforts.

So if a crew of pirates|Incas|freemasons|French Royalty spent the effort to dig elaborate tunnels and traps, where are the remains of their campsites? The middens? The cooking fires? All infrastructure to support a huge constriction project, all with hand tools?

Everywhere else from that era you find the garbage that gets left behind - ashes, clay pipes, lost tools, buttons.

These particular mysterious builders were not just super skilled, they were also the tidiest contractors known to history.

Sadly, the whole story is a mishmash of charlatans, myth, and a lot of basic geology. There's no mystery.

<comment><USER7> And mysteries only get better with age.

</comment></comment><comment><USER8> It would be awesome if they finally got to the bottom and discovered a pile of "E.T." cartridges for the Atari 2600.

</comment><comment><USER9> Oh boy, this comes up every few years. I guess the words "unsolved mystery" must excite some specific neural pattern in our brains.

It's far from the last great unsolved mystery, though, as claimed in the title: I would definitely put (i) deciphering the last part of Kryptos ([http://en.wikipedia.org/wiki/Kryptos](http://en.wikipedia.org/wiki/Kryptos)), (ii) deciphering the Voynich Manuscript ([http://en.wikipedia.org/wiki/Voynich_manuscript](http://en.wikipedia.org/wiki/Voynich_manuscript)), and, if you insist on adding treasure to the equation (iii) the Beale Ciphers ([http://en.wikipedia.org/wiki/Beale_ciphers](http://en.wikipedia.org/wiki/Beale_ciphers)) on any list of unsolved mysteries that fuel the imagination.

<comment><USER10> There's also deciphering the ancient Greek written language "Linear A" [http://en.wikipedia.org/wiki/Linear_A](http://en.wikipedia.org/wiki/Linear_A)

It was recently added to unicode, and we don't even know what the characters mean.

<comment><USER11> Sounds like a good way to accidentally summon an elder god via emoticon. Now I have a new novel plot...

<comment><USER12> Maybe cstross will feature it in his next Laundry novel.

<comment><USER13> Remember, demonology is just a branch of applied mathematics!

</comment></comment></comment></comment></comment><comment><USER14> The similarity of the history of this island to the history of many software projects I've worked on is amazing.

</comment><comment><USER15> Worth sharing, google led me to this interesting fellow: [https://www.youtube.com/watch?v=6hUrpcxD0uo](https://www.youtube.com/watch?v=6hUrpcxD0uo)

He has a surprisingly interesting idea that the shaft of periodic wooden panels may be an ancient viking ship buried vertically.

My own vote is for sinkhole + telephone game/hype machine.

<comment><USER16> That's fascinating. The letters resemble Inuit writing a bit. EDIT: seems that script was created by missionaries in the 1840's.

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

Here are some pictures of Viking longships. It looks like they are not strongly longitudinally segmented, which is against the theory.

[http://www.pinterest.com/judah55/viking-gokstad-and-tune- lon...](http://www.pinterest.com/judah55/viking-gokstad-and-tune-longships/)

</comment></comment><comment><USER17> "According to authors Graham Harris and Les MacPhie, Borehole 10X terminated in a cavity carved out of bedrock. Within the stone chamber were what appeared to be a severed hand, a corpse and several treasure chests (2005). Prompted by the video images, the Triton Alliance initiated approximately 10 diving excursions into the subterranean cavern. No treasure was extracted as a result of the divers' investigations."

Any chance of recovering that video?

Personally I thought of something like Nemo's underground/underwater base. Unfortunately by simply smashing through layers of timber treasure hunters most likely flooded/collapsed entire tunnel system.

<comment><USER18> I remember seeing pictures from that video in a book that I once owned. Calling it "treasure chests" is a bit overly optimistic. I'd say "square shadow". I concur though that, whatever was there (if there even was anything to begin with) has long been destroyed now by all the treasure hunters.

<comment><USER19> That for me is the greatest tragedy of this: _if_ there ever was treasure there, its historical value would have been far greater than the value of the supposed gold there, and the historical value has been entirely destroyed in the pursuit of the gold.

Regardless of what it actually belonged to -- even a ship's manifest -- that parchment would have been valuable, and it's destroyed forever now.

<comment><USER20> On the other hand it would have anyway. Without the incentive on treasure, it would have been abandoned entirely. And anything degradable would have deteriorated long ago by now.

</comment></comment></comment></comment><comment><USER21> The article is interesting but painful to read; it's as though it was written by a near-illiterate who painstakingly reviewed every letter over and over to eliminate obvious mistakes. Then, when you've survived the pain, you meet the usual suspects: "Who wrote Shakespeare's plays?" "Look, the Knights Templar!" "It's a Freemason conspiracy!" I wasted my time here.

<comment><USER20> I didn't notice any spelling or grammar mistakes and it pulled me in enough to make me read the whole thing. It's very, very thorough; someone did their research and spent a lot of time writing this.

He was only explaining popular theories that have been proposed. Not claiming there is any truth to them. This is like saying wikipedia isn't reliable because they list the exact same crazy theories and even some other ones in their documentation of the site: [https://en.wikipedia.org/wiki/Oak_Island#Treasure_theories](https://en.wikipedia.org/wiki/Oak_Island#Treasure_theories)

</comment></comment><comment><USER22> Pardon my ignorance but how do we not have the technology to just like ground scan 300ft below the surface around the island and map it out? Like Sonar or something, idk.

<comment><USER23> Sounds like you should raise money and launch your own expedition.

<comment><USER24> Let's kickstart it! We can feed the team with potato salad.

</comment></comment></comment><comment><USER25> That pit and the various efforts to "find the treasure" remind me of a father that was spending $15,000 per year on his young daughter's softball efforts (coaching, training, traveling) in order to help earn her a scholarship to college. She eventually blew out a knee and her softball career ended before she even finished high school. If only he had instead invested that $15,000 a year himself he would have had her scholarship all taken care of.

This pit is like that only with less light at the end of the tunnel.

<comment><USER26> Yes, but she also gets to play softball for x years. There's value in that.

<comment><USER27> If (and I do mean if) she actually enjoyed playing softball after all her father's pressure, she probably would have been able to play it much longer without the intense focus that eventually blew out her knew.

<comment><USER26> I think your original argument was valid (make smart investments (educational RSPs) rather than personally motivated investments (softball). However, I would have backed it up by coming up with number of softball players/softball scholarships, expected return on RSPs over 10 years etc not anecdotal evidence like "If she actually enjoyed playing..."

<comment><USER28> Those comments were made by two different accounts.

<comment><USER26> Oops... didn't notice that.

</comment></comment></comment></comment></comment></comment><comment><USER20> I found this on wikipedia which is interesting:

>The appearance of a man-made pit has been attributed partly to the texture of sinkholes: "this filling would be softer than the surrounding ground, and give the impression that it had been dug up before",[38] and the appearance of "platforms" of rotten logs has been attributed to trees or "blowdowns" falling or washing into the depression.[39] An undetermined pit similar to the description of the early Money Pit had been discovered in the area. In 1949, workmen digging a well on the shore of Mahone Bay, at a point where the earth was soft, found a pit of the following description: "At about two feet down a layer of fieldstone was struck. Then logs of spruce and oak were unearthed at irregular intervals, and some of the wood was charred. The immediate suspicion was that another Money Pit had been found."[40]

</comment><comment><USER29> "The Last Great Unsolved Mystery"? Really? I've got a list of a few more and they're even restricted to the treasure-and-crime kind. [http://infohost.nmt.edu/~jcrawfor/mysteries.html](http://infohost.nmt.edu/~jcrawfor/mysteries.html)

</comment><comment><USER30> I kept reading thinking, "Wow, surprised they haven't blamed the Freemasons for this!" when, suddenly, "oh, there it is..."

Disclaimer: I'm a Freemason.

Disclaimer 2: No, I don't know where any treasure is buried. It's really not that sexy.

<comment><USER31> How do you know someone is part of a "secret society"? They'll tell you.

<comment><USER32> We're not a secret society. We're a society with secrets.

<comment><USER31> A secret society is a club or organization whose activities, events, and inner functioning are concealed from non-members. The society may or may not attempt to conceal its existence.

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

</comment></comment></comment></comment><comment><USER33> If you enjoy mystery or thriller books, Douglas Preston and Lincoln Child's fictional novel Riptide is very enjoyable, and is based in large part on the Oak Island Money Pit legend.

[http://en.wikipedia.org/wiki/Riptide_(novel)](http://en.wikipedia.org/wiki/Riptide_\(novel\))

No fringe conspiracy theories, just good adventure fiction. It's one of their non-Pendergast books that worth the read.

Oh, and at the bottom of the pit in the book? (rot13)

n fjbeq bs qnzbpyrf-yvxr eryvp, znqr bs enqvbnpgvir vevqvhz sebz n pbzrg. Vg jnf ohevrq gb orpnhfr ybbxvat ng vg rkcbfrf lbh gb rabhtu enqf gb xvyy lbh.

</comment><comment><USER34> uggh. I thought money pit was a reference to the scam tourist trap businesses that operate 'tours' to this thing. The worst lamest thing on a family trip to Nova Scotia years ago that we still laugh about. "It was just a hole and a sign!"

</comment><comment><USER35> Jeez man, HN what a bunch of curmudgeons. I personally love this stuff, real or not, it is a modern day treasure hunt. How isn't that fun???

<comment><USER36> This one is SO OLD though. It was in the books I read as a kid 30 years ago.

<comment><USER35> Isn't it being old kind of the point? People are actively attempting to excavate it.

</comment></comment></comment><comment><USER37> I'd give anything to know what is buried there. I've been fascinated with this since I was a kid.

<comment><USER35> I've only known about it for a few years but I'm fascinated.

</comment></comment><comment><USER38> Did anyone mention the TV show they have out on this now? [http://en.wikipedia.org/wiki/The_Curse_of_Oak_Island](http://en.wikipedia.org/wiki/The_Curse_of_Oak_Island)

<comment> at-fates-hands I actually got sucked into the show, and the two brothers seem to have a really good approach by looking at other areas, instead of the just going after 10X and continuing in the same vein so many others had.

The Shakespeare guy was actually really interesting. A little nutty, but he did turn up several more signs on the stones.

I'm hoping this comes back for another season and would love to see these guys finally solve the mystery. I think they have several good leads and have pushed closer to a solution than anybody else.

</comment></comment><comment><USER39> while reading this, I kept thinking to myself that while excavation seems an insurmountable task at this time, if things started via a tunnel excavation from the coast that was already 150' below the surface, then building up from there wouldn't necessarily have been a major endeavor at all.

<comment><USER40> Sounds cheap.

</comment></comment><comment><USER41> All the contemporary excavators seem to have missed the real treasure. It's now a site that has huge tourism potential...Something worth far more in $$ than a few pieces of eight.

<comment><USER42> It's actually located in a beautiful location my wife and I got married at Oak Island Resort which is just on the mainland across the water from the island.

Its a touristy area already its close to Peggy's cove and Lunenburg.

</comment></comment><comment><USER43> Thanks for posting this.

I grew up a few hours away from there, I remember hearing about the 1980s efforts on the news at the time and finding it fascinating as any pre-teen boy would. I also feel like we're due for some recent maniacs to come along and start the whole fiasco over again.

<comment><USER44> Was the movie Goonies inspired by this?

<comment><USER43> I'd never seen the similarity until you mentioned it. But I don't think so.

</comment></comment></comment><comment><USER45> I wish some really rich person would just buy this island and pay some construction company a lot of money to excavate the whole thing. It can't be that hard to build a sufficiently large hole with modern technology.

<comment><USER46> Someone did (Marty Lagina) and they attempted a number of things last year. This is the premise of a reality show on the History Channel called "The Curse of Oak Island."

[http://en.m.wikipedia.org/wiki/The_Curse_of_Oak_Island](http://en.m.wikipedia.org/wiki/The_Curse_of_Oak_Island) [http://www.imdb.com/title/tt3455408/](http://www.imdb.com/title/tt3455408/)

</comment></comment><comment><USER47> Hmm, sounds like the pirate Kidd played a lot of dwarf fortress in his days.

</comment><comment><USER48> There's a treatment of this story on the great podcast Skeptoid. [http://skeptoid.com/mobile/4129](http://skeptoid.com/mobile/4129)

</comment><comment><USER49> Oh my. I'm sure they also uncover the true identity of the Loch Ness monster down there.

</comment><comment><USER50> Weird this is blocked by corporate firewall...

<comment><USER51> The plot thickens....

</comment></comment><comment><USER52> The (Untold) Story of The Oak Island Money Pit

The Oak Island Money Pit was constructed by the "powers that be" that were and still are to this day, the secret force that controls the course of mankind on earth. This organization is known as - The "Freemasons".

The story of The Oak Island Money Pit begins in the 1760's It was conceived by a number of Britain's high ranking naval officers, who were also Masonic degree members of the Freemasons and belonging to the Masonic "Premier Grand Lodge of England". These Masons were members of the Whig Party opposed to the next successor to the throne, the unstable King George III. These members were: Washington Shirley, 5th Earl Ferrers – Vice Admiral - Grand Master of the Masonic Lodge – Premier Grand Lodge of England George Anson, Baron Anson – Admiral of the Fleet George Keppel, 3rd Earl of Albemarle - Commander-In-Chief Augustus Keppel, 1st Viscount Keppel – Rear Admiral – Brother to George Keppel William Keppel – Lieutenant-General – Brother to George Keppel George Pocock – Admiral – Commander of the Invasion of Havana and Benjamin Franklin – First Grand Master of Pennsylvania who met in 1760 with the Grand Master of England to discuss their plan.

The Mason's plot originated after King George III's destruction of the Whig's political power with his redirection of this power to the Tory Party, and the Mason's concern of the imminent invasion of England, during the Seven Years' War, by the joint forces of France and Spain. Spain outlawed all forms of secret organizations, including the Freemasons.

The Mason's plan was to redirect a fortune to the "New World" (North America), to enable the transfer of the Masonic organization, if and when these fears materialized. Their plan entailed the capture of Havana in 1762. Havana's Morro Castle was the Fort Knox of Spain, holding the South and Central America's gold supply prior to its shipment to Spain. The invasion of Havana was under the command of George Keppel, with Admiral George Pocock and Keppel's two brothers Augustus and William Keppel, commanding the actual attack. They were successful with the capture of Havana and Fort Morro and its unprecedented amount of treasure. They also captured a number of the Spanish Fleet, which was needed to accomplish their plan. Accordingly, Admiral Pocock returned to England with the main English fleet carrying a portion of the treasure, while Augustus and William Keppel along with their crew and Masonic engineers all sworn to secrecy, manned the 8 Spanish Galleons and the 2 British Man of War. This treasure was diverted to a small island off the coast of New England and Nova Scotia now called Oak Island.

At Oak Island the treasure was buried based on the Masonic "Royal Arch" (Enoch's Temple) consisting of nine arches going down nine levels by way of a main shaft (The Money Pit) which was dug down to the bedrock. From the ninth level another tunnel was constructed which ran back up to a point above the known water level, roughly 20 feet underground and at this point an enormous cavern was built to hold the treasure. The treasure was carted down the main shaft and placed up into this cavern. To conceal their plot they had the 8 Spanish ships dismantled with all the wooden parts not used in the construction of the shaft, tunnels and cavern burnt and all the metal parts (canons, anchors and bolts) were placed at the bottom of the main shaft. Flood tunnels were built out to the ocean to booby trap any treasure seekers attempts to follow down the main shaft. A large stone was placed at the air lock (8th level) as bait to activate the flooding. This stone had strange engravings on it to entice any unworthy treasure seekers to pause and take the bait (stone) away for deciphering, thus allowing time for the tunnels and main shaft to fill with water and be destroyed forever. The Masons knew exactly by their calculated mark above ground where the treasure cavern below ground was located, and could access it by digging down 20 feet.

Once the treasure was secured in the cavern and all the evidence was hidden from the island, it was documented that the Keppels sailed back to England with 2 ships and a small portion of the treasure. They claimed that the remainder of the fleet had sunk in a hurricane on route.

The Masons left several markers on the island to relocate the treasure. 1 large triangle or more precisely a crude Sextant 2 drilled holed stones 1 large stone cross These combined markers along with the Star Map are used to cross triangulate and a set degree on the sextant point to the "X" where the cavern is today located.

Is the treasure still in this cavern?

I believe it was removed in 1795

One of the three original discoverers of the Money Pit was Daniel McGinnis, who stated he was drawn to the island when he noticed strange lights appearing on the island just prior to his discovery. These lights were made by the Freemasons when they returned for their treasure. This Masonic party was headed up by George Washington, President of the United States – acting Grand Master of the Washington DC Masons.

The treasure's vast fortune was used, as planned, to further the power of the Freemasons in their new world, with them becoming "The New World Order".</comment>


Information Hiding: Steganography done with JavaScript - <AUTHOR> http://www.peter-eigenschink.at/projects/hideme/demo/

<comment><USER2> It seems to have a message length limit. Any way to increase that?

<comment><AUTHOR> The message length is limited by the size of the image, you can hide (width _height_ 3)/16 characters. But note that your image will be resized after you have selected one. I am going to append a field where you can see how much information can be hidden. Thanks!

</comment></comment><comment><USER3> Where can I get that shirt?

<comment><USER4> since i had just done a tineye search to see if there were any pre-hidden messages out there:

<http://www.thinkgeek.com/product/cc38/></comment></comment>


Amazon delivery drivers may reveal the true human cost of 'free' shipping - <AUTHOR> https://www.businessinsider.com/amazon-delivery-drivers-reveal-claims-of-disturbing-work-conditions-2018-8 <comment><USER2> Pretty shocking and sad article.

While reading I found myself thinking, "wouldn't it be nice if instead of all this frenetic hazardous work we had a centralized shipping infrastructure that all businesses could share..."

And then I remembered the post office exists.</comment>


Dog Fighting Videogame Draws Fire From Humane Society, Michael Vick - <AUTHOR> http://blogs.wsj.com/speakeasy/2011/04/25/dog-fighting-videogame-draws-fire-from-humane-society-michael-vick/

<comment><USER2> Surprisingly short article that might as well be an ad for the game.

I hoped for at least mention of pokemon, which supposedly was a game born out of the (once popular?) kids pastime of capturing bugs and making them fight each other.

Nor does it mention the massively popular genre of Human Fighting games, like Call of Duty.

I'm reminded of Penny Arcade:

<http://www.penny-arcade.com/comic/2011/3/23/>

</comment><comment><USER3> My hypocrisy sensor went off. They should take a look at Mortal Kombat, Call of Duty, Blood Rayne to name a few. In these games people kill people, they slice and dice them, why not complain against those. Aren't those games sending the wrong message?

Just because a game contains objectionable material doesn't mean that the players will do that.

<comment><USER4> Well, to begin with, many people do complain about those types of games. _cough_ Jack Thompson _cough_. There is infact, a great deal of yelling going on about those. It's not hypocritical for the humane society to talk about this game versus Call of Duty. Their job is to deal with animals and animal cruelty. As an organization, they have no 'position' on violence on humans per se. And Michael Vick is involved for all the obvious reasons... he has to look like he's sorry for what he'd done.

Furthermore, there is a difference between violence on humans and violence on animals. Regardless of the how violent our entertainment gets, there is also a constant reminder from society/whatever that it's not cool/moral/right whatever to actually maim/kill other people. On the other hand, there is much less of that when talking about animal violence.

Anyhow, I still think it's kinda silly. No actual reason for it to be pulled. I really think that everyone is just going through the motions here.

</comment></comment><comment><USER5> Of course, training and equipping virtual humans or humanoids to fight each other is perfectly acceptable.</comment>


Apple killing the Lightning port may be the next step to a truly wireless iPhone - <AUTHOR> https://www.cnet.com/news/apple-killing-the-lightning-port-may-be-the-next-step-to-a-truly-wireless-iphone/?ftag=COS-05-10aaa0b&linkId=53341648 <comment><USER2> > Apple's goal may be to remove all ports entirely.

> Apple may be working towards an iPhone that is devoid of all buttons and > ports, and is completely wireless.

Seems like an attempt at a foolish purity to me, and user-hostile to boot. Eliminating all ports means charging your phone in a pinch or one the go will be harder. Say goodbye to emergency USB battery backs; and say hello to awkwardly balancing your nearly-dead phone on a charging pad an airport hallway, starting at it while it charges.

If Apple goes through with this, I predict we'll see iPhone cases that incorporate a USB-C port and an integrated wireless charging pad. They'll be ugly, awkward, but very popular.</comment>


The scientist still fighting for the clean fuel the world forgot - <AUTHOR> https://www.technologyreview.com/s/610915/the-scientist-still-fighting-for-the-clean-fuel-the-world-forgot/ <comment><USER2> Correct me if I am wrong, but biofuels are still fuels you need to burn through an internal combination engine in order to convert it to mechanical energy, and in the process it will still create greenhouse gas in the tailpipes, no?</comment>


EU Trade Commissioner on TTIP: I do not take my mandate from the European people - <AUTHOR> http://www.independent.co.uk/voices/i-didn-t-think-ttip-could-get-any-scarier-but-then-i-spoke-to-the-eu-official-in-charge-of-it-a6690591.html <comment><USER2> I think there's a lot of money involved with this deal.. The previous "Commissioner" was also as corrupt as anything...

Tax fraud, trading with insider knowledge, ... It isn't mentioned in his English bio though ;) [https://en.wikipedia.org/wiki/Karel_De_Gucht](https://en.wikipedia.org/wiki/Karel_De_Gucht) vs [https://nl.wikipedia.org/wiki/Karel_De_Gucht](https://nl.wikipedia.org/wiki/Karel_De_Gucht)

It's weird that we let these people decide about democracy and what's "good" for us.</comment>


Hashing Files in Elixir - <AUTHOR> https://www.poeticoding.com/hashing-a-file-in-elixir/ <comment><AUTHOR> In this article we see what a hash function is and what it can be useful for. We see how to calculate the hash of strings and files using the Erlang :crypto module and Elixir streams.</comment>


Ask HN - When should a web app send marketing emails? - <AUTHOR> http://srirangan.net/2012-05-when-should-a-web-app-send-marketing-emails

<comment><AUTHOR> An email from Asana asking me to "Do great things" triggered this post.

I have nothing against Asana, I _love_ their app and will recommend it to my team for the next project, but I didn't expect this email from them.

Also, lets not make this Asana specific. Its a very common pattern for web apps to send out needless marketing emails.

When did this become acceptable?</comment>