Show HN: CouponHunt – Product Hunt for Coupons and Deals - <AUTHOR> http://www.couponhunt.co Community Curated Coupons from your Favorite Retailers. The CouponHunt Community upvotes and comments on the best coupons so that you never miss a great deal again. <comment><USER2> Going to be very hard to get real long lasting traction.

All these coupons are actually digital coupon codes (affiliate marketing). Very small margins from the affiliates. As a startup you don't have the marketing money to compete with the big boys like coupons.com, retailmenot, fatwallet et al. to get ahead of their listings.

The only way this will work is if you have a secret SEO technique and/or exclusive deals with manufacturers. Maybe even explore doing a Chrome plugin so you are always there like "Coupons at Checkout" did.

</comment><comment><USER3> I don't see any real coupons or deals on the front page. I mostly see "up to XX% off" which any real bargain hunter knows is just fluff.

The competitors in this space, for me, include slickdeals/fatwallet and blogs that post coupons (printable-coupons-blogspot) that are actually hard to find. My initial reaction is that CouponHunt just shows you what deals you'd see anyway by visiting a store's site.

<comment><AUTHOR> Hi System, take your point, but that is partly because of the proximity to Black Friday. Most of the retailers dispense with coupon codes. We will certainly have loads of coupon codes when applicable.

</comment></comment><comment><AUTHOR> Hi Guys, We like to think of CouponHunt as Product Hunt for Coupons. Launched over the weekend in time for Black Friday. Would love to hear your feedback.

</comment><comment><USER4> Hi, I am one of the founder of CouponHunt, like to get community feedback on our new site.

</comment><comment><USER5> regarding the "community curated" aspect: what's the incentive for someone to spend 2 mn adding a coupon to your site?

<comment><AUTHOR> Community spirit is important here. Share coupons and get Kudos from other members, much like Redditors go to the trouble of posting stories and images.</comment></comment>


The Art of Monitoring - <AUTHOR> https://www.artofmonitoring.com/ <comment><USER2> First off, I'd like to say that I think this is great and we need more books in this space.

I hope this can be seen as constructive criticism but I do have a few comments on the layout and content.

1\. Free chapter - perhaps chapter one or two may have been a better choice. I'd like to know the philosophy behind monitoring expressed in the book before diving into the details.

2\. capacity planning - A chapter on this would have been great. Most teams I've worked with have struggled with sizing, planning resources required and archiving strategies with their monitoring solutions.

3\. Monitoring strategies for different levels in the stack - where do I start, what should my short term goals be and so on.

4\. naming of some of the chapters are too focused on the technology- for example the chapter on logstash could have been renamed to something to do with application logging or log scrapping.

5\. visualisation and communication of results - there could have been a chapter on dashboard and reporting. This is a common issue with teams trying to understand how to do this.

This was written in a bit of a hurry but I hope my points came through.

<comment><USER3> Thanks for your feedback.

1\. I decided not to do this because my experience is that people like to do something practical first. I've had a huge response to that chapter - lots of folks have gotten into Riemann that had previously been stuck. That alone is a solid +++ for me.

2\. Each chapter contains some discussion of capacity planning for specific tools, where relevant.

3\. The capstone chapters (11-13) discusses this, as do the chapters covering logging and application instrumentation.

4\. Thanks - I'll consider that.

5\. I discuss in various chapters visualization but I've found that most folks have very different needs and desires. So I focussed on discussing what to show in small segments as well as some visual design discussion rather than a specific chapter on dashboarding/reporting. Hard choice but a 750 page book needs to stop somewhere. :)

Thanks for taking the time to comment - it's awesome when folks share their thoughts!

</comment></comment><comment><USER4> The _monitoring_ considered in the OP is for server farms and networks where the main challenges are rates of false alarms and rates of missed detections.

The challenge is to find means of monitoring that will permit selecting the rate of false alarms are willing to tolerate and, then, for that rate, get the lowest rate possible for missed detections.

Thus, would like to use the Neyman-Pearson result. Usually, however, for this context, do not have enough data for that. E.g., typically are quite short on data on the _anomalies_ are trying to detect, and more short as the systems become more reliable.

From the above, we see that necessarily and inescapably such monitoring is some continually applied statistical hypothesis tests.

Apparently in practice, false alarm rate is not known and not reasonable to select or even to adjust.

Then we see that we need tests are both multi-dimensional and distribution- free.

A special case of high interest is _zero-day_ problems, that is, detecting problems never seen before. So, this is _behavioral_ monitoring -- any _behavior_ sufficiently unusual is regarded as an anomaly, that is, evidence of something wrong.

From all I can see, so far the monitoring community has yet to take these points to heart.

The OP's remarks on thresholds are on target: Thresholds have been the old, lame, weak workhorse of monitoring far too long.

If anyone is actually seriously interested in this subject, let me know. Some years ago I concluded that no one was interested!

<comment><USER3> It's a spectrum to me. We're way behind the curve on monitoring and the "state of the art" in, anywhere but cutting edge shops, is woeful. I'd love folks to be able to anomaly detection easily and simply but the technology and tools aren't quite there yet. I am just hoping to get folks to advance their environments a little way forward.

<comment><USER4> Yes, the situation is horrible. I'm reluctant to believe that the "cutting edge shops" are doing very well.

For good "tools", I have a good paper on the subject, but from all I can see there is essentially no interest. People would prefer not to be bothered. The attitude seems to be, if there is a problem, then we will detect it, eventually if not soon, and then we will fix it.

<comment><USER5> I could be bothered. When you say you have a paper, is that something yet to be published? Or is it just sitting in some dusty corner of the Internet?

<comment><USER4> It was published, in the Elsevier journal 'Information Sciences' in 1999.

It appears to be the first, and the first large, collection of statistical hypothesis tests that are both multi-dimensional and distribution-free.

I try to be anonymous here at HN, but I'm willing enough to send a PDF of the paper to anyone who wants a copy. E.g., ask for a copy and leave your e-mail address on your HN profile, at least temporarily.

The main point of the paper is that we do get an _hypothesis test_. In particular, we get to select false alarm rate and then get that rate essentially exactly in practice.

It's _behavioral_ monitoring -- it assumes that the past and future of _healthy_ performance are, to be simple, _statistically_ the same. So, right, its for a server farm or network that is _statistically_ relatively _stable_ , that is statistically unchanging, in what it is doing. The site can be wild and crazy, but it has to continue to be wild and crazy in statistically the same way.

In particular, the work is for detecting _zero day_ problems, that is, problems never seen before. Maybe the _philosophy_ here is that when we get a new problem and detect it, then we fix the cause of the problem and never see it again and, then, again are left looking for _zero day_ problems.

Then the work uses past data -- hypothesis tests have done that since Karl Pearson 100+ years ago, and now parts of computer science do something similar and call it _training_ data in _unsupervised learning_ or some such. The approaches of just statistical hypothesis testing make more sense to me.

The key, core mathematical argument is a finite algebraic group of measure preserving transformations on the data. I believe that there are connections with U-statistics, e.g., as in an advanced statistics book by Serflng.

This stuff with groups and measure preserving is a little like some classic arguments in ergodic theory. On the page, the math looks awful, but actually it is conceptually quite simple.

But, you don't need to dig into the math too much.

For the actual calculations, those are based on nearest neighbors (although other options also work with the basic math). At least since the paper, others have thought of using nearest neighbors, but they didn't have an hypothesis test because they didn't know how to calculate and adjust false alarm rate. So, they have an heuristic instead of an hypothesis test. So, again, the main contribution of the paper is that it really is an hypothesis test, that is, know and get to adjust false alarm rate (conditioned on the old data and also true in long run expectation over the conditioned work -- standard result in conditional expectation from the Radon-Nikodym theorem in measure theory).

