HNHacker News
TopNewBestAskShowJobs

andrewbarba

968 karma · joined February 22, 2014

Head of Engineering @BarstoolSports

Building @SwiftCloudApp

https://swift.cloud

https://github.com/AndrewBarba

http://abarba.me

submissionscomments
andrewbarba··on Pasta Cooking Time
This math doesn't account for the time it takes to get the water to a boil. Probably closer to 40% savings. Still, quite good!
andrewbarba··on Show HN: Click counter using iPhone volume buttons
Doesn't seem to work for me. I downloaded and ran on my Mac and proceeded to click the volume buttons on my iPhone but the count remains 0.
andrewbarba··on Apple will launch a journaling app
It will, most definitely, be end to end encrypted along with the rest of user data in the iCloud ecosystem.
andrewbarba··on Apple HomePod 2nd Generation
Worth noting:

- We lost two tweeters (7 down to 5)

- We lost two mics (6 down to 4)

Really curious how the sound compares to the original.

andrewbarba··on One Million Database Connections
How could you possibly say this is doing it wrong? The only way you could batch requests in the way you describe is if you have 1 (or very small number) compute nodes. You would need all those requests to hit same node so you could try and batch. With serverless compute infrastructure (which is what this blog is demonstrating by using lambda) you can have 1 isolated process per request and therefore need a database that can actually handle this kind of load.
andrewbarba··on Implementing parts of the Swift compiler in Swift
Love to hear that! Always feel free to reach out if you have any questions or run into issues.
andrewbarba··on Implementing parts of the Swift compiler in Swift
Thanks so much.

And short answer - Yes.

My guess is it's a matter of 'when' I have to deal with this. I've had the domain for a while, and this is something I've wanted to build for such a long time. Things fell into place when I was able to build a Swift SDK for Fastly's platform back in January this year. The stubborn engineer in me went ahead and used the domain anyway and launched what you see today.

andrewbarba··on Implementing parts of the Swift compiler in Swift
This is a shameless plug, but I built Swift Cloud to help people build scalable backends in Swift: https://swift.cloud

Behind the scenes we compile Swift to WASM and deploy to Fastly's edge network, Compute@Edge. At my day job we are using this in production and serving thousands of requests per second on our Swift app. Overall it's a lot of fun to deploy Swift on server, but the developer UX still leaves a lot to be desired. Running and testing locally is still non-trivial.

andrewbarba··on Select ’Hello, World’: Serverless Postgres Built for the Cloud
Are there plans to release an HTTP API to make it easier to use with services like Fastly Compute@Edge and Cloudflare Workers? And if so would the API be global or region specific?

One thing I haven't seen with "serverless" databases is an easy way to dictate where data is stored. Mongo has a pretty clever mechanism in their global clusters to specify which regions/nodes/tags a document is stored in, and then you simply specify you want to connect to nearest cluster. Assuming your compute is only dealing with documents in the same region as the incoming request, this ends up working really well where you have a single, multi-region db, but in practice reads/writes go to the nearest node if the data model is planned accordingly.

A real world example of how I am using this in Mongo today: I run automated trading software that is deployed to many AWS regions, in order to trade as close to the respective exchange as possible. I tag each order, trade, position, etc. with the exchange region that it belongs to and I get really fast reads and writes because those documents are going to the closest node in same AWS region. The big win here is this is a single cluster, so my admin dashboard can still easily just connect to one cluster and query across all of these regions without changing any application code. Of course these admin/analytics queries are slower but absolutely worth the trade off.

andrewbarba··on Chess Grandmaster suspended by Twitch for streaming Dr Disrespect playing chess
It's good for us too - we got proper Hikaru game recaps on YouTube.
andrewbarba··on PartialExecuter: Reducing WebAssembly size by exploring all executions in LLVM
Is this something that could be exposed as a generic CLI tool to replace something like wasm-opt from Binaryen?
andrewbarba··on Myths about cooking steak that need to go away (2013)
Hah! We had the same idea.
andrewbarba··on Myths about cooking steak that need to go away (2013)
Kenji is an absolute legend in the culinary world. I highly suggest you checkout his youtube channel, his wealth of knowledge (backed by his own experiments) is simply unmatched.
andrewbarba··on A real-world comparison between Cloudflare and Fastly
Wow thanks so much for pointing out the fixed length stream. I had been talking with a few people on your team and no one pointed me to that. That entirely solves our problem to getting things into production. Thanks a ton
andrewbarba··on US throws out millions of doses of Covid vaccine as world goes wanting
Are we now saying donating unused things is inferior to donating things that could be used? I think this is a horrible take. Also two years since when? US had regular supply of vaccine only since March.
andrewbarba··on Vercel Serverless Functions vs. Cloudflare Workers
One important piece missing from this article is that on Vercel you do not get global Serverless functions on any plan except the Enterprise plans. By default you can pick one preferred region for your Serverless functions and that's the region that's always used. In practice, assuming you have a somewhat decent caching strategy, this doesn't really matter as far as latency is concerned. Where it could potentially matter is that AWS region having an outage and now you can't fallback to another. We deploy all our functions to at least two regions and Vercel does handle region failover in this case.

