09/04/2025
by Marlon Ribunal
Comments Off on How to Avoid Knowledge Stagnation

How to Avoid Knowledge Stagnation

You want the short answer? Well, the only antidote to knowledge stagnation is probably embracing the habit of lifelong learning. For the long-winded answer, read on.

Have you ever had an experience where a colleague approached you and asked about something technical and you do not know the answer? Or have you ever been in the middle of all-hands-on-deck, mission-critical situation and everyone is waiting for you to push the button, but you can’t figure out the right button to push? How about getting caught in a discovery meeting unprepared and you are expected to provide a solution to a baffling issue that everyone expected you to have an answer for?

You probably don’t want to find yourself in those situations. I have, and I lost count of the number of times those happened in the past. Embarrassing as it may, I just have to admit that. And if you are like me, you probably did too. The good thing is we acknowledge these shortcomings, and we are more than willing to fill the gaps. We make up by delivering more of the things that we know and going beyond the extra mile. Then we go back and pick up the things that we don’t know and learn them.

Technical people with years of experience in their field are expected to deliver answers where needed as needed. But we may find ourselves stuck not knowing what we’re supposed to know and even confused when caught off-guard. How do we minimize the occurrence of such lapses?

Identify the Gaps

List the things that you were asked but didn’t have the answer for. Identify all the related concepts and the scenarios those might be applicable to. Ask the experts in your field or consult other resources such as forums, books, podcasts, webcasts, paid training, and many others. ChatGPT will provide you the shortcuts but vet them thoroughly. Live events such as conferences are great venues to find knowledge gaps. Test the concepts and apply when you’re sure they work and that only after determining that they are the appropriate solutions.

Set System Instead of Goals

The biggest hurdle to sustaining any learning habits is consistency, or the lack thereof. It is harder to sustain progress when you are goal oriented. Focus on your processes and establish other habits that complement your learning habits. Cultivate a productive mindset. Create a personal learning system that is anchored on processes established on top of your learning priorities.

Establish a Schedule

Establish a schedule along with setting up your learning habits and systems. If you don’t prioritize it, it won’t happen. Of course, this is easier said than done. If you are like me, you also struggle to stay consistent. This is why it is important to set aside a time for this purpose. Life happens. The chance that things are going to get done is higher when they are scheduled than when they are not.

There are tons of ways to avoid knowledge stagnation. The key is to establish a robust learning system that you can sustain.

12/24/2024
by Marlon Ribunal
Comments Off on Learning Database Design and Power BI Performance

Learning Database Design and Power BI Performance

I spend my days working on and managing SQL Server instances—working days at least, and sometimes even on non-working days. I’ve been working with SQL Server for years now, and one might assume I’ve mastered every nook and cranny, as well as the nuts and bolts of its inner workings. It’s far from the truth.

Managing production servers means encountering something new every day. This constant variety keeps things interesting. I enjoy the challenges and the valuable lessons that come with them. They say managing databases is like a box of chocolates—you never know what you’re going to get.

And this brings me to the point of this blog post: continuous learning is therefore so important. In IT Ops, it’s common to work outside your role and across various technologies. Responsibilities for DBAs include addressing questions beyond the scope of typical database administration tasks.

A large portion of my learning comes from reading books. The two tech books currently on my desk are Microsoft Power BI Performance Best Practices: Learn Practical Techniques for Building High-Speed Power BI Solutions and Database Design and Modeling with PostgreSQL and MySQL: Build Efficient and Scalable Databases for Modern Applications Using Open Source Databases.

These two areas aren’t part of my day-to-day responsibilities at the moment, but I expect that, eventually, I’ll be asked to tackle issues related to them. Hence, learning about them now benefits not only me but also the company.

Disclaimer: Packt Publishing sent me these books in exchange for a review, but my views and opinions are in no way influenced by the company.

Power BI Performance Best Practices

Writing about best practices for any technology can be challenging, particularly when it comes to “performance.” There’s only so much you can cover within a limited number of pages. However, I believe the authors, Thomas LeBlanc and Bhavik Merchant, have successfully achieved the objectives of this book.

