Live data from Hacker News

Tech Prep by Facebook

techprep.fb.com

31–40 of 41 posts

Re: Tech Prep by Facebook

#31

I wonder why there exists "computer science" but not "finance science" or "air conditioning science" or "automotive science". It makes me doubt that computer science is really a thing. Algorithms, logic, computation, electronics are covered by other more fundamental "sciences" such as mathematics, statistics, physics, etc. Is computation really justified as a scientific discipline of its own?

Computer Science is one of the purest of maths; It is where much of set theory, graph theory and basically all of algorithmics belongs. That Software Engineering and Information Technology are so often lumped into it (or taught instead of it) is a failure of schools and a historical artifact.

Re: Tech Prep by Facebook

#33
post #5

This was pretty cool and seems great for young beginners. I wonder, though, what is the modern equivalent of messing with BASIC after school? It certainly isn't Coding for Dummies is it? Would it be messing with the browser console? Messing with Python? On a side note, I still think the beginning of the first SICP lecture is the best introduction to Comp Sci (I watch it to get motivated/inspired sometimes!). What got…

I would hope it's messing with the browser console. Most "learn to code" literature that I come across still seems focused on unixy input-output type programs. I think there's an underestimated market of people who would be interested in programming if it were easier to see where the rubber hits the road and "programs" become "software." Being able to deconstruct what would otherwise be a sleek and opaque media exper…

Also, the Web is much easier to relate to.

Many people have ideas for websites, they are facing them everyday, and it should feel pretty cool because you make something that you can share and the Web is not the huge mystery anymore. You know how it works now!

HTML5 games are also a great alternative (technically, it's still Web but it's really different from a typical web site). There are easy to use great frameworks like Phaser where you can develop the first platformer game in an evening/day/weekend (depending on experience) and no knowledge about graphics etc doesn't get in the way. As a nice bonus, it's ridiculously easy to deploy and share with friends. Just drag and drop the the files on FTP and it Just Works. Can't say the same about python or ruby.

In contrast, when you develop a unixy command line application to calculate the area or volume of something... Nowhere near.

Re: Tech Prep by Facebook

#34

Given recent other posts about trying to get women and minorities in to tech the first thing I saw was the background marketing. Facebook is very good with data and I wonder if they can quantify a positive result. It felt forced, I didn't even notice the text I just kept scrolling around looking at all the photos. I didn't see anyone that looked like me, it all felt too social and nothing at all like programming. Not…

I agree with the forced feeling. Also odd to me, looking through the "Community & Events" there aren't any opportunities listed for a white males. Every organization and event listed is for women and minorities.

White males are not already an underserved demographic. White men don't need yet another resource catered to them; tech is already doing a fantastic job of being full of them.

Re: Tech Prep by Facebook

#35
post #23

Earlier quoted context omitted.

Meh. "Automotive science" was cleverly branded as "mechanical engineering". "Financial science" is "financial engineering" or if you're less keen on making money, "economics". Besides, the exact fields and their delineations are largely arbitrary. They're just historical artifacts. Why is there a line between math and statistics? Where did "applied math" as a separate field come from? We could just go all European an…

> I'd say that CS was a superset of math, not the other way around. "Computer" is just the name we give to the whole class of physical tools we use to study information. Then you'd be ignoring that a whole mess of math is not, in fact, computable (axiom of choice, law of excluded middle, etc). I think the problem is way too many "computer scientists" are pretty much software engineers.

I am not ignoring any of that. Nothing says that you can't work with non-constructive logic in a programming language, or analyze non-constructive logics as programming languages. In fact that can be extremely useful although it's also, at present, difficult and not super common.

The things you listed are extremely close to one of the foundational fields of CS, namely programming language theory. It's funny that you should bring up the law of the excluded middle because I learned a lot about it by studying PL theory: did you know that adding callCC to your typed lambda calculus turns it from a constructive logic system to a classical one? And that double negation translation is just a CPS transform which, at least for me, is a heck of a lot easier to reason about than proof theory directly?

