HN user

markl42

139 karma

GraphQL Nerd @ Yelp // https://twitter.com/mark_larah

Posts41
Comments28
View on HN
blog.larah.me 14d ago

Preventing LLM unit test spam

markl42
2pts0
blog.larah.me 15d ago

The Case for Service-to-Service GraphQL

markl42
3pts0
graphql.org 1mo ago

Introducing GAPs: GraphQL Auxiliary Proposals

markl42
2pts0
graphql.org 3mo ago

Default GraphQL response is now HTTP 500

markl42
34pts4
github.com 4mo ago

Show HN: Clip – Claude Interactive Picker

markl42
3pts0
github.com 6mo ago

Show HN: Spacelist, a TUI for Aerospace window manager

markl42
45pts6
programming.protips.wiki 7mo ago

Don't Gobble Up Errors

markl42
4pts0
en.wikipedia.org 10mo ago

Cincinnati Time Store

markl42
3pts0
programming.protips.wiki 11mo ago

Use assertions for possibly null values

markl42
2pts0
blog.larah.me 1y ago

Create 'Mess' Directories

markl42
12pts1
blog.larah.me 1y ago

Never say "it didn't work"

markl42
2pts1
blog.larah.me 2y ago

Upstream vs. Downstream Services

markl42
1pts0
programming.protips.wiki 2y ago

Don’t Try and Outsmart the Linter

markl42
2pts0
programming.protips.wiki 2y ago

Don't Try and Outsmart the Linter

markl42
1pts0
blog.larah.me 3y ago

Working a new thing for other developers to use? Write the docs first

markl42
2pts0
programming.protips.wiki 3y ago

Copy and paste error messages from the typechecker when using suppressions

markl42
2pts0
programming.protips.wiki 4y ago

Don't Try and Outsmart the Typechecker

markl42
1pts0
blog.larah.me 4y ago

You can understand or debug just about anything. Just keep popping the hood:)

markl42
2pts0
programming.protips.wiki 4y ago

Give a reason when using suppression statements

markl42
2pts0
programming.protips.wiki 4y ago

JavaScript: Chain custom errors to preserve stack traces

markl42
1pts0
blog.larah.me 4y ago

Teaching People to Fish

markl42
2pts0
github.com 4y ago

Jest: How do I mock x? (Runnable examples for common mocking scenarios)

markl42
1pts0
blog.larah.me 4y ago

You can debug or understand anything. Keep popping the hood

markl42
2pts0
github.com 5y ago

Tiny Treeshaker: JavaScript tree shaking in 200 lines of code

markl42
62pts54
programming.protips.wiki 5y ago

Show HN: Programming.protips.wiki – A Collection of Programming Protips

markl42
5pts0
techwriting.styles.wiki 5y ago

Techwriting.styles.wiki – a wiki of styleguide tips for writing documentation

markl42
2pts0
engineeringblog.yelp.com 5y ago

The Dream Query: How we scope projects with GraphQL

markl42
4pts0
techwriting.styles.wiki 5y ago

Show HN: Techwriting.styles.wiki – Tips for improving project docs, RFCs etc.

markl42
4pts0
blog.larah.me 5y ago

Write explicit type guards

markl42
1pts0
en.wikipedia.org 5y ago

Betteridge's Law of Headlines

markl42
1pts0

Has any streaming service trained a model to actually understand the music itself to work out what other songs would be of a similar vibe/genre?

My favorite band (vulfpeck, and more recently jack's solo stuff) often branch out into different genres, and it's a bit of whiplash when it goes to another song just because the artists are similar / appear together in other places.

At the risk of hijacking the comments, I've been trying to use OTel recently to debug performance of a complex webpage with lots of async sibling spans, and finding it very very difficult to identify the critical path / bottlenecks.

There's no causal relationships between sibling spans. I think in theory "span links" solves this, but afaict this is not a widely used feature in SDKs are UI viewers.

(I wrote about this here https://github.com/open-telemetry/opentelemetry-specificatio...)

How big of an issue is this for GQL servers where all queries are known ahead of time (allowlist) - i.e. you can cache/memorize the ast parsing and this is only a perf issue for a few minutes after the container starts up

Or does this bite us in other ways too?

I’m not familiar with the work that OWASP does, other than the cheat sheet series.

The cheat sheet series is amazing - a great resource to defer to when you don’t know or want to think about how to do <x>, you just want to look up and implement the industry standard.

It’s a great reference, and I use it lot. <3 to the folks working on that :)

Maybe only kinda sorta relevant, but I interned at RefME for a summer - basically a Zotero competitor. There was a lot of value (for users) in scraping web pages to autofill to author, title, date etc so it could generate the references, something I started to work on (but then they got bought out so not sure what ended up happening)

Any I could've imagining this being a paid pro feature down the line

GraphQL makes a lot more sense at the scale of a big company where every team rewrites the same AJAX endpoint logic to fetch the same set of core entities (except in delightfully subtly different ways). Having “the one true” representation of your User object or Business object, but having the flexibility to fetch subsets of fields is huge.

And having a smaller team plug their page-specific types into the graph and just provide the foreign keys and have it “just work” is great.

GraphQL for me solves more of an organizational challenge rather than a pure technical challenge.

More security layers doesn’t always == better security

The “nth nth and nth” character of your password means they’re storing your password in plaintext, and Auntie Nora is more likely to have it written on a postit cos she can’t use a password manager.

“Name of your first school” etc type questions are obviously awful

My favorite is HSBC kept asking me to enable “voice identification” every time I phoned up as a “more secure way” of authenticating myself...which to me smells like a cat and mouse game between who has the better ML model. Oh also https://www.computing.co.uk/news/3010450/hsbc-voice-recognit...

Good.

When I moved to the US from the UK, I already had British HSBC accounts, so thought it made sense to open up an HSBC account and credit card. Got a $200 credit limit (thanks?), awful app, terrible customer service...eventually got fed up and closed all my accounts. Good riddance.

Also side note while I’m on the topic - to log into chase and do stuff, I enter my password. That’s it.

To log into HSBC or any other UK bank, you need to enter the 8th, 3rd and 19th letter of your password, app generated security token, digital security key password, the 822nd digit of Pi and the current orbital trajectory of Jupiter.

Can I please please just have normal 2FA...

It's undeniable that there's a learning curve to GraphQL - but at the end of the day, it's just adding another investment that developers may choose to make their lives easier in the long run.

As in industry, we're okay with a frontend JS framework - React (or vue or angular) being part of the baseline set of investments you make when building a website. It's just considered the cost of doing business. (But that wasn't always the case! I for one don't miss using jQuery...)

I imagine GraphQL will get to a similar place - where the investment is more well understood and accepted.

(Of course common sense still applies - if a website is simple enough that it doesn't need a frontend js framework then don't use one - same goes for graphql, don't use it if you really don't need it)