435 karma · joined June 13, 2013
Thankfully I had the opportunity to make this change early in my career, although my financial situation is suffering dearly for it. And it's hard to swallow when everyone you know is making 2x your salary and just about all of them have a bunch of family money as well. (I grew up thinking I was upper middle class and somehow was the poorest person in pretty much all my social circles when I was at Google. The tech bubble is real.)
Keeping perspective and realizing that even if you leave toxic tech and take a pay cut you'll probably still be in the upper echelons of the world inequality distribution is hard but super important. And you'll realize that rich people are on average way shittier and probably not worth hanging out with anyway.
> People sometimes ask me, “What is the most important concept in political economy?” The answer is easy, but subtle: permissionless innovation, a strong presumption in favor of allowing experimentation with new technologies and with new business platforms that use those technologies.
Surely the ideas of capital, labor, markets, property, etc. are more important concepts in political economy?
Surely you don't mean actually permanent. So what time scale do you think they will last?
C doesn't even have parametric polymorphism, I'm not sure how you're imagining this can be done.
Yes, but typical uses would be mobile apps and web apps, pretty "high level" stuff.
> The actual application code doesn’t seem to adhere to any type of functor-oriented programming, as far as I can see: http://docs.reflex-frp.org/en/latest/architecture.html
https://hackage.haskell.org/package/reflex-0.4.0/docs/Reflex...
The entire library abstracts over its implementation via the "Reflex" class. This is not _exactly_ the style advocated in the original post, but it's basically the same spirit.
People outside this school of thought don't finish their projects because their projects actually try to solve the underlying problems in computing, which are inevitably hard.
1) Provide a tree based editing UI layer on top of text files since text still rules. In my opinion this is almost like the worst of both worlds, though it can be successful. Paredit is probably the best example of this (and many lispers swear by it).
2) Create a Grand Integrated Vision of How to Fix Every Programming Problem Ever Created. This can make a nice demo, but of course never turns into a practical product any time soon.
Until we have a standardized tree or graph interchange format that is designed to satisfy the common denominator of the full range of languages, protocols, etc., as text does today, all structured editors will be fighting an uphill battle.
Why do you want to own a home so badly? Most people in NYC are perfectly happy to rent. But if you plan on staying in the city long term and have a tech salary you can definitely buy and save money eventually.
> Plus, my understanding is that back east, tech is what companies use rather than what companies make, so at most companies you'll be in a supporting role rather than building the products.
The first part is definitely kind of true, the second part depends. If you're really passionate about tech as an industry then yes you might like SF more, but if you care about products that provide value to everyday people and not Uber for X then maybe you'd like NYC companies more.
Huh? Types (of the sufficiently advanced kind) are one way of specifying behavior in the same sense as TLA+ and other models. The difference is that type theory provides a coherent story for how to form entire systems like this in a composable manner. Traditional modeling/spec languages, not so much.