AWS announces per-second billing for EC2 instances - <AUTHOR> https://techcrunch.com/2017/09/18/aws-announces-per-second-billing-for-ec2-instances/?ncid=rss <comment><USER2> That's sure nice, but I'm waiting for AWS to switch to automatic sustained use discounts [0] like GCP offers.

[0]: [https://cloud.google.com/compute/docs/sustained-use- discount...](https://cloud.google.com/compute/docs/sustained-use-discounts)

<comment><USER3> I'm waiting for GCP to support preemptible GPU instances. Would love to be able to spend ~50% less on GPU instances when running a batch job that can be stopped and reloaded.

<comment><USER4> Not sure that will happen anytime soon. It's the same with Local SSD. The virtualization of this environment is very challenging, maybe beyond a point where it makes sense for them to do so.

<comment><USER5> But GCE already has local SSD's for preempt instances, and they even cost less.

<comment><USER4> Wasn't aware they added the support. Well, maybe they can figure out GPUs too.

<comment><USER6> I'd be surprised if it'd be that much additional work, if the local SSD options are NVMe -- which is _also_ PCI-e like GPU's.

<comment><USER7> Wait what, would they expose the raw SSD pci device to your vm? What's stopping you from scraping all the leftover data from the previous customer?

<comment><USER8> Probably something along the lines of secure erase. Most modern SSDs/NVMe drives are encrypted by default in firmware. All the firmware needs to do is throw away the old keys and generate new ones. It's better than zeroing the drive as there is no wear to the write cycles and guarantees that the slack space in the SSD is also cleared, which DD'ing to /dev/nvme0 wont be certain of. The nvme-format tool can be used for this: [http://manpages.ubuntu.com/manpages/zesty/man1/nvme- format.1...](http://manpages.ubuntu.com/manpages/zesty/man1/nvme- format.1.html)

<comment><USER9> On newer SSDs, the sanitize command would be preferable for this use over the format command. IIRC, the format command doesn't require quite as strong a security guarantee as the sanitize command: the latter ensures that user data is cleaned from both the flash and all buffers, CMBs, etc.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> Link to AWS Blog Post: [https://aws.amazon.com/blogs/aws/new-per-second- billing-for-...](https://aws.amazon.com/blogs/aws/new-per-second-billing-for- ec2-instances-and-ebs-volumes/)

</comment><comment><USER11> I really wish AWS would allow users to cap billing. Something that freezes all AWS services if the monthly bill exceeds X would make me a lot more comfortable when experimenting with AWS.

<comment><USER12> Agreed. Right now you can set billing alarms, but not actually freeze billing. [http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/...](http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/free- tier-alarms.html)

<comment><USER13> Looking at the CloudWatch console, I see I can also add AutoScaling and EC2 actions that are triggered by an alarm. That still leaves open other risks like a bandwidth bill for S3 hosted content.

</comment></comment></comment><comment><USER14> Per second billing is somewhat of a gimmick just so Amazon can say they are more granular than Google Compute. The difference between seconds and a minute of billing is fractions of a cent. Rounding errors.

The exception is Google Compute has a 10 minute minimum, so if you are creating machines and destroying them quickly, per second billing will be noticeable.

<comment><USER15> I think the useful comparison people are making is the difference between the previous per-hour billing and new per-second billing. Sure, if they can get some mileage comparing per-second to per-minute, great. At the end of the day isn't the increased granularity better?

<comment><USER16> I think "second vs. minute" might be into "distinction without a difference" territory. Sure, per-second will definitionally help at the margins, but I'm dubious about the amount of money it will actually save.

That all being said, it _can_ enable a bunch of interesting things (e.g. more interesting stuff with AWS Lambda), and I look forward to see what per-second billing becomes an enabling technology _for_.

<comment><USER15> Sure. I read 'nodesocket as arguing that AWS is promoting per-second as a distinction between AWS and GCP ("somewhat as a gimmick" in their words). That's not mentioned in the submission, nor the AWS blog post announcement.

The important and very real distinction is the change from per-hour to per- second. If you're going to make it more granular (which from per-hour is a good thing), why would AWS stop at per-minute if it's the same or only marginally more difficult to make it per-second, particularly when they have the added benefit of being more granular that GCP? In other words, I don't see the reduction as _primarily_ a marketing move on AWS's part. I'm sure they felt pressure to make it more granular. Stopping at parity doesn't necessarily make sense, nor should they be called out for doing more purely for marketing reasons.

</comment></comment></comment></comment><comment><USER17> This is one of the better things to happen in ec2 in years for me. We have a bunch of scripts so a spot instance can track when it came online and shut itself down effectively. It took far too much fiddling around to work around aws autoscale and get efficient billing with the per hour model. In the end we came up with a model where we protect the instances for scale in and then at the end of each hour, we have a cron that tries to shut all the worker services down, and if it can't it spins them all up again to run for another hour. If it can, then it shuts the machine down (which we have set on terminate to stop). The whole thing feels like a big kludge and for our workload we still have a load of wasted resources. We end up balancing not bringing up machines too fast during a spike against the long tail of wasted resource afterwards. This change by ec2 is going to make it all much easier.

</comment><comment><USER18> Back to the future: this was how computing worked back in the punch card days. Minicomputers and personal computers were supposed to liberate you from this tyranny: computing so cheap that you could have a _whole_ computer to your self for a while!

<comment><USER19> Somehow we've reached a point where a 2GHz, 2GB computer that fits in your pocket is only worth using as a terminal.

<comment><USER20> Apple is moving in the opposite direction with onboard-only face ID and ARKit.

</comment></comment></comment><comment><USER21> Likely due to GCP competition. I believe GCP was always per-second? [Edit: Misremember that, they were always per-minute. Lots of good information below directly form the related parties.]

Azure looks to be per-hour [Edit: Wrong again, they are per-minute as well. Oddly enough, I did check their pricing page before, but missed the per-minute paragraph and only saw the hourly pricing] but I'm seeing something about container instances possibly being per-second.

<comment><USER22> GCP VMs are per-minute, with a minimum of 10 minutes (vs AWS' new minimum of 1 minute). Second resolution is nice, but I doubt it makes much difference in pricing for most workloads. [https://cloud.google.com/compute/pricing#billingmodel](https://cloud.google.com/compute/pricing#billingmodel)

Azure's containers don't use a full VM-- they're more like AWS Lambda or other serverless frameworks, so they do per-second billing with no minimums.

Disclaimer: I work at Google on Container Engine.

<comment><USER23> Hyper.sh runs docker containers, not VM's, and has per-second billing with a minimum of 10s.

I really want to use them to parallelise CI test runs, but haven't gotten round to setting this up yet.

<comment><USER24> Check [https://github.com/hyperhq/hykins](https://github.com/hyperhq/hykins)

</comment></comment></comment></comment><comment><USER25> This should enable some entirely new use cases, especially around CI and automation in general.

Per-second billing greatly reduces the overhead to bringing up an instance for a short task then killing it immediately - so I can do that. There's no need to build a buffer layer to add workers to a pool and leave them in the pool, so that you didn't end up paying for 30 hours of instance time to run 30, two- minute tasks within an hour.

<comment><USER26> For us it will mean we can spin down Bamboo elastic agents much quicker and save money.

</comment></comment><comment><USER27> I once considered writing an EC2 autoscaler that knew the exact timestamps of the instances so that it could avoid shutting down VMs that still had 59 minutes of "free" time left because they'd been up across another hour-long threshold. That sort of nonsense logic shouldn't be useful, but Amazon was giving a huge economic incentive for it.

This is certainly a long time coming.

<comment><USER28> Remember that AWS has been in the game for over a decade. Per-hour billing was amazing when it came in.

Also, is the economic incentive really that huge? Or is it just a nicety?

<comment><USER29> it's totally dependant on your workload. for some users there will be absolutely no difference, for others it could easily be thousands or tens of thousands of dollars of savings over a year.

<comment><USER28> Thanks, I stand corrected. I've read through a few other use cases in the comments here and I can see now that there's scope for savings, depending on workload.

</comment></comment></comment></comment><comment><USER30> This is great news and a long time coming.

I really hope Amazon build something like Azure Container Instances [1], as per second billing would make this sort of thing feasible.

[1] [https://azure.microsoft.com/en-us/services/container- instanc...](https://azure.microsoft.com/en-us/services/container-instances/)

</comment><comment><USER31> Ah, finally. They've ruined my idea for an optimal EMR job runner. Under the old system, if you have a linearly scalable Hadoop job, it's cheaper to, say, use 60 instances to do some work in an hour vs 50 instances to do the work in 70 minutes, assuming you're getting rid of the cluster once you're done. No more!

</comment><comment><USER32> I think the per-second billing is off the point. How does it help, if the EC2 instance takes tens of seconds to launch, and tens of seconds to bootstrap?

To make the most of per-second billing, the compute unit should be deployed within seconds, e.g. immutable. prebaked container. You launch containers on demand, and pay by seconds.

<comment><USER33> You're describing exactly [https://hyper.sh](https://hyper.sh).

<comment><USER32> Or Azure ACI.

Per-second billing doesn't add much value to EC2.

<comment><USER34> EC2's granularity was hourly before. _That 's_ the value being added.

<comment><USER32> Per-minute billing makes more sense to EC2, given the reason above.

<comment><USER35> Well, on average it's per-minute billing with a 30 second discount.

I agree it's basically marketing from AWS, but it's still strictly better than per minute billing

</comment></comment></comment></comment></comment></comment><comment><USER36> Really welcome, although per millisecond would be better.

It's now possible to boot operating systems in milliseconds and have them carry out a task (for example respond to a web request) and disappear again. Trouble is the clouds (AWS, Google, Azure, Digital Ocean) do not have the ability to support such fast OS boot times. Per second billing is a step in the right direction but needs to go further to millisecond billing, and clouds need to support millisecond boot times.

<comment><USER37> If you're concerned about cost, AWS is almost never the right place to host to begin with.

<comment><USER36> You miss the point.

The lifetime of a web request, for example, can be measured in milliseconds.

It is now possible, technically anyway, for operating systems to boot, service the request and disappear.

There needs to be pricing models that reflect computing models like this.

<comment><USER38> There is likely a point of diminishing returns in this type of scenario. The OS boot time, the web service setup time, the actual request and then the shutdown time. Also consider that unless you have an external caching layer, you may be processing some requests that could have been cached by an always- on server. If your site has predictable traffic patterns then I suspect the math would be in favor of always-on provisioned servers with scale up/down based on traffic. If you have a very high traffic site the extra OS boot time (even in milliseconds) is going to add up quickly. You'd have to be very sure the spin up/down time is less than the idle time of the always-on server.

</comment></comment></comment></comment><comment><USER39> Interesting that the techcrunch link has thrice as many upvotes as the amazon link

<comment><USER15> I suspect it's simply a function of which one happened to catch people's eye and where they started their discussion. Multiple submissions on the same topic (from the same or different sources) aren't that uncommon. Once one gets some momentum, it's likely to be reinforced: it'll appear higher on the front page, more people will notice it, more people will comment, more people will notice the comments on that article, which will make them notice that article, et cetera. I don't think you can read much more into it than that. I wouldn't be surprised if a mod comes along and merges the comments from one into the other, if they notice it.

What _would_ be interesting is if they had exactly the same upvotes and comments.

</comment></comment><comment><USER40> Serverless advocates/engies are probably the only people celebrating this, everyone else keeps waiting for self renew instance reservation... last time i forgot about them it was too late.

<comment><USER41> The market for this is much broader. We do a bunch of data science so spinning up a heavy machine and only getting billed for the 5 minutes usage is a massive saving for us. I'm quite excited by this news!

<comment><USER40> That is basically the serverless main "point of sell" you are just one step away from automation (if you aren't already doing it) and it will be virtually the same as serverless

<comment><USER17> You're right, this is effectively a serverless mode. But the serverless instances that are currently available (at least on aws) aren't powerful enough for some applications. For those of us stuck in the middle, needing big machines with serverless behaviour, this is a massive win.

<comment><USER42> I'm in the same boat as you: data science workloads that run intermittently on big hardware.

What are you running your big jobs on? Because I'm currently using Batch, but given you've got to wait for the compute environment/VM to start up (if it's not already running), and that's a pain because it takes _forever_ to startup.

I wish I could just run containers on large hardware the same way we can run lambda's: press the button and it just runs, I don't really care about having my own full compute environment, I just need enough memory and CPU to run it.

<comment><USER17> Ours are actually user generated and the running time of each task is variable (few minutes to an hour). Users can to dump anywhere between 1 and 200 tasks on at a time.

The way we have it set up is:

\- simple job queue with RQ (redis)

\- monitoring watches the queue and pumps a metric into Cloud Watch (there are a few different types of job and it calculates a single aggregate value for "queue pressure")

\- autoscale then sets the desired capacity for a fleet of r4.2xlarge machines (somewhere between 1 and 20)

\- the autoscale config protects all those machines from scale-in so they have to be shutdown externally

\- each of those machines has a cron on boot that tracks the start time

\- this enables a cron to run just before the end of each hour. If that machine isn't doing anything at the time, it will shut itself down

\- the machines are set to terminate on shutdown so they die completely

\- additionally, we've hacked RQ so that workers that are closer to death will move themselves to the back of the queue more frequently. This ensures that we have a higher chance of not being busy / shutting them down at the end of the hour.

</comment></comment></comment></comment></comment></comment><comment><USER43> This is great and will save a lot of people a good amount of money.</comment>


IBM setting out to build an electronic brain - <AUTHOR> http://www.forbes.com/sites/rogerkay/2011/12/09/cognitive-computing-when-computers-become-brains/

<comment><USER2> Interesting but color me skeptical of claims that they "[take] computing concepts to a whole new level". This would be fantastic if they could do it, and I think asynchronous event-driven circuits are definitely a move in the right direction, but the supposed "blog" they link to is nearly content-free marketspeak. The hyperbolic claims and lack of proven results set off little warning bells on this PR piece.

<comment><USER3> If you check out the "publications" tab there is more substantial content. The first one in the list is a pretty readable yet detailed description of their approach and philosophy.

<comment><USER2> That is a fair point, and I admit that I read into the blog post more than was actually claimed.

</comment></comment></comment><comment><USER4> I hope this doesn't end as another "cat brain" fiasco:

<http://news.ycombinator.com/item?id=2898229>

Since the original critique by Henry Markram has been removed from the bluebrain website, I wish if anyone can confirm that the pasted exchange actually took place.

<comment><USER4> Here is an authentic source for Markram's critique of the "Cat out of the bag" paper:

<http://news.discovery.com/tech/cat-brain-computer-hype.html>

</comment></comment><comment><USER5> I just got a mental image of Eliezer Yudkowski and Linda Hamilton assaulting IBM headquarters at night with the help of a buff Austrian combat cyborg.

</comment><comment><USER6> This is old news, and gets much more publicity in the media that it probably deserves, but the vision of a "brain-like" computer certainly appeals to a majority of readers. Previously:

<http://news.ycombinator.com/item?id=2898229>

<http://news.ycombinator.com/item?id=2908802>

<http://news.ycombinator.com/item?id=2899299>

</comment><comment><USER7> When they make one that's safe for implant, I am _so_ getting it.

</comment><comment><USER8> I'd love to commercialize this by connecting our brains to a farm of electronic brains via an API. Brain Power on Demand(tm)! :)

<comment><USER9> Brainpower on demand? I think we already have that, and it's called Mechanical Turk or Crowdflower ;-)

<comment><USER10> It is called 'Ask HN'.

<comment><USER11> Yahoo Answers :-)

</comment></comment></comment></comment><comment><USER11> Well hope they are as smart as they think they are. In 2009 they thought the word mating started with an F !

<comment><USER12> I think they simply substituted the PG version of the real word here.

<comment><USER11> Yeah, It was kinda ironic on my part. Laughed pretty hard about the PG'ing though, they could have thrown in a little bit more irony themself, but yeah it's forbes :)</comment></comment></comment>


Touching: All Rumors Point To The End Of Keys/Buttons - <AUTHOR> http://www.techcrunch.com/2009/09/29/touching-all-rumors-point-to-the-end-of-keysbuttons/

<comment><USER2> Apple is not going to make a dedicated remote control.

Touchscreens alone simply don't work on a remote. People aren't very good at looking at a TV, then focusing on a screen close to them. That is somewhat the brilliance of their existing remote. You can learn where the buttons are within a minute of using it. They can add features and not have to worry about putting a button on the remote, virtual or physical.

There are plenty of applications to turn your iphone into a remote control if one really wants a touchscreen remote. It can be quite handy to see your favorite TV station icons. But when the phone rings how do you press mute?</comment>


Businesses should use automated tools to detect web application vulnerabilities - <AUTHOR> https://www.mavitunasecurity.com/blog/web-application-security-scanners-detect-technical-vulnerabilities/ There are several benefits to using automated web application security scanners to detect vulnerabilities. <comment><USER2> This is going to be somewhat of a rant.

My formal response to this is:

HAHAHAHAHHAHAHAHAHAHAH!

I work in the education industry, which has been often lauded for its tough security stance (note the sarcasm), and you would be surprised how common, CRUD apps do not pass muster. Zoho Corp's founder recently fielded a lot of critical comments about his Salesforce CRM competitor product and other products of Zoho-esque mediocrity. [0][1] I stayed out of it, but let me give a shining turd example of such a product: their ticketing system: ManageEngine ServiceDesk Plus. [2] We could not afford to purchase or implement something larger, more garbage ticketing system, say like HP Service Manager (which has the worst interface of any web application I have ever seen mind you, but it is far more business-like for this enterprise-y world which the article is addressing). We do, at a minimum, a Nessus scan for anything that requires FW rules inbound and/or a SSL cert in our org. This did okay (other stories to follow). Not soon after, many XSS vulnerabilities were found, in two versions. [3] This is, mind you, an enterprise-y ticketing system geared for people who do ITIL. Not only could they not publicly manage the situation, they show a complete lack of change control/problem management their product and garbage webpage embue. Now we only allow access behind our VPN; lord knows what would happen if we exposed this garbage to public Internet.

I give this example as one of my such tales. Bottom-line: even some of the priciest web applications would fail even rudimentary testing. We see it again and again, and there is always, rest assured, some marketing a __hole pedaling software to a non-IT manager, hooks them on it, and that guy refuses to accept how something so polished is dangerous to the bottom line.

Frankly, I wish SOX-like/HIPAA/bank/government regulations were imposed on all of us, and THEN fine any companies promising these standards for failure to comply. The amount of garbage is staggering, and politics dictates software marketing will always target the guys sitting above the technical people who refuse when they know their product has "rough edges" (I say that because every company we talk to about such things downplays sec vulnerabilities; not once have I heard of one of our vendors handle it graciously, even big dogs like Symantec brush us off).

[0] [https://news.ycombinator.com/threads?id=sridharvembu](https://news.ycombinator.com/threads?id=sridharvembu) [1] [https://news.ycombinator.com/item?id=5836569](https://news.ycombinator.com/item?id=5836569) [2] [http://manageengine.com/](http://manageengine.com/) [3] [https://www.google.com/search?q=servicedesk+plus+xss](https://www.google.com/search?q=servicedesk+plus+xss)

</comment><comment><USER3> I concur with some of the other posters in that automated application vulnerability detection is far from flawless (Heh.....far indeed.)

But that's not to say they aren't using them already. I used to perform high- level security audits of networks. For our cursory app testing, we used:

\- Application Testing: HP Web Inspect [https://download.hpsmartupdate.com/webinspect/](https://download.hpsmartupdate.com/webinspect/)

\- Database/Backend: AppDetective [http://www.appsecinc.com/products/appdetective/](http://www.appsecinc.com/products/appdetective/)

Automated tools won't, by themselves, ensure you're bulletproof. But they do use them.

</comment><comment><USER4> I was going to say this kinda reads like an advertisement for your product. But, after rereading, it is more advertisement than kinda advertisement :-)</comment>


Life Is More Than Compounding Money - <AUTHOR> https://intelligentfanatics.com/life-is-more-than-compounding-money-2/ <comment><USER2> There is more to life than smiling and talking to people on a daily basis.</comment>


Ask HN: Starting machine learning? Books, videos and other resources - <AUTHOR> I want to start learning about machine learning.
I'm a seasoned software developer, worked with things like C#, Ruby, Go, Javascript, Elixir throughout the years.
Never touched machine learning, but eager to get started.
How would you recommend a developer start diving into machine learning?
Any paid for video resources or books? <comment><USER2> Two that I have enjoyed:

1\. "Machine Learning" \- Murphy

It's a classic and a rigorous introduction to the subject. It focuses on theory over implementation so it's more for developing a principled understanding of machine learning fundamentals than for getting you up to speed with modern tools necessary for solving real problems.

2\. "Neural Networks and Deep Learning" \- Nielson

This is a free online book that is very accessible and engaging. It covers basic theory and implements examples in Python.

</comment><comment><USER3> Do you know about Coursera Machine Learning Course:- [https://www.coursera.org/learn/machine- learning](https://www.coursera.org/learn/machine-learning)

</comment><comment><USER4> I created a video course aimed at ML enthusiasts with software experience. It introduces Google's TensorFlow library, walks through code examples, and tries intuitively explain some of the statistics. [https://www.packtpub.com/big- data-and-business-intelligence/...](https://www.packtpub.com/big-data-and- business-intelligence/deep-learning-tensorflow-video)

But I also agree with other posters that you should study fundamental statistics first.

</comment><comment><USER5> Start by learning statistics. [http://www- bcf.usc.edu/~gareth/ISL/](http://www-bcf.usc.edu/~gareth/ISL/)

</comment><comment><USER6> Here's a few resources:

Free Machine Learning Books: [https://hackerlists.com/free-machine-learning- books/](https://hackerlists.com/free-machine-learning-books/)

Beginner Machine Learning Courses: [https://hackerlists.com/beginner-ml- courses/](https://hackerlists.com/beginner-ml-courses/)

Tensorflow Resources - [https://hackerlists.com/tensorflow- resources/](https://hackerlists.com/tensorflow-resources/)

</comment><comment><USER7> Came here to ask the same question. I'm a seasoned dev and UX designer. Really interested in where i can use design thinking with machine learning and needed a few starting points.

Besides tutorials and books, are there friendly communities for novices? Any interesting libraries to jump start projects?

</comment><comment><USER8> I have just created an article where I have collected the best AI resources I could find:

[http://blog.digitalmind.io/post/artificial-intelligence- reso...](http://blog.digitalmind.io/post/artificial-intelligence-resources)

</comment><comment><USER9>
        Machine Learning Recipes with Josh Gordon
        A series of videos baked by Google Developers' YouTube channel
        https://www.youtube.com/playlist?list=PLOU2XLYxmsIIuiBfYad6rFYQU_jL2ryal

</comment><comment><USER10> Check Udacity, Coursera and Edx.

Andrew Ng's course is a nice one.</comment>


Snowden applies for asylum in Russia - <AUTHOR> http://www.bbc.co.uk/news/world-europe-23328074 <comment><USER3> Reminder: the real reason Snowden cannot walk out of the airport not because of some virtual passport that US "revoked". It is because there are real armed obedient guys on the border who will not let Snowden go his way.

This whole story is not about privacy, spying or politics. It is about your personal inability to choose your phone company, internet provider, or a bank without confronting armed "state" which dictates what is allowed to you. Don't like NSA spying through Verizon? Build your own phone company. Oops, there are feds with an order to "cooperate".

Guns and violence are the problem, not all these abstract things like "rights" or "privacy".

<comment><USER4> Actually this particular story is just about Snowden, not the details revealed in what he leaked, and certainly not about your personal freedom from government tyranny.

<comment><USER3> That's why I said "the whole story". This article about Snowden seeking asylum is written only because Snowden revealed some nasty stuff about his government and now this government is after him. And this stuff is "nasty" for some people only because they have no way to escape or debate it. It is unilaterally imposed on them without any discussion. And those who'd try to disobey would face big troubles from federal government. That's why Snowden is in trouble and that's why people are interested in what happens about him.

</comment></comment></comment><comment><USER5> I find it very odd that this article, along with most, repeatedly claims that Snowden needs to have a travel document in order to claim asylum. Many asylum seekers have no travel document at all when they enter the country where they seek asylum. In the UK most asylum seekers have no legal way to enter the country, as you technically can't switch from most other types of visa - <USER2> simply have to arrive and claim asylum on arrival.

<comment><USER6> There are two problems: First he'd need to be let onto a flight without valid travel documents. Secondly, he'd need for that flight to actually arrive at a location where he will not be apprehended and handed over to US authorities.

Russian asylum will alleviate both issues: It gives him easier access to commercial flights, and it makes it politically far more difficult for those European states that for example were willing to prevent Morales' plane access on a mere rumour he was aboard to justify forcing down a plane he is on. Consider the political fallout if an Aeroflot plane with someone granted political asylum by Russia gets turned back.. Or for that matter another diplomatic mission with him aboard their plane with asylum status.

</comment></comment><comment><USER7> This is what US wanted. To corner him into taking asylum in a country like Russia. This turns Snowden into a spy in minds of many Americans than a whistleblower (or I like to call public informant).

The stories on media will focus more on, "Spy or whistleblower" instead of domestic spying by NSA. Future whistleblowers are discouraged and the nature of spying is off the front page. Mission accomplished!

<comment><USER8> Well, it's effective. If the end result of Snowden's choice to take 3-4 NSA laptops into the two largest strategic competitor nations of the United States is nothing more than exposing the domestic surveillance, then an argument can be made for him being a noble whistle blower, but if the Russians and Chinese image those laptops and it costs lives, then Snowden's choice not to remain in the U.S. and blow the whistle will be viewed as cowardice.

<comment><USER9> Something to consider as well: if Russian or Chinese intelligence agencies image those laptops and it does not cost lives, but causes the failure of many ongoing operations, is he still a coward?

<comment><USER10> The operations of an organization sketchy enough to lie to congress and ignore the Constitution might be operations that really should fail.

</comment></comment></comment></comment><comment><USER11> Interesting use of the word "fugitive" in this article. They son't even bother calling him by his name in some cases; just "the fugitive".

<comment><USER12> The article uses the word "fugitive" five times and the name "Snowden" seven times.

</comment></comment><comment><USER13> Well, at least he's not stuck in an airport for the rest of his life. Stay in one long enough and even jail begins to look good.

But the problem remains -- what are we going to do about PRISM, or even more to the core of the problem, about the cult of secrecy in our government?

Senators Graham, McCain, and Pelosi would have you believe the cult is for our own good, because we're not informed enough to know what's good for us.

Of course, we don't have access to the information that would help us make up our own minds, so the circular argument closes itself and we have to resort to Plan B -- which is, "If you don't know national security, know those who do."

And I'd nominate the aforementioned senators, but they seem to know just a little more than I do -- by their own design, the executive branch's reluctance to be honest in hearings, and the judicial branch's own complicity in rubber-stamping requests.

By analogy, if a major US corporation hired whites 99.99% of the time over non-whites, the AG would be all over them.

Given the state we're in today, why did the founders even bother revolting? If you took what some of our senators are saying, replace "national security" with "monarchy", you'd probably have a speech uttered by some Tory back in 1770.

</comment><comment><USER14> I think Russia is the safest place for Snowden. Any western country is a no-go for obvious reasons. And South America is also questionable. Given how casually the Bolivian presidential plane was grounded and searched, the US may as well send a SEAL team to one of those "second class" countries for a recovery mission.

</comment><comment><USER15> Personally, I feel whats really important is that we focus on the Elephant in the room, namely the things which were released by him.

It feels like we are focusing on perception and if he will be labeled a 'traitor' or not.</comment>


Rio – A MicroPaaS Using Kubernetes - <AUTHOR> https://rancher.com/blog/2019/introducing-rio <comment><USER2> This might be what makes me try/use K8S for some personal/side projects.. Appears it may reduce a fair amount of friction.</comment>


Show HN: Discover what songs were used in YouTube videos - <AUTHOR> http://www.mooma.sh

<comment><AUTHOR> The user can paste a youtube url which will then be analysed, fingerprinted and matched against a database of 7+ million audio fingerprints. It does not only identify a single song but is able to identify multiple songs contained in a single file or video and generates a timeline listing which tracks it contains at which time.

Our matching algorithm is based on the open source echoprint-codegen fingerprinting method, which we have built our own stack around:

\- Replaced Solr/Tokyo Tyrant with Elasticsearch

\- Reimplemented matching-logic

\- Crawlers search multiple sources for audio files to be indexed (mp3s arent stored long term, only fingerprinted then deleted)

\- Indexing about 1 new track per second

\- Found method to verify unrealiable ID3 tags (in progress, current database also includes unferified)

\- mogilefs as primary data store for fingerprints

\- perl everything

We also provide a free music identification API.

Any feedback would be much appreciated!

<comment><USER2> I've worked on the echoprint-codegen algorithm for my current project ( trak.rocks ) and I'm curious about how you reimplemented the matching logic ?

Do you plan to document/opensource you work ?

<comment><USER3> First we rewrote echonests truescore logic in perl and then altered slightly and implemented some extra checks to further try to exclude false positives. We also believe what they used in the late song/identify API might have been different from what is open sourced in [https://github.com/echonest/echoprint- server](https://github.com/echonest/echoprint-server)

Also we pack each individual hash before storing in Elasticsearch and gained at least 50% storage space this way.

Our Fingerprint data is quite different from theirs(unreliable ID3 tags, N versions of same track) which is why we needed some tweaks. So far the matching is still far from perfect...

Whether we will open source the whole thing at some point we don't know yet.

<comment><USER4> When you say the matching is far from perfect, is that at your end or on the part of the echoprint / echonest code? You made tweaks because you found issues with what they were doing....?

<comment><AUTHOR> The reason for it being far from perfect is likely a combination of both. If the correct song is indexed there is a high probabiliy for us to find the right match. However if its not, with a bit of bad luck a false positive can happen easily with the default solution (and ours too). Also when analysing a youtube video it can happen that in a 30sec snippet only 10 secs are a matching song and 20 are unrealated or 15 are one matching song the other 15 match a different one in which case 2 tracks or multiple versions of 2 different tracks will have relatively OK scores. Deciding what to consider a match (or whether to try different queries for the same or slightly altered timespan prior to deciding) is not trivial in these cases and our changes are mostly concerning when a match will be considered a match by altering thresholds and how matching truescores will be looked at in relation to other fingerprints true scores. Due to issues like these, specifying a timeframe for analysis will often produce better results.

[http://static.echonest.com/echoprint_ismir.pdf](http://static.echonest.com/echoprint_ismir.pdf)

</comment></comment></comment></comment></comment><comment><USER5> For anyone often wondering about music in songs I will recommend Shazaams OSX app. It sits in the menu bar and listens to music and if it recognises something it will send a notification and add it to a list [0].

Watching youtube video, movies or just having someone else play something and it usually finds it without problems.

It's a different use case than OPs app though, which is more on demand I guess.

[0] [http://i.imgur.com/0At4lJ6.png](http://i.imgur.com/0At4lJ6.png)

<comment><USER6> Does it still have to listen through a mic or can it detect songs from internal audio now? I don't have any speakers and just use headphones.

<comment><USER2> Shazam Mac osx app is quite powerful. It doesn't only listen to your mic so it will detect the song even when the sound is off. Also it often detects a song playing in somebody's else headphones at our office. Kinda creepy sometimes.

</comment></comment></comment><comment><USER7> I love this. Thank you.

On a slight tangent: I'd love a client that could identify my MP3 collection, and rename it and retag it (under some kind of supervision). Ideally it'd do the dentification in a batchmode when it got Internet connectivity (but this is perhaps an unreasonable requirement). And to make it perfect it would let me listen to and delete tracks.

I have a huge unweildy collection of MP3s and I can't bring myself to just delete gigabytes of music.

<comment><USER8> Have you tried picard: [https://picard.musicbrainz.org/](https://picard.musicbrainz.org/)

I used it to tag a massive amount of partially labelled and mostly metadata- free music files some time ago and it worked a treat.

<comment><USER9> This is nice. Anything to tag TV Shows and Movies?

</comment></comment></comment><comment><USER10> This is very interesting - I see this as an ideal concept to be paired with one of the existing commercial solutions, e.g. Shazam.

If you're indexing all the random and free stuff out there, you're picking up a lot of material that may have never been commercially released or has not been re-released digitally. At the same time, Shazam, YouTube ContentID, Apple's iTunes Match, etc. have access to an extremely large set of references which (more than you could have) contain 99% accurate metadata. ContentID definitely picks up multiple songs in mixes, as well as pitch changes, with a high degree of accuracy (assuming the master sound recording has been submitted to YouTube).

A submission system would be great too, or some way for persons to tag stuff themselves ala discogs, etc.

</comment><comment><USER11> I think what we need most is a community-backed source of fingerprints. Because the authority-based approach only works well for popular songs (at least, that is my impression, based on frequently using commercial recognizing apps).

<comment><USER12> [http://acousticbrainz.org/](http://acousticbrainz.org/) ?

</comment></comment><comment><USER13> YouTube already does this on some videos does anyone know how this technique differs?

<comment><USER3> They display Audio info if tracks from the audioswap library were used: [https://support.google.com/youtube/answer/94316?hl=en](https://support.google.com/youtube/answer/94316?hl=en)

</comment></comment><comment><USER2> Great Job !

Could you describe the usecases ? Is it for mixtapes uploaded on youtube by DJs, or Over-The-Air recognition in music festival videos ?

Because Music ( single tracks ) uploaded on youtube is usually already identified so it could be found.

<comment><USER14> One of the most common comments on YT videos I see are people asking for the name of the song used in a video.

<comment><USER15> Yes, is one of the archetypical creatures of internet. I bet that 99% of those people are lawyers... or maybe the author of the song.

</comment></comment></comment><comment><USER16> Tried with a couple of videos, went out to grab lunch and 30 minutes later it is still stuck (with the progress bar extending to the first t in "[http://"](http://")). Sorry :-/

<comment><AUTHOR> Hug of death occured faster than expected :) scaling now

</comment></comment><comment><USER17> OK, I'm not if this occurred to anyone else: how about a Shazam like app that can search "the Internet" by listening a few seconds on your mic?

</comment><comment><USER18> That's awesome. Now could you figure out why my intro #2 video: [https://www.youtube.com/watch?v=dosy8zOooUU&list=PLP6PvXLevG...](https://www.youtube.com/watch?v=dosy8zOooUU&list=PLP6PvXLevG9J57vObsvi66uweSdfX87TV&index=2)

Gets flagged as copyrighted music even though there is no music?

So many YouTuber's would thank you for a service that did this.</comment>


Ask HN: SELinux, opinions? - <AUTHOR>

SELinux was developed primarily by NSA and I remember back in the day I had a distaste for using it just because of that fact. It was a huge code-base with hooks all over the place for various modules, just didnt sit right with security - minimize LOC and exposure. Instead I chose grsecurity and RBAC.<p>What is the opinion today, is SELinux preferred over alternatives such as Tomoyo? <comment><USER2> SELinux... do not turn it off! And when people tell you to do so are too lazy to understand it.

Never heard of Tomoyo... maybe AppArmor

</comment><comment><USER3> SELinux is preferred: it's in Red Hat.

I've not heard of Tomoyo.

</comment><comment><USER4> SELinux default policies are usually written per distribution, by their maintainers. It's widely used and peer reviewed (Fedora, Red Hat) I'd trust it over any less involved attempt at emulating it.</comment>


Ask HN: Is there a FOSS implementation of Apple's Newton OS? - <AUTHOR>

Were there any attempts (successful or not) to implement a free and open version of the Newton's operating system? The only relevant pieces I've found are OpenDylan and Einstein. Newton OS is a very interesting kind of operating system (in some aspects it is, in my opinion, even better than the Apple's current mobile OS) and it certainly deserves to be preserved and maintained. <comment><AUTHOR> I've just found GNUton (<http://gnuton.sourceforge.net/>), an implementation in Python instead of NewtonScript, but it seems to be long-abandoned since 2000. I hope newer and less dead efforts still exist.</comment>


Serverless and startups - <AUTHOR> https://aws.amazon.com/blogs/aws/serverless-and-startups/ <comment><USER2> Which of the following is the more likely failure mode for a new product:

A.) So many customers wanted it that we couldn't scale fast enough.

B.) We ran out of time or money before we shipped.

The author appears to be worried about A, but in my experience it's B that you need to think about when starting out.

Imagine if, instead of building any of those crazy 30-node-diagrams of an architecture in the article, he'd had one guy build his entire product in a day as the equivalent of the "20 Minute Rails Blog Demo". Then shipped it via any of the thousand-odd boring ways to deploy such a thing.

He'd still have the same number of months to worry about stacking all those blocks into that unmaintainable tower of pain, but in the meantime his product would be out in the wild. Possibly even attracting the users that might one day make such a silly architecture necessary.

As it is, he'll still ship one day. But my money is that he'll never see traffic that would overload a single server.

Because that's what happens with 99% of the things one ships. The other 1% you can fix as needed. Possibly using AWS Lambda for the pieces that need it.

<comment><AUTHOR> I am not worried about A at all. This was a technical article, but here's the explanation I posted to twitter:

Although I enjoy talking about technology, and I enjoy working with serverless, it's important to note that using serverless for @slackvacation is not a technology decision. It's a business decision. Not because the auto -scaling, that's nice to have, but that's not a problem startups are facing in their early phase. It's about financial incentives — also, about focus, ability to move fast and test ideas, and the ability to grow without shooting future self into the foot.

We still often fail to do things fast enough, but we are aware of the problem and working hard to fix it.

<comment><USER2> It sounds like part of your decision was that Lambda comes out cheaper for hosting. That also doesn't pass the arithmetic I use to evaluate such things.

A dev, fully loaded, will cost you $200/hour. A half cage at a colo with a really fast machine in it will cost $800/month. So if you choose a stack that adds 4 hours of work each month (or 80 extra hours upfront), you're behind.

Given that (as I touched on above), your chances of outgrowing a beefy box in a colo (or its managed equivalent) can be thought of as zero until you see the big success event that proves otherwise, my money is still on boring tech and boring hosting.

Granted, Lambda is cool. I love building stuff on it for other people on their dime. But as a guy who also builds businesses on _my dime_ , it remains a tool for tiny niche cases that can safely go down on a saturday morning without making me cancel my weekend.

<comment><AUTHOR> Serverless is so much more than just Lambda functions.

<comment><USER3> I recently heard the following analogy:

IaaS => Owning a home

PaaS => Bed and breakfast

Serverless => Hotel room

Lambda I guess would be like using the coffee pot in a hotel room? Don't worry about power, don't worry about beans. Every time you come into your room it's ready to go, just press "on".

</comment></comment></comment></comment></comment><comment><USER4> In retrospect, going serverless (using Serverless Framework) has been a terrible decision for us.

First, exposing an API served by AWS Lambda has the infamous cold start problem. It's not fun to wait a couple of seconds for a mobile app to respond just because the request hit in an unfortunate time. One solution we found is to use a Serverless Framework plugin to periodically ping lambdas to keep them hot. But each concurrent lambda execution is a separate container, so you have to anticipate a number of concurrent requests you will be receiving at peak, or want to handle without a ~1s latency. Ouch - what happened to effortless scaling? And Amazon API Gateway adds another 100-200ms of latency on top of Lambda.

If you want to use an SQL database, you have to add your lambdas to a VPC, unless you want to expose your database to the Internet. But if you need to access the Internet from your lambdas, then you need a NAT (which you pay for). And you get another couple of seconds to cold starts while AWS attaches a network interface to your lambda. So, if you don't want this, you're stuck with e.g. DynamoDB. DynamoDB is optimized for scaling but it's a poor fit for relational data. Very basic support for indexes, no transactions, and data model migrations are very painful. There is also no spatial data story for DynamoDB, whereas if we had used Postgres, we'd be able to make use of PostGIS which is awesome.

The tooling is terrible. Serverless Framework is very rigid and riddled with bugs - we ended up maintaining our own fork of Serverless alongside forks of 3 plugins and another custom plugin we wrote to support our very simple workflow. There's no faithful offline reproduction of the API Gateway -> Lambda environment. We frequently ran into issues when the code is deployed that wouldn't show up when testing with a "simulation" plugin locally.

There's a lot of other problems we ran into, but these are the biggest ones I could think of. It didn't help that we didn't have much experience with this technology before deciding to serve our API using it (this was probably our biggest mistake). I guess we should have stuck with what we're faimiliar with - normal, "serverful" apps. And with the DyanmoDB provisioned capacity costs, I'm not sure we saved that much in the end.

<comment><USER5> Unless you are going to run your db on the same server as your server application, are you not going to have a NAT regardless?

The Dynamo complaints isn't a Serverless issue, but a NoSQL issue. Hopefully NoSQL first/everywhere is finally dying as people realize all the benefits of a RDBMS (and shortcomings of NoSQL). And, if you knew you were doing something with geo data, picking Dynamo was a tool selection mistake from the get-go.

<comment><USER4> Our geo data needs still don't require a GIS, but we're slowly getting to the point where they do. At the time, it was unclear if a GIS would ever be needed - the company and product have done a 180° turn, as startups usually do. In hindsight, DynamoDB was a terrible choice, but we didn't have that hindsight back then. Had we stuck to the tools that we knew how to use, we'd have made the right choice, which is what I was trying to say in the parent comment.

</comment></comment></comment><comment><USER6> This is great marketing but suggesting some symbiosis between serverless and startups is odd. Startups for the most part dont have scaling issues that are experienced on the server. They're usually people, process, and financial issues.

I see posts like this and wonder how many people will use some new paradigm because people say "its fast" when they still have no traction (not suggesting the author doesnt) or they dont even understand the scaling properties of their software or business.

<comment><USER7> This completely depends on what the startup is doing. For my use case (company name in profile) auto scaling is a god send due to individual users being able to influence how much work our jobs backend needs to do. This impossible to calculate and plan upfront so we totally rely on Lambda for this.

</comment></comment><comment><USER8> I think I fail to understand how Lambda works better for startups. I see primarily 2 arguments.

The first one is simplicity. You pack your Node.js application, upload to lambda and it works. But then in the article I see a chart with API Gateway, then Lambda, then SNS and then Lambda again. How is that simpler than deploying a single Node.js application on DigitalOcean?

The 2nd argument is scalability. I see how this is relevant, I'm wondering though how often it becomes really useful. How many products experience unpredictable spikes in traffic that cannot be handled by a single server costing $250/month? (that's one c5.2xlarge server on demand).

I believe FaaS and Lambda are very useful, but I think I miss the point why would people move their whole applications there.

<comment><USER5> Have you done much with a framework like Serverless? The simplicity comes in because you can start writing business logic functions immediately. Plain Node typically uses a library like Express or Hapi. While not complicated, it is _one more thing_ that is boiler plate and doesn't provide any business value.

If the app needs a queue or messaging, sticking to plain node does not really change the need.

<comment><USER9> Express and Hapi seem simpler than the Serverless framework you're replacing it with. You have to specify that _one more thing_ [0] anyway, don't you? I honestly don't see how this is simpler.

[0] [https://github.com/pmuens/serverless- crud/blob/master/server...](https://github.com/pmuens/serverless- crud/blob/master/serverless.yml)

</comment></comment></comment><comment><USER10> I would think the biggest concern with "Serverless" would be vendor lock in. If a large portion of your SaaS product is "serverless" it's going to be very difficult to move when company A raises their prices, or company B comes in with a much more compelling product or price point.

Admittedly I don't know enough about the details to know how big of a deal this could be, or whether there is work toward a universal "serverless" standard. But I don't want Amazon/Google/Whoever suddenly raising their rates 2 years from now causing my startup to go under because the margins are so tight. And for those that say this will never happen, look at what Google just did with their Maps pricing.

<comment><USER11> >> But I don't want Amazon/Google/Whoever suddenly raising their rates 2 years from now causing my startup to go under because the margins are so tight.

What kind of businesses run on very tight margins, that even some increase in the IT bill can cause them to fail ?

<comment><USER10> > What kind of businesses run on very tight margins, that even some increase > in the IT bill can cause them to fail ?

Well, Startups! That's sort of common for startups, isn't it? I realize the term is basically being used to describe almost all "small businesses" these days, but I think it's fairly common for startups to have very short runway. That would (ideally) get longer as the startup matures. But I don't think it's uncommon at all.

</comment></comment></comment><comment><USER7> Next to the nice drawings and good tips on testing I 100% agree with the message. Lambda has enabled me to run a fledgling business and I'm porting my last Puppeteer EC2 workloads to Lambda as we speak. Node 8 and the new Layers feature made this possible.

</comment><comment><USER12> I was recently talking with some folks at an incubator about a website I was building, and one of the technical guys suggested I consider switching to serverless before launching (and I thought it was a good suggestion).

Serverless is an easy way for startups to overcome one of the harder technical challenges: scalability. This is purely anecdotal, but the majority of startups I've seen - including my own work - do not have the time or expertise to build out robust auto-scaling systems. They also don't have the money to dump onto a bunch of servers they can fall back to when needed.

But auto-scaling is arguably more important for startups than for well- established companies. Thanks to the unpredictablity of some random high- visibility influencer or journalist sharing your product without notifying you, it's easy for smaller startups to suddenly get hit with traffic that they can't handle with whatever infrastructure they have in place. Sometimes you only get one shot, and if a hundred thousand people hit an empty 503 page on their first visit, they may not come back for another try. Serverless design greatly mitigates that problem.

<comment> noink-com > Serverless is an easy way for startups to overcome one of the harder > technical challenges: scalability.

But is that kind of scaling really the hard part? If you're already using AWS for example, it is trivial to set up an autoscaling group that will add more EC2 instances the keep up with the rate of traffic. IME, scaling data stores is the hard part of scalability.

I'm not saying serverless doesn't make it a little easier, but it is a different tradeoff. AWS Lambda for example has a lot of limitations too. Maybe I'm interpreting your comment wrong, but I don't think it's fair to imply that serverless is the obvious choice for startups just because it helps overcome scalability.

<comment><USER13> I think the better scalability does not come from lambda itself but because you have to design for share-nothing concurrent executions from the start.

</comment></comment></comment><comment><USER14> A recent take (from Tim Bray, a veteran engineer) of why you should go serverless whatever possible (around 8:30):

[https://youtu.be/IPOvrK3S3gQ](https://youtu.be/IPOvrK3S3gQ)

</comment><comment><USER15> Honest question how is it easier for a startup vs DO with few VPSes and say manual DB fail-over.

<comment><USER16> Two things, based on my experience (we migrated from Heroku to Lambda in 2016, so been there for a while)

1\. you don't need to worry about reserving capacity, so you don't need to pay for growth you expect to happen, or worry about not meeting a spike in demand if it happens

2\. Most of the operations stuff (apart from packaging) is included in the price, so things like monitoring, alerts, dead-letter queues, traffic shifting beween canary versions, failovers, balancing... and it's priced per request, so this comes to effectively free if you don't have a lot of traffic.

The big catch is that you don't control the containers, so there's no session stickiness. Getting the benefits from Lambda requires re-thinking how you do sessions and storage.

<comment><USER15> That the thing though the dev overhead and limitations for startup with avg compute needs might be more $ than tiny savings (e.g who cares if it is $200/month vs $70/month) if it will cost 50k extra in dev time to architect for lambda

<comment><USER17> How is "architecting for lambda" harder than traditional architecture?

<comment><USER18> Because you're immediately having to go to a MSA, which immediately adds a whole new layer of complexity, monitoring, network latency, API coordination, and configuration to otherwise simple webapps.

<comment><USER17> In the case of .Net at least, you write your API like you always do and the SDK provides a wrapper. You can have multiple actions/controllers just like you would with a traditional Web API project.

[https://aws.amazon.com/blogs/developer/serverless-asp-net- co...](https://aws.amazon.com/blogs/developer/serverless-asp-net- core-2-0-applications/)

You test locally just like you would any other WebAPI project.

<comment><USER19> Yup. You can do the same in the other languages as well if you want.

</comment></comment></comment></comment></comment></comment></comment><comment><USER20> I do wonder if, in a few years time, if we're not going to be seeing a new genre of technical blog posts: "How we migrated off serverless to reduce our costs"

<comment><USER8> It's already started: [https://medium.com/coryodaniel/from-erverless-to- elixir-4875...](https://medium.com/coryodaniel/from-erverless-to- elixir-48752db4d7bc)

<comment><USER21> The article talks about moving away from a serverless architecture due to the cost of API gateway.

I wonder if the fact that application load balancer can now invoke lambda functions could've made serverless viable. [https://aws.amazon.com/about- aws/whats-new/2018/11/alb-can-n...](https://aws.amazon.com/about-aws/whats- new/2018/11/alb-can-now-invoke-lambda-functions-to-serve-https-requests/)

Mind you, the post was written in August 2018 and the above announcement was made in December 2018.</comment></comment></comment>


API changes in Snow Leopard - <AUTHOR> http://developer.apple.com/mac/library/releasenotes/MacOSX/WhatsNewInOSX/Articles/MacOSX10_6.html#//apple_ref/doc/uid/TP40008898-SW1

<comment><USER2> Fascinating; kill -9 is now the official way to terminate an application.

 _To support improved shutdown, your application needs to mark itself as "dirty" or "clean," depending on whether it has unsaved changes and needs to do work before quitting, or can be terminated without further notice. When the system shuts down, clean applications are terminated (via SIGKILL) without further interaction._

<comment><USER3> Sounds fine to me. I heard of this idea a few years ago: <http://en.wikipedia.org/wiki/Crash-only_software> <http://lwn.net/Articles/191059/>

</comment></comment><comment><USER4> _Mac OS X v10.6 provides support for block objects in C, C++, and Objective-C._

Huh? Isn't this a feature of a compiler, not an OS?

<comment><USER5> I'm not sure why you got down voted to 0 for asking a legitimate question. The block objects are part of Grand Central Dispatch. A programmer tags an isolated unit of work as a block. The OS then takes these blocks and schedules them into execution queues. While the compiler adds support for defining the blocks themselves, OS X 10.6 provides purpose to these blocks. Just like you can have a VM which supports threads on an OS that itself is not multi- threaded, the feature would be pretty useless if only the compiler were updated as it has been for 10.6

<comment><USER6> It also needs the instantiation support at the VM/runtime level, which is separate from the services the OS itself provides.

So blocks need to be supported at the compiler level, in the Objective-C runtime and in OS-wide processes (which would be Grand Central itself).

</comment></comment></comment><comment><USER7> The first thing I wanted to see as a Smalltalker was how much they've baked Blocks into the libraries. I know Cocoa has always had very long method names, but some of these names are wild:

\- #enumerateObjectsUsingBlock: is #do:

\- #objectsPassingTest: or #indexesOfObjectsPassingTest: are #select:

And so on. Here's what I'm looking at:

[http://developer.apple.com/mac/library/documentation/Cocoa/R...](http://developer.apple.com/mac/library/documentation/Cocoa/Reference/FoundationRefUpdate/Articles/Foundation_10.5-10.6_SymbolChanges.html#//apple_ref/doc/uid/TP40007573)

<comment><USER8> The names make perfect sense within the context of the language. Just because you add a new feature to a language doesn't mean you should arbitrarily adopt the naming conventions of its implementation in another language.

</comment></comment><comment><USER9> I don't know if someone else care, but I find it annoying that the "blocks" proprietary extension to C/C++ is conflicting with C++/CLI syntax for managed pointers.

<comment><USER10> Isn't the CLI syntax for managed pointers itself a proprietary extension to C/C++?

<comment><USER6> They are. And it's pretty unlikely that anyone would code in Objective Managed C++.

Worst thing that could happen would be a _slight_ conflict in the brain of people coding simultaneously in Objective-C and in Managed C++.</comment></comment></comment>


Ask HN: What are the most useful chrome's flags tunable items? - <AUTHOR>

In other words, which flags item you tuned,and for what ? Have any recommend for tuning chrome ? <comment><AUTHOR> I want share my tuned list :

"Disable DirectWrite" \--> disable ---> for MacType

"Enable tab audio muting UI control" \--> enable --> for easy to aute

"Minimum SSL/TLS version supported" \-- > TLS 1.0 --> for security ......</comment>


Open Source PCR Thermocycler - <AUTHOR> https://openpcr.org/ <comment><USER2> There's also PocketPCR[0] and MiniPCR[1]. $499 for OpenPCR is still pricey imo when you can buy a proper programmable thermocycler with heated top for less than half on eBay, presuming it actually works.

I'm documenting my journey in self-learning genetic engineering[2][3] and in the market for PCR and electrophoresis setup, so I'd be happy to hear what folks recommend.

[0] [https://www.minipcr.com/](https://www.minipcr.com/)

[1] [http://gaudi.ch/PocketPCR/](http://gaudi.ch/PocketPCR/)

[2] [https://everymanbio.com/](https://everymanbio.com/)

[3] [https://www.instagram.com/everymanbio/](https://www.instagram.com/everymanbio/)

<comment><USER3> Okay... now with my trusty PocketPCR... I shall... what does a PCR do again?

<comment><USER4> It helps you sequence a genome . On the website they give examples like sequencing beer yeast.

<comment><USER5> It doesn't sequence, it amplifies DNA/RNA (through reverse transcription) and lets you detect a particular sequence or produce more of a sequence you want to use for downstream steps

<comment><USER6> No reverse transcription. Just amplification by extending a primer using DNA polymerase (rtPCR -- reverse transcription PCR -- of RNA does do an initial reverse transcriptase step.) The PCR process is also used in modern DNA sequencing, but that is not what a PCR machine does.

And a non-qPCR machine does not detect the sequence -- it just produces enough of it by amplification so that it can be detected using other methods.

<comment><USER5> No, you can use a thermocycler for reverse transcription. In fact, you need one to do rtPCR, and I don't see why this cycler wouldn't be able to do that.

And to clarify, I didn't say the device detects a sequence. I said it lets you detect the presence of a sequence. This isn't a biology forum, so I deliberately didn't go into excessive detail and technicalities, just conveying the information that one of the things you use this for is detecting a DNA sequence (and sure, there are post processing steps like running a gel or sending it off for sanger sequencing etc), and the other sort of thing you can do is RT-PCR. You can also do all sorts of cloning techniques like gibsons. And technically, neither device nor a qPCR machine let you detect a particular sequence exactly. It just amplifies a piece of dna enclosed by the relevant primers that you are using to amplify. I'm well aware of all these technicalities with saying that a thermocycler does sequence detection, I left them out on purpose. And as mentioned before, the pocketPCR, like any other thermocycler, is absolutely capable of doing RT etc. I know the parent comment said "what does a PCR do again?," but it's pretty clear from context and use of the article "a" that they are asking about the pocketPCR machine's capabilities, not about polymerase chain reaction in general. If they were, then yes you are technically correct regarding RT.

<comment><USER7> This is overly pedantic but you did literally say _lets you detect the sequence_ in a context where the average reader would have parsed the sentence as referring to the capabilities of the device.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> I remember finding OpenPCR too expensive for a student project, and I ended up designing and building a cruder/cheaper alternative for that project: [http://2013.igem.org/Team:Paris_Saclay/PS- PCR/detailed_descr...](http://2013.igem.org/Team:Paris_Saclay/PS- PCR/detailed_description)

<comment><USER9> Nice work! Your BOM looks similar to OpenPCR's. One fundamental advantage of these smaller PCR machines over traditional designs was running fewer samples (i.e. 16 vs 32+), which translates to less fabrication, less peltier devices, and less sensing/cooling, among other things.

</comment></comment><comment><USER10> Kind of too bad, because I guess it was mildly successful at least because they discontinued the "open" part of, see here: [https://www.chaibio.com/openpcr](https://www.chaibio.com/openpcr)

Their newer product that they've replaced this with is:

1) Way more expensive 2) Not open hardware 3) Remove GPLv3 license (that requires you keep things open) and replaced it with ALv2 (which allows you to take it proprietary)

All good things end up failing because of greed. We'd all be so much better off if we cared about bigger goals than just short term profit.

<comment><USER5> That's a qPCR machine, which is an _entirely_ different beast in terms of capability and cost than your usual thermocycler. $5000 is an _amazing_ deal on a qPCR machine. A piece of new qPCR kit is gonna run you 30-50 thousand dollars minimum, and I've had trouble finding good functional ones from the big players for less than 20k used.

</comment></comment><comment><USER5> Initiatives like OpenPCR went a long way towards opening up DIY biology to the responsible amateur and making it easier to start a DIY bio hackerspace for a region. Glad to see them featured on HN.

<comment><USER9> Here here!

</comment></comment><comment><USER11> They're barking up the right tree here. For want of widely spread PCR testing in February, we let COVID overrun the United States.

If you have the machines and reagents widely distributed, all you need are pathogen specific primers to test for the pathogen du-jour. Then you can do widespread testing and contact tracing like you're supposed to. I really hope we get that in place before the next plague hits.

<comment><USER12> The reagents have been the limiting ... reagent.

</comment></comment><comment><USER13> For those of you who are interested in this space (open source/affordable scientific equipment) I recommend the lab on the cheap blog[0]. They have a lot of links to interesting websites/papers in this space.

[0] [https://www.labonthecheap.com/](https://www.labonthecheap.com/)

</comment><comment><USER14> See [https://news.ycombinator.com/item?id=24048775](https://news.ycombinator.com/item?id=24048775) for many diagnostic tests LAMP is superior to PCR on all metrics

</comment><comment><USER15> I remember when I was doing PCR in the 1980s we needed some really scary centrifuges. The professor I was working for said if we didn't balance them correctly, they could fly out of the building and knock it down.

</comment><comment><USER16> I am glad that this is on the frontpage. I distinctly recall that Hacker News does not believe in the existence of open source biomedical engineering.

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

</comment><comment><USER17> Can it be used to detect a virus from a sample of say salvia?

<comment><USER13> You'll need to run RT-qPCR (Reverse Transcriptase Quantitative PCR) to detect Covid-19 viral sequences.

Simple thermocyclers allow us to amplify sequences but it can't do measurement like a Quantitative PCR machine.

<comment><USER18> I know that qPCR is preferred for diagnostics, but is it actually necessary? As in, will the false positive/false negative rates suffer enough for standard RT-PCR to be useless?

<comment><USER19> No. qPCR is, well, quantitative, so it gives more information. Additionally, it requires less pipetting, and the data is easier to report. All of these things make it more desirable for diagnostics.</comment></comment></comment></comment>


What past bubbles can teach us about the one that just burst - <AUTHOR> http://www.commentarymagazine.com/viewarticle.cfm/speculators--politicians--and-financial-disasters-13180

<comment><USER2> Nothing.

<comment><USER3> I don't think the specifics of past bubbles repeat, but you can still learn a lot about human behavior from such events. I have long speculated that cycling interest rates over time 3 - 4 - 3 - 4 etc would help curb the creation of bubbles as minor shocks would drive up cash reserves.

In a bubble people increase investment and risk, but they also decrease efficiency. In a down turn people increase efficiency at the cost of avoiding useful risks. Both are useful and both are damaging when they stretch out over time.

The last bubble popped because they raised interest rates way to fast at the same time oil went sky high. Getting people to live in smaller homes has long term benefits to the economy but few people want to live in small houses. etc.</comment></comment>


Villagers in Jewar, India, become millionaires overnight after govt buys land - <AUTHOR> https://www.hindustantimes.com/delhi-news/the-burden-of-sudden-wealth/story-WnbH6IEKvhyjoUcFJWHaJO.html <comment><AUTHOR> For reference: 1 crore rupees ~= $160,000 USD . So 6 crores is roughly 1 million USD</comment>


Why I Won't Turn Off My Gadgets on Planes - <AUTHOR> http://ideas.time.com/2011/12/29/why-i-dont-turn-my-gadgets-off-on-planes/

<comment><USER3> Although the rule is dumb, taking it out on the flight attendants is even dumber. Flight attendants shouldn't be expected to know which devices transmit and which don't or how a kindle works. There are stiff penalties that the flight attendant must pay personally (can be up to $10,000) for not following FARs. If it's dumb let the FAA know - it's their rule not the flight attendants.

<comment><USER4> A hundred times this. Touré should keep his childish revolution to himself and do as the flight attendants tell him.

I have a friend who's an airhostess and the stories she tells about these pretentious assholes and how they treat the crew... Argh...

</comment></comment><comment><USER5> The most infuriating device I own when it comes to this is my Kindle, I'll pull it out and start reading on the ground, I usually tuck it away under my arms on my lap when the attendants walk by to do their checks.

I've honestly debated explaining in detail how e-ink technology works to flight attendants because they can't grasp the idea that just because something is showing a picture doesn't mean it's consuming power.

To top it off... I don't think you can even power the damn thing off, screen saver mode, yes, wireless off, you bet, but when you flip the switch and a picture pops up to replace the words on the page the flight attendants stand there waiting for it to go blank.

</comment><comment><USER6> Although it is annoying to have to turn off devices, the goal many airline attendants say is "to avoid distractions during the most dangerous part of the flight."

I get their logic, especially when listening to music, but when simply reading books on ereaders while the person next to you is using a book, is kinda illogical.

</comment><comment><USER7> I always thought of it as risk vs reward. The risk is that the plane will crash and everyone will die. The reward is that I get to read my email 10 minutes sooner.

I'll wait until the plane lands to let my wife and kids know that I'm at my destination. I'm generally against arbitrary rules, but this is one of the few cases where I'll obey the dumb rule.

</comment><comment><USER8> So in our ever-digital world, we forget that these nice digital technologies have analog underpinnings. Cellular radio signals these days are digital, but that digital signal is on top of an analog signal.

iPads and other non-cellular devices have CPUs and CPUs have clocks, which an analog guy would properly identify as a Radio which is transmitting. Non- cellular devices also increasingly have Wi-fi, which is a digital technology on top of an analog radio signal. So an iPad, for example, has at least two radios.

So an all-metal airplane with on the order of a hundred folks, each with 2*n transmitting radios contains measurable radio frequency signal.

So what frequency is this radiation?

Well, in a non-linear environment (another analog deal), the result is the sum and difference of all the signals, pairwise. So can an analog-enlignened person honestly say that this mash of radio-frequency energy does not expose the cockpit avionics to possible spurious signal?

If you don't think that is a potential problem, I would rather drive you in my car than fly with you.

Now regarding cellular phones, it is the FCC that issues this regulation, not the FAA. Why would they be interested in that? Well, since cellular telephone communication is line of sight, do the math on how many more cells you and your concealed cellphone are trying to capture at 1000 feet or higher? Could be an entire city's worth.

Stewardesses are not generally tested for their knowledge of RF propagation or RF interference, so focusing your anger on them is not productive.

And yes, the iPhone or droid is a marvelous piece of technology, but owning one does not make you immune to the facts of the analog world.

</comment><comment><USER9> "Why I won't..." articles generally tl;dr to "because I'm a dick". This is no exception.

<comment><USER10> And you know he's all serious, because he just uses one name.

This article is exactly what you supposed it would be. He doesn't follow rules that don't make sense to him.

<comment><USER11> Funny thing is these people don't realize that flying on a plane is a _privilege_ not a right. They could be kicked off the plane for less than that, it's the company's plane after all, not theirs.

</comment></comment></comment><comment><USER12> I never turned any device off (except for laptop) and planes never crashed. And they never will. Just have to notice when a flight attendant is coming around, put it down for 30 seconds and get back to reading/listening/whatever. Will I be blacklisted by the FAA by writing this?

(on a sidenote, that article is way off-topic for HN...)

</comment><comment><USER13> flagged as it's off topic, misleading (mobiles do affect navigational equipment (ILS) and screens, particularly when far away from cell towers, see [http://www.caa.co.uk/application.aspx?catid=33&pagetype=...](http://www.caa.co.uk/application.aspx?catid=33&pagetype=65&appid=11&mode=detail&id=751) ), ill informed (a plane during descent or takeoff can get into emergency quite quickly and FAs need passengers to pay attention, which is more of a reason to switch it off than the interference) and duplicate (see <http://news.ycombinator.com/item?id=3406167> ) blabber

</comment><comment><USER14> Phones definitely have zero influence on the plane, I think it's more motivated by the same reasons as a movie theater, to discourage use of electronics in general and prevent a bunch of people confined in a small space to get on each other's nerves, especially when babies and people with phobia of flights could be more unnerved by a ringtone during landing than missing a line of dialog in a movie.

<comment><USER13> Phones definitely have non-zero influence on the plane <http://www.caa.co.uk/docs/33/CAPAP2003_03.PDF>

Please, read at least the executive summary

<comment><USER15> Assuming that's true - there's evidence the other way, of course - <USER2> question is why devices are permitted on board at all. If there's even a possibility that an active device can interfere with navigation and/or operation, the policy should presumably that they not be permitted on planes at all.

Because apart from those actively disobeying as in the OP, there are countless more who forget to turn their devices off.</comment></comment></comment>


Twitter ID generation transition - <AUTHOR> http://groups.google.com/group/twitter-development-talk/browse_thread/thread/5152a34a8ae6ccb6

<comment><AUTHOR> Overall they are looking to change the id generation away from guaranteed sequential to time based but remain 64bit unsigned int. From the post: "...Instead IDs will be derived based on time: the most significant bits being sourced from a timestamp and the least significant bits will be effectively random."

The main concern on the thread is the since_id and also the max_id used mainly for pagination and caching.</comment>


Scared to Launch - <AUTHOR>

So I'm just about ready to launch a public beta but I'm a little scared.  I don't want any early bad reviews tainting things.  Should I just launch a private beta 1st or just go for it. The problem is that I will be travelling to startup school tomorrow and I don't want anything to go wrong when I'm at 40 thousand feet.  Anyone experienced the same? <comment><USER2> Thing will NEVER go according to plan, this I can be sure of. One of the + pts of being in a startup is its flexibility. If things go wrong, you can act swiftly to correct it. There's no need to go through rounds and rounds of approvals, PR, etc.

The more important thing to know is that remind yourself it's still a new baby/product. Things will go wrong, you just need to spend a little more time to make things right with it. Dun give up, you will do fine.</comment>


Show HN: BitJoy - <AUTHOR> http://bitjoy.org/~

<comment><USER2> MtGox at $90 and BTCe at $83. Easy arbitrage money? Probably not, but why not?

<comment><USER3> I tried but it was too much effort.

All the api's are unreliable, it's hard to tell if your order went through, if it did you have no idea how long it will actually take.

Then, once you've run out of money on one of the sites you have to go through the expensive and lengthy process to get more on, and you have to go through the same again to actually withdraw. It ends up just not being worth the time

<comment><USER4> I haven't had time to polish these, but would be interested in collaborating with someone to make something robust.

Automatic trader:

[https://github.com/abrkn/margin](https://github.com/abrkn/margin)

Common interface to several exchanges: [https://github.com/abrkn/hail](https://github.com/abrkn/hail)

Margin would be very nice with more tests and state.

</comment></comment></comment><comment><USER5> Looks great (FireFox v22), loaded after 45 seconds.

Can you give some specifics as to what the tech is behind BitJoy and what your plans for it are?

<comment><AUTHOR> 45s is waaaay too long :) will make that better.

The goal is to create a real-time snapshot of the bitcon ecosystem & to build context around the data so it's simple to consume and understand. Price was a logical place to start, hope to add more types of data in the future.

<comment><USER6> 4-5 seconds in FF here.

</comment></comment></comment><comment><USER7> so here's a naive question : why aren't people simply playing off the price differentials between mt gox, bitstamp and btc (more than $7 when I just opened the OP's page) and making a ton of money? or maybe they are? or maybe commissions / fees are so high they eat up any profit?

<comment><USER8> Buy 10 BTC at btc-e.com for 831.66 USD

Sell on MtGox for 591.18 GBP = 901.73 USD (my account is set to GBP)

That's 70.07 USD profit from 10 BTC, or ~$7 USD per bitcoin traded.

Seems like a good opportunity. The problem is you can't cycle your money quickly, it takes time to sell bitcoin for cash and withdraw it ready for the next cycle.

But I mean there's the potential to make ~8% on each cycle. Buying, transfering and selling should also be a fairly quick process so you're not exposing yourself too much.

I think as soon as instant cash deposit/withdrawls are available through various exchanges these gaps will close up pretty fast.

<comment><USER9> You can also play arbitrage between altcoins (BTC to LTC, or LTC to XMP, or any other). On Vircurex, Cryptsy, BTC-e, etc.

Even with liquidity being lower you can see them being rather close on the different exchanges.

<comment><USER10> Do you know of an economic or finance course that can help me understand how to use Bitcoin or any other currency. There's all the articles explaining Bitcoin but none treating it like a foreign currency and teaching how to apply foreign trade. I'll just search foreign trading at the library in the mean time...

<comment><USER11> Look at commodities trading books too. Bitcoin et al are not quite as liquid as most forex markets, so they tend to behave more like a commodity.

</comment></comment></comment></comment></comment><comment><USER12> Chrome 28.0.1500.71 OSX, works ok. A little unresponsive sometimes.

Really cool. I trade in EUR though, so it would be nice with a mtgox EUR listing.

The access rights it wants to my twitter account is unacceptable though, so no chance i am going to bind my account to bitjoy.

<comment><AUTHOR> Cool, more currencies coming soon -- will look at the permissions. Thanks for the feedback.

</comment></comment><comment><USER13> Wow what a great interface. Really great clean design and I like the fact that you've used two seperate btc exchanges. I think this tab will be pinned in my browser once I begin my new career as a bitcoin dealer on localbitcoins.com ;)

</comment><comment><USER14> Takes a while to load (Firefox Dev) but it's really nice when it does!

<comment><AUTHOR> thanks :)

</comment></comment><comment><USER15> Looks really good. One thing to point out that is probably a one-line fix: the month being displayed for news articles is exactly one month before the actual date they came out.

<comment><AUTHOR> Hrrrrrmm :) thanks for spotting that.

</comment></comment><comment><USER16> Any plans to add other cryptocurrencies? Litecoin etc?

<comment><AUTHOR> Yeah, possibly -- focus will be on filling out bitcoin data and other currencies first though.

</comment></comment><comment><USER17> Looks great ,would love to talk more about it , what's the best way to reach you?

<comment><AUTHOR> thanks, cjm712 -at- gmail

</comment></comment><comment><USER18> Loaded slowly, but really nice UI imo. Nice work.

<comment><AUTHOR> Thanks -- will work on the initial load time.

</comment></comment><comment><USER19> It crashes Chrome on the iPad.

<comment><AUTHOR> Ok, will look into it. Works fine for me Chrome on iPhone -- don't have an iPad to test with. Thanks for the feedback.

<comment><USER20> It doesn't crash safari though on my iPhone. Loaded in like 5 seconds for me.

</comment></comment></comment><comment><USER21> nothing loads for me in Chrome either that or it is taking an age.

<comment><AUTHOR> hrrm, ok, i'm watching it -- everything is loading fine for me

<comment><USER22> It loads fine for me. In Chrome 28 Windows. Plus, very nice. I really enjoyed this :)

<comment><AUTHOR> thanks! :)

</comment></comment></comment></comment><comment><USER23> this is cool, but it would be great to also see volume</comment>


Show HN: EventOnce, Really simple events. - <AUTHOR> http://eventonce.com

<comment><USER2> Cool idea - it needs a little more instruction - I was a bit confused as to how to use it at times.

Like once you create an event a "Great! Now share this URL with anyone you'd like to invite to EVENT"

<comment><AUTHOR> Good point! I'll add that in, didn't really consider that, even though it's the whole point of the site haha.</comment></comment>


India's GDP Growth Slows to 5% in April-June - <AUTHOR> https://www.thehindu.com/business/Economy/indias-gdp-growth-slows-to-5-in-april-june/article29301252.ece <comment><USER2> Two big reasons are 1) demonitization which was a profoundly stupid idea and 2) gst which is a good idea unfortunately but it's too high.

There is a very high potential for India given it's sizeable work force but Modi is a blithering idiot although I must give credit to his accomplishments which have far exceeded my expectations

<comment><AUTHOR> How did you conclude that this slump and ongoing slowdown is related to demonetization? As per recent RBI report, cash circulation very much increased [1].

> There is a very high potential for India given it's sizeable work force but > Modi is a blithering idiot although I must give credit to his > accomplishments which have far exceeded my expectations

It would very much help if you explain your points instead of getting started with name-calling.

1\. [https://wap.business-standard.com/article/economy- policy/cur...](https://wap.business-standard.com/article/economy- policy/currency-in-circulation-increases-17-in-fy19-to-rs-21-1-trillion- rbi-119082901463_1.html)

<comment><USER2> Lots of honest business went bankrupt due to cash crunch. Remember that in India most of the business are not registered anywhere and are single person run.

My startup helps plenty of e-commerce startups and we had few clients shutdown their business.

Modi is a divisive evil idiot. I would still vote for him (if I could) because there is no alternative. It doesn't change the fact that he is not respectable.

Case in point, the new born baby that died in the detention center and the mother was found to be Indian later.

<comment><AUTHOR> I understand that startups and cash/credit businesses were severely hit due to demonetization which happened in 2016. But that doesn't explain why it is responsible for current slowdown, which is mainly happening due to drop in demand in Automobile and Real-estate sectors. I haven't seen economists(even who are critical of the Government) blaming this slowdown on Demonetization[1][2].

1\. [https://www.livemint.com/news/india/15-ways-to-define- india-...](https://www.livemint.com/news/india/15-ways-to-define-india-s- slowdown-1565715613762.html)

2\. [https://www.quora.com/Do-you-think-demonetization-is-the- rea...](https://www.quora.com/Do-you-think-demonetization-is-the-reason-for- the-current-economic-slowdown/answer/Subodh-Mathur-4)</comment></comment></comment></comment>