top | item 37299342

(no title)

stevedh | 2 years ago

Can you expand upon why you chose those particular things to focus on? I’m genuinely interested and don’t have a traditional CS background so I’d like to know what I’m missing.

(Serious question. I’m not being snarky)

discuss

order

dustingetz|2 years ago

As a self-taught seeker who spent 20 years in search of a better way, this is where I ended up for the heart of computer science. Most software engineering topics I picked up on the job — even distributed systems — but the actual computer science aspects I had almost zero exposure to at work. I had to seek those out, which meant rejecting the commercial methods/doctrines/thinking and escaping from Conway's Law which has infected anything touched by money. "It Is Difficult to Get a Man to Understand Something When His Salary Depends Upon His Not Understanding It"

I now see actual CS exposure in industry as rare broadly (you'd have to work in a research org, which is both rare and also requires a PhD or other credential for one to be selected for the opportunity). Furthermore, the bulk of the CS literature & papers I encountered is embedded in those three programming languages. Now editorializing: I think Haskell is like "the periodic table of computation" as well as basically "math notation for computational structures." These deep science-y topics are hard to learn outside of school, the material is dense and there's no clear and accessible trajectory to get there, and to even identify such at trajectory you need role models and teachers of which kind industrial programmers aren't exposed to.

In conclusion, I'd likely have gotten to where I am today at age 30 instead of 38 and regret the lost time wandering in the swamp of silicon valley arrogance. FWIW my startup is a CRUD Spreadsheet, we apply functional programming research to user interfaces and web development as per https://github.com/hyperfiddle/electric

icsa|2 years ago

> lisp ocaml haskell

Covers all of the major programming languages in a deep way.

> interpreters (SICP), compilers, type systems, transaction processing, effect systems, FRP, concurrency

These subjects are the core of almost any system that you'll encounter, in practice - academic or industrial.

dustingetz|2 years ago

if only the industry recognized this – the-world-if.jpg. We get Conway's Law instead, which I'll cynically restate as "the org is a reflection of it's leadership" or "the org exists to lever up it's leadership, recursively" and that unfortunately has little to do with science

icsa|2 years ago

Thoughts from a Stanford CS graduate:

https://www.youtube.com/watch?v=4SiFgB1lGxw

dustingetz|2 years ago

Laughing, funny video. I don't agree with the thesis though (is he being sarcastic? I only skipped around), what the guy seems to want is a 2 year apprenticeship in software engineering aka bootcamp and internships. So in the end comes off to me as a childish and ignorant perspective