Skip to main content

r/learnprogramming


I love OOP languages but in the areas I like, these languages are barely used.. I love OOP languages but in the areas I like, these languages are barely used..
Topic

The thing is, I love OOP languages like C++ and Java. It just feels right to me, everything about these languages. Everytime I learn a new language that is not OOP it feels off for me. I am currently learning Go and there is a lot that just doesnt feels right like it did with C++.

But here comes my problem. I am really interested in mostly security engineering and I cant think of any language that is used in this field that is OOP. So do I just have to go with languages that feel off for me? Or is it just a matter of getting used to it? Or should I consider switching to a different area where I can use C++ or Java? (I also thought about looking into Graphics Programming but idk if this is a good choice for a career path)

I would highly appreciate any opinions on this, because I feel very lost and dont want to choose a path and regret it later on.


Prepare for a career in healthcare with Stanford. Gain the foundational AI skills and credential employers seek for this role. Start today with a 7-day free trial.
Image Prepare for a career in healthcare with Stanford. Gain the foundational AI skills and credential employers seek for this role. Start today with a 7-day free trial.


Younger coworker asked me why I don't have a github with side projects Younger coworker asked me why I don't have a github with side projects

I've been a dev for 8 years and apparently this 23 year old on my team was looking at my github and asked why I don't have any personal projects on there

told him I have hobbies outside of coding and he looked at me like I said something crazy

like bro I go home and touch grass (and play guitar badly). I'm not grinding leetcode for fun

is this a generational thing or am I just old now


Why does java not allow operator rewriting? Why does java not allow operator rewriting?

So, for my first major project, I have to build my own complex numbers class, and perform a lot of complex arithmetic.

For example, I might have to do (((1+2i) / 5) + (2 + 4i) / 2) ^ 1/3 + 5+6i

If java allowed operator rewriting, my code to perform that might look like

Complex first = new Complex(1,2);
Complex second = new Complex(2,4);
Complex third = new Complex(5,6);
Complex result = Complex.cbrt(first / 5 + second/2) + third;

Instead, it looks like

Complex first = new Complex(1,2);
Complex second = new Complex(2,4);
Complex third = new Complex(5,6);
Complex result = Complex.cbrt(first.divide(5).add(second.divide(2))).add(third);

I know that in the grand sceheme of things, this is pretty minor, but like, I think we can all agree the first version feels much nicer to read than the second. Is there a reason java chose not to allow this?