Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

CS is a way of thinking about how to solve things, with regards to efficiency of solution.

Example: my wife likes to put gym shorts and shirts in different drawers. To my CS mind that doubles the seek time of a retrieval.

The little bowl by the door is a cache of my most recently used stuff.

People who nearly file their papers (eg bills) nearly are optimizing for retrieval efficiency - of an operation that is actually very rare.

When my wife and I leave the apartment we often take the garbage out to the chute. My wife likes to drop off the garbage before pressing the button to to call the elevator. To me that's weird because calling the elevator is long running IO in a separate thread - might as well start it asap.



> To me that's weird because calling the elevator is long running IO in a separate thread - might as well start it asap.

Oh, man. I've felt exactly the same way wrt. a lot of IRL scenarios, implicitly optimizing the number of "threads" I can do tasks in, for instance:

- starting an automated but lengthy task (e.g. choosing Nixpkgs PRs to automatically review) before going out for a period of time

- starting the microwave heating food before going to the toilet

- pressing the elevator button before tying my shoes (in a private elevator scenario)

Distinct from multitasking, which splits your attention, here, you can still dedicate attention to a task at hand while knowing in the background that a thread is running. These types of behaviors may not really do all that much long term, but it sure feels nice you optimize IRL scenarios.


> People who nearly file their papers (eg bills) nearly are optimizing for retrieval efficiency - of an operation that is actually very rare.

It maybe rare but that fact doesn't capture the probability that the importance of retrieval could be disproportionately high - when you really need that bill, you definitely want it and want it quick.


> when you really need that bill, you definitely want it and want it quick.

Seems very unlikely & it's a very improbable event and if it does happen, say you have "all your bills for the last 3 years" jumbled up together it'll take a minute or two to find it anyway. Vs filing each one carefully..


Learning programming almost feels like a curse. I guess I was naturally predisposed to something like programming as I always remember liking efficiency and making things more efficient.

However, after getting a CS degree and building things at work....I get upset a lot. I see so many things that are unoptimized and get angry when I have to wait because the process is bad.

I refuse to do things without proper tools, as I don't want to fiddle with something for hours while a proper tool can achieve a desired result in minutes.

Now, that I think about this it has been affecting me greatly.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: