5 ms·
Ask HN: How have you applied computer science IRL?
Sooo... I just got done putting away a load of laundry and realized I've applied efficiency techniques to the process. I first sorted the clothing types into buckets (piles IRL) then performed type-specific processing on each of the buckets, reducing as much as possible my disk I/O (turning around and taking a couple steps to put the clothes in the drawer/on the rack IRL).
How have you changed some process in your life based on computer science algorithms or principles?
- anrope 16y agoI have a specific schedule that I follow when starting different parts of dinner to make sure that everything is done at the same time, including adjustments for different pots that I know cook differently. I suppose you could think of this as some sort of scheduling algorithm.
- jcsalterego 16y agoI don't know about you guys but when I go grab dinner with my philosophical-type friends, we all share a fork and knife.
- itsnotvalid 16y agoThat sounds like a problem where computer science techniques must be applied to solve. Lucily there aren't just forks.
- ericHosick 16y agoAny one of your friends starve?
- nl 16y agoSure.. exponential back-off for trying to get my son to sleep at night. Didn't work. Mark & Sweep Garbage Collection for my desk. Commonly used stuff stays on the top, and then I periodically pause for garbage collection where I drop the lower layers into a draw. Occasionally I do survivor generation compaction, too. When doing washing, I always build an index by hanging it out in order, so then putting it away can utilize the index (in English - I put pairs of socks together when I hang them out, so when I bring them in they are already paired)
- alanthonyc 16y agoI use binary search all the time for practical problems.
- stakent 16y agoFor example fault localisation in control systems. At least when there is some documentation and one can deduce the signal path in the system.
- dackmilliken 16y agoI work in retail atm and use algorithms a lot (in my head at least). E.g.: to stock beer we have a big pile with myriad brands. To make it easier to stock I stack it to where each type is easily accessible. Maybe analogous to certain heap paradigms... . I also think about how I can reduce touching of the actual product (unload truck -> floor, as opposed to unload truck -> belt -> stock -> floor). Basically being lazy and trying to make my life more efficient/easier leads me to utilize algorithms.
- chewbranca 16y agoThe concept of job scheduling algorithms made me much more conscious about the order of approaching things in my day to day life.
- corin_ 16y agoI was trying to spot my friend in a crowded room so I did a regexp visual search for people with brown hair. I was feeling pretty tired last night so I decided to put myself into sleep mode. I'm now too ashamed of myself to make up a third.
- pavel_lishin 16y agoI usually grep for socks.
- stakent 16y agoSorting room full of dated reports from several dozens of years. First pass: put raports in the bins year by year maintaining sort order in the bins. Binary search used to place new report in the bin. Second pass: put year by year sorted reports in the correct order on the shelfs. I don't remeber the name of the algorithm used and the book from which it come was given to the library.
- pronoiac 16y agoI'd break the first pass down further, putting items into the (yearly) bins without sorting within each bin, freeing up bins, then subdividing them into smaller piles (say, by month), then sorting those. This insight is courtesy of a sorting algorithm that's optimal for systems with very limited memory but multiple tape systems, if I remember correctly. Also IIRC insertion sort can beat doing the binary sort in situations of 7-20 or so? Much over a dozen, I can't use my fingers of one hand as bookmarks to do, say, three comparisons to find the right place, & I'd rather break it down into more piles.
- allenp 16y agoAlso if you just put them into bins by year, you could have others do the sorting per bin - so more of a distributed model.
- Natsu 16y agoThat's radix sort. For what it's worth, I often have piles of sorted documents to sort together, so I've used merge sort on RL objects fairly regularly. Binary search, too, though I use the optimization where it's not strictly binary when I have a guess about where the item should be. I've probably used a few other algorithms, but I can't think of any off the top of my head.
- klochner 16y agorelated SO thread: http://stackoverflow.com/questions/164432/what-real-life-bad-habits-has-programming-given-you http://stackoverflow.com/questions/164432/what-real-life-bad...
- dasil003 16y agoThe quiet satisfaction of knowing that dynamic programming is something much cooler than Ruby.
- iuguy 16y agoI use the nearest neighbour algorithm to solve the travelling salesman problem, when travelling to sales meetings. I'm going to shower now. I feel dirty.
- edanm 16y agoI usually don't post comics, but this fits too well: http://xkcd.com/287/ http://xkcd.com/287/ That's what I use my CS degree for :)
- cloudwalking 16y agoQuicksort is great when you have to sort people by birthday.
- mulletcat 16y agoMy friends and I figured out that the counter showing beer consumption at a restaurant with a beer tap on each table wouldn't increase if we poured an amount smaller than the smallest amount necessary to increment the counter. Many glasses of beer were had by pouring tiny amounts repeatedly.
- teach 16y agoI'm a musician, and have a folder full of songs in my repertoire. I used to strictly alphabetize, but now I use dividers lettered A-Z (hash table), with each letter organized alpha at first, but move-to-front whenever I perform a song (MRU). I can now often find the song I want in 1 or 2 lookups, which really beats binary search.
- itsnotvalid 16y agoI remembered sorting out stuff by asking a few classmates to sort some of it individually and then combine them.
- yogsototh 16y agoI count to 31 with one hand. I use the standard count up to 5 with one hand just for communication purpose.
- chad_oliver 16y agohow? I can understand 12 (use your thumb to count the 3 joints on each of your 4 fingers), but 31?
- RiderOfGiraffes 16y agoBinary. Five (biological) digits giving 5 bits. So color me confused - your profile says: > I love hardware hacking > and low-level programming. How can you not see 31 and think "5 bits" ?
- chad_oliver 16y agoThat's a cool solution! In answer to your question: because I'm still learning. I'm in my first year at university, and while I love working with microcontrollers, a lot of the knowledge hasn't quite got there. I'm working on it! Also, I forgot about starting at zero (yeah, I know).
- RiderOfGiraffes 16y agoI used to do that, but found some of the various combinations too difficult to maintain. I tend to count to 10 on each hand, counting the thumb as five and a fist as ten.
- mzl 16y agoSlightly more efficient, and still easy to do, is to use one hand for 0-9 (thumb counts as five), and the other for 0,10,20,...,90. Easy counting, setting, and reading of the current number.
- RiderOfGiraffes 16y ago
- binarymax 16y agoWas playing 9ball last night, used a quicksort to rack them in order.
- bayareaguy 16y agoI try never to use more than 70% of my available space or other resources. If asked to do something, I usually give a promise that I'll do whatever asked but generally defer the actual work until forced. I always follow the tit-for-tat strategy whenever dealing with anyone. I make a point of including redundant details in all communications so that others can catch my errors.
- adamcharnock 16y agoI realised that throwing more of my time at a task is an O(n) solution to the problem of not having enough time. There must be a better way...
- bockris 16y agoI defrag my laundry. ;-) http://www.ibiblio.org/Dave/Dr-Fun/df200308/df20030814.jpg http://www.ibiblio.org/Dave/Dr-Fun/df200308/df20030814.jpg
- JoeAltmaier 16y agoI park first-fit; my wife parks best-fit. We drive each other crazy.
- eqdw 16y agoI've used resource allocation and scheduling quite a bit. It's amazing how much of Operating Systems bleeds over into the real world
- Travis 16y agoI use graph algorithms when I'm walking somewhere downtown. With the shortest path defined by lights that are green / red. Sometimes I'll switch it up a bit and use a different search algorithm just for variety.