They cover all the key aspects of managing Power BI performance—from exploring its architecture and configuration to embedding it in web applications. And if you’re wondering whether it includes anything about Fabric, the answer is yes: there’s a dedicated chapter on OneLake, the data storage solution for Fabric.

I feel that this book provides enough information to help troubleshoot a struggling Power BI. I’m confident it will give me a good starting point if I’m ever at a loss on where to begin when dealing with the unfamiliar aspects of Power BI performance.

For a DBA not familiar with the pressure points of Power BI, like me, this is a helpful reference for navigating the vast areas of this technology. Chapter 3 provides information about the tools for performance tuning. If I’m venturing into uncharted territory, I’d like to know what provisions are available to help me navigate it. A great resource for navigating the unknowns is usage metrics and activity logs. Chapter 4 is dedicated to these topics.

Of course, this book also covers the usual suspects when it comes to Power BI performance issues—Fetching, Transforming, and Visualizing Data, Data Models, Calculations, and Large Semantic Models. These are discussed in Chapters 8 to 12.

My favorite part is Chapter 7, where a Performance Governance Framework is defined. I like that it’s discussed in the middle of the book, bringing everything together. The concepts in this chapter are easily applicable, no matter what technology you’re working with.

There are two distinct phases to consider performance management, this chapter says: one is Monitoring and identifying areas that are slowing you down and, two, Root Cause Analysis (RCA) and remediation. The main goal of this chapter is to establish a repeatable process for improvement. The authors outline how to approach the performance management cycle, set baselines and targets, implement preventative measures, and more. They also emphasize the importance of knowledge sharing and awareness.

Database Design and Modeling with PostgreSQL and MySQL

I’ve been hearing about these two platforms, PostgreSQL and MySQL, for a long time now. And I imagine that having to dabble in these platforms for me is not a matter of if, but when. I am aware of the growing interest in PostgreSQL (Brent O is already offering training in PostgreSQL).

Although my main interest lies in performance tuning, this book is right up my alley. It provides enough information to lay some solid foundation for learning PostgreSQL and MySQL, I think. This can help me build a strong understanding of these platforms.

I’m not really worried if my company suddenly decides to pull the rug out from under SQL Server. A vast majority of the knowledge I’ve gained with SQL Server can easily translate to these platforms (but please, not yet, boss. I’m not ready to give up SQL Server just yet!).

This book provides a jumpstart and helps anyone like me, who hasn’t managed these platforms in real-world, production environments, get up to speed. I feel like I can take everything I’ve learned here and build my PostgreSQL and MySQL instances tomorrow. Well, I could say the same about RTFM, so it’s not really an exaggeration.

If a book with this title were to cover everything about design and modeling, it would easily stretch to 600 pages—or even triple that. This is a 200-page book, which speaks to the limited scope of its coverage on database design and modeling, which is not a lot if you’re looking for in-depth coverage.

But this is a good thing for me. The key terms in these platforms are still the same ones I’ve been dealing with for the longest time—Entity, Attribute, Relationship, Primary Key, Foreign Key, Index, and Normalization. I guess one doesn’t have to make a huge leap when transitioning from one relational database to another.

Overall, this is a good book if you’re looking for a quick reference guide, though in most cases, RTFM might be the better option. Chapter 1 has 18 pages, and most of it is spent comparing Relational Databases with NoSQL Databases. I’m not sure that’s the best use of the introductory pages. But then again, Itzik Ben-Gan sets the standard when it comes to introducing database concepts to the masses. A great example of his work is T-SQL Fundamentals (Developer Reference), beloved by both beginners and experts alike. I’m not complaining here.

11/17/2023
by Marlon Ribunal
Comments Off on Building Upon Your Productivity Momentum: Staying Productive For Life

Building Upon Your Productivity Momentum: Staying Productive For Life

Note: I found this sitting in my Medium draft. This was a cross-post from my old productivity blog that got lost in oblivion.

Productivity is never an accident. It is always the result of a commitment to excellence, intelligent planning, and focused effort.

Paul J. Meyer

The state of being productive doesn’t just happen overnight. It is brought about by full dedication and constant diligence. It is not a quality or quantity subject to measurement or metrics on a dashboard or performance sheet.

Productivity is an attitude toward work — a way of life. It is by itself a state of being. It is not a condition of having done something but of doing.

