Show HN: A microblog hosted in DNS TXT records - <AUTHOR>

Most recent post is pointed to by CNAME record:

    host head.microblog.erikano.net.
 This will return a reply like:

    head.microblog.erikano.net is an alias for 1.microblog.erikano.net.
 Read the post:

    host -t txt 1.microblog.erikano.net.
 <comment><USER2> that's cool but what are you using to create these on the go?

<comment><AUTHOR> It is currently a manual process.

This first entry I made by

        TZ=UTC echo $( date +%YT%T%z ). <message>

Which I copied to my clipboard and then manually created the TXT record for and then the CNAME.

Next time I want to add an entry, I will:

        expr $( host head.microblog.erikano.net \
                | egrep -o '[^ ]*$' | cut -d'.' -f1 ) + 1

To get the ID for the post to be made and then echo calling date as I did for the first post.

Had I still been hosting the DNS server myself, I would've turned this into a script and appended the entry as a TXT record directly and updated the CNAME to the new value using sed.

Actually, thank you for asking because I just realized what my next little project should be: Instead of the way I'm doing it now, I can selfhost a little DNS server which will be authorative over microblog.erikano.net while still hosting the DNS for the rest of erikano.net and my other domains where I have them now. The project will be written in Go since I have been wanting to make something in Go but didn't finish the other things I started writing in Go. I have no ETA for the microblog DNS selfhost server project because of work and current projects.

Hope I didn't misunderstand the question but if I did and you meant how to update the microblog when I'm out and about, the answer is I would need to use a web browser currently to manually update the records. When my own server has been written, I simply ssh to my VPS which hosts the server and run a cli tool I will name "mb" ("microblog") with my message as argument.</comment></comment>


Access denied - <AUTHOR> http://www.economist.com/blogs/babbage/2013/01/public-domain <comment><USER2> To me the whole copyright extension issue is a good argument for justification of piracy. If the copyright industry side can just replace the social agreement (protection of works in exchange for them going public after a _reasonable_ amount of time) with one they like more, why would it be immoral for the content consumers to to the same?

I'm talking about the ethical side, not legalities. The fact that said consumers lack the lobbying power only makes their actions illegal, not immoral.

<comment><USER3> >To me the whole copyright extension issue is a good argument >for justification of piracy.

There's very little pirating of content that is over 20 years old, so I'm not sure how the copyright extension thing would justify piracy...

<comment><USER4> People grant protection to works on the provision that these works become freely available after N years. The copyright industry just goes ahead and extends this unilaterally, just because they want to. Why should the public keep up its end of the deal when the copyright industry doesn't?

<comment><USER3> I still don't see what this has to do with grandparent's point that this was affecting _piracy_. I certainly agree with your point. I just don't see how it's relevant to the points of either parent or grandparent.

<comment><USER4> He didn't say it affects it, he said it justifies it.

</comment></comment></comment></comment></comment><comment><USER5> There are two competing interests here. First, Disney wants to keep control of Mickey Mouse cartoons, and it doesn't feel unreasonable at all that they should. Second, the rest of the stuff that is of little commercial value but of potential cultural value should be freed from uncertain or uninterested ownership.

The answer feels trivial to me, which means I'm probably missing something. Fixed term for a few decades from the creation of the work, maybe 30 years or 40 years. After that, you need to give a copy of the work to the Library of Congress, pay a nominal fee, and you get a 5 year extension. Take as many of those as you want.

This greatly simplifies everything. If you find a work that is older than the base term, you look it up in the copyright extension database. If it's in there, you can find out who owns the rights to it, and try to license rights. If it isn't in there, it's public domain. If somebody doesn't stay on the ball enough to renew their rights every five years, it probably isn't all that commercially valuable, and moves into the public domain.

<comment><USER6> > Disney wants to keep control of Mickey Mouse cartoons, and it doesn't feel > unreasonable at all that they should.

It feels completely unreasonable to me. There's no reason why Disney should be given an exception when others aren't. It's idiotic to suggest that they should get special treatment just because their IP is commercially valuable.

<comment><USER7> I disagree. Disney is the perfect example of when copyright should be extended. Disney (the man) is dead but he didn't die owning a portfolio of cartoon IP. Disney (the corporation) owned that and still has a global business that lives and dies by the fact that it can maintain its brand. I don't see any benefit to mankind if people were suddenly free to print Mickey Mouse onto t-shirts and sell them.

<comment><USER8>
      | I don't see any benefit to mankind if people were
      | suddenly free to print Mickey Mouse onto t-shirts
      | and sell them.

Mickey Mouse is a trademark of the Disney Corporation. Someone selling Mickey Mouse t-shirts would quickly run afoul of Disney's trademark lawyers. If Steamboat Willie fell into the public domain it would just mean that I could legally sell copies of it on DVD, or I could dub my voice over the video and post it to YouTube. Neither of these would materially harm Disney. Printing frames captured from Steamboat Willie on t-shirts would fall into an area where Disney could reasonably take someone to court for violating their trademark. Printing a generic image of Mickey Mouse on a t-shirt would be blatant violation of trademark, and practically an open-and-shut case.

I can't tell if you're just trolling or uninformed, but there are always a handful of posts in these discussions that don't understand the differences between patent, copyright and trademark.

<comment><USER7> I just didn't know that Mickey Mouse was also trademarked. I do understand the differences between the three, however.

<comment><USER9> I had a really long convoluted discussion with an IP lawyer, and he claimed that only specific instances of Mickey Mouse's likeness were protected by trademark.

I haven't really absorbed his argument, but he seemed pretty sure about it, and that we needed something else to (legitimately, in both our opinions) protect Disney's ability to control their brand even if copyright expired. He recommended giving Disney something very much like "right of publicity" for Mickey Mouse so they can still control the character, while allowing lots of old stuff to still enter the public domain.

<comment><USER8> To me, this sort of stuff seems like the IP law equivalent of bailing out banks (or GM) because they are "too big to fail."

Even if specific instances of Mickey Mouse's likeness are trademarked, I have a hard time believing that someone could be selling "Mickey Mouse" t-shirts on the street and not be in a risky legal grey zone.

