HN user

malloc47

1,171 karma

Developer and graduate student.

http://www.malloc47.com

Posts58
Comments9
View on HN
www.malloc47.com 11y ago

10,000 Commits

malloc47
1pts0
lemire.me 13y ago

Meetings are like sex

malloc47
1pts0
blog.regehr.org 13y ago

Reading Code

malloc47
4pts0
blackhole12.blogspot.com 13y ago

Playing on Easy Mode

malloc47
1pts0
kellabyte.com 13y ago

Using bitmap indexes in databases

malloc47
3pts0
lemire.me 13y ago

Does academic research cause economic growth?

malloc47
48pts32
blackhole12.blogspot.com 13y ago

The Dark Side of HTML/CSS

malloc47
1pts0
www.malloc47.com 13y ago

Map of Tech Company Locations (North America)

malloc47
1pts0
lemire.me 13y ago

Peer review without journals or conferences

malloc47
3pts0
blog.moertel.com 13y ago

The second-order-diff Git trick

malloc47
180pts41
www.malloc47.com 13y ago

Laptops are the Stenotypes of Software Engineers

malloc47
8pts4
gergo.erdi.hu 13y ago

Write Yourself a Haskell in Lisp

malloc47
129pts13
blog.regehr.org 13y ago

How to Fuzz an ADT Implementation

malloc47
3pts0
paulspontifications.blogspot.com 13y ago

Software has CivEng Envy

malloc47
3pts1
blog.regehr.org 13y ago

Nobody Expects the Spanish Inquisition, or INT_MIN to be Divided by -1

malloc47
10pts1
prog21.dadgum.com 13y ago

Sympathy for Students in Beginning Programming Classes

malloc47
18pts2
blog.regehr.org 13y ago

C and C++ Aren't Future Proof

malloc47
117pts105
archlinux.me 13y ago

The History Of Distributed Version Control

malloc47
4pts0
www.alsonkemp.com 13y ago

Parsing a DICOM file for fun and profit

malloc47
4pts1
lemire.me 13y ago

How I learned mathematics (as a kid)

malloc47
1pts0
lemire.me 13y ago

Government regulations… as software

malloc47
1pts0
ro-che.info 13y ago

Subtractable values are torsors

malloc47
2pts0
blog.regehr.org 13y ago

Peeking into the Trash

malloc47
1pts0
eli.thegreenplace.net 13y ago

Assembler relaxation

malloc47
4pts0
allanmcrae.com 13y ago

Battle of the Arch Spin-Offs

malloc47
2pts0
blog.regehr.org 13y ago

Is the Browser the New OS?

malloc47
1pts1
conal.net 13y ago

Parallel speculative addition via memoization

malloc47
1pts0
lemire.me 13y ago

Why I like the new C++

malloc47
2pts0
eli.thegreenplace.net 13y ago

Life of an instruction in LLVM

malloc47
123pts30
blog.regehr.org 13y ago

Fastest FizzBuzz

malloc47
3pts0

If you consider the sheer number of hours I tend to spend on my dissertation work compared to the stipend I get, I'm paid criminally less than minimum wage. But you're not given the leeway to focus "exclusively" on a single research contribution in a focused manner in other higher-paying options.

Even if you're not taking out a loan in the monetary sense, you're taking out a loan from your long term earnings, one that has little chance of being repaid, to put your mental assets/skills to a non-remunerable task, and get a certification that you did so. The problem is that the option to continue doing this (tenure-track academic jobs) are limited and (naturally) highly contested.

However, you make a good point--there's an underlying and insidious opportunity cost that is often unknowingly sacrificed: that of atrophying skill sets. It's easy for a PhD to be a hugely insular experience, if you let it, and if you take the easy way out and don't stretch your engineering skills (speaking in terms of CS here, since that's what I know), you're in for a rude awakening if you determine that academia is not for you. If you're not careful, you'll get good at writing papers, but might actually get /worse/ at writing portable, readable, and maintainable code. And as brilliant as your papers may be, if you can't ship good code, you're going to have trouble in industry.

The good thing, again at least for CS students like me, is that the "fun and enriching" environment of academia means a lot of opportunity for starting companies, creating libraries/frameworks, working on side projects, and doing contract work, so there's no reason you have to atrophy. Which is something that, sadly, the visions of the tenure-track academic job are engineered to beat out of you.

I'm going to plug LaTeX. LaTeX macros are ugly to use, but they're suitably powerful, and since it's compiled, you don't have to worry about cross-browser issues once you have it generated. I prefer to point to LinkedIn instead of producing a separate webpage since I'm less of a frontend dev, so YMMV.

My resume [1] and source [2] for reference:

[1] http://resume.malloc47.com

[2] https://github.com/malloc47/cv/

It's good to know there are still realistic perspectives in academia. To be fair, the "anti-industry" attitude is probably adviser rather than department dependent, as I have heard a few first-hand data points regarding advisers that align much more with your experience than mine.

Given the 1/10 statistic, sooner or later professors will have to satisfy themselves with student's "real-world" contributions, whether they like it or not. I'm just worried how often I see real skill sets (e.g. proper software engineering) being devalued among graduate students because it's not directly relevant to a hypothetical future job as a professor. I feel lucky that I've been able to make extra time to write "real" code from my dissertation work, but it's rather unfortunate that this isn't always the norm.

One very good point this article brings to light is the emphasis academia places on the tenure-track job as the end-all be-all of getting a Ph.D. I can't even begin to count how many times I've heard how getting a professorship is the only worthy job, and how there's no point to a Ph.D. if you don't get such a job.

It's nearly to the point of brainwashing (a sweeping generalization, of course, which likely varies greatly from department to department). As a soon-to-be Ph.D. graduate, it's refreshing to know that industry is not only a viable option, but doesn't have the same [superhuman][1] expectations.

[1] http://www4.ncsu.edu/unity/lockers/users/f/felder/public/Pap...

One of the most efficient everyday optimizations I've made in the past few years was to adopt the lisp-style naming convention for my local file system hierarchy. Removing all capitalization and special characters (other than the dash) makes navigating via CLI much easier. And having a predictable naming scheme means I rely on tab completion slightly less too, as I have more predictive capability regarding how I might have named things in the past. More generally, treating my home folder as, essentially, an exposed API for which I'm the primary consumer has paid dividends.

I've been authoring a post on solving interview questions in map/reduce between experimental runs myself, so I guess I already hit the "bored graduate student" point too...