Ask HN: What do you look for in a web developer? - <AUTHOR>

What do you guys look for in your web developers when hiring?
Personally, I am 25, I do not have a College degree, though I have taken an abundance of courses (I do not plan to continue attending). Right now I know HTML/CSS and am spending the Summer learning web technologies. I have a huge love for technology and creating new things/experiences.
What do you look for in a web developer? What technologies (front end) should I be learning? Any books/resources that you can recommend.
Thank you HN! And before someone calls me lazy, I've been reading HN for a year now and would rather come here than search on Google where some SEO monsters have taken over search results <comment><USER2> HTML/CSS is like basic literacy. CSS preprocessing (SASS) is easy and essential to keep your projects flexible/maintainable, so definitely take a couple hours to learn that now if you haven't been using it already.

If I were you I'd focus on mastering javascript as a next big step. Javascript is great because it can be used on the frontend (e.g. jQuery) and backend (e.g. Node).

Most of all, no matter what you are studying, make sure you are producing things that you can show people as you learn. If you're not on github, get on github and upload your projects; ask anyone you can for feedback. Without degrees or work experience, a portfolio of projects you are proud of is what will help you stand out.

</comment><comment><USER3> Show you can produce. No specific technology on your resume is going to mean much. Build something.</comment>


The Catch-22 of Being "Too Junior" - <AUTHOR> https://medium.com/coding-culture/the-catch-22-of-being-too-junior-43af002958c

<comment><USER2> > What happened to the idea of apprenticeship?

