Earlier quoted context omitted.
calculus is irreplaceable for understanding system dynamics. Every meta-stable computer system is an incarnate approximarion of some differential equations relating the different parts of the system and the way changes propagate from here to there. I don't often use numerical methods, but analysis of stability, classification of fixed point types, topological limits to what small changes to the system can do to the b…
I mean, you could call that basic logic and just take a philosophy course. That would provide formal and informal methods of evaluation without the need for actual calculus. This informal understanding and balancing is more closely aligned with philosophy than it is to calculus.
Ask HN: What bits of fundamental knowledge are productivity multipliers?
351–360 of 424 posts
Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?
#352A lot of those are pretty domain specific. Calculus is 10x only because it lets you get into fields where calculus is 10x. I have no idea what a general everyday coder would do with it. I could list lots of design patterns and mini patterns, like having a mutable copy of something that you copy under lock to an atomic copy, and lots of random software tools, but someone would probably say they never needed any of the…
Laziness? +1000 Best practices? -1000
Work inside the box? -1000 Think ahead about maintenance and things fitting together? +1000
Unusual choices? -1000 Polish/compatibility over great ideas? +1000
I think the common thread between my "-1000s" might be driven by a lot of experiences I've had where the boxes, default choices, and "best practices" (I cannot express how much I hate this term) have been dressing put around awful ideas. Maybe if I'd been in more scenarios where "best practices" really were good choices I'd agree with you 100%, but I've just seen too many cases where bad decisions are the default :/. I assume you've seen otherwise?
Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?
#353Never parse a data file with regex or string functions. Always spend the small extra time to at least write a state machine.
Unless you have some nice way to quickly create a state machine besides using regexes?
Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?
#3541. Super learning techniques Srs, memory palace, speed reading or time shifting video/audio 2. Model based thinking: Big book of mental models is a great place to start. 3. Learn how to train your dog properly (perhaps the single biggest life hack a person can do imho)
Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?
#355Earlier quoted context omitted.
As someone who struggles with ADHD and depression, this isn’t always possible . At 38 years old, what I have discovered are ways to make myself valuable to my employer even when I’m not at my peak. The move to a more “architectural” role has been a Godsend for me. It means that I’m a let to serve to some degree in an advisory capacity for others. When I’m not able to enter “flow” with my primary project, I can usuall…
ha, lucky. I have a similar constellation of problems and never found an employer willing to tolerate it long term. I can put large volumes of high quality work for 3-5 weeks at a time followed by 2-4 weeks of a low output slump. I usually get fired on the fourth or fifth cycle, freelance for a while, then try again. Always hoping to find somewhere willing to accept the inconsistency in output but haven't found it ye…
Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?
#356Earlier quoted context omitted.
> High tolerance for feeling ignorant, confused, silly, inadequate, a novice: none of these states should phase you: you should not have a comfort zone: let your mind feel at ease in not understanding something: go to the eye of the storm and weather it: you'll come out being more capable; I’d love to be more at ease on uncomfortable situations. Any tips?
For me it's practicing art. Mainly playing music with a group, sometimes writing and occasionally drawing or painting. It focuses me on the emotional experience and response to entering the unknown and finding flow there There's a book called Art and Fear that nails the tao of it.
"Art & Fear: Observations on the Perils (and Rewards) of Artmaking"
It's surprisingly relevant to what folks like us go through, and how we relate to our creations, intangible though they might be (at least if you're purely in software).
Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?
#357A lot of those are pretty domain specific. Calculus is 10x only because it lets you get into fields where calculus is 10x. I have no idea what a general everyday coder would do with it. I could list tons of design patterns, like separate mutable and atomic readonly copies of the same data, but they wouldn't be universal, although patterns are wonderful. The closest thing to a real 10x I know is laziness and respect f…
> Riced desktops? Gone. Custom made productivity apps? Gone. Simple bash scripts to move files around and do backups? Gone. Distro hopping? Extra gone. New JS frameworks? Gone but with napalm. Making your own programming language? Not gone because it never even started. This sounds more like depression rather than something that helps you grow. Yes, in production and production like environments, be boring. It helps.…
Innovation beyond the random toys level is really hard. At best most things can become a proof of concept that inspires some corporate dev. Unless you really enjoy that kind of random garage project, it seems reasonable to just leave it to the people who do.
There's a lot to learn in the world of boring unoriginal software. You learn how to take a task and do it with high level building blocks, and the minimum possible custom code. You're essentially designing a "Plugin" for a system made of the entire current software ecosystem, treating dozens of unrelated apps in a workflow as if they were a suite, taking into account the fact that you know people will want to look at data in Excel or control your thing with a MIDI keyboard.
I've done lots of random side projects, but I'm not sure I learned all that much, other than to really appreciate the value of the off the shelf thing I later replaced them with.
It's hard to objectively measure that kind of general learning, so maybe I am better off for them, but I also think I picked up some bad NIH type habits that I later had to unlearn, and caused some of my biggest tech related regrets.
Then again, if I was in a field where we actually did real "Paradigm shift" type stuff, I'd probably feel differently. But even then I'd imagine learning Haskell and linear algebra might be a better use of time, rather than implementing a window manager.
Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?
#358- fully specify the problem before jumping in. Write what you know, the context and the unknowns.
- Write the steps of the solution before jumping into a problem.
- If writing a report, create the outline/heading structure before doing any other writing.
- If you want to do something non-trivial, quickly search the web to see if someone has written a library or has a one-liner to save you time.
- 80% of your results will come from the first 20% of the total time you spend working on something. Anything after that is polish. This helped me to overcome perfectionism.
- If you don’t know something, ask a colleague or peer. They will be thankful for the opportunity to teach you something.
- If you’re ‘stuck’ on something, completely switch context for an hour or even a day. The subconscious mind does serious heavy lifting, it just needs time (and rest!).
- if you’re learning a new concept and struggling, don’t write detailed notes straight away. Your notes at this stage reflect a naïve understanding. Letting an idea ‘ferment’ before writing about it will result in primo notes.
- Don’t spend too much time buggering around with tools and tech. If you’re spending more than 30% of the total task time on ‘ceremony’ or ‘config’, it’s a hindrance.
There’s more but these are the main ones.
Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?
#359Stepping back and balancing the numbers: e.g. Mass balance, energy balance, balancing the books, balancing your schedule, profit analysis, etc. Usually this comes down to simple math and a bit of black boxing. It's amazing how often people miss the big picture and therefore don't see problems, losses, hidden costs or even opportunities because they're not looking at how the inputs and outputs balance. A related skill…
Re: Ask HN: What bits of fundamental knowledge are productivity multipliers?
#360A lot of those are pretty domain specific. Calculus is 10x only because it lets you get into fields where calculus is 10x. I have no idea what a general everyday coder would do with it. I could list lots of design patterns and mini patterns, like having a mutable copy of something that you copy under lock to an atomic copy, and lots of random software tools, but someone would probably say they never needed any of the…
This is an interesting comment. I found myself alternating between your sentences with strong agreement and strong disagreement. Sometimes even alternating statements within sentences. Laziness? +1000 Best practices? -1000 Work inside the box? -1000 Think ahead about maintenance and things fitting together? +1000 Unusual choices? -1000 Polish/compatibility over great ideas? +1000 I think the common thread between my…
Most wireless protocols have something in them that kind of sucks. WiFi at one point didn't even have active TX power control.
The value of best practices isn't that they're actually "best", just that they're standard.
We are slowly getting to a point where there are some standards that are crap, like Container Mania that has taken over everything, and putting a blockchain in stuff just because, or the inexplicable use of real databases where SQLite would be entirely appropriate.
But a lot of pretty good stuff gets done just by sticking with best practices. Like, no, it's not ideal to have an 80MB app to flash SD cards.
But it works. It's on all common platforms. And it's fairly safe. And it has notifications, important on a tight schedule.
I can recommend it to anyone knowing they probably won't wipe their disk. That 80MB Electron app may be ridiculous, but it makes flashing solved.
Or Git. There are other version control systems. Maybe better ones. But currently, almost all programmers need to know the basics of Git anyway, and for simple projects there are GUI tools.
Anything else has to be weighed against the fact that git is already everywhere and nobody has to learn a second system, and the fact that Github and GitLab exist.
Or my favorite, JS. As a language, it's a bit crappy, at least compared to Python. But it's in the browser. TypeScript makes it safer. It's got great performance with a JIT and standardized access to lots of stuff, and we have reactive HTML and NPM project management. And it doesn't seem to be going anywhere.
All the extra stuff makes the dev experience sometimes pretty amazing despite the language itself being mediocre.