-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How did you become so good? #27
Comments
Learning basics of functional programming was a life-changing moment. (Mostly adequate guide is good.) You'll also want to get at least passingly familiar with different languages, e.g. OCaml, Scheme, F#, Erlang. I can hardly write a program in any of them, but they still influenced how I see programming. Read a good blog completely. My favorite one is Programming in 21 Century. Joel on Software's archive classic posts for an easy reading. Read a lot of other people's code. Read about different abstractions and where they come from. For example, read how Promises made their way in JavaScript, how they correspond to Futures and similar abstractions in other languages, notice how jQuery got them totally wrong and why. Then read about Observables, Rx and its many implementations in different languages. Try to understand monads but forget about them if they don't make sense yet. Contribute to an open source project. Find your tribe on Twitter and communicate. Listen to what really smart folks are saying and watch what they do. Imitate and learn by making mistakes. Learn about your weaknesses. Avoid being clever. Reading your own code from the past helps. Recognize when you're not particularly clever, and find what you can bring to the table instead. I'm talking about myself here—a lot of concepts and ideas are very hard for me to grasp so I purposefully don't bother and instead do what I know I do best—discover good stuff from more clever people and help make it accessible. |
Thanks a lot for the answer! Really helpful! |
👍 |
Darn helpful. Thanks Dan Abramov |
For those interested to learn FP, I think Scala is a nice place to start. There are very good Coursera MOOC to learn: This book can go further: Or you can do Haskell... |
👍 |
Any tips/advice/some of your aha-moments that made you look differently at code/problems?
What do you think make you a better developer than the average one?
The text was updated successfully, but these errors were encountered: