Hacker Newsnew | past | comments | ask | show | jobs | submit | tycho77's commentslogin

You'll be able to rent these in tourist shops. I'd wager flying around by yourself gets old after a while anyway, no matter how awesome this seems. Remember your first RC helicopter? How long did you keep playing with it?


Depends on who you ask: http://www.helifreak.com/


This seems... really simple. Basic algorithms, data structures, and theory that I learned in second-year comp sci.

Knowledge on these subjects is easy to pick up, taking you a few days of study at the most. Knowing this stuff doesn't mean you can program for shit (see: academic coding horror). Best to build a portfolio as dpritchett said, with a few "lessons I learned from experience when working on this project" anecdotes ready to go.

That's just personal experience though, and I competed in the ICPC during my university career so I never worry about the problem solving questions.


Knowledge on these subjects is easy to pick up, taking you a few days of study at the most.

I doubt you can pick up a solid understanding of just the first 15 or so chapters of CLRS in a few months, let alone days.


Coming from a pure math background, I find CLRS to be very easy to read. YMMV based on prior experience, but it's not at all unreasonable to learn the basics in a week or two if you're studying it full-time.


I'm not talking about "picking up the basics". I doubt that level of knowledge will get you a job offer from Google.

I'm extremely skeptical about your claim. Just reading through the chapters will take the better part of a day. Working through the exercises and thinking about what each of these algorithms will take much longer.


For reference, MIT has two undergrad courses - 6.006 and 6.046 - which use CLRS, covering about half the book each. An undergrad course at MIT is expected to take up about 140 hours, including lectures, reading, and assignments. So, working for 10 hours per day, one could theoretically complete each course in two weeks.

There are a few other things to consider. One is that it's probably not necessary to go through all of the material to be able to manage interview-type questions. (It would obviously be best to undertand CLRS from cover to cover for the purpose of becoming a better engineer, but that's not what's under discussion.)

Second, it's really questionable whether someone can effectively work for 10 hours per day on this sort of material. My guess is that people fall into two categories - those who are not used to algorithmic thinking, and those who are. People from the first category would not be able to absorb that much new information that quickly, so for them, what I said is inaccurate. However, people in the second category would not only be able to process CLRS in large batches, but would need much less than 140 hours to work through half the book; someone familiar with the underlying concepts (basic programming, probability, etc.) and with a background in proofwriting could very well get through enough information to answer interview questions twice as fast or faster, so in about a week or less.


This argument is ridiculous.

I don't doubt your claims about the amount of the work the two courses at MIT require. However, you're forgetting that for some of those 140 hours you're being lectured by the top professors in the area. You're unlikely to have a question that they can't answer. Other parts of those 140 hours are spent talking with some of the smartest students on the planet. Some more of those 140 hours are spent solving problems carefully designed to maximize understanding. If you can't figure something out, you have fellow students, TAs and professors to harass. Somebody studying alone at home doesn't have this environment.

And then you need to take into account the fact that if you're undergrad at MIT you're already smarter than 95% or so of the population. Basically, the takeaway here is that your 70/140 hour number applies to something like 0.1% of the population under the assumption that they're studying CLRS at home.

