Part 2: Pragmatic Programmer
📝CHARACTERISTICS OF A PRAGMATIC PROGRAMMER
1. Early adopter/fast adapter 🎐
You have an instinct for technologies and techniques, and you love trying things out. When given something new, you can grasp it quickly and integrate it with the rest of your knowledge. Your confidence is born of experience.👵🏻
I feel the more we participate in hackathons, the more we will be able to get closer to achieving this. While we are building🛠 something in hackathons we implement and learn a lot of new things in a very short time.
2. Inquisitive 🤔
You tend to ask questions.That’s neat — how did you do that? Did you have problems with that library? 🤯You are a pack rat for little facts, each of which may affect some decision years from now.
This clearly states that the more curious you are the more you will learn. We all are here to learn so ya just ask more and learn more.
3. Critical thinker 👀
You rarely take things as given without first getting the facts. When colleagues say “because that’s the way it’s done,” or a vendor promises the solution to all your problems, you smell a challenge.🧗♀️
The more we question the existing ways, the more we will explore new ways, and the more we will learn.
4. Realistic 🚲
You try to understand the underlying nature of each problem you face. This realism gives you a good feel for how difficult things are, and how long things will take. Understanding for yourself that a process should be difficult or will take a while to complete gives you the stamina to keep at it.
While working on a project maintain a decent log of tasks that need to be done. Divide them under tags like To-Do, Important, InProgress, No Status, and Completed.📑
After every short interval decide on a realistic short goal. Arrange all tasks ✍🏻 under tags to be consistent with your goal and start completing those tasks one at a time and achieve the bigger goal.
5. Jack of all trades🐿
You try hard to be familiar with a broad range of technologies and environments, and you work to keep abreast of new developments. Although your current job may require you to be a specialist, you will always be able to move on to new areas and new challenges.
I feel that working on side projects helps us try our hands-on🐾 wide range of tasks. We will be deciding why to use or not use a particular framework or a library. One gets to work on all stages of project development be it planning, coding, or marketing.
Some of the other parts from the book I felt interesting:
- ‘The greatest of all weaknesses is the fear of appearing weak’🌒
- One of the cornerstones of the pragmatic philosophy is the idea of taking responsibility for yourself and your actions in terms of your career advancement, your project, and your day-to-day work.🌦
- ‘We can be proud of our abilities, but we must be honest about our shortcomings — our ignorance as well as our mistakes.’🌻
Some of the goals I made for myself to achieve after reading the book:
- “It’s easier to ask forgiveness than it is to get permission.”🦚
I need to start practicing this more often. While working on a project rather than consuming time to convince everyone to try out a particular idea, what I can do is rather just implement it and then ask for feedback.
- Invest Regularly in Your Knowledge Portfolio
- Learn at least one new language every year.👷♀️
- Read a technical book each quarter.📖
- Read nontechnical books, too.🎏
- Participate more, socialize to know what is happening around.💡
- Take classes.🔬
We earn because of our knowledge, so we should invest a part of our earning in our knowledge.
Thank you for reading. If you like the article give it a clap 👏
Do consider Buying me a Coffee https://www.buymeacoffee.com/ananya, If you loved the article.
I am Ananya Agrawal. I am currently working as a software engineer at Gojek. I am working on building Feature Monkey a customer feedback tracker that can be used for feature request tracking, internal feedback, public roadmap, etc.
Reach out to me over https://twitter.com/AgrawalAnanyaa.