Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
narnarpapadaddy
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
5 ms
·
31.
▲
by
narnarpapadaddy
5mo ago
In the case of concrete there’s also a time component. Once you mix the cement and aggregate you have a few hours before it begins to set. The cement itself is already typically trucked in (a relatively small amount of dry, easily transport
32.
▲
by
narnarpapadaddy
5mo ago
Anecdotally, my take on this is that biggest value lever is strategy and alignment, not implementation. The typical company is dozens of little vectors pointed in different directions, and they cancel each other out. Scaling up the magnitud
33.
▲
by
narnarpapadaddy
8mo ago
Imagine you initialized 10,000 NPM repos identically simultaneously. Then had 100 different teams each take of 100 those repos for 10 different projects, and let each repo run for 1,000 commits. How distinct would each of those repos be? Ho
34.
▲
by
narnarpapadaddy
10mo ago
So, depending on someone else’s shared library, rather than my own shared library, is the difference between a microservice and not a microservice?
35.
▲
by
narnarpapadaddy
1y ago
FWIW, (I have one Clojure project I inherited at work that my team maintains) I love this direction.
36.
▲
by
narnarpapadaddy
1y ago
One addendum / clarification: It may also be that "space" and "time" are emergent properties, much like an "apple" is "just" a description of a particular conglomeration of molecules. If we get p
37.
▲
by
narnarpapadaddy
1y ago
Any given model has less fidelity than reality. An atlas map of the US has less detail than the actual terrain. The Planck constants represent the maximal fidelity possible with the standard model of physics. We can’t model shorter timefram
38.
▲
by
narnarpapadaddy
1y ago
The fact you can’t pretend _is the point_. A blanket policy of “no and never” that works well for other addictions or compulsions can’t be applied to food. :) As a counter-factual, imagine if every time you wanted to smoke you had to decide
39.
▲
by
narnarpapadaddy
1y ago
The point is that black and white, all or nothing is easier for many to stick to. It’s easier to not be tempted by a cigarette if you never see one or hang out with someone who smokes. With food, you can’t take approach.
40.
▲
by
narnarpapadaddy
2y ago
Yes, but we had that problem before when somebody would farm out coding assignments to a friend. I couldn’t say yet how it’s impacted the coding assignment’s effectiveness as a filter yet. We still do get crap code just sometimes it’s obvio
41.
▲
by
narnarpapadaddy
2y ago
We still do a coding assignment, but a significant chunk of the technical interview is dedicated to a walkthrough of the code. Thus far, that’s been able to detect those who relied solely on AI. …If you used AI and can still explain to me w
42.
▲
by
narnarpapadaddy
2y ago
Appreciate the charitable interpretation. Both “complexity“ and “abstraction” take many different forms in software, and exceptions to the rule-of-thumb abound so it’s easy to come up with counter examples. Regardless, thinking in terms of
43.
▲
by
narnarpapadaddy
2y ago
You’re right, I suggested two different dimensions of complexity there as a lens into how much complexity a function contains. But I think the principle holds for either dimension. I don’t think you need only 20 test cases for open(). Somet
44.
▲
by
narnarpapadaddy
2y ago
When doing the initial design start in the middle of the complexity to abstraction budget. If you have 100 “units of complexity” (lines of code, conditions, states, classes, use cases, whatever) try to find 10 subdivisions of 10 units each
45.
▲
by
narnarpapadaddy
2y ago
And with respect to function behavior, I’d view it through the lens of cyclomatic complexity. Do I need 5-20 non-trivial test cases to cover the range of inputs this function accepts? If yes, function is probably about the right level of be
46.
▲
by
narnarpapadaddy
2y ago
Think of it more like a “complexity distribution.” Rarely, a function with a single line or an interface with a single element or a class hierarchy with a single parent and child is useful. Mostly, that abstraction is overhead. Often, a fun
47.
▲
by
narnarpapadaddy
2y ago
Implicitly, IIRC, the optimal ratio is 5-20:1. Your interface must cover 5-20 cases for it have value. Any fewer, the additional abstraction is unneeded complexity. Any more, and your abstraction is likely too broad to be useful/unders
48.
▲
by
narnarpapadaddy
2y ago
Appreciate the response. I viewed it more as a question about scope rather than preference. At mega-scale, even IDE based tools are skipped in favor of automated tools such as Refaster/OpenRewrite that can refactor 10s of millions of l
49.
▲
by
narnarpapadaddy
2y ago
I think I understand the use case for a smart surround plugin like this; I watched the demo video and saw and lot of picking-and-pulling text. What I don’t understand is the development workflow that includes so much text manipulation. If y
50.
▲
by
narnarpapadaddy
2y ago
Personally, I think it’s both. Yes, the strategy is important but it’s nothing without the ability to execute. And we’ve all worked with the god-tier engineer who creates never-ending boondoggles because they can. And, yes, the larger the o
51.
▲
by
narnarpapadaddy
2y ago
Relative to your competition. Performance is only adequate if it’s at least as good as the engineers of the other players in your industry. Otherwise, you’re losing ground. As long as anyone in your market space is actively trying to manage
52.
▲
by
narnarpapadaddy
2y ago
While the KMP story specifically is still pretty rough, supporting native and JS (or WASM) is becoming table stakes for new languages. Go, Rust, Gleam, even C all support some version of this. Now that there’s a common system API available
53.
▲
by
narnarpapadaddy
2y ago
If one is not currently employed as an engineer? Frankly, seriously consider a career change. The ladder has been pulled up for entry-level positions due to AI, interest-rates, etc. This will come back and bite us as an industry, but it’ll
54.
▲
by
narnarpapadaddy
2y ago
This is my experience as well. The candidate management tools (even the AI-powered ones) I’ve tried have been next to worthless.
55.
▲
by
narnarpapadaddy
2y ago
I can’t speak to your experience. If you haven’t been completely inundated with junk applications you’ve discovered a process I never have, and I would love to hear about it. How do you go about hiring at scale? 100s of interviews a month i
56.
▲
by
narnarpapadaddy
2y ago
Agree to disagree. My experience is that it’s quite a bit more nuanced and complex than that. The uncertainty works both ways. I don’t know at the moment I open a position when or if someone qualified will apply or be hired. I don’t even kn
57.
▲
by
narnarpapadaddy
2y ago
And to actually answer the question: 2 and 50. You’re replacing half the staff each year. Any given month you expect to lose .5 and 25 employees respectively. With a lead time of 3-4 months in the former, that means during any given hiring
58.
▲
by
narnarpapadaddy
2y ago
At a team size of 500 the number of roles is flexible. Do I hire one senior or two mids? It can depend on the quality applicants. And if an applicant is really exceptional, money can sometimes be found horse-trading with other parts of the
59.
▲
by
narnarpapadaddy
2y ago
Seniors have a language-independent model of software development tasks such as writing code, testing, debugging, building and publishing artifacts, etc. to work from. They can map that model more or less to any software ecosystem. That mod
60.
▲
by
narnarpapadaddy
2y ago
I have founded and “exited” 3 startups, 2 of which ended in bankruptcy. :)
More ›