For detection rate, there is some good news, not as good as from the classic Neyman-Pearson result (in practice in the context we don't have enough data to do much with Neyman-Person), but nice: In a useful sense, for the selected false alarm rate, the work gives the highest possible detection rate. Really the mathematical key here is just Fubini's theorem (the measure theory version of interchange of order of integration). Intuitively, the technique has the largest area where alarms are raised consistent with the selected false alarm rate.

For the practical application, do need some help with some _computational geometry_. For that, I dreamed up some work. Soon I found that part of what I dreamed up was k-D trees, e.g., as in Sedgewick's book on algorithms. But there is more -- need some _cutting planes_. I programmed most of it 20+ years ago in PL/I but finally dropped it due to lack of interest.

I have some ideas for more results of interest and more papers, but after 20+ years of no interest I just gave up.

More can be said, but I stopped the research when I discovered, about 20 years ago, that no one was interested. The paper was published in 1999, and since then interest has been quieter than the tombs of ancient Egypt. So, I'm doing a startup that is quite different.

I dreamed up the work when I saw the need, or at least as I regarded the need, way back in about 1990 when I was in an AI group at the IBM Watson lab doing work on monitoring and management of large server farms and networks. The AI work was trying to build on essentially just threshold detectors. There was no attention to false alarm rate or a _best_ detector -- highest detection rate for given false alarm rate. The classic Neyman-Pearson result was ignored. I was our guy with GM Research, and we gave a paper at the Stanford AAAI IAAI conference. But I was outraged by the lack of concern for false alarm rate, ignoring hypothesis tests and distribution free hypothesis tests (long common in the social sciences), and with no attention at all to multi-dimensional data.

The real world context is just awash in multi-dimensional data. Treating the data components separately in effect says that the geometrical region of _healthy_ behavior is just a box. Bummer. Box too small -- get false alarm rate too large. Box too big, get too many missed detections. Problem: A box is a poor fit to reality. Simple stuff.

How to see this? Monitor CPU busy and page faults per second and look for anomalies, e.g., thrashing, a program allocating infinite memory, etc. Then the normal behavior is just a 2-D box? I don't think so! But, sure, need to automate picking the shape of the region of _healthy_ behavior.

For the distribution-free stuff, that is where we make no assumptions about probability distributions. I got a kick in the back side on that sitting one day in the office of Ulf Grenander, one of the world's best ever statisticians, at Brown (I got accepted to grad school there; was considering going; went elsewhere instead). Grenander had been looking at computer performance data and was shocked at how different it was from the data, e.g., biomedical, he had been used to. So, right, Gaussian assumptions and more go out the window!

So, really, just want to make no assumptions about distributions, want to be _distribution-free_ (a.k.a., _non-parametric_ although I believe distribution- free is more appropriate terminology).

For multi-dimensional, at IBM I got a slap in the face: There was a _cluster_ of computers doing transaction processing. There was some front end load leveling that sent the next transaction to the least busy computer in the cluster. Okay. But one day one of the computers got sick, just a little sick in the head, and was doing a very silly thing -- it was throwing all its incoming transaction work into the bit bucket! Thus, this computer looked to the load leveling as not very busy and, thus, was getting nearly all the transactions. Thus, nearly all the transactions for the whole cluster were going into the bit bucket. Bummer.

So, I thought, to detect this _anomaly_ , want somehow to look at all of the computers in the cluster at the same time and compare them with each other, that is, have all the data in some appropriate region in some space of several dimensions, a region that works whether the cluster is busy or not. So, want to be multi-dimensional, that is, don't want just threshold detectors on variables one at a time.

There are more war stories where the importance of being multi-dimensional is crucial. Really, commonly separating multi-dimensional data into its components and treating the components separately can be throwing away a lot of crucial _information_ which stands to give a poor combination of false alarm rate and detection rate.

Heck, in principle the region of healthy performance can be a fractal, say, like the Mandelbrot set, and, so, somehow we need to approximate that. Can we do that? Basically with nearest neighbor, or k-nearest neighbors (which also works), yes.

There is now a good opportunity for my work: My work can use a LOT of _training_ data, and in the near real-time detection work can want to do a lot with that data. So, could use fast access to a lot of data which doesn't change very fast. So, sure, use some big solid state disks (SSDs)! A few of the Samsung 14 TB drives should do wonders for my paper!

My view is, anyone doing monitoring of a large server farm or network and not using what is in my paper is not being fully serious. And, since get to adjust false alarm rate, say, to one a month, can't say that can't afford the extra false alarms.

Uh, I left out: For each alarm, get told the lowest false alarm rate at which the real-time input data is still an alarm -- so get an indication of alarm _seriousness_.

More is possible, but at least have to be using what I cooked up in 1990, wrote prototype software for in the early 1990s, and published in 1999.

I did the work a long time ago, guys! And since then, there have been various serious consequences from anomalies, intrusions, etc. Maybe in some of those cases, my work would have done good, early detection. My work looks a heck of a lot better than anything else!

<comment><USER6> So I think the mathematics to make this work is not the problem. How do you engineer this though?

If I were to try and build a platform that could do this in real-time for, lets say, a million metrics per minute, can you engineer something that would scale horizontally to do this? Can it be done by cobbling together various open-source tools/libraries currently out there? Then how would you present the results in a way that someone that's not necessarily "mathematically inclined", say for example, your typical operational support person, that they could meaningfully interpret whatever your system is spitting out?

That's for me the hard part, is to get those two components working well. Make it scale, make it idiot friendly. If you can't get those parts right, it doesn't matter what you're trying to do.

I say this because I've spent the last 6 years in the application performance management space and "the best" way to handle alarms at the moment is to put down a team, literally a team, of people and have them hand-tune thresholds by looking at a combination of history, incidents/outages and root cause outcomes, domain specialist inputs (like DBAs or application server specialists). You send out a false or noisy alarm to an ops guy too many times and they become desensitized. You don't put enough context in your alarm messages, they won't use it (logging into a tool is asking too much, the email must contain everything they need or they complain).

Any form of dynamic baselining is just too noisy. The simplest example is trying to "baseline" CPU usage. CPU usage without something trivial like comparing to run-queue is stupid. It's actually even more stupid because you should be looking at things top-down, i.e. so what if the CPU is 100% and the run queue is 100, are any user facing transactions slowing down? i.e. is there customer impact. It could be some batch job kicking off. So in short, anything that looks at a metric in isolation is stupid, dynamic baselines with time of day, day of month, etc. it's all rubbish shit, you're wasting your time with this approach. This is the sad state that current "cutting edge" third generation APM tools offer though.

<comment><USER7> Hello graycat - I would be interested in a copy of your paper and/or the article name/publication date/etc. Regards

<comment><USER4> The same as for several others here at HN, leave your e-mail address in your HN profile, and I will try to remember to return, use your e-mail, and send you a PDF of the paper, 1999 in _Information Sciences_.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> Another thought. Two really: \- Lead us into more about the _why_ before showing the price. Really tell the story of the pain that so many of us can identify with. \- Use a standard three teir pricing box style, with the values of each above the price. Something like: [https://planscope.io/pricing/](https://planscope.io/pricing/)

<comment><USER3> Thanks - I added a pricing panel.

<comment><USER9> IMHO switching Buy The Book and Table of Contents sections is a more reasonable strategy.

<comment><USER3> Thanks - good idea - will do that.

</comment></comment></comment></comment><comment><USER10> If you haven't read one of the authors book's before (he's released titles on both Logstash and Docker.), he puts out really quality material and he seems to update them when new releases of the subject come out. This looks like another great release. Kudos James.

<comment><USER11> Seconded. My satisfaction with the Docker book has had me on the edge of my seat for this book since I first saw the "coming soon" message.

</comment></comment><comment><USER12> Just bought the book, and I didn't even realize it was James Turnbull, that guy is extremely advanced in monitoring. I've seen many of his talks online, and no one speaks about monitoring in a more rational way that I've seen.

This is Hacker News at it's best in my view.

</comment><comment><USER13> The looks to be more about infrastructure monitoring... less about application monitoring (i.e. New Relic / AppDynamics, and synthetics)

<comment><USER3> That's mostly correct. I have a chapter on adding instrumentation to applications with examples in Ruby/Rails and Clojure that can easily be adapted to other languages and frameworks. I also cover adding structured logging to your applications.

</comment></comment><comment><USER14> Love your site design. it's clean and easy to read, great presentation. Do you just whip up a new design from scratch each time you create a book or did you hire someone or purchase off the shelf? Curious as these things take me forever..

<comment><USER3> I usually find a template I like and modify it. I really should start paying someone. It's not my core skillset. :)

</comment></comment><comment><USER15> check_mk is a very useful monitoring system which doesn't seem to be included: [http://mathias-kettner.com/check_mk.html](http://mathias- kettner.com/check_mk.html)

<comment><USER10> I would argue that its not and that it's a mess, starting with that URL. This is yet another fork of an outdated monitoring system(how many Nagios forks are there?) The architecture diagram made my head hurt, how many moving parts is that? I counted 8 separate components. There are much more modern monitoring systems these days such as Prometheus, Bosun and Riemann.

<comment><USER16> There is also icinga2. So how does one decide which one to use? For a mixed environment (windows, linux, etc) which monitoring tool is better when both server and client is considered?

<comment><USER10> IMHO Icinga 2 is also way too many moving parts. For mixed environments, you should be able to run both Prometheus and Bosun:

[https://prometheus.io/download/](https://prometheus.io/download/) [https://bosun.org/downloads](https://bosun.org/downloads)

<comment><USER16> Thanks for the information. Currently, we are using icinga + check_mk combination and mostly happy with that. However since both icinga and check_mk are going their ways, it is no longer possible to use them together. Also I want to check out some modern alternatives like the ones you suggested.

</comment></comment></comment></comment></comment><comment><USER17> Is this going to be published as a physical book too?

<comment><USER3> Not as this stage - my experience with how fast physical books date hasn't been good.

</comment></comment><comment><USER18> does the book provide example applications that are monitored using the information provided or does it just go through the tools that can be used.

<comment><USER3> It provides several example applications and goes through the tools.

</comment></comment><comment><USER8> Wouldn't be a bad idea to put the free sample chapter behind an email list signup - worked well for my book!

<comment><USER3> Thanks - I considered that but I don't like to put barriers in people's way - especially for free content. I don't like to be too marketing-esque. Just not in my nature. :) A couple of thousand folks signed up to the mailing list using the current approach, which I'm pretty happy with.</comment></comment>


TheAIGames – Develop your coding skills by competing in various AI competitions - <AUTHOR> http://theaigames.com/ <comment><USER2> Still need to take a closer look, but this looks very cool! I kind of wish I could see more without signing up. All the attract text is kind of empty of content. I'd especially like to see the API or even how long it takes to get started per competition.

Does anyone have a name for this genre of game? "Programming game" is pretty useless as a search term. I'd like to find a community for this, since I built two of them and have no idea where to find players or get feedback.

for reference, though these are probably far too niche games to really get lots of play: Bang!: [https://github.com/KevinMcHugh/mustached- nemesis](https://github.com/KevinMcHugh/mustached-nemesis) The Resistance: [https://github.com/KevinMcHugh/secret- nemesis](https://github.com/KevinMcHugh/secret-nemesis)

<comment><USER3> I've wondered about building an AI tournament for Avalon before, as my feel from playing and discussing it is that success in the game is strictly dominated by social strategy.

It would be interesting to test out different bot strategies - I'll take a look later. :)

<comment><USER2> That's exactly why i built this. The groups I've played resistance with all build up their own rituals or micro optimizations and I'm not sure whether they're effective or not. For instance, I know certain players who will always vote against the first proposed mission team, in order to force more selection and discussion. Do they win more as resistance? If so, does it hurt their spy win percentage?

I intended to let the bots chatter in certain rigid ways, such as making accusations, but life has kept me busy or working on other side-projects, so it's a little unfinished.

</comment></comment></comment><comment><USER4> The Hello World Open was super fun a few years ago; code the AI for a slot car. Their site says they'll hold it again this year:

[http://helloworldopen.com/](http://helloworldopen.com/)

<comment><USER5> Yes, although it might be a different challenge than coding the AI for a slot car. "The challenge for 2016 is yet to be revealed."

</comment></comment><comment><USER6> This like codingame i suppose? So many competitions/puzzle sites out there. I'm definitely liking the AI trend lately, and the game one.

</comment><comment><USER7> If you like these kinds of game AI competitions and are looking for a more serious challenge, you should have a look at [0] (Starcraft Broodwar leaderboard and yearly tournaments). Most mainstream programming languages are supported out of the box (C++, Java, Python, etc.) and there is an active community around the process of bot development. IRC channel: [1]

Besides, talks are that this is the next problem the Google Deepmind team is going to tackle.

[0] [http://sscaitournament.com/](http://sscaitournament.com/)

[1] [http://webchat.freenode.net/?channels=BWAPI](http://webchat.freenode.net/?channels=BWAPI)

</comment><comment><USER8> i recently tried to implement a monte carlo ai for four in a row, so i thought i'll give this a try.

downloaded the java starter bot and reuploaded it again without much modification. failed.

first, there's a null pointer exception as soon as you try to use the "field" object in the unmodified starter bot. if fixed this.

but now i get:

        Error dump
        Java HotSpot(TM) 64-Bit Server VM warning: No monotonic clock was available - timed services may be adversely affected if the time-of-day clock changes
        Error: Could not find or load main class BotStarter

        Input dump
        Output dump
        Running testcase /opt/aigames/etc/tests_fourinarow/test_fourinarow.txt...
        Testing Bot with setup input...
        ... finished testcase in 0.170000001788 seconds
        Test failed: no output

that's it. nothing else.

so a) without having a method of painless local testing before uploading, it gets very tedious and b) the error message "Error: Could not find or load main class BotStarter" doesn't help me much in this case because i do have a class BotStarter with the method main - it's pretty much the starter bot right now.

edit: looks like for local testing i can download the engine source and run it locally.

edit 2:

        javac -d classes @sources.txt
        ...
        java -cp bin com.theaigames.fourinarow.FourInARow ...

looks like this wasn't tested on windows.

edit 3:

got it to run locally. output is:

        stopping...

        Done.

even in dev mode. i have no idea if it worked, what i did, which bot won, etc.

i'm giving up.

</comment><comment><USER9> Sorry, but these contests seem pretty blank to me. Still missing the old good IBM RoboCode. That one was dynamic and fun.

<comment><USER10> This?

[http://robocode.sourceforge.net/](http://robocode.sourceforge.net/)

<comment><USER9> Yes! oh, these memories... I may still have the sources of my bots around. Nasty algorithms with zone based tactics, opponent learning with neural nets, stochastic movement patterns, wheeesh.

<comment><AUTHOR> We are still busy with new games, tron, kriegspiel and ludo are the next ones coming. Will ask the developers to look on robocode also. Thanks for the tip! :) If you have other nice games for AI, please let us know.

<comment><USER11> I'm the maintainer of LiteRumble [1], which is the official continual rankings of all Robocode bots. The Robocode install includes a client, which (offline) runs the battles that then get uploaded to the LiteRumble server, similar to SETI/Folding@home.

If you need anything on the Literumble which would help with an integration, don't hesitate the let me know. Discussion about developement of all Robocode related things happens on the RoboWiki [2].

1\. [http://literumble.appspot.com](http://literumble.appspot.com) 2\. [http://robowiki.net](http://robowiki.net)

</comment></comment></comment></comment></comment><comment><USER12> Incredible!!! Thanks for sharing. Will try this out soon hopefully :D

</comment><comment><USER13> Hi OP. I was thinking the exact same thing recently. Is this yours?

<comment><AUTHOR> Hi Demircan, Can you explain more with what you mean with " I was thinking the exact same thing recently"

</comment></comment><comment><USER14> Look like fun. I assume Erlang is supported, since they list Elixir? I second the vote for CUDA support!

</comment><comment><USER15> What is the motivation for the company/organisation behind this website?

<comment><AUTHOR> Primary motivation is to create a comunity wehere programmers can develop their coding skills in a fun and engaging way. We also make it possible for university's to easily host an AI competition privatly for educatinal purposes e.g. pub.theaigames.com. You can check www.riddles.io for more info.

</comment></comment><comment><USER16> I have always loved these kinds of games.

</comment><comment><USER17> Seems like all the links are hard-coded to use http. Any chance you can get the site to work properly over https?

</comment><comment><USER18> Are you considering Swift support?

<comment><AUTHOR> It's a good question, I will ask the developers to support and come back to you with the answer.

<comment><USER19> Sorry, i haven't looked at the website yet, so what I may be asking might be pretty vague and far from reality.

Is the bots api available over http (get/post/whatever)? If no, will it be possible to have one? It will allow a whole lot of programming languages to be used. Just authenticate your bot using some token generated by the website, and then run the bot on your own pc or some server. It will allow us to play with the website with our favourite programming language even if you guys don't officialy support it.

For eg. currently my favourite programming language is Red. It is still in alpha, and is relatively unknown to people, so I don't think that there are any chances to get it supported on the website. But api over http would allow me to play with it as well.

<comment><USER20> All communication is done through standard IO between your bot and the server. Opening sockets in your bot is currently not allowed, as this could lead to unfair advantages for players with faster computers.

We're always looking to add more programming languages, so if you come up with a starterbot in Red, we will consider adding support for the language.

<comment><USER19> Okay...

Right now I am busy, after some time I will work on it...

Where do I contact you if the starterbot is done?

BTW where do I find the starterbots for other languages?

Edit: nvm, found them...

</comment></comment></comment></comment></comment><comment><USER21> Why??? No... CUDA???</comment>


For the very rich, citizenship is a problem to be solved. - <AUTHOR> http://hubski.com/pub?id=3032

<comment><USER2> Worth noting that several dual-citizenship friends have, over the last couple years, renounced US citizenship for tax reasons in each case. Very little appealing about being a US citizen for the very rich.

What this article fails to note is that the last thing the very wealthy want is a new form of citizenship or new country. Being a citizen of any given country becomes more like selecting the clubs you belong to based on the value-added services they provide. Starting a new club is a headache. There are plenty of reasonable ones out there.

And for the most part these clubs are already run by the super rich. The rest of the citizenry is just mowing the lawns as far as they are concerned.

<comment><AUTHOR> >There are plenty of reasonable ones out there.

That may be true. I have a good middle class friend that move from the US to Norway for higher taxes but great social programs. If you can handle the winter, not a bad deal. He loves it. Interesting that the citizenship decision might be moving closer to something like the job search.

<comment><USER2> Funny, my wife, friends and I were making a short-list of some reasonable US alternatives last night (we've both lived much of our lives outside the US though are in it now) and all our top picks were cold, northern, and civilized. Norway was on it.

<comment><USER3> Singapore? It's civilized, jungle hot and crowded.

<comment><USER2> Based in HK for a long time, spent lots of time working in SG as well and have family there now. We've talked about going back there too.

I like what they've done to push cultural development (something HK _never_ did effectively or seriously). Still a bit too fascist disney, but since we have kids it's pretty fam friendly.

I'd say it's on our list for a short term stay, a couple years maybe. Penang too, which is a slower pace, differnt vibe.

</comment></comment></comment></comment></comment><comment><USER4> It's not entirely true that citizenship determines where you pay most of your taxes, in fact it might only be true of the US. It's certainly not been the case for any other country I've lived in. Most have a residency test, if you're in the country cumulatively for 186 days you pay tax there. If you've had tax taken out of your salary in a country where you are not a tax resident and the country has a double tax treaty with whoever you are meant to be paying tax to then you can use it as a credit against any tax liabilities you may have there.

The UK is a bit of an exception, in that foreigners in the UK can declare themselves "non-domiciled" and not declare any foreign income they did not bring into the country. A bit of a loophole if you're foreign, wealthy, and can afford to leave most of your money offshore. Probably explains why there are so many celebrities and billionaires living in London.

<comment><USER5> Hm, I'm wondering, what if you travel around and you never spend more than 186 days in any single country? Assuming you visit only the countries that use that same approach, does it mean that you never pay any taxes? Doesn't sound plausible to me...

<comment><USER6> What's not plausible about this? People are doing it. It's not even much of a "loophole" since ultimately, 90% of people prefer to settle down for residency somewhere rather than keep travelling for years. The tax man always goes after the average 90% of people first. But yeah, depending on your citizenship you can do this, known as PT: "permanent traveller", perpetual tourist, previous tax-payer etc...

Be sure to know the rules of the countries you visit and more importantly those of your citizenship country. If you're German, you cannot do this less- than-180-days-per-year operation if you hold "tangible economic interests in the country" such as: being employed there, having property interest there, or other assets such as company shares in or from within the country etc.

So again, not a workable "loophole" for the majority of people but a decent state of affairs for the vast minority of Tim Ferris-style indy web-biz travellers with no significant "financial" assets or interests inside the country of citizenship.

</comment></comment></comment><comment><USER7> I don't see this as something just for the very rich. Citizenship is less of a big deal for Americans because they're so geographically isolated, but elsewhere, people cross national borders very often indeed. (Compare it to how often you cross state lines.)

Wealth has very little to do with it globally, at least beyond a certain value. It's to do with mobility of assets, of yourself, and of the people and things you care about.

I'm actually pretty convinced that borders and nations as we know them are another example of a bottleneck that is ripe for innovation by a new model - think of AirBNB or GetAround as tiny little proofs of concept for a much bigger possibility.

</comment><comment><USER8> I think if the rich seceded from the other nations, they'd find they'd need national defense pretty damned quickly. Economies of scale would probably make the seceded "nations" look a whole lot like all the other nations in short order.

<comment><USER9> It's a tough choice choosing between variety of PMCs ( <http://en.wikipedia.org/wiki/Private_military_company>) like Xe (<http://en.wikipedia.org/wiki/Xe_Services>) or paying up to join an alliance (<http://www.nato.int/cps/en/natolive/index.htm>).

<comment><USER8> Either way, you _have_ to spend the money. If you have to spend the money, you have to collect taxes. If you have to collect taxes, what are you gaining by sitting on a big float in the Pacific instead of living in London or Manhattan where the operas are?

<comment><USER9> I don't think it's ever about 0% taxes. It's about making governments compete for customers who have a choice of where to spend their tax dollars, and would prefer more bang for the buck.

<comment><USER8> Or, more realistically, less benefit for people they don't like.

<comment><USER9> Well, they're joining that virtual country by choice. People frequently enter partnerships where they don't like the counter-party, but they realize the partnership makes sense for both of them.

</comment></comment></comment></comment></comment></comment><comment><USER10> The source of my power is that I belong to no country.

\-- The Count of Monte Cristo

</comment><comment><USER11> For a citizen of a miserably poor and corrupt nation, their citizenship is also a problem to be solved. The surest way to help the poorest of the poor is not to send them food or money (that will likely be seized by their oppressors) but to give them _a way out_ , some place they can go and live safely. All the existing nations are essentially closed to poor immigrants; if this works, it will be an escape valve for some fraction of the poor in poor countries as well as the rich in rich ones.

<comment><USER12> That is the problem Paul Romer is trying to solve with charter cities.

</comment></comment><comment><USER13> You can already buy a citizenship in a number of countries.

EDIT: Commonwealth of Dominica, Saint Kitts, Nevis and Austria are places that I know of.

<comment><USER14> You can buy a US green card too. Just invest $1M somewhere, and you get a green card. So in effect the money stays with you, thus you're not even "buying" the card; just flashing the dough to get the card.

<comment><USER15> You actually only need to invest 500K if you're investing in certain qualified investments or regional centers with high unemployment rates.

If you're lucky you might make a large portion of the money back or even earn money on it.

</comment></comment></comment><comment><USER16> > You do not use or need other characteristics of citizenship such as social > services and national defense.

Yes, but they need our money to pay for their "libertarian dream." Anyone that actually does this is detestable.

<comment><USER6> They use "our" money for this, ie. yours? They robbed you? Or did you count on their income, as your income?

</comment></comment><comment><USER17> For a democratic nation, super-rich citizens who essentially flout the rule of law is a problem to be solved.

If a democracy establishes workplace safety and minimum wage laws and a super- rich citizen sets up an ocean-liner/sweat-shop just outside the borders of the nation, what should we do?

Super-rich individuals often already can attain citizen status which puts them further from any jurisdiction that will given them problems. That would only exacerbate the problem.

</comment><comment><USER18> Actually, wealthy people are even better off with the current system where they can hide their wealth in a number of competing low tax regimes in the outskirts of the world. It would actually be funny to see this thing coming true, and then turning to a prime terrorist target. Where would they build their defense missiles, in the basement?

In any case, despite the ridiculousness of the idea, this shows that the current sovereign-state compartmentalization of the earth is no longer the best way to run it and we need worldwide cooperation to both fight tax evasion and allow greater mobility of people and goods. Isolating the rich from the masses is only a good idea in the sense that it ends in an explosive way, like the french and bolshevik revolution.

<comment><AUTHOR> Why not just have one extremely low tax regime? They can still keep their cash where they like, but without the effort of evading taxation. Also, why do they need to live at this place? If they had visa treaties, this citizenship could be essentially digital. Or, if there was a locale, you could just have an address there.

<comment><USER18> What makes you think that "keeping their cash there" is beneficial to any society? I am obviously getting political here, but money for its own sake should not be a goal. Money should be invested or taxed.

<comment><AUTHOR> >Money should be invested or taxed.

Agreed. But there is what should be done, and what is done. I don't think this is anyway admirable, or of any benefit to society, (it's basically taking wealth harvested within a system out of that system) but I do see that it might be a possible solution for a perceived problem that exists for very wealthy individuals.

<comment><USER19> You're ignoring one particularly American problem, which is that Americans who harvest wealth outside the system of their country of citizenship are still required to pay taxes to it. I suspect that these sort of proposals would probably go away if rich Americans who moved to Hong Kong or Singapore were not expected to continue paying into Uncle Sam's coffers.

</comment></comment></comment></comment></comment><comment><USER20> You can use money to compensate a male or female to marry you and live with you for say 10 years. I think this would work in most nations.

With enough money, you could purchase nations and then make your own laws to your hearts content. Give me control of a nations money supply, and I care not who makes laws.

If you have money, then anything is possible. Without money, nothing is possible. That's why everyone is trying to get money. Money is life.

<comment><USER21> That's a pretty sad statement. Life is life.

</comment></comment><comment><USER22> why not create a virtual nation on the internet, the overhead would be very low.

<comment><AUTHOR> I think that is actually the most likely possibility for this. Why do you need land?

<comment><USER8> Try living in the Internet.

<comment><USER22> Ray Kurzweil thinks that will be possible by 2045, crazy, but he has been right before. Hope I am around to find out :)

<comment><USER8> I'm scared enough to put an application in the cloud - by 2045 I'm going to feel comfortable putting _me_ there? 2545, maybe. I'll get back to you then. Kurzweil's wrong on this one, and I say that as a convinced Singularitarian.</comment></comment></comment></comment></comment>


Mass customization will revitalize american manufacturing - <AUTHOR> http://mashable.com/2011/04/13/mass-customization/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+Mashable+%28Mashable%29

<comment><USER2> I worked on Levi's Original Spin program (originally called Personal Pair) in 1997-99 time frame as a software engineer.

A core problem with mass customization (at least of clothing) still exists today - there are so many options available locally without customization, and it's so much easier to purchase, that it creates a very high bar to meet.

I don't think it was the lack of technology to design the jeans. It was the lack of technology that could actually produce them to the measurements that were recorded. At the time, Levi's added some more measurements than just waist and inseam (I forget what they were) In fact, I suspect that if you have some fancy Kinect enabled measurer, it would create lots of new measurements that apparel manufacturers would have a tough time producing, no matter where they were located.

Yes - Levi's "Personal Pair" program (before 1997) was about fit (not about color), which was very difficult to make successful. It attracted older women looking for hard to fit jeans, who were not the target market (which for Levi's was optimally 18-25 year olds)

Levi's then pivoted, and rebranded it to Original Spin. For this article to say that it failed because Levi's "didn't offer color" is an oversimplification. Levi's Original Spin offered many different colors, washes and fits. There was a bar code embedded in the jeans, and a website where you could reorder the jeans online (yes even in 1998).

Even when they pivoted, buying jeans online was not an easy thing to do online (is it much better today??) So this made for a very expensive program, requiring in-store fittings, new technology, high-touch retail, and lots of returns. Even worse, you had to wait a week or two for these jeans.

We even had a laser body scanner at the store in Union Square in SF to take your measurements so someone didn't have to touch you with a tape measure. We had a special factory in Tennessee that made these jeans using a special factory program called Made To Measure (I think that was the name)

Then, because of manufacturing challenges - jeans shrink when you wash them within a certain tolerances - they didn't fit right a lot of the time when you finally received them. So there were a lot of returns. And a customized product that is returned .... is worthless for resale.

Not sure which of these factors have changed in the past 10-15 years (at least for jeans) but mass customization is not necessarily going to change the face of American manufacturing in the way the author suggests. Perhaps there have been manufacturing changes that can make jeans fit better and be constructed in a more sophisticated manner.

</comment><comment><USER3> > Mass customized product strategies require local production to reach > customers quickly and require highly skilled labor [...]

I think there's two very big assumptions right there: actually, international air shipping is pretty quick and skilled labor is widely available.

</comment><comment><USER4> This guy is rehashing a concept that universities have been teaching since the 90s. The era of mass customization is actually behind us, replaced with purpose built hardware and software (i.e. iPad, iPhone, Xbox, etc.)

<comment><AUTHOR> mass customization never happened. The question is, is the time now? I think advances in tech solve a lot of the supply chain issues. Are there corresponding improvements in manufacturing? Do the machines have to improve or just the software controlling them? Is it a data problem or a physics problem?</comment></comment>


AWS random system failures - <AUTHOR> Anyone else noticing random system failures on AWS?  Starting two days ago we've been noticing servers randomly die.    At first it was simple matter of forcing the host to stop and then start.  Now we're getting disk corruption as well... e.g.<p>``` tting hostname localhost.localdomain:  [  OK  ]<p>Setting up Logical Volume Management:   /var/run/lvm/lvmetad.socket: connect failed: Connection refused
  WARNING: Failed to connect to lvmetad. Falling back to device scanning. [  OK  ]<p>Checking filesystems Checking all file systems. [/sbin/fsck.ext4 (1) -- /] fsck.ext4 -a /dev/xvda1
/ contains a file system with errors, check forced. /: Inodes that were part of a corrupted orphan linked list found.<p>/: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. 	(i.e., without -a or -p options) [FAILED]<p><i></i>* An error occurred during the file system check. <i></i>* Dropping you to a shell; the system will reboot <i></i>* wh/dev/fd/9: line 2: plymouth: command not found Give root password for maintenance (or type Control-D to continue): [   18.428094] random: crng init done ```<p>That's from the system log... lots of fun to recover these... <comment><AUTHOR> It looks or sounds like one of the us-east1 regions is having issues with the new m5 series hosts... they die and can't be rebooted.</comment>


Prehistoric cave art reveals ancient use of complex astronomy - <AUTHOR> https://phys.org/news/2018-11-prehistoric-cave-art-reveals-ancient.html <comment><USER2> [https://www.athensjournals.gr/history/2018-1-X-Y- Sweatman.pd...](https://www.athensjournals.gr/history/2018-1-X-Y-Sweatman.pdf)</comment>


Implementing REST - <AUTHOR> http://code.google.com/p/implementing-rest/ <comment><USER2> Great to see a curated collection of resources about RESTful practices. Hosted on code.google.com... now if only Google would uniformly adopt REST for their own APIs. Google is still using SOAP for the AdWords API and I get hives every time I have to dive into it.

</comment><comment><USER3> Martin Fowler has a good article on the maturity levels of a REST API: [http://martinfowler.com/articles/richardsonMaturityModel.htm...](http://martinfowler.com/articles/richardsonMaturityModel.html)

That article provides useful ideas and targets for developing a REST API. Recommended.</comment>


Ask HN: has GitHub stopped hiring? - <AUTHOR>

Looking at https://github.com/blog/category/hire ... has GitHub just stopped hiring new people or is this only a change in HR strategy and that blog section is dead now?

    - 2013-05: 0
    - 2013-04: 0
    - 2014-03: 2
    - 2014-02: 1
    - 2014-01: 7
    - 2013-12: 9
    - 2013-11: 10
    - 2013-10: 4
    - 2013-09: 9
    - 2013-08: 11
    - 2013-07: 15
    - 2013-06: 8
    - 2013-05: 9
    - 2013-04: 9
    - 2013-03: 5
    - 2013-02: 5
    - 2013-01: 5
    - 2012-12: 8
    - 2012-11: 6
    - 2012-10: 8
    - 2012-09: 9
 <comment><USER2> I know 2 guys who are totally qualified to work there and have interviewed. (Heck, one of them wrote some of their tooling.)

Neither of them have been hired.

</comment><comment><USER3> I wish they would have a more open application process especially for junior developers or new grads.</comment>


Ask YC: Where do you guys find designers for your projects? - <AUTHOR>

<comment><USER2> I've gotten recommendations from several people...and none of the recommended designers were all that great. The one I use all the time I met on the general interest town mailing list - we are two libertarians in a sea of Massachusetts Democrats. We ended up getting together for poker first, became friends next, and now we farm out tons of design work to him.

Note: no guarantees that this process will work for you.

<comment><USER3> I always thought that Americans are first business partners and then become friends. Your story looks like a strange deviation :)

</comment></comment><comment><USER4> I'm using my little brother who owes me a favor and is an awesome designer.

Find sites you like, ask who their designer is.

csszengarden.com or oswd.org

<comment><USER5> Look at csszengarden if you have a decent budget. Go to oswd if you're looking for cheap.

I'm very happy with a designer I found via csszengarden, but she isn't cheap. I'll write a blog post about the whole process when it's done. Currently ourdoings.com is using a half-finished design from her, because even half finished it's 10x better than what I had before.

<comment><USER4> Can anyone give a range of prices they've paid for designs?

</comment></comment></comment><comment><USER6> I've used rentacoder.com in the past and didn't have great results.

Now I just tend to do it myself, with mixed results.

<comment><USER7> yeah, for whatever reason graphic designers don't tend to congregate there. great for cheap little programming tasks, not so great for original design.

I think it has something to do with the fact that you can turn out shoddy code that produces a functional program, whereas shoddy design is immediately apparent

that's why a lot of design stuff you get when outsourcing is template-based and replicated across multiple sites.

</comment></comment><comment><USER8> Found mine on xing. One I found by comparing the works of several designers I found on Xing. Another one found me on Xing when he needed a coder, and in turn I asked him to design.

</comment><comment><USER9> I found a couple the other week when I took off all the cushions on the couch and looked at the stuff that had fallen down there.

</comment><comment><USER10> <http://www.programmermeetdesigner.com/>

</comment><comment><USER11> Everywhere -- rip, mix, burn.

<comment><USER12> huh?

<comment><USER13> I believe he's advising to look at the sites that you find attractive- See what elements they have that you can emulate.

As someone mentioned in an earlier thread, one easy way to get better at good design is to use good reference designs.

<comment><USER12> Thanks. I had a parsing error.</comment></comment></comment></comment>


Dasung E-Ink Display Crowdfunder: Will it be good for coding outside - <AUTHOR> https://www.indiegogo.com/projects/paperlike-world-s-first-e-ink-monitor-13-3/ <comment><USER2> I'm suspicious about this. Flex funding is the first warning flag of a scam. The second warning flag is the religiosity in the advertising video talking about god and talking nonsense about "damaging our retina". The third warning flag is they first announced this Dasung E-Ink monitor product in 2014 so what's been happening in between. The fourth warning flag is the complete lack of explanation what exactly and specifically they want funding for. They previously advertised their product in 2015 as: \--- Right now, the PaperLike is selling for $975 (straight conversion), though there's a promotional discount that nets a $325 price break. Even at $645, it's more than seven times the price of the 16-inch AOC e1659Fwu on Amazon. \--- [http://www.geek.com/chips/watch-a-13-inch-e-ink-monitor- in-a...](http://www.geek.com/chips/watch-a-13-inch-e-ink-monitor-in-action- then-gawk-at-the-price-1614311/)

So why is it now $700 when E-Ink panel prices have been steadily decreasing.

<comment><AUTHOR> Yeah, they are a bit over-the-top. I only want it for the ability to wear sunglasses and use it to code. They have existed for a while, and you can buy direct, but they are too expensive at normal price. I think they are doing a crowd-funder simply to drive sales.

I got email from them (as I enquired previously) that explained they were making them currently, and you could pay via Paypal full price and get them right away, or via IndieGogo and get them for less, but have to wait a couple of months.

I don't think the way they do business is great, and one of their founders is a science fiction writer apparently, but as far as I could find, they are the only people making e-ink displays for this use-case. I've researched a lot, and I have not been able to find any other similar product actually in production. Lots of small demo videos, and broken links.

I have tried the jailbroken kindle, and it was pretty rubbish experience, I really hope the Dasung product at least works as it is depicted.

</comment></comment><comment><AUTHOR> Full disclosure - I've already ordered one because I am excited to try and develop out in the sunshine, and laptop screen isn't cutting it. This is USB powered, and I'm hoping it will be good enough for text editor. Anyone had experience with these or any other e-ink devices?

I was really excited about e-ink technology, but it seems that there is very little innovation in this space, and I can't help but think this will really help for reading articles etc. too.

<comment><USER2> > there is very little innovation in this space

A lot of E-Ink based projects got stepped on within large MNCs because LCD vendors dropped their prices significantly whenever development teams talked about switching. Plus LCD and backlight power consumption rates improved quite a bit and the management level people insist on the ability to play video.

<comment><AUTHOR> And yet, people spend hours straining to see iPads and laptops in the sun! The video thing is a killer. I was really excited with some very promising demos etc. but I am frustrated that this seems to be the only device to have made it into production, and that is only available as direct by from China, nobody is retailing these!</comment></comment></comment>


Nod - Touchless Interaction - <AUTHOR> https://hellonod.com/

<comment><USER2> Wish they had more technical details instead of breathless marketing. Looks like a gyro mouse, as a ring. Definitely neat, but hardly revolutionary. Gyro mice have been around for years ([http://www.amazon.com/s/?field- keywords=gyro%20mouse](http://www.amazon.com/s/?field-keywords=gyro%20mouse) ); they're rather frustrating to use. The ring doesn't look small enough to wear all day, and the latency looks pretty terrible in the demo video.

What I really want more than another gesture thingy is a one-handed, portable, and eyes-free text entry device; something that could really replace a keyboard for a mobile device, even for demanding activities like programming. Is anyone working on that?

<comment><USER3> You can get to 40+ wpm pretty easily on a standard iphone. Kids these days have no trouble typing fast, one-handed, on their phone.

As for programming -- a language could be invented that is on-screen keyboard friendly (no brackets, etc).

<comment><USER4> Or a simpler way instead of implementing a new language -- just use a custom keyboard. Android already has this and iOS 8 just added it.

</comment></comment></comment><comment><USER5> It has the same problem the Leap has: It has intolerably high latency between movement and execution of input. (Judging from the video in some cases almost a whole second, but generally over half a second.) It might be useful for niche applications, but if i need to take over ten times longer to do simple tasks with it, it will never be part of normal daily usage.

<comment><USER6> We have made a lot of progress since the early product videos. We are demoing it in SF at the AA hackathon today if you want to see it in action. Nod is the only pixel accurate gesture control device in the market.

<comment><USER5> I'm in Germany, so seeing it isn't remotely an option. I'd appreciate the hell out of videos though. Youtube is cool and modern phones have really good cameras. ;)

What exactly do you mean with pixel-accurate?

</comment></comment></comment><comment><USER7> I'll stick with a wireless mouse and keyboard for now. The device in the video looked incredibly painful to use. Strange how the producers did not see that.

IMO This is not a solution to anything.

</comment><comment><USER8> "Awkward." That's the gut reaction I got while seeing the person in the video using this device.

That said, touchscreens still feel less satisfying than physical buttons, so maybe I'm just being nostalgic.

<comment><USER9> > That said, touchscreens still feel less satisfying than physical buttons, so > maybe I'm just being nostalgic.

Or just pragmatic :)

There are dozens of articles/papers/essays I could put you, but here's one: [http://worrydream.com/ABriefRantOnTheFutureOfInteractionDesi...](http://worrydream.com/ABriefRantOnTheFutureOfInteractionDesign/)

</comment></comment><comment><USER10> Thalmic Labs' Myo is more conceptually similar to this than the Leap. This looks cool but it does look laggy and inaccurate. The Myo alpha unit I got to test worked beautifully.

<comment><USER11> I preorderd a Myo, and that was the last I heard from them about it. Glad to know that its working.

<comment><USER12> Hi there - good chance we're either getting blocked by a spam filter or have an incorrect email. We've been sending out some kind of email roughly every 4-6 weeks. If you send us a note at thalmic @ thalmic.com we should be able to get that sorted out.

</comment></comment></comment><comment><USER13> GORILLA ARM! When would people understand! I've seen 3 Products have failed doing this (including Microsoft Kinect)

<comment><USER6> Nod can be used with your hand on your side (or anywhere else). No need for Gorilla ARM.

</comment></comment><comment><USER3> How does this make my life better/easier? Tv's have been trying to do this and nobody really cares. Take the Nest example ... why don't I just literally turn the Nest device?

I'm not saying this couldn't have a practical use -- just that you aren't proving it.

<comment><USER6> you can point at your Smart TV and actually type into your TV. Ofcourse this requires the smart TV to incorporate our gestural keyboard (and we are working with leading vendors to incorporate it or at least provide it as an app)

</comment></comment><comment><USER14> Neat idea but this looks like it will suffer the same annoyances as the leap. It works great when you make very specific controlled movements, but that ends up taking away from what touch-less is supposed to promise in my mind. I just want to flip my hands about casually but the leap would rarely catch it properly. Instead I was usually just left frustrated and tired of holding my arm up in the air.

The part of the video where they traced a word out on the keyboard just looked painful trying to keep your hand up in the air and steady.

Haven't used my leap after the first month of getting it. I fear the nod will be the same.

Do like the button/slider feature however. That seems like a good addition. But that gets me thinking is a wii controller much different?

</comment><comment><USER15> I actually thought the whole thing was a parody video (of other similar devices) during the clip where a bunch of scribbling across the keyboard somehow ended up spelling "Island". Even the logo makes it look like the device is really hard to control.

</comment><comment><USER16> I'm excited for these type of wearables as input devices for head-mounted HUDs/AR. Google Glass currently uses voice recognition and a capacitive strip, which is fine, as Glass is only for briefly looking up information. As AR develops, it will need more complex input methods, and I see these as some vague possibilities:

* Hand/wrist/arm mounted input (Nod, Myo, watches, chorded keyboards, etc...)

* Eye-tracking (technology exists, but needs to be miniaturized and developed further to fit within a glasses frame)

* Head movement (tiling your head, winking, etc.)

* Computer Vision (ie. AR develops enough to use your hand in front of you to intuitively interact)

</comment><comment><USER17> Touchless is kind of opposite of what I want. Haptics are important.

In almost every situation I'd rather have a physical knob or button. If I'm sitting down at a desk or on my couch and putting on a ring, I might as well be picking up a controller or remote that have instant action and tactile feedback.

I suppose all these hand waving hardware startups share the Minority Report vision for interfaces.

</comment><comment><USER18> Why will this do any better than the Leap (which arguably hasn't seen major adoption)?

<comment><USER19> Regarding the leap...while it has not had as much adoption as the team had hoped, the effort being put into it is still significant. The latest SDK update addresses a number of shortcomings that the initial implementation had, making the hardware that much more viable.

That all said, the biggest issue with all of these new interactions is the lack of a solid, low fail interaction model that can seamlessly replace our current interfaces.

Looking at the leap, while it does a number of things right it has to always get it right, or as close to always as possible to be as good as a mouse click or a keyboard key press.

This looks interesting, but watching a promotional video doesn't show me how often a person has to flick their hand or swipe the touch strip to get the desired result. I have a leap and while I've gotten fairly proficient with it, I still find it's failure rate to be to high to make it a real replacement for my mouse and keyboard.

</comment></comment><comment><USER20> I just checked out their product. I'm an engineer and it is one of the best wearable devices I've seen out there. The initial product demo video doesn't do any justice to the latest version they have.

</comment><comment><USER21> This reminds me of something I had in the 90s that was a lot like this, but using ultrasonic triangulation with an L-shaped frame on the monitor.

It was a complete pain in the ass to wave your arm around to do everything.

</comment><comment><USER22> The product looks amazing, I wonder how long it will take the porn industry to come up with it first Nod-based app.

<comment><USER14> Your member would probably get just as tired as your arm holding it up to type out a url :p

</comment></comment><comment><USER23> Does anyone actually want to play Fruit Ninja on their TV? (Yeah, I know it's just a demonstration.)

Cool tech though.

</comment><comment><USER24> That is a truly beautiful website. Product looks awkward though, my finger felt empathy cramps.

<comment><USER25> I don't know. You obviously like the site, and it's full of these scroll abusing sites, it make me believe I can't browse sites anymore.

</comment></comment><comment><USER26> Looks good! It would be nice to get more information about the OpenSpatial framework.

<comment><USER6> please see github.com/openspatial for SDK, code samples and an emulator for iOS/Android.

</comment></comment><comment><USER27> This looks really fun. Excited to try it.

</comment><comment><USER28> y u make something i have to wear?</comment>


The American who quit money to live in a cave - <AUTHOR> http://www.bbc.co.uk/news/magazine-17762033

<comment><USER2> This works until you have any major medical problem. In the past, people would just die.</comment>


The Non-Human Living Inside of You - <AUTHOR> http://cshl.nautil.us/article/498/the-non-human-living-inside-of-you <comment><USER2>
        # A short Python program to cure one thousand diseases
        # Dependencies:  crispr, genome_info
        for i in range(len(dna)):
            if genome_info.stores_viral_dna(i):
                crispr.write(dna, i, 'A')

How far away are we from building this kind of software?</comment>


Babel 6 – useless by default - <AUTHOR> http://fourlightyears.blogspot.com/2016/03/babel-6-useless-by-default-lesson-in.html <comment><USER2> I'm on the Babel team and this decision was intentional. The purpose that Babel serves now is more geared towards providing the building blocks to create a JavaScript development experience rather than providing one. It's up to Ember, React, React Native, or your favorite boilerplate, cli, etc to create that nice getting started experience with healthy defaults. We either do a shitty job trying to serve everyone and everything or we take a step back and enable people more knowledgeable with their user needs to create those experiences.

Babel < 6 was trying to be everything for everyone and that wasn't working out. Everyone wanted to get their pet feature in. And we came under fire for making it easy for people to use experimental features.

That said, there is probably room to create a es2015-cli or something like it that provides a default experience, but that's orthogonal to this discussion.

Finally, the point you raise about Babel just disappearing into the stack is also misinformed. Transpiling should always be a technical decision to be made. For example, you should know that a for-of statement will transpile to include a bunch of runtime checks that would be slow in hot code etc.

<comment><USER3> How do you feel about Babel -- and, to a greater extent, ES6+ -- losing out to TypeScript due to the difficulty in getting into it?

I use TS exclusively, and that is unrelated to working with it professionally on a daily basis. It is a thorough pleasure.

</comment></comment><comment><USER4> I totally agree that the initial user experience for Babel could use some work. We don't tend to do a great job of guiding users through initial setup. It absolutely needs work. I'd be curious to hear the author's thoughts on what we can do better in that respect, since "no config" probably isn't going to happen off the bat.

On the other hand, I don't feel that it's reasonable to assume that setting up a build system will be trivial. Jumping into ES6 isn't and shouldn't be a trivial decision, transpilation is a complex process with edge cases. That doesn't mean it should be a pain in the ass, and I don't want it to be, but it doesn't mean it will be instantaneous and easy. Users have totally different build targets (different Node versions, different browsers, some need IE8 support, some don't). Different systems need different levels of polyfilling and differing output syntax.

Enabling everything by default is one option here, but that encourages people to not consider how things actually work, which is rarely a good idea. It also assumes that adding complexity around knowing what to _disable_ is actually better, which I'm not convinced it is.

<comment><USER5> Exactly! Enabling unstable language features like decorators by default is the opposite of a novice-friendly decision, as is enabling by default features that require pulling in e.g. the Regenerator runtime.

The author of the post doesn't seem to understand that many of the transforms supported by Babel touch on proposals that are actually at various stages of being experimental or unstable, which actively _should not_ be enabled by default for the sanity of users who don't know better.

Opting a novice user by default into a language feature that might well change is not a good thing! Otherwise we end up with something dumb like the legacy decorator transform, where people unknowing code against proposals that are liable to change under them.

Babel-5-stage-0-ese is not ES.next!

<comment><AUTHOR> >> actively should not be enabled by default for the sanity of users who don't know better

The idea that users should be protected from themselves isn't an effective one and is at the heart of the idea that Babel should do less and more should be configured in.

Nothing terrible will happen if a user uses a feature that is experimental or unstable. They might get to use it successfully however if it comes preconfigured. I can just update my code when the spec stablises.

>> the sanity of users

The sanity of users is broken by the myriad problems with Babel configuration.

<comment><USER6> It's not that the users should be protected from themselves, but that they should be protected from instability.

Proposals are constantly changing, and keeping a monolithic Babel on track with them without breaking things for users all the time is a difficult problem.

The configuration is more than just configuration, it's explicitness. It's telling Babel exactly what you want out of it. That way you never have to worry about changing behavior until you want to make the migration.

The situation is more nuanced than you are recognizing.

<comment><AUTHOR> >> but that they should be protected from instability.

Appropriate protection is a warning in the docs "this code might change when the spec is finalised".

Inappropriate protection is hiding those features away behind difficult-to- configure barriers making it only possible for experts to configure their systems to run it.

<comment><USER6> We did have those warnings in the docs. I _wrote_ those warning. No one paid any attention to them.

I hate to say it, but you really don't know what you are talking about.

<comment><USER7> > _I hate to say it, but you really don 't know what you are talking about._

Please refrain from getting personal in arguments on HN, even though it's frustrating when someone doesn't know what they're talking about.

This comment would be great with just the first paragraph.

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> The author posits that "Babel should come pre configured with the kitchen sink of JavaScript development - async await, decorators etc etc."

There's a very good reason that Babel doesn't, and we should actually be fairly grateful that the Babel team have made the considered decision not to include such things.

First off, neither async/await nor decorators are actually part of ES2015. They're both TC39 proposals, at various stages of completion: [https://github.com/tc39/ecma262](https://github.com/tc39/ecma262). Very justifiably, neither Babel 5 nor Babel 6 transpiled those out-of-the-box by default; for novice programmers, using language features that are unstable proposals that have not finalized is quite dangerous – what are you going to do if those proposals change, as the decorators proposal actually has changed?

More specifically, there are meaningful issues with both of those transforms if used without further thought. Babel's stock transpilation of async/await brings in an entire runtime component in the form of the Regenerator runtime, and additionally requires that Promises exist in the JavaScript environment, which requires polyfills in the general case.

For decorators, the proposal _itself_ is still in flux. The current version of the proposal ([https://github.com/wycats/javascript- decorators/blob/master/...](https://github.com/wycats/javascript- decorators/blob/master/interop/reusability.md)) is actually quite different from the old proposal, which was the one that was implemented in Babel 5. Additionally, the current proposal isn't even fully nailed down yet. Certainly one should not expect Babel to implement a language feature for which there isn't even yet a stable proposal!

This isn't to say that Babel 6 is perfect, but the specific counterexamples the author of this post brings up are extremely weak, and if anything demonstrate very good choices on the part of the maintainers of Babel.

<comment><AUTHOR> >>what are you going to do if those proposals change, as the decorators proposal actually has changed?

I'd just update my code to meet the spec. Likely it would take vastly less time than the hours needed to fail in configuring Babel. The documentation can just say "this feature isn't finalised, it might change." That's enough. The code does not need to be disabled just because the spec isn't final.

>> quite dangerous

It's not really dangerous. No-one is going to die. It's emotive words like dangerous that lead Babel developers to think "we'd better hide that functionality behind hard-to-configure barriers so people don't cut themselves on the dangerous code".

<comment><USER6> It's extremely dangerous, we're talking about tens of thousands of developers who have chosen to depend on Babel for their livelihood, we can't just keep breaking things on them.

We don't want Babel's configuration to be difficult, we just want people to explicitly tell us what they want.

If you have suggestions on how to make the configuration easier I'm happy to hear it. But turning stuff on by default it a terrible terrible decision that hurts the community.

</comment></comment></comment><comment><USER8> I love babel6 but this article made me laugh. The tragedy of babel 6 is that it used to be simple to introduce to newcomers, now I have to chain them to a desk. Now excuse me while I cry myself to sleep over how many hours I wasted configuring software.

</comment><comment><USER9> I gave up on trying to use the babel 6 cli and wrote a global-happy replacement[1]. It still doesn't do anything by default (well, other than indent, add semi-colons, and check syntax) but typing `babel --es2015` is easier than installing a few hundred megabytes of node modules and configuring a .babelrc file just so it can convert `const` to `var`.

1: [https://github.com/ksherlock/better-babel- cli](https://github.com/ksherlock/better-babel-cli)

1.1: [https://www.npmjs.com/package/better-babel- cli](https://www.npmjs.com/package/better-babel-cli)

<comment><USER10> Indeed, I am concerned about the trend towards locally installed NPM modules, away from globally installed ones. The other project exhibiting this trend is ESLint. It used to work beautifully globally installed, then the developers broke it; it's better now, but there are still some bugs. Having one ESLint config per project and making it a direct dependency is ridiculous when you have a dozen projects and all you want is in-editor linting (in Atom, in my case).

<comment><USER11> The problem is that you can't require global modules, so that global module needs to have installed everything that needs, and if it needs to support multiple projects with different requirements, that global modules needs a whole lot of modules itself in its package.json, and now that global module is unmaintainable, because of all its dependencies. That is why global modules is generally not useful and that it is better to have them installed locally.

</comment></comment></comment><comment><USER12> You could just _not_ use Babel and ES6. It's actually pretty beginner-friendly when you go that route. It's not like you'd be missing out on features that you absolutely need to have to make an app or a backend.

<comment><USER13> And your app will have non-trivially better performance.

[https://kpdecker.github.io/six-speed/](https://kpdecker.github.io/six-speed/)

</comment></comment><comment><USER14> Gotta agree with the author here. Trying to wade into modern JS is really really hard. There are sooooooo many different ways of doing things, and tutorials written a few months ago can be out of date.

<comment><USER3> It is for this reason that I will avoid JS like the plague, and instead opt for TypeScript.

I have been satisfied so far.

<comment><USER14> That's not really avoiding the problem. The problem isn't just figuring out how to get all of your nice ES2015/2016 constructs to compile down to a format that can be understood by browsers and node. It's also all of the libraries that are in vogue and that you sort of need unless you're wanting to totally reinvent the wheel.

</comment></comment></comment><comment><USER15> I heartily recommend TypeScript as an ES6 compiler with excellent support for commenting types used.

<comment><AUTHOR> I note that [https://jaxenter.com/typescript-1-7-122642.html](https://jaxenter.com/typescript-1-7-122642.html) "TypeScript 1.7 is here with async/await as default for ES6" makes a point of saying "as default". Nice to hear.

I'm now going to attempt to switch to TypeScript. I wonder how deep this new rabbit hole will be.....

<comment><USER15> Note 'for ES6'. This is a fairly large caveat, as it requires you to have a way to deal with the emitted ES6 code. The problem being that TypeScript does not currently down-emit generators. Strictly speaking, TypeScript provides excellent down-emit support for a subset of ES6, and the rest of ES6 support such as 'let' captured in closures and generators need another compiler to down-emit the generated ES6 (for now).

<comment><USER16> There's definitely still cases where you want some subset of Babel or CoreJS polyfills AND Typescript.

The magic may be in Typescript helping you figure out which runtime polyfills to configure, maybe even spit out something resembling a .babelrc for your Typescript project.

There's definitely discussions on this topic in the GitHub Issues, though I haven't perused them recently so I can't tell you right now if there is any progress.

</comment></comment></comment></comment><comment><USER17> After a certain point, it's better for a system to be absorbed into an API instead of trying to be configurable. Then you can just write code again, and it's complex but not idiosyncratic.

</comment><comment><USER18> I use TypeScript compiler for transpiling ES6 to ES3. Works pretty good for me. It does a lot of static code analysis while compiling too.

And it works out of the box with zero configuration

<comment><USER19> I decided to use TypeScript for my latest project for similar reasons.

I'm barely using any TypeScriot features. I just wanted a simpler build system.

</comment></comment><comment><USER20> A few weeks ago I wanted to modernize my JS stack after being out of the web development scene for a while, as part of learning other programming languages and the likes. I was dumbfounded at the amount of overengineering, INSANELY complex build tools, and incredible amount of tools you have to use now to simply do what JS kids call a "proper" hello world. What exactly are JavaScript developers trying to demonstrate? That they are capable of overengineering the simplest thing? (ahem leftpad?) It's getting absolutely ridiculous. And then if you complain to them about how something is kind of ridiculous, you are evil, a bad programmer, and should go burn in the pits of npm. There is also a culture for rewrite the world in JS because JS is the one and only blessed language. I'm getting inspired for a blog post now...

</comment><comment><AUTHOR> As an aside, I'm still stuck, having spent the whole day trying to get Babel's async/await to work. Can someone point me to a web page that includes set of instructions that actually work for configuring async/await?

This is the reason I wrote the post and I'd really like to get back to actually programming.

<comment><USER21> I left a comment on the site - but try [https://gist.github.com/rauchg/5b032c2c2166e4e36713#file- pac...](https://gist.github.com/rauchg/5b032c2c2166e4e36713#file-package-json)

npm i -D babel-cli babel-preset-es2015 babel-preset-stage-0 babel-plugin- transform-runtime

echo "export default async function requireFromTwitter (id) {}" > index.js

echo '{ "presets": ["es2015","stage-0"], "plugins": ["transform-runtime"] }' > .babelrc

./node_modules/.bin/babel-node index.js

<comment><AUTHOR> That page has a comment that says "Mandatory disclaimer: this is not serious and not safe."

<comment><USER21> Haha sorry the code itself is a joke right - I just mean the setup in the package.json (I posted it above)

FYI: in reference to [https://twitter.com/rauchg/status/712799807073419264](https://twitter.com/rauchg/status/712799807073419264)

</comment></comment></comment></comment><comment><USER22> Totally agree. When I'm spending more time debugging the build tools configuration than the JavaScript itself, there's something seriously wrong. Unfortunately, that wrong starts at npm itself and just gets worse from there.

<comment><USER23> No, the wrong starts with Javascript. ;)

<comment><USER22> Yes, so true. What a terrible language.

</comment></comment></comment><comment><USER24> There is a trade off being made. The whole point of the presets system is to not bring in the modules you don't need. As the Node.js runtime and browser ES6/7 feature support grows, you will not need certain plugins.

Your title is a little inflammatory: "a lesson in how NOT to design software.".

Re: Javascript tooling. Yes is it painful. But Babel is designed exactly as it should be, and the solution to fix your problem is a library that wraps around it.

<comment><USER25> He did suggest how to fix it—enable everything by default. If you'd like to argue against that then that's fine, but your response makes it look like you didn't even read the article.

</comment></comment><comment><USER26> I had the same experience. It was really hard to get a react/redux project started without a swathe of modules and build systems. It became a mission just trying to set it all up and Babel was a part of that. There appears to be no way around it to get that stack up and running. I discovered riot.js and moved to that as there was zero barrier to entry.

</comment><comment><USER27> Possibly related blog post and discussion

Post: [http://robotlolita.me/2016/01/09/no-i-dont-want-to- configure...](http://robotlolita.me/2016/01/09/no-i-dont-want-to-configure- your-app.html)

Discussion: [https://news.ycombinator.com/item?id=10878623](https://news.ycombinator.com/item?id=10878623)

</comment><comment><USER28> It's the nature of JavaScript. And there will be a brand new wheel 3 month later</comment>


How luxury housing becomes affordable - <AUTHOR> http://cityobservatory.org/making_luxury_housing_affordable/ <comment><USER2> After living in Edinburgh in one of the very nice & ubiquitous 100 y.o. plus tenement flats, I've often wondered about the long-term impact of housing durability on affordability.

<comment><USER3> Lately a lot of the new student "luxury" housing near in my former college town have atrocious quality. Super-thin spitboard doors that one can break with one kick, little noise dampening, leather couches that are cracked/brittle after a year of use.

Like with car brands, you can get a Rolls Royce i.e. "real" luxury, or the simulation of luxury i.e. an Infiniti or Buick. Not to say those other types of luxury aren't bad, however it's important to make the distinction.

<comment><USER4> I wonder if using wood (2x4's, OSB) as a structural material has a negative impact on long-term durability. In North America, virtually all residential single-family construction is wood-frame, which is unusual compared to most other countries.

Masonry, insulating concrete forms (ICF), and poured concrete have superior fire-resistance, insulating properties (thermal and acoustic), and strength-- and no need to worry about termites.

I don't fully understand why wood-frame construction still dominates, even in the "luxury" segment, but I think it's related to strong consumer preference for large homes. Given a fixed budget, you can build a larger house using wood compared to almost any other material (factoring in labor, e.g. 'compressed earth' construction uses cheap material and more labor). But the preference for larger homes doesn't explain why wood-framing is so popular in areas where construction costs are very low relative to land-value.</comment></comment></comment>


Pando (tree) - <AUTHOR> https://en.wikipedia.org/wiki/Pando_(tree) <comment><USER2> Learning about this a while back absolutely blew my mind. (So much so that I submitted it to HN, where it was roundly ignored. Oh well :-)

Anyways, it's a new and strange idea to me that this organism, covering a mountainside, is really more properly thought of as an absolutely massive underground body that sends shoots above ground to breed and collect energy. Makes me feel weird when I consider the quantity and variety of life below my feet.

Secondly, it's _80,000_ years old. That made me consider the variety of timescales that life exists in. I wonder if this is considered in the search for extraterrestrial life. Would we even be able to detect an organism whose life spans more than ten thousand years, and what about a million?

I wish we could see a timelapse of the above and below ground growth of this magnificent life form. I wonder if it has "moved" in that time, expanding and shifting into more fertile areas and atrophying in others.

<comment><USER3> Would an organism that lives for millions or hundreds of millions of years detect our momentary flash?

Our lives (and civilization) are incredibly short on a universal time frame. This is very cool - we are the fastest creators of complexity and order we know of. We are a piece of the universe that has become sentient; (arguably) the only part capable of choosing whether to grow or die.

Our understanding of life is inherently limited by our context; an enormous tree is nearly alien yet it is very closely related to us. At a philosophical level we can begin to assess the basic requirements for life: an infrastructure that can store, propagate, modify, and execute code to alter itself and the world around it.

<comment><USER4> > we are the fastest creators of complexity

I like that definition. I also tend to define humans as having a large spectrum of scale interactions. We explored and sensed from nanoscopic to cosmic.

</comment></comment></comment><comment><USER5> edit: its off-topic

This surprised me: _" The plant is estimated to weigh collectively 6,000,000 kg (6,600 short tons)"_

I always tought that one ton was equal to 1,000kg. So this could be a typing mistake on wikipedia, but then I followed the link to [https://en.wikipedia.org/wiki/Ton](https://en.wikipedia.org/wiki/Ton) and found out that is quite a mess its definition:

 _" In the United Kingdom the ton is defined as 2,240 pounds (1,016 kg) (avoirdupois pounds).[2] From 1965 the UK embarked upon a programme of metrication and gradually introduced metric units, including the tonne (metric ton), defined as 1000 kg (2,204.6 lbs). The UK Weights and Measures Act 1985 explicitly excluded from use for trade many units and terms, including the ton and the term "metric ton" for "tonne".[3]

In the United States and formerly Canada[4] a ton is defined to be 2,000 pounds (907 kg)."_

Any case, for me, living in a country using the metric system, appears that I should use the word "tonne" as translation for "tonelada" (metric ton in portuguese). This means that I am thinking the wrong quantity whenever I read "ton" on a american text. Quite a discovery!

<comment><USER6> [https://en.wikipedia.org/wiki/Short_ton](https://en.wikipedia.org/wiki/Short_ton)

<comment><USER5> thanks! as the hyperlink was only at thw word "ton" (and to the url above); I assumed "short" was part of the phrase, not of the unit name. Something meaning that 6,600 was a rounded number or something like that (enlgish is not my first language).

<comment><USER6> Just fixed it on Wikipedia. :-)

</comment></comment></comment></comment><comment><USER7> Clicked this expecting to read about some crazy data structure.

I was wrong, but not disappointed.

</comment><comment><USER8> Is this the only instance of this species? Why doesn't it have other instances elsewhere that behave the same way?

<comment><USER9> As the article explains, it grew to this size under very favorable circumstances: forest fires keep burning down competing conifers, and a shift in climate some 10,000 years ago made it so separate aspens couldn't really flourish.

Also in the article it mentions other clonal groups in Utah and elsewhere.

</comment></comment><comment><USER10> There's a co-work space and startup hub in Park City, Utah called Pando Labs that's named after Pando: [http://www.pandolabs.org/](http://www.pandolabs.org/)

</comment><comment><USER11> I was just at a web design conference, and Ethan Marcotte cited this as part of his presentation while talking about 'networks of content' in responsive Web design.

</comment><comment><USER12> Also the origin of the news site Pando:

[https://pando.com/about/](https://pando.com/about/)

</comment><comment><USER13> What's the news here?

<comment><USER14> Potential headline: "Hey, I just learned about an interesting thing."</comment></comment>


2014 in Computing: Breakthroughs in Artificial Intelligence - <AUTHOR> http://www.technologyreview.com/news/533686/2014-in-computing-breakthroughs-in-artificial-intelligence/

<comment><USER2> The most striking strides will come from the mimicking of human cognition, the real mimicking of human cognition. Just portions of it, small portions so as not to bite off more than we can chew as we did during the heyday of AI. It's hard enough as it is to replicate the best pattern matcher we've ever known, the human brain. The mind is a different story.</comment>