Disclaimer: I'm a Vercel enterprise customer

andrewbarba··on Major Incident at Fastly
With Mux you can enable "Redundant Streams" (multiple CDN's used in HLS manifest) which I think solves the issue here. We are also a big Mux customer but admittedly haven't made the full switch to redundant streams, although our testing was very promising. Since their ingest is all GCP I don't think that was affected by this, and it would have just been delivery.

https://www.mux.com/blog/survive-cdn-failures-with-redundant...

andrewbarba··on WhatsApp Will Start Showing Ads
This is very wrong. I worked as an intern at WhatsApp in 2013 and they had over 30 employees, a lot were actually customer support. And “customer support” doesn’t do it justice. Every feature shipped was translated across 30 languages and CS was made up of people who could do a lot of the translation in house as well as provide actual support. I was an engineer on the website that dealt with all the support articles and translation, but the platform teams were all two engineers per platform, and then the backend engineers who worked magic with erlang.
andrewbarba··on A Spacetime Surprise: Time Isn’t Just Another Dimension
I don’t think this works either because you can’t meaningfully agree on when light was emitted from one of the clocks. The only solution should involve a single clock but then you are always measuring 2 way and not 1 way speed.
andrewbarba··on Swift Concurrency Roadmap
That's like saying: Could you imagine having a function with many arguments and trying to find the return type?

Swift already uses the space at the end of the function declaration for things like throw and generic constraints. I personally don't see an issue with where it is other than I also write a lot of JavaScript and the context switching between languages might take a couple seconds.

andrewbarba··on Intermittent fasting works – not only for weight loss but also for heart health
Not that it matters, but Covid made the cut here.
andrewbarba··on GitHub for mobile is now available
I’ve seen brand new apps take up to 48 hours to show up in search results.
andrewbarba··on Lyft’s algorithm is trying to block people with names like ‘Dick’ and ‘Cummings’
A credit card is not required to use Lyft. You can use credit from gift cards or promo codes, as well as 1 time payment methods like Apple Pay which are completed at time of ride booking and do not expose names
andrewbarba··on Tesla Cybertruck
Does he kill the guy who designed the glass or the guy who suggested trying it again on the rear window?
andrewbarba··on Small but significant improvements in Swift 5.1
It's specifically around default values.

If you use any language long enough you will think, hey it would be nice to have X. Alejandro (in high-school at the time) thought exactly that and implemented it himself - https://github.com/apple/swift-evolution/blob/master/proposa...

You could almost argue the real feature here is how open the community is to additions like this, and there's no need to wait for people at Apple to do it.

andrewbarba··on Netlify Analytics
The funny thing about this is tons of developers are using Netlify for SPA's and therefore only that first request will be caught by their edge nodes, all subsequent page views will be missed.
andrewbarba··on How to pick a random number from 1-10
Most people have at least 10 digits memorized? That is one bold claim
andrewbarba··on Stripe Chargeback Protection
This appears to require the new Checkout product in order to enable it. What happens if we have a percentage of sales coming from a native iOS or Android app? Are we not allowed to enable protection? Or would just the web transactions be covered?
andrewbarba··on Security Update
He/she is making a joke. No user data was accessed so the assumption is questions may have been, a couple pluses changed to minuses could cause a lot of damage (headaches?) when copy pasting.
andrewbarba··on Pika/pack – NPM packaging, reimagined
Strange, the title felt pretty accurate to me. I had a good sense of what I was about to read (basically guessed it would handle TypeScript from the title), and then was impressed with the additional features.
Page 1 of 3Next →