[removed]

Comments: 446 • Responses: 92  • Date: 

golfball111140 karma

What history do you have as a "white-hat troll"?

michaelochurch16 karma

I wrote a lot of blog posts and forum comments (Hacker News, Quora, Lobsters) telling people about the startup lie, long before it was common knowledge that Silicon Valley had become a lie. I say "white hat" because I was neither deceptive nor malicious, and "troll" somewhat in jest. A better word might be "provocateur".

whosywhatsy25 karma

Being involved in any new venture in any field is risky if you do not have a clear view of how it will succeed. To think something will succeed just because it is part of a particular field or location is ludicrous.

michaelochurch31 karma

I agree, but the startups' selling point is that, even if a startup fails, the founders will have your back and line you up with investors to be a founder in your next gig. That doesn't happen anymore. The "pay it forward" culture died about 20 years ago, but because Silicon Valley still has that reputation, there are a lot of eager young kids who go to work there, thinking they're going to be VC-backed CEOs inside of 3 years, and working 90+ hour weeks under that supposition, when the reality is that almost none will.

The Silicon Valley game ruins careers far, far more often that it makes people millionaires.

xiko2 karma

Is there a full article on those ideas?

michaelochurch8 karma

I had a blog for a while, but I started getting harassment (up to death threats) from the Silicon Valley elite, so I'm holding off for a while. You can find it using the Wayback Machine, though.

This might be the most notable one.

newocean14 karma

Why would the Silicon Valley elites hate you for telling people not to work for startups? I mean - I would think they love you! You are telling people to work for them instead!

michaelochurch11 karma

Well, the Silicon Valley elites are heavily invested in the Sand Hill Road startup scene, and most of their companies still identify as ex-startups.

I trained people to spot lies, to see through them, and fight against them.

Now to answer your question, I think that it's this. Did I do significant economic damage to Silicon Valley? No. However, I'm perceived to have embarrassed people. When I exposed Google's use of stack ranking and the consequence death of "20% time", it was around the same time as Google's reputation transitioned from "great place to work" to "pretty good stepping stone". Was I at fault? I have no idea, but I tend to doubt that I had, as an individual, that much of an impact on the company's reputation.

Furthermore, Paul Graham personally wanted (as many of the tech barons do) to be viewed as a statesman and philosopher rather than just another element of another generation of robber barons. He blames me for his failure to achieve this status. Is this accurate? Probably not. I tend to think that my individual impact was smaller and that these evolutions would have happened anyway.

shouldbebabysitting14 karma

This might be the most notable one.

That a really well written essay but I find it very hard to believe you'd get harassed for a blog that re-states what was being published 20 years earlier. Actually I'm sure it was published 40 years earlier.

In 1999 when I was looking for space to expand, the seemingly out of touch grandpa real-estate agent dropped some serious wisdom when he talked about going through the same thing in the late 1960's with the mini-computer revolution. He talked about the hundreds of over funded startups expanding and then failing. Even in the 1960's, it was stock option promises, over work and then nothing for anyone except for the few lottery winners.

michaelochurch4 karma

I find it very hard to believe you'd get harassed for a blog that re-states what was being published 20 years earlier.

These people are extremely vindictive and will do absolutely anything to protect and expand their reputations.

Even in the 1960's, it was stock option promises, over work and then nothing for anyone except for the few lottery winners.

The difference, I think, is that in the 1960s, these people went back into upper-middle-class tech jobs, their careers only better for the wear. There was also a genuine "pay it forward" culture; if you worked on someone's startup and the startup failed, he'd support your career later on. That's gone now, and that's the bigger difference.

Ed_Tivrusky_IV33 karma

How did you become a church programmer? I always thought most churches were low tech.

michaelochurch23 karma

Ever hear of deus ex machina? It's a real thing, bro.

God tends to be a little too comfortable with pointer arithmetic, though, if you ask me...

Meshakhad26 karma

Why does a brown cow give white milk if it only eats green grass?

(You did say "ask me anything")

michaelochurch20 karma

I have an obnoxious gray cat who knows the answer. She won't tell me, though.

Bluecat1617 karma

What advice do you have for someone planning to study mathematics in college (and hopefully grad school)?

michaelochurch30 karma

Don't specialize too soon, but get some research papers out in undergrad because graduate admissions are difficult (way, way harder than law or business school) and a 4.0 isn't enough. Study analysis and probability, and take some CS courses, because the academic job market is a disaster and I don't foresee that changing. You'll need to be proactive in getting ready for "the Real World"; no one will teach you how to do that.

