Digital Ocean Managed Databases - <AUTHOR> https://try.digitalocean.com/dbaas-beta/ <comment><USER2> I for one have always liked the simplicity of DO for hosting but I've never wanted to take on the full liability of self-rolling a DB server (and backups and replicas). So everything my company has I've put on heroku or azure. This has potential to be really significant as I'd wager there are a lot of folks in similar situations.

<comment><USER3> If you have a relatively small set of users, setting up your own database is usually as simple as setting it up locally and you won't need shards or anything. And setting up backups is as simple as adding a cron job that calls your backup shell script, which you can test separately. And by "small set of users", consider what SQLite's own website[1] says:

        Generally speaking, any site that gets fewer than 100K
        hits/day should work fine with SQLite. The 100K hits/day
        figure is a conservative estimate, not a hard upper bound.
        SQLite has been demonstrated to work with 10 times that
        amount of traffic.

If SQLite is able to comfortably handle 100k hits/day, I imagine that more "legitimate" databases can handle more traffic comfortably without needing to jump to scale horizontally.

[1] [https://www.sqlite.org/whentouse.html](https://www.sqlite.org/whentouse.html) under "Websites" section

<comment><USER4> Agree sqlite is great and >80% of websites will probably run fine on it, but 100K hits/day is pretty vague, does that mean 1 hit/sec or 3 hits/sec during peak time, etc...?

<comment><USER5> Even if that's clarified, it's vague. It doesn't entail how a hit translates to database operations.

That said, I think it's more meant to be an anecdotal rule of thumb to tell people "you're not Google, SQLite will work for most teams".

<comment><USER6> It also doesn't specify a use-case. In a 98% read scenario with a good caching strategy it can easily do much more than 100k visitors per day. If you're taking in data from many devices you can easily bottleneck on writes.

It _really_ depends. Also, configuring everything right gets hard. Most don't even think to do RAID over a few block storage devices, but that's something that comes with cloud storage. That doesn't count HA and other issues before getting to the application layer.

It's something that unless you're paying a full-time DBA, you are probably better off buying as a service. It's one of the few holes in DO's offerings and I'm very happy to see this.

</comment></comment></comment></comment></comment><comment><USER7> It's nice that we are finally at a point where PG is the first offering, instead of the "Coming Soon."

<comment><USER8> It is nice indeed.

Also, PostgreSQL is described as powerful, reliable, full-featured, and fast, while MySQL as the most popular: that's all.

What is not said can be as important as what is.

</comment></comment><comment><USER9> So now they have managed databases, load balancers, a cloud firewall that's partially VPC like, object storage and block storage.

Assuming managed K8S is next, or maybe more "AZ/Region" h/a features. Great to have a new player coming into this space. Especially one with reasonable egress charges.

<comment><USER10> One thing I imagine that's coming at some point is their own implementation of "cloud functions".

<comment><USER11> Or logging, tracing, metrics

</comment></comment></comment><comment><USER12> Just started using the new Kubernetes offering on Digital Ocean. Still in Beta but works pretty good. If this is a sign for how they will do databases, I'm all ears. Add CI/CD and you have a Heroku competitor.

<comment><USER13> Glad you are having fun working on your after hours side project with DO. But please DO NOT host with DO if you plan to run a real production systems, build a company, hire people etc. I have never found a better company to spun off a server and play with some settings but when their algorithm decides there is something fishy, bye bye your account, servers, backups, you never going to see any of this ever again.

The last startup I heavily pushed with switching to OVH or even Rackspace was exact sample of what happens when DO algorithm decides you are not genuine. That's it. No explanation, no phone number to call, nothing. These people blindly decided to believe their algorithm and never wanted even discuss resuming the account or even get us backup of data. There was nothing shady going on I assure you. Funny part is as of today DigitalOcean is still in violation of GPPR, as we have requested to hopefully find out what was wrong with our account by filing request for info. Nope, zit, nada, totally ignored. We have filed complain with proper authority and also notified Attorney General in NY and continue await result.

Build all you want on DigitalOcean, but please understand not people but their weird algorithm is in charge of the future of your startup, future of your company and future salary or lack therefore when you are forced to fire team of people because you fall behind with payroll. In other words: be warned and build at your own risk.

<comment><USER14> Our team is currently migrating our whole production system from Linode and GCP to Digital Ocean. Your comment is raising warnings, I'd like to hear more from DO itself.

<comment><USER15> I'd love to chat with you. If you have some time, send an email over to email@example.com and let's talk. I promise nothing but honesty, transparency, ideas, and maybe a few laughs :)

<comment><USER16> Any chance at an invite to the k8s beta for a large-ish open source project?

<comment><USER15> Toss me an email, I'll see what I can do :)

</comment></comment></comment></comment></comment></comment><comment><USER17> Wow, this is fantastic news! I think this opens the floodgates for lots of people who currently use Heroku, and would like to use simple VPS's without jumping into the headache that is AWS. Any word on pricing?

<comment><USER18> What are your objections/concerns against using AWS?

I have used it both for work and in personal projects and haven't ran into any issues/headaches.

<comment><USER19> Personally, I find AWS's pricing complicated, and there are so many different services that it's confusing. I think it's mostly a UX issue, but it's really overwhelming.

DO, Lonnie Linode, and Vultr are very simple, so that's what I use. Perhaps if I start needing more from my hosting I'll look at AWS, but it's just not worth my time to figure it out for the scale of projects I'm doing.

</comment></comment></comment><comment><USER20> I see some DO employees around.. What is the trick for getting access to the new Kubernetes and/or postgres betas? I'd love to use both for my side hustle (Currently on normal DO droplets)

EDIT - I now see the kubernetes option in my DO account. Thanks!

<comment><USER21> Where did you find the K8s listing? I'm in a similar boat!

<comment><USER20> Someone must have toggled the k8s beta switch for me. It wasn't there earlier.

<comment><USER21> Ah, right on -- thanks!

</comment></comment></comment></comment><comment><USER22> I love that they are adding this. They are becoming a more and more viable solution for real production projects and their UX is top-notch, especially compared to the mess that is AWS and GCP.

</comment><comment><USER23> Excellent, I've just finished setting up a Postgres instance on a DO Droplet. I hope they still allow SSH into the instance, so that I can load data directly from there.

