Question about professional computer programming?

Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
3 replies · 2K views
EntropicLove
Messages
45
Reaction score
1
What are areas of programming that are more theory oriented and deal with more abstract ideas? Is this pretty much all of programming?

I'm learning a few languages (competent in some) and curious.

Thank you!
 
Physics news on Phys.org
I'm thinking AI is pretty theoretical.
Computer Science is an applied science though so everything tends to be brought back to something you can code. Usually the programming part gets used to study something theoretical rather than actually being the theory.

There are related fields like information theory.
 
As Simon Bridge pointed out, things get practical some time or another.

Having said that I would suggest on top of AI, non-procedural languages (in particular ProLog) as well as linguistic stuff (the stuff that googles of the world work on) as well as optimal classification routines for a variety of fields including computer games and graphics (think collision detection, scene representation, object representation) and a tonne of stuff related to cryptography and related areas.

Within cryptography, you have not only study and analysis (crypt-analysis) of ciphers, but also you deal with one-way functions which is really nuts.

The one-way stuff is also used for doing things like checking how a hash-collision works with respect to generating a decent distribution of collisions and this affects a lot of applications that use hash-trees for fast lookups.

You also have the stuff in compiler design (and I don't just mean the grammars: I mean the whole project that deals with a compiler). Optimizations, checking for errors at compile time, re-organizing code for various uses (one would be the target platform) involves a lot of stuff.