It's hard to pin down when I started being more interested in functional programming. Maybe around the time I read Paul Graham's Hackers and Painters, as I grew fascinated by his very assertive stances on the arguable superiority and elegance of this programming form.
Later, I dabbled in some Haskell — not to proficiency, as I never got to monads and apparently that's a thing —, and tried to get into Lisp a few times. It never really stuck, for many reasons, but I had it always in the back of my mind.
There are a few landmarks in my journey. Grokking Simplicity (albeit an unfinished read) broadened my horizons to the data | calculations | actions
trifecta; from that moment onward, my relationship with for loops and state was never the same.
In the meantime, I've been through some other books and practices, gained confidence in never modifying variables and spent the last year of leveraging the possibilities of Python in a functional programming paradigm. I've also completed a small project in Scheme, and am freely taking a very interesting course in college.
As a matter of fact, it was precisely in the first class of that course that an impression of mine was confirmed:
- ChatGPT and other AI tools are already doing code;
- programmers shall be much less in demand;
- they will move toward roles of overseeing, or proving a certain program is correct.
Right now, I'd say my goals are to acquaint myself with meta-programming, face real-world programming scenarios with functional programming, and ideally find myself comfortable to take a job in the industry.