2,865 reputation
1015
bio website jelv.is
location Berkeley, CA
age 21
visits member for 3 years, 7 months
seen 2 days ago

I am a student interested in programming languages, functional programming, program synthesis, type theory, universal algebra and startups (not necessarily in that order!). In the near future, I want to combine as many of these as possible.

I am currently an undergraduate researcher at the Berkeley ParLab, working on program synthesis. This past summer, I was a tech intern at Jane Street Capital, brazenly using OCaml in the real world. Right now, I'm leading a meetup group about type theory; you can see the slides here or just show up to the next on if you live near SF ;).

I am always happy to chat: my email is tikhon@jelv.is

GitHub: http://github.com/TikhonJelvis

Website: http://jelv.is


May
2
answered Was getting a computing science degree easier 10 years ago
May
1
comment How permissive should a language be about identifiers?
@n1ck: In Lisp, at least, symbols are separated by spaces and surrounded by parentheses. Also, everything is in prefix order. So alpha - beta would be (- alpha beta) and i = alpha-beta would either by (set! i alpha-beta) or (set! i (- alpha beta)) depending on which one you meant. (When I say I used Lisp, I really mean Scheme, a type of Lisp, but the point still stands.)
May
1
comment What 3-4 languages provide the best variety in style?
Funny note regarding languages vs ideas: I took a class that only used Scheme (yay SICP) and we managed to cover almost all of the basic ideas the various languages people suggest have, all using the same syntax. All told, we had four radically different paradigms: (purely) functional, object-oriented, client-server and logic (a la prolog). All this with basically just lisp syntax!
May
1
comment What 3-4 languages provide the best variety in style?
I really like the "webby" solution. I particularly endorse node.js for this--it is an interesting take on web programming while still allowing you quite a lot of control over everything.
May
1
comment What 3-4 languages provide the best variety in style?
Generally like the suggestions, but I don't think Objective C is worth including.
May
1
comment What 3-4 languages provide the best variety in style?
I really like JavaScript, but you have to be really careful going about learning it. A ridiculous amount of code and tutorials on the web basically covers how to write Java using JavaScript and misses the point completely, and a good portion of the rest is about wrestling with the DOM more than using the language. If you learn it correctly, it's invaluable; if you don't, it's completely worthless or maybe even actively detrimental.
May
1
comment How do you get into the zone? How long does it take? What steps do you take before?
@Kim Jong Woo: I think it's having all of the developers in one big room without walls or offices.
May
1
comment How permissive should a language be about identifiers?
@Orbling: Sometimes confusing developers in the short run is actually worth it in the long run. And if it fits well with the rest of his language, it might not be very confusing at all.
May
1
comment How permissive should a language be about identifiers?
I took a class that was done entirely in lisp, which allows alpha-beta as an identifier, and actually found it very reasonable. In fact, getting back to other languages was annoying afterwards.
Apr
28
answered Interested in a million things, have a million goals: how to choose what to focus on
Apr
28
comment Can I integrate software under Creative Common for commercial gain?
I think that if you're going to use CC software for a commercial purpose you should definitely talk to a lawyer, even if you also read the terms yourself.
Apr
27
comment How to explain to non-programmers that programming is not a repetitive task?
Even if, say, composing music is "harder", the problems in CS scale to compensate: each line of code may be easier to write than a single note, so we have projects with literally millions (if not more) lines of code. So even if each atomic action is simpler, the best programmers are simply expected to solve more difficult problems.
Apr
23
comment What is so difficult about pointers/recursion?
At my university, the first course started out with functional programming and recursion almost immediately, well before introducing mutation and the like. I found that some of the students without experience understood recursion better than those with some experience. That said, the very top of the class was made up of people with a lot of experience.
Apr
20
comment Should certain math classes be required for a Computer Science degree?
Odd, at my university, "scientific computing" refers to the sort of thing physicists and mechanical engineers do with Matlab rather than actual CS. There is even a "Computational Engineering Science" major that is completely separate from CS (although they are thinking of getting rid of it).
Apr
20
awarded  Commentator
Apr
20
comment Should certain math classes be required for a Computer Science degree?
I would personally add a probability/statistics course to that list.
Apr
18
answered What's the cheapest way to host hobby projects?
Apr
18
answered Gaining experience working with a team
Apr
18
comment Must a programmer learn text editors like Emacs and Vim? How important are they?
I was a high school student then (last year) and became very comfortable with it in a single semester. Make of that what you will.
Apr
18
answered Must a programmer learn text editors like Emacs and Vim? How important are they?