I put a lot of effort in my undergraduate thesis, but none of the professors on my committee had much interest in advising me; and after my defense, the only professor who really gave me his undivided attention came to me and said “I’m glad you’re not staying here for grad school; you’re way too good for this place”.
Sorry you're being downvoted. I don't think you're trying to detract from the accomplishment here, but you are raising an important point: at an age like this, good mentorship, leadership, and guidance is essential.
There is a very small number of truly gifted people who end up discovering things on their own at a young age. Most gifted people who discover something do so with the benefit of a mentor who can work with them to refine their talent into skill.
My masters thesis sucked largely because I tried to do it on my own and didn't even pick an advisor until I was almost done. At that point all they could do with my mess was to say "well, this is a decent descriptive paper and we need more descriptive papers in the field," and then give me proofreading comments. I didn't have a damn clue what I was doing, the end product was mediocre, and I didn't learn nearly as much as I could have. I'm not an outstanding talent by any means, but not seeking out mentorship in school is one of my only career-related regrets.
The fact of the matter is that that some people are deprived of mentorship, either through bad personal decision-making or through bad academic infrastructure. These people have a much harder road to expertise and success than the people who were mentored.
I had a bitter experience while pursuing my master's thesis at a pretty big firm. The people responsible for advising me were shameless in accepting that no one really cares about how well I have done my thesis (they were trying to defend as to why no one cared enough to spend time and guide me), all that matters is finishing it and moving on. If you happen to be a perfectionist, such experiences break you.
An underappreciated aspect of this is finding an academic department that would allow you to submit something this concise as a senior thesis.
My experience, mostly in grad school, was that anyone editing my work wanted more verbiage. If you only needed a short, one-sentence paragraph to say something, it just wasn’t accepted. There had to be more.
Jeff Dean is an uncommonly good communicator. But he also benefited from being allowed, perhaps even encouraged, to prioritize effective and concise communication.
Most people aren’t so lucky, and end up learning that this type of concision will not go over well. People presume you’re writing like a know-it-all, or that you didn’t do due diligence on prior work.
I _never_ got that feedback. My mentors all emphasized economy of language and nobody cared how "thick" my thesis was.
This is a pretty amusing story about verbiage.
Back in the old days, you would send a manuscript/research article to colleagues/friends by _snail-mail_ to get their feedback. You'd wait a month, and maybe they would mail a 'red-inked' copy of your manuscript back to you.
My Ph.D. advisor sent out a draft to a colleague who was famous for being harsh with the red-ink.
After a month, my advisor receives the manuscript in the mail.
* He turns to page 1. No red ink!
* He turns to page 2. STILL no red ink! [He must looove the paper]
* Keeps turning pages (no red ink!!).
* On page 10--in red ink--is written, "Start here."
Of course people want you to write less when it means less work for them. But think of an academic review committee for a senior thesis. They aren’t going to heavily read your paper, just decide if it meets compliance standards for some preserved artifact for your graduation. But they can veto what you’ve written and send it back to someone else (your advisor likely) and have that person request edits.
So this puts the reviewer in a situation with misaligned incentives. They might prefer to tell you to prioritize concise communication, but believe the risk is high that such a thing will get vetoed by the committee for Dilberty reasons, and thus their feedback gets optimized for what the committee will superficially think.
When the committee is mostly attentive professors, this isn’t so bad and everybody is aligned on short, to-the-point style.
But my experience is that this is hardly true. Maybe one committee member will be an attentive technical authority, sometimes only your advisor. The others will be deans or directors of various sorts who view it as an administrative chore to even have to sign off, and probably farm that review out to grad students or adjuncts, who are far more likely to take a capricious point of view about e.g. heavy literature review or conclusion sections.
Yes, I agree the two experiences you describe sound very rare from my own experience and my colleagues’ and friends’ experiences in undergrad, grad school and authoring papers in academic and industrial settings.
HN doesn't really encourage memes and other jokes, but this is printed at the wall on the UBC grad lounge, and it seems depressingly accurate https://imgur.com/gallery/wM7udMU
It's kind of remarkable. There really is no literature review in this paper. As a supervisor I would have no problem with a content part of this length, but I would also insist on doing the scholarly work that is not demonstrated here. Don't just throw out some code and describe it but put it into the context of what exists. Give credit to where ideas originate.
That shouldn't add too much. No more than a few pages. It would still concise but then also a scientific work.
That seems to be a key difference between science and engineering. One likes to survey the field and insist that their paper offers something novel - no matter how big or small. The other just wants to do some solid work and get the results.
If you don't do the lit research part, how do you know you are getting results and not reinventing the wheel?
Maybe it's fine for an undergrad writing a toy expository paper in an educational setting, not contributing to anything real. But why should I read someone's thesis if there's no reason to expect it's not already covered in my textbook?
Not really. The point is that in research we want to generate and further knowledge. This is distinct from generating and documenting facts. If you don't link into the web of knowledge there is (implicitly: leave that task up to the reader) you are just documenting facts.
This is not academic. What did reading this Master thesis teach me? That two approaches perform reasonably (by what standard?) with a size trade-off. That's an excellent start but also leaves open many questions: Why these two approaches? Are there reasons to expect they are better suited than other approaches in the literature? Were these results expected? Can I expect them to generalize? Do they paint a coherent picture on the performance of different designs in various contexts or are they surprising?
A lot of this is about generality of the knowledge gained. As a mere fact ("Two implementations of two algorithms that solve one problem perform slightly differently") it's not very interesting unless I have that exact specific problem myself. If I do, I would still need to find the paper. But if it is linked into a wider web of knowledge ("In paper [X] it was found that this algorithm performs well on tasks that have something in common with our problem, paper [Y] and [Z] suggest that we should expect a trade off for small sizes. Generally nothing is known about what should be algorithms well suited to the problem at hand.") it allows me to reason about situations.
>> The point is that in research we want to generate and further knowledge. This is distinct from generating and documenting facts.
Hence the desire to constantly look for novelty in academic work. Engineers don't necessarily care about novelty, they need to solve a problem at hand for practical reasons. Documenting what they've done, how it performed, and what they learned (if anything) is still important to write down for others who may want to solve similar problems.
I personally find the quest for novelty often reads like some kind of desperate need to justify the work or to get it funded. Solid work can stand on it's own even if there's nothing new about it, while mediocre work seems to stand so long as it's go some element of novelty.
If I've already decided what method I want to use to solve a problem, finding a well-done implementation and documentation on it is all I really want. If I don't know what solution to apply to a problem, a survey that documents the various approaches and makes some comparisons is what I want.
To provide context and pointers to previous literature. Very often it happens that only some of the insights from papers fall into fashion and when you go back and read the original you find other things of value that didn't get picked up.
As a reader, I'm often left trying to figure out whether the author is presenting something new, or is rehashing old ideas (which, btw, is a good thing sometimes, but I want to know that's someone tried this once before). I want to know exactly what the new contribution of the paper is, and how it fits in the universe of contributions.
My undergrad "project"'s report had to be of some minimum page count (about 300, I recall). I remember filling the report with the W3C specification of HTTP, Wikipedia articles and what not in order to convince the professor that I had done some "work" in order to build the project (It was based on using a interactive genetic algorithm for generating CSS files for webpages).
Also, I had to be submit 3 identical hard-bind copies of that bullshit report.
I had to write a 10k word undergrad final paper for law school (in Europe, law school is a regular university study, with a 3 year LLB and 1 or 2 year LLM). At around 8k or so, I went to my supervisor and said 'look, I've said everything I wanted to say, and in a drawn out way already which I' not happy about. If I have to add more, I will need to start another topic, and I'd rather keep this paper focused and continue that other subject in another paper. What do you want me to do?'. Then my supervisor said 'I'll get you in on a dirty secret in legal writing. When you need to hit a word count, you play with the precedent citations here and there. Go back to your desk, cite an extra sentence before and after every citation you have in there, and tadaa you're done'. Turned out that I had to include an extra paragraph here or there but still, golden advice :) And somewhat applicable to other fields as well, if you build in this sort of safety net from the start...
Reminds me of page count requirements in middle school. I'd write 4 pages, and in order to get to 5 I'd make every period and comma a higher font size. This was after they figured out my line spacing and margin tricks.
I'm not sure what a senior thesis is but my undergraduate thesis was I think 34 pages long. (Excluding the source code listing)
I had a friend who's advisor made them make everything longer the way you describe, theirs was in excess of 100 pages. (IIRC this advisor had suggested that while the guidelines say ~50 pages this was the bare minimum sufficient for a pass).
I have in the past been subadvisor to various bacc. theses.
I value conciseness dearly, and prefer quality over quantity in scientific writing, i.e. I would accept incredibly short theses, if the content is sufficiently presented (reproducible and comprehensive), and most of all, contains a valuable contribution.
The reason I typically have to request "more verbiage" and an own section on the state of the art, is because I need to force my students to confront their sitcom ideas with the history of "what has been done before, and what the actual current problems are".
Unfortunately, the approaches of most students are neither new nor particularly interesting in this regard.
It's strange to expect an undergrad to do new and interesting work when they haven't even finished their basic education in the field. Solve problems that are easy but not important enough for professional academics, sure. Do an application of a standard idea in a specific environment (like porting an pp to Android), sure. But not new approaches to the field.
There are various shades between scientific breakthrough and "yet another app/Server Tool", of which hundreds were implemented in the past, which can be solved by following random blog-posts, and (in the worst case) make no sense, even besides academic rigor.
Scientific work should fulfill at least some standards, and IMHO this includes undergrad theses.
I'm creating my master thesis, and I have been strongly encouraged to keep it short so that it can be submitted as a paper. So mine will end up, I still feel somewhat long, at around 14 pages.
I guess it's not totally surprising that Dean's undergrad thesis was on training neural networks and the main choice was between or in-graph replication. This is still one of the big issues with TensorFlow today.
One thing most people don't get is that Dean is basically a computer scientist with expertise in compiler optimizations, and TF is basically an attempt at turning neural network speedups into problems related to compiler optimization.
I'd like to thank my undergrad university for hosting my undergrad thesis for 25 years with only 1-2 URL changes. Some interesting details include: Latex2Html held up, mostly, for 25 years and several URL changes. The underlying topic is still relevant (training the weight coefficients of a binary classifier to maximize performance) to my work today, even if I didn't understand gradient descent or softmax at the time.
Wonder who was his advisor back then, because I don't think it's mentioned in the thesis. Or he did this on his own, which is not surprising by the way.
Kudos to University of Minnesota (@UMNews) Honors Program. Earlier this year, I asked Prof. Vipin Kumar, my advisor for this work, if he still had a copy, since I had lost my copy. He didn't, but checked with the Honors Program and eventually got a very nice response saying: "Jeff and Prof. Kumar, Here is a pdf copy of the thesis in question. We digitized our physical library about 8-10 years ago and no longer keep hard copies of anything. Hope this is what you are looking for."
Pretty interesting, reading his short bio I learned for the first time about AHPCRC (https://ahpcrc.stanford.edu) of which prof. Kumar was head of for about 7 years, the US military is indeed involved almost everywhere in SV.
I worked in the UofM CSCI department in those days. Vipin's parallel programming research brought in some cool hardware for the time including clusters of RS6000s, IRIX Challenge servers, an IBM SP2 and even a small nCUBE. Also we had a variety of interconnects available including HiPPI, early fibre channel, and even bleeding edge 100 Mbit Ethernet to run MPI and PVM over :-)
I've always wondered what the "secret" in the title refers to. This is pretty common knowledge among people who are from here, is it only secret from the people rushing in to work at FAANG?
They were very in vogue at the time. This was just after backprop was coming into its own, and before ANNs totally were surpassed by SVMs, boosting and ensembles, etc.
This was just before the second AI winter. It involved neural networks, prolog, lisp, fuzzy logic, Japan overtaking US in AI, etc.
Lots of good work with neural networks was done back then:
A learning algorithm for Boltzmann machines
DH Ackley, GE Hinton, TJ Sejnowski - Cognitive science, 1985
Learning representations by back-propagating errors
DE Rumelhart, GE Hinton, RJ Williams - nature, 1986
Phoneme recognition using time-delay neural networks
A Waibel, T Hanazawa, G Hinton, K Shikano, KJ Lang - Readings
in speech recognition, 1990
As all the other responses point out, NNs were red hot back then.
The interest in NNs was ignited (in part) by this double volume collection of essays called "Parallel Distributed Processing" edited by Rumelhart and McClelland.
Dean even cites them. And, if you read the contributors, it contains many (though not all) of the heavy hitters.
Reading back on it, it will sound very familiar. All the amazing breakthroughs: object recognition, handwriting recognition etc all seemed to be there. But all that rapid progress just seemed to stop. There was this quantum leap and then you were back to grinding out for even 0.1% improvement.
For those who stuck through the second winter, things obviously paid off.
From my perspective neural networks were a big thing in the late 1980s when I was on a DARPA neural networks tools panel for a year, and wrote the initial version of the SAIC Ansim neural network project. We had some great results using simple backdrop networks. Good times.
My PhD, which I completed in 1992, was about improving back propagation in neural networks. Neural networks were going through an initial phase of excitement caused by the Rumelhart and McLeland book. My dissertation was on modularizing NNs. https://surface.syr.edu/cgi/viewcontent.cgi?article=1130&con...
The early 90s were an interesting time for NNs and other machine learning systems. I remember getting really interested, but being told that "NNs with more than 1 layer can't really be trained", so I went into simulation rather than training. It's really great that GPUs and deep backprop arose to recover the stature of NNs.
Not that incredible. Just about every CS / Psych / Cognitive Science Dept back then was into them. I did a project on NNs in my undergrad. Programmed in C. I’m sure thousands of others did as well.
Really interesting and innovative early work, and I think it also explains why tensorflow does not support within layer model parallelism. It's amazing how much our early experiences shape us down the road.
My entire career has consisted of reimplementing bits and pieces of things I've previously built all the way back to high school and then reimplementing whatever was new on the previous round in the next one.
As a side note, I already have a draft of my essay (not published yet) that replaces the mention of storage costs with a mention of Ruth Porat. The point is why Ruth Porat was hired in the first place.
To my eyes this seemed like a completely normal amount of whitespace. The only thing I personally prefer that you would reasonably reduce is moving the left block delimiter from its own line (But left block braces being on their own line is fairly common for C/C++ projects afaik)
The flagship university in each state actually always has some very very bright students. The very elite schools don't accept many students and the admissions criteria are far from perfect so a ton of students who would be good enough for top tier schools end up going to state schools. I know a couple different people who were top of their high school class and within a question or two of perfect on their SATs that happily went to state schools.
Is this still true? Most of the top schools today appear to have pretty generous aid compared to my undergrad, which was a state school. Only exception I can think of could be out of state public schools like Berkeley or Georgia Tech or CMU.
stanford provides need based aid. if your parents’ earnings are high enough to not qualify for full aid, but have financial circumstances that make it infeasible to attend, you get crunched.
In the U.S., one's undergraduate institution does not correlate to success as much as it does in certain countries like France or Japan, where universities are a pipeline for elite selection and grooming.
Also, not all intelligent American kids can or want to go to elite schools, even if they are academically qualified. In the U.S., you often hear stories of kids turning down really good schools for ones they felt were a better "fit" (financially, culturally, etc.). And unlike the rest of the world, elite colleges in the U.S. are often private and expensive. Despite need-blind admissions, not everyone can afford them without going into heavy debt. (many middle-class parents make just enough money for their kid to not qualify for substantial financial aid).
So kids go to schools they can afford.
One of my college professors (who attended Princeton and MIT) once told me that in his observation, the top 5 percentile students in (good) state schools aren't that different from the kids who went to Princeton or MIT. I didn't believe him at the time, but having worked with different folks over the years, my experience inclines me to believe that there's some truth in that observation.
Owing to its population and economy, the U.S. has a large enough talent pool that the top percentile students at large, well-funded state schools (of which UMN is an example) are plenty smart. If you were to meet the really smart top-5-percentile kids from such state colleges (I have), you'd have no doubt that many of them could have attended MIT or CMU.
To be sure, good colleges can give you a headstart in life -- but it's what you do with that advantage that counts.
--
Examples of smart computer folk who went to decent, but non-elite schools for undergrad:
Doug Crockford (Javascript), SFSU
JJ Allaire (ColdFusion, Rstudio, etc.), Macalester College
Ward Cunningham (Wikis), Purdue
Rich Hickey (Clojure), SUNY Empire State (though he did go to Berklee College of Music)
John Carmack (Doom, Quake), U. Missouri Kansas City
Sergey Brin (Google), U. Maryland College Park (before Stanford)
Larry Page (Google), U. Michigan (before Stanford)
Dave Cutler (VMS, Windows NT), Olivet College
Bram Cohen (BitTorrent), U at Buffalo
Ryan Dahl (Node.js), UCSD, then U Rochester
Larry Wall (Perl), Seattle Pacific U (before Berkeley)
Alan Kay (Smalltalk, windowing GUIs), U Colorado, then U Utah.
Brendan Eich (Javascript, Mozilla), Santa Clara U (before UIUC)
I meant I am not sure about their alma mater not being among the top reputed universities in USA, meaning I implied they were indeed from one of the top reputed universities in USA.
> Owing to its population and economy, the U.S. has a large enough talent pool that the top percentile students at large, well-funded state schools (of which UMN is an example) are plenty smart. If you were to meet the really smart top-5-percentile kids from such state colleges (I have), you'd have no doubt that many of them could have attended MIT or CMU.
> To be sure, good colleges can give you a headstart in life -- but it's what you do with that advantage that counts.
I just graduated undergrad from a state school (Rank #49 in CS) but I'm still pretty skeptical of this fact.
I graduated from a school that I think was #40 when I was there and got a job at one of the top tier companies but each person has their own experiences. Now people couldn't care less about where I went to college (also fun fact my GPA was 3.2 so it wasn't even that good but luckily no one cares about that either).
Looking back. I should have gone to my in-state school. There might be an incremental difference in quality, but I would not have rushed to get it done a year early, and would have actually done meaningful research and probably PhD.
The so-called Ivy Leagues miss out on people who peak in academic ability after high school, plus there are more excellent people than there are spots at Ivy Leagues. The upper echelons of pretty much every standard university are going to have equally competent people.
How many students does Harvard graduate each year? How many employees does Google have? If one year Google hired the entire math and CS graduating class of Harvard, would it still be "pretty rare" to see one of those people at Google?
I'm sure it's fine, but it's not Harvard or Stanford or MIT - it has a 45% acceptance rate similar to my school (~45-51%). AFAIK it's not even considered a public Ivy like UMich or UW or UNC.
Since you clearly like math, suppose there are 20 million students applying to college every year. One million of them are very bright (2-sigma intelligence). Suppose that every Ivy League accepts around two thousand students every year. Can the sum of Ivy Leagues fit all of the smart people?
Bonus question: What if we change our constraints to only account for 3-sigma people? Does our conclusion change?
Of course there's a distribution of those folks at all other universities, especially at top public ivies like GTech and UCB. But the cumulative effect of being at a lower tier institution can be pretty significant when searching for future opportunities. One thing I've noticed among people at my school is that even if they are very capable, they often don't apply to top internships, top programs for grad school etc, just because they don't see it as an option.
I think you made an astute observation: top people at lower ranked schools sometimes don't apply to top internships or grad schools because they don't see it as an option.
This speaks to their lack of confidence more than their capability. Perhaps that is one of the advantages a good school, a good peer group, or a good network can confer: the confidence to aim higher.
People don't think they're good enough... which may be true, but no one can truly know until they try. Self-limiting thinking is particularly prevalent in rust-belt cities and regions where knowledge or achievement is not prized, so people in knowledge-intensive fields have no models to emulate.
And sometimes when they try (it's not unusual for graduates of lower ranked universities to send out 300+ resumes only to get single digit responses), they get demoralized when they don't succeed on their first few tries, when in fact there's more than one path in life -- if one doesn't have natural advantages, one might have to embrace the more circuitous path(s). This can mean joining a startup, going to a better grad school than one's undergrad, moving to a better city to
upgrade one's peer groups (this is more important than most people think [1]), etc.
Life can surprise you if you keep trying and pivoting (ugh cliche, but there it is). There's an element of randomness and stochasticity in a free market, and I've seen enough counterexamples to distrust a static conception of how things "should be". (except for some stodgy areas like investment banking that only hire from certain schools; but even then there are backdoors)
* You're a new graduate, and the hardest hurdle you have to overcome is to get in the door. If you manage to do that and are able to prove yourself, your undergrad degree will become less and less and important. If you google Fortune 500 company CEOs, especially in non-tech companies, (you can do this exercise for yourself) you will learn that many of them went to non-elite schools for undergrad. For all its elite colleges, America is not really an academic-technocratic society (unlike countries like Germany where most CEOs have Ph.D.s). There are elements of William James' pragmatic philosophy that still influence the thinking in this country -- getting results is more important than academic knowledge.
Might be true for the university as a whole, but many of the colleges at Minnesota are quite selective. The College of Science and Engineering is one example, accepting 1177 out of 14,000 applications for 2017.
More context on the big differences in selectivity between colleges: Minnesota used to have "General College"[1] which, by design, admitted every student regardless of qualifications. That was changed in 2005, but the legacy of inclusion over selectivity lives on in some places.
I can say that CSE was very selective when I was there, and getting into upper division was even harder. But overall I don't think acceptance rate is a very useful statistic because program size affects it so much.
Tackling a complex problem (still relevant today) at an early age, getting great results and describing the solution clearly/concisely.
My master thesis was ~60 pages long, and was probably about 1/1000 as useful as this one.