Happened the same as to loyalty to the employer: disappeared. (Mind you, I'm not saying it's employees' fault; I rather think it was a result of lack of loyalty of companies to their employees, or maybe a feedback loop.)

> Don't hire a junior developer as a marketing effort or PR stunt. This reason > only considers your company's best interests rather than those of the > candidate.

And where would you find an employer that has _your_ best interest in mind when they don't know _you_ yet? Company is there to earn money, not to train your very self.

> Don't hire a junior developer to do your grunt work.

OK. And who is supposed then to do the grunt work? Architects maybe? CEO?

The point is/should be more about hiring juniors to do _not only_ grunt work, so juniors can learn and advance.

> If there's a shortage of developers in the tech industry, what do we do?

There is no shortage of developers. There is shortage of good developers that would work for small salary.

</comment><comment><USER3> I agree with almost everything in the article. A lot of companies should try to get better at training junior developers. Some junior developers might also want to rethink their salary requirements and need to only work with fun stuff. If the salaries are almost the same as a senior you have to get as good very quickly. And you should probably expect to do some boring stuff, especially early on in your career.</comment>


VS Code is not what it seems - <AUTHOR> https://areknawo.com/vs-code-is-not-what-it-seems/ <comment><USER2> It is often implied that telemetry is a universally bad thing.

If it is anomymized properly, I think its actually a good thing to base decisions on which functionality to improve and which bugs to fix on the usage patterns of the "silent majority" of users and not necessarily on the opinions of the vocal minority engaging with the devs in GitHub issues. There are many prominent examples of major products which were primarily driven by the interests of their developers and not the users, leading ultimately to their demise (e.g. Eclipse).

</comment><comment><USER3> It really cracks me up that a site complaining about telemetry shows 21 trackers[1] when I visit with privacy badger enabled. I actually suspect there are a couple more, because my current browser is pretty freshly installed so privacy badger is still discovering its trackers list.

[1] [https://i.imgur.com/PtpGma2.png](https://i.imgur.com/PtpGma2.png)</comment>


Politicians must not elevate mere opinion over science - <AUTHOR> http://www.newstatesman.com/sci-tech/sci-tech/2012/12/brian-cox-and-robin-ince-politicians-must-not-elevate-mere-opinion-over-sc

<comment><USER2> ? At some stage the science must be condensed into someones head and becomes opinion.

Even if that opinion is 'What is the current scientific view of this?', it is still an opinion of a flawed human being.

So Politicians must get as good as possible in judging opinion.

Being scientifically knowledgable themselves is a good step, but not sufficient.

<comment><USER3> It's one thing to have a considered opinion based on facts, statistics and reason.

It's another thing to be confronted with a mountain of scientific evidence, shake your head haughtily, and announce "Well I believe differently."

<comment><USER4> I love that argument, because it completely ignores the reality of politics.

Politics is a war with words rather than bombs, but if you limit yourself to always speaking the truth, you would be like a commander who never feigns an attack in one place to keep the enemy from attacking somewhere else -- in other words, a very poor commander.

I don't have any doubt that there is something going on with the environment, I am somewhat more sceptical with regards to the long projections (50+ years), but I can't admit that in public, because the automatic response to issues about greenhouse gasses are that we must cut down and degrade our livestyle, rather than build the necessary dikes and compensate for lost farmland by irregating and better management (most useful in the developed world).

However as there is no political consensus for that plan, I have become forced to support the anti-science guys.

<comment><USER5> >the automatic response to issues about greenhouse gasses are that we must cut down and degrade our livestyle, rather than build the necessary dikes and compensate for lost farmland by irregating and better management (most useful in the developed world).

I kind of wonder how much of that is just idiots talking over each other. I have no doubt that there are _some_ people advocating the position you're ascribing to your opponents, but I think it would be a mischaracterization of your more reasonable opponents.

Example: Suppose we implement a revenue-neutral energy cross-subsidy. Tax equivalent of ~$50/barrel only on fossil fuels, distributed back to all forms of energy, including fossil fuels. As long as fossil fuels continue to make up a large proportion of our energy consumption, the result will not be a large immediate increase in the price of fossil fuels, because you'll end up paying ~$50/barrel and then getting, say, $40 of that back (the rest going to subsidize non-fossil energy sources). On the other hand, build a wind turbine and you get the same $40/barrel equivalent without paying into the pool, so the market incentive is to build a ton of wind turbines (and solar arrays and nuclear power stations etc.) We end up with a large market incentive for generating less from fossil sources very quickly, which, when acted upon, naturally reduces the amount of the cross-subsidy because it's funded by a fixed-rate tax on fossil fuel use which is now lower, thereby over time making fossil fuels substantially more expensive but only _after_ the replacements have already been developed, constructed and brought online.

The result would be a modest short-term increase in energy costs (because fossil would become somewhat more expensive before renewable construction completes) and most likely a long-term reduction (because maintaining an already-constructed renewable power generating facility is less expensive than maintaining the equivalent fossil fuel facility _plus_ having to buy the ever- scarcer fuel). I don't see how it would result in any unreasonable decrease in quality of life.

On the other hand, it still isn't likely to happen before the deleterious effects of climate change are felt -- we're already there -- so we still need to take mitigation measures for that like you're describing. But I can't imagine any sound reason why the two should be mutually exclusive.

<comment><USER4> While your suggestion is not as bad as others I have heard, any tax increase will automatically result in a lower standard of living.

<comment><USER5> The logic is that the cost of the tax will be less than the cost of the extra mitigation measures that will be needed in the alternative.

Plus, you get automatic standard of living improvements by destroying more of the other negative externalities of fossil fuel use, like coal mining deaths, air pollution and dependence on foreign oil.</comment></comment></comment></comment></comment></comment>


Security fears in China as smog disrupts surveillance cameras - <AUTHOR> http://www.scmp.com/news/china/article/1347835/security-fears-china-surveillance-cameras-are-blinded-thick-smog

<comment><USER2> I understand the desire to get a zinger in your headline, but this a pretty editorialized and needs to be changed to the actual headline of the article. It's not what the article says and I'm sure China has parallel and ongoing efforts to work on the smog problem. This is not "instead of" it's in addition to. I'm not a fan of what I think is an invasive security system, but I actually appreciated the article's non-biased reporting.

</comment><comment><USER3> A better use of the word 'instead' would be, for example, something like this:

Instead of fixing torture and global surveillance, US building laws to help it become legal.

<comment><USER4> As long as everyone is willing to pretend that the whole problem is the US then the entire West can continue their joint surveillance programs easily. Brilliant.

<comment><USER3> Good point, its the West indeed.

</comment></comment></comment><comment><USER5> "Instead of fixing smog, China building surveillance tech to help see through it."

Misleading title; it presents false choice.

</comment><comment><USER6> Fix this manipulative headline. The word "Instead" does not appear anywhere in this article.</comment>


Finally fed up with terrible tech journalism aimed at the public, I did this. - robinson-wall http://techjournalism.tumblr.com

<comment><AUTHOR> Thank you, thank you, thank you. And please do get started on Rory Cellan- Jones.</comment>


Using page speed in mobile search ranking - <AUTHOR> https://webmasters.googleblog.com/2018/01/using-page-speed-in-mobile-search.html <comment><USER2> I expect this should hit bad WordPress developers hardest, since the throw- another-plugin-on-the-fire philosophy has led to pages that load 15 javascript libraries for features not even present on that page.

<comment><USER3> Wordpress is well optimized from my experience.

It loads the page and the text first so you can start reading. The images and scripts are delayed and cached. Comments are last. Pictures and thumbnails have various resolutions to improve load time.

<comment><USER4> Wordpress itself is good at getting the important content to you ASAP. Many Wordpress plugins are not as good.

<comment><USER5> But what about themes?

Most i've seen load 5+ CSS files and least 10+ JS.

</comment></comment></comment></comment><comment><USER6> Looks like another victory for [http://ampletter.org/](http://ampletter.org/)

<comment><USER7> You vastly overestimate our agility, but we will take the compliment :)

</comment></comment><comment><USER8> Shouldn't Google have done this in the first place instead of AMP?

<comment><USER9> They did, back in 2010 [0]. And suprisingly nobody really changed anything, which is why they eventually came up with the idea for and created AMP.

This change is more focused on mobile.

[0] [https://webmasters.googleblog.com/2010/04/using-site- speed-i...](https://webmasters.googleblog.com/2010/04/using-site-speed-in-web- search-ranking.html)

<comment><USER10> It would have made a change if it was more properly communicated and had a stricter penalty. Really, if those sites where warned for having a few MB's of tracking js or unnecessary assets by google and facebook they would have changed. The problem is that the warning was just sent out as blogposts, not as a drop in SERPs.

</comment></comment></comment><comment><USER11> > _Although speed has been used in ranking for some time, that signal was > focused on desktop searches. Today we're announcing that starting in July > 2018, page speed will be a ranking factor for mobile searches._

> _The "Speed Update," as we're calling it, will only affect pages that > deliver the slowest experience to users and will only affect a small > percentage of queries._

The desktop ranking signal had almost no effect; slow pages reliably turned up in search results. Maybe some pages that took 15s to paint were slightly diminished in results, if that.

If the mobile ranking signal is as weak as the desktop ranking signal, (and they seem to be indicating it's going to be a very small effect,) I would expect this change to have no measurable effect at all on the median performance of pages loaded from Google search results.

</comment><comment><USER12> Without NN won't ranking pages by "page speed" simply enhance the benefits of purchasing "fast lanes" near end points (on previously dumb pipes ;-) to those willing to do so?

<comment><USER13> What's NN?

<comment><USER14> Net Neutrality. (Or Netscape Navigator, but I think in this case it's the former.)

<comment><USER2> Yeah, I thought Navigator, too.

Now get off my lawn while I load winsock.

</comment></comment></comment></comment><comment><USER15> While this is great news but is there a way to opt-out of it? I don't really mind heavy sites (sometimes) since I'm always on wifi most of the time and care more about search relevance than speed.

Kind of like how amazon shows you the search results by "Relevance", "Price", "Popularity", etc. Maybe google can do it too and let us sort by "Relevance", "Speed", "By Geography", etc.

<comment><USER16> You've never been able to opt out of any of the google search algorithm features. I don't see why you we be able to opt out of this one.

</comment></comment><comment><USER17> The fact that I get different results based on what device I'm using really bothers me. Why does Google have to try to be so omniscient? Why not just ask me, "Prioritize fast-loading pages? (y/n)".

Concerns over Google-the-company aside, Google-the-search-platfrom really sucks IMO because it _assumes_ it knows what I want, rather than just asking me. That mentality was Steve Jobs' worst legacy and I hate how it's wound up everywhere.

<comment><USER9> I feel like it's easy to frame the question that way, but really look at how many questions they would need to ask...

* Prioritize fast-loading pages?

* Prioritize mobile pages?

* Prioritize by pagesize?

* Prioritize your language? Prioritize local results first? Prioritize news sites? Prioritize blogging sites? Prioritize comment platforms? Prioritize "safe-for-work" websites? etc...

There's an almost unlimited number of questions that you could be asked, and the reality is that nobody wants to answer any of them.

At some point, they need to make some decisions for you, otherwise you are tasked with coming up with your own search algorithm yourself! The question becomes which decisions should they make for you, and which should they let you make.

Currently the answer looks like they are making most of them for you, while allowing you to make decisions on whether you want "web, videos, images, books, news, etc.." and what date range you are searching for.

I think that's a good choice for them, because at the end of the day if you want more control or choice in your searches, you can always use another search engine.

This isn't also unique to Google or their products. I've struggled with this in my own programs and products, even open source ones. An endless list of configuration options means that nobody will ever set them all correctly, and it increases the amount of testing you need to do almost exponentially. Choosing good defaults, or in many cases making the decision outright for your users is the best possible case, because there just isn't any other way which scales out to the entire piece of software in most cases.

<comment><USER18> Agreed. Knobs to turn is a good thing. But only if they are super relevant knobs. Too much configurability leads to bloat. Good defaults are good, but even better is (often) not having a knob to turn at all.</comment></comment></comment>


Why Is Skype So Bloated And Broken For Such A Simple Program? - <AUTHOR> http://www.forbes.com/sites/quora/2012/07/26/why-is-skype-so-bloated-and-broken-for-such-a-simple-program/

<comment><USER2> And still, the same shitty UI on the Mac.</comment>


Asynchronous Function In Hack - <AUTHOR> http://kernelcurry.com/blog/asynchronous-hack/?utm_source=hacker+news&utm_medium=social

<comment><AUTHOR> I was unhappy with the examples that I have seen online and wanted to give a real work example. Let me know if you find this helpful.</comment>


The Cognitive Science of Rationality - <AUTHOR> http://lesswrong.com/lw/7e5/the_cognitive_science_of_rationality#

<comment><USER2> This is the third time a link to this article has been posted. My original link was posted two weeks ago. Based on (the lack of) upvotes, rationality does not seem to be a topic of interest to Hacker News readers.</comment>


Most sites still hack-able  - <AUTHOR> http://weblog.infoworld.com/zeroday/archives/2008/03/web_site_hack_e.html?source=rss <comment><USER2> All dynamic sites are hack-able.</comment>


DigitalOcean wiped my server because of $6.22  - <AUTHOR> http://msavin.tumblr.com/post/54063382205/digitalocean-wiped-my-server-because-of-6-22

<comment><USER2> I haven't used Digital Ocean for a while, but if I remember correctly they sent me _multiple_ notices days before my service was set to expire, asking me to pay. Once you stop paying for your service, their obligation to store your data ends.

> If you're hosting with these guys, make sure to back up your data externally > constantly.

You should have done this anyway.

<comment><AUTHOR> I hear you on that, but a suspension would have been more reasonable. Suspend the account and give me 3 days to repay or something. It's good business for them because they would keep me as a customer, and its a real alarm to me. They did not mention deleting data anywhere.

</comment></comment><comment><USER3> So there's no argument that there was an amount overdue by some time? Even if the amount was $6.22 and the time may have only been a few days?

What are "fair" assumptions to make about how long a hosting company waits before wiping a server? I'm a happy DO customer, and while I'd hope there might be some "grace period", the only _sensible_ assumption I can make is "they won't wipe my servers/storage while I'm fully paid up", the consequence of which is "I assume as soon as my account goes overdue there's a very real risk that my server/data might vanish", and I manage my payments/creditcards/off-site-backups with that in mind.

In my mind, "instant provisioning" and "pay by the hour" servers are inherently ephemeral, and should be expected to vanish as quickly after payment starts failing as they appear when you provision them.

And, with a pedagogical level of snark:

"I've been using different hosts since I was 16 and never had any experience like this. Now, three websites, tons of projects, and months of edits and content is gone."

I hope that's been an interesting six months for you - welcome to the real world...

</comment><comment><USER4> I definitely think both sides of the situation have a good point. I'd just like to take the opportunity to point out that I've been less inclined to use Digital Ocean because their invoicing system is rather spammy and has a hair trigger on sending unpleasant emails. Even when I add surplus funds and pay on time, it seems, I get waaay too many invoicing emails from them.

I understand these guys are running a subscription service and that they need as high a percentage of on-time subscriptions as possible, but changing payment details are a fact of life, especially when you accept one-time paypal payments. A lot of the people who use their services are hobbyists, and while I'm not justifying my or anyone else's late payment, I think that any service provider in this game should definitely account for such factors.

I'd certainly hope that they take this into account when they offer the pricing that they've provided; I'd be willing to pay a little bit more for DigitalOcean every month to not be harangued and to feel confident that they aren't going to go under if I don't pay them.

Something as simple as slightly more friendly messaging would go a long ways towards making me feel better about using their service long term. Amazon AWS's messaging about a missed payment, for example, is very relaxed, patient, and assumes 0 blame. Missing payment isn't always something people do on purpose; sometimes it's a genuine mistake and penalizing that person unduly can put a strain on customer relations.

</comment><comment><USER5> "I didn't pay my bill, and my vendor shut down my service"

Is this really a surprise? Do you also get frustrated when your laptop runs out of battery and won't keep working, or how your car doesn't understand that you'll get gas tomorrow if it just keeps going?

<comment><AUTHOR> They didn't shut the service down, they wiped the server. They could have suspended it and given me a few days to restore. This is sort of like "I didn't pay my phone bill on time, so my carrier removed my phone number".

</comment></comment><comment><USER6> DO's policy aside... to be fair, having a single server (virtual, no less) be the only copy of anything is pretty much asking for it.

<comment><USER3> You know what they call data you don't have backed up, right? It's called "data you don't want".

(And remember - S3 is not a sufficient backup for your EC2 storage - they're both susceptible to problems with your ASW account. Get that stuff onto disks you own as well, or at least onto a different could storage provider paid with a different credit card. Or at very least, have multiple funding sources in your AWS account, and enable 2FA on your logins)

</comment></comment><comment><USER7> This guy is at fault of course but interestingly the DigitalOcean terms of service suggest this should not have happened. The terms repeatedly use "terminate" and "suspend" to mean delete / disable, with regards to payments:

        Arrearages

        3.3 Payments not made within ten (10) days of invoicing will be deemed
        in arrears. For accounts in arrears. If any amount is more than ten days
        overdue, DigitalOcean may suspend service and bring legal action to collect
        the full amount due, including any attorneys fees and costs.

        Suspension for Nonpayment

        3.4 DigitalOcean may suspend some or all Services to User for failure
        to make timely payment.

That seems to suggest they would have suspended his services for non-payment, not terminated.

[https://www.digitalocean.com/tos](https://www.digitalocean.com/tos)

<comment><USER2> I think 'suspension' and 'termination' refer to accounts, not virtual servers. If your account is terminated, its no longer in the system and you won't be able to create any new servers regardless of payment status. If your account is suspended, you can still create new servers after paying for them, but all existing servers are destroyed. The email OP posted on his webpage confirms this too.

</comment></comment><comment><USER8> I think the time the account was past due is important here. I know Linode gives 10 days (IIRC) but I'm not sure about DO. I did have a DO account go past due over a holiday weekend where I wasn't paying much attention to email notifications (I have a dedicated card that I only put small amounts of money on for online use) but luckily I didn't suffer this fate. I don't think it's unusual to have something as low as 3 business days until an account gets axed in hosting though.

<comment><USER9> I didn't jump on the digitalocean bandwagon after the linode incident and surprisingly I'd a similar situation but with a positive outcome: Had U$20 past due for close to 20+ days due to my credit card being blocked (was stolen), and Linode proceded to remove the server. Once I paid what was due, they recovered the machine in no time.

</comment></comment><comment><USER10> > Warning about an outstanding balance and the destruction of your server are > two very different things.

Does this mean that max did get warnings about the outstanding balance, but ignored them? And it was suspension of the account that caused max to notice, and then pay?

I'm not going to mention the lack of backup stuff because almost everyone learns the lesson by losing important data at least once.

EDIT: Don't forget to try the wayback machine.

</comment><comment><USER11> They should have a better grace period, they are afterall a hosting company and this really affects trust with users. I would pay extra if there was a checkbox to enable a 30 day grace period (snapshot, not a live site) because sometimes stuff happens in real life where you are not able to check your email/credit card.

At the very least let users download the snapshots that they pay for.

</comment><comment><USER12> That's the expected behavior of IaaS. Sorry you learned the hard way.

</comment><comment><USER13> In fairness if your not paying the bill why should they continue to provide services to you (including storing your VM image).

Hopefully you have your code backed up on github and data on s3 or something similar.

</comment><comment><USER14> So restore from backup...right? You did have backups didn't you?

</comment><comment><USER15> Should post this on WebHostingTalk.com to get their attention.

Also, you may not be completely SOL... IIRC they take a snapshot before they destroy it. Not sure if that applies to this situation, but I could see it happening.

Fingers crossed.

<comment><AUTHOR> Nope, no snapshot.

<comment><USER16> did you take a snapshot or have automatic backups enabled?</comment></comment></comment>


WPA cracker in the cloud - <AUTHOR> http://www.wpacracker.com/ <comment><USER2> This is a great idea. Moxie Marlinspike is generally someone worth watching. I didn't do the math on his cloud hosting, but he could double the price here and it'd still be worth it.

What this site really says is, "don't use WPA-PSK on sensitive networks."

<comment><USER3> What should the average home user with a standard linksys router use?

<comment> cool-RR Worry about better things.

Seriously, what's your concern? There's a very low chance that someone will be determined enough to use tools like these to hack into your LAN, and even if he'll do that, so what?

<comment><USER4> > There's a very low chance that someone will be determined enough to use > tools like these to hack into your LAN

To use you LAN no... but to use your internet? Imagine someone is determined to get an your internet connection already and doesn't care if it's legal or not - he starts looking for information on wireless password hacking and finds that site. Now his choice is between a contract + installation fee + monthly fee -vs- 17$ once.

Why would you care? For example if your country/ISP uses a 3 strikes policy. Or you don't want police asking about that child porn distribution network. Or .... (many reasons)

<comment><USER5> A 135 million word dictionary still leaves lots and lots of keyspace for choosing an unguessable "non dictionary" password :)

</comment></comment></comment></comment></comment><comment><USER6> If I could get to the cloud, I wouldn't need a WPA key cracker+..

(+Comment does not not endorse theft of wireless networking).

</comment><comment><USER7> A lot of people seem to misunderstand what this is for. This isn't about breaking into your neighbor's wifi, this is about professional penetration testers more easily being able to crack wpa-psk.

</comment><comment><USER8> Think nosey neighbors. It's, of course, unethical, invasive and rude... but that hasn't stopped any of my neighbors from looking in the windows when they are open.

To me the valuable part is the dictionary. The rest of this is relatively straight forward script kiddy HOWTO stuff. Most people I know have an extra computer that is idling 95% of the time and could run a process for 5+ days. It's the relatively instant gratification and ease of use that I like.

</comment><comment><USER9> This professional looking webpage is brought to you by the following non- professional-looking names:

A Thoughtcrime Labs Production In Association With The Institute For Disruptive Studies

No one else thinks this is just a little bit dodgy? I know it seems to be par for the course for some of the security scene, but still.

<comment><USER10> Moxie Marlinspike is a well-known (if a little eccentric) security researcher.

</comment></comment><comment><USER11> This really is a great idea. I think this style of cloud cracking might have larger applications as well, outside of just PSK. Inexperienced users will pay to crack systems like this.

<comment><USER12> Indeed. Fantastic business opportunity.

</comment></comment><comment><USER13> Is WPA2 still safe from this kind of attack?

<comment><USER14> Guessing the password? Yes.

<comment> Tuna-Fish I have to clarify: It's not just about guessing the password. If you do guess it, even on WPA2 you could just try logging in . Try too many times, and someone might notice. But on WPA-PSK, you can capture some traffic, and then run huge tables of passwords against it, you don't have to do any login attempts until you find the right one. And yes, WPA2 is safe against that.

<comment><USER15> From the FAQ <[http://www.wpacracker.com/faq.html>](http://www.wpacracker.com/faq.html>):

\----- But I use WPA2 so it's cool right?

Actually, while WPA2 introduced CCMP mode as a replacement for the problematic TKIP, when run with authentication based on Pre-Shared Keys (PSK), it is still vulnerable to dictionary attacks. Our service works against both WPA and WPA2 when PSK is being used.

<comment> Tuna-Fish Thanks, it appears I was just plain wrong. Off to reconfigure some networks.</comment></comment></comment></comment></comment>


Who Would Buy a Refurbished $660 Rotary Telephone? - <AUTHOR> https://slate.com/human-interest/2018/07/oldphoneworks-com-refurbished-rotary-telephone-who-would-buy-it.html <comment><USER2> People that frequent Etsy.

Ok. Me. Ok? Me. I still want a late 80's early 90's payphone.</comment>


Our nightmare on Amazon ECS - <AUTHOR> http://www.appuri.com/blog/-our-docker-nightmare-on-amazon-ecs/ <comment><USER2> I do think they need to put more effort on CLIs etc, instead of relying on OSS to fulfill this niche, or at very least put more effort into supporting OSS.

Lambda is similar, we have 'Serverless' and I'm hacking on Apex ([https://github.com/apex/apex](https://github.com/apex/apex)) just to make it usable. I get that they want to create building blocks, but at the end of the day consumers just want something that works, you can still have building blocks AND provide real workable solutions.

I was part of the team migrating Segment's infra to ECS, and for us at least it went pretty well, some issues with agents disconnecting etc I sort of wrote off since ECS was so new at the time.

Another annoying thing not mentioned in the article is that the default AMI used for ECS is not _at all_ production ready, you really have to bake your own images if you want something usable. I suppose this is maybe because there's subjectively no "good" defaults, I'm not sure, but it's a bit of a pain.

ELB for service discovery is fine if you can afford it, I had no issues with that, ELB + DNS keeps things very simple. I'm not a huge fan of all these complex discovery mechanisms, in most cases I think they're completely unnecessary unless you're just looking to complicate your infrastructure.

I also think in many cases _not_ propagating global config (env) changes, is a good thing, depending on your taste. Scoping to the container gives you nice isolation and and more flexibility if you need to redirect a few to a new database for example. You don't have to ask your-self "shit, which containers use this?", it's much like using flags in the CLI, if we _all_ used environment variables in place of every flag it would be a complete mess.

EDIT: I forgot to mention that the ELB zero-downtime stuff was awesome, if you try and re-invent that with haproxy etc, then... that's unfortunate haha. No one should have to implement such a critical thing.

<comment><USER3> > I also think in many cases not propagating global config (env) changes. ... > You don't have to ask your-self "shit, which containers use this?",

I agree and we (dev lead at Appuri here) achieve the best of both worlds from Kube by in the secrets section of a deployment definition, specifying what secrets we need, but not the value. So we know what services need it, and it's updated in one place. That's just for the secret store though, but we could put non-secrets in secret to use that mechanism.

<comment><USER4> Have you looked at ConfigMaps? They're a newer feature of Kubernetes that is meant for storing non-secrets, but in general works pretty similarly to how secrets work (create config map, mount in container).

<comment><USER5> Sure, we use configMaps, secrets, mounting EBS, you name it. Implementing k8s felt like Jack in Titanic getting into first class :). Nice to know they won't lock you up when the boat is going to sink :).

configMaps is nice, but we use it in limited way because its so much easier to update pods when editing env vars. Note: we are using deployments, so if you need to change env var, you do `kubectl edit deployment <name>`, edit/save/close file that opened in your $EDITOR and watch the magic to happen.

</comment></comment></comment></comment><comment><USER6> > ECS doesn't have a way to pass configuration to services

I believe this is the recommended way:

ECS container instances automatically get assigned an IAM role[1], with credentials accessible via instance metadata (169.254.169.254) [2]. Containers can access that metadata too. The AWS SDK automatically checks that metadata and configures itself with those credentials, so all you have to do is give your IAM role access to a private S3 bucket with configuration data and load that configuration when booting up your app.

That way there's no need to copy/paste variables, and no leaking secrets in ENV variables. You _do_ have to be careful though (as with any EC2 instance) not to allow outside access to that instance metadata endpoint, e.g., in a service that proxies requests to user-defined hosts on the network (but if you're doing that, you've got a lot more to worry about anyway).

[1] [http://docs.aws.amazon.com/AmazonECS/latest/developerguide/i...](http://docs.aws.amazon.com/AmazonECS/latest/developerguide/instance_IAM_role.html)

[2] [http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam- roles...](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for- amazon-ec2.html)

<comment><USER7> One reason I am hesitant to go this route is because I don't want to hard-code Amazon's API's into my apps..

<comment><USER6> I understand the reluctance to add extra dependencies (especially environment- specific ones), but in the case of a typical Ruby app, it amounts to the 'aws- sdk' gem and 1 or 2 lines in an initializer.

For my own purposes, I weighed that against the alternatives[1], and it seems like a fairly reasonable compromise[2]. That won't be the case for everyone, obviously.

[1] [http://elasticcompute.io/2016/01/21/runtime-secrets-with- doc...](http://elasticcompute.io/2016/01/21/runtime-secrets-with-docker- containers/)

[2] I'm referring specifically to passing _secrets_ (or other static values) into a container, since that seems to be what the author was talking about. For configuration requiring more complexity, of course other tools are probably more appropriate. In that case, it's outside the scope of what I would reasonably expect ECS to do.

</comment></comment></comment><comment><USER8> Thanks for the shoutout to Convox! I'm on the core team.

I understand these challenges. I wrote about a lot of them here:

[https://convox.com/blog/ecs-challenges/](https://convox.com/blog/ecs- challenges/)

But we have been having tons of success on ECS both for our own stuff and for hundreds of users.

I see the agent disconnection problem too. convox automatically marks those as unhealthy and the ASG replaces them.

It's happening more than I'd like but I'm seeing little to no service disruption. One of the root causes is the docker daemon hanging.

Glad Kubernetes is working well for you. Many roads lead to success as the cloud matures.

<comment><AUTHOR> That's a great blog post. Thanks for sharing!

</comment></comment><comment><USER9> What I don't understand is why AWS squandered this opportunity. Given the popularity of Lambda, they clearly saw the market for completely managed services. They could have designed a platform where users upload containers and AWS runs them. No servers, no crazy settings, etc. Instead, they created this entire platform where you still have to run the entire EC2 infrastructure, there is no service discovery, etc. They essentially created a half baked Mesos or Kubernetes clone. I'm still shocked when I hear companies going "all in" on ECS.

<comment><USER10> A good friend told me that he felt that Google Cloud and AWS had "a severe lack of imagination".

Imagine what you could do if you didn't even assume a process model? All app state just resident in memory, but magically persisted? Who needs object storage, re-invent the pointer!

We could have lived in the future, now it seems we're permanently wed to the past.

<comment><USER11> I heartily recommend this essay [http://scholar.harvard.edu/files/mickens/files/thenightwatch...](http://scholar.harvard.edu/files/mickens/files/thenightwatch.pdf) , for gems like "Pointers are real. They're what the hardware understands. Somebody has to deal with them. You can't just place a LISP book on top of an x86 chip and hope that the hardware learns about lambda calculus by osmosis."

<comment><USER10> I love James Mickens with all my heart.

All of it.

</comment></comment></comment></comment><comment><USER12> Our experience with ECS (at instacart) is not the best but we managed to get it work.

Here is how we get around the issues mentioned in the article:

* Service discovery: built our own with rabbitmq (we use that before ECS anyway).

* Configs: pass a s3 tarball url as environment variable, download it in containers.

* Cli: built our own with help of cloudformation

* Agent disconnecting: we did not see situation where all agents disconnected. we use a large pool of instances, there was never an issue to start containers because of agents.

In addition to these, we also do the following to make ECS work as we want it to:

* built our blue-green deploy solution (structure provided by ECS is very limited)

* built our own solution to integrate with ELB (ELB allows only one port per ELB)

</comment><comment><USER13> Excuse me while I pick myself up off the floor when I read "leaks environment variables"... What?? That is incredibly scary for use, as we just went through an audit process of our code on about 6 different web apps to ensure that all secrets were placed in environment variables on our Elastic Beanstalk configs and not in the main codebase... If this now results in LESS security (all our code is in private Git repositories) than before, then we have essentially taken a step backwards!

<comment><USER14> Github private repos have been made public by mistake before. Got repos are cloned on dev laptops, do you enforce laptop encryption?

The right thing to do is using some form of a vault.

<comment><USER13> We use BitBucket here, rather than Github - similar risks, I know, but we have predetermined repositories which are all set as private. 3 dev machines which are kept on premises at all times.

Still not optimal as far as security goes, but it seems that he have roughly the same exposure if AWS leaks our keys and passwords to other third party trackers...

<comment><USER15> Be careful when modifying user access to a private BitBucket repository. Their autosuggest for the username input field will show _all_ bitbucket users. Makes it incredibly easy to accidentally grant somebody outside of your organization access to a repository.

<comment><USER16> I can attest to that. I have the username "tim" on bitbucket and get added to private repos all the time by mistake.

<comment><USER15> On top of that, there's no audit history of who has had access to a repository. Absolutely ridiculous.

</comment></comment></comment></comment></comment></comment><comment><USER17> We have been running Sqreen production on ECS since October 2015, and we have been pretty happy about it the whole time. Of course ECS was very minimal at the beginning, then many stuff improved, allowing for easier deploy, easier logging, and finally easier auto-scaling. When the ECR (AWS managed registry) was added to our region, it was quite a party @Sqreen :) I would see no point leaving it for something else today.

A remaining issue is that you cannot spawn two containers speaking to a given ELB (AWS load balancer) on the same host if they need to bind the same port.

</comment><comment><USER18> I put something into production with ECS as well. I ran into the same missing components too -- lack of service discovery, and such. Kubernetes work a lot better. As it stands right now, I wouldn't take a gig involving putting ECS into production.

Now if ECS 2.0 was really AWS hosted Kubernetes, I would be very interested in hearing about that...

<comment><USER19> Google Container Engine (GKE) is certainly the easiest way to setup a Kubernetes cluster. We have been running it for a couple of months now and couldn't be happier. If you're wanting to stick with AWS I have always heard great things about the work CoreOS has been doing in this space: [https://github.com/coreos/coreos- kubernetes](https://github.com/coreos/coreos-kubernetes).

<comment> alex-mohr It's great to hear GKE is meeting your needs so well! (Yes, I work on it.)

For 1.4, the Kubernetes Cluster Lifecycle and Ops SIGs are working on making the install and setup process much easier, including on AWS [1]. That won't magically turn it into Kubernetes as a Service, of course, but we hope it'll help users on other platforms.

[1]: [https://github.com/kubernetes/community/blob/master/sig- clus...](https://github.com/kubernetes/community/blob/master/sig-cluster- lifecycle/README.md)

</comment></comment></comment><comment><USER20> Probably want to use a secret management tool and just not initialize into environment variables...

[https://github.com/fugue/credstash](https://github.com/fugue/credstash)

</comment><comment><USER21> Running DCOS (data center operating system) on AWS is a snap, and solves all these problems. It makes running docker images a no-brainer compared to all other solutions, and this includes docker images that interact with one another (not just 100 apache servers or whatever). It is the best software I have ever used, hands down. It is the second coming of zeus buddha jesus belly. It makes scaling anything in the cloud easy. No, I do not work there. No, I am not exaggerating. Yes, I spent a month fucking with swarm and service discovery before deploying a large cluster of my service in two days on DCOS.

Docker is stuck in the 'one image on one machine' mindset. DCOS is taking over at the higher levels of the stack. Mark my word.

[https://dcos.io/](https://dcos.io/)

<comment><AUTHOR> @rjurney - we started with ECS right around when DCOS was coming out of alpha (?). Anyway, it looks slick!

</comment></comment><comment><USER22> Environment Variables are NEVER private. Please don't think that you can hide information in there as all of that information ends up in the process table which is public across the entire machine.

<comment><USER23> How are they "public" across the entire machine?

<comment><USER24> I suppose it depends on your definition of public.

Any environment for a process will be accessible via /proc/<pid>/environ on a linux system. Of course other users cannot read these files, however in the case of something like a Docker image all processes likely share a username and this could be a risk (especially for a public webapp that one day may information leak/allow remote command execution).

At least that's my immediate take on it.

</comment></comment></comment><comment><AUTHOR> HN, I'm a co-founder at Appuri. Happy to answer questions! PS: We LOVE most AWS services like Amazon Redshift. Just not ECS ;)

<comment><USER25> Did you deploy K8S on AWS? If so can you add any details about how? Or are you using K8S elsewhere? I love AWS but planning on spinning up on GCE this weekend to play with K8S.

<comment><USER5> I am ops at Appuri. We deployed k8s on AWS since we are using other services like Redshift and RDS inside the VPC, also happy with how EC2 works plus of course we have Reserved instances so we didn't look into GCP yet. We're running kube on CentOS 7, we bootstrap nodes using cloud-init (user-data) to setup k8s, which we then use to run everything else. I would love to give you more details, I might write blog post about our kube setup decisions later. Kelsey wrote nice manual for setting up k8s - [https://github.com/kelseyhightower/kubernetes-the-hard- way](https://github.com/kelseyhightower/kubernetes-the-hard-way) which is definitely on my to-read list this weekend :)

<comment><USER26> How I wish we had Postgres support in Cloud SQL already...

Depending on how many RIs you have, maybe our custom shapes, much lower prices with per-minute billing and sustained usage discounts, and BigQuery vs RedShift you'd still come out ahead. You could always try your hand at reselling your RIs on the "market".

Would you rather run pgsql by hand or K8s? (And yes, I don't want to make you choose, that's just the current state of the world).

Disclosure: I work on Compute Engine, so of course we want your business.

<comment><USER5> heh, I would rather run psql as a service which is what we have with RDS :). We are aware of BigQuery advantages, Redshift resizing is tedious job, but we currently don't think that the cost of migrating to GCP would be so beneficial that it is worth the effort. This can of course change in future, but for now we are reasonably happy with our setup on AWS and its reliability.

<comment><USER27> Perhaps you can take a look at some folks who've done this with great success: [https://cloud.google.com/customers/sharethis/](https://cloud.google.com/customers/sharethis/) [https://youtu.be/6Nv18xmJirs?t=8m7s](https://youtu.be/6Nv18xmJirs?t=8m7s)

</comment></comment></comment></comment></comment></comment><comment><USER28> I hope the future of cloud will really be managed OSS as service. Google is doing a great job with Kubernetes and GKE and I hope the other providers will understand that. Microsoft is on the right way with DCOS as service, Amazon is just not there yet.

</comment><comment><USER29> [off topic] Author, if you are reading this be aware that when viewed in a narrow browser window the sharing icons overlap the text, even though 40% of the screen is taken up by the right hand sidebar/empty space.

<comment><AUTHOR> Thanks @advisedwang. We're looking into it.

</comment></comment><comment><USER30> Anybody has insights about using Docker Swarm? I imagine Kubernetes has been battle-tested way more in production, especially by the likes of Google. But from what I understand, Docker is really pushing swarm. I'd be curious to hear if others even considered Swarm before choosing K8s..

<comment><USER31> There's not really any comparison. Docker is clearly beefing up Docker/Swarm to be more like Kubernetes, but in its current state, Swarm is just a glorified Docker Compose.

For example, it does not handle services (K8s can automatically provision a load balancer against all your containers), there's no volume handling, no centralized logging, no label-based targeting, it has very limited scheduling (K8s uses cAdvisor to help scheduling, can automatically ensure that pods are spread out across multiple AZs, etc.), etc.

It'll be interesting to see what happens as Docker starts pushing into Kubernetes' space. Given the multiple points of overlap/contention between K8s and Docker (you have to disable Docker's built-in networking and iptables management; Kubelet has to continually monitor Docker for orphaned containers and volumes and so on; etc.) I wouldn't be surprised if Google one day decides to eliminate the Docker daemon as a dependency entirely, by writing a bare- bones container engine into Kubelet.

<comment><USER32> Really? I also think Docker Swarm Mode is still behind of K8S, but as far as I read the doc, they support \- load balancing between container \- volume handling [https://docs.docker.com/engine/tutorials/dockervolumes/](https://docs.docker.com/engine/tutorials/dockervolumes/) \- label-based constraint

I know some features are not so sophisticated compared with K8S and there is no AZ awareness, but Swarm may try to catch up with it.

<comment><USER31> I recommend looking into the Kubernetes design to understand how different its design is.

A good example is volume management. With Kubernetes, you can tell a pod to use an AWS EBS volume; when the pod needs the volume, Kubernetes will automagically mount it, and handle the statement management for you.

If you define what's called a persistent volume, your pod can declare that it needs, say, 1GB, and Kubernetes will automatically allocate 1GB from the volume; you can have lots of pods working off this shared volume, and Kubernetes will know which pods have "claimed" which parts of the volume.

Another good example is config and secrets. In Kubernetes, you declaratively create configuration objects ("configmaps") and secrets. If a pod needs, say, access to an external API, you can store the keys in a secret and declaratively give the pod access to the secret, which will be mounted into a folder (or, alternatively, assigned to an environment variable, though that's not as secure).

Yet another example is service management. You can tag a service (which is another type declaration that says "port X on some unique cluster IP should be routed to every pod tagged with these labels") as load-balanced, and if you're running in a cloud environment (AWS, GCE, etc.), K8s can automatically create an external load balancer for you that exposes the service publicly.

Kubernetes is best described as a sophisticated state machine that takes declarative objects ("manifests") that describe your world — i.e. which containers should be running, which services should be exposed, etc. — and then attempts to continuously reconcile reality with that declaration, managing all sorts of state in the process.

Perhaps most important is the ability to abstract resources from pods. A pod just declares the image to run and the resources — volumes, configs, secrets, CPU/memory constraints, etc. — to make available to it. K8s's state machinery takes care of the rest.

As far as I know, Docker Swarm has none of this, and you'd have to build these things (e.g. REXRay for volumes) on top of Swarm yourself.

<comment><USER32> Hmm, I just want to clarify you're talking about Docker Swarm of Docker v1.11- [https://docs.docker.com/swarm/](https://docs.docker.com/swarm/) or a new built-in Docker Swarm Mode from 1.12+. [https://docs.docker.com/engine/swarm/](https://docs.docker.com/engine/swarm/)

The latter obviously borrows a lot of design and concept from k8s, so I thought the design is not so different as previously they were. It just doesn't have some(or a lot, so far) cool features that k8s already provides (it's still in a RC stage)

<comment><USER31> Ah, I don't know the new Swarm Mode at all. A cursory look does make it seem like it's very much copying K8s.

</comment></comment></comment></comment></comment></comment><comment><USER33> We evaluated ECS and Beanstalk but ended up writing a tool around building CoreOS/Fleet clusters (not currently opensource but I'm trying).

We ran into similar complaints. CoreOS comes with Etcd which though initially unstable is now solid and incredibly handy for service discovery and configuration. We're using [https://github.com/MonsantoCo/etcd-aws- cluster](https://github.com/MonsantoCo/etcd-aws-cluster) to configure it dynamically. We use etcd+confd to drive nginx containers for routing. All in all it works well. Our biggest problems are docker bug related and those we can generally handle by just terminating the node and letting autoscale heal the cluster.

</comment><comment><USER34> "No central config. ECS doesn't have a way to pass configuration to services (i.e. Docker containers) other than with environment variables. Great, how do I pass the same environment variable to every service?"

Would packaging the configurations together with the docker image makes more sense? That enables more hermetic deployment.

<comment><USER5> Do you mean hard coding configs to docker image? I wouldn't support this, IMO this is worst case scenario setup :)

Imagine you need to change single config value, for this you would need to update image, push, build, redeploy, this can take some time depending on your deployment.

With k8s you do only `kubectl edit configmaps <name>`, restart pods that are using it and you are done.

Also no need to creating per stage images...

</comment></comment><comment><USER35> We switched from ECS to Docker Cloud and never looked back.

</comment><comment><USER36> Article text is obscured by icons.

<comment><AUTHOR> @SteveWatson - thanks for reporting, should be fixed now.</comment></comment>


PlanetScale Launches Kubernetes-based multi-cloud database to accelerate scaling - <AUTHOR> https://siliconangle.com/2020/03/31/new-planetscaledb-release-delivers-multi-cloud-support/ <comment><USER2> Neat! How do you handle cross-geo latency? I know google has to rely on precise clocks to make this work in spanner

<comment><AUTHOR> Its split into geographically located shards so you don't need to sync across the global keyspace which is very different from the Spanner model. You have a configurable amount of durability so you can set how much latency you want to tolerate vs how much geo-durability you want to have. If you want to have full planet durability you are going to hit a pretty bit latency penalty</comment></comment>


Challenges for Artificial Intelligence in Medicine - <AUTHOR> https://blog.cardiogr.am/three-challenges-for-artificial-intelligence-in-medicine-dfb9993ae750#.wxs07vqs1 <comment><AUTHOR> (OP here)

We spend a lot of time thinking about how to make AI succeed in medicine. Given that so many efforts, including MYCIN, have been tried and failed before, one of the key questions to answer is "Why now?" In other words, what has changed in the world which will let AI succeed where it has failed before?

I'm curious: is anybody else here applying deep learning, or any other subfield of AI, to healthcare?

If so... do the challenges listed in this post resonate? Do you believe the shifts identified are the right ones to focus on?

<comment><USER2> I've used deep learning for segmenting brain anatomical scans, and I worked in a lab that used neural networks to detect cancerous tumors.

I suspect the first major hospital-facing implementations of machine learning will be in radiology, e.g.: [http://suzukilab.uchicago.edu/](http://suzukilab.uchicago.edu/), which has been diagnosing cancerous tumors in CT scans with neural networks since before it was cool (one reason you won't see the terms 'deep learning' in the literature since they were originally just 3-layer networks, before the term was even coined). IIRC it outperformed the average radiologist.

I wonder if the label problem could be less difficult for some low-hanging fruit. The CT scan neural network required something like 40k labeled scans from a radiologist, but it could come for free: many yes/no disease detections will eventually be resolved by human labeling anyway by your doctor. If you had access, say, to every CT scan taken, and electronic health records for the patients, your labeling is noisy and biased but at least at massive scale. The problem is (legitimately) restricted access to health records in the US. Maybe some European countries have better data access?

And the implementation problem will eventually disappear. I remember talking with a radiologist years ago, who remarked "some people in my field have no idea it's about to disappear". I'm not so sure there will be no more radiologists, but their role will definitely change. Hospitals would be okay with this, actually, since radiologists are expensive. Eventually radiology scans will probably be like ordering blood tests, where fewer and fewer MD's are required.

<comment><USER3> Ct scans aren't really used to look for brain tumors. We use mri for that mostly. Ct is used for screening of stroke, trauma and other things. Source: radiologist / me.

I work on radiology image segmentation also. And I agree it is solvable with machine learning. But even if software could do a job of a radiologist, it wouldn't replace one any more than your ekg reading program replaced cardiologists.

<comment><USER4> > But even if software could do a job of a radiologist, it wouldn't replace > one any more than your ekg reading program replaced cardiologists.

I don't think the radiologist is going anywhere soon but the role is changing. Radiologists are increasingly having to deal with more and more derived information. They need to understand the algorithms being used as well as the biology, anatomy, physiology and disease being investigated. I can see a time when algorithmic specialists become a regular part of their multidisciplinary team.

</comment></comment></comment></comment><comment><USER5> I work for a company that does machine learning on clinical notes. The challenges the author introduces are real, but he misses the mark on the last point "Only Partially a Problem: Regulation and Fear."

Actually, regulation and fear _are_ the main reasons that machine learning hasn't taken off in clinical medicine. More precisely, the provider's fear of getting sued and the regulations that require a licensed practitioner to "have the final say." There is one more problem as well --> machine learning doesn't solve a problem that providers _think_ they have. It's lesson #1 from The Lean Startup or The Startup Owner's Manual. You may have the best EKG-reading software in the world (I have no doubt computers could surpass providers on this task), but if the providers don't feel they need it, it simply won't be adopted. This is the Watson situation at heart.

Conversely, here are some areas in medicine where machine learning _has_ been adopted:

1\. Medical billing code generation: Several companies have systems for reading notes using natural language processing and predicting billing codes using market-basket analysis.

2\. Identifying bacterial cultures: Inpatient bacterial cultures are placed in a big incubator and constantly scanned for growth. When growth is suspected, there are emerging algorithms to automatically classify the bacteria. Similar work is being applied to other areas of pathology (see: [http://www.nature.com/articles/ncomms12474](http://www.nature.com/articles/ncomms12474))

3\. Image-analysis in radiology: There are a few radiology companies that are demonstrating superior results by applying novel algorithms. While not "machine learning" per se, the existence of such algorithms is encouraging for future advancements in radiology, since it's a step beyond just viewing the image. Here's one such company that has gained FDA approval for their blood flow mapping technology: [http://www.ischemaview.com/](http://www.ischemaview.com/)

</comment><comment><USER6> Many people might not understand just how busy physicians are, and how difficult it can be to integrate a new product into the clinical workflow.

The most pressing thing to understand is that clinicians spend the _VAST_ majority of their time gathering all of the necessary information to make a diagnosis. In other words, they aren't puzzling over how to diagnose about 85% (made that up) of their patients.

Once the necessary information is gathered, an experienced doc doesn't usually spend more than about 10-15 _seconds_ debating different diagnoses. Therefore, if your tool takes more than 10-15 seconds to launch, enter any necessary data, and get a result, you are slowing the clinician down and they won't use it. This is why automated EKG interpretations (which are very much a real thing used at hospitals across the country) print directly on the EKG printout - it doesn't cost the clinician more than about 2 seconds to read what the machine thinks and adjust their interpretation accordingly[1].

One of the major problems limiting adoption of "expert" computer systems is the amount of (very expensive) integration it takes to get them under that 10-15 second limit. One of the big reasons radiology is seeing a lot of buzz around machine learning and automated interpretation is that integration becomes a lot easier when you can just feed in an image and maybe 5 words about the indication for the study.

I would love to go on for a while about this stuff, but I'll stop there for now :)

[1] Some people here might be interested to learn that non-cardiologists generally don't have negative views about automated EKG interpretations. But we are also very well-aware that when we make decisions about a patient, those decisions have to be anchored to something a lot more substantial than "the machine told me to do it."

<comment><AUTHOR> One way to think about AI's potential impact is less about replacing what physicians do well currently, and more about doing things they can't do at all.

Take ECGs -- it's true that in a hospital, an automated ECG interpretation doesn't buy you much. But what about about the patient with a paroxysmal heart rhythm that doesn't show up when they're at the doctor's office?

I was at a patient conference recently, and people were describing the first time they felt atrial fibrillation (a common abnormal heart rhythm). Many times, by the time they got to the doctor, they were back in sinus rhythm and thus the ECG showed no abnormality. Some were told they were just feeling "anxious" or "going through menopause." It often took months of persistence just to get a diagnosis.

Now, if have cheap sensors + AI analyzing the patient's whole heart history before they walk in the door, you can do a lot of good for real people.

<comment><USER6> To address your example directly - we already have holter monitors that would show a case of atrial fibrillation quite easily. They aren't terribly expensive, at least for something that has to have FDA approval, and they are frequently used. Heck, you don't even need "AI," in the sense of neural networks/machine learning/some other buzzword. Current systems will review a strip collected over several days and flag any abnormal rhythms.

The problem comes with determining who to put on a monitor. In the case of the patients you described, it's actually quite likely that the doctors seeing these patients considered the possibility of afib. The symptoms, though, can be very vague, and they are seen nearly every day in the doctor's office. It's simply too expensive to put every patient on a holter monitor - the doc's office has to be paid to maintain the monitors (which people abuse at home), the nurses have to be paid to teach patients how to correctly wear them, the monitor company has to be paid for whatever absurdly expensive and proprietary review software they supply, and the prescribing doctor (oftentimes the prescribing cardiologist) has to be paid to review and confirm the machine's interpretation.

All of this for a transient rhythm which any second year medical student would easily recognize if presented the EKG from across the room.

The sad reality is that the patients you described were experiencing the system as it is "designed" (I use the term loosely) to work. The fact that someone is persistently seeking help for their problem dramatically raises the probability that something is truly wrong, and doctors actually recognize this and take it into account. This is one of the reasons it's considered best practice to establish a long term relationship with one doctor who knows you well, but it's harder and harder to do with insurance companies only reimbursing for 15 minute visits.

</comment></comment></comment><comment><USER7> I'm working with a few people on ML applications for medical image segmentation, in Finland and south east Asia. I think ML aided diagnosis will be commonplace pretty soon.

Here in the UK, DeepMind has been doing interesting work on retinal and radiology images with NHS.

While I agree that large enough quantities of labeled data and legal access to it can be hard to get, interestingly, there are many more low hanging fruit in medtech space that don't necessarily have anything to do with machine learning.

Take hospital IT software for instance. Doctors literally waste double digit percentage of their time wrestling with really bad legacy software.

Even the really expensive solutions, like Epic Systems, is horrible. I am hopeful that better options will become available and future public health budgets don't get wasted on the kind of systems that exists now

<comment><USER8> The interesting part is that a lot of effort is already being made to improve those systems. I even know a family doctor who was working in his spare time on improving IT infrastructure.

<comment><USER9> Could I connect with that family doctor you know? I love speaking with technology-minded individuals in healthcare. My contact info is email@example.com

Thanks!

</comment></comment></comment><comment><USER10> AI again? Expert systems are around to support medical doctors' decision making for 2+ decades. Studies demonstrated that doctors can use them to improve their decisions. Hardly anybody uses them in practice.

In real life, medical information often is stored as PDF or similar in the hospital information system. An interesting challenge for AI would be to encode these PDFs.

<comment><USER11> Yeah, I build a decision support product that uses an expert system/GOFAI. We parse PDFs, root around the EHR, read and analyze unstructured data, and so on. Parsing pdfs isn't that hard, unless you want to get things like EKG results, then you need to to OCR and and some analysis on the now potentially garbled text.

We have some pretty active users with great results, but doctors are super busy. Its hard to get them to use anything that isn't in their standard tool kit or tie to payments. And, that understandable when you see 14 + patients a day. Getting into the workflow if the real challenge for AI in my view.

</comment></comment><comment><USER12> I'm a bit disappointed in the straw man assumptions in the first paragraph about AI + cats. There's an _enormous_ amount of work being done applying AI and Deep learning to healthcare. Enlitic is one example. The MLHC conference is entirely devoted to the topic. Deepmind's work with the NIH is also well known.

</comment><comment><USER13> The real disruption is in giving power to the patient not the doctor. I want that power. I check online resources all the time about every sign and symptom I get, about every drug and medicine and about all procedures in order to avoid visits at all cost, only for surgery, only as last resource.

Yes, self-medication is wrong, right now is wrong, and there exactly is the disruption. Give information to the patients as a first line of defense, then let doctors handle the special cases.

<comment><USER14> This is a hard one.. you want a cautious doctor but at the same time you need someone who will order the test when necessary and is not overworked. The balance is in self advocating and not crying wolf. That is the problem AI needs to solve.</comment></comment>


Google chairman: Internet blacklists make us more like China - <AUTHOR> http://arstechnica.com/tech-policy/news/2011/05/eric-schmidt-internet-blacklists-make-us-more-like-china.ars

<comment><USER2> Oh. I've seen this episode! The government asks for broad powers in order to solve a specific problem and then just adds those powers to its bag of tricks to use whenever convenient to creatively prosecute "bad" people. _(1)_

Don't like bitcoin? Don't understand Manga but have a _baaadd_ feeling about it? There's an app for that!

 _(1) Its either that or the professor builds it out of coconuts and they don't get off the island. Either is equally likely._

</comment><comment><USER3> These new laws are brutal and scary. It's nice to see individuals and companies fighting this. I agree with their sentiments and their point of view.

However, playing the devil's advocate, I'm not sure I'm 100% convinced by their (or my own) arguments. What happens when you apply the argument of _shutting down parts of the Internet, even for a seemingly good reason, is still censorship_ to more socially unacceptable things? Messages of hate, tools for murder, child pornography?

Doesn't Google already sensor the internet for such things? Are we just trying to avoid heading down a slippery slope (which I fully support)?

I guess I'm just trying to get a sense for how this differs from those other cases I mention, and how the arguments being made apply in the context that things are already censored.

<comment><USER4> It is tax-funded protection for IP owners.

It threatens internet safe harbors and requires intermediaries to act as law- enforcement.

The potential for error is huge and any false positive can be disastrous to online business.

It sets a precedent for government censorship of the internet.

It is hardly a perfect solution, it will not stop 'piracy'.

The problem in question is highly exaggerated and very much self inflected by the same industry that is lobbying for these measures.

<comment><USER3> If you take out your first sentence and your last phrase, which are both subjective, isn't the rest true for all forms of current censorship?

I'm having a hard time reconciling my thoughts that censorship is bad with the fact that I'm thankful that some stuff _is_ censored. Is the only difference between the two that I want to pirate stuff but I don't want to look at child pornography?

Also, I still think that if you're going to call out all forms of censorship as something bad, that the ends never justify the means, than you better be prepared to answer why you're already censoring stuff.

<comment><USER5> By your logic, we should all live in government-run internment camps, just in case anyone wanted to produce child porn. Solitary confinement and constant State supervision would prevent that.

It would also prevent everything good that has ever come out of a free society. Art. Medicine. Literature. Technology. All gone forever.

Is preventing child abuse so important that it's worth trading in our humanity?

</comment></comment></comment></comment><comment><USER6> As I've been saying for some years now, China is/was the prototype.

<comment><USER7> Well in a way the proposed regime is more restrictive. China doesn't really care that much about intellectual property rights for instance.

<comment><USER8> Not exactly related to this story, but...

A friend in China is taking the GMAT, and was confused about a question, and asked me to word it differently for her. When she typed out the "critical reasoning" example (Given A and B, deduce which of the following is true,) it was something to the effect of:

"The computer industry's estimate that it loses millions of dollars when users illegally copy programs without paying for them is greatly exaggerated. Most of the illegal copying is done by people with no serious interest in the programs. Thus, the loss to the industry is quite small, because__________"

The answer being "most people who illegally copy programs would not purchase them even if purchasing them were the only way to obtain them."

Kinda blew my mind that this was on a test. I mean, sure, it's true, but still.

<comment> guard-of-terra Hey, this coin has two sides. Most of the illegal copying is done by people with no serious interest in the programs. Most people who illegally copy programs would not purchase them, when it means for considerable sum of money and lengthy sign-up and payment process. Therefore, if there is a way to sell programs with easy price tag and via authomatic painless process, it's possible to sell N times as much.

Where N is the "old" ratio between piracy and purchases.

That's how iPhone economy works.</comment></comment></comment></comment>


Live science: "How the Brain Changes as We Grow Up" [VID] - <AUTHOR> http://www.livescience.com/common/media/video/player.php?videoRef=LS_090515_brain-changes

<comment><AUTHOR> "I don't want to grow up, because if I did..."

<http://www.youtube.com/watch?v=N8HMSf4O2FM></comment>


One-time pad – encryption that cannot be cracked - <AUTHOR> https://en.wikipedia.org/wiki/One-time_pad <comment><USER2> Cannot be cracked directly, that is quite correct. But the key generation, distribution _and non-reuse_ remain crucial; thus, you need iron discipline in cipher use, which is somewhat workable for COSMIC TOP SECRET material, but impractical for anything else.</comment>


Show HN: The 'stackoverflow' for startup marketing - <AUTHOR> https://capitalandgrowth.org/index.html <comment><AUTHOR> Just thought I'd share this with the community. We have more than a dozen experts on things like PPC, SEO, SEM, enterprise sales, analytics available to answer questions on demand.

It was created with the technical founder in mind. Please let me know what you think.</comment>


StartupCVs.com is now free for startups - <AUTHOR> http://startupcvs.com/

<comment><AUTHOR> Hello startup peeps,

We have launched StartupCVs a couple of months ago and have seen great traction on our platform.

We connect startup interested candidates with exciting startups all over the world. The candidates just have to upload their CVs and indicate their preferences.

In order to further enhance and facilitate the recruiting process of startups or tech companies, we have now decided to offer a free package for startups who are looking for specific positions in their company.

Join the revolution ;)

Cheers Mengue</comment>


No Show HN: The RANDOM button on Xkcd has been broken for ages - <AUTHOR> https://c.xkcd.com/random/comic/ <comment><USER2> You're right, it's not working.

It should always point at this page, which I have just randomly chosen:

[https://xkcd.com/221/](https://xkcd.com/221/)</comment>


Microsoft Makes Windows 10 Automatic Spying Worse - <AUTHOR> http://www.forbes.com/sites/gordonkelly/2015/11/24/windows-10-automatic-spying-begins-again/ <comment><USER2> This won't matter much to their target user. Anybody who wants more control won't be running Windows 10 or probably running an alternative OS.

The target user is not one that knows what this stuff means or at least doesn't care even if they do. "I want to be able to create this month's budget on Excel". Everything else is gibberish.

Nor should they. I upgraded my parents to use Android phones. Trying to explain what the permission system is was really challenging. "Write to External Storage" is not a statement that you can explain without mentioning the words SD card and internal storage and difference between them. So I have come to the conclusion that current software paradigms are too difficult to understand for anybody who doesn't do this for a living. I wish there was a platform that is midway between Apple's the user is dumb and Android's everybody is a tech-wizard approach.

<comment><USER3> >Anybody who wants more control won't be running Windows 10 or probably running an alternative OS.

Please don't confuse more control with privacy.

My last foray into Ubuntu and Mint (for more control) was a miserable failure on several levels, so I went back to Microsoft Windows.

There are many people that would like an alternative, but Mac OS and Linux aren't suitable (walled garden and stability issues). Having to hack around security concerns is still my preferred alternative at this time.

<comment><USER4> Stability issues? On Linux? Well I'm yet to see a windows box with uptime of two years and everything up-to-date.

</comment></comment></comment><comment><USER5> In my opinion, 'Connected User Experiences and Telemetry Service' is a lot more clear than 'DiagTrack'. In fact, it is so much more clear that I find the author's claim it is vague and misleading utterly disingenuous.

There is a legitimate criticism if Microsoft re-enabled the service after the renaming for users who had turned it off under the old name. But that doesn't fit the narrative arc of Microsoft malfeasance. Tech journalism shouldn't be a debate team exercise. When it is, there are no winners and everybody walks away dumber.

<comment><USER6> Deleting the programs seems strange:

"it resets many user preferences (including basics like your preferred web browser) if they weren't Microsoft product/services as well as _silently deleting third party system monitoring apps like: CPU-Z, speccy, 8gadgetpack, SpyBot, HWMonitor and more._ "

<comment><USER7> It did that to me.

It took me an hour of messing with seeings and Powershell to get everything back to how I had it before the update.

</comment></comment></comment><comment><USER8> Yes, simply renaming this service and resetting user preferences was not a good thing to do.

I think I understand Microsoft's motivations though. They want everyone up to date, control third party applications that might lead to instabilities, and basically make Windows 10 as solid as possible. There is a lot of similarity in what Apple does. I trust, more or less, both companies.

<comment><USER9> Very little similarity to what Apple does IMO. The user has complete control over software and system updates, the App Store preference pane lets you completely turn off updates, if you want.

<comment><USER3> I am being nagged continually about IOS updates. It's even suggesting that it can do it overnight. It's not forced, but it's getting pushy.

<comment><USER9> We are mostly referring to the desktop OSes based on the OP but...

try Settings (app) / Notifications / App Store / Allow Notification

I rarely give any app notification privileges.

</comment></comment></comment></comment><comment><USER10> Backported to windows 7 and 8 now too, but people don't seem to mind. Have a root around for diagtrack.dll if you don't believe me.

If you don't have it I'll wager you have automatic updates off.

<comment><USER11> I have windows7 ultimate. I can't find it. I have automatic updates turned on. I also have never received the windows10 update notification while everyone I know with Home version has.

<comment><USER10> [https://support.microsoft.com/en- us/kb/2952664](https://support.microsoft.com/en-us/kb/2952664)

Have a look for this one, I'm going to look for it on my work machine on Monday.

<comment><USER11> I don't have this update either.

</comment></comment></comment></comment><comment><USER12> If you don't want spying, put the machine behind a http proxy with a strict white lists in and out firewall. I guess than you have to worry about the firewall machine. chain a couple of them, and they won't know which machine is the final firewall. If any of the others send unexpected chatter, you at least know you are failing. This way you can still use windows at least until they require an always on chatty encrypted connection to microsoft to function.

</comment><comment><USER13> Funny, I just read another entry here in HN titled: Things the media does to manufacture outrage.</comment>


Dear Startup World: Chill the Fuck Out - <AUTHOR> http://unicornfree.com/2011/dont-let-the-bastards-grind-you-down

<comment><USER2> Yeah really. I wonder if the "prominent technologist" quoted in the article realizes how condescending and self-serving he sounds when he says "There's nothing wrong with being a small software company.... It's boring, but there's nothing wrong with it. Don't expect anyone to celebrate you for doing it, though."</comment>


Ask HN: Is discussion of wikileaks not allowed? - <AUTHOR> I submitted a post about Eric Schmidt working directly with the Clinton campaign and, in an email, stating, "Key is the development of a single record for a voter that aggregates all that is known about them."<p>The post was flagged and removed. Not sure why other than wikileaks discussion not being allowed.... <comment><USER2> I think there are a lot of HN users who are flagging political/US election- related topics in general, especially those that don't have a strong tech angle.

Just for clarification, as I understand it, "flagged" is a result of users marking it flagged. I'm not sure how a submission gets marked dead (for example, if it's moderator-only or can be marked dead if there are enough flags)

There's been a lot of discussion on other similarly politically-charged threads as well. For example:

\- [https://news.ycombinator.com/item?id=12738677](https://news.ycombinator.com/item?id=12738677)

\- [https://news.ycombinator.com/item?id=12792215](https://news.ycombinator.com/item?id=12792215)

\- [https://news.ycombinator.com/item?id=12839742](https://news.ycombinator.com/item?id=12839742)

Those are just the first couple occurrences I found. I don't intend them to be representative of any particular bias.

<comment><USER3> You must be a new HN user. Few weeks ago HN front page was full of political/election topics. They weren't flagged, and even some of them were heavily upvoted. But these submissions were mostly anti-Trump.

Now, when most submissions are anti-Clinton, they are being flagged and removed. Those which despite that are able to get many upvotes, are being silently hidden from front page. Moderators also add "a moderation downweight" to these submissions ([https://news.ycombinator.com/item?id=12715332](https://news.ycombinator.com/item?id=12715332)).

WikiLeaks submissions are particularly targeted, as these are pure facts, which cannot be easily dismissed in comment threads.

<comment><USER3> And here we go: this story has just been delisted from front page, despite it (now, 2016-10-31T20:34:43+00:00) has 21 points and isn't flagged.

I checked the next 7 pages as well, and it isn't present there either.

<comment><AUTHOR> Yes, and it obviously has to do with tech. I thought hackers news was a little more open minded and generally a more intelligent community. Guess some users and mods/admins aren't...

<comment><USER4> I'm with you.

It's disappointing that for whatever reason Clinton in particular is barely discussed on HN. What's come out in the last few weeks should be an enormous, shocking news story (especially if you've been living in the MSM bubble), and yet every submission gets knocked off the front page instantly.

</comment></comment></comment></comment></comment><comment><USER5> Maybe because you didn't provide any context? Cherry-picking one sentence from an email doesn't seem like a good faith attempt to discuss the issues.

(The same applies for Trump quotes! We should give him the benefit of doubt and make a reasonable attempt to understand the proper context of his bizarre but extremely quotable statements... But in his case, it's often difficult or meaningless to determine context because he rambles off the cuff all the time -- often it seems like many of the quotes just surface from his subconscious, and there's nothing else in the surrounding thought stream that could explain it.)

<comment><USER3> You comment his actions, but haven't even bothered to check the submission he complains about, have you?

He provided a link to the full content of email he cited. I thought that this is a preferred approach: provide just facts, without adding own subjective context and interpretation to them.

<comment><USER5> Actually I did look at the Schmidt email, and I didn't see what the fuss is about. The same advice could have been given by any other number of people.

That's why I wish the poster would have given some context: why is this worthy of being on HN? Just because it's a private email from Eric Schmidt?

<comment><AUTHOR> This is news about a tech giant suggesting a database be created based on voting habits that includes additional metadata about individuals.

The fact that Schmidt obviously has ties to Google brings up the question of whether or not Google resources and user data would be used to help create such a thing.

Honestly, the political aspect is quite minor compared to the the tech aspect.

On another note, my original post included the suggestion that the Clinton campaign hire low wage workers. Implying their political passion would allow them to pay low wages. In my opinion, that manipulation is horrible.

Both of those topics seem like something the hn community would like to discuss. Unfortunately, it seems mods/admin/whoever are letting their political biased rise up above login and quality conversation.

</comment></comment></comment></comment><comment><USER6> Hacker News is, as clearly stated in the FAQ, "for things of interest to hackers". Given how widely discredited WikiLeaks is -- pretty much every neutral observer acknowledges they're now little more than a messenger for Russian intelligence operatives -- I can't see much value in discussing this garbage.

There are plenty of places for on the internet where you can find Donald Trump circle jerks where you can discuss this with the plethora of conspiracy theorists, white nationalists and Trump supporters this stuff tends to attract. Hacker News is not one of them.

<comment><USER4> So what are you saying, that the emails are fake or doctored?

<comment><USER6> They could be fake, they could be doctored, they definitely are are out of context, etc. We know these emails are provided courtesy of Russia. Considering the Trump campaigns disturbing ties with Russia, these should be taken with extreme skepticism. To me, the much bigger question is, what does Russia want from Trump? He is obviously going to repay the favor somehow.

<comment><USER4> We don't know who leaked the emails. You'll have to show me proof otherwise.

What's disturbing is the content of the emails. Clinton will not last six months into her presidency, I can promise you that. There is clear evidence from the Podesta emails so far that the Clinton campaign cheated, broke the law, and used the Clinton Foundation for shady purposes. Mark my words, after what's come out in the last few weeks about Clinton, she will be seen in history as criminal, just like her husband.

Did you see she got debate questions ahead of time via Donna Brazile (in addition to the previously discovered town hall question)? That they made millions off pay-for-play with brutal foreign governments? Every day there are multiple discoveries of enormous magnitude, and that confirm long-standing suspicions about the Clintons.

</comment></comment></comment></comment><comment><USER7> Sure looks like it isn't, at least not when the story at hand is...inconvenient for certain parties.

Quickly killed threads include [https://news.ycombinator.com/item?id=12840068](https://news.ycombinator.com/item?id=12840068) and [https://news.ycombinator.com/item?id=12840251](https://news.ycombinator.com/item?id=12840251)

<comment><USER8> Those threads are obviously just pure politics of the kind that fall outside the site guidelines here, so users were right to flag them.

There's an intrinsic tension on this site: by excluding pure politics and the low level of discourse that comes with it (c.f. "butthurt Hillary supporters" elsewhere in this thread), HN becomes a place for relatively substantive discussion. Naturally, people then want to use this relatively substantive place for political discourse as well. That's understandable, because there are so few public places to have substantive discussions about politics. But if we were to let that happen, HN would soon become just like everywhere else (as I said, c.f. "butthurt Hillary supporters" elsewhere in this thread). Therefore we can't let that happen.

Unfortunately, a lot of people respond to this not with "yeah, I see the tradeoff" but with "this site is censored by butthurt Orwellians".

</comment></comment><comment><USER9> Yeah, sorry about that. Conspiracy headquarters was busy with the daily mass media realignment groupthink and I couldn't get you the usual 1055 ("useful appearance of opposition") exemption.

</comment><comment><USER10> HN is full of memory holes and thoughtcrime is punished.

<comment><USER11> 2+2=5

</comment></comment><comment><USER12> The frontpage is either:

1\. Being heavily censored by admins

2\. Being heavily flagged by butthurt Hillary supporters

<comment><USER13> >>2\. Being heavily flagged by butthurt Hillary supporters

Idiotic comments like this are why users are flagging election news, by the way.

<comment><USER12> How is that idiotic? Is it not the truth?</comment></comment></comment>


Iteration Inside and Out - <AUTHOR> http://journal.stuffwithstuff.com/2013/01/13/iteration-inside-and-out/

<comment><USER2> If you've got iterators and a yield statement, like Python does, you can make the tree example look much nicer:

      def in_order (self):
          if self.left is not None:
              for node in self.left.in_order():
                  yield node
          yield self.node
          if self.right is not None:
              for node in self.right.in_order():
                  yield node

Unfortunately this is horribly inefficient if the tree has deep nodes because each iterator call recursively calls each level of the tree, only do just pass values back. If there was something like tail call optimization for iterators in Python, then this could actually be efficient. But there is not.

However it does show that, at least in principle, the external form of iteration can make the tree problem look pretty.

(Purists can claim with justice that that I'm cheating. The yield primitive allows co-routines to be constructed, which allows you to effectively flip internal and external. That is why it was one of the solutions to allow internal iterators to solve the interleaving problem.)

<comment><USER3> or, in Python 3.3:

        def in_order(self):
            if self.left is not None:
                yield from self.left.in_order()
            yield self.node
            if self.right is not None:
                yield from self.right.in_order()

<comment><USER2> Very nice. That would solve the basic inefficiency.</comment></comment></comment>


Apollo and Slingshot - Taking the web offline - <AUTHOR> http://venturebeat.com/2007/03/27/adobe-slingshot-others-pressuring-microsoft/#more-3796 <comment><USER2> Interesting stuff. The cool thing about Slingshot is that it seems like it'll be relatively easy to bolt it on to existing Rails apps. For Apollo, I think you're pretty much going to have to build your apps for Apollo from the start.

The downside to Slingshot (for some people) is that, since it's rails, you're gonna be sending at least part of your application's source code down to the client to make it work offline. I don't think that's such a big deal, but it could be a dealbreaker for some.

edit: see also: <http://www.techcrunch.com/2007/03/23/here-comes-competition- apollo/>

</comment><comment><USER3> I couldn't find any info on the license for Apollo yet, but I guess it is not Open Source. Neither is Slingshot. It's certainly a very interesting development (especially considering mobile applications), but I would either wait for an open source framework or create my own.</comment>


Zfsd(8), the ZFS fault management daemon lands in FreeBSD - <AUTHOR> https://lists.freebsd.org/pipermail/svn-src-head/2016-May/087584.html <comment><USER2> The last long missing piece finally dropped! I can't wait to kick the tires on this! Many thanks and much gratitude to iXsystems and Spectralogic for working on this, and submitting their hard work and effort on this into the base. Has anyone tested this out yet, I would love to hear your experience!</comment>