By the way this comes just a week after AWS Lightsail started offering the same. Excellent stuff. [https://aws.amazon.com/blogs/aws/new-managed- databases-for-a...](https://aws.amazon.com/blogs/aws/new-managed-databases- for-amazon-lightsail/)

</comment><comment><USER24> Holy crap, the fact this was missing is really the only reason I use Google Cloud for my projects.

</comment><comment><USER25> This is the product that can finally get me to totally switch off of AWS.

Droplets <\- EC2

Spaces <\- S3

Managed Databases <\- RDS

<comment><USER26> Is Spaces fully compatible with the S3 API, in your experience?

<comment><USER27> yes it is

</comment></comment></comment><comment><USER28> Thinking about moving from Linode to DO just for this. Makes so much sense.

Would be great to have something similar for Redis.

</comment><comment><USER29> How is DigitalOcean's resilience to DDoS attacks? After Linode's giant DDoS- related outages a couple of years ago, I moved everything to AWS on the theory that they (along with Google and Azure) would be better at mitigating similar attacks. Would be nice to have DO as an option.

<comment><USER30> Wait I thought AWS made you pay if you got hit with a DDoS or even a moderate amount of traffic. It's just there is no cap on costs if you have any kind of autoscaling enabled. There use to be many posts complaining about surprise charges on AWS.

<comment><USER31> You basically politely ask AWS if they will refund you when you're DDoSed and hope the attack is apparent enough to pass their threshold.

They were generous enough, but at the expense of uncertainty + you needing to play an active role in getting them to pay your bill. Depending on what sort of service you run, it may be a constant ordeal.

After getting some large CloudFront bills taken care of, I left and wondered what sort of person had the stomach it.

</comment></comment></comment><comment><USER32> That's really exciting! DO is knocking it out the park lately as "AWS...but easy to use". I'd love to see Mongo as a managed DB.

<comment><USER33> Mongo licensing prevents DO doing this themselves, although they could partner with them.

<comment><USER34> Currently using Mongo Atlas free tier for a side project - it's been pretty wonderful so far

</comment></comment></comment><comment><USER35> This is good news. I look forward to seeing the managed MySQL option.

<comment><USER27> yes, it's next on our roadmap of engines. I work at DO FYI.

</comment></comment><comment><USER36> I don't see any mention of the cost. Is that listed somewhere?

<comment><USER27> Hi there, this is Shiv - I am the VP of Product at DigitalOcean. Thanks for asking about pricing. We are still working out the pricing details. I can tell you it won't be just the cost of the Droplet because this is a managed service with lots of additional features that you would not get with the current Droplet product.

<comment><USER37> If you can offer some sort of "hobby" plan with a limited I/O and DB size that would be great for hobby projects like what I build. I've used RDS before and it is great, but the cost is a bit eye watering when we are talking about less than one user every 10 minutes.

I've found Jaws DB works well for my needs (and pricing), but given they are layered on AWS it does feel like I'm still a bit limited - ie it would be good to still access the DB server so I can spin up multiple DBs (pre-prod, production etc), despite my usage being minimal.

If DO can hit a sub $10pm price point (even with severely restricted performance) that would be awesome!

</comment></comment></comment><comment><USER38> Sweet mother!

#1 thing you can do to make this compete with RDS and Cloud SQL would be to support extensions out there that they don't. HypoPG needed by Dexter, pg_partman, etc. Lack of certain extensions is the biggest failing of those offerings IMO.

<comment><USER39> I believe most of those are offered by Citus Cloud [0]. I know it's not the same, but you can spin just a single worker and essentially end with a faster PG than the vanilla PG.

[0] [https://www.citusdata.com/product/cloud](https://www.citusdata.com/product/cloud)

<comment><USER40> It starts at a minimum of 2 workers. And the pricing is steep too. The workers only operate on distributed tables so if you can't shard your data then you won't get any use out of those nodes, and sharding comes with its own problems. Citus isn't recommended unless you really need the size and want to stick with Postgres/OLTP.

<comment><USER39> Didn't know it's 2. Pricing may be steeper in comparison, but it provides more than just a hosted PG.

You are absolutely correct that you have to shard your data to take an advantage. It's not equal to vanilla PG. It's an alternative though.

</comment></comment></comment></comment><comment><USER41> This looks fantastic, Heroku definitely could use some competition. I love them but the only other option is using some insane AWS stuff with nonsensical icons and naming. Hope this takes off and adds a nice CI.

<comment><USER40> Insane? AWS RDS is rather self-contained and simple enough to get started with if you use the defaults. They also offer managed dbs as a simpler option with Lightsail: [https://aws.amazon.com/lightsail/](https://aws.amazon.com/lightsail/)

And there are tons of managed database hosting providers outside of Heroku.

</comment></comment><comment><USER42> Anybody hosting an online business on Digital Ocean (or similar VPS)? All companies I see all use Heruko, AWS or GCP.

<comment><USER43> We've been slowly moving from AWS to DO over the last 6 months due to cost, performance and ease of use. We haven't had any issues and the support has been far superior as well. We wrote up a benchmarking comparison with some reasoning behind the switch: [https://goldfirestudios.com/blog/150/Benchmarking-AWS- Digita...](https://goldfirestudios.com/blog/150/Benchmarking-AWS-DigitalOcean- Linode-Packet-and-Vultr).

<comment><USER42> Great read, thanks for sharing.

</comment></comment></comment><comment><USER33> very interesting. With this and the new DO kubernetes offering (if both are reliable), DO could be a compelling option for postgres-based kubernetes clusters baseload - circa half the price of google cloud.

All the other stuff you need like logs and monitoring can be installed with helm charts.

</comment><comment> St-Clock I wonder if this is a response to Amazon Lightsail[1] now offering managed database?

[1] [https://aws.amazon.com/blogs/aws/new-managed-databases- for-a...](https://aws.amazon.com/blogs/aws/new-managed-databases-for-amazon- lightsail/)

<comment><USER27> Hi there! I lead products at DO and we've had DBaaS on our roadmap for some time now.

<comment><USER44> Any chance someone could fast-track an inclusion for me of both the k8s and managed db solutions?

I'm leading a team that is _literally_ days away from provisioning a cluster for an existing production SaaS application that's currently on DO vm's. Would prefer to stay with DO..

My email is in profile - happy to answer any questions.

<comment><USER45> Hey there! DO Kubernetes PM here.

I just added you so you have access to the product. I will reach out to the PM on DBaaS as well.

<comment><USER44> Thank you!

</comment></comment></comment></comment></comment><comment><USER46> I think that is the final major puzzle to going All in on DO, hopefully it would not be built on top of their current Droplet config but much more customised for DB's need.

On the Subject of DO, I am wondering am I the only one who felt the need of 1vCPU to 1GB RAM droplet? Given the vCPU aren't even core but thread. Now that Managed DB is in place that is even more need for frameworks like Rails, my guess for other framework would need even less memory per process / Thread. I was hoping AMD EPYC will make that happen, but so far nothing has happened yet on all other VM hosting providers. May be EPYC 2.

And if DO will someday provide an CDN, or reselling of CDN through partnership.( Although BunnyCDN seems to be working great for me at the moment.)

</comment><comment><USER47> Postgresql first.. finally.. cool!

</comment><comment><USER48> I was looking for hosted PostgreSQL and eventually wound up at [http://elephantsql.com](http://elephantsql.com), with which I've been happy. I don't have a 'production' service in that I'm not relying on a DB to sell a service, like underpinning an app/website. But my DB is mission critical for knowledge management for my business, and I don't trust myself to manage the server properly. Nice to see competition in this space, and DO is a good one to be offering hosted databases - I'm happy with their other services too.

</comment><comment><USER49> I've been hoping for this for a while. I'm eagerly awaiting access to their Kubernetes service, so this is a perfect compliment to the upcoming service releases.

Also interesting timing too. Amazon Lightsail (the cheaper AWS alternative) is similarly priced to providers such as DigitalOcean, Linode, etc and released their managed database offering the other day: [https://aws.amazon.com/blogs/aws/new-managed-databases- for-a...](https://aws.amazon.com/blogs/aws/new-managed-databases-for-amazon- lightsail/)

</comment><comment><USER50> I've loved the simplicity and speed of DO.

DO has definitely a lot to offer via some simple cloudy things as

1) Good ol VMS and load balancers - they already do

2) Managed K8s - may be they already do? I dunno

3) Managed DBs - good to see this.

4) Big fat blob store (like s3) - not sure. CDN that operates over blob store would be nice too.

With this pieces, one can develop quite a significantly complex and scalable application without worrying about infra.

AWS, Azure, GCP are wayyy too complicated. There's definitely a niche for an IAAS Company to only do the few important things and do them better (speed, reliability, price) than the big 3 and steal a meaningful chunk of the market.

</comment><comment><USER51> Would be great to see a benchmark vs a database in a regular DigitalOcean droplet, or information about hardware. This information would be useful for projects requiring high performance per sec.

<comment><USER6> No details on pricing, but wouldn't be surprised to see the pricing close to matching a droplet, and deploying managed over existing infrastructure. There are of course tweaks I've seen for performance on existing clouds (raiding over block storage devices), tweaking swap space/usage, etc.

Not sure how deep it'll go in the managed usage, but very happy to see it. The one piece I've really felt was deeply missing.

</comment></comment><comment><USER52> Well that news just made feel great about picking Postgres for my current SaaS project. Definitely going to be migrating over once I get access!

I wonder how long they've been working on this.

<comment><USER27> We've been working on this for some time. We announced earlier in the year that we want to offer this type of a managed service and we will start with one engine for now. Disclosure: I lead Products at DigitalOcean.

</comment></comment><comment><USER53> This is great but I wish they would give some more insight into the early access system. Ive been waiting for Kubernetes access for what seems like an eternity.

</comment><comment><USER54> Caught this late this morning - any DO employees still here? I'm signed up for the k8 & postgres betas but haven't had any luck getting k8 opened up. Would LOVE to participate in the postgres managed beta - definitely trying to move off from AWS for this.

bryan at priceflow.com

</comment><comment><USER55> This is a huge deal for me personally, and probably the main and only reason why I haven't used Digital Ocean for real yet. Let's see how the pricing goes, since having many small projects each one with very little requirements normally means paying a lot of $.

</comment><comment><USER56> This is fantastic timing—I didn't feel like dealing with Postgres configuration/management, so I went with CockroachDB instead (which also forced me off a CPU core since I required more RAM).

Here's to hoping that receiving access doesn't take too long ^_^

</comment><comment><USER57> This is a game changer. But just how much more reliable will this be compared to Amazon RDS?

</comment><comment><USER58> This was what held me back from using DO for all my projects. Happy it's here now.

</comment><comment><USER59> What is the cost?

</comment><comment><USER60> If anyone from DO is around - Will libprotobuf-c be available on managed postgres? I ask because for the longest time AWS RDS didn't support cutting Mapbox Vector Tiles from PostGIS.

<comment><USER61> We ran into this same problem. The RDS team fixed this earlier this month when they launched support for 10.5. It's buried in this blog post: [https://aws.amazon.com/about-aws/whats-new/2018/10/rds- postg...](https://aws.amazon.com/about-aws/whats-new/2018/10/rds-postgresql- supports-minor-versions/)

</comment></comment><comment><USER62> Would be awesome if DO also included support for MemSQL.

I know MemSQL back in 2017 announced managed services, but I'm pretty sure they closed it. Although I can't find a link.

<comment><USER40> MemSQL is a great product but it's a niche offering and requires proprietary licensing by capacity so it'll probably never be provided as a managed offering by anyone, especially by a smaller player like DO.

</comment></comment><comment><USER63> Very interesting.

I put up a few different sights on a droplet and have been preparing to make a switch over to Heroku exactly for the sake of the managed postgres.

Maybe I won't have to!

</comment><comment><USER64> Is there an expected downtime during system updates?

<comment><USER6> updates look like they are on-demand... you have to click to run db updates.

</comment></comment><comment><USER65> I bet it is going to be very expensive. I have a 300gb MySQL database that needs a more reliable home. I add about 800mb if data a day.

<comment><USER6> DO's block storage is around $10:100GB though it probably won't have as flexible capacity planning for you, so you'll likely want to start around 2TB to account for 2+ years growth.

note: I'm not affiliated with DO in any way and pricing and capacity are only speculation.

</comment></comment><comment><USER66> Would love a chance to test this and the k8s service out. My email is mikhail at chattermill dot io

</comment><comment><USER67> this is a useful thing as i often did these by hand on DO before, and they are a bit of a pain. but if their pricing for volumes is any indication, these will be pretty expensive. curious what the price is going to be.

</comment><comment><USER68> Great to see DO adding managed db. Looking forward to see cloud functions.

</comment><comment><USER69> this is fantastic! I've got several droplets for smaller customers and it's always a pain to setup and manage a DB for them.

I just hope it's not terribly expensive for the smallest tier.

</comment><comment><USER70> Would love to get an early access to DO k8s!

</comment><comment><USER71> What are the chances of mongodb?</comment>


The Limits of William Langewiesche's 'Airmanship' - <AUTHOR> https://medium.com/@elanhead/the-limits-of-william-langewiesches-airmanship-52546f20ec9a <comment><USER2> This is an ad hominem attack. It lacks reason and accountability.

The original article carefully examined the facts and concluded that the pilots were simply not up to the task of flying the plane manually in the event of a runaway trim situation.

The religion of "Hate Boeing" is strong. The Russians have done their job well. Now it is time to smear anyone who relies upon facts and reason for having an unpopular opinion.</comment>


Photons that travel in free space slower than the speed of light - <AUTHOR> http://arxiv.org/abs/1411.3987

<comment><USER2> The paper actually has a nice one-sentence summary:

"The group velocity of light in free space is reduced by controlling the transverse spatial structure of the light beam."

The key word here is "group velocity"

<comment><USER3> As a non-physicist, though, that sentence is still mostly unintelligible to me. Could anybody explain it in simple terms? I don't really know what group velocity is supposed to mean, nor do I really know what the spatial structure of a light beam is.

<comment><USER4> A light beam has an extension in space, and does so even if we're talking about the probability amplitude of a single photon. Therefore there are several ways to define the notion of velocity. One of them is the _group velocity_ , which intuitively is the speed of propagation for the "shape" of the wave, as opposed to the _phase velocity_ , which is the speed propagation of its "zeros". There is a quite extensive Wikipedia article on the subject, check it out: [https://en.wikipedia.org/wiki/Group_velocity](https://en.wikipedia.org/wiki/Group_velocity)

Basically this ArXiv article shows that when a light beam has an unusual spatial shape, its group velocity can become measurably slower than light. The group velocity is usually equal to the actual speed of photons, so if it's still the case here, the authors have shown that in certain conditions light can propagate in vacuum slightly slower than it usually does.

</comment></comment></comment><comment><USER5> What is the effect of this result, if any, on established theories?

<comment><USER6> None. This is predicted by existing theories.

The setup they have here is basically a waveguide[1][2]. You can show classically, using Maxwell's equations, that the group velocity of a wave of light when confined to a waveguide is less than light in free space. Thinking classically, the actual wave that is transmitted is a superposition of a bunch of plane waves bouncing off the walls. The complete wave moves slower than the individual waves that make it up [3].

What the authors have experimentally verified here is that single photons also travel at the group velocity. This is mostly expected, but difficult to measure (the time difference is 30 femtoseconds after travelling a meter). It's somewhat counterintuitive because the superposition is caused by the photon interacting with itself; but that's pretty par for the course with single photon experiments. I'm mildly surprised we haven't done this until now; probably one of those things where it's been generally accepted but no one's bothered to test _directly_. Cool experiment.

[1] [http://en.wikipedia.org/wiki/Waveguide](http://en.wikipedia.org/wiki/Waveguide)

[2] Technically, it's a Bessel beam [http://en.wikipedia.org/wiki/Bessel_beam](http://en.wikipedia.org/wiki/Bessel_beam) ; but if you understand why this should be in a waveguide, you understand what's going on. They make this analogy directly in the paper.

[3] [http://en.wikipedia.org/wiki/Group_velocity](http://en.wikipedia.org/wiki/Group_velocity)

<comment><USER7> If there is a waveguide involved why does the headline talk about photons in free space? Photons in waveguides are _not_ in free space.

The title should be corrected to something truthful, like "Photons in waveguide-like configuration travel slower than light due to self- interference, as predicted".

Anything else is deliberately, willfully, misleading click-bait (I am a physicist and clicked on the comments specifically to avoid clicking on a click-bait headline I knew was almost certainly a lie.)

<comment><USER8> The last two sentences of the abstract are:

 _Our work highlights that, even in free space, the invariance of the speed of light only applies to plane waves. Introducing spatial structure to an optical beam, even for a single photon, reduces the group velocity of the light by a readily measurable amount._

So it appears there is no actual waveguide involved. I guess that means somehow they construct photons in a "waveguide-like configuration" but in free space?</comment></comment></comment></comment>


6 Business Ideas - <AUTHOR> http://www.essien.org/blog/2008/11/28/6-business-ideas/

<comment><USER2> "2. My Black Book. A website where people can setup a list of the people they hate, and how they will exact their revenge"

wow, really? "want to know if anyone is planning to murder you? enter your e-mail address and find out!"

<comment><USER3> It's got "holy shit you're going to get sued badly" written all over it.</comment></comment>


Err – The Pluggable Chatbot - <AUTHOR> http://errbot.net/ <comment><USER2> ChatOps is cool thing!

Still fresh and unusual, but many people don't get it.

<comment><AUTHOR> I think there's still lots to be done in this space...</comment></comment>


Show HN: A New Category of Web Forms - <AUTHOR> http://ncrafts.net/plugins/formcraft_wordpress_plugin/wordpress/?page_id=2

<comment><USER2> I tried every day in August before realizing that no date in August would work. An 'x' or something or changing the icon to a cancel icon might have worked better. Also the calendar icon did absolutely nothing when clicking on it. Same thing with the email icon.

Sliders for inputting numbers? As my only option for inputting numbers? No thanks!

<comment><AUTHOR> Yes, disabling dates would be better. The current form uses conditional laws to show / hide fields based on the date. So, this allows me to show field set A when dates in July are selected, and field set B when dates in August are selected, and field set C when any other date is selected.

Sliders are just one of the ways of inputting numbers. You can have a text field that only accepts numbers.

</comment></comment><comment><USER3> A couple things I noticed:

\- Validation is very slow. It was averaging out to about 5s per submission. This should be able to be done almost instantly on the front-end.

\- The email input is validated with the type="email" HTML5 attribute. If you write something that doesn't pass, the notification appears (about) 400px above the form. If you write something that does pass, technically, such as "abc@abc", it is returned, by FormCraft, as invalid.

\- It would be nice if the input button was clickable, although I can see that this would be more of a Bootstrap thing.

\- I'm not sure how I feel about that Budget sliders reading "0-0" and, once clicked on, reading completely different numbers. If there is a minimum, why not show it?

<comment><USER4> is there any way bugs can be reported in a structured way? would be really helpful to further push this plugin, as the idea is awesome!

<comment><AUTHOR> Thanks! I am thoroughly reading through all the comments. You can also shoot me an email nish [at] ncrafts.net

</comment></comment></comment><comment><USER5> FYI when I click on "Try the form builder" I get a 500 internal server error

      Internal Server Error

      The server encountered an internal error or misconfiguration and was unable to complete your request.

      Please contact the server administrator, email@example.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

      More information about this error may be available in the server error log.

      Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
      Apache Server at ncrafts.net Port 80

<comment><AUTHOR> The links okay. It's the heavy traffic from HN. Never dreamt of it. Please refresh.

<comment><USER5> It works! Tx! :)

</comment></comment></comment><comment><USER6> There's no fallback for browsers that do not support javascript or have it disabled. That's annoying for users of special devices, NoScript, but likely also people who are blind and use screenreaders, for example.

Accessibility deserves _at least_ to be an afterthought.

<comment><AUTHOR> Taking away JavaScript will render 99% of the features useless. Right now I'm working alone on this, part-time. When I have the resources and time, will consider it :)

</comment></comment><comment> peter-fogg I've got a bit of a gripe with the "Job Application" form. Asynchronous saves aren't really intuitive to a lot of users -- if you're a web developer who understands AJAX (and the fact that there's a server with a database actually storing the data somewhere), then it makes sense. But if you're an average person who doesn't immediately know the mechanism it can be confusing. At work I recently converted a portion of our UI from this style of saving to an explicit model specifically to avoid this problem.

<comment><AUTHOR> Agreed. It might create confusion. It's better to have a simple direction in the form that says, "Hey, your form is being saved as you type. You can always come back and fill up the rest!"

</comment></comment><comment><USER7> How about indicating that a day is not available before I click on it?

</comment><comment><USER8> Wish something like this existed standalone. Not tied to wordpress.

<comment><USER9> Me too. I use Machform and love that it's not tied to WordPress, because I use ProcessWire most of the time. WordPress...sigh

<comment><AUTHOR> I am working on a hosted, cross-platform version with tons more features :)

</comment></comment></comment><comment><USER10> Very cool. I like how it works, but I'd love to know how it converted compared to other types of forms. Simply some A/B testing would do the trick, no?

It reminds me of the credit card form someone posted here, and the discussion that followed.

<comment><AUTHOR> What a co-incidence! I was working on an A/B test to compare these forms with forms made with other form builders. Will set it up in a day or two.

</comment></comment><comment><USER11> Great concept. One issue with the dynamically appearing forms is you don't know how long they will go on for. This will lead to people abandoning the form even though they may be 1 step away from completion.

<comment><AUTHOR> At every step, you can always have text like 'Q 1 of 5'

</comment></comment><comment><USER12> Doesn't work on my smartphone (Android stock browser).

<comment> at-fates-hands This is odd considering the site is actually responsive. Something for the bug tracker I suppose.

<comment><USER13> I use android phones and have found many responsive sites to be horribly slow. Scrolling is the main thing I notice, and sometimes it is so slow ijusteave the site. Unfortunately, your site was this slow. I use an HTC One with the Dolphin browser.

I also have it set to the desktop user agent instead of android, as I would rather view the desktop site than a mobile one. With the resolution on this phone, and pretty good eyesite, I find this a much better experience. Responsive sites don't seem to have a desktop option, so I'm usually left dissatisfied with them.

</comment></comment></comment><comment><USER14> This is very cool. Good idea and good design. I wish my forms are as pretty. Good work and keep it up.

<comment><AUTHOR> Thank you!

</comment></comment><comment><USER15> holy cow, this is so cool. yes a few problems but i LOVE it

<comment><AUTHOR> Thanks</comment></comment>


Common Excuses Why Developers Don't Test Their Software - <AUTHOR> https://hackernoon.com/common-excuses-why-developers-dont-test-their-software-908a465e122c <comment><USER2> The best when it says: "3\. Whenever you find a bug, write a test case to cover it before fixing it"

I do really miss all RoR testing tools in PHP</comment>


SUVs conquered the world – at the expense of its climate - <AUTHOR> https://www.theguardian.com/us-news/2020/sep/01/suv-conquered-america-climate-change-emissions <comment><USER2> > You don't need them to run to the store to buy a gallon of milk.

No, you don't, but you're not going to go buy and maintain a Civic for the edge cases where the Explorer you're still paying down is overkill. Walking/cycling is just not an option in most of America's non-urban centers-- the distances and conditions involved are what drove the invention of vehicles in the first place.

<comment><USER3> It's more the reverse. We built suburbs and ripped out streetcar lines because automobiles were becoming more popular. It has also been suggested that GM intentionally played a role in this transition.[1]

[1] [https://en.wikipedia.org/wiki/General_Motors_streetcar_consp...](https://en.wikipedia.org/wiki/General_Motors_streetcar_conspiracy?wprov=sfti1)

</comment></comment><comment><USER4> Most SUVs today are glorified station wagons, built on car platforms. The most popular SUV in America is the Ford Explorer and it hasn't been a truck for almost a decade. How are these any different than minivans? Comparing this type of vehicle to the truck based SUV in the 1990s is dumb. Cars (and light trucks) are far more fuel efficient today than 25 years ago.</comment>


Ask HN: Sales Internship, Advice? - <AUTHOR>

Hey guys, I just was hired as a business development intern at AnyPerk. Just wondering if anyone had any advice for a person beginning their career in a sales facing role. <comment><USER2> First, congrats on the internship! Feel free to contact me - my email is in my profile. Happy to help by making some intros or giving you some pointers.

A few things that are important in almost any BD or sales role:

1.) Know your product inside and out. It's hard to sell something when you don't know what it is or what it does.

2.) Ask a ton of questions. Ask your prospects what their needs are, ask current clients what they like and dislike about your competitors, ask other BD/salespeople in your org to bcc you on their emails so you understand how they're selling, etc.

3.) Read and research a lot. Read books about entrepreneurs or companies you admire, read advice from other salespeople on Quora, research your competition, visit your prospects' websites to glean info about them before a call, etc.

