DEV Community

Discussion on: I Want To Be A Programmer: How Do I Start?

abhinav1217 profile image
Abhinav Kulshreshtha

Yes you are right, I should have been more clear about it. And I can share your feeling about trapped mindset. I worked on ruby on rails years ago and I struggled to adapt the meta-programming mindset. I have straight forward avoided using functional programming even though I love elixir as technology stack. Even today, for kotlin and Java lambda's, I struggle a little. For lambda's, My path of least resistance is to write code as I know, and then let android studio take over to convert my code to lambda.

OOP is not best for everything. But it is a good starting point to learn relationships and flow between code. With my dealing with college freshers, I have felt that those with good oop concepts can adapt to other coding paradigm easily, in contrast to those freshers who didn't. I have to review their code less.

One of the fresher working on a PHP project constantly objected our MVC-like approach citing its unnecessary to separate HTML and PHP logic into different file. ( I am living in a so called non-IT city in India where coaching classes still teach PHP 5.1, and college still uses borland c++ 5 to teach students).

I think mileage varies from person to person. Java has a benefit (or curse) of strict coding styles which means when teaching it to students, It's less distracting, because even though you can use your own coding style, community expects you to adapt default guideline. In the end, you have one less thing to worry about.

And like I said, Once you gain some work experience, working on any other language is just adapting its syntax and limitations. I switched my career from Java Servlets to PHP 7 years ago, and last year I switched it to Java and kotlin for android development. The difference between strict type and loose type language was nothing which google can't solve ;)

Thread Thread
ghost profile image

give functional a try, I started to dig into it when I started with Rust without even noticed; after a while I realized that my code naturally started to get more functional and that was just trying to make it more clear to me; the realization was almost freaky to me. Specially because since the university I always leaned to OOP, first with C++ and then with Python.

Thread Thread
tyreechrisp profile image
Tyree Chrisp Author

Thank you both for your insight!