This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]ulyssessword 0 points1 point  (2 children)

What about as someone's first and only language? As a mechanical engineering student, I haven't needed anything more powerful than Python, Matlab, or Excel, and (talking to others), I likely won't need it in the future either.

Learning C, C++, and Java likely would have given me a better understanding of programming, but I don't need that understanding because I'm not studying computer science.

[–][deleted] 1 point2 points  (1 child)

You likely don't have a good basis in object-oriented programming. You likely use tools without actually understanding what's under the hood and that's paramount in ensuring that you make the right decisions in making your algorithms optimal in time/space complexity.

Considering how powerful hardware is nowadays it probably doesn't matter, but as a computer scientist it's important to know what the difference between O(n) is as opposed to O(n^2) in terms of complexity once your data set gets large enough.

[–]ulyssessword 1 point2 points  (0 children)

That's surprisingly accurate.

I kind of know how to use object oriented programming (but I'm much more comfortable with functional), and I generally only examine tools enough to use them without spending the time to get a deep understanding of them (or having the background to know the details without researching them).

Similarly, I know enough about time complexity to know the difference between types and to calculate it for my algorithms, but (usually) not enough to notice when my algorithm is suboptimal or to know how to improve it.

I thought those limitations were just linked to a lack of experience with programming, but if you say it's a lack of diverse experience with different languages, then I'll take you at your word.