KentBeck
|
1 year ago
|
on: What do you visualize while programming?
I tend to visualize call trees. Much of my refactoring is manipulating the call tree--flattening it, re-extracting subroutines, moving expressions up & down.
Another non-symbolic style of thinking I use is kinesthetic synesthesia. I "feel" the design "lean" in one direction or another, then refactor in that direction.
KentBeck
|
2 years ago
|
on: Template for Impactful Ideas
Why should I listen to you?
Seriously, thank you for that feedback. While the current generation of developers has heard of my work, they don't necessarily associate it with me. Establishing credibility would amplify what I say.
KentBeck
|
3 years ago
|
on: Boss' Dilemma: Taking Responsibility Signals Cooperation
I agree about the importance of alignment. The recent evolution in my thinking is to take into account the power differentials between the folks who need to be aligned. As The Boss it's easy to say, "Everyone should be aligned," without seeing the incentives you are creating for folks not to align. And then fuss about their lack of alignment.
KentBeck
|
3 years ago
|
on: Ask HN: What is the most impactful thing you've built?
JUnit
KentBeck
|
3 years ago
|
on: Behavior Change = Revenue versus Structure Change = Option
This is a 40-year-old mystery for me--why is it so very hard to get agreement about when & how much to design. Moving too much of the design too soon doesn't work. Moving it too late doesn't work, not in the long run. But why is everyone so completely dissatisfied with every possible option?
Fear vs greed seems like a pretty good model. Gives me somewhere to go next, anyway.
KentBeck
|
4 years ago
|
on: A Death-Aware Career Plan
They're convex--small investment, small chance of a large return. Also, I've been curious what mechanism will fund creators creating & NFTs seem like a contender.
KentBeck
|
5 years ago
|
on: Tech compensation is biased toward the long-term. Fine if you have a long term
BadCookie, you and I have different constraints. The way you're thinking about accumulating assets makes sense given a child who will need assets and can't accumulate them themselves. The way I'm thinking makes sense given that my 5 kids are all launched and responsible for their own finances. (I invested in all of them--it's not like I just kicked them out at 18.)
My first reaction to your comment was defensiveness. When you explained how your situation differs from mine I realized you had just over-stated. Happens.
I wish you and your child well. A permanently dependent child is a tough position to be in.
KentBeck
|
5 years ago
|
on: We aren’t owed an audience for our “feedback”
I recommend mouthwash. Something minty fresh.
KentBeck
|
5 years ago
|
on: If you do what you're told, you're paid too much
That would be the "belligerent asshole" interpretation, one that I applied for the first 10 years of my career.
As an engineer, I often have intuitions about what I should work on. I'm saying those intuitions are valuable. Exercising my intuition improves my ability to choose priorities. I am still responsible for results, which is why I am not saying, "Do whatever you want. Nobody can tell you what to do." Someone is paying your salary for reason and at the end of the day you'd better be able to justify your salary or it will stop (again, voice of experience here).
As a manager, I need to accept that I will have intuitions about what to do next but that people who report to me will also have intuitions and theirs may not match mine. I need to choose carefully when to insist on my priorities because a) I can easily be wrong and b) specifying too much evaporates motivation. I generally get the best results by communicating what clearly, but leaving wiggle room.
If you think that engineers, given their druthers, pick the easiest things to do, then you talk to different engineers than I do.
KentBeck
|
6 years ago
|
on: Ask HN: How can I pick a side project and stick with it?
Don't. Most side projects aren't worth investing heavily in, but you can't tell which is which without trying them. I had started hundreds of programs before Erich Gamma and I programmed together. If I had forced myself to "stick with" one of those early projects, we wouldn't have written JUnit.
KentBeck
|
8 years ago
|
on: Integration tests are a symptom of poor design
Hang on a minute. I'm both Superprogrammer and a washed up old has-been? This is getting confusing.
There's no shame for me in using integration tests. They just hint at an alternate universe where the design is different and they either disappear entirely or become unit tests. So today isn't the day that happens. Okay. "Perfect" is a verb.
KentBeck
|
8 years ago
|
on: Integration tests are a symptom of poor design
There's a challenge finding the right headline when posting to HN. My last few posts had very literal headlines and went nowhere. I amped this headline up a bit while making sure it was still honest and, looky here, it got more attention. Now I have to decide how I feel about the difference.
KentBeck
|
8 years ago
|
on: Integration tests are a symptom of poor design
Thank you for letting me know how I appear to you. I don't agree that my point of view is obsolete or that I am not entitled to an opinion about design. Judging what I write based on my age led to you, as other commenters have pointed out, missing the point of my post.
Your point about up-to-date examples is well taken. Finding good examples is the hardest part of technical writing for me. As I work on Facebook and Instagram I will keep my eyes open for clear examples of the same principles, because the principles really are the same regardless of shifts in technical fashion. You'll have the opportunity to learn that in the years to come.
KentBeck
|
8 years ago
|
on: Integration tests are a symptom of poor design
How is this a disagreement?
KentBeck
|
9 years ago
|
on: Paint drip people, a successor to T-shaped people
Following the drip down the canvas is as important as moving the brush along (to stay with the metaphor).
KentBeck
|
9 years ago
|
on: Not Saying Winter Is Coming, but Where’s Your Coat?
The invasion of Iraq is what I had in mind. I wanted to point out the senselessness of that operation.
KentBeck
|
9 years ago
|
on: Not Saying Winter Is Coming, but Where’s Your Coat?
My skill/specialization visualization is the paint drip model (generalization of T). You're adding a little of this skill, a little of that, one catches your eye and you dive deep for a while, then a little of this, a little of that.
I assumed that readers had one strong skill already, hence the emphasis on broadening.
KentBeck
|
9 years ago
|
on: Mastering Programming: An Outline
I updated the description of 80/15/5, a career risk management strategy.
KentBeck
|
10 years ago
|
on: Power laws as a thinking tool
tl;dr You can make content so bad that it won't spread, but you can't make it so good that it is certain to spread. Virality grows at the confluence of skill, timing, and luck. Be aware when you've hit the point of diminishing returns on quality and publish.
KentBeck
|
10 years ago
|
on: Power laws as a thinking tool
There is a big difference between "I'm polishing this because it will have a higher viral coefficient", or "I'm polishing this because I am learning by polishing", or even "I'm polishing this because it feels good to polish" on the one hand and "I'm polishing this because I'm afraid of the feedback I'm going to get on it once it's in the wild" on the other. My polishing falls more often in the latter camp so I look for ways to counteract my bias. If your polishing really really makes a difference, then heavens to betsy be my guest.
Another non-symbolic style of thinking I use is kinesthetic synesthesia. I "feel" the design "lean" in one direction or another, then refactor in that direction.