A Drop of The Deep Water
"Someone is looking for Drupal developers. Are you interested?", I asked one of my friends. "I will never touch Drupal again.", That is the most negative statement I have heard so far. Yes, Drupal has an interesting learning curve. It is not easy to master quickly. When we talk about learning Drupal, There are some of us left Drupal after many years as a Drupal developer, disappointed, frustrated. It is a sad truth some of us have worked with Drupal for many years, and still not find the beauty of her. I want to discuss how we can avoid it and how to obtain the power of Drupal quickly in an exciting way.
Here is something interesting about Drupal. After seven years into it, I found myself is still learning new thing and gain a little bit deeper understanding of it. When looking into the code of the core and contributed modules, I can see what the other developers were thinking; I saw how they tackled the problem. I have a great sense of connection with them. It is not just merely the code itself. It is a collaborated among many developers in the past, present and future. So, keep learning is the key to getting deeper inside of it.
Drupal is a tool. We are learning the skill to use this tool. It can be boring if the purpose is just to learn and understand it. It is a tool. So, the best way is to use it. Use it in the best possible way we can find. Always, find multiple solutions and choose one of the best to implement it.
Most of the requests from our customers, managers are reasonable. A lot of time, they are looking for a better user experience. It is the critical element leading to the success of a product. Enhancement of user experiences is a big thing. Never push it back off quickly. There is nothing like Drupal can't do it. Yes, we can do it. We have a lot of contributed modules to do it. If we can not find one, we build one and contribute it back to the community. So, others do not need to invent the wheel again. We take on all kinds of the challenge and find the best possible way to face it. By doing that, we dive deep inside of the water.
When it comes to working on a ticket and solving a problem, we create a patch, and there is no error. That is not sufficient. We can ask ourselves couple more questions. Are there other ways to do it? Is the way what I just did will affect other functions and will this limit the future expansion? Are there any bad things introduced down the road? Is there anything that might sabotage the whole system because of this change? We are going to find the best possible way, a native way. Always looking for the best and willing to take on challenges. It helps us learn it and getting deeper. It is how we can learn stuff that others will not get it from tutorial videos.
If your manager is not a taker and wants to burn you out, always take the challenge. When facing a problem, do not find a way to avoid it. Find as many as possible ways to address the problem. Pick one of the best one; Find a natural way that might have come with the original system design.
Solving a problem, fix a bug is not a big deal. Solve it in a right way is a deal. There are always many methods to solve a single problem, choose the right one. Do not get satisfied by fixing something with a single shot. Ask ourselves to look for more ways to it, use the best one. It is like giving away your talent to solve the problem. It leads me to a commercial ad on a Canadian TV channel. "Greatness is not what you have; it is what you give." Give your greatness to Drupal. The more you give, at the same time, the more skill you get.