99 karma · joined September 24, 2010
Luckily we have very tight feedback loops -- and I can push new versions every couple of hours so I can customize it really fast to suit their needs/mental models.
Two suggestions:
- When you're holding really long notes the interval to see the next note is really small [the tab moves forward only once the long note ends so you don't have as much time to transition your fingers because you don't know/remember the next note; while in practice these should be the easiest transitions]
- Indicate the note lengths as well in terms of fourth or eighth notes, for those of us who like to count along.
[edit: basically lays everything out in a single huge page so that you can scroll instead of dragging]
Some specific recommendations --
- Keep a version controlled `dotfiles` folder, link important files to it and share it across dev envs.
- Add shortcuts to modify your vimrc (<leader>v) and apply it (<leader>V) to help you tweak fast and get instant feedback.
- Using an approximation of REPL for any work I do has been the single largest productivity boost I have: minimize keystrokes between (Write Code) <> (Build/Compile/Run/Whatever/Get feedback) <> (Write code). I started using vimux recently (lets you run commands in a split pane without actually leaving the pane with vim installed) and have never been happier.
- While speaking of nice fonts to write code in, http://www.google.com/webfonts/specimen/PT+Mono is a new favourite of mine. Of course, your mileage will vary.
(edit: formatting)
2) That was what I meant -- syncing actual details with your anonymous persona.
I'm a bit curious about why a search for name won't show the alternate persona? I've had friends who made 2 profiles and both used to show up whenever I typed their name in; and his # being listed publicly doesn't affect the argument either way.
Edit: Reply to child comment by jarofgreen: apparently the comments are too deeply nested to reply directly: "using FB wrong therefore deserves to have his privacy violated"
I've never stated that he _deserved_ to get his privacy violated; it's simply that the behaviour of any s/w is based on what settings you choose. Your argument would have to be that it's the S/Ws fault for not being transparent enough/not easily understandable enough leading the user to be misled - but the general response seems to be that the s/w is actively out to get the user.
At the very least, the friend could have blocked the set of people he didn't want to know about his preferences from the "gay" account: otherwise what stopped a simple search by name from showing both accounts?
I'm assuming phone number verification checks that you own the number via SMS; so it just acts as a reverse-stalker (I'd be worried about people I _don't_ know having my phone number saved).
- Choose a project you've used if you can. (I went with WordPress for example)
- Decide whether you want to try helping out with the core project or you would prefer to make an add on
- Make sure you follow the docs, get the build for the project ready -- or at least try to following what the project's docs tell you to. Do your personal best to get a hang of the source--particularly the area where you're aiming at. Try your hand at writing some code.
- _Now_ reach out to the core developers and the community (IRC, mailing lists, forums)-- discuss any problems you faced getting your dev set up ready, writing/testing code or any concepts you didn't understand (don't ask stuff that can be answered with a lmgtfy), your idea. Ask for a simple bug to fix if you haven't managed to find anything.
- Develop it further -- get feedback from devs and end users -- release/submit a patch. Based on feedback, iterate and release the next version/new patch. Repeat!
[edit] Corrected formatting
All completed in 24 hours -- started by learning how to write a chrome extension, pretty printing and reading fb javascript, lots of hit and trials to find out what worked and what didn't -- and finally releasing it on the app store.
Slightly better screenshot here: http://explog.in/blog/2011/09/22/Chromicker/
When we move the first rectangle too fast towards the top, some of the events might get missed and the corresponding rectangle doesn't _exactly_ mimic the first one. As no more events are fired, it gets stuck.
You might want to introduce some sort of sanity check for when a rectangle exits the wormhole.
It would have been even more cool to work alongside the creator of firebug, though.
There have also been particularly memorable incidents where a professor teaching surveying got confused about what sin\theta was.
I've experienced a bit of both worlds—I picked up books on Data Structures (including Red Black trees), attempted to implement Rjindael in C++ (without understanding any of the underlying math) in high school, learnt PHP/JS/CSS/C++ and started building from there.
What I've observed is—as a self taught programmer the biggest disadvantage is that you don't know what all is available/standard—as someone else mentioned in the thread, I did not know about parsers until I managed to take a course in Programming Languages.
Since I realized that there was so much I did not know, I've tried to make it a point to keep asking my batch-mates in CS what they are reading, picking up textbooks recommended by professors in class; reading other books as recommended on HN, and elsewhere (SICP, Learn you a Haskell..., started reading TAOCP, etc.) and have attempted to at least match my batch-mates who are CS undergrads. At the very least—try to get a fairly broad idea about known solved and unsolved problems.
The biggest advantages an avg CS undergrad has over me is that s/he has the credentials (which, I've tried to match by having my own open source project, doing interns in well-known companies, etc.), and that s/he is exposed to much more theory than I would ever be without actually having to do much beyond attending classes (for which I have to go the extra mile).
The advantage _I_ have over the other, standard CS guys is that I have the freedom to find out more about what I really want to do, and explore/follow certain areas which I find more interesting without being bound by academia (tests, reports, stupid & pointless assignments), and in general, perhaps—have a lot more fun while learning.
Thanks!
This laptop didn't cost that much -- around $1000 but the build quality isn't that good -- though the keyboard is excellent (with a numpad).
As a side note -- the best solution seems to be getting a MBP and then running Ubuntu virtually for development and OSX stuff for everything else.