Live data from Hacker News

Ask HN: What bits of fundamental knowledge are productivity multipliers?

news.ycombinator.com

31–40 of 424 posts

Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?

#31
Understanding the system of work in which you exist. Your company, your industry, your society.

W. Edwards Deming said over and over again that the system in which an employee works puts a ceiling on how much output they can produce.

But you should take it a step further than just trying to maximize your output, and instead understand how your work creates value for your boss, your company, for society. Productivity is not a measure of how much you can output, it's a measure of how much value you can create, or how much closer you can come to achieving your goals.

If you can come in, spend five minutes and change the label on one button and increase sales 200%, you've been much more effective than if you spend years optimizing the performance of a component that isn't impacting overall performance of the system.

Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?

#32
This is going to vary wildly by niche. My neighborhood is line of business apps for small to medium sized teams and departments in corporate settings. - Knowing as much SQL as you can learn. - Being enough of a project manager to at least handle your own business. - Being enough of a public speaker to be able to evangelize your own work. - Being enough of a meeting and event planner to contribute to those sorts of things. - Having no real interest, maybe even an actual aversion, to the latest fads. - Being enough of a administrator to at least be able to build servers, set up a server's OS, install important software like web and database servers, and generally keep them running. - Basic corporate communications, technical writing, documentation. - Being able to manage everything so that the release cycles are tight. Maybe more than anything else, how quickly you can turn a business conversation into production code deployed to end users seems to determine a lot of success. - Being engaged and interested in your team, helping with staff meetings, contributing to things the boss is trying to do, generally being a "team guy". - Having a good working understanding of the entire life cycle of your software. For me that means understanding most of what happens when web browsers, the client OS, drivers, networks, network protocols, web servers, application code, and databases all operate smoothly to render HTML on peoples' screens.

Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?

#33
(1) There are no magic bullets.

(2) End of list.

But seriously, "10x" aside, there are some techniques that have come up surprisingly often and been surprisingly effective during my career. A lot of them are around caching, cache coherency, memoization, etc. and I see many of those have already been mentioned. How to write a simple parser is another one, likewise.

The one I haven't seen mentioned (and don't expect to) is "poisoning" of data or requests. Sometimes it's not very convenient to delete a piece of data or turn a request around with an error at the very moment when the need for that is detected - often because of locking or reentrancy issues. Just marking something as invalid, until some time when removal is more convenient, can be a very powerful technique. It can also make monitoring such events easier.

I've brought this idea into a codebase at least a dozen times, and more often than not it has gotten a "wow, that makes things so much easier" reaction. I can't take credit, of course. Like many things around caching or state machines, I got it from the hardware folks where it's a standard technique. In general, software folks can learn a lot from looking at how hardware folks have solved similar problems in an even more challenging environment, and "bring back" those solutions to their own domain.

Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?

#34

* Don't get too hung up on computational complexity. A lot of times O(n^2) is gonna be perfectly fine. Write it the simple and easy to maintain way first, and only worry about fancy optimizations if it's too slow.

And if it is too slow a hash table or two will probably fix it.

Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?

#35
post #16

Learning small amounts everyday. Accumulation of knowledge provides compounding return E.g. reading books, curated twitter, https://getsuperpower.com/ , https://www.blinkist.com/

Learning and not forgetting. Or learning more than you're forgetting.

Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?

#37
I mean, this sounds narrow, but going off of what you think are 10x multipliers, in terms of getting more bang for your hour/buck:

* Fully understanding how SQL prepares queries; optimization strategies

* Embracing garbage collection in JITted runtimes, mainly JS for now

* Being able to diagnose and replace a squeaky belt in your car

* Know what a cat is saying when it meows at you and indicates something in the vicinity of its food / water / the door / a dead mouse.

These have all saved me a ton of time.

Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?

#38

I would like to challenge the underlaying idea: Asking "what fundamental knowledge" is like asking what telescope makes the best astronomers. The problem with knowledge is applicability. You can know a lot of fundamental things, but if you cannot recognize the patterns were they are useful is dead knowledge. My personal experience through my life (30+ years in the field) and observing and interviewing developers in m…

this is an unhelpful response: the guy asks a straight question and the response is to "challenge the underlaying [sic] idea" It would be better to answer their question, rather than attempt to knock it down. (good example of zero-sum bias.)

Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?

#39
Only 2, with IRL examples from this month:

* The ability to challenge a proposal and figure out you don't need "an xxx with yyy but just a zzz should be enough"

F.e. merging seperate repos to monorepo, simplifying development & CI/CD enormously for a tiny team.

* The ability to understand which solution matches best with your whole context (environment, capabilities, skillset, risk, ...)

Don't go for integrating a rules engine in an MVP with a tight deadline, but just setup a monthly alignment between Product owner & back-end dev.

Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?

#40

* Don't get too hung up on computational complexity. A lot of times O(n^2) is gonna be perfectly fine. Write it the simple and easy to maintain way first, and only worry about fancy optimizations if it's too slow.

Optimize for humans first and computers second. Computers can read the crappiest, most spaghettified code on the planet as long as it is syntacticly and functionality correct. Humans cannot, and their time costs several orders of magnitude more.
Post reply on HN