Everything in math is, at least in theory, provable. Provable in a discrete system (ie a formal logic) even if it's reasoning about something that isn't discrete. So there's nothing fundamental stopping us from doing exactly the same proofs in a formal system that a computer can understand. Oh, say, a programming language.

Of course, with current technology, it's difficult from a practical standpoint, but there's nothing fundamental stopping us. And ideally it's something we should do to ward off errors and also to create proof artifacts that can be analyzed and manipulated systematically.

Wouldn't static analysis for mathematical proofs be great? Or papers written as libraries so that relying on a lemma literally links against the proof it was first defined in.

Seriously, if you dive into PL theory you'll see that the line separating CS from math doesn't really exist except as a social and technological phenomenon. (Lots of things are fundamentally possible but too difficult to do in reality, at least right now.)

Re: Tech Prep by Facebook

#36
post #22

I wonder why there exists "computer science" but not "finance science" or "air conditioning science" or "automotive science". It makes me doubt that computer science is really a thing. Algorithms, logic, computation, electronics are covered by other more fundamental "sciences" such as mathematics, statistics, physics, etc. Is computation really justified as a scientific discipline of its own?

Many in the field consider it more math than engineering. It's arguably not a science though, we don't make hypotheses and don't do experiments.

I don't make many hypotheses, but I do a shit load of experiments.

Re: Tech Prep by Facebook

#37
post #35

Earlier quoted context omitted.

> I'd say that CS was a superset of math, not the other way around. "Computer" is just the name we give to the whole class of physical tools we use to study information. Then you'd be ignoring that a whole mess of math is not, in fact, computable (axiom of choice, law of excluded middle, etc). I think the problem is way too many "computer scientists" are pretty much software engineers.

I am not ignoring any of that. Nothing says that you can't work with non-constructive logic in a programming language, or analyze non-constructive logics as programming languages. In fact that can be extremely useful although it's also, at present, difficult and not super common. The things you listed are extremely close to one of the foundational fields of CS, namely programming language theory. It's funny that you…

Dude, I'm a grad student in categorical logic and I've worked with PLT. That's why I used them as an example. To formalize most math, the simply typed lambda calculus won't do, you need dependent types. But the logic used in math is almost always extensional, and type checking an extensional type theory isn't computable. Huge chunks of math, from analysis to chaos theory, are simply not computable.

Re: Tech Prep by Facebook

#39
post #22

I wonder why there exists "computer science" but not "finance science" or "air conditioning science" or "automotive science". It makes me doubt that computer science is really a thing. Algorithms, logic, computation, electronics are covered by other more fundamental "sciences" such as mathematics, statistics, physics, etc. Is computation really justified as a scientific discipline of its own?

Many in the field consider it more math than engineering. It's arguably not a science though, we don't make hypotheses and don't do experiments.

> we don't make hypotheses and don't do experiments.

I don't formally write them down (unless it's a particularly complex case), but during debugging and performance tweaking I find myself making hypotheses and experiments all the time (according to the lay definitions of those words, at least)

Re: Tech Prep by Facebook

#40

With Facebook's Tech Prep, you too can create shiny monstrosities that chug while trying to scroll on an i7 with the very latest JS engine! It's tied in with McKinsey because they hate programmers. They hate the fact that the firms they're raiding and "advising" are currently having to pay people a living wage to build and fix their systems. They want to flood the market with a bunch of cheap framework cut-and-paste…

I was "blessed" enough to see one of their engagements - the young Bob and Bob McKinseys. So much money, so little results. Which prompts me to recommend my favorite book on management consulting, the life, the legends, the myths: http://www.amazon.com/Management-Myth-Debunking-Business-Phi...

just found it via a search of "management myth ebook". Thanks for the recommendation, I'll be reading this one tonight.
Post reply on HN