Productivity is an attitude toward work — a way of life.

Once you are already in the state of being productive, you have to grasp that moment with both of your hands because it is easy to let it loose; and getting yourself out of the productivity pit — the unproductive state — can be a daunting task.

There are pitfalls out there that you can easily fall into when complacency overtakes your momentum. Drawbacks can get in your way and swallow you up into the abyss.

Here are some of the things that you can do to successfully maintain your state of being productive:

Reinforce What’s Working

If you think you already have the perfect formula for productivity, there is no reason to reinvent the whole thing. You may try variations of the formula but it is not a good idea to dismantle its core and rebuild one after another.

Although you must also assert some flexibility into the system, this does not mean you have to abandon its constant reinforcement. Find your winning formula and stick to it.

Eliminate The Non-Essential

Any productivity system, no matter how effective it is, needs some pruning. As your way of working evolves, you will find things that might have become superfluous as you make your adjustments or adaptation.

Your work might remain constant but the ways of doing it will not. We always find new ways of doing things so it is important to make room for changes by discarding the things that no longer fit in our system.

Separate Concerns

New responsibilities and the daily load of work can overwhelm us if we are not ready to tackle them. If you’ve been reading the GTD book by David Allen, you are probably convinced now that a stress-free productivity is not a matter of managing your time. It’s about getting your stuff out of your head.

If you think you are swamped by responsibilities and you feel like you’re in trouble, think about what Henry Ford might have to say, “There are no big problems; there are just a lot of little problems.” And, I am sure you will agree if I say that little problems are easier to deal with than the big ones.

Set New Goals

The end itself is a new beginning. Once you reached your goals, you have to set new and better ones. 

Your system becomes rigid, and thereby your job suffers boredom, if you let mediocrity thrives in your system. Set higher and better goals to achieve.

Improve Your System

There is always room for improvement. Continuous improvement on the way you do your job can reap more productivity and great successes. Your system becomes more and more efficient if you are committed to its improvement.

Set your eyes on innovation. As you do this, don’t forget Steve Job’s piece of advice, “Sometimes when you innovate, you make mistakes. It is best to admit them quickly, and get on with improving your other innovations.” And you can apply that advice to how you handle your daily work.

Learn To Automate

In order for you to guarantee efficiency and productivity, you have to go for automation. Don’t waste your time and effort on things that you can automate. Automation is your ally. Look for technologies that can truly help you get things done.

But remember that on top of any automation or technology must be your proven and solid system. To quote Bill Gates, “The first rule of any technology used in a business is that automation applied to an efficient operation will magnify the efficiency. The second is that automation applied to an inefficient operation will magnify the inefficiency.”

Be A Student

Never stop learning. Pursuit of knowledge and innovation is the strong key to ultimate productivity and efficiency. Learn new technologies and never stop looking for systems that you can adapt to your own.

Efficiency and Productivity demand incessant learning.

Be A Mentor

Bring out the best in others and they will happily return the favor. Helping other people reach their goals should be part of your goals. You need other people. You don’t need to monopolize all the good stuff. Share your knowledge to others and you will never run out of great resources when you most need them.

Celebrate The Milestones

There must be a reason to all your efforts. Celebrate every success that you achieve. Celebrate to remind yourself that much has been done to bring all your tasks or projects into accomplishment.

Take also this moment to look forward to your next projects and remember those marks that brought you successes.

Learn From Mistakes

W. Clement Stone has a great outlook on learning from our own mistakes. He said, “Like success, failure is many things to many people. With Positive Mental Attitude, failure is a learning experience, a rung on the ladder, a plateau at which to get your thoughts in order and prepare to try again.”

Mistakes are not failure; they only mean we did not succeed the first time we try.

Continue On Building Plans

Jim Rohn reminds us to not stop looking forward and never to stop building our goals and plans: “If you go to work on your goals, your goals will go to work on you. If you go to work on your plan, your plan will go to work on you. Whatever good things we build end up building us.” Continue to look forward to the next day.

Productivity and efficiency may be hard to achieve if you are building them from the ground up. But as you start picking up the pace, you find that they become easier to attain. They become part of your life. They become you.