takethislonging5 karma

Not OP but also interested, thank you. How do I get research papers out as an undergrad in math and CS?

michaelochurch27 karma

Get some form of research experience every summer-- including freshman year. Apply for REUs. Take the most advanced classes that you can, including graduate-level courses if they're available. Talk to professors and share your interest in moving into research. Many will be happy to bring you along, and while you probably won't make huge discoveries on your own at, say, 19; you can get your name on a couple papers.

Graduate schools want to admit people who are already graduate students. Research experience is a must if you want to get into a top-10 program (or, at least, was circa 2005).

kgao-12 karma

What algorithmic trading strategies did you or your firm employ? Were you working in that domain during 2008? Why did you leave?

michaelochurch10 karma

What algorithmic trading strategies did you or your firm employ?

Not at liberty to say.

Were you working in that domain during 2008?

Yes, but it had nothing to do with subprime. I did get a front-row seat, and it was cool to be working with people who knew exactly what was going on.

Why did you leave?

I caught the startup bug. Huge mistake. The startup "career" is a joke unless you have the connections to start as a founder. Otherwise, get a real job at a real company and build credibility.

ETA: it can be hard to get back in to finance after dicking around in startups for 5+ years, because the startup game involves a lot of job hops and the rest of your world looks at your job-hoppy CV and thinks you're a sociopath.

kgao-9 karma

ETA: it can be hard to get back in to finance after dicking around in startups for 5+ years, because the startup game involves a lot of job hops and the rest of your world looks at your job-hoppy CV and thinks you're a sociopath.

Are you saying that you wish that you were able to rejoin the finance industry? In your estimation, what are the key criteria for entering that industry as a programmer?

In retrospect, which of your careers has been the most rewarding (using whatever definition of rewarding that you prefer)?

michaelochurch14 karma

Are you saying that you wish that you were able to rejoin the finance industry?

Let's just say that there are people dumber than me making 8 figures per year. I could probably get back in, but at 32, you're not the sort of person that hedge-fund managers look for when picking proteges. That ship has sailed.

I'm not in love with finance itself, although I don't hate it and tend to think that the general public exaggerates its evils, but the freedom and credibility it provides are valuable. Most of the startup people (e.g. VCs, founders) are failed finance people.

In your estimation, what are the key criteria for entering that industry as a programmer?

Learn C++, because even though it sucks, it's what most people use. Keep your mathematical toolset sharp. Once you're in, learn q/kdb if you can and you'll always be in demand. It can help to study machine learning, but most quants don't use it.

michaelochurch7 karma

In retrospect, which of your careers has been the most rewarding (using whatever definition of rewarding that you prefer)?

I just realized I didn't answer this one. Intellectually, I enjoy building software systems and solving mathematical puzzles. I doubt I'd want to be a pure research mathematician (too much risk, and I'm perceived as old even though I'm 32 and still getting smarter each year) but that game was a lot of fun.

To be honest, very little of what I've done in the private sector has been especially rewarding. I'm not really cut out to be a subordinate.

eskatrem7 karma

What do you think of Patrick McKenzie (patio11 on Hacker News) and why do you think he doesn't have problems on HN even though he is preaching directly against VCs interests (helping programmers to negotiate their salaries and to bootstrap)?

michaelochurch2 karma

He's a sharp guy.

I don't think VCs care much about programmers negotiating for better salaries. That comes out of the founders' pockets, not theirs.

I wrote a blog post where I called VC out for the culture of sexism, ageism, and classism. It pissed a lot of people off in high places.

TouchablePanda6 karma

I'm a female Computer Science major, 1 of 4 in my graduating class. How can I stand out from others in my field? What can I do to be someone a company wants to hire, not just to fill a gender quota?

michaelochurch9 karma

To be honest, if you're good at coding and you like to code, this is a great start. Many CS majors (and even quite a number of PhDs) are bad at programming and dislike it.

Very few companies that I've worked at have gender quotas. If you get hired, it's overwhelmingly likely that you were hired because you're good-- not just because you're female. In fact, in most companies I've worked at, the women were better programmers on average than the men.

brovbro4 karma

Hahahhaha ... Nice sock puppet Mike

michaelochurch2 karma

I am not /u/TouchablePanda. I invite any mods to check and comment.

