3 ms·
Yes. I have been in the industry for a while, and went back to school at night to get my CS Bachelors, and am sometimes surprised at what these young students
by Ologn 8y ago
Yes. I have been in the industry for a while, and went back to school at night to get my CS Bachelors, and am sometimes surprised at what these young students who want to program and work in the industry do, and what they do not do.
Classes happen at a kind of abstract level. I took a Java class, and when the semester ended I wrote a somewhat complex Java program which I wanted to make.
I had a semester where I took a graphics and also an AI class. After that semester I started my own AI/ML project which was something of a bust (once I gathered the small amount of data I needed and parsed it, the solutions were obvious without the need for ML techniques). To follow up on the graphics class I worked on a project which used OpenGL to draw things.
Also - years later I worked on a project similar to my original project which did not need AI/ML. This project had a lot of data, and did need the use of ML techniques, primarily clustering. Currently I am using mean shift clustering on the data.
Some things I have not had time for yet - I learned Common Lisp in a class, and would like to learn more about Common Lisp, Emacs Lisp and Scheme, but have not had the time for it.
Some techniques and ideas from class pop into my head when I need to solve something. I had data the usefulness of which faded over time. It occurred to me that the value of the data underwent exponential decay, and I programmed it as such. Or once I need to make a hash and I had the idea to use Gödel numbers, which I did not even know about until a math class. And so on.
Also when I need to deal with concurrency and mutual exclusion, I have weeks (months?) of class study about how critical sections and so forth work. Those are rocks many ships have crashed into (including myself, pre-class - and I still avoid it if possible).
You get a notion of how the same problem can be solved via different techniques. But maybe one uses self-balanced binary trees and one uses bogosort. You consider big O factors in programs. I have come across at least three programs that had a huge big O algorithm killing the program (although the root cause for one of them was actually mixing up signed and unsigned numbers).
If a topic in class interests me, I sometimes go beyond what I need for an A in the class. If we are studying priority scheduling, and the topic interests me, I may spend nights reading books, articles and documentation on how it works.
In summary, the answer might be to do more than class asks for. Class can be very abstract. If you feel as you do, bring the abstractness of a class into the concreteness of a real side project.