4.) Understand how your product or service can be genuinely helpful to each customer and get good at being able to concisely explain this to the customer.

5.) Be patient. You will have days where it feels like everyone says "no," days where the product team pushes a release back and screws up a big sale, days when no one can make up their mind on your product, etc. Be patient and keep moving forward.

<comment><AUTHOR> Thanks so much for the info! I will be sure to get in touch once I get a bit more acquainted with my role!</comment></comment>


Photo Sharing - <AUTHOR> http://www.macromode.co

<comment><AUTHOR> A side project of mine. Any comments or suggestions would be much appreciated.</comment>


Prologcoin: Fusing Prolog with Cryptocurrency Technology - <AUTHOR> https://github.com/datavetaren/prologcoin <comment><AUTHOR> This project fuses the logic programming language Prolog with cryptocurrency technology. As the README notes, words such as "proving," "validation," "axioms" and "logic" fit both topics very well.

Wallet files are Prolog source files, as described here:

[https://github.com/datavetaren/prologcoin/blob/master/other/...](https://github.com/datavetaren/prologcoin/blob/master/other/wallet_notes.md)

The system includes a Prolog interpreter that already supports simple extensions for constraint logic programming (CLP).

Logic programming languages may be a useful foundation for _smart contracts_ , i.e., for defining what ought to hold under what conditions, and this project is an interesting step in this direction.</comment>


Paleontologists Brought to Tears by Creation Museum - <AUTHOR> http://www.google.com/hostednews/afp/article/ALeqM5jiVuN2BMp6tmuGBGOedALIY4_FaA

<comment><USER2> Can't get enough? For even more fun visit <http://www.holylandexperience.com>.

I know, it doesn't seem that bad at first. But. Imagine finding yourself here as a 10 year old and realizing suddenly that Disney World is less than 15 miles away and you're here. _dayum_.

</comment><comment><USER3> "I feel very sorry for teachers when the children who come here start guessing if what they're being taught is wrong."

Without defending the museum, this comment struck me as odd. Especially coming from a scientist. There is no harm in having questions.

<comment><USER4> Isn't there a difference between questioning X and believing that X is false?

</comment></comment><comment><USER5> here's clip featuring it in Bill Maher's movie, Religulous - <http://www.youtube.com/watch?v=S2O3kvvTxPk>

fascinating stuff

</comment><comment><USER6> I might just not understand this site's mission or goal or whatever, but this just doesn't seem hacking-related to me.

<comment><USER7> This article is also 4 years old. Move along, nothing new to see here.

<comment><USER6> Valid point.</comment></comment></comment>


Why Microsoft's next CEO should break up the company - <AUTHOR> http://www.technologyreview.com/view/518776/why-microsofts-next-ceo-should-break-up-the-company/ <comment><USER2> The guy's lost touch with reality.

> _Internet Explorer dropped from a high of more than 85 percent to roughly 12 > percent today (53 percent use Google's Chrome and 29 percent use Mozilla's > Firefox)._

> _creating a new version of Open Source Windows ... The company would derive > its revenue from service, support, and consulting._

</comment><comment><USER3> What a stupid idea--a lot of the value prop of the Microsoft ecosystem is that it all works together. Additionally, the author's assertion that they aren't innovating is horseshit--the Kinect, the Xbox series, Windows Metro design, and several other things have done a lot to encourage innovation in several areas of industry.

Balkanization into different companies makes no sense.

</comment><comment><USER4> quite honestly, microsoft doesn't need to innovate, just keep the status quo and invest in some new ventures. ballmer tripled profits under his innovation- less azz :)</comment>


General Transit Feed Specification and Clojure - <AUTHOR> https://grison.me/2020/04/03/fun-with-gtfs-and-clojure/ <comment><USER2> Seems like they could cut out a lot of that code by using macros. Here's a quick and dirty Common Lisp script that reads the CSVs from the .zip file and generates classes at runtime using the headers in each CSV for the slot names. It also defines a 'select' function to make queries easy to write. It's a little too long to post here:

[https://gist.github.com/jl2/fd324fa3faa919803152465fade14b6b](https://gist.github.com/jl2/fd324fa3faa919803152465fade14b6b)

And here's what it looks like to use it:

        CL-USER> (defparameter *transit-data* (read-transit-data "~/Downloads/gtfs_current.zip"))

        CL-USER> (select (table *transit-data* :stops) 'stop-name "PIERNE")

        ((STOPS  "PIERNE01"  ""  "PIERNE"  ""  "49.102273"  "6.179863"  ""  "http://lemet.fr/screen/index2.php?stop=257"  "0"  ""  "1")
         (STOPS  "PIERNE02"  ""  "PIERNE"  ""  "49.102558"  "6.179825"  ""  "http://lemet.fr/screen/index2.php?stop=234"  "0"  ""  "1"))

        CL-USER> (select
          (select (table *transit-data* :trips) 'trip-headsign "L5a - MAISON NEUVE")
         'route-id "5-77")

        ((TRIPS  "5-77"  "SMIN_H1920-CLaS50V2-Lun-Sam-98"  "409137-SMIN_H1920-CLaS50V2-Lun-Sam-98"  "L5a - MAISON NEUVE"  "1"  "60112"  "50057")
         (TRIPS  "5-77"  "SMIN_H1920-CLaS50V2-Lun-Sam-98"  "409138-SMIN_H1920-CLaS50V2-Lun-Sam-98"  "L5a - MAISON NEUVE"  "1"  "60111"  "50057")
         ;; ...
        )

<comment><USER3> >reads the CSVs from the .zip file

Neat! I can't find anything in Clojure that does that, so I guess I'd have to use java.util.zip via Clojure ineterop. But making records and doing queries is easy:

> generate classes at runtime using the headers in each CSV

In Clojure:

        (ns gtfs.core
           (:require [clojure.data.csv :as csv]))

        (defn load-records [f]
          (let [csv-data (csv/read-csv (slurp f))]
            (map zipmap
                 (->> (first csv-data) ;; First row is the header
                      (map keyword)
                      repeat)
                 (rest csv-data))))

        (def agency-maps (load-records "data/agency.txt"))
        (def routes-maps (load-records "data/routes.txt"))
        ;; etc.

        (count routes-maps) ;; 30
        (first routes-maps)
        ;; {: route_id "1-100",
        ;;  :route_short_name "1",
        ;;  :route_long_name "Ligne 1",
        ;;  :route_desc "",
        ;;  :route_type "3",
        ;;  :route_url "",
        ;;  :route_color "#B22E75"}

> defines a 'select' function to make queries easy to write

        ;; Query for long_name and route_color
        (def route_ln_color (map #(select-keys % [:route_long_name :route_color]) routes-maps))

        (take 2 route_ln_color)
        ;; ({:route_long_name "Ligne 1", :route_color "#B22E75"}
        ;; {:route_long_name "Ligne 2", :route_color "#B22E75"})

</comment></comment><comment><USER3> Fun project! I also used Clojure for a transit status project - calling the REST API of my local bike share system to display how many bikes were in the nearest station. Clojure is great for exploring and transforming that kind of data.

One small tip for the author: clojure.data.csv would simplify csv handling. Its readme includes a simple routine to transform the data to maps.

<comment><USER4> Can you track which bikes move to which station?

<comment><USER3> No, because that data isn't available in the public API.

</comment></comment></comment><comment><USER5> You reminded me to work on my Jump Bikes Siri Shortcut which uses General Bike Share Feed specification.

[https://github.com/BrianHenryIE/Bikeshare-Siri- Shortcuts](https://github.com/BrianHenryIE/Bikeshare-Siri-Shortcuts)

I made it so I could ask "where's the nearest Jump bike?" in Sacramento. At some point the API stopped working, but, after checking today, it was just the URLs of the updated feeds had changed (the old ones still 200 with no actual data) so I think I've managed to fix it.

Unfortunately, Jump shut down in Sacramento because of Corona virus!

Overall, it only works OK. When Apple Shortcuts requests GPS location, it doesn't just return the GPS, it makes a HTTP call to get the street info, which isn't needed here and slows things down. Then the gbfs.uber.com API is very slow... as though they don't cache at all, whereas I thought they only refreshed once/minute: [https://gbfs.uber.com/v1/sacb/station_information.json](https://gbfs.uber.com/v1/sacb/station_information.json)

[https://github.com/NABSA/gbfs/pull/190](https://github.com/NABSA/gbfs/pull/190) [https://www.sacbee.com/news/business/article241326756.html](https://www.sacbee.com/news/business/article241326756.html)

</comment><comment><USER6> From the title, my mind was primed to think this was related to Transit, which is (primarily) a Clojure standard for sending Clojure data structures back and forth between frontend and backend: [https://github.com/cognitect/transit- format](https://github.com/cognitect/transit-format)

It's cool to see some practical Clojure examples on hacker news.</comment>


Photographer's Dashboard Camera Captures Alleged "Keyless" Car Thief - <AUTHOR> http://www.nbclosangeles.com/news/local/Keyless-Remote-Control-Car-Thefts-Auto-Burglars-Crime-211508441.html?_osource=nbcnewsmore <comment><USER2> posted in 2013....</comment>


Hepatitis C drugs re-energize global fight over patents (2017) - <AUTHOR> https://www.nature.com/news/hepatitis-c-drugs-re-energize-global-fight-over-patents-1.21558 <comment><AUTHOR> >> _Gilead has also licensed 11 manufacturers in India to produce cheaper generic versions of its hepatitis C drugs for sale in 101 developing countries. The generic medications retail for $300–$900 per treatment course in countries where they are permitted..._

Maybe India et al politicians should steal a bit less and save lives by paying roughly 100x less that USA patients. The drug costs money to be developed and trialed, you can't just copy the finished product, otherwise no one would try again...</comment>


Old Bill Gates Interview - <AUTHOR> http://ei.cs.vt.edu/~history/Bill.Gates.html

<comment><USER2> GATES: Our restricting IBM's ability to compete with us in licensing MS-DOS to other computer makers was the key point of the negotiation. We wanted to make sure only we could license it. We did the deal with them at a fairly low price, hoping that would help popularize it. Then we could make our move because we insisted that all other business stay with us. We knew that good IBM products are usually cloned, so it didn't take a rocket scientist to figure out that eventually we could license DOS to others. We knew that if we were ever going to make a lot of money on DOS it was going to come from the compatible guys, not from IBM. They paid us a fixed fee for DOS. We didn't get a royalty, even though we did make some money on the deal. Other people paid a royalty. So it was always advantageous to us, the market grew and other hardware guys were able to sell units.

</comment><comment><USER3> This is quite an interview; particular how he sets out discussions of the future.</comment>


Help me! I start coding too early on side projects... - <AUTHOR> http://kent.io/post/32019567964/you-dont-start-coding-right-away-with-your-clients-do

<comment><USER2> The problem is that when you "hack" or work on side projects you dont associate it with money or as a real job. You have to make sure that you realize that your time is valuable, opportunity cost. Every project that you work on you must make sure to work as efficiently as possible.

Before every app I build. I do a few things:

1\. Quick wire frame - so i dont go off on a tangent 2\. Amount of time I think it will take me to finish (be strict) 3\. What happens if I fail.

Stick to these rules and you'll get things done faster and a more organized manner.</comment>


On Programming Languages as Languages - <AUTHOR> http://programmingzen.com/2014/11/27/programming-languages-as-languages/ <comment><USER2> _" We can look at programming languages in two possible ways. They can be a means for us to instruct the computer, and incidentally communicate with fellow programmers, or they can allow us to communicate with other programmers in specific terms that are ultimately executable."_

If anyone doubted this, of course an essential purpose of programming languages is for communicating with humans. The computer only needs the binary code that triggers the microprocessor's electric signals in the right combinations.

What's a shame is that the common features of these languages have been shaped more by the needs of the machine than the needs of the developers - and not just that: by the needs of 1950's computers.

A lot of developers understanding of what a programming language is has been shaped by those early efforts, and dragged through 60+ years of PL history. More modern languages have overcome the most glaring inconveniences of early languages, but the core assumption -that a PL's purpose is ultimately and exclusively as a tool to convey instructions to the machine- remains unchallenged.

But that's not an essential property of human-machine languages, and programming doesn't _need_ to be that way. From the fields of End-User Development and semiotics applied to Human-Computer Interaction come some alternatives that propose an understanding of programming which is closer to the second way to look at PLs, as a tool for human comunication.

An interesting possibility is using computers in a way close to the "augmenting the human intelect" vision that existed before programing languages. In this approach, you don't have the loom-like vision of programs as sequences of instructions that are number-crunched by the machine, but as sets of symbols intended to be shown to humans, who would reason about them and extract meaning.

In this view, data and code are interleaved as a single entity, and not all content in the program needs to be executable - only some bits are crunched and passed to the processor for execution as a side-effect of using the tool, but the whole thing is intended as a sort of interactive novel that the user reads and steers to create some content or the other. (This is the approach of Literate programming, and is also related to Live Programming).

This can be taken to the extreme by creating instruction sets that work as recipies and can produce different executable code, so their meaning changes depending on the context on which they're executed. Configuration files and XML domain-specific languages may work this way, and it's a very natural way to reason for the human mind, yet this approach has not been fully explored by general-purpose programming languages.

<comment><USER3>
      More modern languages have overcome the most glaring
      inconveniences of early languages, but the core
      assumption -that a PL's purpose is ultimately and
      exclusively as a tool to convey instructions to the
      machine- remains unchallenged.

I really feel like you're selling an awful lot of the programming language design world short here. An awful lot of what programming language design is about is making it easy to precisely express what you mean, in a way that will make sense to future programmers, be robust in the face of changes, and so on. It has been a long time since it has merely been a way to convey instructions to the machine.

      Configuration files and XML domain-specific languages
      may work this way, and it's a very natural way to reason
      for the human mind

Your mind must work fairly differently from mine if you find XML a natural way to reason.

You seem to be ignoring all of the tools for building embedded domain specific languages in Lisp, Scheme, Ruby, Haskell and various other language, logic programming languages which are much more declarative, and so on.

Literate programming has existed for years, but never really caught on because it turns out that one of the best ways to express the meaning of a lot of code (especially code for a large project that changes fairly often) is via the code itself, not a bunch of natural language prose associated with it.

<comment><USER2>
      "I really feel like you're selling an awful lot of the programming language design world short here."

You may be right about that :-) Although now I realize my words didn't exactly convey what I intended to say, see below.

      "An awful lot of what programming language design is about is making it easy to precisely express what you mean, in a way that will make sense to future programmers, be robust in the face of changes, and so on."

Actually this is more what I was actually thinking when I said "the core assumption remains unchallenged". There are ways to program that don't assume you're trying to build a robust, unambiguous and precise meaning (and which are therefore much more adequate for non-technical users). But these ways have not been explored in depth, and are not known to the general mass of developers.

There is a lively conversation at the original blog, would you mind to move the conversation there, to keep it at one place?

[http://programmingzen.com/2014/11/27/programming- languages-a...](http://programmingzen.com/2014/11/27/programming-languages-as- languages/#comment-28865)

      "Your mind must work fairly differently from mine if you find XML a natural way to reason."

I was not thinking of XML as natural, but of "creating instruction sets that work as recipies and can produce different executable code, so their meaning changes depending on the context on which they're executed". :-D This is the way that humans follow instructions when they receive orders. It's what makes the following a joke:

Q. How did the programmer die in the shower?

A. He read the shampoo bottle instructions: Lather. Rinse. Repeat.

P.S. (BTW, how do you create those intended quote blocks? I don't know how to do it)

</comment></comment></comment><comment><USER4> Reminiscent of Weinberg's 1971 "Psychology of Computer Programming", which discusses programming as a human activity. This is from chapter 1:

"Programming is, among other things, a kind of writing. One way to learn writing is to write, but in all other forms of writing, one also reads. We read examples—both good and bad—to facilitate learning. But how many programmers learn to write programs by reading programs?"

He goes on to discuss programming as an individual and social activity, with the principle that it's a human activity at root.

</comment><comment><USER5> There is some recent research has shown that programming languages present some "naturalness":

Hindle, Abram, et al. "On the naturalness of software." Software Engineering (ICSE), 2012 34th International Conference on. IEEE, 2012. [http://macbeth.cs.ucdavis.edu/natural.pdf](http://macbeth.cs.ucdavis.edu/natural.pdf)</comment>


Deep Learning 'ahem' detector - <AUTHOR> https://github.com/worldofpiggy/deeplearning-ahem-detector <comment><USER2> Badly needed: something that removes coughing from classical music

<comment><USER3> Relevant: [http://www.davegrossman.net/gould/](http://www.davegrossman.net/gould/)

<comment><USER4> Terrific, hilarious page. I'm in the camp that likes glenn's humming though.

<comment><USER2> I like his humming, too, but at the risk of making a heretical statement, it would certainly be nice to have both options.

</comment></comment></comment></comment><comment><USER5> Hook this up to a shock collar and train yourself. Even better if it could detect "erm"s :-)

<comment><USER6> How about just... a mild vibration on the wrist or something? Then again, at least, "AhAAAAHHHH" is more interesting than "Ahem".

<comment><USER7> Mild vibration wouldn't be enough, it has to be at least annoying, if not painful... I would buy it in a second though, as this approach is probably the easiest way to self-train the "uhm"s & similar out.

Any entrepreneurs around here? ;)

<comment><USER6> No, but I can buy some dog anti-barking collars, and I'm willing to electrify some people... especially today.

<comment><USER7> Well then, if I start barking and can't stop, I'll contact you for sure!

<comment><USER6> Good boy!

</comment></comment></comment></comment></comment></comment><comment><USER8> Random trivia: "ahem" is a cultural / language based thing. Other languages use different "words" for "ahem". The same for grunting sounds. For example the sound people make when they need to push something very hard. It's cultural not natural. The sounds are different by culture.

<comment><USER9> And "huh" seems to be universal:

[http://www.smithsonianmag.com/science-nature/everybody- almos...](http://www.smithsonianmag.com/science-nature/everybody-almost-every- language-says-huh-huh-180949822/)

</comment></comment><comment><USER10> Can I get a deep learning that cleans podcast episodes from advertising?

<comment><USER8> Getting off topic but ... by advertising do you mean obvious commercials or submarine ones? I ask because my podcast player has an advance 30s, 2m, rewind 15s buttons. When a commercial like ad starts it takes me like 2-3 seconds to skip it. In other words I don't need deep learning to skip ads for me.

Which actually makes me question if podcasts can make money as it's so dang easy to skip all the ads.

<comment><USER11> A lot of podcast consumption is while driving, where operating the phone is dangerous and illegal. I would especially like an option to skip advertising when I'm listening to two episodes from the same podcast and the closing ads from one episode are the same as the opening ads in the next episode.

</comment></comment></comment><comment><USER12> So this is literally learned from images of the fake-color frequency spectrum?

That's not state of the art in DNN speech recognition, is it?

<comment><USER13> Pretty much SOA; most end-to-end systems use these spectrograms on short time slices. The alternative is mel-frequency cepstral coefficients, which are used more in GMM-HMM speech recognition than for DNN.

<comment><USER7> For other illiterates like me:

* SOA = state of the art

* GMM-HMM = Gaussian mixture model - Hidden markov model

* DNN = deep neural networks (more than 1 hidden layer)

* mel-frequency cepstral = MFC ;-)

<comment><USER14> Could sum1 write a GM script to replace all abbr.s with their ffs? The over use of abbr.s is one of the most XABs on Hacker News.

Could someone write a Grease Monkey script to replace all abbreviations with their full forms? The over use of abbreviations is one of the most extremely annoying behaviours on Hacker News.

(Thank you [https://www.allacronyms.com/aa- search?q=annoying&cx=01082138...](https://www.allacronyms.com/aa- search?q=annoying&cx=010821384832661523411:tvncv4ludxy&cof=FORID:11))

</comment></comment></comment></comment><comment><USER15> I'm serious here: Can we make a "euuhmm" remover for Elon Musk? I love his vision, but can't stand his talks because he can't a word out without "euhmm"-ing it.

<comment><USER16> lol... how about forking from github and train a model on Elon. I hate his euhmm thing so badly!! :D

</comment></comment><comment><USER17> <peeve>I hope this evolves to eventually become capable of removing "like"s, and maybe "uhm"s too, but certainly "like"s. I would willfully reside in the throat of a titanic bloviating German with influenza before listening to that haggard word uttered in every instance where punctuation or thoughtfulness ought have precedence. "Ahem" I can tolerate, even "uhm" and "you know"; but not all sentences require an analogy.</peeve>

<comment><USER17> For those apparently disturbed [1] by some attribute of the above, please see:

[https://en.wikipedia.org/wiki/Guttural](https://en.wikipedia.org/wiki/Guttural) \- note that the German language is, by some[2], considered guttural. Happens to be among my favorites too. "Ahem", being a guttural sound, I jovially compared to a hypothetically enlarged and garrulous German with influenza (for purposes of exaggeration), which one might fairly imagine sounding slightly more pharyngeal than usual - which I must add that I would truly not find offensive. As for any perceived assault on the ubiquitous abuse of the word "like", if there is anything I can add to exacerbate it, I'd be delighted to oblige.

1\. Euphemism for forbidden reference regarding votes

2\. [http://www.huffingtonpost.com/2013/08/03/german-harsh- langua...](http://www.huffingtonpost.com/2013/08/03/german-harsh-language- other-languages-video_n_3683379.html) \- A little witzelsucht for your aphonogelia.

</comment></comment><comment><USER18> A friend and I tried to make a similar detector for removing squeaking sounds of whiteboard markers from videos. Although solutions like this do sound like a waste of time to some, I think they can go a long way in removing those tiny annoyances.

<comment><USER19> That sounds fantastic! I've recently been looking at mechanical keyboards again (Cherry-MX blue switches, I have browns at the moment) and those are quite noisy. An algorithm to detect and filter keyboard noise could benefit millions of people with VoIP, live streams, etc.

<comment><USER16> interesting

</comment></comment></comment><comment><USER20> Next thing you need is ummm and uhhhh detection :)

<comment><USER21> Maybe I'm showing my age here, but I'd actually prefer a "liiiiiike" detector.

</comment></comment><comment><USER22> I would be interested in an "ahem" remover, with the constraint that it should also work if the "ahem" is superimposed over other sound, e.g. music.

</comment><comment><USER23> This really seems like a waste of time or an I missing something ?

<comment><USER24> First thought: helpful to know what words to ignore when trying to parse audio.

</comment></comment><comment><USER13> This is neat. Looks like you need more data though!

<comment><USER16> Exactly! With just 5 epochs and some hours on a low budget GPU I got 81% accuracy. Not bad at all, considering that no knowledge of MFC & Co. is required.

</comment></comment><comment><USER25> Is there a demo available?

<comment><USER16> the entire project is on github. In the folder data/ there are some samples to "see" it in action. Otherwise you have to train it on your voice and apply to whatever sound you like

</comment></comment><comment><USER16> ahem... hi everybody this is ahem... Piggy ;)

</comment><comment><USER26> Is it just a coincidence that this comes right at the end of Obamas tenure?</comment>


Ask HN: Looking for honest feedback from the community - <AUTHOR>

Hi there, So our web based start up just received 250k at a 1 mil valuation in funding from an angel investor. Up to this point my self and the three other co-founders had been putting up the development money our selves. We are extremely new to this game. We just had an idea and decided to go for it. I work in the film industry as a camera operator, one of us is an accountant, one is a lawyer, and the fourth is an ex canadian football player. So now here we are with a bank account full of money and what was, just over a year ago, only an idea. Our site is currently up in its most basic form as that was as far as we could afford to develop it on our own dime. A very smart friend suggested we begin here, on the hacker news forums, building a game plan on how to take this to the next level. So my question for this community is pretty broad. If you were in our position where would you begin? As a site that relies on user submitted content we are at the mercy of others to enjoy what we are offering enough to stick around and use the site.
One note I will make is that we are about to sign a deal with pugpharm to work on enhancing the user experience. If anyone has experience working with them, feedback would be greatly appreciated.
Thank you in advance for taking the time to chat with us.
Fansunite.com <comment><USER2> Let's see, where would I begin?

First, I would identify what we're trying to do (you know this) and from that figure out 1 to 3 core metrics for the site.

Metrics are hard, but try your best to identify something. A meaningful number. Active users (defined as users creating content) would be good.

Now track the __weekly growth percentage __of that number (how fast it grows week over week), and focus on keeping that growth percentage around 5%.

Just keep it at 5%.

Now you have a clear focus. Good luck! [http://www.paulgraham.com/growth.html](http://www.paulgraham.com/growth.html)

<comment><AUTHOR> Loved this article you linked to about startup growth. Thank you.

</comment></comment><comment><USER3> Hi there. I have some experience with building user generated content communities. If you'd like to talk, feel free to email me.

<comment><AUTHOR> e-mailing you right now.

</comment></comment><comment><USER4> Clickable - [https://fansunite.com/](https://fansunite.com/)

</comment><comment><USER5> Do you really need to wait for users to generate your content? I'd suggest that's the scenario most likely to fail (that is, waiting for users to generate content dramatically increases the odds of failure).

You might already be actively doing this, but if not.... Spin-up the flywheel by generating as much content through faking users as you can stand to. Simulate real users (you fake the user names, the contribution time stamps, the upvotes / downvotes, and anything else necessary for your particular community). The more quality activity on your site, the greater the odds you'll get that critical initial traction. It doesn't matter if it's real or fake, so long as real users can't tell the difference.

You could also consider paying users for activity, depending on exactly what you need. The Amazon web services mechanical turk premise.

[http://aws.amazon.com/mturk/](http://aws.amazon.com/mturk/)

I don't know how difficult it is to generate user content for your site, granted.

Look up how Reddit used this concept to fake-it until they made it. It's also a commonly used tactic on new dating sites. There's nothing worse than a site lacking in activity, do whatever it takes to avoid that. Users will suffer a lot of things, such as bad design, long before they'll hang around somewhere that isn't humming.

<comment><USER6> Yeah, that's how Reddit got off the ground. Worked out pretty well for them.

[http://www.youtube.com/watch?v=zmeDzx4SUME](http://www.youtube.com/watch?v=zmeDzx4SUME)

<comment><AUTHOR> Really insightful. It's amazing how openly they talk about how they faked users in the beginning. I guess at this point no one cares.</comment></comment></comment>


Eat The Rich: The App Economy's Middle Class Is Booming…And So Is The Poor - <AUTHOR> http://techcrunch.com/2012/08/01/eat-the-rich-the-app-economys-middle-class-is-booming-and-so-is-the-poor/

<comment><USER2> _> >Now look at 2012: the long tail is responsible for 68% of the revenue generated, with the top 25 at 15% and the top 26-100 at 17%.

>>Bottom line, in the new app economy, there's no struggle of the 99% here. The richer are getting richer, but so are the middle class and the poor. And those last two are gaining fast._

She seems to be defining "long tail" as all apps that are not in the top 100 ranks (i.e. 99.98% of all apps are in the long tail)

Not surprisingly, this definition leads her to the absurd conclusion that the poor are getting richer.

However, data (see <http://daveaddey.com/?p=893>) suggests that the bottom 80% of apps probably make just around 3% of app store revenue. If you define poor as apps in the bottom 50%, I'd say that their daily revenue is either zero or negligible (and a "middle-class" app in the 55th percentile isn't making much more)

<comment><USER3> I had similar suspicions as well.

The only graph/data that actually supports "the masses getting richer" by a _per app_ basis is the last graph which shows revenue per app rank[1]. However, this graph only shows the top 100 apps, which when taking the universe of 600,000 apps, is only 0.0166% of the universe.

Let's suppose that "middle class" of the app universe would be around the 70th percentile in the universe [2]. In this case we should look at the year over year revenue growth and market share growth of the 180,000th ranking app in the app store. I wonder if we could get numbers on such stats?

[1] [http://tctechcrunch2011.files.wordpress.com/2012/08/revenuen...](http://tctechcrunch2011.files.wordpress.com/2012/08/revenuenormalize_byrank- resized-600.png?w=640)

[2] Potentially flawed assumption.

</comment></comment><comment><USER4> I wonder how the revenue distribution will look like for the Windows 8 Store. Say, a year from now, when things have evened out and an appreciable fraction of Win7 users have upgraded.

Given that Microsoft will always be promoting Xbox LIVE games more heavily than any other games, I suspect we'd see a significantly less even distribution. Still, that might provide incentive for indies to raise the quality bar as much as possible.

</comment><comment><USER5> This seems roughly right, but out of curiosity I wonder what the results would be like per-developer rather than per-app, if those numbers are possible to come by.

It's plausible that these numbers mean what the article interprets them to mean, that a long tail of _developers_ is getting a larger share of the revenue than previously. But, as-is, these graphs don't exclude the alternate explanation that the "rich" people/companies, so to speak, are still pulling in most of the revenue, but by switching to a many-small-apps strategy.</comment>


Apply HN: Reworkshop – Reworks your iOS app for Android at half price - <AUTHOR> Problem:
So you outsourced your iOS app. Paid around $50k. Now you want an Android version. usually that's another $50k.
Solution:
At Reworkshop, we will rework your iOS app for Android (or vice versa) at half the price you paid, and even cheaper.
The Catch:
All we need is access to your current iOS (or Android) code.
At Reworkshop we are flabbergasted at the idea that development shops charge the same for the same app on both platforms. We understand that reworking your app to another platform is half the original effort.
P.S. Currently "We" is only me. Need to expand. I helped rework Chariot's (YC W'15) iOS app for Android. <comment><USER2> Link to your site? I couldn't find it by Gglng.

<comment><USER3> i don't have one. If you're interested in reworking One Degree for Android, please reach me directly via email: firstname.lastname@example.com</comment></comment>


iCracked (YC W12) Is Blowing Up With A New "Uber" For iPhone Repairs Service  - <AUTHOR> http://techcrunch.com/2013/02/23/icracked/

<comment><USER2> Is this model scalable and profitable? I have serious doubts. I see too many similarities to onsite pc repair services of the past like nerd on site, etc. This is at best a lifestyle business opportunity.

About 10 years ago, I operated a business of onsite pc service for small businesses. The largest cost was unbillable time spent on traveling from one customer to the next or sitting idle.

The article mentions tech, on contract, making $70,000-100,000 (seriously doubt these numbers from my own experience). Generously assuming each repair generates $100 in revenue, a tech has to fix 700-1,000 devices per year to make the reported number. With 350 tech on contract and iCracked eying "eight figure" (~$10 million) in revenue of which 50% from repair. At $5 million dollar in repair revenue, each tech is only generating about $14,000 in revenue.

Assuming tech works 8 hours a day 5 days a week, that means repair at least 3 devices a day. It is unlikely any organization can generate 3 calls every day for each tech within a short area.

IMO, this business is a dud.

<comment><USER3> Just to comment on your comparison to PC onsite service company... I think if they really market this thing everywhere as 1 trendy new semi-immediate, reliable iphone repair, it could do pretty well vs. the many small onsite pc repair businesses. From my own experience, people are consistently posting pictures of smashed IPhone screens on facebook. (and i've even driven over my own iphone myself, don't ask). I think it's a lot more common for a typical 16-30 yr old smashing their Iphone, wanting to get it fixed immediately vs. their computer not working for who knows what reason being much more serious/complex issue.

</comment></comment><comment><USER4> I wish you'd expand into third-party onsite tech service for other products. i.e. if I were deploying hundreds of devices in the SFBA, if I could pay your techs $x to take a y hour course online (or in a lab) to get qualified to work on a new item, then pay them per onsite service dispatch.

Dell, Lenovo, Cisco, etc. do this for really high end products or large contracts. Generally it's more cost-effective to RMA items from small customers, but it would be cool to have the option of selling onsite service.

</comment><comment><USER4> Wow, awesome. (I've never broken a phone or tablet, only a Kindle and an old iPod water damaged, but I can see how a $200-800 device you carry around could be at risk of damage.)

<comment><USER5> I've dropped all iPhones I've ever owned. Never shattered glass yet, but it's only a matter of time.

<comment><USER4> I've had really good luck with the Magpul cases (which match my magazines). They finally came out with one for the iPhone 5.

</comment></comment></comment><comment><USER6> Off Topic, but I don't really understand why TechCrunch would choose to refer to iCracked as the "Uber" for iPhone repairs when the AAA analogy is significantly better.

<comment><USER7> It's perfectly understandable. AAA is an old company, and Uber is the hot new and often controversial tech company. Now whether you agree with how they worded it.. that's a different story.

</comment></comment><comment><USER8> $XX million in annual revenue? People need to buy cases...

But power to iCracked, those are some seriously absurd numbers.

</comment><comment><USER9> Nice job iCracked team. Great service that everyone needs.

<comment><USER10> Well, Android users don't need iPhone repair.

<comment><USER11> They just need Android Repair..hmm wonder how long will it take for iCracked to move to that market? Android's device fragmentation makes it harder.</comment></comment></comment>


Scaling Secret: Real-Time Chat - <AUTHOR> https://medium.com/@davidbyttow/scaling-secret-real-time-chat-d8589f8f0c9b <comment><USER2> 50000 concurrent users? That's small enough to do with a single thread on a modern server.... What are they scaling?

<comment><USER3> Your point is valid. This isn't ultra-high scale, just the name of the series I intend to publish more into. It's more about building a simple service for instant usage upon launch.

We also used Pusher for global in-app notifications, which had to scale past 1,000,000 concurrent connections.

Aside: 50000 concurrent requests on a single thread, huh? :) Unless I'm missing something, that's 50 seconds assuming a request takes only 1ms to process. Sounds like magic.

<comment><USER2> > Aside: 50000 concurrent requests on a single thread, huh? :) Unless I'm > missing something, that's 50 seconds assuming a request takes only 1ms to > process. Sounds like magic.

1ms to route a chat message is plenty.

e.g. on a single AWS m1.small prosody[1] can process 40,000 stanzas per second.

[1] [http://prosody.im](http://prosody.im)

<comment><USER3> It's not just routing. It hS to read modify write from DB first

</comment></comment></comment></comment><comment><USER4> "It grew week-over-week to well over 1,000,000 concurrent connections (chat + notifications). Luckily, Pusher worked well and was fairly inexpensive" I'd love to find out what they mean by inexpensive because from pusher.com/pricing 10,000 connections is $399/month. I have no idea what 100x connections would cost (hopefully not $39,900/month). Frankly, the pricing of pusher and other competitors seems insane to me. I was considering pusher for my startup, but I realized that if my startup became mildly successful, I'd be stuck with a bill that would force my business to rapidly build another solution or take on excessive debt. Why begin with prototype technology that could lead your startup (if successful) to become insolvent?

It's not as if there is a shortage of available tech for handling socket connections. It took about a week for me to learn enough node.js and build a service with socket.io that did everything I needed.

<comment><USER5> 10,000 connections is $399/month is about the price of a dedicated server just for chat.

Depends on your application. Generally, if you have 1,000,000 concurrent users, shouldn't you be making some money or have investment to tide you over?

My app has ~3000 concurrent users, which comes out to 250,000 users per day making in the order of $XX,XXX per month.

At 1,000,000 concurrent, we'd expect to have 83 million users per day visiting the site. At that rate, we'd be making at the very least hundreds of thousands of dollars per month and could easily afford a $39,000/mo chat service.

<comment><USER6> Some apps have lower profit margins than others. Also some companies need to be able to integrate with their realtime channels on the backend (E.g. for doing custom realtime analytics, integrating with third-party services, applying transformations/filtering to messages in realtime, capturing certain messages for storing in your database, launching various realtime-based background tasks, etc... You do lose a lot of flexibility by going with a service like Pusher. Though it is well designed and very convenient.)

</comment></comment></comment><comment><USER6> SocketCluster's API is similar to that of Pusher so it can be a good self- hosted alternative: [http://socketcluster.io/](http://socketcluster.io/) \- It's also designed with scalability in mind. You do have to manage presence yourself though but that shouldn't be too difficult (You can keep track of user presence in your own database - That could actually be an advantage since you can go ahead and use that presence data easily on your back-end to do other stuff - Easy to integrate).

We're currently working with a couple of fast growing startups so it's getting traction (still early adopter stage though). We'll be announcing our native iOS client near the end of this week. (disclosure: I'm the main author)

</comment><comment><USER7> If they really had 1 million concurrent active users "assuming 5% of our simultaneous actives were chatting, that we needed to be ready to support up to 50,000 users chatting at once", and were seeing growth "chat was an instant hit. It grew week-over-week to well over 50,000 concurrent connections", why did they shut down?

<comment><USER8> I would say Secret did not have enough imagination to monetise those numbers or had a moral reason against that kind of money making..

</comment></comment><comment><USER9> There isn't enough of this information out there. Scaling things is incredibly hard, a lot more difficult than some would think. Not only do you have limitations around the software, but hardware and the problems that come with scaling hardware. Great article, looking forward to some more specifics (load balancing, memory/cpu/disk issues) in future articles.

</comment><comment><USER10> This isn't great for Layer. I think most companies want to own their chat stack. Its not complex enough, like say Stripe, to need a 3rd party. Has anyone used Layer and felt they added value?

<comment><USER11> They used Google's database service and Pusher, so only in a limited sense do they "own their chat stack".

Are there any true peer to peer chat apps left, or do they all go through some server now, even after call setup?

<comment><USER12> I really doubt it. Remember when you could just send someone a file, because their IM client allowed you to connect to each other directly?

I wonder if there's a good way to do this now, as some plug in somewhere... Even XMPP's file forwarding functionality fails for me.

<comment><USER13> Broadband and wireless routers kinda killed this. It's now typical for every computer on your home network to be behind a NAT, so to enable direct connect, you need to manually punch a hole in your router's firewall. The spyware situation of the early 2000s (which caused Microsoft to bundle a personal firewall with WinXP) didn't help either. Most users are not willing to fiddle with their network connection just so someone on the Internet can directly connect to them.

<comment><USER14> WebRTC allows for a peer-to-peer data channel and does the heavy lifting of NAT punch through for you. I've mostly been messing with the video chat side of things recently, but would be curious to see if the data channel could be used for large file transfers.

</comment></comment></comment></comment></comment><comment><USER15> How is this news? Chat has been around for a long time and Pusher is nothing more than a cash grab for lazy developers. You can easily get better performance, scalability, and customizability, for much cheaper with socket.io and and a caching and/or messaging service (Redis, *MQ).

<comment><USER16> I find it distressing that a "mid-brow dismissal" such as yours is the top comment.

<comment><USER15> Is it "mid-brow dismissal"? I'll submit to your criticism of my tone, but I believe a strong argument lies behind it. Its not that I mean to discredit what Secret has accomplished, only that people shouldn't be wooed into thinking Pusher is the way to accomplish it. Its a waste of money in my opinion, and the DIY alternatives will, I assume, prove to be much better options in the long run.

<comment><USER16> >>I'll submit to your criticism of my tone, but I believe a strong argument lies behind it.

The gist of your argument is that Pusher is "nothing more than a cash grab for lazy developers," which insults not just the creators of the service but also people who use it.

Just because DIY alternatives exist for something does not mean that thing should not be used, or that people who use it are "lazy."

<comment><USER15> Well, its not exactly "DIY" if you consider that many years of work have been put into building the libraries and software that solve these problems.

I personally find it ridiculous to pay for a service like Pusher, when I know that I can accomplish the same goals with FOSS without much extra effort. For the record, I feel the same way about Heroku, so take my opinion for what its worth... I don't intend to hide my bias.

I believe people should understand and take responsibility for their systems (when possible) instead of just defaulting to relying on proprietary, closed services and software.

Will Pusher still be supported in 5 years? Will it still be affordable? Will it remain stable? Will the number of connections I'm allowed on my current plan stay the same? These are questions I don't have to ask.

I admit my assertion that Pusher is "...nothing more than a cash grab..." is a little hyperbolic, and I mean no disrespect to the people who created and maintain it, but in some way it is true. Pusher is a business that relies on its users not having the time or know how to implement the service it provides on their own.

Max 20 connections... Want 21? pay $20/month...

I can copy and paste the example chat from socket.io and push it to a VPS and instantly do way better for much less.

<comment><USER17> > a business that relies on its users not having the time or know how to > implement the service it provides on their own.

By that rationale, pretty much every business on the planet that provides a service is nothing more than a cynical cash grab. Maybe you need to grow up a bit.

<comment><USER15> Of course this is how business operates... but consider the fact that you could pay someone to build you an intricate watch, and that you could also pay someone to brush your teeth for you because its a little easier than doing it yourself.

I respect Pusher and what they do to make money. There is a market, and Pusher is there to fulfill its needs. I cannot take issue with that. All I'm saying is that there are better options.

Anyways, I see a lot of tearing apart specific things I say, but not a lot of reasons why relying on Pusher is a better option than rolling your own... I welcome that sort of discussion.

For now, its time for bed.

<comment><USER18> I'll give the answer: because at that stage you're still trying to find product-market fit. If you can save $1k (say - and the dev time to develop a Pusher alternative probably costs more than that) in the validation stage by using an approach that will cost you 5x more in the long run - then that's a good business decision, because only 10% of the ideas that you try to validate are going to become real products.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER19> I recently discovered Pusher and was able to build and ship an entirely new feature in under a week. They have good documentation, thought provoking example apps and simple pricing.

Couldn't be more impressed with them. Keep it up!

<comment><USER20> Out of curiosity, if you were to implement the features of Pusher yourself, would it have added too much to your implementation? I guess you would need to set up your own Socket.IO server, and push data from that.

I've never implemented this, which I think is the reason I am underestimating the service that Pusher provides. It would be great if someone that did implement it would convince me that it would be a large hassle to do that internally.

<comment><USER21> I have come across Slanger[1] while researching for a good websocket server and it worked well for us. It's basically an open source version of Pusher backend. You may be interested in their code.

[1] [https://github.com/stevegraham/slanger](https://github.com/stevegraham/slanger)

</comment></comment></comment><comment><USER22> Really interesting that Pusher didn't choke on that!

Also patting my own back for thinking about chat session based on sorted user id's (for 2+ person chat) on my own once also. Felt like a nice way to do it, unsure if that breaks down at any point.

</comment><comment><USER23> So basically they used pusher to scale to around 50,000 concurrent users.

</comment><comment><USER24> I'm making a real-time communication iOS app, we're using Firebase[1] to quickly build it's real-time features.

There's to be a lot of hate on here towards using such services. Is it really a better option (flexibility, owning your data & price wise) to spend the time building your own system and having to hire engineers later on to manage/develop it?

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

</comment><comment><USER25> Hey Pusher guys; how much of that flow went through Haskell? Are you using it for your main service yet?

<comment><USER26> None of it sadly, though the application fetches its config from a haskell service.

The bits we are preparing for the main service are quite large (architecturally) but we hope to be beta testing them soon.

<comment><USER25> Make sure you keep blogging - I really enjoyed your last post on testing with Haskell!

<comment><USER27> What is the last post you are referring to? I couldn't find it.

<comment><USER26> This one, I imagine: [https://blog.pusher.com/porting-the-pusher-integration- tests...](https://blog.pusher.com/porting-the-pusher-integration-tests-to- haskell/)

</comment></comment></comment></comment></comment><comment><USER28> Step 1) Take investor's money Step 2) Take $3MM off the table Step 3) Profit Step 4) Shut down

</comment><comment><USER29> Why not use WebRTC for chat these days?

<comment><USER30> Secret was a mobile app. WebRTC is not supported on any version of iOS and is supported only on very recent android (5.x)

edit: source: [http://caniuse.com/#search=webrtc](http://caniuse.com/#search=webrtc)

<comment><USER31> That caniuse link refers to mobile safari. WebRTC in iOS is supported for native apps

<comment><USER30> Was not aware of the native support. Thanks.</comment></comment></comment></comment>


DHH: Apple Card is sexist [twitter thread] - <AUTHOR> https://twitter.com/dhh/status/1192540900393705474 <comment><USER2> This is a husband saying he gots more credit score than his wife.

Just this anecdote doesn't imply sexism. Also, with your browsing, you've been giving lots of info to Apple, they know things about your wife you don't know. Maybe this guy is jumping too quickly into conclusions.</comment>


What happened when MIT students used A.I. to make pizza - <AUTHOR> https://www.cnbc.com/2018/09/13/mit-students-use-ai-to-make-pizza.html <comment><USER2> Google did something similar with cookies[1], basically treated it like a non- gradient optimization problem[2], using survey results from human participants to estimate the empirical distribution function to be optimized.

[1]: [https://www.blog.google/technology/research/makings-smart- co...](https://www.blog.google/technology/research/makings-smart-cookie/)

[2]: [https://en.wikipedia.org/wiki/Derivative- free_optimization](https://en.wikipedia.org/wiki/Derivative-free_optimization)

From the article it makes it seems the MIT students used some kind of generative model to generate new, random recipes and didn't incorporate any human feedback, making it less interesting. After all, we know that RNNs can learn and model the much more complex syntactical structure of code[3], so generating recipes isn't exactly cutting edge.

[3]: [http://karpathy.github.io/2015/05/21/rnn- effectiveness/](http://karpathy.github.io/2015/05/21/rnn-effectiveness/)

</comment><comment><USER3> None of the "AI's" are ever explained, my guess is it's an RNN, as you can easily use that to generate a series of words, notes, etc. or really anything if it is trained.

<comment><USER4> Hi, indeed we trained an RNN, and you can find more details here: [https://medium.com/p/1d7c2c6cb3ce](https://medium.com/p/1d7c2c6cb3ce)</comment></comment>


Forget Mega-Corporations, Here's The Mega-Network - <AUTHOR> http://techcrunch.com/2014/01/03/meganetwork/ <comment><USER2> [https://news.ycombinator.com/submitted?id=hackhackhack](https://news.ycombinator.com/submitted?id=hackhackhack)

This account is a shill.

</comment><comment><USER3> I think there are more similarities than the author supposes between these "networks" and the traditional asian enterprise groups. For example, it's a classic feature of the _keiretsu_ to have interlocking shareholdings, directors, and financial foundations, ensuring cross-pollination of resources and broadly aligned interests. I think that has more than a few parallels with emerging "business networks" such as ycombinator.

Obviously the scale is a little different, but hey, give it a century...</comment>


Networked Physics: State Synchronization - <AUTHOR> http://gafferongames.com/networked-physics/state-synchronization/

<comment><USER2> This one's been out there for a few months, but I think it has a few lessons which could also be applied to online pair development platforms.

<comment><USER3> The final version was made public just yesterday.

[https://twitter.com/gafferongames/status/641069910274277376](https://twitter.com/gafferongames/status/641069910274277376)</comment></comment>


To the Gulf of Minneapolis (2016) - <AUTHOR> https://streets.mn/2018/11/16/to-the-gulf-of-minneapolis/ <comment><USER2> There's definitely a healthy "we like it better on our side" mentality when it comes to Minneapolis and St. Paul.

</comment><comment><AUTHOR> It's interesting to consider how many details on our online maps might be there because of submissions from random people who may or may not be submitting official names or details. When you zoom in to see these minute details, there's no way that Google or Apple can fact check every suggested change, so they have to assume that most submissions are truthful in order to hopefully provide details down to the most local zoom level.

<comment><USER3> The parking lot and back driveway of the metal shop next door is on Google as a street, with a name - 50th Street. And nobody knows why. I've deleted it from Waze ages ago, but Google has yet to catch up, if they even pull map data from Waze.

</comment></comment><comment><USER4> When MapMaker was still around, you could see a lot, but not all, of the history of a feature on Google Maps. A submission from an end user would have been visible clearly as such. Imports from third parties would have been less obvious (and definitely wouldn't have named the source).</comment>