Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "smart life decisions"
If you need to learn/teach object orientation, these are my approaches (I hate that classic "car" example):
1) Keep in mind games like Warcraft, Starcraft, Civilization, Age of Empires (yes, I am old school). They are a good example of having classes to use, instantiating objects (creatures) and putting them to work together. As in a real system.
2) Think of your program as an office that has a job to do, or a factory that has something to deliver. Classes are the roles/jobs and objects are the workers/employees. They don't need to be complex, but their purpose must be really (really, really) well defined. Just like in a real office / factory.
3) Even better (or crazier), see your classes and objects as real beings, digital creatures in a abstract world, and yourself as a kind of god, who creates species (define classes) with wisdom. Give life when it is the time for them to come into the world (instantiate object) and kill them when they are done with their mission (dispose an object). Give them behavior, logic, conditions to work with, situations where they take action, and when they don't. Make them kinda "smart". Build them able to make decisions and take actions based on conditions. Give them life. Think on your program as an ecossystem. There must be balance, connection, species must be well defined and creatures must work together to achieve a common objective. Don't just throw code and pray for it to run. Plan it.
When I talk about my classes like they are real beings, and programs as mini-worlds, some people say I am crazy, some others say that's passion.
It is both! @__@3
Dunning-Kruger effect is strong with me.
Thankfully, one of the most important skills that I learned is active listening. I am less vocal about my silly thoughts and shitty opinions these days.
I don't feel dumb. Instead, I realise that I AM dumb.
The people in my new org are exceptionally smart and talented. Each everyone is a hand picked gem. This isn't a coincidence. Rather it's evident that they hire folks very carefully.
In my previous org, I used to be the one driving everything. Like the smartest guy in the room.
But here, I am just quiet in every meeting and I enjoy working 12 hours a day. I am the dumbest guy in the room surrounded by people who are brilliant and humble.
I truly feel fortunate and grateful to be part of such an amazing org and wonderful team. One of the best decisions I made in my career and life.8