hoes_and_tricks3 karma

Why has this been upvoted so many times?

Who is this guy?

michaelochurch2 karma

Honestly, I'm surprised that it's at 296 comments already. I expected it to reach about 40.

bwaxxlo3 karma

I just want to say that thank you for your startup blog posts. I joined the industry as a consultant and never held a proper employed gig. It easy to drink the startup koolaid because everyone seems to be singing the same song. Your posts gave me a good hold on what's fluff vs important in a career.

As a question, how does one get into financial programming? How is the culture compared to startups' ruby on nodejs with IOT as a service?

michaelochurch6 karma

As a question, how does one get into financial programming?

Good question. I wouldn't aim for "financial programming". I'd study math and financial applications (e.g. derivatives pricing) and be a quant who can program. It varies by firm, but you want to be seen as a revenue generator rather than a cost center. Many financial firms see programmers as a cost center, and you want to avoid those.

How is the culture compared to startups' ruby on nodejs with IOT as a service?

There isn't one definable "finance culture". There's more diversity than in startups. Some hedge funds are great places to work and some are terrible, and picking the right group matters more than getting the right company.

DCoop153 karma

Is it possible for someone who blows at math to get into Algorithmic Trading career or a Software Engineering career?

michaelochurch8 karma

Why do you assume that you "blow at math"? It's just as likely that you didn't like how it was taught to you at age 20.

You can get into software engineering without doing much math, although it'll be a hindrance if you want to do anything interesting. I doubt that algorithmic trading is an option if you dislike math.

kylelibra2 karma

At what point is a startup no longer a startup and worth working for? Is it funding, revenue, number of employees, etc.

michaelochurch8 karma

At what point is a startup no longer a startup and worth working for?

Whether a company is worth working for is orthogonal to whether it's a startup. There are startups worth working for and others not worth working for. Same with big companies.

Is it funding, revenue, number of employees, etc.

None of those numbers mean much. Especially as you get older, you evaluate the job rather than the company. You still have to pay attention to company culture because it will affect how your job evolves (especially as managers move around, in, and out) but there's no "magic number" at which a company's culture changes.

Rapid headcount growth (more than 50% per year, beyond the first 30 people) tends to be a cultural negative. As headcount grows, so do expectations and investor-level pressures, and the shit rolls downhill. Also, when rapid growth is taken for granted, there's a willingness of managers to tolerate technical debt and needless grunt work because there's perceived to be a limitless supply of future hires who'll cover it and clean up. (It rarely works that way.) That tends to result in severe morale problems once someone realizes that the company can't afford to keep growing its headcount at 50+%/year forever. I'm very skeptical of these "unicorns" that have existed for 3 years and have 500 people.

kylelibra2 karma

My question relates to a blog post that's apparently now deleted called "Don't waste your time in crappy startup jobs." Anyone have a link to it?

Edit: this is the blog post in question - https://web.archive.org/web/20150910002004/https://michaelochurch.wordpress.com/2012/07/08/dont-waste-your-time-in-crappy-startup-jobs/

michaelochurch4 karma

Right. And please note that it says not to take crappy startup jobs. Not all startup jobs are crappy. It's probably well over 95 percent, though. It's also hard to find the good ones unless you're well-connected and can come in at a decision-making level.

Snatch_Wrangler2 karma

Tips for going into finance with a math background? Are advanced degrees a requirement?

michaelochurch4 karma

Tips for going into finance with a math background?

You'll want to study analysis, probability, CS, some basic economics, and possibly operations research. You'll want to make connections as early as you can, because it gets harder as you get older.

Are advanced degrees a requirement?

No. PhD Bigotry exists in some firms, and it will piss you off when you're 30+ and know more than most of the people with advanced degrees but still can't get half the jobs. You don't absolutely need a PhD to become a quant, though. There are many paths, and the PhD is probably one of the less time-efficient ones (unless you really want to get one for other reasons).

Snatch_Wrangler1 karma

What do you thunk is a more time efficient path?

michaelochurch3 karma

