Ask HN: How do you manage SSH keys and SSL certificates in your company? - <AUTHOR> Do you use - Universal SSH Key Manager, ManageEngine Key Manager Plus, Cyberark Solution, or any other tool? Tips please. <comment><USER3> It baffles me that nobody seems to have mentioned Hashicorp's Vault yet:

[https://www.vaultproject.org](https://www.vaultproject.org) [https://github.com/hashicorp/vault](https://github.com/hashicorp/vault)

It comes with both, a full blown PKI (want a new cert? Use an authenticated REST endpoint!) and SSH backend. On top of that you can use it to manage accounts for many other third party applications as well (e.g. PostgreSQL, MySQL) while leveraging a multitude of authentication backends to delegate granular access for all of these features.

It's been an absolutely eye-opener for somebody like me who's used to managing SSH keys/PKIs (what a pain) and I wouldn't want to use anything else right now.

<comment><USER4> So let say you have bunch of servers that your team has to access via ssh, how would vault help adding users public keys add it to ~/.ssh/authorized_keys of each machine? i am familiar with vault locking/unlocking secrets but not sure if Vault can help centralizing and deploying those keys to individual machines.

<comment><USER5> A good solution to this problem is to use an SSH Certificate Authority - <USER2> you need only configure the CA certificate on each box, and you can either issue semi-long-lived certificates to each user who needs access, or use something like Vault to issue short-lived certificates intended for one-time use.

This model is described in an excellent post by Facebook from a while back [1].

(Disclaimer: I used to work at HashiCorp, and put this model into production there, though the Vault support for issuing short-lived certificates was added after I left)

[1]: [https://code.facebook.com/posts/365787980419535/scalable- and...](https://code.facebook.com/posts/365787980419535/scalable-and-secure- access-with-ssh/)

<comment><USER6> Using an SSH Certificate Authority is also my recommendation, but be aware that it's relatively new, so associated tooling with it is not super mature yet. In particular, the user still needs some bits in order to login, and whether they generate it themselves and send it off to get signed, or the bits are generated for them on the backend and the user simply needs to receive them, there's a management aspect to it that isn't a totally solved problem with open source tools.

It's not a difficult problem, mind you, but there was custom code written that runs on developer laptops (OS X and Ubuntu) to support this workflow.

(Despite being a very similar looking string of bytes as more traditional pub/private keys, it's different in the SSH-Agent protocol, so don't assume all ssh-agent-looking daemons support it.)

<comment><USER7> ScaleFT uses a certificate based approach and issues short lived certain for SSH and RDP. Also has a policy engine to set additional access controls.

<comment><USER8> I tried to deploy them to grant developers limited time access to the hosts running their services. Didn't really work out and I killed the project.

</comment></comment></comment></comment></comment></comment><comment><USER9> I'm the co-founder of a startup that has developed a tool for this called Userify[1].

It creates and removes _local_ accounts and manages the ssh keys and sudo permissions centrally, so you don't have to worry about not being able to get in if your LDAP/AD is down. (Our Enterprise edition, self-hosted in your VPC or in your DC, can optionally integrate with LDAP or AD for dashboard logins, MFA, etc.) We also have an AWS server edition in the AWS marketplace. When you remove someone in the dashboard, their account is removed across all of the servers they have access to, _and_ their sessions are terminated, but their home directory is retained for archival or forensics.

Our primary foci are paranoid levels of security (hardened, all data encrypted at rest with X25519, in motion with TLS), flexibility, and speed: fast to deploy or integrate (w/ ansible, chef, puppet, terraform, cloudformation), and fast to install (milliseconds), with both SaaS/Cloud and self-hosted versions and open source python agent (we call it the 'shim').

We were founded in 2011 and serve thousands of servers and users in real time; I'm first.last at userify for any questions, and/or info at userify.

1\. [https://userify.com](https://userify.com)

<comment><USER10> I thought about doing something like this in the past, did you find this to be relatively profitable? Was it something that a lot of people wanted?

<comment><USER9> No, it's a terrible space. Pick something less noisy and with fewer competitors. Like log management. ;)

</comment></comment></comment><comment><USER11> LDAP as a public key service and servers configured via PAM to use that as source for pub keys. Nothing to distribute. Delete key from LDAP and second later user can't log on any machine. We are analysing teleport ssh suite for possible migration direction. SSL is different story :)

<comment><USER12> Can anyone log into hosts if LDAP is down? Is that a concern? Is there an easy way to mitigate the concern if you wanted to? Interested in exploring this solution, but worried about the availability risk.

<comment><USER13> Apart from the caching stuff mentioned in other replies, this is why you have multiple ldap servers in a HA replication setup.

<comment><USER14> Yeah running multiple servers is easy and the daemons are very mature at this point. LDAP daemons aren't crash prone. I haven't had an LDAP outage in over 10 years.

</comment></comment></comment></comment><comment><USER15> We use Ansible to deploy/manage peoples' SSH keys on our servers. From their laptop or a jumpbox (within the management VLAN) with their personal key (and a passphrase!) they are able to login in to all those servers. So logins are personal (as opposed to shared accounts which have to be updated when people leave). Now when new people arrive or when people leave we just run an Ansible playbook and all our 400+ servers are updated.

<comment><USER16> How do you manage to "remove" SSH keys. Since sensible is stateless, you probably run once for removing and once for adding a new key.

<comment><USER17> There are two states that we're talking about.

* Ensure that the following key is present.

* Ensure that only the following keys are present.

You can accomplish the second one with the 'exclusive' flag.

[http://docs.ansible.com/ansible/authorized_key_module.html](http://docs.ansible.com/ansible/authorized_key_module.html)

<comment><USER18> There's a third state as well: absent. Move keys from one file to another, and they go from allowed to denyed.

That said, I do like the "exclusive" tag too, I just tend to have a few one- off keys laying around as technical debt.

</comment></comment></comment></comment><comment><USER19> SSH: Daily key generation and rotation with a 2FA registration system. Keys come from this local daemon, once per ui session / 12 hours. Port knocking to get through bastions. All bastions and config done via enterprise managed setup. You're not on a managed machine, you're not on prod/vpn/ssh/etc.

SSL: AWS KMS style solution which predates it on internal, and new system built on KMS. These systems are merging as KMS takes a lot of the load off. Then it's down to building a key distribution system. All secrets actually stored in this type of system. Devs rarely access secrets directly. Lots of nice "client" wrappers which look like DynamoDBClient, or Mysql driver but actually fetch passwords on a 5 minute rotation from the secret store so a rotation means push new key, wait 5 minutes, pull old keys. Secrets preferably never hit disk.

Not a big fan of vault because it wants to connect in to your hosts to manage and rotate passwords.

<comment><USER20> Interesting. What kinds of tools are you using for your SSH setup?

<comment><USER19> in house. you may be able to figure out where I work from my history which would explain why.

</comment></comment></comment><comment><USER21> Regarding SSH keys, for anyone using Github organizations, we created a service called GitWarden[1] for automatic syncing of local user accounts/SSH keys with organization teams. This makes it very easy to manage users across your entire infrastructure directly through the Github UI, and have any team changes (add/remove members) reflected locally in near real-time. It also makes it incredibly easy for users to login, as they just use their Github username and any SSH key from their Github profile. There's a full demonstration in one of our blog posts here[2] for anyone interested.

This is a new service we recently launched, so any feedback would be greatly appreciated! My email is in my profile, if you would like to reach me directly.

[1] [https://gitwarden.com](https://gitwarden.com) [2] [https://gitwarden.com/blog/2017/05/04/first-steps-with- gitwa...](https://gitwarden.com/blog/2017/05/04/first-steps-with-gitwarden)

<comment><USER22> Is there any logging of which ssh key is used? I don't think that I would be comfortable having access to work material from a personal machine, assuming the company is large enough to issue work desktops/laptops.

<comment><USER21> Not currently, but that's a great point that we haven't considered yet.

</comment></comment></comment><comment><USER23> My company Foxpass (YC S15) has a product to manage SSH keys. It serves as access control too -- the keys are only available on the hosts where a user should have access.

[https://www.foxpass.com/](https://www.foxpass.com/)

<comment><USER24> We've been using Foxpass for more than a year now and can definitely recommend. We have Amazon Machine Images with the required packages installed and configured; we use the web interface to grant/revoke access to users and add SSH keys. So each user logs in as themselves.

Aren has been awesome with responding to emails and helping us set it up too.

<comment><USER25> How does it handle sudoers?

<comment><USER23> I didn't mention it in the original post, but Foxpass also has an LDAP endpoint so it can manage users and groups on your linux machines.

This means you can set up a linux group with sudo capabilities (sudo or wheel, usually) in /etc/sudoers. Then using Foxpass you can manage the membership of that group by adding users on a permanent or temporary basis.

</comment></comment></comment></comment><comment><USER26> For SSH:

I'm a fan of public key distribution via directory service (LDAP) with failover/caching via sssd. Private key storage on a smartcard (Yubikey in my case)

SSL: It depends on where it's being deployed -- AWS apps use ACM, situations where I need to access the secret from within a running system image (gce/ec2) generally uses the platform's kms long with their object store.

Can't help but notice this account only has two posts, both asking about commercial solutions folks use for secret management. I'm gonna take a stab in the dark and say this is market research?

</comment><comment><USER27> I would prefer to not manage them at all. Let my cloud provider care about SSL (AWS already provides it).

I don't even want anyone (including me) to have access to our SSL certificates. There's no lock-in, I can always change my mind and buy new SSL certs somewhere else.

</comment><comment><USER28> We were working on a more decentralized solution here: [https://github.com/dedis/cothority/tree/master/cisc](https://github.com/dedis/cothority/tree/master/cisc) \- unfortunately the update is still 1 month away...

This system uses a set of untrusted nodes that form a permissioned blockchain. Updating the chain requires a threshold of keys stored in the first block. The private keys are distributed over laptops/phones.

A person can have multiple devices that accept/deny new keys, while the servers check periodically for updates and can verify the new ssh-keys are legit by verifying the signatures.

I did a small demo at HotPETs 2016: [https://www.securityweek2016.tu- darmstadt.de/fileadmin/user_...](https://www.securityweek2016.tu- darmstadt.de/fileadmin/user_upload/Group_securityweek2016/pets2016/1_Managing_identities_bryan_ford_etc.pdf)

I also hope to have it running again, soon. If anybody is interested, don't hesitate to contact us at email@example.com

</comment><comment><USER29> Last time I did ssh key distribution on a global scale it was with cvs, cron, and makefiles. Self-generation of key with gated registration to central repository, auth'd via k5, distributed via cvsup (remember that?). Automatic expiry according to configurable policy. Two-person-rule for root trust and policy changes. We also modified sshd for better key usage auditing.

</comment><comment><USER30> We used ScaleFT for Dreamhack ([https://www.scaleft.com/blog/how-dreamhack- used-scaleft-to-s...](https://www.scaleft.com/blog/how-dreamhack-used-scaleft- to-secure-the-worlds-largest-digital-festival/)) and it was very easy to work with. A very good product if your company simply wants something that works.

<comment><USER31> Another happy ScaleFT customer at Jungle Disk [https://www.jungledisk.com/blog/2016/07/13/behind-the- scene-...](https://www.jungledisk.com/blog/2016/07/13/behind-the-scene-at- jungle-disk-first-peek/)

</comment></comment><comment><USER32> For self-hosted PKI checkout Lemur from Netflix:

[https://medium.com/netflix-techblog/introducing-lemur- ceae88...](https://medium.com/netflix-techblog/introducing-lemur-ceae8830f621)

</comment><comment><USER33> We just release Kryptonite ([https://krypt.co](https://krypt.co)), an HSM for your SSH private key on your phone.

The private key never leaves your phone. Pair your phone with your computer to create a secure channel (channel is encrypted + signed with session keys only known to your computer and phone). Every time you SSH, the computer calls out to your phone over this channel and asks you to approve a signature.

SSH logins with simple push notification approvals. Code is public: [https://github.com/kryptco](https://github.com/kryptco).

</comment><comment><USER34> We use CFengine 3 to manage personal accounts and ssh keys on servers. As CFengine continuously checks and converges configuration, if someone set bad permissions on their ssh file or remove the authorization it is automatically corrected before five minutes have elapsed.

</comment><comment><USER35> At my previous company, we used Puppet to distribute both. SSH public keys were part of a developer's intranet profile, and SSL certificates were managed on a central repo.

Updates to either would be passed on to Puppet and distributed automatically across 1400 machines.

(Edit for typo)

</comment><comment><USER36> The company I work for (Venafi), provides enterprise grade SSL certificate and SSH key management solutions. The on-premise enterprise solution provides certificate lifecycle management (monitoring for expiration, automatic renewal, and automatic installation). It provides a REST API so you can automate the process using your toolkit of choice. We've also recently released a new cloud service that offers free certificates for use in dev/test environments (and will have more functionality added soon!)

</comment><comment><USER37> We use Yubikeys as GPG smartcards, and use them for gpg-agent as ssh keys.

Everyone puts their hsm keys on their github account (and removes all others).

We fetch the keys for each user from github on system init. e.g.

[https://github.com/sneak.keys](https://github.com/sneak.keys)

When we need to add/remove people, we just update the list of usernames in the script that fetches keys, and then kill off instances one at a time to force a redeploy.

<comment><USER38> A comment above, [https://news.ycombinator.com/item?id=14321901](https://news.ycombinator.com/item?id=14321901), does a similar thing as you, except they use the Github API to fetch the list of usernames. I don't know your use case, but maybe this is useful to you too.

>[https://github.com/sneak.keys](https://github.com/sneak.keys)

How do you do that? I mistook you for a Github employee at first.

<comment> jon-wood Appending .keys to your Github user profile URL returns SSH keys. Hugely useful in organisations that are using Github for code management already.

<comment><USER25> Is there any danger to adding keys to the Github account that are used elsewhere?

<comment><USER20> "It depends".

I dislike that Github doesn't explicitly mention that it publishes your public keys, because they can be used to figure out your identity across multiple services. I believe someone a while back posted a demo on HN, where you could SSH in and it would greet you with "hello $yourname", which it derived from your github keys.

My advice: if you use different (user)names for different services, you should probably consider using different SSH keys for them as well. That is, if you don't want those two identities to be tied together.

<comment><USER39> Wrong solution.

The main problem that Fhilippo pointed out with the service is that ssh by default gives all keys present inn your keyring, or all keys named id_{rsa,dsa,ecdsa}. What should be done is to never present ALL your keys, but turn on "IdentitiesOnly yes" in your SSH config.

Project: [https://github.com/FiloSottile/whosthere](https://github.com/FiloSottile/whosthere)

<comment><USER20> Yes, that's part of the solution indeed.

</comment></comment></comment></comment></comment></comment></comment><comment><USER40> We use the Github API to retrieve public keys and teams to manage membership. Using this app to provision users on servers automatically and serve public keys. Read more here: [https://github.com/cloudposse/github-authorized- keys](https://github.com/cloudposse/github-authorized-keys)

It supports caching to etcd (incase GitHub API is unavailable).

</comment><comment><USER41> At Pivotal we're building CredHub for managing SSH keys, TLS certs, as well as passwords and arbitrary values.

It's specifically being built for particular systems to consume, and slowly generalised as it goes. The first consumer is BOSH. Typical BOSH deployments can have dozens or even hundreds of sensitive credentials to manage. Across a large company it quickly escalates into the thousands.

</comment><comment><USER42> I am the author of a PAM module called Keeto that lets you reuse all key management processes of a PKI for X.509 certificates for OpenSSH. Furthermore a layer has been added to centrally manage access permissions for OpenSSH servers. For further information see: [https://keeto.io](https://keeto.io)

</comment><comment><USER43> In our new stuff at aws we are storing public SSH keys in IAM and using a slightly modified version of [https://github.com/widdix/aws- ec2-ssh](https://github.com/widdix/aws-ec2-ssh) to authenticate / synchronise users. So far it looks like it ticks all boxes for us.

</comment><comment><USER44> The sysadmin just adds each employee's key to the servers. From reading this thread it sounds like bad practice?

<comment><USER45> Do you know how the sysadmin organizes himself? Is there a process where he gets notified of leaving engineers to remove their keys?

edit: typo

</comment></comment><comment><USER46> We've been looking into deploying Conjur ([https://www.conjur.com](https://www.conjur.com)) for the SSH part of this question at least, as they provide a rotator which doesn't require changes to our server build (i.e. no special PAM modules or the like).

</comment><comment><USER47> We don't.

As much as I hate do admit it, but I belong to the small Linux minority in my otherwise Windows only business.

<comment><USER20> We don't either, and we're mostly a Linux shop.

We only have ~10 employees. About half of them are technical staff with some access to certain systems (git, mostly). Only two users have global root access.

Vault (which was mentioned somewhere in these comments) looks interesting, but at our current scale it looks like it might be overkill.

</comment></comment><comment><USER48> keybox, quite handy.

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

</comment><comment><USER49> We use Phabricator (installed locally) to manage most things in our company. We have a 20 member team, all repositories, ssl certificates, issue tracking etc

[https://www.phacility.com/](https://www.phacility.com/)

</comment><comment><USER50> monkeysphere for personal ssh private keys stored in gpg

chef and hashicorp vault

Another neat thing to deploy into dns is sshfp records so there's almost never ssh fingerprint verification prompts for deployed hosts. Alternatively, ssh host fingerprints can be deployed to LDAP.

<comment><USER51> > _Another neat thing to deploy into dns is sshfp records_

For those wondering, [1] provides a bit of a background on SSHFP records. You can only skip host-key checking entirely if it's served with DNSSEC, although that might be easier if you're running internal DNS.

How do you have your system working? Its something I've fiddled with briefly, but ultimately gave up on for now.

[1] [https://matoski.com/article/sshfp-dns- records/](https://matoski.com/article/sshfp-dns-records/)

</comment></comment><comment><USER52> SSH keys - OpenPGP smartcards (E.G yubikeys)

SSL Certs - vault PKI (internal) AWS ACM (external)

</comment><comment><USER53> This works for me [https://github.com/grahame/sedge](https://github.com/grahame/sedge) not vault no, but better than straight .ssh/config.

</comment><comment><USER54> I have a similar problem. Keeping check of which certificates are about to expire. I built an MVP to help with that:

[https://captaincert.net/](https://captaincert.net/)

<comment><USER55> Your "Account" link is failing, and also returning a verbose debugging output for Django...

[https://captaincert.net/accounts/login/?next=/account/](https://captaincert.net/accounts/login/?next=/account/)

<comment><USER54> Thank you for taking the time to look around and report back.

These two issues are known. The next step is notifying users via e-mail of expiring certs. Then the account button will be functional.

We're validating the value proposition. I've a real need for this application, but we're trying to see if others have the same need.

Would you like to be notified when the account and reminder functionality goes live?

</comment></comment></comment><comment><USER14> Maybe we're old school, but we use autofs and nfs to mount homedirs and ssh keys on demand. Puppet handles host ssh keys across machine rebuilds. It works well, no need to replace it IMHO.

</comment><comment><USER56> SSL certs are managed by AWS certificate manager and all VMs are deployed via elastic beanstalk or exist as Lambda functions. No SSH access is enabled across any of our infrastructure.

<comment><USER57> What has your experience been with AWS Certificate Manager?

<comment><USER19> Cert manager is only for a subset of the aws offerings and I don't think it works for EC2 instances. I know it covers cloudfront, which means it covers static websites under https (CF fronted S3), Api Gateway (which is CF under the covers for the most part), so also Lambda apis. A seperate but same thing covers ELB. I'm not sure that it covers ALB yet.

That said for these services it works very well, except there are some issues with it lagging on sending confirmation emails that just make you retry.

</comment></comment></comment><comment><USER58> Another one: [https://www.rcdevs.com/products/spankey/](https://www.rcdevs.com/products/spankey/)

</comment><comment><USER59> we use the public keys from existing github accounts in our organisation. a little cronjob runs daily on all servers to fetch all keys. [http://labs.earthpeople.se/2016/04/controlling-ssh-access- wi...](http://labs.earthpeople.se/2016/04/controlling-ssh-access-with-github- organizations/)

no idea how secure this is or what implications this could have but it's easy and works well for our use case.

</comment><comment><USER60> shadowd - Secure Login Distribution service

shadowc - client of shadowd

[https://github.com/reconquest/shadowd](https://github.com/reconquest/shadowd)

[https://github.com/reconquest/shadowc](https://github.com/reconquest/shadowc)

</comment><comment><USER61> FreeIPA

</comment><comment><USER62> Dropbox and 1Password. It's, uh, not great.</comment>


Microsoft has a tough time retaining its best and brightest employees. - July 10, 2000 - <AUTHOR> http://money.cnn.com/magazines/fortune/fortune_archive/2000/07/10/283772/index.htm <comment><USER2> duhhh... If you got a brain you definitely don't want to be working for MS.</comment>


Fungus at Chernobyl absorbs nuclear radiation via radiosynthesis - <AUTHOR> https://www.technologynetworks.com/applied-sciences/videos/chernobyl-fungus-eats-nuclear-radiation-via-radiosynthesis-338464 <comment><USER2> I am skeptical that this fungus absorbs radiation significantly more than the equivalent amount of water would. The paper [1] isn't very clear about possible inaccuracies in the results and I don't understand why this experiment hasn't been repeated down on Earth. The mass attenuation coefficient of the fungus is 0.234 cm^2/g at 100MeV whereas water is 0.0166 cm^2/g according to this paper [2].

[1] [https://www.biorxiv.org/content/10.1101/2020.07.16.205534v1....](https://www.biorxiv.org/content/10.1101/2020.07.16.205534v1.full)

[2] [https://apps.dtic.mil/dtic/tr/fulltext/u2/a278139.pdf](https://apps.dtic.mil/dtic/tr/fulltext/u2/a278139.pdf)

Edit: I made a mistake in this comment, see child comment for correction.

<comment><USER2> Reading the paper again, I made a mistake in my comment above. The mass attenuation coefficient was at 10keV not 100MeV. Water has a mass attenuation coefficient of about 5cm^2/g at 10keV.

Table 1 [1] in the paper shows the true comparison with water at 100 MeV where it can be seen that there is not a large difference. On a weight basis stainless steel outperforms the fungus.

[1] [https://www.biorxiv.org/content/10.1101/2020.07.16.205534v1....](https://www.biorxiv.org/content/10.1101/2020.07.16.205534v1.full#T1)

<comment><USER3> Maybe it's because you have to ship stainless steel from Earth. Maybe the mass of the fungus can be grown from CO2 from respiration. The carbon originally coming from food, which has to be shipped up. Lots of maybes, but you know, maybe...

<comment><USER4> > Maybe the mass of the fungus can be grown from CO2 from respiration.

That's not a thing. Fixing carbon to a usable form [0] using "general biological energy source" to the carbon pool is extremely difficult (there are only four and a half, counting c3 vs c4 as a half, pathways known) and requires complex machinery to achieve.

[0] assimilating carbon dioxide in general is not difficult, even humans do it but it does not enter the general carbon pool and is effectively only transiently converted out of CO2, and net does not contribute to biomass.

<comment><USER5> Zeolites can do this. [https://en.m.wikipedia.org/wiki/Zeolite](https://en.m.wikipedia.org/wiki/Zeolite)

</comment></comment></comment></comment></comment><comment><USER6> >> Scientists are thinking of shielding astronauts and space objects with a layer of this radiation-absorbing protective fungus.

This reminds me of Adam Stone's discovery in Cordwainer Smith's _Scanners Live in Vain_ [1]:

SPOILER ALERT SPOILER ALERT SPOILER ALERT SPOILER ALERT SPOILER ALERT

 _Adam Stone has basically discovered that the radiation that causes the Great Pain of Space not only affects life, it is absorbed by it. So, surrounding yourself with other living creatures will prevent you from feeling the pain yourself. He eventually settles on building a shield out of live oysters, since they lack any central nervous system to experience pain with._

[https://tvtropes.org/pmwiki/pmwiki.php/Literature/ScannersLi...](https://tvtropes.org/pmwiki/pmwiki.php/Literature/ScannersLiveInVain)

END SPOILER ALERT

_____________

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

<comment><USER7> Interesting - how haven't I heard about that story? I immediately thought about how Rick covers his outpost in screaming Mortys so that the galactic government can't detect him. Morty pain as anti-Rick is a strange, appealing and disturbing thought... they're effectively oysters soaking up the pain of the universe.

</comment></comment><comment><USER8> There's simply no way that this type of fungus could absorb enough radiation simply because it's not dense enough.

If you want to absorb radiation you have to block it which means it has to come into contact with matter.

The only way you can do this is to have either a smaller volumetric amount of something that's dense (lead, gold, uranium, etc) or a LARGE amount of something less dense (water, concrete, etc).

If you're just talking about an organic organism, sure, it can use the radiation BUT you'd need to have a MASSIVE amount of it in terms of volume and weight.

Simply put, the fungus itself is sparse when looking at it from a subatomic perspective. Most of the radiation passes right through it.

<comment><USER9> I think the whole framing of this discussion is inappropriate. The interesting thing about this fungus is that it can use the radiation as an energy source to sustain life. The fact that we can't use the fungus as some kind of miracle lightweight radiation shield is missing the point.

Here we have a life form that has adapted to make use of a very unusual (on earth's surface, anyway) energy source. That should not be taken for granted. It's an amazing demonstration of the adaptability of life. It also warrants a deeper investigation into how this ability works and how it came about by evolutionary processes.

<comment><USER10> Agreed, lead blocks radiation quite well. I don't know why anyone would care about that property in a fungus. What is fascinating is that life evolved a novel energy pathway here, this is like photosynthesis but with gamma radiation. I'd love to know more about it.

<comment><USER11> > I don't know why anyone would care about that property in a fungus.

My thought would be the possibility of it being cheaper to produce than lead, possible to farm it. That could mean a more lightweight material for insulated suits and stuff along those lines.

<comment><USER12> It's unlikely to be much use for shielding for reasons the top comment explains.

The real reason to care is because it's an interesting - almost textbook - example of evolution operating in a challenging environment.

<comment><USER11> > It's unlikely to be much use for shielding for reasons the top comment > explains.

I did read the comment - I know it can't be used for that. I only said that as a more generic response to "I don't know why anyone would care" about this property being found in a fungus - a statement which seemed to lack any imagination imo.

> The real reason to care is because it's an interesting - almost textbook - > example of evolution operating in a challenging environment.

This is true! Good point.

</comment></comment></comment></comment></comment></comment><comment><USER13> What's astonishing is not the ability to block radiation (after all, biology will always defer to chemistry first, and physics second—there's no way biology can come up with something that exceeds the capabilities of its substrates) but rather life's way of rapidly adapting to make use of whichever energy source it can find to eke out an energy budget to thrive on.

P.S. Who else heard Dr Ian Malcom say " _Life... finds a way_ " in their head?

<comment><USER14> On the contrary, I'd argue that most "life" (in the sense of our Eucledian definition of it) relies on exceeding the capabilities of its substrates via emergent properties - at least from the perspective of our current infantile understanding of the universe. Photosynthesis is so efficient because electrons jump multi-molecule gaps due to quantum effects, as we've found only a few years ago. The theory that most biological brains heavily leverage quantum processes is rapidly gaining ground as well - we simply lack the intelligence and processing capacity to design anything like it, since compared to our current computational abilities, millions of years worth of entropy may as well be an infinite amount.

Reductionism fails as completely as it does hilariously when it comes to systems where the whole does indeed exceed the sum of its parts due to laws of the universe we have yet to grasp. A much more sane approach is to think of the matter something is comprised of as nothing more than a filter/transformer for the entropy and environment it exists within. Life routinely harnesses entropy whereas our current technology is so ass backwards it does little but struggle against it (dendrites in batteries, for example). What science considers to be degradation or wear and tear is the very process living things rely on to exist - let that sink in.

<comment><USER15> > _Photosynthesis is so efficient because electrons jump multi-molecule gaps > due to quantum effects, as we've found only a few years ago._

That's true, but is a short lived and very local effect.

> _The theory that most biological brains heavily leverage quantum processes > is rapidly gaining ground as well_ [...]

No, there is only some handwaving. It's impossible to keep the quantum coherence in a system that weight 1.5kg at 310K.

<comment><USER13> > _That's true, but only local and short lived and very local effect._

And critically for my argument, photosynthesis works (less efficiently) even when this effect is absent. It's not a mystery ingredient that makes the whole thing work.

</comment></comment></comment></comment><comment><USER16> For a nonvideo source of info on this:

[https://www.biorxiv.org/content/10.1101/2020.07.16.205534v1](https://www.biorxiv.org/content/10.1101/2020.07.16.205534v1)

<comment><USER17> And for a layman digestible version [https://www.scientificamerican.com/article/radiation- helps-f...](https://www.scientificamerican.com/article/radiation-helps-fungi- grow/) (from 2007)

<comment><USER18> > digestible version

Ooh, was wondering if the fungi were good to eat /s

</comment></comment></comment><comment><USER19> Interestingly enough this resilience of fungus, and even mold [0], to radiation has been a bit of a problem on the ISS [1].

[0] [https://www.sciencedaily.com/releases/2019/06/190627121252.h...](https://www.sciencedaily.com/releases/2019/06/190627121252.htm)

[1] [https://www.colorado.edu/aerospace/2019/11/01/mold-space- nas...](https://www.colorado.edu/aerospace/2019/11/01/mold-space-nasa-grant- study-space-station-fungus)

</comment><comment><USER20> Protomolecule, not good.

<comment><USER21> And they just found an ocean on Ceres. Is that in the book?

<comment><USER20> No, but the existence of water on Ceres was retconned in the show, now it's again not accurate since while we discovered it has water between the book and the show we didn't knew that it had that much water.

<comment><USER22> That is hilarious.

</comment></comment></comment></comment><comment><USER23> Ok, but:

1\. Is it doable to maintain a 21-cm thick layer of fungus, at all, let alone in space, for a prolonged period of time?

2\. Wouldn't it be easier/simpler to replicate this radio-synthesis mechanism in a non-organic setting?

<comment><USER20> > Is it doable to maintain a 21-cm thick layer of fungus, at all, let alone in > space, for a prolonged period of time?

Building a living wall isn't hard, I have one with moss in my flat it does wonders for air quality (even if not actual one just the smell/perception is enough), fungus is easy to grow - feed it shit and keep it in the dark does work.

> Wouldn't it be easier/simpler to replicate this radio-synthesis mechanism in > a non-organic setting?

This is pretty much one the hardest things to do in science today, replicating complex biological processes in a non-biological manner.

Insulin while being the first human protein to be synthesized today is still created using biotechnology by using bacteria to manufacture it simply because of how difficult it is to synthesize proteins.

<comment><USER24> >Insulin while being the first human protein to be synthesized today is still created using biotechnology by using bacteria to manufacture it

An interesting factoid I ran across is where citric acid comes from. I had noticed inexpensive "lemon iced tea" had citric acid listed as an ingredient, and vaguely thought perhaps it's called that just because the citrus source is heavily processed.

Turns out, while citric acid was originally produced on an industrial scale from fruit, circa WWI, due to shortages, Pfizer started making it using microbes, specifically black mold.

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

<comment><USER20> Citric acid is used as a preservative and regulator in food so it will be added even if the ingredients contain it naturally simply for consistency with flavored drinks it's even more common to basically break everything down to their base chemical ingredients and then add them back in at the exact amounts.

Overall pretty much anything that is naturally produced in plants and animals will already be the most "efficient" way of doing that both due to natural selection and both due to the fact that the process is easily scalable, heck we still make rubber from the rubber tree because nothing else comes close to that.

Chemistry is fucking hard and we don't have anything close to the molecular machinery that living organisms have to assemble complex molecules.

Chemistry in living things is like a robotic assembly line in a factory, chemistry in manufacturing is throw stuff into a reaction chamber and stir it until something happens.

</comment></comment></comment></comment><comment><USER25> It used melanin to convert radiation to energy.

Damn.

We are so much alike.

Its kinda funny every living organism in the earth is kinda related to us humans and we to them.

Earth is just a biosphere.

<comment><USER26> Well, we are as much alike as our consciousness/brain can manage to find a pattern for. The consciousness compresses reality by finding patterns. As long as we are able to understand some phenomenon, there will always be a pattern that this understanding is serviced by, and we will be able to see some relation between two different things through that pattern. In that sense, everything we perceive will be connected in one way or another. In that sense, everything is "one".

But does that say anything about the physical world, or rather about our own brains, our consciousness and how it works? A matter of perspective. And of how you define "real".

<comment><USER27> Our ability to leverage those patterns underlies the success of our species, so I would say they are probably quite real.

</comment></comment></comment><comment><USER28> Is the fungus edible?

<comment><USER29> Here's the real question. Or, can it be made edible? Cultivating something like this on Mars out in the open makes more sense than growing potatoes indoors.

<comment><USER20> Even if it's not directly edible it can be a source of amino acids and proteins that could be then processed into something edible or be a source of food for other things that provide better nutritional value to humans like yeast.

The question is it going to be more cost effective than hydroponics.

</comment></comment></comment><comment><USER30> There's a movie plot that's fairly adjacent to this and even has pretty good ratings: [https://m.imdb.com/title/tt7425298/](https://m.imdb.com/title/tt7425298/)

</comment><comment><USER31> I'm actually surprised this cheaply written two paragraph article with no references is being discussed here.

</comment><comment><USER32> This is one of the most nature finds a way things I've ever seen

<comment><USER33> It shouldn't be too surprising since the universe and earth have been and remain naturally filled with radiation for billions of years. The heat that keeps magma warm in the earth comes 50% from radioactive decay of uranium and its daughters. Life today is based on plants and microorganisms absorbing radiation emanating from a giant nuclear reactor in the sky.

This is just a twist on how it's always been done.

</comment></comment><comment><USER34> Two words:

Mars Mission.

</comment><comment><USER35> It's the Access Virus Ti3 Synthesizer

<comment><USER36> Ah so that's why Access basically dropped off the face of the Earth, they were trapped in the sarcophagus

</comment></comment><comment><USER37> Is not it how Godzilla works?

</comment><comment><USER38> Why are so many videos using computer generated voice overs?

I find find it a real turn off.

<comment><USER39> The videos are written, produced, generated and posted by autonomous GPT-3 bots. The first time any human became aware of this video was at the same time you became aware of it, by following the link from HN.

Disclosure: This comment was written by an autonomous GPT-3 bot.

<comment><USER40> Are there any public ally accessible gpt-3 AIs yet?

<comment><USER39> What do you think is the difference between the way GPT-3 works and human beings work?

<comment><USER41> Everything.

</comment></comment></comment></comment></comment><comment><USER42> You know where this leads?

The blob. A 1959s sci fi horror movie in which a radioactive fungus takes over the world.

If not today then very soon.

<comment><USER43> I think this speaks to a common fear of technology taking over and incidentally/consequentially killing everyone. Like the Terminator series, and many others as well. IRL you might recall the torrents of fearful articles and posts about the world being consumed by a human-triggered black hole when they started building the massive colliders. And every few years, someone predicts AI will do us in. And HAARP killing us with bad weather and earthquakes. So many examples abound.</comment></comment>


Earth's eighth persistent lava lake found on remote sub-Antarctic island - sahin-boydas https://newatlas.com/eighth-persistent-lava-lake-found-mount-michael/60469/ <comment><AUTHOR> There's a huge amount of open data being made available by the Sentinel program. High-quality imagery is available at 2-3 day periods of nearly every landmass on earth, for free!

No need to take the article's word for it, here's an IR satellite view of the lava in question: [https://apps.sentinel-hub.com/eo- browser/?lat=-57.79698&lng=...](https://apps.sentinel-hub.com/eo- browser/?lat=-57.79698&lng=-26.48563&zoom=13&time=2018-03-29&preset=6-SWIR&datasource=Sentinel-2%20L1C)

You can do all sorts of things with this data. Excited to see what the maker community will figure out with it.

<comment><USER2> What exactly is free? When I create an account it appears to be a paid api?

<comment><USER3> If you'd prefer: [https://scihub.copernicus.eu/dhus/](https://scihub.copernicus.eu/dhus/) or [https://registry.opendata.aws/sentinel-2/](https://registry.opendata.aws/sentinel-2/)

[https://www.sentinel-hub.com/](https://www.sentinel-hub.com/) is more for visualizing and playing around with the data in a web app.

This study also used historical ASTER data (nice selection of thermal bands), which is available at [https://asterweb.jpl.nasa.gov/data.asp](https://asterweb.jpl.nasa.gov/data.asp)

</comment></comment></comment><comment><USER4> >The seven known persistent lava lakes are Mount Nyiragongo (DR Congo), Erta Ale (Ethiopia), Mount Erebus (Antarctica), Ambrym and Mount Yasur (Vanuatu), Kilauea (Hawaii) and Masaya (Nicaragua).

I've been to Masaya in Nicaragua twice but didn't know it was one of only 7 with a free flowing lake. The cabs park facing the exit and keep their engines running. The place smells like fireworks and the second time we went it was really active.

As a side note, I can reccommend going to Guanacaste in Costa Rica and crossing the no mans land border to Nicaragua for a fun experience. Granda, Nicaragua is a wonderful town near the Volcano. Be on alert Nicaragua is not safe especially compared to Costa Rica.

Spend some time in Guanacaste and visit some towns. Experience the Pura Vida lifestyle!

<comment><USER5> I used to work at a large industrial company where at a few of the plants you were expected to carefully park your car parking away from the plant just in case a quick exit was required.

</comment></comment><comment><USER6> Hard to believe there is a line of people trying to bag Mt Everest and possibly die trying while there remain places like this that have never seen a human before. Seems like both trips would require substantial financial resources and 3rd party outfitters who would do the planning and heavy lifting for you.

What's the fun in doing something that many people have done versus being the first to gaze into one of only eight known persistent lava lakes?

</comment><comment><USER7> Something about a lake on a hidden island burried deep beneath the ice is really poetic.

Perfect setting for a children's book. Or a bond villain.

<comment><USER8> Or an HP Lovecraft story: [http://www.hplovecraft.com/writings/texts/fiction/mm.aspx](http://www.hplovecraft.com/writings/texts/fiction/mm.aspx)

<comment><USER9> Which is set at Ross Island iirc, with Mt Erebus (one of the other lava lake homes) and Mt Terror.

</comment></comment></comment><comment><USER10> The list: [https://en.wikipedia.org/wiki/Lava_lake](https://en.wikipedia.org/wiki/Lava_lake)

Also, in geology a "lava lake" can also mean a water lake created by a lava flow, the cooled lava flow acting as a dam. Many of these exist in mountain valleys. They are dangerous as eventually the lava dams/plugs break down, releasing the lake.</comment>


Halo was written with a Lisp dialect called blamscript (2014) - <AUTHOR> https://opencarnage.net/index.php?/topic/4156-scripting-guide/ <comment><USER2> Nb. "Written" as in screenwriting, not "written" as in implementing the game engine itself.

<comment><USER3> The game engine, no. But the game logic, the code that makes the game engine do the things that make what it's doing Halo as opposed to some-other-game-on- that-engine, _is_ written in blamscript.

"Screenwriting" to me would sort-of imply that this was all just for human consumption during planning, and later implemented in something else.

<comment><USER2> I first meant to use its synonym, "scriptwriting", but that one of course has a somewhat diverged meaning in the computer world. But actually in interactive fiction the meanings beautifully converge again.

</comment></comment></comment><comment><USER4> Meanwhile, Half-Life/GoldSrc/Source scripting means placing "entities" in the world space and connecting them. Like a very messy form of visual/block-based programming. On many maps with a lot of scripts there are separate, inaccessible rooms where the mapper stashed all the entities, because placing them where their triggers / effects happen would make editing the level geometry quite difficult.

</comment><comment><USER5> We had this at another Sony studio I worked at. I asked why. The person who write it said writing the interpeter/compiler for lisp is quite easy. As is understanding the byte code. They did it as an intern project in about 3 months.

It wasn't the most friendly language and ended up with many c like additions. At the end of the day it was all about cost to work on and efficiency of using.

Many would have been super happy to slap a "real" language in there but they would have spent years putting the real time esque controls they needed on it. Not the normal real time but bound to game engine execution phases which is different. It also needed to very easily work with cpp and the art tree.

I doubt any of the fp folks here would have loved the language and would have spent much of their kvetching time on why it wasn't more lispy and therefore more productive.

Thing is most of what it needed to do was atomic thread and mutex/semaphore joins, branching parallel green threads and parallel wait conditions and goto. The scripts were all written by non programmers and when slow converted to c++ which was about 20kx faster.

</comment><comment><USER6> The title is misleading. Blamscript is only really used in the interactive consoles of the game and its editing kit, and the scripting of encounters, cinematics, and triggers in the campaign[1].

Modders also use it in custom multiplayer maps for things like doors. Since Halo PC's netcode doesn't synchronize the state of such scenery to players, some map makers came up with the clever idea of hidden "biped crusher" rooms which repeatedly dropped vehicles on NPCs depending on the state of doors. Their respawns _were_ synchronized across the network, so this system could be used to trigger doors opening/closing on clients.

[1]: [https://github.com/Dwood15/HaloScripts](https://github.com/Dwood15/HaloScripts)

</comment><comment><USER7> >Any sufficiently complicated program contains an ad-hoc, informally- specified, bug-ridden, slow implementation of half of Common Lisp

I find this quote especially true in games.

<comment><USER8> >Any sufficiently complicated program contains an ad-hoc, informally- specified, bug-ridden, slow implementation of half of Common Lisp

I call BS on that one. I have worked on very large scale C++ software (games etc.) and have never seen or needed anything like Common Lisp to get the job done. And I actually know how to program in Common Lisp (and Scheme) and have implemented my own Lisp variations for fun.

<comment><USER9> > seen or needed anything like Common Lisp

That's not the point. It's not half a Common Lisp, but half of (the features) of Common Lisp: code generation/macros, runtime scripting language, loading of code, interactive error handling, a console to interact with the program, dynamic objects, exchanging data in a textual format, a configuration language, etc. etc

</comment></comment></comment><comment><USER10> Meanwhile, Halo 2600 was written in Atari BASIC (probably) [https://atariage.com/store/index.php?l=product_detail&p=998](https://atariage.com/store/index.php?l=product_detail&p=998)

<comment><USER11> The 2600 didn't have BASIC. Not viable with only 128 bytes of RAM.

It was written in assembler: [http://atariage.com/forums/topic/185693-halo-2600-source/](http://atariage.com/forums/topic/185693-halo-2600-source/)

<comment><USER12> The 2600 actually did have a BASIC interpreter cartridge available. It was both an incredible engineering feat (interpreter and IDE in 4K ROM and 64 bytes of RAM) and completely useless (because your program only had the other 64 bytes of RAM).

<comment><USER11> Fair enough, looks like viability (or being "totally useless") didn't stop people back then!

<comment><USER13> I had the cartridge. It was indeed useless.

</comment></comment></comment></comment></comment><comment><USER14> I believe that Naughty Dog also scripts game logic in their own Lisp dialect.

<comment><USER15> Other than the games they wrote entirely in GOAL, all of their PS3+ games use a series of lispy DSLs implemented in Racket that get compiled to C and C++ for defining data to be loaded in the game and dependencies between these data, light scripting, dialogues, stuff like that.

There's a talk by one of the engine devs at RacketCon from a few years ago on youtube about how they use these DSLs and how they came to be: [https://youtube.com/watch?v=oSmqbnhHp1c](https://youtube.com/watch?v=oSmqbnhHp1c)

</comment></comment><comment><USER16> This seems like a pretty typical pattern: Back when I did games (mid 90's), it was pretty essential to come up with a tight game engine with components that could be driver from a script: That way someone in design/production could focus on making things interesting and fun without needing to mess with a compiler.

In our case, we used tcl, but embeddable lisp would have worked too.

</comment><comment><USER17> Recently I learned that the AI for Age of Empires was also written in a Lisp- like dialect. Interesting.

</comment><comment><USER18> I cant help but think that a lualisp merge would be the ideal script addition for all most any engine.

<comment><USER19> Have you seen Fennel? [https://fennel-lang.org/](https://fennel-lang.org/)

</comment></comment><comment><USER20> Don't most engines offer this by default?

I know Unreal Tournament 99 and especially 2004 was very extensible because they offered uScript (very C++ like) which made it easy to make all sorts of mutators and mods. They even had a specific feature for making in-game cutscenes (I thought it was named Kino but apparently not).

I don't have much knowledge of Source but afaik they also offered something similar.</comment>


Unity creates new open source tool for architects - <AUTHOR> https://archpaper.com/2019/10/unity-reflect-open-source-tool/ <comment><USER2> We made a foray into designing and building a brand new house and let me tell you, my fellow HNers, the state of affairs with the design part is ABYSMAL, even in a reasonably modern architect firm.

Basically you first design, for look and feel, then you calculate technical details, then you build. Or rather the architect does all three, but you would normally want to "chip in" during the design phase - change the layout, move things around, etc. That's where things get bloody awful.

I wasn't expecting full VR tours of the place (though it is doable [1]), but I did expect to be able to walk through the place in 3D and see how it will look like in the winter morning and summer afternoon. Hell no. What are you smoking?

Floor plans. Planimetric facades. Roll your eyes to the ceiling and imagine. 3D renders that looks like from the early 00s take hours to produce, so they aren't done often. That's _still_ renders, mind you. 3D walk-abouts are possible, but they look like butt and they are viewed as the final step of the process, when everything has been done and done.

And this is with firms where principles are in their 40s and generally computer literate. It just seems that the industry is _very_ conservative with its tooling choices AND these tools are also ridiculously expensive, further stifling any desire to switch. So they are stuck with using technical design software like ArchiCAD (good for laying out piping, calculating stress, air flow, etc.) for visual design. And the resulting process is sooooo slow, small changes and iterations take hours if not days to complete, so it takes weeks to converge to a general design of the house.

Painful, painful process. Ugh. Caveat emptor.

[1] [https://www.benoitdereau.com/](https://www.benoitdereau.com/)

<comment><USER3> I designed/built my own house too[1], giving sketches to an architect and working with him. Some major takeaways for others who have yet to build:

* No one will care about your project as much as you and this includes the architect :(

* Few(???) architects and zero builders seem to understand light/wind/circulation like people apparently intuitively did 200 years ago. You might be better off with the average curious engineer designing the house than the average architect. Everyone is astonishingly lazy, even mansions around here have terrible light/circulation problems.

* VR is no match for IRL! It's best to actually get a measuring tape and stake out the dimensions of the house on the land. An even better, get chalk and go to a big flat parking lot and draw out the entire floor plan (compass-correct) and walk inside, looking at the sun (keeping in mind what season). This worked well for me, I should have done more of it. I didn't build a porch though, which is where getting more exacting summer/winter sun angles would matter.

I actually got the chalk idea from the excellent movie The Founder, where the creators of McDonalds try out different kitchen workflow models this way.

* Draw and sketch a huge amount. Sketch facades freeform, with the ruler, etc. The fidgeting will help you discover things.

* Read a bunch of books about old houses. Maybe most approachably: Get Your House Right and A Pattern Language

* Get a pinterest board for you + spouse. We used ours heavily and it was great for keeping track of interior detail decisions.

[1] It's a fundamentally simple house, basically a box that maximizes light and airflow and wood burning heat, so I probably had a much easier task than you. Some of the original drawings: [https://twitter.com/simonsarris/status/1183150002002112512](https://twitter.com/simonsarris/status/1183150002002112512)

<comment><USER4> Drawing your plan on the floor sounds a good idea, but isn't there an effect where outdoor surfaces look much smaller than the same surface indoor? How do you account for that?

<comment><USER3> Actually that seemed to be a big problem of computer models to me too. When I was a kid I modeled the houses I was living in using Counterstrike Source's Hammer editor, and they always felt SO SMALL to walk around "inside" when they were correct to scale, even though one of them was a fairly big 1800's house. So either way you simulate things you have funny perceptions.

And during construction you are kind of thrown about by the perception of the size. When framing is done, it feels huge. Once all the plaster is on the walls, it feels extremely "small" at first because you were so used to the big openness of the frame, then finally as more finishes are applied it just feels correct at last.

It's hard to describe exactly what feeling happens. But suffice to say it's never easy to get "right" feeling simulations of a structure until you put up literal walls.

For this reason, if you want to build a 5x7 bathroom or 11x13 bedroom or whatever, the best possible thing you can do is find one that already exists. Or find a 11x11 room or something and try to imagine it with 2 more feet. Then you can carry these mental rooms around with you.

At least, that's what I did a lot of.

<comment><USER5> > _and they always felt SO SMALL to walk around "inside" when they were > correct to scale, even though one of them was a fairly big 1800's house._

Is that due to the Field of View being lower in games compared to real life? When you increase the FoV in games then things further away look smaller.

<comment><USER6> You also move incredibly, absurdly fast. Play half-life 2 in VR and you will get very motion sick, but you will also realize how insanely fast you are moving.

</comment></comment></comment></comment></comment></comment><comment><USER7> Unity is in a continual state of building out "shiny new toys"; libraries and modules and sibling software that work as intended for 1 or 2 release cycles before breaking and being discarded. I've seen this time and again with Unity and I think it will hurt their stock going forward as they try to convince more industries to use their tools.

Just in the past two years I've seen them develop, hype, and then quietly drop: their VR editor, AR preview tool, Octane Renderer, Substance integration, UNet, ML integration.

It's obvious they have an incredibly difficult time managing their tools when their platform is fundamentally shattered between multiple releases, versions, render pipelines, and now DOTS vs normal workflow. And it's basically impossible for other companies to manage Unity SDKs with a ground that moves that much.

<comment><USER8> _And it 's basically impossible for other companies to manage Unity SDKs with a ground that moves that much. _

Many successful video game companies use Unity to make their games. It's basically impossible to use except compared to the alternatives, which are just as impossible or more so.

<comment><USER9> It's pretty impossible to make an sdk or plugin that's runs on every version of Unity. I haven't seen it, anyway.

Studios have the same issue. They pick a version to ship with and work around whatever known bugs there are. Upgrading is a huge event and it's never painless.

</comment></comment></comment><comment><USER10> There is current a war between UE4/Epic and Unity in the AEC market (Architecture, Engineering and Construction.) You need to understand this in that context.

[https://www.unrealengine.com/en- US/feed/all/AEC](https://www.unrealengine.com/en-US/feed/all/AEC)

[https://unity.com/solutions/architecture-engineering- constru...](https://unity.com/solutions/architecture-engineering-construction)

The first move happened with Autodesk releasing Stringray and tying it tightly to 3DS Max. Stingray was not super popular (from what I hear) but its business motivations were real -- there was real-time visualization needs in AEC. UE4 and Unity then started to build out in this area.

I haven't actually seen numbers to back up that there is a viable market here, but there is belief there is a market by all involved parties (Autodesk with Stingray, Epic and Unity.)

<comment><USER11> also great desire by infrastructure investors since they often also have to deal with what comes out of the architecture company as design concepts

</comment></comment><comment><USER12> Where did the author get the info that this is open source? I haven't seen Unity state anywhere that this tool we be open source.

I could see them giving source code to people who pay for some enterprise license, but I doubt it will be open source. At least not the part that extracts data from BIM software.

<comment><USER13> Haven't found any price/release model information at all either.

</comment></comment><comment><USER14> Wondering how many commercial products have been jeopardised by this freeware sponsored by a corporation, and how many jobs have been put at risk?

<comment><USER15> Pretty much all commercial archviz oriented 3D rendering software (where I've spent the last 10 years) continues to feel the heat from such efforts, including Blender and all the support it gets these days from AMD and Nvidia.

Don't understand why you're getting so harshly downvoted.

<comment><USER14> I dont really understand it either. Whats is happening is that some giants give out "free" software, kill their competition and then monetise in other ways (personal data, or cross selling other products), while in some cases they make use of open source products to sell services. Either way the only win is a lousy 9-5 job for programmers who write the freeware, or loss of jobs for those developed the code commercially. Basically open source for non mission critical software is digging one's own grave.</comment></comment></comment>


Can't Stop Workin' - <AUTHOR> https://www.youtube.com/watch?v=MM0UogwGID4 <comment><AUTHOR> > Well I can't stop workin' cause I like to work when nothing else is going on

> It's bad for the body but it's good for the soul

> Might even keep you breathing when you lose control

> Can't stop workin'

> Can't stop workin'

> Where have I been for all these years

> I thought I knew you better

> Come down to the edge of the sea today

> And write a letter, there in the sand

> Forgiveness

> Forgiveness

> I can't stop workin' cause I like to work

> When nothing else is going on

> It's bad for the body but it's good for the soul

> Might even keep me breathing when I lose control

> Can't stop workin'

> Can't stop workin'

> I might take some time off

> I can't stop workin'

> Might take time off

> For forgiveness

> Forgiveness

> Can't stop workin'

> Can't stop workin</comment>


Dejavu – Web UI for Elasticsearch - <AUTHOR> https://github.com/appbaseio/dejavu <comment><USER3> Ok so maybe someone can tell me what I (we) did wrong at my job we tried using the ELK stack, and it's probably still running but it is such a resource hog. I do not understand why they built Elasticsearch. I've read in a couple places you need like 32GB of RAM[0] just to run this thing to do queries, and having crashed Kibana / Elasticsearch a dozen times I believe it's designed poorly. I had hoped I could drop in MongoDB instead, but saw no indication of this being a fluid change. How many resources are any of you allocating towards your 'ELK' stack (I say 'ELK' cause now they have other software in the mix)?

Needless to say, I rather build my own solution for logging instead using a database that's not in-house having experienced all of this.

[0]: [https://www.elastic.co/guide/en/elasticsearch/guide/current/...](https://www.elastic.co/guide/en/elasticsearch/guide/current/hardware.html)

Oh wow now it says 64GB of ram is the sweet spot.... What the heck is this thing doing that couldn't of been accomplished with MongoDB or PostgreSQL? I've got busier data sets that don't need 16GB of RAM, and yes we pound the database with logs of sorts and query in all sorts of ways and still I don't get it... I wouldn't recommend this stack to a friend unless they've got plenty of hardware to spare.

<comment><USER4> > tell me what I (we) did wrong at my job we tried using the ELK stack, and > it's probably still running but it is such a resource hog.

Part of the problem is what it's promoted for. It's a great drop-in, horizontally-scalable, full-text search engine, that's inexplicably become popular for log ingestion and analysis.

To those ends, I hate it, I hate every bit of it, from the atrocious JSON- based query DSL (seriously thought it was a joke at first) to its unpredictable timeouts, shard storms, mapping conflicts and other problems at scale. Elementary SQL concepts aren't possible ('select someone_elses_poorly_named_key as first_name', nope, you gotta reindex). High- cardinality aggregations fail in spectacular ways. High-anything aggregations fail in spectacular ways. The scroll API returns results unordered. There's no way to properly spec your cluster; the docs explicitly take a trial-and-error approach to design.

It's not just you. Elasticsearch does me no favors with the task of log analysis. I'd sooner normalize and grep a pile of gzipped log files than keep dealing with this mess, but this is the second job I've been at that's built their logging infrastructure on top of it.

> I do not understand why they built Elasticsearch.

"You know, for search."

It's great for searching proper text. Documents, comments, blog posts, etc.

> I've read in a couple places you need like 32GB of RAM[0] just to run this > thing to do queries, and having crashed Kibana / Elasticsearch a dozen times > I believe it's designed poorly.

You don't necessarily need 32GB to do anything. The required heap size scales with your intended workload, but it's not like you can do a back-of-napkin calculation to figure out the relation. I run a 1GB instance for development.

It uses the memory to do a lot of caching so the queries you throw it are lightning fast. Mongo does something similar (but crappier IMO) with its concept of working sets.

<comment><USER5> I've deployed it a few times. In some cases it randomly spikes to 100% cpu usage until you restart it.

Is there a way to know how much RAM you are going to need for your dataset? I think I was using it for looking up restaurant names from a database of 100,000 and I wanted to factor in misspellings and partial matches.

<comment><USER6> Not really, depends on the size of the dataset and the complexity of the operations - when did you use it? Sounds like you were on a dodgy build or set up

I think Elastisearches policy on sizing is pay us or a partner to have a look and give you a guesstimate, which is pretty standard

</comment></comment></comment></comment><comment><USER7> > dejavu is the missing web UI for Elasticsearch. Existing web UIs leave much > to be desired or are built with server side page rendering techniques (I am > looking at you, Kibana).

When did server-side rendering become a bad thing? It tends to be much faster. Kibana feels slow to me, and that's because of the JavaScript it does have.

<comment><USER8> I don't agree that server-side rendering tends to be faster. I think it largely depends on the use case. I am going to use the word "responsive" rather than "faster" since it is more descriptive of how a UI feels. If you don't need to go to the server, performing an action will be more responsive if done client-side in general. If you do have to go to the server, then you are at the mercy of the network. However the less data transferred, the better in terms of responsiveness. In many cases, asking the server for JSON rather than HTML/JS/CSS is more responsive. Render time is also a factor. If client render time is slower than network/server time, then rendering on the server is more responsive in general.

<comment><USER9> I agree that client-side UI modifications tend to be faster if no server round-trip is necessary.

Rendering HTML will, however, tend to be faster than having a client parse and interpret JSON, and then manipulate the (shadow) DOM accordingly.

And then it always felt wrong to me that I have to force countless clients to do the exact same view transformations, which could have been done once, on the server, and cached.

For a new project, I'm prerendering HTML fragments via AJAX with IntercoolerJS - it's a pleasure to work with, and the developer and user get both the best experience of those two worlds: A dynamic, blazingly fast UI that feels like an SPA, but degrades gracefully even for the Emacs-w3m user and Googlebot.

I also found it's really worth it to move servers or reverse proxies closer to the client - independent of client/server rendering. Users shouldn't wait more than 200ms for an Ajax request to finish.

</comment></comment></comment><comment><USER10> I've been using elasticsearch-head [1] for four years now and it seems it has more features than dejavu? Specially the node/shard visualisation.

[1] [https://github.com/mobz/elasticsearch- head](https://github.com/mobz/elasticsearch-head)

<comment><AUTHOR> Yes, we don't focus on admin related features atm. Elasticsearch head or Elasticsearch HQ [1] are good options for doing this.

Fun fact: We actually started out with elasticsearch-head, but realized it was really hard to hack on (this was ~2y ago) and decided to create Dejavu. Imo, the key difference is we have focused a lot on how to get the data indexed (mappings, bring your CSV/JSON files) and have the raw data visualized (via UI based filters or DSL queries).

[1] [https://github.com/ElasticHQ/elasticsearch- HQ](https://github.com/ElasticHQ/elasticsearch-HQ)

</comment></comment><comment><USER11> > dejavu is the missing web UI for Elasticsearch. Existing web UIs leave much > to be desired or are built with server side page rendering techniques (I am > looking at you, Kibana).

So less so "missing" UI and more "outdated" UI.

I personally like Kibana but I am happy to see some innovation in the space. Competition can only help.

I love that this can be run as a Docker container or as a Chrome extension. With the quick setup I'll probably give it a try. It looks nice.

<comment><USER12> Jesus, since when is server side rendering of server side data supposedly an anti-pattern?

</comment></comment><comment><USER13> One thing to note for anyone using elasticsearch in production, if you setup your own cluster. It might be wise to put nginx as a reverse proxy. By just doing that we reduced the amount of crashes when the server got hammered. Since nginx will help with request queueing

</comment><comment><USER14> >built with server side page rendering techniques (I am looking at you, Kibana).

I'm not sure if this is actually accurate:

1\. [https://github.com/elastic/kibana/search?utf8=&q=React](https://github.com/elastic/kibana/search?utf8=&q=React)

2\. [https://elastic.github.io/eui](https://elastic.github.io/eui)

<comment><AUTHOR> I will have to relook at this - the comment is from a year ago when they weren't using React.

On a cursory look, it still seems to use a Node.JS based server [1]. One of the key side effects of needing a server is that there is a more involved distribution + installation process. You just can't run it on a static server like github pages or as a browser extension.

[1] [https://github.com/elastic/kibana/search?utf8=%E2%9C%93&q=ha...](https://github.com/elastic/kibana/search?utf8=%E2%9C%93&q=hapi&type=)

</comment></comment><comment><USER15> I've stumbled on a couple of bugs with Dejavu, and wanted to see if I can submit a bug fix. And, well, submit and fix them I can, but boy oh boy is the code terrible. Only use this on your own risk and on a throwaway ES instance, as the code quality in this case kind of implies there's major risk of screwing things up.

</comment><comment><USER16> > dejavu uses a websockets based API and subscribes for data changes for the > current filtered view. For this to work, the Elasticsearch server needs to > support a websockets based publish API

Is websockets a requirement just for the real-time updates, or for the entire UI?

<comment><USER17> Why do you ask? Are you planning on accessing an elasticSearch admin tool from a browser that doesn't have web socket support?

<comment><USER18> There's no open source websockets-based ES publish api, you have to use the closed source private service made by the company which created this project.

</comment></comment></comment><comment><USER19> Is there anything similar for Solr??

<comment><AUTHOR> Not that I know of, but given the similarities in the underlying APIs - <USER2> would be open to supporting this and help guide the implementation if someone is interested in sending a PR. Feel free to file an issue - [https://github.com/appbaseio/dejavu/issues/](https://github.com/appbaseio/dejavu/issues/).

</comment></comment><comment><USER20> I thought for sure that you were going to be a PDF alternative, but then I remembered the spelling is different.

<comment><USER21> Yeah, when I looked at the title, I was confident I've seen that before, but I hadn't.

You might say I had a case of, ah, never mind, bad pun.

On a serious note, I understand there's only a finite number of words, but a limitless number of software project - and yet surely there are still enough names that aren't used for something well-known and widely used. Yes, the DJVU and Dejavu are spelled differently, but it is the same word.</comment></comment>


Codecademy Releases Its First Educational App, a.k.a. My New Subway Time Killer - <AUTHOR> http://techcrunch.com/2013/12/09/codecademy-releases-its-first-educational-app-a-k-a-my-new-subway-time-killer/

<comment><USER2> I like to comment on all Codecademy posts this fact: I learned to code on Codecademy for 3 months, then 3 months of trial and error projects on my own. 18 months after writing my first line of code, I run my own successful consulting business and have launched web and mobile products with over a million users and over 100,000 downloads.

I've been lucky and surrounded by great people, but y'all if you're non technical, make the pledge to end that today. You can. I did. There's no downside.

<comment><USER3> "A journey of 1000 miles starts with a step."

</comment></comment><comment><USER4> Direct link to app: [https://itunes.apple.com/us/app/codecademy-hour-of- code/id76...](https://itunes.apple.com/us/app/codecademy-hour-of- code/id762950096?mt=8)

<comment><USER5> Thanks. Wish this practice was followed more. Direct link should be easily accessible if not first.

</comment></comment><comment><USER6> I need this on Android. Now. Please :c

<comment><USER7> While you're waiting, you could look at App](http://appinventor.mit.edu">App) Inventor; it's also targeted at beginners, but lets you build at least simple apps.

</comment></comment><comment><USER8> grrrr . "I can haz android" plz

<comment><USER9> From the article: "The goal is to create a product that is platform-agnostic, Sims said, citing Duolingo as an ed-tech company that has succeeded in that regard."

I'm sure it's coming.</comment></comment>


Ask HN: How To Approach Ethical Considerations Of Non-Profit Startup? - <AUTHOR> Hello HN!
Our startup intends to compensate people who opt to not have children, and we want to be absolutely sure that we're operating ethically (ensuring those who opt in aren't coerced, are fully informed of their decision and any consequences, etc).
We're interested if anyone has experience engaging ethics professionals, whether for a non-profit startup or other situations that called for ethics considerations.
Thanks! <comment><USER2> The premise sounds ethically frought from the beginning. Monetary compensation is always going to have a coercive influence towards people who need it. Sounds similar to eugenic where poor women were paid to be sterilized because it will only influence people poor enough to need $. I'm figuring you aren't taking that route but instead offering payments. Education and resources to avoid unwanted pregnancy such as condoms, access to birth control would seem to be more ethical. A lot of the ethical aspects would depend upon the society that people are living in and their cultural norms.

<comment><AUTHOR> > The premise sounds ethically frought from the beginning.

We agree wholeheartedly, hence the desire to bring ethics professionals and researchers into the process as early as possible.

Our initial idea was direct cash transfers to participants, a model that we've seen other charities adopt to provide aid. As you mention, this is fraught with ethical peril, so we continue to iterate on what the final aid delivery method will be (which is likely to be a combination of education, birth control, health care delivery, and direct transfer payments).

<comment><USER2> Ultimately if people feel comfortable that their children will grow up healthy and happy to adulthood it is widely accepted that the birthrate will tend to decrease. So providing childcare. Any kind of reduced aid due to having (more) children would tend to punish people who have children. I think that you maybe able to find an ethical framework that matches your goals but that is just because there isn't a universal agreement on ethics. Also it's kind of impossible for people to understand the cost/benefits of having children because in general kids are amazing, unique and considered by many their primary source of happiness especially in later life. There are also familial pressures on young people to have children but I'm mostly familiar with life in a developed nation and I'm kind of assuming you are targeting the less developed countries with higher rates of poverty and birthrates. Either way I'm not a professional ethicist so probably not the advice you are seeking.</comment></comment></comment>


ClojureScript Builds, Rebooted - <AUTHOR> http://adzerk.com/blog/2014/11/clojurescript-builds-rebooted/

<comment><USER2> Boot looks interesting, but replacing an immutable data structure with side- effectful functions feels like a step in the wrong direction.

<comment><USER3> The main reason why build tools exist is to perform transformations on a file set. The vast majority of the things build tools do that are useful are side effects.

These "side-effectful" functions are basically transducers; the reduction is performed on the file set instead of a sequence. They are mostly stateful transducers, but this does not fly in the face of functional programming. The opposite, in fact! They facilitate separation of concerns in a way that an immutable but global configuration map cannot.

<comment><USER2> It's true that you need to interact with the filesystem eventually, but the longer that can be deferred, the more complexity can be avoided.

Ideally I'd want to construct a functional data structure that describes my build process, and at the end pass it to a side-effectful function to produce a change to the filesystem. Boot appears to be side-effectful from the get-go, but perhaps I'm mistaken about how it operates?

<comment><USER3> Sorry, I should have mentioned that while boot, like any JVM build tool, does begin and end with the class path, we have spent an enormous amount of time experimenting with ways to mitigate the effects. We ended up with a system that provides many of the benefits of immutability while still living in the real world where files actually exist.

Here are some of the things boot provides:

1\. We have "pods", which are separate Clojure runtimes in isolated class loaders in which you can evaluate expressions. The actual building occurs in these things. They are lexically scoped and can have a different class path than the main Clojure runtime where your build pipeline runs.

2\. Files emitted during the course of the build are created in temp dirs managed by boot. There are a few different kinds of these temp dirs, one of which is lexically scoped. We also have temp dirs that are effectively immutable from a given task's point of view (we use a copy-on-write scheme to achieve this).

3\. We make liberal use of hard links and directory syncing to emulate immutability wherever we can. Boot provides a kind of structural sharing with these hard links that really makes the pain of dealing with files go away.

4\. We put a great deal of thought into how artifacts flow through the build pipeline, and how tasks that don't know anything about each other can cooperate to work on these files.

This is the most interesting part of boot for me, and I'll be making a complete writeup about it soon.

<comment><USER2> It sounds like Boot has had a lot of thought put into it, and I certainly welcome the idea of effectively immutable directories.

But it also looks like Boot dives head first into I/O, when I'd prefer a build tool that is a little more circumspect about complexity. While I welcome competition to Leiningen, and I'll certainly keep an eye on Boot, my initial impression is that it's heading in the opposite direction to where I'd want a build tool to go.

</comment></comment></comment></comment></comment><comment><USER4> How will this work with tools like figwheel [1] and austin [2]?

1\. [https://github.com/bhauman/lein- figwheel](https://github.com/bhauman/lein-figwheel)

2\. [https://github.com/cemerick/austin](https://github.com/cemerick/austin)

<comment><USER3> The post was a demonstration of exactly that: cljs incremental builds with live-reload and cljs browser repl.</comment></comment>


A crazy password-less login system - <AUTHOR> http://the-magazine.org/login

<comment><USER2> For what it's worth, it's not new. My latest project, Fork the Cookbook (<http://forkthecookbook.com>) uses a similar system

</comment><comment><AUTHOR> <http://www.marco.org/2013/02/24/the-magazine-sharing></comment>


Travis CI ― it's the new awesomesauce - <AUTHOR> http://labnotes.org/2011/08/10/travis-ci/

<comment><USER2> I love this, it's like SaaS for CI. I'm excited about how awesome this would be for private repos. Setting up CI sucks in general measures, so many avoid it. I heard private repos is in the roadmap - though they will focus on platform stability in the nerest feature.

Try it!</comment>


Couples are having less sex, study finds - <AUTHOR> https://lite.cnn.io/en/article/h_08e673cb31c50b421499e16fecc1a76d <comment><USER2> I do have to smirk slightly, since a common complaint that I hear from people critical of millennials is that "everything is about sex these days!" as some sort of thinly-veiled way of dismissing people of a certain age group, when the facts seem to indicate that that simply isn't the case.

Anyway, I do have to wonder _why_ this is happening? Is it due to the fact that there's less lead exposure, or is it just easier to find other stuff to do nowadays (which I realize sounds facetious but I don't intend it to be).

Anecdotally (which I realize means nothing in regards to science), I've noticed that I tend to have less of a libido when I am less physically active and/or I'm eating less healthily. I wonder if something like obesity rates have been directly correlated.

<comment><USER3> > _I do have to smirk slightly, since a common complaint that I hear from > people critical of millennials is that "everything is about sex these days!" > as some sort of thinly-veiled way of dismissing people of a certain age > group, when the facts seem to indicate that that simply isn't the case._

Actually, it can very well be that "everything is about sex" for a group of people, precisely when that group of people have less sex than ever.

(Overcompensation and all that).

<comment><USER4> There are a bunch of studies over the last decade or so finding that teens (i.e. teens to ~28 year olds today) have shifted the balance of their social interactions away from in-person contact to online communication.

If the same thing goes for sexual topics, that would quite neatly explain this pair of interactions. Debating sex on social media or posting adult content online is publicly visible, hence "people are sexualizing everything these days!", but it's plausibly also an replacement outlet for what isn't happening in person.

(The other, simpler, take is that online accessibility just means we see an increasing amount of _everything_ , even if the number of people involved is declining.)

</comment></comment></comment><comment><USER5> Isn't the wide availability of internet pornography an obvious theory for one potential factor?

</comment><comment><USER6> Gotta ask. Any relationship here with the global declining sperm counts?

<comment><USER7> That, the obesity, and the declining testosterone would all be related.

The testosterone decline: [https://uk.reuters.com/article/health-testosterone- levels-dc...](https://uk.reuters.com/article/health-testosterone-levels- dc/mens-testosterone-levels-declined-in-last-20-years-idUKKIM16976320061031)

We've already found BPA (a plasticizer) and Atrazine (an herbacide) to have feminizing effects. Other plasticizers show signs of being worse. This stuff is everywhere.

</comment></comment><comment><USER8> > Men burned more than women, at about 100 calories versus 69.

I chuckled.

</comment><comment><USER9> It's because society keeps emasculating men.

<comment><USER5> This sounds like a theory without evidence, but it would be interesting to actually study.</comment></comment>


DigitalOcean will donate to tech non-profits for community content - <AUTHOR> https://blog.digitalocean.com/write-for-donations/ <comment><USER2> Well done DigitalOcean! I wish more companies follow their example.</comment>


Venezuela launches presale of state-backed 'petro' cryptocurrency - <AUTHOR> https://www.ft.com/content/07b1052c-1648-11e8-9376-4a6390addb44 <comment><USER2> The Petro is extremely questionable. ICO review: [https://concourseq.io/Q/Petro](https://concourseq.io/Q/Petro) Commentary by avsa: [https://twitter.com/avsa/status/961252705443418112?lang=en](https://twitter.com/avsa/status/961252705443418112?lang=en)

It seems pretty obvious to me that it's a money grab and they lack both the knowledge and intention to execute this properly.</comment>


Astounding Sci-Fi Predictions That Came True - <AUTHOR> http://mashable.com/2010/09/25/11-astounding-predictions/

<comment><USER2> This reminds me yet again how completely awesome the Edwardians were.</comment>


Why Is Twitter More Popular With Black People Than White People? - <AUTHOR> http://www.businessinsider.com/twitter-study-results-2010-4

<comment><USER2> I find it pretty disappointing that the original survey put up some statistics like this without bothering to control for age or education level. You can get a lot of press for essentially saying nothing substantive these days...</comment>


Extra-virgin olive oil preserves memory, protects brain against Alzheimer's - <AUTHOR> https://www.sciencedaily.com/releases/2017/06/170621103123.htm <comment><USER2> > The researchers divided the animals into two groups, one that received a > chow diet enriched with extra-virgin olive oil and one that received the > regular chow diet without it.

Wouldn't the olive-oil mice be getting more calories?

Did they control against other oils?

</comment><comment><USER3> What changes nutritionally from first press to !(virgin) oil?? Is there really a big difference, or do people just like to say "Extra-virgin" ?

<comment><USER4> The difference is the Italians buy Spanish oil and rebrand them as their own. Only Spanish oils are the highest quality and can achieve the Extra-Virgin denomination. So there is a 99% of chances when you buy any Italian oil, that is not locally produced or Extra-virgin. Fraud as usual.

<comment><USER5> This is a rather bold claim. Source?

</comment></comment></comment><comment><USER6> I wonder what the route is in the brain? This is similar to the claims we hear about MCT oil.

</comment><comment><USER7> One wonders is this is actually just a case of monounsaturated fat vs. polyunaturated & saturated fats.

Or something truly associated with olives.

<comment><USER8> Or simply an increase in fat.</comment></comment>


Deep Reinforcement Learning to Play Space Invaders [pdf] - <AUTHOR> http://nihit.github.io/resources/spaceinvaders.pdf <comment><USER2> So... the original DQN paper already did Space Invaders as part of the ALE environment, getting better than their human player's score. The DeepMind source code as well as other reimplementations have been out for years, and likewise for Double Q-learning, so it didn't really need someone to reimplement it either. Looking at this paper, I'm not sure what is new or interesting, other than the experiment with using the Atari RAM as features (but even that doesn't seem as interesting as the paper which used MCTS on the RAM: "Deep learning for real-time Atari game play using offline Monte-Carlo tree search planning", Guo et al 2014 [http://papers.nips.cc/paper/5421-deep- learning-for-real-time...](http://papers.nips.cc/paper/5421-deep-learning-for- real-time-atari-game-play-using-offline-monte-carlo-tree-search-planning.pdf) ). Or is this just the report from an (impressive) student project and not intended to be groundbreaking research?

<comment><USER3> It seems like a student project, not groundbreaking research.

</comment></comment><comment><USER4> PLAGIARISM

Third paragraph of Intro in original DeepMind paper [https://arxiv.org/pdf/1312.5602.pdf](https://arxiv.org/pdf/1312.5602.pdf)

&

Second paragraph of Intro(5th line) of this project. [http://nihit.github.io/resources/spaceinvaders.pdf](http://nihit.github.io/resources/spaceinvaders.pdf)

They didn't even bother to do something original except for using the RAM state instead of pixel values like the original paper. It's something that's easily doable with the openAI gym. This seems like a course project at stanford.

<comment><USER5> Hi, one of the authors here. Yes this is a school project. This pdf was a draft, not the final version for the class submission (the paragraph in question never made it to the final version). Don't know who shared the link here, but it is updated now.

</comment></comment><comment><USER6> Off topic but related to deep learning. Did anybody encounter use of machine learning in mesh generation, as in 2D, 3D triangular, quad, hex mesh generation?

<comment><USER7> I am also interested in this. I've seen work done in generative models for voxels but nothing in meshes unfortunately. I also haven't looked quite that hard.

<comment><USER6> Yeah, it seems like deep learning would be apt here, but couldn't find almost anything. Time for disruption :)

</comment></comment></comment><comment><USER8> At a glance, this looks essentially like a recreation of Deepmind's work from a couple of years ago. Is there something new here I'm missing?

</comment><comment><USER9> I wonder if this could ever learn to play Spelunky? :-)</comment>


Lottery Ticket Approach Leads to Reduction in HIV Prevalence - <AUTHOR> http://foreignpolicy.com/2015/05/12/lottery-ticket-approach-leads-to-drastic-reduction-in-hiv-prevalence/?utm_content=buffer037f2&utm_medium=social&utm_source=facebook.com&utm_campaign=buffer

<comment><USER2> So, if I've got this right, sexually transmitted diseases are transmitted mostly by people with a high tolerance for risk (people who tend to engage in risky behavior). Also, people with a high tolerance for risk tend to overvalue lotteries. So they targeted that population by incorporating a lottery into their social program.

Clever.

<comment><USER3> This is indeed where the article goes, but I suggest risk is overstated as a factor here.

Everyone knows they should be tested, so an incentive to actually go and do it doesn't need to be large or meaningful. This also acts as a genuine acknowledgement by the state that this is important and that it's without taboo.

Testing reduces everyone's chance of being infected - so it ought to reduce risk-takers' chances proportionately more, lottery or not.

</comment></comment><comment><USER4> I'm not sure how I feel about using "game-y" things to convince people to do stuff, especially when we're talking about serious stuff.

In Portugal a similar strategy was used to hinder tax evasion, where you got a chance (a ticket, so to speak) to win a car for each receipt you demanded on every purchase you made. (I'm oversimplifying a bit, I think)

It somehow feels like cheating/manipulating people, since we are terrible at estimating very small odds, making this kind of stuff an effective strategy with a very small cost for whoever provides the prize.

<comment><USER5> Your chance of winning money may be tiny, but your chance of _actually not dying of a AIDS_ went way up. Pay for the infinitessimal chance of a coffee, receive a donut instead. Tasty, tasty donut.

<comment><USER4> Yeah, but the will to actually not dying of AIDS should be taught somehow. Otherwise, you are covering up the problem. In a year the lottery goes away, AIDS comes up again.

Just like fixing a bug superficially instead of going for the root.

If you wanted donuts you could've just get them in the first place.

I am not saying the results aren't positive, or that they aren't better than nothing. But I don't think this solves anything in the long term, and the manipulative and "the ends justify the means" approach rings the "should this really be done?" alarm bell in my mind.

<comment><USER3> One reason that HIV infection is high is because it's a taboo subject. The government can affect this taboo status through education, yes, and also this way.

Punishing HIV positive people (for example, by making it illegal for them to enter the country) contributes to this taboo. Giving a government-mandated lottery ticket mitigates the taboo, and it's my belief that this will have lasting positive consequences even after the lottery goes away.

Also, people not getting infected today are not infecting people tomorrow ( _exponentially_ ). Stopping infections today is exactly the right thing to do for the long-term.</comment></comment></comment></comment>