[I'll also note that as an IP lawyer he probably has a rather conservative view of this. Thinking from Disney's perspective they don't want any trademark lawsuit to be in a legal grey zone. They want them all to be slam-dunks so that they can get their way.]

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> It saddens me a good deal that most of us can come up with very compelling arguments that un-restricting these works would benefit society, yet there seems there's very little we could do to make even a splash of change.

In fact, I gander the comments here will soon be filled with of "here's how I would do it" comments, none of which will make a mote of a difference.

What can we do, really?

It seems _insane_ that the reasons given hold any merit beyond a money-grab. And while I may be a bit myopic here, the "motivates content-producers" feels flimsier still than monetary arguments.

Do most creative works really need even ten years of protection? Do you suppose Shakespeare would have made more plays or less if copyright existed in his day?

<comment><USER11> I'm not convinced that un-restricting works would benefit society. If Disney gets to keep copyright on Snow White forever, about a third of the movie's profit will continue to be paid in tax.

So the choice is between (a) letting 7-year-olds everywhere watch Snow White, and (b) having more money to pay for roads, schools and cancer research. Is option (a) necessarily better?

<comment><USER12> _If Disney gets to keep copyright on Snow White forever, about a third of the movie's profit will continue to be paid in tax._

Do you have any evidence to counteract the common wisdom that movies rarely actually make any money on paper?

 _So the choice is between (a) letting 7-year-olds everywhere watch Snow White, and (b) having more money to pay for roads, schools and cancer research. Is option (a) necessarily better?_

Letting Disney sell Snow White doesn't magically create money from nothing. The money that isn't spent by consumers on Snow White will be spent on something else, which will eventually be taxed, funding roads, schools, and cancer research.

</comment></comment></comment><comment><USER13> By 2019 it'll have been 49 years without a single work entering the public domain. And somehow I doubt that we'll even get there, the goalposts will likely get moved again before 2019.

And people wonder why there's such widespread disrespect for copyright.

<comment><USER14> Only if we let them move the goalposts. We stopped SOPA, and we can stop this. Personally, I plan to spend money both money and time on this battle when it happens.

</comment></comment><comment><USER15> I also agree with purchasable extensions, as long as the prices increase exponentially from a very modest price in the first renewal.

Further, I think there is room to tie trademark into the process for media properties. In cases like Steamboat Willy, the character reflect a trademark for the Disney business. If it were applied as such, one might argue that a public domain version of the film (which could be seen as a product in the trademark domain) might be freely distributable but not modifiable without risking trademark infringement. This protects the free flow of information to later generations, as well as provides the company a means to protect the its brand from confusing or abusing variants/remixes. Further, registered trademarks already require regular renewal from a living person or operating business.

Not sure how one would apply that music and non-fiction (or if one should even try); seems about useful as copyrighting N seconds of silence.

(Obligatory: I am not a lawyer.)

</comment><comment><USER16> It's only tangentially related, but I had to make a comment: <http://www.economist.com/comment/1835110#comment-1835110>

I happily pay for my subscription to The Economist and enjoy reading it on my iPad. But they don't even allow you to select a single word in an article, which would make it possible to look things up in a dictionary.

This kind of limitation to attempt enforcement of copyright is part of the whole problem right now.

<comment><USER17> I doubt that they do it to prevent copying. I can access every article from the newspaper on their website as nicely formated HTML.

<comment><USER16> You have to go out of your way when writing an iOS app to prevent selection/copy in text views. They had to at least think about it.

<comment><USER18> Or they just don't use standard text views and didn't go out of their way to re-enable it. Back in the early days of OS X, you'd see a lot of controls that looked like the real thing but acted in subtly different ways because they were re-implementations to add some minor feature.

</comment></comment></comment></comment><comment><USER19> The standard of "xx years since the death of the author" can be quite awkward when the author is not prominent. Imagine if computer code was "10 years since the death of the author" and you found something on an archive. Better is "xx years since creation."

<comment><USER9> Yes, while we can fight about the length, it should be a flat length. Young people who make works shouldn't have them last longer than old people who make works.

</comment></comment><comment><USER20> I wonder if the period of 2009-2015 will have a bumper crop of content entering the public domain in Europe because so many young people died in the Second World War.

<comment><USER21> Depends on the country: some have explicitly extended the copyrights for people who died in the war. For example, writers who died in active service of the French military have copyright for 100 rather than 70 years postmortem: <http://en.wikipedia.org/wiki/Mort_pour_la_France>

<comment><USER13> This makes a lot of sense. By extending copyright even further after their deaths, it will incent these authors to create more posthumous works!

<comment><USER22> Presumably it was to not discourage people in the future from enlisting/responding to the draft for fear of copyright, and to avoid the "poor windows and orphans of the famous writers who died in the war". Maybe the French are different, but "will my copyright endure longer if I die" would not really be on my list of concerns in war.

Antoine de Saint-Exupéry is the only one on the list who I've heard of.

<comment><USER21> I think it was some kind of feeling of fairness: that, absent the war, they would've lived longer, so there should be an adjustment to make copyright expire according to when they would've "normally" died. On the other hand, that's true of any copyright system based on years postmortem: you could argue the same about someone killed by a drunk driver, or hit by lightning, or murdered. That's one reason I prefer publication-date-based systems rather than years-postmortem systems (the other reason is that death dates for lesser-known authors are often very hard to actually find, whereas publication dates are typically printed right in the book).

Plus, I think the argument is weaker when duration is already life+70. If it were, say, life+0, or life+10, you might have an argument about their widow/orphan, but life+70 is already enough to cover any survivors comfortably for the rest of their own lives. Life+100 gets into territory where their great-grandkids are getting the money.

</comment></comment></comment></comment></comment><comment><USER23> The last copyright extension might be the last Disney could push for. If they pushed it significantly further, they would lose the copyright of their older works to the Brothers Grimm.

Walt Disney's first animated film "Snow White and the Seven Dwarfs" was published in 1937, 74 years after the death of Jacob Grimm. The Mickey Mouse copyright extension is 70 years after the death of the longest surviving creator.

That said, they could lobby to increase copyright terms for post-1927 works only, or corporate works only and leave natural persons out in the cold. It's uncertain whether these moves would be too politically extreme for Disney.

</comment><comment><USER24> How much does Canada's terms differ from the US?

<comment><USER21> It's typically shorter than both the U.S. and Europe: 50 years postmortem. For example, Ernest Hemingway (died 1961) entered the public domain in Canada last year. In most of Europe (life+70) his works will enter the public domain in 2032, and in the U.S. (95 years from publication, for works published before 1978) they'll enter at staggered times starting from the 2020s.

That's why this exists: <http://www.gutenberg.ca/>

</comment></comment><comment><USER25> Can someone make the argument about why should Disney be forced to give up copyright to Mickey Mouse? Or The Beatles to the music they created?

<comment><USER26> They were given the copyright only with the limitation that it would expire someday. You have the argument backwards.

Can any one make the argument why we should give Disney an unlimited monopoly on the content they create? Why should we pay for courts and systems to enforce their artificial scarcity, if they cannot uphold their side of the agreement?

<comment><USER25> _"They were given the copyright only with the limitation that it would expire someday. You have the argument backwards."_

Maybe not, if it's something I invent or write, why does someone have to give me rights over it? They shouldn't take them instead... "shall not."

I understand how the constitution is written but

<comment><USER26> > why does someone have to give me rights over it?

They don't have to give you rights over it. You already get all of the natural rights associated with it. What you don't get is the additional right to prevent other people from using it or copying it until a government gives you that right.

Restricting other people is an artificial construct and that is enforced by the government. This is artificial scarcity unlike property rights where ownership naturally deprives someone else of the property.

Ideally, the government only grants you a limited (time) monopoly in exchange for incentivizing people to create. If we aren't going to get anything in exchange, why should we grant you additional rights?

<comment><USER25> _"What you don't get is the additional right to prevent other people from using it or copying it until a government gives you that right."_

If you can copy my code /book or whatnot what rights do I have? Almost none. If there was no government, I could kill you for it to maybe scare others.

> "This is artificial scarcity unlike property rights where ownership > naturally deprives someone else of the property."

Can I use your house while you are away? On the nightstand, I'll leave $5 or whatever the wear and tear might be for the night.

Or "clone" Coca Cola? They can keep theirs

<comment><USER26> > Can I use your house while you are away? On the nightstand, I'll leave $5 or > whatever the wear and tear might be for the night.

Ah, see?--"while i am away". Possession of tangible items deprives someone else the use of it. There is no such natural limitation on ideas or expression of ideas. It requires additional government "interference" before ideas and expression are made to be scarce.

> If you can copy my code /book or whatnot what rights do I have?

Exactly! Additional rights are granted by the government, not taken away. You possess the original copy. Why would you assume to have an additional rights? If you don't want people to copy it, don't let them see it.

<comment><USER25> _Ah, see?--"while i am away". Possession of tangible items deprives someone else the use of it. There is no such natural limitation on ideas or expression of ideas. It requires additional government "interference" before ideas and expression are made to be scarce._

You are not using your home anyway and I was gonna pay the wear and tear.

Better for the public good, hell, maybe I get some great ideas while I sit on Bill Gates' porch ;)

 _"Possession of tangible items deprives someone else the use of it."_

If no one can legally copy my book (or my grandfather's book) I had a better chance of making money from it; if it's free fewer people will buy a copy (we can all agree to that.) If the government says that now I no longer have copyright, how aren't I deprived of something?

Some people leave homes, estates, gold coins, stocks, others leave books or songs. Roy Disney's family is a live and well, and so is Disney Inc, and to me it seems unfair to them to lose Mickey Mouse

<comment><USER26> > If no one can legally copy my book (or my grandfather's book) I had a better > chance of making money from it; if it's free fewer people will buy a copy > (we can all agree to that.)

Of course. But if you want to base fairness on your chances to make money, just ask the government to force people to give you money instead of this convoluted IP situation.

> If the government says that now I no longer have copyright, how aren't I > deprived of something?

I'm not sure how you can say you are deprived of something because they "only" gave you a 90 year copyright. It's like saying someone deprived you of money because they only gave you a million dollars not an infinite supply.</comment></comment></comment></comment></comment></comment></comment></comment>


Ethnologue - Explore the Languages of the World - <AUTHOR> http://www.ethnologue.com/

<comment><USER2> Yes. It's a good source of information about languages of the world and SIL (the organization behind it) is the authority for ISO 639-3 language codes[1]. Some experts criticize[2] their approaches on what should be classified as a language and what should not (and should remain in the realm of dialects) as well as religious missionary background of the organization.

[1]: [http://www-01.sil.org/iso639-3/](http://www-01.sil.org/iso639-3/)

[2]: [http://www.nytimes.com/2005/07/19/science/how-linguists- and-...](http://www.nytimes.com/2005/07/19/science/how-linguists-and- missionaries-share-a-bible-of-6912-languages.html)

Edit: Correct footnote numbering.</comment>


Ask HN: Version control solutions for 3D cad files - <AUTHOR> Hi all, I currently keep 3D part models and assemblies in svn for version control. This kinda works but one big drawback is I can't readily see diffs between versions of the files. I'm typically using solid works or .stp files.<p>Does anyone have any better solutions? I know GitHub can diff stl files. But those are not native to the 3D cad programs. <comment><USER2> Use a text based file format for diffs, or use a binary diff tool (vbindiff)</comment>


Is Windows Good for Developers Again? - <AUTHOR> https://quanticdev.com/articles/is-windows-good-for-developers <comment><USER2> Interesting earlier story on the origin of winget

[https://www.zdnet.com/article/microsoft-credits-maker-of- pac...](https://www.zdnet.com/article/microsoft-credits-maker-of-package- manager-it-copied-for-windows-10-but-offers-no-apology/)</comment>


DVRs were supposed to undermine television. They have done the opposite - <AUTHOR> http://www.economist.com/business/displaystory.cfm?story_id=13528310

<comment><USER2> There's another factor that the article doesn't mention explicitly: DVRs erode some of the benefits of pirating TV shows. People pirate TV shows (that are available on air where they live) largely because they want to watch them when they want, they want to be able to pause when they need to, and they don't want to sit through five minute blocks of the same advertisements they've seen three times already in the program.

I suspect Hulu exists because someone noticed this and wanted to erode more of said benefits.

<comment><USER3> Essentially their approach is to make something good enough that is legal to prevent the illegal method taking hold. The music industry could have done with getting that 10 years ago.

<comment><USER4> The music industry is doing a pretty good job of that right now.

It has gotten to the point, for me, that I wouldn't even know where to go to bootleg music anymore. With things like imeem or pandora, I don't need to.

In fact, there was an album I wanted a week or so ago; I had to ask one of my little sisters what was the current tool that people were using to get music (she is in high school). Not wanting to jump through hoops (the website she linked me to was basically a front-end of ? intitle:index.of on google, I fucking loathe peerguardian and didn't feel like renewing my usenet subscription), I just bought the album on iTunes, ran it through qtfairuse (you'll need to downgrade to itunes V6 to do it) and called it good.

They really are starting to figure it out. If you want an example, go to whitelabel.net. It is a tool for DJs to freely download new tracks (and sometimes albums) before they hit store shelves. There are no intrusive sign- up proceedures, just a username/password form, and a download page.

That said, I believe that the RIAA is going to be going away very soon (the arm of it that it suing people, not th arm of it that regulates audio standards...kindof like the IEEE). The "temple" studio model is all but dead. The cost of entry into the music production world has gotten to a point that the small, studio next to your favorite bar (if you're in tempe az, you know what I'm talking about) is cranking out music that is on par with the stuff that the megacorp is.

</comment></comment></comment><comment><USER5> _"Families with DVRs seem to spend 15-20% of their viewing time watching pre- recorded shows, and skip only about half of all advertisements. This means only about 5% of television is time-shifted and less than 3% of all advertisements are skipped."_

I boggle. We never, _ever_ watch live TV under normal circumstances (barring election nights, 9/11, and so on), and the only time ads aren't skipped is when there is nobody in the room to skip them (or watch them). Even with high- interest sporting events broadcast live we start watching half an hour late so that we can skip the ads.

I am at loss to explain those numbers.

Edit: good point below. We have a Dish DVR, and it really is very well done useability-wise.

<comment><USER6> Having used both a Tivo and a Comcast Cable DVR, I'm sure the poor numbers have to do with usability. It sounds cool to have a DVR and for $5 a month the cable company makes it easy. The cable company DVR experience is painful at best. Most commonly it is frustrating and difficult to use, not including the trust that a DVR must earn before you let it time shift your favorite shows. Using Tivo for the past 4+ years I shudder when I use a cable company DVR.

</comment></comment><comment><USER3> I figure either DVD players or probably DVRs will soon connect to the internet to play flash content there. I currently use my Wii to connect to BBC iPlayer but it only has Flash 7 which limits it's use.

What could be disruptive about that is if content companies sell their content directly cutting out the TV network middle man.

</comment><comment><USER7> I'm surprised at the (Turner Broadcasting-supplied) stats on DVR usage. Since I got a TiVo, watching 'live' TV has become practically intolerable. Even when I want to see something ASAP, I'll do something else for 15-20 minutes to get enough of a buffer I can skip all commercials.

</comment><comment><USER8> Funny they don't mention that the exact same arguments were made about the VCR in the 1980s.</comment>


The Four Polymorphisms in C++ - <AUTHOR> http://www.catonmat.net/blog/cpp-polymorphism

<comment><USER2> That's a great summary!

I'm always disappointed if people only know one kind of polymorphism and apply that rigorously to all problems. Overviews like this might help people to make a _conscious_ decision on which language construct would be a good fit for their actual design problem.

<comment><USER3> It may be a good summary, but I completely disagree with author's (implied) assertion that all these should be lumped under one term. All these concepts are different in their mechanics, which is the reason we have different terminology to describe them. Just call overloading overloading. C++ does not need more ambiguity, it needs less.

<comment><AUTHOR> I never implied that they should lumped under one term. On the contrary. I wrote out all the meanings the term can have to disambiguate it.

<comment><USER4> The blog post is titled "The Four Polymorphisms in C++."

<comment><AUTHOR> Yes, the four polymorphisms you can find in C++. Am I missing something?

<comment><USER5> You're missing the fact that "polymorphism" has an established meaning in C++ which excludes two of your examples. You're using a definition of polymorphism that is independent of C++ and applying it to C++, which is certainly a valid exercise, but you haven't bothered to tell us what your definition is or explain why it applies to each example. If I assume that by "polymorphism" you mean when a single name can be used to refer to different things, then consider the following:

      void foo(float f);

      int main()
      {
        foo(1);
        return 0;
      }

What name is polymorphic here? I suppose you can say that foo is polymorphic if you attribute the coercion operation to foo, but that's not the way I think about it. foo is called after the coercion. The coercion is caused by the relation of the type of 1 with the type of the function parameter f.

In your blog post it would have made things much clearer if you had acknowledged the conventional usage of the term in the context of C++ and explained the different definition you were using.

</comment></comment></comment></comment></comment></comment><comment><USER6> I know it's just a blog post, but the section on "Parametric Polymorphism" says that the same code executes for any type. But in the example given, "a > b" will evaluate to entirely different operations depending on the type, and in fact only works because of the other types of polymorphism. Since this is such a common situation, I might not make it a first class citizen in the taxonomy.

<comment><AUTHOR> In that example I only wanted to illustrate parametric polymorphism on type T (and ignore the overloading on operator > that happens).

</comment></comment><comment><USER4> Coercion is not a form of polymorphism. In all the other forms, dispatch depends on the type of a value. When there's coercion going on, be it explicit or implicit, the same code is being executed regardless of the value being coerced. The only code that one might say "changes" is any code that's executed to perform the cast. But that change in casting is basically ad-hoc polymorphism.

<comment><AUTHOR> This paper [1] says coercion is a kind of ad-hoc polymorphism.

[1] "On Understanding Types, Data Abstraction, and Polymorphism" <http://lucacardelli.name/Papers/OnUnderstanding.A4.pdf>

</comment></comment><comment><USER7> Since we are talking about polymorphism, here are several blog posts I wrote on this topic:

[http://www.oriontransfer.co.nz/blog/2009-05/what-is- abstract...](http://www.oriontransfer.co.nz/blog/2009-05/what-is-abstraction)

[http://www.oriontransfer.co.nz/blog/2009-05/run-time- polymor...](http://www.oriontransfer.co.nz/blog/2009-05/run-time-polymorphism)

[http://www.oriontransfer.co.nz/blog/2009-05/compile-time- pol...](http://www.oriontransfer.co.nz/blog/2009-05/compile-time-polymorphism)

If you find it interesting that is great. I enjoyed this blog post.

</comment><comment><USER8> This was also posted in Reddit, and there are some other comments over there, apparently:

[http://www.reddit.com/r/programming/comments/cgckf/the_four_...](http://www.reddit.com/r/programming/comments/cgckf/the_four_polymorphisms_in_c/)

</comment><comment><USER9> Where do macros fit into this taxonomy?

<comment><USER10> I would say "outside".

<comment><USER9> You want to offer a working definition of "polymorphism", then?

Macros certainly allow you to write code that's applied to differently typed arguments.

<comment><USER11> Indeed :

FOO.hxx:

TYPE FOO_TEMPLATE () {

      TYPE foo;
      /*...*/
      return foo;

}

Foo.h:

#DEFINE FOO_TEMPLATE foo_int

#DEFINE TYPE int

#include "Foo.hxx"

#DEFINE FOO_TEMPLATE foo_float

#DEFINE TYPE float

#include "Foo.hxx"

It's a kind of weird and ugly macro trick, bug it can be useful in C when one's need polymorphism and performance (and cannot use C++ at all, which is a far better solution).

[Edit:] I realize now it's not polymorphism like said in the article, because the caller had to tell explicitly which foo_xxx to call. But it did provide "polymorphic" code in Foo.hxx (so only one implementation, no repetition). That said, a cast is also explicit.</comment></comment></comment></comment>


Hold Everything: We May Get Another YHOO Bidder - <AUTHOR> http://www.alleyinsider.com/2008/02/hold-everything-we-may-get-another-yhoo-bidder.html

<comment><USER2> I so want this to be the case because I can't see MSFT doing anything but wrecking all the parts of Yahoo worth keeping.

</comment><comment><USER3> this is a Yahoo plant. They're going to use this to renegotiate the sales price. Can I haz $50 per share?</comment>


Ask HN: Is my pain point a startup idea? - <AUTHOR> Tried to post this with my old original account, but it's shadow banned. So again:
I travel pretty often. I'm not exactly a digital nomad but I like to stay in cities around in other cities and do whatever I would have done at home otherwise. Mostly working on web projects.
And it's insane, how much time I spent on AirBnB and Booking.com, looking for the right apartments. Hours and hours of work that could be replaced with a simple database query if they had structured data. But even without, it could be made much easier with the right interface.
Two of my requirements make it so hard:
1) Top floor. I don't like people running 'on my head'.
2) A view. I don't like to look out of the window and stare at another house.
So I have to look at each offer on AirBnB and Booking.com and try to figure out if it matches those. This is hard enough. I even became super good at finding the apartments on Google Earth so I can look at them from the outside. Insane.
To add insult to injury, neither of the two sites offer to tag apartments as "I don't like it". So when I look at the same city another day, I have to start over and look at all those apartments I already looked at again.
On AirBnB I abuse the 'Wishlist' feature to mark apartments as 'Dont like it'. So my 'wishlists' are really 'dont wish lists'. But at least it somewhat works. They mark apartments on one of your wishlists with a heart. So I know that the apartments with a heart are those that I don't like :) Since they only allow 50 or so apartments on a wishlist, I have multiple wishlists for every city.
Realizing how much time I spend on this, I am considering to hire somebody for it. So I will have a database with apartments with a view.
What do you guys think? Should I then put it online? Like 'Nomad list with a view'? Or am I a unique snowflake? Or does something like this already exist? <comment><USER2> Your account isn't banned. [https://news.ycombinator.com/item?id=16376165](https://news.ycombinator.com/item?id=16376165) set off a spam filter. We've restored it and marked your account so it won't happen again.</comment>


Bribes, Backdoor Deals, and Pay to Play: How Bad Rosé Took Over - <AUTHOR> https://www.bonappetit.com/story/rise-of-bad-rose <comment><USER2> This post seems like little more than a puff piece for the author's book and a handful of specific importers. Not a single bad (or good) rosé is discussed by name, and not a single example of a wine company that engages in these practices is provided.</comment>


Apple leaves iOS 10 kernel unencrypted in developer preview - <AUTHOR> https://www.technologyreview.com/s/601748/apple-opens-up-iphone-code-in-what-could-be-savvy-strategy-or-security-screwup/ <comment><USER2> This is clickbait.

The kernel binary is unecrypted. So potentially you can disassemble it. But this isn't huge news. The windows kernel binary is unencrypted, so are most closed source software binaries.

Furthermore Apple releases the Darwin/XNU kernel sources as OSS so you even have the source already if you wanted.

Shipping an unecrypted binary isn't really considered a security threat. The amount of time and effort involved in tracing those thousands of jump/call instructions can be automated, but looking for memory issues really can't as you have to have intimate knowledge of how all the assembly is interacting with each other, and a very good understand of the platform its executing on.

RE'ing a full user land program is considered a herculean task. RE'ing an OS binary would be herculean even for a large team of skilled reverse engineers.

<comment><USER3> You don't necessarily need to reverse engineer the whole thing. If you're just looking to bypass a particular check then sometimes it's enough to dig around until you find something relevant, then find references to the memory location. There are tools that can make this easier.

Or so I've heard. Surely no one here has ever done anything of the sort.

Still, you're right about the scale of the problem. It's time consuming to find the relevant bit to start building on, even on relatively small binaries. I don't even want to think about how long it would take on an entire OS.

<comment><USER4> You would never even keep up with the updates.

<comment><USER5> A particular type of "bypassing a check" is the goal of jailbreaking—and it's just redone for every update. People with the right motivation can do crazy things.

<comment><USER2> This is a false comparison.

Jail-breaking is just a privilege escalation. You were a $USER, now you are $ROOT. This is just tricking the kernel. Fundamentally the kernel is just doing what it was programmed to do, you were just clever.

What the hack being suggested here would require is re-writing entire parts of the kernel from OUTSIDE of it. Injecting your new code INTO the kernel. Tricking your CPU into executing that code as Ring-0 (the kernel). Then having what ever you do INSIDE ring-0 not bring the whole house of cards crashing down in the process. As you fiddle with raw memory locations/address to grab what ever you were looking for.

<comment><USER6> Jailbreaking does involve kernel patching and AppStore apps run as the mobile user, not root.

<comment><USER2> Ah very sorry. I shouldn't have commented on something out of my depth. TIL

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Probably the best informed reason:

>Streamlining the operating system.

>Since it contains only the kernel, device drivers, and configuration files — and absolutely no user data — the iOS 10 kernel cache can be left unencrypted without any concerns over security or privacy.

[Here's why the iOS 10 kernel cache is unencrypted | iMore]([http://www.imore.com/heres-why-ios-10-kernel-cache- unencrypt...](http://www.imore.com/heres-why-ios-10-kernel-cache-unencrypted))

<comment><USER8> That would seem to imply that previous iOS versions put user data in the kernel cache. Why would that be?

<comment><USER9> Alternatively, they just decided to encrypt everything, maybe in case there was some sort of user data in the kernel cache. Now that they have a better idea of things, they can be selective.

</comment></comment></comment><comment><USER10> If it's a mistake, it's a fortuitous one, and I hope Apple rolls with it.

In fact, with that pile of cash that Apple has, they could institute a bug bounty that governments would be hardpressed to compete with.

</comment><comment><USER11> What is unclear to me is where the kernel is encrypted? I assume the kernel is encrypted in the download bundle, and during the iOS update the device decrypts the binaries. So, this is simply an unencrypted kernel lib in the download bundle allowing for analysis?

<comment><USER12> From what I understand, it is rather obscured then "encrypted". I'm not sure about Assembly but most higher level languages leave function and variable names in the binary. There are many programs that rename the variables and function to something random so you will have a hard time what each function does. Mojang did that for their Minecraft game but developers soon found out what each method does and strated renaming them back to something useful – this is how Mod or Plugins are available.

If apple did that with their kernel, then I'd say it is pretty bad security practice. A dedicated "hacker" can always understand what each function does with good confidence, it is just a pain in the neck and most volunteers don't wanna put up with that (while a state sponsored team may very well do that).

Security through obscurity is always bad and only scares away people who could help while leaving many true bad actors with just more, painful work. If apple did indeed just obscured their kernel, I think apple did that intentionally to have people besides the FBI/NSA look at their code (they have been more and more concerned with security in recent years).

</comment></comment><comment><USER13> Perhaps I'm misunderstanding, but the article claims the "code" is unencrypted, and that seems a little misleading. Apple hasn't encrypted the binary, but they're not really shipping the source, right?

<comment><USER14> Correct, the executable code is unencrypted, the source code has not been released.

<comment><USER15> Does this mean that all the NSWhatever symbols are visible to anyone with a debugger or readelf or whatnot?

<comment><USER16> Well you already have the symbols; what else would your app be linking against?

If you mean the functions themselves, not the symbols -- those are in the dyld cache[1], not the kernel. It's unclear from this article how easy it will be to dump the dyld cache in iOS 10.

[1]: [http://iphonedevwiki.net/index.php/Dyld_shared_cache](http://iphonedevwiki.net/index.php/Dyld_shared_cache)

<comment><USER17> Edit: Ignorance is bliss

<comment><USER16> You're thinking of debugging symbols -- the commenter I replied to mentioned symbols in general.

Linkers rely on names _and_ addresses; more precisely, name->address mappings.

</comment></comment></comment></comment></comment></comment><comment><USER18> I'm sure this will please the jailbreak community much.

If this was purposeful, which I highly am confident was, this was a good move by Apple. Make it easier to find and report bugs. When everything is encrypted, only the most resourceful can find the exploits, and for the resources they put into it, they most likely not going to just give it away for free or a small bug bounty.

</comment><comment><USER19> The word "Kremlinology" comes to mind.

<comment><USER8> Indeed, and that term has been applied to Apple for at least eight years, although I think it might be even older: [http://daringfireball.net/2008/01/macworld_expo_prelude](http://daringfireball.net/2008/01/macworld_expo_prelude)

</comment></comment><comment><USER20> For iOS developers -- Does this present any feature opportunities for you, or has Apple locked down access to the kernel in such a way as this is purely a security/research opportunity?

<comment><USER21> For developers who want to put their apps in the official App Store, this doesn't really help anything. It's definitely interesting, but only on an academic level.

On the whole, the iOS ecosystem is pretty locked down. If you submit an app to the App Store, and there's some bit of code that Apple doesn't like, they can and will reject your submission. You can only have an app in the App Store if you play by the rules.

</comment></comment><comment><USER11> This 9to5 article is a bad summary of the original. Follow this thread instead, [https://news.ycombinator.com/item?id=11953204](https://news.ycombinator.com/item?id=11953204)

<comment><USER22> The linked thread has no comments, whereas this has three. In fact the only useful link is the one it points to, which to save people's time is

[https://www.technologyreview.com/s/601748/apple-opens-up- iph...](https://www.technologyreview.com/s/601748/apple-opens-up-iphone-code- in-what-could-be-savvy-strategy-or-security-screwup/)

</comment></comment><comment><USER23> I might be very stupid but can someone tell me if it's something common in FOSS operating systems to have unencrypted kernel, or is this really something unique and potentially very risky?

(ND: I know macOS is far from FOSS, but it's just to have a comparison point. Shouldn't FOSS kernel be open by definition?

<comment><USER13> The article is phrased in such a way as to make Apple look good. They're not releasing source code, they're just not encrypting the binary image any more, which basically makes them the same as everybody else in that respect.

Encrypting the kernel image was an attempt to prevent jailbreaking and hide security vulnerabilities, and as far as I know, nobody else ships an encrypted kernel image because those reasons don't make sense on most other platforms.

</comment></comment><comment><USER24> Wait a minute! If your security only relies on your code not being known, _that_ is the screwup, not the other way around! Technology Review should know better than to potentially disseminate such a harmful notion.

<comment><USER25> That's not how this works. That's not how any of this works.

<comment><USER26> What are you referring to, exactly? Security by obscurity _does_ have caveats, but I'm not sure precisely what the issue you're raising is?</comment></comment></comment>


22X Fund: 30 Companies, 1 Token = a Whole New Way to Win at Startup Investing - <AUTHOR> https://www.chipin.com/22x-fund-30-companies-1-digital-token-whole-new-way-win-startup-investing/ <comment><USER2> Am biased because I'm part of 22X offering, but as a group of founders we were in SF during the craziness of crypto in the summer and saw that there was a better way to raise capital - together. Legally we had to cede control so that this could be done by a third party - Securitize in this case - but the ramifications are huge if we are successful. It takes a standard startup investment and turns it liquid and has potential for greater returns because of lack of carried interest fees, lower management fees and immediate deployment of capital. Here's to a new era in startup investing!!!!

<comment><AUTHOR> diversification, liquidity, and most importantly democratized access!

<comment><USER3> (Full disclosure...22X/B22 here) I'm really excited beyond just our batch. Paving the way for this can change the game for a lot of other early stage companies.

</comment></comment></comment><comment><USER4> Feeling excited to see how this venture will go overall. This can bring whole new way to get funded especiallly as a group of companies.

</comment><comment><USER5> Really cutting edge: 22X security token backed by assets of the 30 underlying companies, PLUS the tokens are tradable after certain holding periods and not subject to the capital lock-up traditionally associated with startup investing subject to market liquidity. What more?

</comment><comment><USER6> I want in! It would be great if YC companies can do the same and give the wider access to deal flow for a wider audience. I guess 500 Startup alumni is leading the charge on that and the seed stage investment is being re- engineered, who knew!

<comment><USER7> if this works out well then it will no doubts bring a breakthrough to all the future YC and 500 Startups batches. can't wait for that to happen!

</comment></comment><comment><USER8> Definitely a new way of raising capital in the start-up world...Looking forward to its success.

</comment><comment><USER9> Nice. Rise of the security tokens!

</comment><comment><USER10> What an awesome way to use blockchain technology. Love it

<comment><USER11> Next level of financial system.... means more secure and faster way of doing business in future....

</comment></comment><comment><USER12> Democratizing access to startup capital – love it!

</comment><comment><USER13> This is really interesting. Sounds very promising.

</comment><comment><USER14> Fantastic! I dream this grows and then having next 500 Startups and YC batches both in one same ICO. Have you ever heard of something better?

</comment><comment><USER15> Good stuff. Definitely support!

</comment><comment><USER16> wow! thats really great)</comment>


Ask HN: Developers which editor you use for development? - <AUTHOR>

Kindly share which editor and plugins you use, i use sublime text due to its numerous amount of features like multi select, go to line etc<p>Thanks <comment><USER2> I use vim, with a powerline, ctrl+p, jedi, fireplace, python_editing, vim- rails, solarized, and a moderately-sized .vimrc.

I find it's ubiquitous and, at least for my editing, I have all the features I want like doc/source lookups, repl integration, etc. I've been using it for a few years now, so my speed is greatly improved as well.

I run a tmux session and work out of a terminal, which is usually on a remote server piped via ssh to my machine. I find a lot of comfort knowing I don't have to worry about what machine I have on-hand, as I'm all set-up on the server.

</comment><comment><USER3> A variety depending on the project.

vi editor for general editing and single file edits that need to be done without opening a whole IDE -- I love vi overall, notepad++ when on Windows machines as its code editing and syntax highlighting is nice, but it doesn't get in the way like an IDE can at times,

For IDE work: Webstorm for node.js projects, PHPstorm for PHP projects, Visual Studio with the Power Tools plugin.

</comment><comment><USER4> [http://i.imgur.com/lDNOwNL.png](http://i.imgur.com/lDNOwNL.png)

/thread

</comment><comment><USER5> I'm not really a developer, I just happen to write software now and again. All my editing is done inside GNU Eamcs. It is portable, can be configured to do everything I want, and it is very very stable.

The only exception to using Emacs is that I compose all my email inside vim.

</comment><comment><USER6> Nothing beats Visual Studio for me. Great debugging features and lot more integrations like git etc and not to mention the publish feature. yes VS can be bloated but it makes life really easy.

Sublime text is another one if you want to consider light weight editors.

<comment><USER7> VS is hugely bloated for small-average sized applications , but for above that , there is nothing , seriously-nothing on the market that might compete with it.

<comment><USER8> It feels bloated because it's more like an environment and less an editor. Using it for small apps is like replacing a hard-drive in a fully equipped garage. You need only a screwdriver. But all those tools on the wall are making you feel a bit intimidated.

</comment></comment></comment><comment><USER9> vim with Ctrl-P and a small .vimrc This convinced me to make the move from Sublime Text full time. [https://www.youtube.com/watch?v=S_l_DL8ysQQ](https://www.youtube.com/watch?v=S_l_DL8ysQQ) [Video of Robin Ward creating an Ember component using vim]

</comment><comment><USER10> I really like vim but until neovim is ready (to support ensime on vim) I'm going to stick with IntelliJ.

<comment><USER7> IntelliJ might be good on other OS , but not on linux _.

_ Personal Experience

</comment></comment><comment><USER11> I fell in love with sublime text and grow with that, now i use sublime text 3 almost religiously

</comment><comment><USER12> gedit with a bunch of plugins, used in conjunction with gvfs to edit files live on a (staging) server.

</comment><comment> aps-sids Sublime Text mainly with following plugins:

\- Sublime CodeIntel

\- Sublime Linter

\- Bracket Highlighter

\- Emmet

\- Anaconda

</comment><comment><USER13> vi

</comment><comment><USER14> Emacs

</comment><comment><USER15> intellij and sublime

</comment><comment><USER16> IntelliJ

</comment><comment><USER17> Netbeans?

<comment><AUTHOR> grow up bro ....

<comment><USER17> What do you have against netbeans? That's why I put a question mark after my comment.

I have used sublime and textmate. They where fine but not my style. I don't work on MSFT code so I wouldn't use Visual Studio.

I don't understand why I would have to grow up?

<comment><AUTHOR> Google it

Netbeans vs Sublime Text 3

Netbeans vs Vi

Netbeans vs Emacs

<comment><USER17> Meh, I will work on being as cool as you bro...

[http://imgur.com/gallery/nJMlc4n](http://imgur.com/gallery/nJMlc4n)

</comment></comment></comment></comment></comment><comment><USER18> vim & webstorm</comment>


A Roomba smeared dog poop. There's an economic lesson here - <AUTHOR> http://www.vox.com/2016/5/17/11683718/roomba-irobot-robots-disappointment <comment><USER2> Here's an idea: Add more sensors to the robot vacuums. Improve their navigation abilities so they don't run over toys. Implement sensors that detect dog poop and vomit, or puddles on the floor, and have the vacuum avoid them.

These are all problems that can be solved with basic engineering solutions.

The only lesson to be learned here is that there is a ton of room for improvement with the current set of robot household helpers.

<comment><USER3> Not everyone thinks Neato is better. I tried both, and the Neato got stuck every time in certain areas of my home so that it was totally unusable. The Roomba, although it has issues in other areas of the house, at least works pretty well. Also, despite the Roomba's "chaotic" approach to navigating, it works. The Wirecutter, for example, thinks it's a better navigation system, and if you look at a light painting done with a Roomba you can see it covers an area pretty well: [http://lightpaintingphotography.com/wp- content/uploads/2011/...](http://lightpaintingphotography.com/wp- content/uploads/2011/08/IBROOMBA3.jpg)

Finally, I have an older model, but the new Roomba 980 includes a camera so they are working on new navigation tech, albeit slowly and at crazy high prices.

</comment></comment><comment><USER4> Isn't this a technological lesson? The Roomba is at the novelty stage rather than being a mature tech? I can't predict how long it will take for a mature equivalent to arrive but I certainly wouldn't rule out all home automation because the Roomba is lacking in many areas.

Unless something thinks there's a huge technological gap to cross?

</comment><comment><USER5> The only problem I have with my Roomba is guests always freak out "Isn't it going to fall down the stairs?!?"

Other than that it works quite well.</comment>


Hikvision has marketed an AI camera that identifies Uyghurs on its China website - <AUTHOR> https://ipvm.com/reports/hikvision-uyghur <comment><USER2> Same company that vowed to set up an internal ethics panel and promised that they aren't doing much business in Xinjiang.</comment>


In England, Coroners Decide What Is Treasure and What Is Not - <AUTHOR> https://www.atlasobscura.com/articles/coroners-england-treasure-rules <comment><USER2> They say they think it's bizarre, but don't compare to how it's done anywhere else! If it's so bizarre how are other countries like the United States doing it?

The American Civil War wasn't very long ago, but I think if there are no known owners then buried gold like the Confederate Gold would be considered treasure in England even though it isn't old, so they must have similar issues.

<comment><USER3> In Scotland the 'administrator of treasure trove' role appears to be taken by the wonderfully named _Queen 's and Lord Treasurer's Remembrancer_:

[https://en.wikipedia.org/wiki/Queen%27s_and_Lord_Treasurer%2...](https://en.wikipedia.org/wiki/Queen%27s_and_Lord_Treasurer%27s_Remembrancer)

Edit: We had some indirect dealings with the QLTR recently over some shares in commonly owned land that didn't have clear ownership - the QLTR basically responded with "nothing to do with us" which was good!

</comment></comment><comment><USER4> The fire never reached Pepys house. I thought the cheese was recovered without problem.

<comment><USER5> Indeed, the article is not quite correct that the cheese was lost.

We know that Pepys buried this cheese, along with other items, because he wrote about it in his diary [1].

It was not mentioned again (or was it?). So based on evidence we don't know what happened to the cheese, but Pepys most likely dug it up along with the other items he had buried (he had also buried wine and office papers).

[1] [https://www.pepysdiary.com/diary/1666/09/04/](https://www.pepysdiary.com/diary/1666/09/04/)

<comment><USER6> We hope. 400 year old cheese would not exactly be a treasure!

<comment><USER7> "It depends."

We opened a 7 year old cheese for Thanksgiving that was _perfect_ as it is a cheese deliberately packaged to age and allow tyrosine development (which people seem to like for its bite). I've had a 30+ year version of the same cheese which was very edible and enjoyable, though you had to like a cheese with some bite. Pairs nicely with a white wine.

Would 400 year old or older cheese be good? Main thing I'd worry about is brucellosis or other contaminants.

<comment><USER8> what kind of cheese was it? And how is it kept for all this years?

<comment><USER7> Cougar Gold, from the Washington state university creamery.

</comment></comment></comment></comment></comment></comment><comment><USER9> That's fascinating!

I'd love to read more about these, even if they're mostly routine. 1200 a year seems like quite a bit! You could call the show "Coroner's corner"

<comment><USER10> Given how interesting American Pickers or Antique Roadshow are, I think you're right that this could be a good show.

</comment></comment><comment><USER11> Does anyone know what the other side of the issue is?

The fact that this article paints a totally rosy picture, does not mention downsides to the system, only quotes government side sources (they couldn't even find a metal dectectorist to say "yeah it's not perfect but it's good enough"?) is setting off red flags for me.

<comment><USER12> My questions would be what oversight is there of the coroners' decisions and what ensures their qualifications?

A scientific discovery might have no gold or silver but be much more valuable at sale than shiny metals. A coroner who decides entirely based on his/her knowledge of the value of the find risks making incorrect decisions based on a lack of specialist knowledge.

<comment><USER13> Coroners must be legally qualified solicitors or barristers, or a Fellow of the Charted Institute of Legal Executives, and must have 5 years worth of experience [1].

They are appointed by local authorities with the consent of the Chief Coroner and the Lord Chancellor.

For oversight, you must submit a judicial review to the High Court. A senior judge there will decide the lawfulness of the coroner's actions [2]. You used to be able to appeal to the Chief Coroner instead of seeking judicial review, but this mechanism was removed by the Public Bodies Act 2011 [3].

\---

[1] [http://www.legislation.gov.uk/ukpga/1988/13/section/2](http://www.legislation.gov.uk/ukpga/1988/13/section/2)

[2] [https://www.judiciary.uk/related-offices-and- bodies/office-c...](https://www.judiciary.uk/related-offices-and- bodies/office-chief-coroner/)

[3] [http://www.legislation.gov.uk/ukpga/2009/25/section/40](http://www.legislation.gov.uk/ukpga/2009/25/section/40)</comment></comment></comment>


Show HN: Documenting the burst of the tech bubble - <AUTHOR> https://github.com/alexanderGugel/bubble <comment><USER2> Is it really so real ( the bubble being burst right now )? What the HN community thinks about it?</comment>


The Elephant In the Podcast Studio - <AUTHOR> http://www.marco.org/2014/06/23/elephant

<comment><USER2> This post makes me happy: hard work is essential, there are no magic bullets, and quality matters more than you think. The fact that Marco made choices based on quality impresses me. I can only hope to have the courage to do likewise.</comment>


Chainvas: a tiny library that can add chaining to any API like Canvas and DOM - <AUTHOR> http://leaverou.github.com/chainvas/

<comment><USER2> I applaud people for trying to find clean ways to add chaining to langauges like JS, but feel we are working at the wrong level of abstraction. Chaining is a syntax and grammer problem, not a semantic problem. Smalltalk solved this by making chaining part of the syntax. if you write:

      foo
        :bar;
        :bash something;
        :thenBlitz.

The semi-colons tell the interpreter to chain the method calls to the original receiver. That way you can read the sntax and know chaining is involved without needing to know whether those methods were written to be chained. The return value of a method is its _semantics_ , and should not be chosen to try to implement syntax.

Summary: This problem should be solved by the parser, not by the function author.

p.s. paging @jashkenas!

p.p.s. Did you ever take that test yourself? Yes, my comments apply doubly to libraries like #andand.

<comment><USER3> Reporting for duty...

A dedicated syntax for chaining has been discussed several times for CoffeeScript, with different flavors:

<https://github.com/jashkenas/coffee-script/issues/1495>

<https://github.com/jashkenas/coffee-script/issues/1291>

<https://github.com/jashkenas/coffee-script/issues/281>

<https://github.com/jashkenas/coffee-script/issues/1431>

Personally, I'm a bit iffy on the subject, because although the demonstrated usefulness of the idiom is evident in libraries like jQuery, chaining-as-a- language-feature is inherently focused on stringing together a sequence of imperative side effects, where it can be nicer to use expressions for their values.

For example, where the returned value is a part of the next step of the computation, chaining comes naturally:

        list
          .concat(other)
          .map((x) -> x * x)
          .filter((x) -> x % 2 is 0)
          .reverse()

And where you need built-in language chaining to do the job for you, it's almost always because you're ignoring the return value, and using each method for its side effects:

        brush
          .startPath()
          .moveTo(10, 10)
          .stroke("red")
          .fill("blue")
          .ellipse(50, 50)
          .endPath()

So the enforced imperativeness of chaining syntax makes it feel a bit off. Still, if you were designing such a syntax from scratch, and not following Smalltalk's lead, what would you think it should look like?

<comment><USER2> I would use indentation to discriminate between the cases:

        list
          .concat(other)
            .map((x) -> x * x)
              .filter((x) -> x % 2 is 0)
                .reverse()

For pipelining, and:

        brush
          .startPath()
          .moveTo(10, 10)
          .stroke("red")
          .fill("blue")
          .ellipse(50, 50)
          .endPath()

For what we are calling "chaining." I use this now as a personal coding style when writing jQuery stuff with JQuery Combinators:

      added
        .addClass('atari last_liberty_is_' + ids_of_added_liberties[0])
        .find('#'+ids_of_added_liberties[0])
          .when(doesnt_have_liberties)
            .removeClass('playable_'+added_colour)
            .addClass('no_liberties');

The first "addClass" and "find" are both sent to "added," "when" is sent to the result of "find", "removeClass" and the second "addClass" are both sent to the result of "when." It feels to me very much like how we indent scope and syntactic blocks like "if" or "unless."

<comment><USER4> Looks very nice! Though the discrimination between intending or not is done based on whether the previous action mutates the object (no new intend) or creates or returns different object (new intend), right? This is something that can't be known on the language level unless there's a specific syntax for it, which doesn't seem to be possible for Javascript based languages (e.g. <https://github.com/jashkenas/coffee-script/issues/1738>).

<comment><USER2> My point is that if I owned the parser, I would ignore what the function returns and send the message to the previous receiver when multiple message inocations are indented in parallel. Here's an example using functions that both return a value and have a side-effect:

        ['foo', ['bar']]
          .pop()
          .pop()

Would return 'foo' if I owned the parser, while:

        ['foo', ['bar']]
          .pop()
            .pop()

...would return 'bar'. You can infer from his what happens to the niial array in terms of side effects. My suggestion is that "chaining" method calls is a syntax issue and not a function issue, and that writing functions tonreturn a certain thing just to cater to how you like to write programs is hacking around a missing language feature.

pop() is a great example. Why shouldn't pop return the receiver? The first example makes sense, you ought to be able to chain calls to pop(). Then again, why shouldn't pop() return what it pops? You ought to be able to pop something and use it, just like the second example.

Baking chaining into what functions return forces the function author to choose On behalf of the function user. I do not blame people for doing this in a language lacking thenproper syntax, but given how much people do this, it seems worth considering for people writing new langauges or new syntaxes for existing languages.

</comment></comment></comment></comment></comment><comment><USER5> Reminds me of node-chainsaw: <https://github.com/substack/node-chainsaw>

Also, my own node-ContextChain <https://github.com/duncanbeevers/node- ContextChain>

Both of these libraries take the approach of wrapping the underlying object rather than modifying it.

</comment><comment><USER6> This website (much like all of Lea's work) has loads of really nice details – worth reading through the source code for anyone who works with CSS. Particularly the use of border-image, though there are a number of other nice little things going on here!

</comment><comment><USER7> I've always thought the chaining methods thing that jQuery popularized was a pristine example of an anti-pattern. It might save a few keystrokes, but I question whether anyone really writes code like this the first time through. I suspect people actually take perfectly fine working code and refactoring it into a chain just to make the code appear more clever, all the while making the code harder to read and debug.

<comment><USER8> I like chaining because it emphasizes that a set of method calls is part of one discrete action involving one object.

For example, take adding a header to some text: it's one action, but it involves multiple steps. First I create the actual element, then I give it a class name, add some text and finally insert it in the DOM. I think chaining not only makes the code easier to read (and type, although that isn't particularly important), but also makes its semantics clearer.

<comment><USER7> That's what functions are for. Chainable methods don't make multiple step operations more concise.</comment></comment></comment>


Show HN: Little Ball of Fur – A NetworkX extension library for graph sampling - <AUTHOR> https://github.com/benedekrozemberczki/littleballoffur <comment><USER2> Can you give some examples of when this would be useful? What's distinctive about sampling methods beyond, say, picking a random node and all of its neighbors? What problem does that solve?

<comment><AUTHOR> The reason for not doing that is the bias that such sampling introduces.

We are writing a paper out of this, but the main point is that you can achieve these two things with minimal classification performance degradation:

1\. Speeding up node embedding and classification. 2\. Speeding up whole graph embedding and classification.

<comment><USER2> Can you speak a little more about how those work? I understand word embeddings conceptually. And I can imagine using a similar process to embed the arbitrary data stored in a graph. Embedding an entire graph makes less sense to me, unless 'entire graph' means a subgraph of the general population.

I do social network stuff occasionally. If I hypothetically could create an embedding representation of everyone, I could imagine it might be useful to, say, TSNE it all as opposed to a force layout for viz. Or maybe run it as a pretty black box prediction input? Wondering if I'm missing something more obvious here

<comment><AUTHOR> Entire graph embedding means that you have a lot of smaller graphs (e.g. molecules, transactions, threads) and you want to classify them. We created this package which covers these methods:

[https://github.com/benedekrozemberczki/karateclub](https://github.com/benedekrozemberczki/karateclub)</comment></comment></comment></comment>


Mind-enhancing drugs: Are they a no-brainer? - <AUTHOR> http://www.independent.co.uk/news/science/mindenhancing-drugs-are-they-a-nobrainer-1708988.html <comment><USER2> I can say this: if I was sure that a drug like this had no long-term side effects I would take it, at least sometimes when I was working on a hard project.

But since we don't really know the potential long-terms effects of these drugs I've made sure to stay away.

<comment><USER3> There's no medecines without sides effects. All medicines I have took on my life have sides effects and sometimes dangerous.

For me the "drug" is a disaster, because it confirm that people don't work for WORK and don't study for KNOWLEDGE but for EXAMS and work for MONEY which is the biggest problem.

<comment><USER4> Placebo has no side effects.

<comment><USER5> It does, if you think it does.

</comment></comment></comment></comment><comment><USER6> Every time I read about these, I can't help but think of that scene in Blade Runner.

"The light that burns twice as bright burns for half as long. And you have burned so very, very brightly, Roy."

</comment><comment><USER7> The trend towards describing drugs like Adderal and Ritalin as "mind- enhancing" is troubling. It seems more like a marketing strategy than science or medicine and it implies that they make your mind function more like that of a naturally smarter person, rather than the actual effect, which is to make your mind function more like that of someone who has taken cocaine or meth. That may not be a bad thing per se, but what will happen to a generation that is so sold on the idea that they are "mind-enhancing" that they can no longer tell the difference?

<comment><USER8> What do you mean, my generation will no longer tell the difference between adderall and cocaine or meth, or that everyone will be medicated so often that "mind-enhanced" becomes the norm? also, for the record, there's a large amount of biological and statistical work proving their efficacy, granted only on controlled, specific tasks.

<comment><USER7> I mean that if we continue proliferating simplistic views of the effects that drugs have, our collective ability to distinguish between that view and the more nuanced truth will be diminished. We risk redefining "intelligent" to mean "high on speed".

And yes, I am aware of their efficacy, but it's the "only on controlled, specific tasks" part that concerns me. Blanket terms like "mind-enhancing" mask the specifics of their effects in favor of a more marketable label. After all, who doesn't want an enhanced mind? (And it is about marketing. Articles like this reek of PR if you read them closely.)

The distinctions are too important to play so loose with language. If I feel like a genius after downing a fifth of bourbon, that does not make bourbon "mind-enhancing", even if the genius ideas that I have while so sloshed turn out to be right. That's just not what we mean when we say "mind-enhancing".

Likewise for amphetamines. They don't cause you to think better or to have better ideas, they cause you to think all of your ideas are good ones; they don't give you focus, they nullify the sensation of boredom and make everything exciting. At least that's how we describe the _same_ effects when they're caused by cocaine or manic episodes.

We could describe cocaine and meth and manic episodes as "mind-enhancing" by these standards, too, but collectively we've realized that it's more complicated than that, and describing them as something universally positive would be misleading. You also can't patent cocaine or sell a manic episode.

</comment></comment></comment><comment><USER9> I don't care that much how people perform in exams. I don't hire people when they need drugs to reach the work level they claim to be at. Should I send the guy to a consultant job and on expenses then pay for the drugs he needs to do his/her job?

Here is what I do to improve mental performance: I go jogging with my co- workers in the morning. It is well known that sports like these also increase mental capacity + it also has lots of other positive effects.

<comment><USER10> _"I don't hire people when they need drugs to reach the work level they claim"_

 _"I go jogging"_

Interesting that you are prejudiced against externally administered drugs, and yet seem to support the idea of deliberately and regularly inducing opioid release in yourself. I don't deny that jogging is a generally beneficial and healthy activity, but I wonder how you can justify favouring one chemical and being opposed to another on the sole grounds of their origin?

<comment><USER9> I go jogging to maintain a certain fitness level, no to 'induce opiod'.

<comment><USER10> That's "opioids". And regardless of your intentions, by engaging in vigorous exercise like jogging, you are triggering the release of very similar drugs to those you'd criticised mere sentences before.

I don't mean to beat up on you or anything. Just want to point out that it's all just chemicals. Drugs work, after all, by manipulating your built-in neurophysiology - just as you unknowingly do by exercising. It is ridiculous to arbitrarily discriminate against one category of drug, while recommending another. Any human who wants to be purely drug-free better remove their brain from their body, because that's the biggest drug lab around ..

<comment><USER7> _you are triggering the release of very similar drugs to those you'd criticised mere sentences before_

Opioids are not similar to any of the drugs described in the article.

</comment></comment></comment></comment></comment><comment><USER4> I would like to experiment with very low does of LSD to see what that does to my focus and concentration. I think it'd be interesting to see what 5-10 micrograms feels like.

</comment><comment><AUTHOR> Seems like a sensitive subject (among young hackers I suppose). Four comments have been deleted so far by their respective authors.

<comment><USER11> I expect that use is way, way more prevalent that is commonly believed.

<comment><USER8> I'd say its highly (negatively) correlated with age. everyone knows that college students, especially at elite schools, are taking it like candy and that very few 50 year olds are being medicated for ADHD.

</comment></comment></comment><comment><USER12> I would have said the same directly to The Independent's post, but that would have required creating a "Live Journal" account :/

In the meanwhile, I suggest a search of _better_ stories / exchanges that have appeared in the past on Hacker News .

Just in case The Independent monitors us here, this is what I wanted to convey to them:

How might "smart drugs" help journalists?

For example: how might accuracy and attention to detail by reporters, writers, and fact-checkers be improved.

More specifically, would someone at The Independent have caught this article's reference to "the University of Harvard" and realized it was as absurd as "the University of Oxford"?

Perhaps... if Ritalin & co. boosts performance of sleep-deprived journalists as well as sleep-deprived helicopter pilots.

\--from other side of the pond

</comment><comment><USER13> Maybe if students find it necessary to take these drugs to succeed in exams it highlights something going wrong there!

Are we pushing these kids too hard? Or letting in students who don't have the capabilities to succeed?

<comment><USER14> Or maybe it is just because they have procrastinated and want to cram, in a stressed night, the material they were supposed to absorb in one semester.

</comment></comment><comment><USER15> The article is a bit optimistic. If there is anything that scares me about mind-enhancing drugs is students of all ages abusing them. But I do agree more openness is needed, and more studies on long-term side-effects in their use as mind-enhancers.</comment>


Txti – Fast web pages for everybody - <AUTHOR> http://txti.es/ <comment><USER2> Be aware that you are incorrectly using the .es TLD, since it is requested that you have links to Spain, as specified in "Who can apply?" page here in the domain authority: [http://www.dominios.es/dominios/en/todo-lo-que- necesitas-sab...](http://www.dominios.es/dominios/en/todo-lo-que-necesitas- saber/sobre-registros-de-dominios/quien-puede)

There have been instances of .es used as vanity domains being requested for deletion: [https://www.namepros.com/threads/recepi- es.943453/](https://www.namepros.com/threads/recepi-es.943453/) so I would be cautious.

Edit: here's the full legal regulation regarding the use of the domain, but sadly it's only in Spanish: [https://www.boe.es/boe/dias/2005/05/31/pdfs/A18170-18175.pdf](https://www.boe.es/boe/dias/2005/05/31/pdfs/A18170-18175.pdf)

</comment><comment><USER3> 1\. I like it

2\. https is a must if it is to be successful

3\. I entered a custom url like_this and it was automatically changed to like- this, which is nice, but was very confusing, since I couldn't later find the page. I think it would be better to just tell me that I included some characters that are not allowed. Same with dots, which got me while trying to create robots.txt ;)

<comment><USER4> > 2\. https is a must if it is to be successful

The use of unencrypted HTTP is probably deliberate to allow it to be used on even very dumb devices like feature phones (see [http://txti.es/images/images](http://txti.es/images/images)) and to remove the 1 to 2-RTT latency penalty for TLS 1.2 connections since that can matter when your connection latency is on the order of seconds.

<comment><USER3> Sounds reasonable. There's no need for HSTS then. But other than that, providing secure connection shouldn't influence plain HTTP usage in any way.

</comment></comment></comment><comment><USER5> This was done by the author of [http://motherfuckingwebsite.com/](http://motherfuckingwebsite.com/).

</comment><comment><USER6> I don't exactly get what this is, but I made this one for practice -- an old joke that got me into hot water at work in the 1990's.

[http://txti.es/us-west-technology](http://txti.es/us-west-technology)

</comment><comment><USER7> Potential replacement for jottit (by the late Aaron Swartz) though still not as nice (no side-by-side editing)

[http://www.jottit.com](http://www.jottit.com)

</comment><comment><USER8> Charge $.50 to $1.00 to avoid Porn and junk pages.

</comment><comment><USER9> I've recently moved in the direction of creating pages that look like this for my own website. I have a T-Mobile hotspot and it's not uncommon to find myself with 2G service. I can't even check the score of a basketball game with 2G.

</comment><comment><USER10> [https://github.com/x3nu/CLItexties](https://github.com/x3nu/CLItexties) is a CLI for Txti.

</comment><comment><USER11> It's great. I'd like more of a description up front of what it does, but beyond that, I have few complaints.

</comment><comment><USER4> Is there a sitemap, index, API or other way to discover pages? If not it would be very hard to index or archive.

</comment><comment><USER12> Is the source for this somewhere?

</comment><comment><USER13> It is fast. Nice.</comment>


Meet the Man with a Cheap and Easy Plan to Stop Global Warming - <AUTHOR> http://www.technologyreview.com/featuredstory/511016/a-cheap-and-easy-plan-to-stop-global-warming/ <comment><USER2> I hope I'm not in the minority here -- plans like this terrify me. I'm currently a scientist by trade, and experience has taught me that while we have a mediocre grasp of very finely tuned experiments, to be frank, we don't know shit about predicting the chaos and unintended consequences of our actions within the complexity of the natural world. When dealing with nature, it's never as simple as do A to get B and that's it.

There's some slim chance this guy's plan could work, but I am pretty confident it is infinitely more likely to either do nothing or do something really awful.

<comment><USER3> I think there's a cognitive bias at play here. We're already doing a _massive_ experiment on the Earth's atmosphere by adding greenhouse gases to it. But for some reason that accidental experiment doesn't seem to freak people out nearly as much as doing an intentional experiment, even one that would partially compensate for the effects of the accident.

I'd bet that most people would accept geoengineering without a second thought, as long as we convinced them it was a side effect of a for-profit venture unrelated to global warming. Because, heck, they're putting up with all the other crap we do. But tell them we're _intentionally_ changing atmosphere and they'll riot in the streets.

This particular approach wouldn't be completely unprecedented, because the same thing happens when large volcanoes erupt...and we've observed the temperature decrease when that's happened.

It's far from a complete solution, but there's real concern that feedback loops will soon tip the Earth into an unstoppable warming cycle. The planet has gone into a hot state before, and rather quickly, with very little input to kick it off. Albedo adjustment could be a way to hold off that cycle while we figure out a way to reduce CO2.

<comment><USER2> After rats were accidentally introduced to Macquarie Island and started ravaging the local ecosystem, efforts to rebuff them -- which included introducing cats -- only made things worse; the cats -- and the rabbits later introduced for food -- have since "resulted in the annihilation of two native bird species and the stripping of Macquarie Island's vegetation."

([http://www.treehugger.com/clean-technology/epic-fail- efforts...](http://www.treehugger.com/clean-technology/epic-fail-efforts-to- fight-invasive-species-could-cause-ecosystem-meltdown.html))

In case my analogy is not perfectly clear: the rats are the greenhouse gasses, and the cats are your sulfate aerosols.

> This particular approach wouldn't be completely unprecedented, because the > same thing happens when large volcanoes erupt...

The implication here is that because volcanoes spew sulfates into the atmosphere and it results in lower temperatures is that it is okay for us to do so, considering only the first-order temperature-lowering result (or some tiny subset of the practically infinite number of variables involved). This is a dangerous hubris, and I reject the naïveté of it. It is absolutely not the same. One is a volcano exploding, another is aerosols sprayed from an airplane.

Just because something in nature has been imbalanced because of our actions does not mean that we _must_ respond - especially when we cannot predict the results of that response!

I'll say it again: this sort of tinkering with our biosphere based on first- order predictions terrify me. They are far more likely to result in something awful than something beneficial.

<comment><USER3> A big difference between sulfates and cats is that cats reproduce. Once you've introduced them, they're really hard to stop. With sulfates you just turn off the spigot and they're gone in a year or so.

It's not my favorite method. Another, which got some funding from the Gates Foundation, involves seeding low-altitude clouds. You can shut that one down in a week.

We already know the second-order effects of doing nothing to counteract warming, and they really are awful. The earth will quite naturally shrink the icecaps, release a large amount of methane, along with CO2 from drying forests and peat, and tip into the state it was in fifty million years ago, when crocodiles were swimming in the tropical seas at the north pole. The whole thing was kicked off by an orbital variation that very slightly raised the temperature.

> Just because something in nature has been imbalanced because of our actions > does not mean that we must respond

True, but in this case, if we want civilization to survive we'd better do something. I haven't seen a single argument against albedo adjustment that was more substantial than "something bad might happen, I don't know what."

<comment><USER2> > With sulfates you just turn off the spigot and they're gone in a year or so.

There's no "just" about this. The sulfates may be gone, but the effect of their presence will never be, no matter how tiny or great it is. Again, your consideration of this is first order. I can make this clear with this question: what are the long-term effects of releasing sulfate aerosols into the air, and _how do you know_?

> True, but in this case, if we want civilization to survive we'd better do > something.

I'm not following your logic. As I've outlined with the rats and cats example, _doing something_ can cause a larger problem than the initial one. If we want to do something, it should be scaling back our effect on the natural environment, not giving it a good whack and hoping that the trajectory we send it on turns out correct.

> I haven't seen a single argument against albedo adjustment that was more > substantial than "something bad might happen, I don't know what."

The unintended consequences of actions in chaotic systems is a damned good argument, no matter how simply you try to state it. If no one offered an argument against the cats on Macquarie Island other than "something might go wrong here, though I can't predict what", would they have been wrong? No. They'd be recognizing that they were turning knobs on a system that they did not understand, and that unpredictably bad reactions could result.

<comment><USER4> _There 's no "just" about this._

Gerald Weinberg once suggested that whenever you hear the j-word ("just") you should mentally swap it out for "have trouble". For example, "we'll just add that feature" means "we'll have trouble adding that feature". I think that may apply to "just" turning off that spigot.

He also recommended that the s-word, "should", be replaced be "isn't". Funny rules, but they work: you learn to notice those words as signs that we don't have a clear view of what we're talking about.

</comment></comment></comment></comment></comment></comment><comment><USER5> Here's what bugs me about the whole story.

The Headline:

        (Meet the Man with) A Cheap and Easy Plan to Stop Global Warming

Key point made by David Keith:

        "I'm not saying it will work, and I'm not saying we
        should do it." But "it would be reckless not to begin
        serious research on it," he adds. "The sooner we find
        out whether it works or not, the better."

And people wonder why I am so ungenerous in my assessment of journalists and editors.

<comment><USER6> This had me twitching right from the start:

        Increasing what scientists call the planet's albedo, or
        reflective power ...

What scientists call? How about what everyone calls when they need to measure reflectivity.

I don't know if this is just unfortunate choice of language or the author exhibits an bit of an us-and-them attitude towards science.

I really hate the term "scientists", the way it is used is like they're this abstract homogeneous mass of not quite people who hand down decrees from on high. Instead of what they really are which is a very inhomogeneous group of hard working people working in a very broad number of fields with a vast array of ideas.

<comment><USER7> So fucking true. It bugs me no end when I read news reports that mention "scientists". Do we read articles where "policemen say" or "politicians say" or "priests say"?

</comment></comment></comment><comment><USER8> This article is mostly about geo-engineering technology, but I can't help but feel like the technological side of the venture is the easiest part. Who is going to make the go/no-go decision? The UN? By majority vote? How much do we lower the temperature by? I can't imagine an agreement being reached on something like this in my lifetime.

For this reason I think we're far more likely to see this problem 'solved' by renegade geo-engineering efforts like what Russ George did ([http://www.guardian.co.uk/environment/2012/oct/15/pacific- ir...](http://www.guardian.co.uk/environment/2012/oct/15/pacific-iron- fertilisation-geoengineering)) and that has me deeply worried.

</comment><comment><USER9> _According to Keith's calculations, if operations were begun in 2020, it would take 25,000 metric tons of sulfuric acid to cut global warming in half after one year. Once under way, the injection of sulfuric acid would proceed continuously. By 2040, 11 or so jets delivering roughly 250,000 metric tons of it each year, at an annual cost of $700 million, would be required to compensate for the increased warming caused by rising levels of carbon dioxide. By 2070, he estimates, the program would need to be injecting a bit more than a million tons per year using a fleet of a hundred aircraft._

Al Gore's "An Inconvenient Truth" included a clip from Futurama, which shows their method of combatting global warming: dumping increasing amounts of space ice in the oceans.

<https://www.youtube.com/watch?v=OqVyRa1iuMc>

I'm not criticising the idea, I don't have the required background. But it doesn't sound like a permanent solution.

<comment><USER10> I'm starting to believe the only permanent solution to these problems is reducing the global population. We just can't keep using natural resources at the rate we are today.

<comment><USER11> Who should we start by killing?

<comment><USER10> Clearly not the solution. But do you really see a future were countries don't have population control methods in place.

<comment><USER12> Hans Rosling seems to think we'll top out at 10 billion.

<http://youtu.be/fTznEIZRkLg>

and the main mechanism is, counter-intuitively, _reducing_ child mortality in the poorest areas.

</comment></comment></comment></comment></comment><comment><USER13> Wait... wasn't this basically the plan they came up with in The Matrix? ... I don't recall that working out too good...

Seriously; while it's tempting to think of grand plans like this, I think that meddling in ecosystems is what got us into the trouble in the first place. Climate change is an economic problem, not an engineering one, which is far less sexy.

<comment><USER5> > _Wait... wasn't this basically the plan they came up with in The Matrix? ... > I don't recall that working out too good..._

Please tell me that you are not relying on _The Matrix_ as a serious resource for ... well ... anything.

<comment><USER14> Are you implying The Matrix didn't really happen?!

</comment></comment></comment><comment><USER15> Great. First pesticides, and now this.

No thanks, I don't want to breathe in atomized droplets of highly corrosive acid. I'd rather die from excessive global heat than live with the unknown ramifications of injecting the earth with acid.

The actual plan is preposterous, as well. It's clear that Keith has little understanding of the details of his plan and whether it even stands a chance at working, because there is absolutely no scientific methodology at play here. Where is the evidence? There has been no citation of any source that confirms his assumptions. Where are the small-scale trials? How does someone just take jets to the atmosphere and spray it full of sulfur without even knowing the ramifications? When people were testing nuclear power plants for the first time, they made sure to do so in a controlled environment. Crossing your fingers and carrying out a very complex procedure for the first time in an uncontrolled environment without knowing anything beforehand is not only remarkably stupid, but it's also very dangerous.

Currently, we're in a safe zone with regards to climate change. If we increase the number of carbon sinks, and if everyone switches to electric cars tomorrow and aircraft start using cleaner-burning biofuels with low NOx and CO2 emissions, we can decrease our carbon footprint by a large amount. Planting a lot of trees and stopping deforestation can compensate for the amount of carbon in our atmosphere already.

Also, investing more time and money into alternative energy isn't a bad idea. Turbines have been around for centuries; it's about time we started using more of them. Solar power is advancing very quickly and could really offer a good source of electric power. If every state had 10 windfarms and 10 solar power plants, then we could be self-sustaining for as long as the Sun doesn't implode.

A shame, though, that our bureaucratic government would rather invest money into restricting freedom rather than invest money to better our world. It's also a shame that people will be too selfish to give up their hydrocarbon- burning cars and vehicles.

</comment><comment><USER16> I have always thought it would be interesting to see what affect painting all the roof's of all the buildings on earth white would have on global warming. I doubt there is enough buildings in the world for it have any affect though.

<comment><USER17> It has been suggested (by people smarter than me) that lighter surfaces have the effect of reducing cloud cover, which allows for more sunlight to reach the ground which suggests it would only exacerbate the problem.

Some suggest using solar panels instead, which comes with many of the same benefits as painting roofs white, but absorbs the light as opposed to reflecting it, and thus wont reduce cloud cover.

Im not a scientist, just a casual observer, but my gut feeling is that the only way to halt or even reverse climate change is to stop producing as much carbon. Any other approach is more likely to come with unforeseen problems.

So get to it! Pop down to your local Tesla showroom and do your bit.

<comment><USER18> Scientists don't really understand how clouds affect climate (some clouds cause localized cooling, some clouds cause localized heating, it's complicated), mostly they just include an empirically determined fudge factor to account for it.

</comment></comment></comment><comment><USER19> I think we do need to reduce the amount of carbon emitted though - it causes ocean acidification + if we kill off the oceans we will be screwed.

<comment><USER20> Acidification (the state of something becoming acidic) occurs when the pH drops below 7.0 and thus the ratio of hydrogen ions to hydroxyl ions > 1\. This has never occurred and we are nowhere near that situation. pH (it's a log scale) of the oceans is roughly around 7.7 to 8.4. This is not to debate future trends!

<comment><USER3> Seven is not the magic number where things go bad. The pH is dropping about a hundred times faster than at any time in the past 20 million years, and that's already affecting sea life. <http://en.wikipedia.org/wiki/Ocean_acidification>

"Corals, calcareous phytoplankton, mussels, snails, sea urchins and other marine organisms use calcium (Ca) and carbonate (CO3) in seawater to construct their calcium carbonate (CaCO3) shells or skeletons. As the pH decreases, carbonate becomes less available, which makes it more difficult for organisms to secrete CaCO3 to form their skeletal material." <http://www.ocean- acidification.net/FAQeco.html>

</comment></comment></comment><comment><USER21> So this will also reduce the amount of power harvested by the sun panels? Therefore increasing the "green energy" costs?

<comment><USER22> It will also reduce the amount of solar energy available to plants, which will reduce the amount of food we can grow and increase its costs. (And less photosynthesis means that plants will absorb less CO2 from the atmosphere.)

</comment></comment><comment><USER23> Cheaper solution:

\- Make people ride bicicles.

\- Reduce work hours to 4 / day.

\- Make it expensive to buy gas. So people ride bikes and so that Electric vehicles that are charged by solar panels increase.

\- People will be fitter, happier, more producive and more imaginative and with free time to plant trees also.

<comment><USER24> If they work 4h/day it's still 10 commutes per week

So instead make them work 8h/3days (or 2.5days if you'd rather) then you only have 6 commutes per week

Or just work remotely

<comment><USER11> Commutes are less mentally draining if you're riding a bike though, you'll actually gain energy for working on challenging problems instead.

</comment></comment></comment><comment><USER25> Only way to prevent the doom and gloom is to stop fighting it.

</comment><comment><USER26> Simple plan? Woman should take men that respect our environment and don't eat much meat. Problem solved after some years - evolution for the rescue</comment>


Great Firewall of China to come down - <AUTHOR> http://www.theinquirer.net/gb/inquirer/news/2008/02/06/great-firewall-china-come <comment><USER2> ...during the olympics.

<comment><USER3> Well, yes, but better than nothing. And it may be precedent-setting. It could be an important first step towards taking it offline permanently in the future.

<comment><USER4> Doubtful. Optimistic, agreed, but doubtful.

On the other hand, I find it funny that the great wall of china kept out foreign invaders...and this seems to do the opposite (keep the chinese out of foreign stuff).

<comment><USER5> Keep dangerous foreign memes from pristine Chinese minds? ;-)

It's not just a firewall, it's an info-condom! ;-D

<comment><USER3> I now immediately want to rename my firewall the info-condom. It does, afterall, help one practice safe browsing. Even helps keep viruses out . . .</comment></comment></comment></comment></comment>


13 Blog Articles with Database Design Tips and Best Practices - <AUTHOR> http://www.vertabelo.com/blog/notes-from-the-lab/13-blog-articles-with-database-design-tips-and-best-practices <comment><USER2> Read like a self promotional piece, a database solutions shop posting a bunch of top ten ways to do x blog posts done by various consultants and colleagues, where x is any of (big data, design, architecture, engineering, performance.. with databases).</comment>


Ask HN: What types of chat do you use? - <AUTHOR> For work, or open source, or personal communications. What IM (not email) app do you have open all the time (Slack, Hipchat, hangouts, Gitter, etc.)? Why that one? <comment><USER2> Slack for office and some random publicly available teams FB Messenger and Viber for day to day with friends Some friends use Hangouts so that comes in sometimes as well Used to have Skype and WhatsApp but Im starting to cut down on all the attention killers. Also most of the day everything is muted except a few important channels or contacts. I only answer phone calls and come back to messages in spare time. If its important they should call me.</comment>


Lawsuit blames Snapchat's speed filter for Georgia car crash - <AUTHOR> http://www.theverge.com/2016/4/28/11526860/snapchat-mph-filter-speeding-car-accident-suit <comment><USER2> _sigh_ I don't know what to say... even though it's probably a stupid idea wrt snapchat, I think the driver is wholly responsible for his actions.</comment>