HN user

2shortplanks

228 karma
Posts0
Comments14
View on HN
No posts found.

This article skips a few important steps - how a faster CPU will have a demonstrable improvement on developer performance.

I would agree with the idea that faster compile times can have a significant improvement in performance. 30s is long enough for a developer to get distracted and go off and check their email, look at social media, etc. Basically turning 30s into 3s can keep a developer in flow.

The critical thing we’re missing here is how increasing the CPU speed will decrease the compile time. What if the compiler is IO bound? Or memory bound? Removing one bottleneck will get you to the next bottleneck, not necessarily get you all the performance gains you want

Whoa! STOP!

At no point did anything say when I was creating stacks that this info would be public for other users of the site! I was shocked to find what I’d been ranking (which luckily was just chip flavors) available for anyone to see. What if I’d tried putting clients to evaluate in there?

You can’t just collect personal data and share it like that!

One thing this article doesn’t mention is how this all falls apart when you spend time in more than one country.

My UK bank (Barclays) won’t let me install their app on my US iPhone (i.e. my phone that uses a US based iCloud account). Tesco won’t let me use their loyalty app. I can’t install an app that’ll let me order Starbucks or McDonalds in the UK (I only have access to the US versions of these apps). I can’t watch Star Trek because the US paramount plus app detects I’m in the UK and I can’t install the UK version.

I could switch to a UK iCloud account but then when I’m in the states everything falls apart the other way round.

I’m really curious about the number of requests you end up making. I’d imagine that this would get expensive fast in a web app - AWS charge $0.40 per million read requests, so if you’re seeing ten request to your app server a second and that ends up making a hundred requests to S3, that’s going to come in at at about $34 a day!

A lot of this article seems to be conflating two things:

1. The ability for the code to process the error and recover from it 2. The ability to sensibly log, trace, and later for a human to understand the error after the fact

The later of these is best handled by using a tracing library systematically throughout your code to spit out open telemetr and “logging” the error within your local span. You can then debug the problem with a tool like honeycomb which’ll give you a much clearer idea of what’s going on. Having tracing in place will also help you debug in cases where you don’t have errors but your system is running slowly, doing something unexpected, etc.

This greatly reduces the problem domain you have to solve in actual error handling to just having the computer recover when something is recoverable. And in these situations it turns out that most recoverable errors are best expressed as “non-errors” once they migrate any distance from the origin of the error (e.g. the record not found turns into a standard “user not known” status return value - it’s no longer an error, but an expected behavior of the system!) So for these “short lived” errors that are either handled locally or bubbled up all the way to the top and never handled, I’ve found that Go’s native basic error framework is fine.

Numeronymize 2 years ago

Fowler's Law on Unicode: There's always another bug, you just haven't found it yet.

Dr Drang's script counts the number of _characters_ not the number of _glyphs_. This matters because there's more than one way to represent é: Either just as unicode character \x{e9} ("NFC") or as a combination of "e" and the combining character that adds the accent ("NFD")

For example for "léon" this prints out "l3n" for me.

What you need to do is normalize to NFC.

/usr/bin/perl -C -MUnicode::Normalize -pe '$_=NFC($_);s/(.)(.+)(.)/$1 . length($2) . $3/e'

Before I put down cash I have basic questions, like “how do I type a square bracket?” and “how do I type a backtick?”

The on-screen keyboard is pretty good, but makes coding and typing markdown hard. Will this solve this?

Also, this seems to be missing cursor keys. How do I move back and forward precisely? If the onscreen keyboard is hidden, I can’t even long press on space to move the cursor.

That’s actually one of the main reasons I like Obsidian - that I can easily use vscode with it. Obsidian’s backend is just markdown files on the file system which you’re free to edit with another editor at the same time as you have Obsidian open (it’ll notice file system changes and update any open documents near instantly). I even have a plugin setup that when I hit a keyboard shortcut it executes the necessary vscode command line tool to open whatever I’m viewing in obsidian in vscode.

I'd like to apologize on behalf of MaxMind for breaking your CI build. Let me assure you as a fellow programmer, I know how frustrating that can be! As you saw we've tried to reach out to the larger open source projects using GeoLite2 in advance, but we've not had time to give as much notice as we would like.

The CCPA was finalized in October, and it contains a number of ambiguities, particularly as it relates to our products. To arrive at our current interpretation, it has taken many weeks of working with privacy lawyers, following discussions in the privacy community, and observing actions other companies have taken. We're sorry for the timing, appreciating the frustration it causes, and wish we could have provided more notice.

With regard to the regular updating of the database automatically, I recommend you take a look at our own tool for automatically downloading the latest database: GeoIP Update https://dev.maxmind.com/geoip/geoipupdate/

Hope that helps.

Mark Fowler MaxMind

We apologize for not providing more notice. The CCPA was finalized in October, and it contains a number of ambiguities, particularly as it relates to our products. To arrive at our current interpretation, it has taken many weeks of working with privacy lawyers, following discussions in the privacy community, and observing actions other companies have taken. We're sorry for the timing, appreciating the frustration it causes, and wish we could have provided more notice.

MaxMind will provide immediate notification of Do Not Sell requests via the https://www.maxmind.com/en/accounts/current/do-not-sell-requ... page on our website (login required).

Future builds of the database will exclude those IP addresses by introducing the "split ranges" you describe.

Hope that helps.

Mark Fowler MaxMind

The problem with charging a fine is that by providing a mechanism for penance it reduces the pressure for those people who are prepared to pay fines to actually return the books on time.

The more affluent therefore work under different rules than the less well off, and can be "justified" in keeping books longer than they otherwise should. This probably explains why in the article they found a reduction in late returns when they abolished the fines.

My Grandmother loved the physical paper mail I used to send to her back home in the UK from https://www.pc2paper.co.uk/

She commented once that it took almost no time for the letter to get from the US to her. That's because, of course, I just uploaded the PDF for printing in the UK.