I've come and gone with various vim config changes, but this is the one non-standard one I've stuck with:
au! BufRead,BufNewFile * lcd %:p:h
This makes it so that when you open a buffer, you cd to the current directory (only for that window), so you can quickly open files in that directory.
[% is the current file relative to pwd, :p converts to a full path, :h takes off a path component, lcd does a cd but only for the current window]
Another tip is that when your internet connection sucks enough for SSH lag (tethered, free wifi, whatever), you can edit a file locally and have vim do the SCP back when you write:
You're not going to change this. Yes, virtually every great programmer or computer scientist is a male. So much so that we're all going to assume they're male, and when we see a female name (like "Leslie Lamport") we double-check to see if it's actually a female. This is just a normal tendency. We assume basketball players are over 6'3", we assume nurses are female.
There are many stories of people overcoming discrimination (say, Indian immigrants being thought to be unfit for executive positions in Silicon Valley), and they make the current hot topic of women in tech look incredibly dumb. We're talking overt discrimination, not occasional pronoun misuse.
Indians in Silicon Valley started a group called TiE to help establish a presence. Does it hurt for them to have labeled themselves as "Indus Entrepreneurs" and try to help each other? Doesn't seem so.
So maybe the right way to overcome this "oppression" you feel is just to quit fucking bitching, put your head down and code, and maybe help a few other women out along the way when you achieve success.
This is how it was always explained to me. Yes, neutral and ground are the same thing. Why can't you just connect the case to neutral? Because you connect it to the ground plug. Huhh???
An interesting article, but built on the assumption that until a certain age you won't have any exposure to software engineering which wasn't true even in 2000. As a middle-schooler my programming ability was ahead of my math ability and I think I actually found math easier because of it. Stuff like numerical integration were things I "discovered" playing around with computers and I think that learning was much more valuable than later learning it calculus class.
He has a point, but after learning about the numbers and basic arithmetic you certainly have enough knowledge to learn to code, and who really knows if you need to know more math than that.
1) If you're going to build out an open office, make sure to invest in sound engineering to dampen noise. There is a big difference between hearing distractions in the immediate vicinity and hearing them across the entire office.
2) Then make sure you offer good-quality noise-canceling headphones.
3) Even the supposed benefits of the open office are questionable, I think. I personally prefer as much communication to be asynchronous as possible. Using GTalk and email lets me queue up discussions and distractions and focus on working for longer undisturbed periods. The open plan directly encourages people to distract each other with minimal cost. This is useful for people working directly on the same thing, but those people would be in the same room anyway in a closed office.
"In their right mind" or "reasonable" is not what "rational" means in discussions of economics. There also isn't as much of an implication of rational=good and irrational=bad.
Here's the main thing that fucks this all up: there are a very limited set of brainteasers out there.
This means that if someone gets your brainteaser right in an interview, there's, say, a 90% chance that they've heard a question just like it before (or one with a similar "trick"). The false positive rate is too high. Many people know the answers to brainteasers far beyond their ability.
If you were to ask a completely new brainteaser, as difficult as the canonical ones, but requiring a different trick, you would get a very low success rate.
Side note: there's too much criticism on HN about "what does this question have to do with my day-to-day job". This is a bullshit point. The point of a brainteaser is to test problem solving ability, creativity, etc. It may not do a very good job of that, but just because you won't be "reversing sentences in place" in your job doesn't mean that the question is invalid. Think about what the question is trying to test.
I interned at Google back in the day, and when I came back to school, I can only remember raving about one thing -- the food. It was absolutely fucking amazing. I gained 10 pounds that summer (starting at 145, this probably wasn't a bad thing).
There was a lot I could have raved about. The fact that around my area in ads there was probably a 20% chance that an individual had his own Wikipedia page. The debugging tools I got to work with and the MapReduces I got to write. All of the geeky stuff that makes Google a cool place to work at.
But when I got back to school, the food is really what stuck out about the experience. I would argue that those cafeterias are one of Google's most marketable benefits.
A bad programmer who is overcompensated just blends in, a great chef gets singled out.
No matter what, equity distributions are going to look insane in retrospect. Probably the most glaring ones are not even going to be the under-performers who plodded along or folks in less-important roles that were hired early, but the crappy execs that were hired well after the risk was decreased, but got a huge stock grant anyway. Start with those guys.
Let's be honest here -- how hard someone works isn't directly relevant to the discussion, it's how much value they end up adding. But to that point, I'm pretty sure Charlie added a lot more value to the company than many software engineers there had.
Thankfully we're nowhere near where intelligence itself is being displaced, only small subsets of work that were previously the domain of highly specialized experts [sidenote: Mathematica has been doing this for a while]. Nor will advances in statistical machine learning and computing hardware get us there. "AI" is a field we still have to make any real progress in.
I think what the current trend means though is that we're going to have to teach people to learn and re-work education to maximize the ability to adapt.
I feel a little sorry for the radiologist whose effective supply is apparently rapidly expanding, but there is still a long way to fall from a $350,000 annual income. :)
I'm scared that as we optimize test-prep and narrowly focus on passing children through school, we're potentially decreasing the likelihood that people learn on their own. We're decreasing the amount of effort it takes for a kid to learn some [probably useless] skill, like drawing force diagrams on pulley systems, where the point of the exercise [imo] in the first place was to stretch the mind and force the kid to fill in the gaps and think for himself. That same kind of stretching that might come in handy when he finds himself displaced for whatever reason, be it technology or something else.
- The stuff the subjects are doing bears only a passing resemblance to the work that most of us have to do.
- Surfing the web is probably what those students are doing for breaks in work anyway on a regular basis [If you gave them no restriction, how many of them would choose surfing the web? How much is this study is just a measure of "if you let people do what they want on their breaks it's better than restricting them"]
- Were students paid differently if they performed better? Were there any incentives to perform the task at all?
- How is the control group of a study measure effectiveness of break strategies one that's doing more work? :(