2004-02-11 Life Hacks: Tech Secrets of Overprolific Alpha Geeks http://conferences.oreillynet.com/cs/et2004/view/e_sess/4802 The guy who invented Extreme Programming: - use index cards Wrote to loads of technologists and asking them about how they got things done (got 14 questionnaires back): - screenshots - habits - code (people who have created themselves. small scripts that have replaced departments) - anecdotes Brad Templeton invented ".", punctuation in domain names. * Screenshots Everyone has shells. Why the command line? - not necessarily efficiency - it's the people who replied to Danny - these are all people who do stuff publicly: the shell is still the main way to bridge the public and private spaces but the shell is clearly not hampering their efficiency. [I got loads of stuff done once I gave myself a ~/bin. Being able to write *really* simple scripts is a way of externalising my mental processes. And it works along a whole spectrum -- the throwaway perl in bbedit is great.] * todo.txt Text files are really important. Everything goes into a text file. No calendar app etc. These people *know* applications, and they've chosen to use text. [same here.] Oh, but this is nice: people store everything in a *single* text file. Paul Ford has a 27,000 line text file to organise his entire life. [which is basically the premise of Raskin's The Humane Environment. Everything is a single file with LEAP.] they want to find and enter information fast. the 10s rule: if you can't file something in 10 seconds you're not going to do it. todo.txt is cut and paste, cut and paste is the simplest operation. it's also the simplest way to find information. emacs -> incremental search. [this is awesome. and it's also Raskin's LEAP. wow. maybe he's really onto something. bbedit also has a form of incremental search. it's not brilliantly implemented, but it works.] incremental search is also in Mozilla. it's also in Panther, and Longhorn will also have it. * trust - power users trust software as far as they have throw their computers - power users have gone through a lot of upgrades and a lot of app changes [hey, same here, which is why my filing system is simplified and everything is text. good to know i'm doing something write. grep is the best thing ever, and the best addition to mac os ever.] * the email client cory says: he keeps all his documents in his mail client. there's version control, metadata, searchability, archiving. the problem with email is it's used for everything -- announcements especially. some bits of life are too short to learn another app. people tend to use one app. joel spolsky uses excel. HR person sends a web design in powerpoint. don lancaster sees the world in postscript. he writes *everything* in postscript. * the private blog in livejournal, how many entries are private? that is, nobody can read them. 3%. also, the private rss feed. these are new familiar applications -- announce stuff is now going into aggregators and blogs instead of email. * a taxonomy of scripts danny asked what people have in their ~/bin scripts are secret! - no use to anyone else - embarrassingly codes - often forgotten (they have a lifecycle) http://simon-cozens.org/programmes/secret-software.html it's to automate a whole bunch of things that are so dull they wouldn't get done. universal scripts: - random sig generator - netscape killer - ssh foo - mail wrangling sync: - complex, personal - trust [wow! i have loads of sync scripts! that's practically all i do.] another thing: all geeks have bad habits, but they ALL BACK UP. [like me, now.] * boilerplate they all have templates * mungers and viewers view by time/space [this is something i've only discovered recently. ftpwho is a really cool idea, and it got me thinking: all those greps and logging into databases to check things, i need tools like ftpwho. haven't got round to writing em yet though.] all geeks have something that organises their files by *time* which is not something that filing systems do normally. [me too! everything (email, notes, unfiled things, stuff on my website) is filed by month.] also by space. geeks see what takes up loads of space and they write stuff to find that and delete it (uh, or not). * not much cross-app automation which is a surprise. no OLE automation, no applescript. so no excel-word communication, no driving the browser to fetch a page and store the screen. maybe this is a coupling issue with objects. [i think this is the small transformation thing. you make small scripts that can be piped together.] the test of this will be Longhorn and the Monad shell, which takes pipes but instead of just stdin you pipe *objects*. [I've seen pages about this, it's really interesting.] * a fair bit of webscraping lots of people do this for their banking services, changing the info to RSS feeds. * conclusion a lot of making public. stuff which automates normal work and makes it public. eric raymond's done something called shipper: to take source, announce it, push it out. * aha moments of organising edd dumbhill: ideas rot if you don't do something with them. the hardest thing about organising is that there's no reason to do it -- it's just you. but making stuff public is like having your parents come to stay. [these are great slides, there's loads more info that danny has. and he might just publish it on lifehacks.com.] great apps: - decent email search - easy webscraping (matt jones' blog-o. we need an easy way to do this.) - keyboard macros for Windows/Linux - filepile for everyone [extend this. tom c was talking to someone who is extending rendezvous to everyone in your buddylist. which is really cool. imposing the social network space to normal apps. wicked.] books: Getting Things Done by David Allen is all about business cards. Home Comforts by Cheryl Mendelson Test Driven Development by Kent something