Lecture 40 (Tychonievich) - Ask Me Anything

Lecture Date: Wednesday, April 22

We had a Q&A today:

How did I learn so many languages?
One at a time (usually)
How much more do I have to learn to be a pro coder?
Nothing?
1110 + 2110 + 2150 (+ 4102) is our coding sequence (2102 etc useful but not required to code)
How much more do I have to learn to be a web dev?
HTML, CSS, Javascript, + one server lang (ruby or PHP or node) – Most people learn these on their own
Courses: Web + Mobile (4720), Web PL (currently a 4501)
BA vs BS (pro and con)
Are you in the college or the school?
Most employers don’t care
How do you create a new language?
public static String compile(String code), with input in one language and output in a different language (one the computer already knows)
What is Java best at?
Making large and maintainable systems
(also becoming one of the faster languages)
How do you count cards?
Gambling is mostly discrete math (and game theory)
What langs are best for making RPGs?
Most graphics-intensive large games are written in C++ (and Lua, asm, Cuda/GLSL, OpenGL/DirectX, …)
Will it rain Saturday?
Yes (but I don’t know which Saturday or where on Earth)
Is X on the test?
Yes (but we don’t ask you to write windowing code, and we don’t ask about specific class activities)
Can I take discrete in Math instead of CS?
No (unless your advisor says yes)
What about a CS focus in major X?
1. good luck getting into CS classes
2. likely won’t be hired by software companies
3. but you almost certainly can code at another company
Why are we using Python next semester?
Python is easy to start with (less to type)
We decided not to have OO (classes) in 1110
Other E-school departments where OK with Python (numpy)
Why is SIS so bad, and why haven’t I written a replacement?
Brittleness: code gets changed so much it stops being easy to change
It would be a lot of work to build a replacement
What is quantum computing?
Doing two things at once using Schrödinger equation
Some things that are “provably hard” with silcone are “easy” with Qcomps… but QComps are hard to build
What is the coolest thing CS has enabled me to do?
Teach 1110
… you can work doing anything
How does the cloud work? What is my political ideology?
I believe in local politics
How does language talk to hardware?
using 1s and 0s encoded as voltages; more in 2330 and 3330
How do you make calculators in minecraft?
Take 3102 (and 2330)

There is no audio for today (I neglected to turn on my recording device).