An MBA and/or an MFE will get you to high earning potential more reliably, and more quickly. (A PhD can take 7-10 years if you're unlucky.) The downside is that you'll have to pay for the degrees, and if you don't get them from top schools, they probably won't open many doors.

DancingSax2 karma

I am currently a freshman at Harvard, and am having a difficult time deciding between two majors. So my question is, would you suggest majoring in Mathematics or Computer science?

michaelochurch1 karma

Can you double major? That's a hard call. I enjoy both fields and they're quite different. I might lean toward math, only because it's harder to learn mathematics once you're out of school (it's quite possible, but takes effort) than computing.

3rdUncle2 karma

What does a moralist do?

michaelochurch3 karma

Not sure. I threw that in mostly as a joke.

anossov2 karma

Are you related to Alonzo?

michaelochurch2 karma

Very distantly. My grandfather would be his 9th cousin.

matagen2 karma

As a mathematician myself, I must ask: what sort of research did you do? Also, I cannot find you on the Mathematics Genealogy Project. Did you obtain a doctoral degree, or did you take an alternative route to research mathematics?

michaelochurch3 karma

I left after one year of graduate school, and most of my work was internal to a think tank. And it was closer to computer science than pure mathematics.

These days, it's a hobby. I didn't have the persistence and (for lack of a better way to put it) the tolerance of penury to go into academia.

montanonic2 karma

Michael, you were one of the first bloggers I stumbled upon when I started my journey into programming 9 months ago. I've really enjoyed your insightful analyses, and among other things they've made me very wary and sceptical of hype and fads in tech, which I'm very grateful for (yay Haskell!).

Unlike a lot of people here, I know that you are not pretentious, just talented and self-aware enough to not want to dance around with bullshit and false-modesty. You seem to be a very honest person with lots of integrity.

My question kind-of builds upon this. As a self-described moralist, have you considered making your work targeted towards addressing moral issues, beyond just the moral concerns of office-place ethics?

Put more clearly: have you considered focusing on building technologies that are humanitarian first and foremost? I find one of the most depressing aspects of tech culture to be its horrid short-sightedness, a problem that likely stretches to Western-style business culture at large. So much effort is put into maximizing profit and rapid growth in fad markets, and so little on creating sustainable products that can continue to grow because they address real needs efficiently and ethically. We can see this manifest in the fad of open-sourcing only when it benefits the powerful company, and open-sourcing only as much as benefits the company; this in contrast to open-sourcing with the intent of empowering programmers to more rapidly create useful technologies, and taking ease of use and documentation seriously.

Computer Tech is such an amazingly powerful platform, and it just seems to me that there is an enormous landscape of untapped potential, untapped because the current culture constrains creativity. Do you feel similarly? If so, what type of culture would you like to see grow, and what might be some technologies that you'd want to see created or improved upon within such a culture?

Thank you for doing this AMA. It's really cool to be able to talk to you, and I really look forward to your response if you have the time.

michaelochurch2 karma

Put more clearly: have you considered focusing on building technologies that are humanitarian first and foremost? I find one of the most depressing aspects of tech culture to be its horrid short-sightedness, a problem that likely stretches to Western-style business culture at large. So much effort is put into maximizing profit and rapid growth in fad markets, and so little on creating sustainable products that can continue to grow because they address real needs efficiently and ethically.

I would love to see this change. I have no idea how to do it.

Computer Tech is such an amazingly powerful platform, and it just seems to me that there is an enormous landscape of untapped potential, untapped because the current culture constrains creativity. Do you feel similarly?

I do. I agree completely.

If so, what type of culture would you like to see grow, and what might be some technologies that you'd want to see created or improved upon within such a culture?

I think that, over the past 30 years, the zero-sum players have driven out the positive-sum thinkers. I don't know how to fix it. The zero-sum people are better at politics and wrangling over scarce resources, and they're the ones who end up in control of important institutions. I wish there was an obvious fix for this, but I haven't found it.

Murrayr31282 karma

Warren Buffett bet $1 million in a 10-year wager that an inexpensive plain stock index fund will outperform high-fee hedge funds. So far he is winning by miles.

Does algorithmic trading really make more money over the medium to long term than investing in market index funds when you take fees into account?

michaelochurch1 karma

Algorithmic trading generally relies on having strong relationships with counter-parties as well as fast execution. It's labor-intensive. You're making low-risk, smart trades, but with a lot of leverage... and that's another reason why counterparty relationships matter. It's not something that you can do on your own.

Does algorithmic trading really make more money over the medium to long term than investing in market index funds when you take fees into account?

They're fundamentally different. Let's say that you can reliably make a 0.01% expected profit on your principal every day. If you're a typical investor, that's useless: only 2.6% per year. If you can lever it up, you could make a lot of money. If you can do it on a large number of stocks, that's great. Arbitrage is making a large number of low-risk, positive-expectancy trades, usually with leverage (because, if the strategy is executed, the risk is actually quite low). Long-term investing is a fundamentally different game because it's highly influenced by economic factors, corporate evolution, and various other things.

marineabcd1 karma

Any advice for getting into the finance world for a pure maths student (taking my first finance related class next year)? and how did you find it once you were there? Were your maths skills useful too? I currently follow financial news and pharma stocks and program but have no experience as of yet.

michaelochurch2 karma

Any advice for getting into the finance world for a pure maths student (taking my first finance related class next year)?

Probability and analysis will be the most important classes. It can't hurt to learn how to program, and to take some economics and game theory.

and how did you find it once you were there?

When I was ~23 I found the professional culture a bit too stifling but now that I'm older, I appreciate not working with people who think it's OK to ride around the office on rollerskates shooting Nerf darts at people who are trying to work...

There isn't one "finance culture". The funds are quite varied. Some are better than others.

Were your maths skills useful too?

Yes, absolutely. Even if you never need to work with, say, non-measurable sets or large countable ordinals, mathematics trains you think in a precise way and that's a skill that very few people (less than 2% in my experience) have acquired.

mattygrocks1 karma

A few questions for you:

  1. Do you have any advice for someone wanting to get into software research? Think basic research but for software. (Things like VPRI's STEPS are an example.) Current strategy is to target credentials because the jobs are a bit scant and credentials seem to convey connections/status.

  2. What, in your opinion, offers the best hope for programmers to professionalize? I've watched many smart people get out of tech as the web has such a powerful hegemony over the average developer job.

  3. You talk a lot about who you don't like, do you have anyone you look up to?

michaelochurch2 karma

Do you have any advice for someone wanting to get into software research? Think basic research but for software. (Things like VPRI's STEPS are an example.) Current strategy is to target credentials because the jobs are a bit scant and credentials seem to convey connections/status.

I think you know what I'm going to say. Yes, it's going to be very hard. One of the reasons I wouldn't endeavor for basic research is that means (due to our society's failure, over several decades, to continue to invest in it, and the shitty job market that results) that every job hunt is national. At some age, you get sick of moving.

What, in your opinion, offers the best hope for programmers to professionalize? I've watched many smart people get out of tech as the web has such a powerful hegemony over the average developer job.

An exam system like the actuarial sciences have. I've written a blog post on this, here. We also need to stop hating on "politics" as a group. Software engineers don't want to think about professionalization or collective bargaining because that's "political". Well, it is! Politics is a fact of life. We need to get fucking good at politics so we have time and resources to spend on the things we actually care about (making great software, advancing the state of research, or just plain having more autonomy and making more money).

You talk a lot about who you don't like, do you have anyone you look up to?

I do, but that's really personal for me. Sorry if it's a crappy answer.

doromaln1 karma

You've written quite a bit about Silicon Valley culture. But what do you think of finance culture? Did you find the lack of transparency or control frustrating (engineers really work for traders) ?

michaelochurch2 karma

Nearly every work culture will be more unpleasant than positive, for most people, until society institutes a universal basic income (UBI) and employers no longer have the leverage of life and death. So... I don't want to make it sound like finance culture is wonderful in all ways.

Startups offset the negatives with lottery tickets. Hedge funds offset the negatives with bonuses that can be substantial. I'd rather get paid in cash than illiquid shares of some company that I have no control over.

Finance people are also more mature, in general. You don't have the culture of militant immaturity. Also, finance bids up the price of talent. We'd be in bad shape if it disappeared.

jeanlucpikachu1 karma

Have you had a chance to read Haskell Book?

If yes, what did you think? Would it alter the way you taught Haskell the next time around?

If not, what are you teaching/learning these days?

michaelochurch4 karma

Have you had a chance to read Haskell Book?

I haven't.

If yes, what did you think? Would it alter the way you taught Haskell the next time around?

If I end up having to teach a Haskell class, I'll certainly look at that book. It seems promising.

Haskell is getting much easier to learn by the month. This is definitely a good thing and I hope that the community continues to grow.

If not, what are you teaching/learning these days?

A mix of things. I'm back-filling my knowledge of topology. Not for any specific reason; it's just interesting. I read through some material on Rust. I'm probably going to plow through some of the literature on Erlang/OTP. As much as I prefer static typing and will evangelize its usefulness in writing reliable code, the fact is that the most proven language for high-reliability systems is still a dynamic one (Erlang).

turkeypedal2 karma

If you had to give a quick layman summary, what makes erlang so robust?

Or, if that's too hard, try someone who can code in JavaScript, but hasn't done anything too complex (like making a web app).

michaelochurch2 karma

I don't know enough about Erlang to have a strong opinion of it, yet. Culture (rather than a language per se) has a lot to do with it. On the other hand, the constraints imposed by a programming language also affect the culture.

Fucks-with-Cucks1 karma

When you say game designer, do you mean for video games or other games? I see the card game you made but you are also a programmer.

michaelochurch1 karma

I've never designed a video game, and everything I know about video games per se is out of date. I still enjoy the mid-90s console RPGs more than the new games.

jncc1 karma

You said below that you were not fired from Google.

So how much notice did you give them when you quit?

michaelochurch1 karma

16 days.

GreeTiger1 karma

You recently tweeted this:

Jessica Livingston is taking a sabbatical from @ycombinator to distance herself from coming founder-conduct scandals. Smart move. CC @paulg

In response to news that Jessica Livingston was taking a year's sabbatical from YCombinator.

Without naming names, what kind of founder-conduct scandals are we talking about here? Financial, sexual harassment, discrimination etc?

michaelochurch1 karma

So, it's hard to predict what will stick to Y Combinator and what won't. They did an impressive job of distancing themselves from Zenefits when that scandal broke.

What's going to happen in the next 2-4 years, most likely, is that, once the economy softens and the people who've crammed themselves into Silicon Valley realize that they're not going to get rich, the knives are going to come out. People will protect the secrets of the powerful when the perception is that it's raining money, because they don't want to damage their own careers. When the "unicorn" bubble hits the skids, though, all sorts of founder-conduct issues are going to come out, and it's hard to imagine Y Combinator (which has long been associated with young, arrogant, unprofessional founders) emerging clean.

GreeTiger1 karma

people who've crammed themselves into Silicon Valley

Why do you think YN insists on having its companies move to SF? Is it a control-freak thing or is there a more practical reason to force a cash-strapped startup to move to one of the most expensive cities in North America?

michaelochurch4 karma

It's partly about control, but it's also about the VCs. The VCs don't want to invest in non-SF startups, so Y Combinator has no interest in funding companies that will have to relocate.

So the real question is: why do the VCs insist on staying local? The answer to that is that a lot of what goes on, on Sand Hill Road, is the application of strategies that are illegal on public markets (e.g. market manipulation, insider trading) to unregulated private equities. Even in 2016, this means that a lot has to happen in face-to-face meetings (of which there is no record) instead of electronically.

happymanwonton1 karma

im 23 turning 24 real soon and dont have a background in math, i have a degree in biology. i work as a programmer familiar with javascript and python making 90k. is it impossible for me to work in the more lucrative financial environments? im not a harvard grad, or a double math/cs major...and im probably pretty bad at math even if i always did well in college in those classes. i feel like i already lost out on my chance, i guess.

michaelochurch2 karma

is it impossible for me to work in the more lucrative financial environments?

Not at all. I mean, you're not going to be making $150k base, but you can probably find a job at a hedge fund. You might have to shoot for straight IT, though. That can be rewarding, but the big bonuses are going to require you to build a quant skill set, or become a trader.

i feel like i already lost out on my chance, i guess.

Definitely not. 23 is young. Also, ignore it when people like me say that we're "old" at 32. That perception only exists in pathological startup cultures; in the real world, you're very young.

PureVegetableOil1 karma

What advice would you have for an old scientist wanting to be more computer capable with the least investment of time? Any good websites or videos on this for me?

michaelochurch2 karma

There are a lot of good courses on Coursera. That might be a place to start.

EdoPut1 karma

Thank you for your AMA. As a math student I must ask: what is your favorite theorem (a plus if it's stochastic calculus)?

michaelochurch2 karma

Godel's Incompleteness Theorem, of course.

Goodstein's Theorem is pretty neat as well. Rice's Theorem comes in handy as a justification for the claim that reasoning about arbitrary code is, to say the least, very hard.

jacobgil1 karma

[deleted]

michaelochurch2 karma

How far should one go in learning Haskell?

As far as you want. If you're into the front end, you may want to look at Elm and Purescrupt as well.

I've read this answer of yours on quora saying that data science jobs are means for better project allocation for software engineers. However in a comment here you wrote that "most "data scientists" just dick around with off-the-shelf libraries".

Don't these two answers contradict each other?

They do. Good catch. I think that the business world has successfully dumbed down the "data science" job over the years. It doesn't mean what it used to, and even 5 years ago, most "data science" work was pretty pedestrian (but, then again, so is/was most software work).

badhairqueen1 karma

Hi Michael, how do you actually make money? Do you have "one fixed thing" you do right now, or is it a mish-mash of stuff? Are you self-employed or do you work for someone? And what advice would you give to someone who wants to get into game design but has an economics degree (but is an active gamer with many years' gaming experience)? Thanks!

michaelochurch5 karma

Are you self-employed or do you work for someone?

A mix. I consult, but I dislike looking for clients. I don't reveal past or present employers, as a general rule.

And what advice would you give to someone who wants to get into game design but has an economics degree (but is an active gamer with many years' gaming experience)?

No idea. I'd be shocked if it isn't extremely difficult to make money in game design, because there are so many people who think it's an easy job and would do it for next to nothing.

randian31 karma

Hi Michael, long time fan, couple of questions:

1) I'm a tech lead at a FANG company and frankly I'm losing interest in coding. I'm not too old for an MBA (about 30 now). Would you suggest getting an MBA and doing something different like finance or fighting it out and trying to move up the dev management chain? I only ask because in some of your writing and some of your twitter comments you've alluded to wondering if you'd have been better off just completely becoming a suit (pardon me if I interpreted your comments wrong).

2) What are your thoughts on product management jobs? I see a lot of engineers trying to angle their way to becoming PM's but I don't really know what value they ad. Do you see it as a stable long term career or just the byproduct of today's hyped up market.

michaelochurch4 karma

I'm a tech lead at a FANG company and frankly I'm losing interest in coding. I'm not too old for an MBA (about 30 now). Would you suggest getting an MBA and doing something different like finance or fighting it out and trying to move up the dev management chain?

Tough call. I mean, an MBA is going to cost a lot of money and two years of your time. If you can get into a top program, it can open a lot of doors. Unfortunately, it seems that only 3-5 programs actually have that kind of pull. Moreover, since it's the connections rather than the degree that make one's career, you probably have to audit what career you want as well as how much social success you realistically expect to have at an MBA program.

I would love for this industry to be one that provides a future for smart people. Technology is important and it's probably worth fighting for. I just wish that we didn't have to.

What are your thoughts on product management jobs? I see a lot of engineers trying to angle their way to becoming PM's but I don't really know what value they ad. Do you see it as a stable long term career or just the byproduct of today's hyped up market.

I've got no idea. Generally, product managers are "idea people" who, on average, seem to be a net negative. That said, I've met good PMs. They're just rare. I have absolutely no insight into the future of that market and am not qualified to give advice on whether it's a stable career. At one time, programming looked like a stable career.

jordanosman1 karma

What do you think the best way is to learn something?

michaelochurch4 karma

It varies wildly by person, so there's no one-size-fits-all answer. I think the most important thing is to get into a state of "Flow", as defined by Mihály Csíkszentmihályi.

iCanHelpU21 karma

As a Junior in a Computer Science program, what do you think I can do to maximize my chances of having a fruitful career?

I've worked at a 'dream' company before, and had a terrible experience. I was actually lucky to work directly with someone in higher management, and got to see a corporate reality a lot of people (at my age) won't get to see. Incidentally, that's how I started following you.

michaelochurch11 karma

As a Junior in a Computer Science program, what do you think I can do to maximize my chances of having a fruitful career?

Good question. At the risk of sounding Trumpian, don't waste time on losers. Don't get into flame wars on mailing lists with people who don't make the decisions, don't work for managers who can't get their reports promoted, and don't work on products that don't have a leg to stand on. When you're the smartest person in the room on every topic, find another room. All of this is easier said than done, of course. Early in my career, I was far too trusting and forgiving when it came to warning signs that something wasn't right.

I've worked at a 'dream' company before, and had a terrible experience.

"Dream company" means that the firm is good at marketing. That's orthogonal to whether it's a good place to work. As you probably know, the startup game these days is about marketing more than it is about technology.

Unfortunately, I can't come up with a compact strategy for finding good companies. It's hard, and not only are bad companies more common, but even the good companies (e.g. the "Big 4") have more bad, dead-end teams than good ones.

TreyWait1 karma

Mike, are you aware of a way (or ways) of circumventing the Iphones passcode lock? I heard that the FBI used virtual machine copies of the phone to test codes.

michaelochurch1 karma

I'm not, but that's far outside of my expertise.

Jordy_Banks1 karma

What sort of programming do you know and use?

michaelochurch1 karma

I tend to use functional programming languages because they're good for highly reliable systems and tend to naturally induce high code quality, largely because these languages have strong communities.

Deven2471 karma

What is your favorite cat breed?

michaelochurch2 karma

I don't really buy into breeds. My cats are both shelter mutts and they're amazing. I find it hard to justify getting a breed cat when there are so many great cats in shelters.

Varantain1 karma

What do you think of Y Combinator, as an accelerator?

michaelochurch12 karma

I think it's a shame that something as cool as the mathematical Y Combinator has been co-opted to an organization dedicated to division and exclusionary tech cultures.

Kayitosan4 karma

I love functional programming-- but I'm still not sure what's so neat about the Y-Combinator. It's a functor that produces a recursive function from one that is passed as an argument?

michaelochurch14 karma

It's interesting because it shows that the lambda calculus doesn't require recursion as a primitive; it can be built from variables, abstractions, and application. Otherwise, adding recursion would complicate the core language because you'd need to allow self-reference.

123423231 karma

What is your go to/ favourite language?

What language do you think a beginner should start with?

michaelochurch7 karma

I'm a huge fan of Haskell, but if I were a beginner, I'd probably start with Python. Python is a "B+ at everything" language and you can get quite far into computer science with it (although you'll want to learn C in order to do low-level stuff).

cardface21 karma

How do you feel about Google, now that some time has passed since their apology?

michaelochurch10 karma

It's big.

I have a lot of respect for many of their engineers. To be honest, I met a lot of really smart, interesting people when I was there and it's a shame that things got so... awkward... after I left.

I might be inclined to say less nice things about their management, but the fact is that technology management in general is quite terrible. I don't think Google is especially bad or especially good. For whatever reason, people who can manage technical teams or organizations in an additive (rather than subtractive) way are extremely rare: maybe 3-5% of those who hold managerial positions.

Stack ranking can die in a fire, and closed allocation is morally wrong when a company can afford to go open. That said, it's 2016 and my direct knowledge of Google is seriously outdated. I'd talk to people who are there now to get a sense of what it's like to work there.

naroom1 karma

Ever considered consulting? You've got the name recognition and are good at selling your skillset.

michaelochurch3 karma

I have. The client searching process is excruciatingly painful. Also, the "name recognition" goes both ways. I'm trying to figure out how to manage "going independent". It's not as easy as it sounds.

Even a "good" reputation can be a problem in the workplace (whether as consultant or employee). Many of the "rock star" engineers who speak at conferences and write books are the first ones fired when things go to shit, not because they aren't good engineers (they are) but because they're seen as "not team players" and resented for having invested in an independent reputation.

Differently1 karma

What advice do you have for a web designer looking to get into more advanced programming?

michaelochurch1 karma

What kind of advanced programming do you want to do?

I'd say that functional programming is a great place to start. Learn a few new languages: Clojure has a great community and lives on the JVM (where there will always be jobs) and Haskell has a powerful type system.

Also, put some thought into what advanced subjects interest you. Do you want to learn more about operating systems? Pick up an OS book. (In that case, you'll be working with a lot of C.) Graphics? Then you'll want a graphics book.

Machine learning can be fun but unfortunately there aren't a lot of great ML programming jobs because most "data scientists" just dick around with off-the-shelf libraries.

threat_level_0-4 karma

[deleted]

phadeout18 karma

There is no way this isn't a sock puppet.

Persaye6 karma

seriously, long time follower? What has this guy ever done, besides a "card game" in 2003?

JDLancaster131 karma

Yea this is his only reddit post ever as well. I call bs

michaelochurch1 karma

Looks like that's true, not that I blame him for wanting to use a throwaway. (It's not a sock puppet, and until at least one of these people has the courage to say it under his real name, I'm not interested in dignifying their idiocy.)

michaelochurch1 karma

I used to have a blog that got ~2500 uniques per day.

I have no idea if this guy's legitimate or what his deal is. As one of the other posters noted, it's a one-shot/throwaway account.

michaelochurch-7 karma

  1. Not true.
  2. There is no way you would say that to my face, punk.