Comments (6)
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.
from ama.
Thanks a lot for the answer! Really helpful!
from ama.
Read a lot of other people's code.
๐
from ama.
Darn helpful. Thanks Dan Abramov
from ama.
For those interested to learn FP, I think Scala is a nice place to start.
There are very good Coursera MOOC to learn:
https://www.coursera.org/course/progfun
https://www.coursera.org/course/reactive
This book can go further:
https://www.manning.com/books/functional-programming-in-scala
Or you can do Haskell...
from ama.
๐
I absolutely recommend this introductory course on FP
https://www.edx.org/course/introduction-functional-programming-delftx-fp101x-0
from ama.
Related Issues (20)
- What are the most popular IDEs among React developers at Facebook?
- Which product metrics does React have?
- What skills have made the biggest impact on your programming?
- Google Analytics && extending setState in the class
- React-Native support in 2018 later
- CRA + Monorepo + Lerna + Yarn HOT 3
- Help me to find a right way HOT 2
- Curious what keyboard and mouse you use
- react-testing-library Integration Tests HOT 1
- What Computer Science concepts do you know?
- How did you get a UK Work Visa without a degree.
- What does "gaeron" mean? HOT 2
- Single source of truth and Redux
- Concurrent mode in react
- Building performant forms in React over a hundred fields HOT 1
- About your earnings.
- The webpack adds an unnecessary file to the chunk HOT 1
- component variables access inside hooks. HOT 1
- react-fast-refresh from scratch
- Do you meditate?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ama.