HNHacker News
TopNewBestAskShowJobs

adamch

1,872 karma · joined December 2, 2015

Australian, reluctantly turned Texan.

Building CAD at Zoo.dev. Previously Cloudflare (Tunnel, Zero Trust, Data Loss Prevention).

https://blog.adamchalmers.com

https://twitter.com/adam_chal @adamchalmers.com on Bluesky

submissionscomments
adamch··on Rust 1.47
We use it for many projects at Cloudflare. My team, Argo Tunnels, uses it for our backend and our end-to-end monitoring/healthchecks.
adamch··on Rust 1.47
It's a little thing, but one of my favourite parts of any Rust release is seeing which stdlib functions become `const`. The ergonomics of build-time evaluation are slowly improving, and I'm very excited to slowly do less at runtime!
adamch··on PostgreSQL 13
Postgres has great docs. It's one of the big reasons I love it so much. Very comprehensive, although I usually skip straight to the examples.
adamch··on Actix Web 3.0
At my job we use Actix Web for a server deployed in prod. We never use Nightly, I don't think Actix Web depends on any nightly features. All stable :)
adamch··on Actix Web 3.0
I think the docs are much better than they used to be. Just my personal experience, but I found Actix Web very easy to get started with for my job. There's also a Gitter chat room where people are pretty responsive.
adamch··on Actix-Web v3.0
Congratulations to the team. I've been working on an actix-web service for my job for ~6 months now, and it's generally been very pleasant. I'm really excited at how well the transition from a single maintainer to a community-run project has gone. The actix team have been great at answering questions on Gitter.

Today I was debugging a memory leak, and tracked it down to creating multiple awc::Clients. I found the commit that fixed it, assumed it was in one of the 3.0 beta branches, and prepared myself for a long, boring conversation with my coworkers about whether we were prepared to use a beta release. And then I checked and 3.0 had been released only an hour ago! Great timing.

adamch··on Cloudflare Argo Down Again?
Restarting your tunnel should fix it. We're slowly triggering a graceful restart of all tunnels, but if you restart yours, you'll get fixed faster.
adamch··on Nvidia Unveils GeForce RTX 30 Series GPUs
I think the new connector is only on the 3090.
adamch··on Nvidia Unveils GeForce RTX 30 Series GPUs
I wonder if the pricing will drop once AMD releases their ray-tracing PC GPUs.
adamch··on Don't trust default timeouts
We kept running into this issue at my job. A lot of our original database queries for our Go service called db.QueryRow, not db.QueryRowContext. The former doesn't respect timeouts, the latter does. So I ended up writing my own wrapper around Go's database/sql package. It basically just reexports all the functions that accept Context and hides the ones that don't. Very helpful. Timeouts are important.
adamch··on Rust 1.46
The Rust teams discusses their post-Mozilla future here: https://blog.rust-lang.org/2020/08/18/laying-the-foundation-... TLDR: they're feeling pretty good.
adamch··on One Year of Nushell
In a redesigned shell, ideally there would be a richer way to describe the result of a program. Maybe "return an integer and consult the manual to see what it means" isn't the best way forward.

Personally, I think Result types from Rust/Haskell/Swift make a lot of sense -- a program either succeeds with some output, or fails with an explanation of why. By default, pipes stop piping if one command fails.

adamch··on Time to Upgrade Your Monitor
Wow. He was right. I just changed my 15 inch Macbook Pro scaling away from default and WOW the text is clear. I also just turned my second monitor onto 144hz and WOW the animations are fast. My work from home setup just got significantly better.
adamch··on The Next Step for Generics
Yep, this is exactly the use case I was talking about.
adamch··on The Next Step for Generics
Finally. Better late than never. I have to write a lot of Go code at $BIGCORP and keep reaching for generic helper functions like Keys or Map or Filter or Contains. This is going to make my code much more readable.
adamch··on Rust 1.44 (async/await on embedded)
> Tech is and should never be political

I'm curious, do you think internet companies should refrain from releasing statements about political issues like net neutrality or the Patriot Act?

adamch··on Australia to refund $720m in Centrelink ‘debts’ calculated by unlawful algorithm
Robodebt is definitely going to join the Tacoma Bridge collapse as an anti-example in ENG1001 Professional Engineering in Australian universities.
adamch··on Twitter hides Donald Trump tweet for “glorifying violence”
You could say requesting dox is a form of violence. But it's a lot less violent than ordering the military to shoot people. It's reasonable that a policy of removing tweets that glorify violence would catch one but not the other.
adamch··on Ask HN: Who is hiring? (May 2020)
Cloudflare | Software/Systems Engineer | Full-time | Austin, TX USA or Lisbon, Portugal | Onsite | https://g.co/kgs/t6N2jb

I work on Argo Tunnel at Cloudflare. It lets you run servers on localhost and route traffic to them through Cloudflare, using a long-lived outgoing connection. Like "enterprise ngrok". It powers a lot of "Cloudflare for Teams" and we've seen a huuuuge increase in traffic because people use it to replace their VPN and access their business' software even while WFH.

We work in Go and Rust and manage a distributed system over Cloudflare's huuuuge edge network. At our scale anything that can go wrong will eventually go wrong. We're working on making the system more resilient, by slowly removing dependencies from our core user flows. And working on new features to support the rest of Cloudflare for Teams. It's a challenging environment but I've been here for 2 years and learned a ton about networking, distributed systems, concurrency, databases and Rust.

Apply at the link or DM me on twitter: @adam_chal

adamch··on Amazon to suspend delivery service that competes with UPS, FedEx
This makes sense. My guess is that Amazon was lower prices by taking a loss on this service, trying to scale it up. They definitely have the cash necessary to sustain losses until they can drive down competition!
adamch··on Rust 1.42
+1 to the Rust Discord being _really_ helpful. If you can provide an example on play.rust-lang.org, someone will definitely help you.
adamch··on [dead]
The USSR/Maoist China were authoritarian communist regimes. I'm not sure how that's relevant to the democratic socialism of Sanders etc.
adamch··on I Want Off Mr. Golang's Wild Ride
I think you're thinking of Everything Is Broken by Quinn Norton https://medium.com/message/everything-is-broken-81e5f33a24e1
adamch··on Six-year-old girl arrested at Florida school
I admit, when I moved to the US, I didn't expect "likelihood of arresting my children" to be a factor I'd need to consider in choosing schools.
adamch··on The general value of typed functional programming lies in leaving no edge cases
You can always use a fixed-precision numeric type.

You might be thinking "what about libraries that require floating-point", and that's a good concern. Luckily in Haskell there's the Num typeclass, so your libraries can let users use whatever fractional number type they'd like.

adamch··on Single-payer healthcare would save $450B and 68k lives a year: study
How is this fundamentally different from the electorate voting for an army to protect them, or firefighters to put out their fires? These are also paid for by taxes and where the electorate will vote for their own benefit.

Aren't the electorate also the ones voting for tax structures (or for the politicians who'll implement them)?

adamch··on Single-payer healthcare would save $450B and 68k lives a year: study
Is this confounded by the number of Americans would _want_ treatment, but can't afford it or can't access it via their health insurance?
adamch··on Democrats Declined DHS Offer to Test Caucus App
I don't understand why this wasn't done via Google Forms instead. A bunch of sites each reporting some numbers, which are then tallied and analyzed separately. Why is a whole app infrastructure necessary?
adamch··on Map/Reduce for Mortals
Or in functional rust

  (1..5)
    .into_iter()
    .filter(|i| i % 3 == 1)
    .map(|i| i * i)
    .sum();
I don't know if we really need a new syntax for map reduce.
adamch··on In Silicon Valley, some men say cosmetic procedures are essential to a career
This is simply untrue. The great thing about being bald is you can never have a bad haircut. Bald men, like men with long hair, or women with really short hair, appeal more to some people and less to others. But there's definitely no need to conclude you're screwed.

Physical attractiveness also matters way less for men in general. Personality and lifestyle are much more important.

← PreviousPage 3 of 5Next →