You need to see this in context. This is advice for CS undergrads looking for jobs. This advice is being given out on reddit. Anybody who needs this advice (and CS undergrads from MIT certainly don't) will not be able to work through CLRS in a week.


Maybe everybody's assuming people smarter than you.


You could learn it well enough to answer interview questions on it. I have my copy of CLRS here and none of the first 15 chapters are exceptionally dense.


Sure. If the questions are stuff like define O(n) notation, you can. I suspect any company worth working for will ask you a bit more than that, though.


Tech firms seem to love these kinds of questions all the time. Almost every interview I've had has had them.


It's how they get around labor laws.


I don't understand; can you elaborate on that?


Placing a particularly high value on undergraduate-level CS theory as a pre-employment hurdle provides a market advantage to people with fresh undergraduate training.

This coincidentally depresses the marketability (for a certain class of job) of older workers and demographics less likely to achieve a degree from a top N computer science program.

Certainly you could read between the lines and say that observably favoring e.g. Stanford 2012 CS majors effectively disadvantages some protected minorities (age, gender, race). By placing the emphasis on a particular credential rather than on demographics a hiring company gets a level of plausible deniability from such claims.

Disclaimer: I have an MSci in CS and I'm only 30, so I'm not too worried about the things implied above. Yet.


Another explanation is that is it very difficult to gauge someone's programming ability from a technical interview. Asking theory questions is a useful (albeit imperfect) proxy.


This coincidentally depresses the marketability (for a certain class of job) of older workers and demographics less likely to achieve a degree from a top N computer science program.

If those older workers and others are equally or more skilled than the younger ones implied by your question, smart companies will realize the discrepancy and hire them.

In addition, if older workers know that firms place a "high value on undergraduate-level CS theory," they should probably spend some time learning. . . undergraduate-level CS theory.

You can in fact see this in action in other areas—for example: http://www.economist.com/node/17311877 .


If those older workers and others are equally or more skilled than the younger ones implied by your question, smart companies will realize the discrepancy and hire them.

The invisible hand of self-interest only works if smarter contenders actually appear in the marketplace. If there is some invisible hand of stupidity (and groupthink) that affects all companies above a certain size, then we are hosed.

Why is it that all big organizations are almost universally dilbertesque? There must be some anti-nootropic effect that occurs above a certain threshold of organizational complexity.



My guess is that he subscribes to the theory that companies use questions that would normally be taught in college to filter out older applicants. Ie, some assume that time since college isa major factor in people knowing these answers.

Personally, I find it terribly unlikely that any such filtering is intentional on any level.


There are several operational benefits to fresh graduates from the perspective of the hiring organization:

- What little experience they have is effectively all relevant to the job and hence easier to justify paying for. If a neophyte can do 80% of a veteran's work for 50% of the pay, it's a tempting tradeoff. A software veteran's second decade of experience may not be worth the increased sticker price if you're asking them to perform low- and mid-level tasks.

- They are less likely to have personal entanglements (kids, family, medical).

- They are an easily appraised and substituted commodity: standard salary scales apply.

- They are less likely to know their market value and hence less likely to negotiate for increased compensation or time off.


That is simply... depressing, not to mention unwise.

The neophyte may be able to do 80% of the veteran's job, but that's the easily-replaceable 80%. If I'm hiring for a position that requires experience, I know that the last 20% is worth paying for. Someone is going to have to do that 20% and if it's not the new hire, then why are we hiring him?

Personal entanglements? I have never had any idea about the family status of anyone I've hired unless they were wearing a wedding ring. I don't need to know and I'm certainly not going to open the firm up to a lawsuit by asking. HR is the only one who will know, and HR does not get to veto what the software dev. interviewers say unless the candidate wants more $$ than the position offers. And even then, they'll come back to us and ask if we think he's worth it.

Compensation? Again, the interviewers don't care or know. And really does any company with half a brain care? If you're being hired, it's because we expect that you will make the company orders of magnitude more than we pay you. In that light, trying to push for the maximum salary in the pay band is really not a big deal. It's in the budget after all.


> If I'm hiring for a position that requires experience, I know that the last 20% is worth paying for. Someone is going to have to do that 20% and if it's not the new hire, then why are we hiring him?

Sadly, not everyone shares your view. Many seem to forget about that last 20% and just focus on the 50% savings. I've seen it happen to more than one senior dev...


You're right, of course. I was merely attempting to provide a devil's advocate's view. Perhaps I should have said "rationalizations" rather than "benefits".


You should be a fly on the wall of a hiring meeting, or work in a startup whose office is open-plan.


My understanding is that according to US labor law, computer programming is not one of the limited group of employment positions for which a degree is (or can be) required. That is, coders can't be required to have a degree, so HR designs questions that are most likely to only be answerable with university-style training.


Do you have a citation for this? I can't imagine that it could ever be the case. The employer can set whatever job requirements they want as long as they do not discriminate against protected classes. Non-degree holders are not a protected class.

I'm far from an expert, but I have had to take classes in Employment Law and interviewing practices. This is not the kind of thing they would forget to mention!


I think he might be suggesting that with hiring coders-in-general, it's not necessary that the employer must only hire degree-holders. This is in contrast to hiring an elementary school teacher, where by law the applicant must possess credentials x/y/z even if the school thinks the applicant is fine without those.


Exactly. There are lots of jobs for which a degree or certification is absolutely required.


One S2050 has four M2050s, not two (I inferred this assumption from your 6.5 multiple).

I'd like more information on the CPUs and CPU/GPU bus of this FASTRA II. CPUs are really gaining back a lot of their performance relative to GPUs - an M2090 is only about 5-10x faster than the newer Intel Xeons in a properly multithreaded program that pays attention to the NUMA nodes. This is efficient enough that for large simulations which do not fit on one GPU, running portions of the simulation on CPU easily overcomes the CPU/GPU communication overhead in terms of performance.


>I'd like more information on the CPUs and CPU/GPU bus of this FASTRA II.

"the graphics cards, which are connected to the motherboard by flexible riser cables." - so this sounds like typical PCIe based design. Usually the bundle of GPU cards on PCIe backplane is placed into separate case which connected back to the CPU host, and in this case they engineered it into one big case thus each card getting it's own x16/x8 pipe.

In general such "supercomputer" is cheaper, hardware-wise, than equivalent CPU-based, yet it is still more expensive human labor (ie. programming) -wise.


As long as we're nitpicking, you are using "it's" incorrectly. "It's" is not the possessive form of "it", it is a contraction of "it is". The word you are looking for is "its". Usually doesn't annoy too much but you do this twice in the first paragraph.


Fixed; forgot to proof read that paragraph, thanks Tycho. Always up for improvements no matter how small.


I've found that prepaid credit cards work well as gift cards without the restrictions.


On the other side, I really wish my office were like this. I hate having to sit down all day - my back really does start to hurt. I have a stand-up desk at home and I like it much better.

Even better than a stand-up desk is having a small treadmill. It's not like they go fast - it would be about the same as a slow walk. Suits would be fine, you don't sweat at all.


I had a cube at one point at a company who wouldn't buy me a stand-up desk, so I just put a box on top of my desk and put the monitor / keyboard / mouse on it. I obviously don't know your situation, but unless you are explicitly told you can't stand-up, you should try.

For me, I looked ridiculous standing up in the cube farm, but by the time I left, five people on my floor were standing.


To find optical flow, you first pick out a collection of sample points in frame A. What constitutes a good sample point depends on your specific algorithm, although generally speaking you pick "corners". In OpenCV, you can easily do this by calling cvGoodFeaturesToTrack().

You then search for those same sample points in the successive frame B, and end up with a collection of vectors that probably represent the motion of each point. Using OpenCV, this is usually done with cvCalcOpticalFlowPyrLK().

Tweening is basically just interpolation.


This is very cool, thanks for that. Can we run this on a GPU? If not, how feasible would dense optical flow running on cpu be in terms of speed to convert short non-hd videos?


Oh thank goodness! It's all the women's fault. I was afraid people would have to address the residual sexism left in the corporate world.

Not to detract from the story, which by all anecdotal evidence in this thread appears to be valid, but this is a dangerous train to jump on - I would say akin to blaming racial disparity on 'cultural issues'.


It's actually kinda crazy that I looked at this image

http://images2.bingocardcreator.com/blog-images/ad-blending/...

for about thirty seconds and literally did not see the ad, at all. I am now impressed/scared of my mind's ability to completely disregard probably unimportant information.


Its funny that there is an almost exact same thing in audio processing called masking, where a loud signal will hide a quieter signal similar in frequency.

Maybe this is the visual processing equivalent?


It's "search satisfaction", I think. People expect to look for (and dismiss) the obvious stuff.

This is similar to the notion that having the TSA check for liquids at airports is dangerous, because when they find a bottle of shampoo, they stop looking for other stuff.


Are you kidding me? I knew the TSA was security theatre, but holy crap, Batman.

The terrorists not only have won, but they have all the cheat codes!


Frick, I semi-stole your username. Gotta find myself another I guess.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: