March 15 12
Based on what my professor shared about his experience on StackOverflow, I started thinking about who participates in this type of community.
- People who know nothing but need reputation, so they ask questions and answer quickly and haphazardly. They don’t understand the StackOverflow community and don’t make an attempt to.
- People who are smart but insist that everyone conform to their view of how StackOverflow ought to be. These people downvote questions that are well asked but they don’t understand. They are quick to resort to sarcasm and get upvotes for snark. These people spend too much time on Reddit and not enough time socializing with real people in different industries.
- People who are very smart but add noise not really understanding the question. They assume since they are a great programmer in a certain language they are qualified to answer questions tagged in that. They are busy people so they don’t take a lot of time to really understand what someone is getting at, so really obscure language bugs just get lost in rabbit trails.
- The guy who wrote the code at Microsoft who knows exactly whats happening but no one else understands he’s the only one qualified to answer, and his wisdom is overwhelmed by the noise of the other three.
Me? I think I’m usually in group three. I usually know what I’m talking about but in the rush to get the first answer in (which usually gets the upvotes), I sometimes don’t look towards what the questioner really needs.
These are systemic problems to online communities in general and I’m not sure of the best way to fix them. Quora has some way to say who you are and what qualifies you to answer the question (John Skeet on C#, Linus on Linux…). It would be cool to be able to say “hey, I’m a lead data scientist at LinkedIn” or “I built GFS.” Reputation is about how much you participate as much as it’s about how good you are. There are a lot of questions that don’t require any skill to answer, and there are a few questions that require great skill. There are no easy answers, but it’s worth being careful about how we participate in these communities.
February 11 12
My big stress right now is trying to find a final project that I can really get excited about. I have a few options from my cloud computing course:
- Write a DropBox clone
- P2P MapReduce
- RAMCloud system
All those sound pretty cool. What I really want to do is design a book search that leverages translations to deal with concept space in queries. I’m having a bit of a time finding a professor to sponsor me–most think it’s too good of an idea that would require a PhD to handle effectively. Perhaps I’ll have to work on it as a side project after I graduate.
November 15 11
Cornell Engineering is incredibly difficult, so I don’t write much. There is, however, much to tell on the recruiting front as I have seen some amazing offices and companies. I will update my readers in December or January.
October 6 11
Perhaps 2012 will be an end of something.
This week we say goodbye to the greatest innovator in modern computing. I don’t think its too much of an understatement to say everyone on earth has been affected by Steve Jobs’ handiwork. It’s a wonderful thing to see someone who cares so much about what they do and has such impact. While they may have more people under them, there is no modern politician who has moved humanity as much. There is no businessman who has wielded more influence. The digital age is in part available to us and in our pockets because of some true innovation from the Apple II to the iPad 2.
I’m writing this on my Lenovo ThinkPad. But at the same time, I know the design is heavily influenced by Apple’s work in the portable computer space. Thanks, Steve.
October 1 11
I actually really love used books. The Ithaca Library System was having their annual sale and it’s quite something. I picked up Edward Tufte’s ‘Visual Display of Quantitative Information’ for $4.50 and a couple volumes of Plato and Virgil as well.
September 19 11
I solved my first couple Rubik’s cubes this week, obviously while staring at algorithms for them, but hopefully I can commit these to memory at some point.
September 14 11
I had a great time at Cornell’s engineering fair. It was incredibly humbling and a great opportunity and blessing to be in a room with such fantastic companies. I really enjoyed meeting the sizable Cornell Google Team. I got to talk to the Facebook team in private this evening which was a lot of fun. Dropbox is getting to be a big deal, especially with Apple‘s bid for them — I thought our conversation went well, and they gave me a Tshirt and 5GB of extra storage (definitely the best freebie of the day). I got a preliminary interview with Yelp, which seems to keep a really fun culture. There were a lot of other fantastic companies there, like Box, Palantir, as well as a few hedge funds and HFT shops.
It was interesting seeing the fair. I have a few observations. A lot of people–I dare say most people– wore suits. I firmly believe that is utterly out of place at an engineering fair, unless you only want to talk to Goldman Sachs. A lot of people wearing suits were wearing them wrong too–poorly matched ties, ill fitting shirts, etc…. At a lot of these startups it says you completely misunderstand their culture. In fact, my suspicion was validated by Pivotal Labs who went out of their way to thank me for dressing down. I went with denim and oxford with rolled sleeves. That might not be ideal, but I hope it exudes that casual/serious feel that I think companies are looking for in engineers.
The other thing I tried that I think worked well was not “resume pushing.” A lot of employers aren’t trying to kill trees these days and want to learn about the candidate and get the info online, not necessarily get a huge stack of paper CVs. This allowed me to get to know the person, the company, and their desires before they needed a resume.
Finally, I tried to keep my resume in the 21st century by featuring my Twitter, GitHub, and LinkedIn usernames. Google and Dropbox both commented on it and thought it was really unique and cool that I did that. The days of the standard serif-font one-size-fits all resume are over.
September 11 11
This morning I got my invite to YCombinator’s NYC meetup. I am super excited to network with a lot of people I normally would have a hard time getting to know. A lot of the hot NYC startups will be there, a bunch of potential angels and VCs, and of course, plenty of talented developers and designers. Software innovation is in an exciting time, and I’d love to learn what some of these companies are doing.
September 10 11
I got into a discussion with a fellow student today who worked at Microsoft. His product manager told him not to use bit operations because it’s important to keep code readable. Code should be self-documenting. I agree with this, but when you can perform functions with a couple lines of bit operations, it can be a beautiful thing.
Here’s how to determine if a number is a power of two:
Of course, this sets 0 to be a power of two as well. I found this site which recommends using this instead which fixes this.
September 9 11
Well, I’ve been a few weeks here at Cornell’s M.Eng program and I’m loving it. It’s amazing actually being with some of the smartest an innovative engineers in one place. We have so many great resources here to use too.
I’m currently taking AI, which I think will be good to brush up on my algorithms and searching, and I never had that in undergrad. I’m also in an Info Retrieval course which is doing some interesting stuff with text searching and MapReduce. Software Engineering is primarily about project management tasks, but involves building a substantial project. Finally, I’m taking statistics because I’m trying to keep my math sharp mostly, and there weren’t any other CS courses that fit well into my strategy and schedule.