<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Hope Oluwalolope - Blog]]></title><description><![CDATA[Welcome to my writing corner. I share my thoughts and learnings around technology, career and life.]]></description><link>https://blog.hopeoluwalolope.com</link><generator>RSS for Node</generator><lastBuildDate>Tue, 07 Apr 2026 20:27:40 GMT</lastBuildDate><atom:link href="https://blog.hopeoluwalolope.com/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Azure AI-900: My Exam Prep Journey and Essential Tips]]></title><description><![CDATA[As I embarked on preparing for the Azure AI-900 exam, I made several observations and took notes that helped me navigate the process more effectively. Below are some tips I wish I had known before starting the exam preparation, along with my summariz...]]></description><link>https://blog.hopeoluwalolope.com/azure-ai-900-my-exam-prep-journey-and-essential-tips</link><guid isPermaLink="true">https://blog.hopeoluwalolope.com/azure-ai-900-my-exam-prep-journey-and-essential-tips</guid><category><![CDATA[study Tips]]></category><category><![CDATA[azure ai services]]></category><category><![CDATA[Certification]]></category><category><![CDATA[AI-900]]></category><category><![CDATA[AI certification]]></category><dc:creator><![CDATA[Hope Oluwalolope]]></dc:creator><pubDate>Mon, 24 Mar 2025 07:49:41 GMT</pubDate><content:encoded><![CDATA[<p>As I embarked on preparing for the <a target="_blank" href="https://learn.microsoft.com/en-us/credentials/certifications/azure-ai-fundamentals/?wt.mc_id=fsi_aibmslepage_aibootcamp_wwl&amp;practice-assessment-type=certification">Azure AI-900 exam</a>, I made several observations and took notes that helped me navigate the process more effectively. Below are some tips I wish I had known before starting the exam preparation, along with my summarized insights (a crash course 🙂) from the Microsoft AI Fundamentals course.</p>
<h2 id="heading-tips-for-exam-preparation">Tips for Exam Preparation</h2>
<ol>
<li><p><strong>Use Your Personal Computer</strong><br /> Avoid using a restricted laptop, whether it's for work, school, or any other purpose. I learned this lesson the hard way. If you don’t have a personal computer available, consider borrowing one from a friend. I attempted to use my work laptop and ran into network restrictions that caused me to miss my exam—don't make the same mistake!</p>
</li>
<li><p><strong>Commit to the Training Modules</strong><br /> The official training module is an excellent starting point. With consistent effort, you can complete it in about a week by dedicating 2-3 hours each day. I found that sticking to this schedule helped me stay on track and retain key concepts.</p>
</li>
<li><p><strong>Take the Free Practice Tests</strong><br /> Don't underestimate the value of practice tests. They’re free and can be taken multiple times, allowing you to track your progress. Start taking them as soon as you begin studying. Aim for at least a 90% score on the practice tests before attempting the actual exam.</p>
</li>
<li><p><strong>Expect Different Questions on the Exam</strong><br /> While practice tests are useful for understanding the fundamentals, don’t expect the exact same questions on the actual exam. Practice tests are there to help you master the material, not to memorize specific answers 😊.</p>
</li>
<li><p><strong>Select the Right Proficiency Level</strong><br /> When taking the exam, you'll have the option to choose your proficiency level for each section. If you have some experience with AI, starting at a medium proficiency level can be helpful. If needed, you can retake the exam at a lower proficiency level, so don’t stress about choosing the highest level initially.</p>
</li>
<li><p><strong>Take Advantage of Discounts</strong><br /> You can receive up to 50% discount on the exam if you attend one of <a target="_blank" href="https://events.microsoft.com/en-us/mvtd?ocid=cmm7at228ol&amp;language=English&amp;startTime=08:00&amp;endTime=17:00?ocid=cmm7at228ol">Microsoft's virtual training days</a>. This is a great opportunity to gain additional insights and save on the exam cost.</p>
</li>
</ol>
<hr />
<p><strong>Now, shifting gears to my summarized insights from the prep course,</strong> I’d like to share some key takeaways that helped me better understand the concepts and solidify my preparation for the exam.</p>
<p><strong>Disclaimer</strong>:<br />These notes serve as a <strong>summarized guide</strong> based on my personal understanding of the course materials. They are not a comprehensive or official resource for exam preparation. While I’ve made every effort to ensure their accuracy, I highly recommend reviewing the <strong>authorized course materials</strong> and <strong>official resources</strong> provided by the course for the most complete and accurate preparation. I cannot be held responsible for any outcomes based solely on the use of these notes.</p>
<h2 id="heading-machine-learning-overview"><strong>Machine Learning Overview</strong></h2>
<p>Machine learning involves using <strong>features</strong> (input data) and <strong>labels</strong> (predicted outcomes) to build models. The process of defining the relationship between features and labels is known as <strong>training</strong>. Once trained, the model can be used to predict new values in a process called <strong>inferencing</strong>.</p>
<ul>
<li><p><strong>Supervised Learning</strong>: The model is trained using labeled data.</p>
<ul>
<li><p><strong>Regression</strong>: Predicts numeric values (e.g., predicting house prices).</p>
</li>
<li><p><strong>Classification</strong>: Predicts categories (e.g., spam or not spam).</p>
<ul>
<li><p><strong>Binary Classification</strong>: Two possible categories.</p>
</li>
<li><p><strong>Multiclass Classification</strong>: More than two categories.</p>
</li>
</ul>
</li>
</ul>
</li>
<li><p><strong>Unsupervised Learning</strong>: The model is trained using only features, with no labels.</p>
<ul>
<li><strong>Clustering</strong>: Groups similar data points together, useful for exploratory analysis and as a foundation for classification models.</li>
</ul>
</li>
<li><p><strong>Common ML Algorithms</strong>:</p>
<ul>
<li><p><strong>Linear Regression</strong>: Used for regression tasks; evaluates model fit with metrics like <strong>R-squared (R²)</strong> and <strong>Root Mean Squared Error (RMSE)</strong>.</p>
</li>
<li><p><strong>Logistic Regression</strong>: Used for binary classification; evaluated using a <strong>confusion matrix</strong> (True Positives, False Positives, False Negatives, True Negatives).</p>
</li>
<li><p><strong>Multiclass Classification</strong>: Uses strategies like <strong>One-vs-Rest</strong> or <strong>Multinomial algorithms</strong>.</p>
</li>
<li><p><strong>K-means Clustering</strong>: A common algorithm for unsupervised learning tasks, grouping data points based on similarity.</p>
</li>
</ul>
</li>
<li><p><strong>Other Key Concepts</strong>:</p>
<ul>
<li><p><strong>Multiple Linear Regression</strong>: Assumes that the features are independent of each other.</p>
</li>
<li><p><strong>Deep Learning</strong>: Uses artificial neural networks (ANNs) to model complex relationships, inspired by how the human brain learns. The <strong>loss function</strong> in deep learning evaluates the difference between predicted and actual values.</p>
</li>
</ul>
</li>
<li><p><strong>Azure Services for developing and deploying machine learning models:</strong> Azure Machine Learning Studio (Automated ML), Azure ML Designer</p>
</li>
</ul>
<hr />
<h2 id="heading-computer-vision"><strong>Computer Vision</strong></h2>
<p>Computer vision involves analyzing and interpreting images and videos to detect objects, faces, and text. It’s a field of AI that relies on deep learning techniques and pixel manipulation to extract meaningful insights from visual data.</p>
<ul>
<li><p><strong>Deep Learning</strong> forms the foundation for modern image classification solutions, enabling powerful image recognition capabilities.</p>
</li>
<li><p><strong>Computer Vision Techniques</strong>:</p>
<ul>
<li><p><strong>Convolutional Filtering</strong>: A technique used to process and analyze image pixels, enabling the identification of important features within images.</p>
</li>
<li><p><strong>Convolutional Neural Networks (CNNs)</strong>: A type of deep learning model designed specifically for image classification and recognition tasks. CNNs are highly effective at identifying spatial hierarchies in image data.</p>
</li>
</ul>
</li>
<li><p><strong>Key Computer Vision Taks:</strong></p>
<ul>
<li><p><strong>Facial Detection</strong>: Identifies and analyzes human faces in images.</p>
</li>
<li><p><strong>Image Classification</strong>: Categorizes the entire image into specific classes based on its contents.</p>
</li>
<li><p><strong>Object Detection</strong>: Identifies the location of objects in an image using bounding boxes, which highlight areas containing specific objects.</p>
</li>
<li><p><strong>Semantic Segmentation</strong>: Classifies individual pixels in an image to recognize the objects they represent, enabling fine-grained analysis.</p>
</li>
<li><p><strong>Multi-modal Models</strong>: Combines computer vision with generative AI to improve the understanding of images and text.</p>
</li>
<li><p><strong>Optical Character Recognition (OCR)</strong>: Extracts text from images, such as handwriting, signs, or printed text.</p>
</li>
</ul>
</li>
<li><p><strong>Face Detection</strong>: Involves identifying areas in an image that contain human faces. Azure AI Face offers robust facial analysis capabilities, including:</p>
<ul>
<li><p>Detecting attributes such as glasses or headwear.</p>
</li>
<li><p>Face identification (1-to-many matching) and face verification (1-to-1 matching) for identifying if two faces are the same person.</p>
</li>
</ul>
</li>
<li><p><strong>Specialized Domain Support</strong>: Azure AI Vision offers specialized recognition for domains like:</p>
<ul>
<li><p><strong>Celebrities</strong>: Recognizing and identifying famous individuals.</p>
</li>
<li><p><strong>Landmarks</strong>: Detecting and identifying landmarks in images.</p>
</li>
</ul>
</li>
<li><p><strong>Tagging</strong>: Associates metadata with images to describe their attributes, making it easier to organize and search for images based on their content.</p>
</li>
<li><p><strong>Azure Services for Computer Vision:</strong> Azure AI Face, Azure AI Vision, Azure AI Custom Vision</p>
</li>
</ul>
<hr />
<h2 id="heading-natural-language-processing-nlp"><strong>Natural Language Processing (NLP)</strong></h2>
<p>NLP is the technology that enables machines to understand, interpret, and generate human language. It encompasses various tasks such as speech recognition, text analytics, translation, and conversational AI.</p>
<ul>
<li><p><strong>Steps in Analyzing Text:</strong></p>
<ul>
<li><p><strong>Preprocessing</strong>:</p>
<ul>
<li><p><strong>Text Normalization</strong>: Standardizing text to a consistent format.</p>
</li>
<li><p><strong>Stop Word Removal</strong>: Eliminating common words (e.g., "the", "and") that don't add significant meaning.</p>
</li>
<li><p><strong>N-grams</strong>: Breaking text into sequences of words to capture context.</p>
</li>
<li><p><strong>Stemming</strong>: Reducing words to their base form (e.g., "running" → "run").</p>
</li>
</ul>
</li>
<li><p><strong>Tokenization</strong>: Splitting text into smaller units like words or sentences.</p>
</li>
<li><p><strong>Frequency Analysis</strong>:</p>
<ul>
<li><strong>TF-IDF (Term Frequency-Inverse Document Frequency)</strong>: A statistical measure used to evaluate the importance of a word within a document relative to its frequency in other documents.</li>
</ul>
</li>
</ul>
</li>
<li><p><strong>Common NLP Tasks:</strong></p>
<ul>
<li><p><strong>Text Analysis</strong>: Extracting insights from raw text data.</p>
</li>
<li><p><strong>Sentiment Analysis</strong>: Determining the emotional tone behind text.</p>
</li>
<li><p><strong>Machine Translation</strong>: Automatically translating text between languages.</p>
</li>
<li><p><strong>Summarization</strong>: Condensing large amounts of text into a shorter form while preserving key information.</p>
</li>
<li><p><strong>Conversational AI</strong>: Building bots that can understand and respond to natural language.</p>
</li>
</ul>
</li>
<li><p><strong>Conversational Language Understanding (CLU):</strong></p>
<ul>
<li><p>CLU focuses on predicting the overall <strong>intention</strong> of an incoming <strong>utterance</strong> and extracting key <strong>entities</strong> from it.</p>
</li>
<li><p>It enables machines to understand and respond effectively to conversational inputs, such as those in chatbots or virtual assistants.</p>
</li>
</ul>
</li>
<li><p><strong>Azure Bot Service:</strong></p>
<ul>
<li><p>Provides the platform for creating and managing conversational bots.</p>
</li>
<li><p>Integrates with CLU or <strong>LUIS (Language Understanding Intelligent Service)</strong> to interpret and respond to user inputs in a conversational manner.</p>
</li>
</ul>
</li>
<li><p><strong>Speech Recognition:</strong> Converts spoken language (in real-time or batch) into processable text.</p>
</li>
<li><p><strong>Speech Synthesis:</strong> Converts written text into spoken language.</p>
</li>
<li><p><strong>Translation in Azure:</strong></p>
<ul>
<li><p><strong>Azure AI Translator</strong>: Provides text-to-text translation between different languages.</p>
</li>
<li><p><strong>Azure AI Speech</strong>: Enables both speech-to-text and speech-to-speech translation, utilizing the Neural Machine Translation (NMT) model for accurate, context-aware translation.</p>
</li>
</ul>
</li>
<li><p>The <strong>Language Detection</strong> feature in Azure AI Language Service identifies the language of a given text and provides:</p>
<ul>
<li><p>ISO 6391 code.</p>
</li>
<li><p>Language name.</p>
</li>
<li><p>Confidence score.</p>
</li>
</ul>
</li>
<li><p>NLP tasks in Azure return a <strong>confidence score</strong> of <strong>NaN</strong> (Not a Number) for unknown languages.</p>
</li>
<li><p><strong>Azure Services for NLP:</strong> Azure AI Language Service, Azure AI Bot Service, Azure AI Speech Service, Azure AI Translator</p>
</li>
</ul>
<hr />
<h2 id="heading-document-intelligence-amp-knowledge-mining"><strong>Document Intelligence &amp; Knowledge Mining</strong></h2>
<p><strong>Data Mining</strong> involves searching and indexing vast amounts of data to uncover patterns and insights. <strong>Knowledge Mining</strong>, on the other hand, focuses on making large datasets easily searchable and accessible, transforming raw data into valuable, actionable information.</p>
<p><strong>Azure AI Document Intelligence</strong></p>
<ul>
<li><p><strong>Azure AI Document Intelligence</strong> leverages both prebuilt and custom models to analyze documents and forms, extracting relevant content such as text, layout, and key-value pairs.</p>
</li>
<li><p><strong>Key Features</strong>:</p>
<ul>
<li><p><strong>Document Analysis</strong>: Enables detailed extraction from documents.</p>
</li>
<li><p><strong>Prebuilt Models</strong>: Tailored for common document types like invoices, ID documents, receipts, and business cards.</p>
</li>
<li><p><strong>Custom Models</strong>: Allows the creation of models designed to recognize and extract data from specialized or unique document formats.</p>
</li>
<li><p><strong>Built on OCR</strong>: Utilizes Optical Character Recognition (OCR) to recognize text in scanned or image-based documents.</p>
</li>
</ul>
</li>
</ul>
<p><strong>Indexing and Knowledge Base Creation</strong></p>
<ul>
<li><p>An <strong>Indexer</strong> converts source documents into <strong>JSON</strong> format, which is then processed by a search engine for efficient indexing and retrieval.</p>
</li>
<li><p>To generate <strong>Q&amp;A for a knowledge base</strong>, sources can include:</p>
<ul>
<li><p>An existing FAQ document.</p>
</li>
<li><p>A webpage containing structured information.</p>
</li>
<li><p>Manually entered data (e.g., product details, policies).</p>
</li>
</ul>
</li>
</ul>
<p><strong>Azure AI Search:</strong></p>
<ul>
<li><p><strong>Azure AI Search</strong> provides a powerful, private enterprise search solution for organizations. It helps build indexes that allow both internal and public-facing content to be searched efficiently.</p>
</li>
<li><p>The tool can be used to build custom indexes for internal knowledge bases or for exposing searchable content on public websites.</p>
</li>
</ul>
<hr />
<h2 id="heading-generative-ai">Generative AI</h2>
<p>Generative AI refers to models that understand and generate natural language, creating content based on the patterns and structures they've learned from large datasets.</p>
<p><strong>GPT Model</strong>:</p>
<ul>
<li><strong>GPT</strong> (Generative Pretrained Transformer) is designed to understand and generate natural language, allowing for tasks such as text generation, translation, and summarization.</li>
</ul>
<p><strong>Transformer Models</strong>:</p>
<ul>
<li><p><strong>Encoder</strong>: Creates a semantic representation of the input vocabulary.</p>
</li>
<li><p><strong>Decoder</strong>: Generates new language sequences based on the encoded information.</p>
<ul>
<li><strong>GPT</strong> models use the <strong>decoder</strong> part of the transformer architecture to generate text.</li>
</ul>
</li>
</ul>
<p><strong>Transformers and GPT</strong>:</p>
<ul>
<li>A <strong>transformer model</strong> like <strong>GPT-4</strong> (the model behind ChatGPT and Bing) processes text input (called a <strong>prompt</strong>) and generates syntactically correct and contextually relevant output (called a <strong>completion</strong>). The model’s power lies in its ability to produce coherent and meaningful text based on the given input.</li>
</ul>
<p><strong>Some Key Elements in Generative AI</strong>:</p>
<ul>
<li><p><strong>Tokenization</strong>: This process breaks text into smaller units (tokens), such as words or subwords, to process input data.</p>
</li>
<li><p><strong>Embeddings</strong>: These are vector representations of tokens that capture their semantic meaning, enabling the model to understand relationships between words.</p>
</li>
<li><p><strong>Attention</strong>: The model places emphasis on important tokens during text generation, allowing it to focus on contextually significant parts of the input.</p>
</li>
<li><p><strong>System messages:</strong> help set the context for the model by outlining expectations, constraints, and response styles. These messages guide the AI’s behavior during interactions.</p>
</li>
<li><p><strong>Grounding:</strong> refers to the process of linking AI-generated outputs to reliable and verifiable data sources. This ensures <strong>factual accuracy</strong>, <strong>contextual relevance</strong>, and <strong>real-world applicability</strong>, reducing the risk of <strong>hallucinations</strong> (false or misleading information).</p>
</li>
</ul>
<p><strong>Embeddings in Azure OpenAI</strong>:</p>
<ul>
<li>Azure OpenAI utilizes embeddings to perform tasks like <strong>search</strong>, <strong>classification</strong>, and <strong>text comparison</strong>, helping to identify similarities across text sources.</li>
</ul>
<p><strong>Language Models</strong>:</p>
<ul>
<li><p><strong>Large Language Models (LLMs)</strong>: These models are trained on massive datasets and can generate complex, coherent responses.</p>
</li>
<li><p><strong>Small Language Models (SLMs)</strong>: These models are more compact but still capable of performing language generation tasks with limited scope.</p>
</li>
</ul>
<p><strong>Azure AI Foundry</strong>:</p>
<ul>
<li><strong>Azure AI Foundry</strong> is a comprehensive platform for AI development, providing various tools and studios for building AI solutions.</li>
</ul>
<p><strong>Azure AI Agent Service</strong>:</p>
<ul>
<li>This service helps create, test, and manage AI agents within the <strong>Azure AI Foundry</strong>.</li>
</ul>
<p><strong>Responsible AI Stages</strong>:</p>
<ul>
<li><p><strong>Identify potential harm</strong>: Recognize areas where the AI model might cause harm.</p>
</li>
<li><p><strong>Measure the presence of harm</strong>: Evaluate the impact or likelihood of harm.</p>
</li>
<li><p><strong>Mitigate the harm</strong>: Take steps to reduce or eliminate the risk.</p>
</li>
<li><p><strong>Operate the model</strong>: Ensure the model is running with proper safeguards in place.</p>
</li>
<li><p><strong>Mitigation Layers</strong>:</p>
<ul>
<li><p><strong>Model</strong>: Addressing issues at the model level, such as biases.</p>
</li>
<li><p><strong>Safety Systems</strong>: Implementing content filters or moderation tools.</p>
</li>
<li><p><strong>Metaprompt/System Messages &amp; Grounding</strong>: Setting up context and relying on verifiable data sources.</p>
</li>
<li><p><strong>User Experience</strong>: Designing the AI interaction to ensure transparency and clarity.</p>
</li>
</ul>
</li>
</ul>
<p><strong>Generative AI Image Features</strong>:</p>
<ul>
<li><p><strong>Create a New Image</strong>: Generate entirely new images from text descriptions.</p>
</li>
<li><p><strong>Create Variations of an Image</strong>: Modify or generate different versions of an existing image.</p>
</li>
<li><p><strong>Edit an Image</strong>: Make adjustments to an image while retaining its original features.</p>
<ul>
<li>Example: <strong>DALL-E</strong>, a model that can generate and manipulate images from text.</li>
</ul>
</li>
</ul>
<p><strong>Azure OpenAI Service</strong>:</p>
<ul>
<li>The <strong>Azure OpenAI Service</strong> provides a cloud platform for deploying, customizing, and hosting large language models, such as GPT, enabling the development of generative AI solutions.</li>
</ul>
<hr />
]]></content:encoded></item><item><title><![CDATA[Visiting Nigeria After Four Years: A Journey Back Home]]></title><description><![CDATA[Earlier in 2024, I was going through a rough patch. In a heartfelt conversation with my friend Adeola, she said, "Hope, visit Nigeria, and you'll come back feeling so much better." At the time, I wasn’t entirely convinced. But now, I can confidently ...]]></description><link>https://blog.hopeoluwalolope.com/visiting-nigeria-after-four-years-a-journey-back-home</link><guid isPermaLink="true">https://blog.hopeoluwalolope.com/visiting-nigeria-after-four-years-a-journey-back-home</guid><dc:creator><![CDATA[Hope Oluwalolope]]></dc:creator><pubDate>Mon, 13 Jan 2025 13:56:40 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1736776078538/0c279cb8-d3c2-4cb0-a8a8-2de8fc50e29a.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Earlier in 2024, I was going through a rough patch. In a heartfelt conversation with my friend Adeola, she said, <em>"Hope, visit Nigeria, and you'll come back feeling so much better."</em> At the time, I wasn’t entirely convinced. But now, I can confidently say she was absolutely right. Visiting Nigeria, even for a short time, turned out to be one of the best decisions I made in 2024. I'm incredibly grateful to God for making it happen.</p>
<p>Nigeria is just different. The vibe, the energy—it's incomparable to anywhere else. No matter where life takes me, I’ll always be proud to be Nigerian. We’re a nation that is undeniably helped by God. No matter how many challenges come our way, He always makes a way for us to survive, to thrive, and to keep moving forward.</p>
<p>This trip was a timely reminder of what it means to be Nigerian. It reminded me of the unique grit we possess, our resilience, and our deep-rooted ability to find joy even in the face of adversity. It was a reminder of where I come from, of <em>home</em>.</p>
<p><strong>Home.</strong> A place where, despite the obstacles and hardships, happiness finds a way. Love finds a way. Though my visit was brief, it was deeply meaningful. I’ll never forget the love I felt, the joy of traveling several kilometers just to spend an hour with someone, and the thrill of simply being present.</p>
<p>Of course, I won’t forget the <em>owambes</em>—the Nigerian weddings that were the very motivation for me to consider visiting in the first place. If you haven’t been to a proper Nigerian wedding, do yourself a favor and attend one! Honestly, it’s just different—it makes you want to get married the next day 😁. Huge thanks to my friends Joda and Ayomikun for giving us the gift of celebrating their love and taking us back to Nigeria for their weddings.</p>
<p>I definitely complained—a lot! The rising cost of living left me both shocked and deeply concerned. I couldn’t help but wonder how people were surviving. Yet, as I walked the streets and roads of Lagos, I couldn’t help but feel a surge of hope. Hope that one day, Nigerians will fully experience the joy, comfort, and prosperity we deserve. Hope that the toil and labor of so many hardworking people will not be in vain.</p>
<p>I grumbled about the heat (it was intense!) and the stress of dealing with banks, but I know I’ll start missing even those little frustrations soon enough. You know you’ve truly enjoyed a place when, while you're there, nothing else seems to matter.</p>
<p>Honestly, I cherished every single moment in Nigeria. From the quality time spent with my family to random conversations with strangers on the road, every experience was filled with life and meaning. My heart was full, and my mind was completely immersed in the beauty of being home.</p>
<p>I am deeply grateful to the incredible people who made my trip special. To those who traveled long distances just to see me, to those who opened their homes at the last minute, to those who took time out of their busy schedules to spend time with me—and even to those I wasn’t able to see but made an effort—I appreciate you all more than words can express. Thank you for making me feel so loved and welcome.</p>
<p>Until we meet again, Nigeria. Hopefully, it won’t be too long.</p>
]]></content:encoded></item><item><title><![CDATA[Diary of my Solo Journey Through Paris]]></title><description><![CDATA[Ever wondered if there's a right, wrong or perfect way to explore Paris? Well, let me tell you, there isn't. The most important part? Just enjoy it. Whether you're walking around, biking through the streets, cruising on the river, hitting all the maj...]]></description><link>https://blog.hopeoluwalolope.com/diary-of-my-solo-journey-through-paris</link><guid isPermaLink="true">https://blog.hopeoluwalolope.com/diary-of-my-solo-journey-through-paris</guid><category><![CDATA[Travel]]></category><category><![CDATA[Solo Travel]]></category><dc:creator><![CDATA[Hope Oluwalolope]]></dc:creator><pubDate>Fri, 29 Mar 2024 09:30:59 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1711641876664/6449ddc0-92aa-4846-8a87-708f38b5d5f5.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Ever wondered if there's a right, wrong or perfect way to explore Paris? Well, let me tell you, there isn't. The most important part? Just enjoy it. Whether you're walking around, biking through the streets, cruising on the river, hitting all the major sights—or trying a little bit of everything—it's all about soaking in the experience.</p>
<p><em>And here's a piece of advice: don't get hung up trying to check every box in your itinerary. There's no rule saying you have only one opportunity to be in Paris. you can always come back again.</em></p>
<p>So, with that mindset, I'm sharing my solo travel in Paris experience.</p>
<p>I was in the city for 11 days, but I had 5 days to explore as I was attending a conference for the first half of my stay.</p>
<h2 id="heading-day-1-eiffel-tower-and-seine-river-cruise"><strong>Day 1: Eiffel Tower and Seine River Cruise</strong></h2>
<p>Starting with the iconic Eiffel Tower on a cold, rainy day wasn't exactly the best experience. My recommendation? Skip the group tour. Grab a "skip the line" ticket, climb at your own pace, and maybe get an audio guide which is cheaper.</p>
<p>The Rue Cler market was on my list, but the weather had other plans.</p>
<p>But the Seine River Cruise at sunset? Absolute magic. Paris at night, with its lights, is something you've got to see.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1711704442571/c9454ab6-f3a9-4d2f-bae8-1e1e5a1ea91b.jpeg" alt class="image--center mx-auto" /></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1711704481873/73e04ccd-9fbc-43fb-b014-7566ee7d4bca.jpeg" alt class="image--center mx-auto" /></p>
<h2 id="heading-day-2-walking-through-history"><strong>Day 2: Walking Through History</strong></h2>
<p>Had a late start, recovering from my conference hustle, I joined a free walking tour I found on Guruwalk. Having a history of Paris while walking through the Latin Quarter, Notre Dame, Sainte Chapelle—was an amazing experience. It gave we so much background knowledge I needed to enjoy the rest of my time in Paris.</p>
<p>Sharing dinner with new friends from the tour was the perfect wrap-up.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1711704513635/4e66bcce-703d-4b83-b1ea-b099baaa0878.jpeg" alt class="image--center mx-auto" /></p>
<h2 id="heading-day-3-biking-tour-of-paris"><strong>Day 3: Biking Tour of Paris</strong></h2>
<p>Booked a guided tour of the Louvre but unfortunately I missed it. This almost ruined my day, but thankfully I got over it after talking to a friend and I jumped on a biking tour instead, covering more parts of the city and meeting some more fantastic folks along the way.</p>
<p>Finished up the evening walking through the streets of Champs Élysées and climbing the Arc de Triomphe to see the beautiful city of Paris from the top at night.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1711704392259/497bba69-3690-4ff7-b024-392324aaf2ce.jpeg" alt class="image--center mx-auto" /></p>
<h2 id="heading-day-4-montmartre-and-sacre-coeur"><strong>Day 4: Montmartre and</strong> Sacré-Cœur</h2>
<p>Started with a souvenir shopping before heading to Montmartre for a walking tour. Discovering the rich history and distinct vibe of this artistic part of the city was a great experience. Finished up the tour with a visit to the Sacré-Cœur Basilica. The view from Sacré-Cœur? Breathtaking.</p>
<p><em>Another tip? there are awesome and affordable gift shops, close to the Sacré-Cœur</em></p>
<p>Ended the day with a wonderful dinner with some newly found friends in Paris.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1711704522619/8e0a999a-ab3f-4e96-91e0-bf87adf5a48b.jpeg" alt class="image--center mx-auto" /></p>
<h2 id="heading-day-5-versailles"><strong>Day 5: Versailles</strong></h2>
<p>The full-day biking tour of Versailles was the crown jewel of my trip. Beyond the crowded château, I discovered the city's rich history and stunning landscapes. Bonding with fellow travelers and soaking in the history made it more than just a visit—it was an experience.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1711704534644/54ae2ebb-612c-4f6a-8e2c-dd7a38ee493f.jpeg" alt class="image--center mx-auto" /></p>
<p>As you can tell already, I didn't have the best itinerary, I didn't visit the amazing museums and attractions but honestly, I absolutely enjoyed my time at Paris.</p>
<p>And I actually must confess, Paris is the perfect place to try out a solo journey. Whether it's the glittering lights, the cobblestone streets, or the layers of history, there's something in the city for everyone.</p>
<p>So, here's to not waiting for the perfect plan or company—just go, explore, and let Paris work its magic. 🥂</p>
]]></content:encoded></item><item><title><![CDATA[Adopting Observability Practices In Your Technical Team]]></title><description><![CDATA[In the ever-evolving landscape of software development, one truth remains constant: outages and issues are inevitable. However, the frustration that comes from debugging code—especially when it's not your own—can often feel like an insurmountable cha...]]></description><link>https://blog.hopeoluwalolope.com/adopting-observability-practices-in-your-technical-team</link><guid isPermaLink="true">https://blog.hopeoluwalolope.com/adopting-observability-practices-in-your-technical-team</guid><category><![CDATA[observability]]></category><category><![CDATA[OpenTelemetry]]></category><dc:creator><![CDATA[Hope Oluwalolope]]></dc:creator><pubDate>Fri, 08 Mar 2024 13:18:03 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1709292610390/b4387711-0317-45c1-ac3d-d134c851ebef.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the ever-evolving landscape of software development, one truth remains constant: outages and issues are inevitable. However, the frustration that comes from debugging code—especially when it's not your own—can often feel like an insurmountable challenge.</p>
<p>This article, inspired by my journey and experiences, aims to provide an approach for software developers and engineers, who are often not in the decision-making seat, on how they can advocate for better observability practices in their team or organization.</p>
<h2 id="heading-my-observability-journey">My Observability Journey</h2>
<p>My curiosity about observability was ignited when my team started instrumenting some of our code for metrics, introducing me to the term. Eager to learn more, I delved into research, leading me to attend KubeCon NA 2023 and Observability Day. There, I explored how various organizations were implementing observability, the benefits they gained, and the practices they adopted. This journey brought me to OpenTelemetry and the OTEL end-user working group, where I joined a vibrant community of end users. Returning to my team armed with these new insights and perspective, I recognized a significant gap in our observability practices. Realizing the untapped potential, I've have been advocating for enhanced observability practices within my team ever since.</p>
<h2 id="heading-developers-nightmare">Developers' Nightmare</h2>
<p>As software developers, we find ourselves in a constant bug-fix mode, trapped in a cycle where solving one problem often introduces another. This cycle is not just frustrating; it's a significant drain on our time, resources, and morale.</p>
<p>The lack of adequate tools and practices for troubleshooting also means we're often the last to know when our systems fail, learning about issues only when customers report them. This reactive stance not only damages customer trust but also hinders our ability to maintain and improve system reliability.</p>
<h2 id="heading-envisioning-the-ideal">Envisioning The Ideal</h2>
<p>Imagine a world where developers have access to comprehensive telemetry data at their fingertips. In this world, metrics alert us to problems, traces guide us to their source, and logs provide the context needed to understand and resolve issues swiftly. This world is not a fantasy; it's attainable through the adoption of observability practices and standards, such as <a target="_blank" href="https://opentelemetry.io/">OpenTelemetry</a>, which offers seamless integration with a plethora of observability tools, allowing for flexibility and ease of switching as needs evolve.</p>
<h2 id="heading-from-dream-to-reality">From Dream To Reality</h2>
<p>Transitioning from a problem-laden environment to one enriched with observability practices can be daunting, especially when your management team is not aware of observability and your pain points, and is not willing to invest money or effort into adopting these practices. How can you then convince them and secure buy-in?</p>
<p>Here is a simple 3-step approach that can help you drive your point across.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709294330075/6023d647-88e6-4e42-95e1-2bb5f45711dd.png" alt class="image--center mx-auto" /></p>
<h3 id="heading-understand">Understand</h3>
<p>The first step is to deeply understand your team, your code, and the observability practices that can address your specific challenges. This understanding forms the foundation for effective advocacy, enabling you to communicate the value of observability in terms that resonate with your team and management.</p>
<h3 id="heading-proof">Proof</h3>
<p>Next, create a Proof of Concept (PoC) with one or more of your services. This PoC serves as tangible evidence of the benefits of observability, demonstrating its potential to improve troubleshooting efficiency, enhance system reliability, and reduce the time spent in bug-fix cycles.</p>
<h3 id="heading-plan">Plan</h3>
<p>Finally, armed with your PoC and a deep understanding of observability's benefits, create a detailed proposal for your team. This plan should outline the telemetry data you aim to collect, the tools you'll use, and how these tools will integrate into your existing systems. Highlight the benefits to management, such as improved customer retention and confidence, while also considering cost and the practicalities of adoption. Also consider pitching this plan to your team mates first since they also feel the pain of not having these tools and wining them on your side will provide better amnesty when advocating to management.</p>
<h2 id="heading-conclusion">Conclusion</h2>
<p>The journey to adopting observability is not without its challenges, from overcoming resistance to convincing management of its value. However, the rewards—increased system transparency, improved troubleshooting efficiency, and enhanced developer satisfaction—are well worth the effort. By understanding the landscape, proving the concept, and planning strategically, we can make observability an integral part of our development process, moving from a world of reactive fixes to one of proactive insight and improvement.</p>
]]></content:encoded></item><item><title><![CDATA[My Year 2023]]></title><description><![CDATA[January - A leap of faith 🌿
I started the year journaling, which is something I love to do, especially when life gets a bit too much. Looking back at my journal, all I really wanted for 2023 was to be able to relax and enjoy the roller coaster ride ...]]></description><link>https://blog.hopeoluwalolope.com/my-year-2023</link><guid isPermaLink="true">https://blog.hopeoluwalolope.com/my-year-2023</guid><category><![CDATA[yearinreview]]></category><dc:creator><![CDATA[Hope Oluwalolope]]></dc:creator><pubDate>Fri, 09 Feb 2024 08:16:42 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1709904208664/ca756256-fe7a-44e7-876d-007058b875a6.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-january-a-leap-of-faith">January - A leap of faith 🌿</h2>
<p>I started the year journaling, which is something I love to do, especially when life gets a bit too much. Looking back at my journal, all I really wanted for 2023 was to be able to relax and enjoy the roller coaster ride that the year would bring, believing that God had the driver's seat. 2022 was a turbulent year, and it was a year where God forced control out of my hands and taught me a trust lesson. In 2023, I wanted to willingly submit control to God. Most importantly, I had no idea how the year was going to go. I was at a crossroad and super confused about so many things.</p>
<p>Anyways, the year started with me having to retake an exam that I hated so much: <strong>IELTS</strong>. Deciding to retake it was like a personal litmus test to see if I'd really learned to trust God. I was super scared, mainly because I didn’t want to prepare in vain. But I was so glad I took that leap of faith because God indeed honored it and gave me an assurance that he was there with me at every step of the uncertain journey that 2023 was going to take.</p>
<h2 id="heading-february-gift-of-friends">February - Gift of friends 🫂</h2>
<p>I got a wonderful gift from a friend in London who I hadn’t seen in two years. It made me feel so loved and appreciated. I also marked my second year at Microsoft and shared an <a target="_blank" href="https://medium.com/@IAMebonyhope/from-fear-to-growth-my-journey-so-far-18a0a0644e6c">article</a> about my journey so far.</p>
<p>One of my goals was to host a party in my cozy and small apartment, and a friend’s birthday gave me the perfect chance to do that. I wanted to make her day special, since I had never done anything for her before on her birthday.</p>
<p>It was a lot of fun, but also a lot of work. I cooked all the food myself, and thankfully, everything turned out well. The best part was seeing her smile and enjoying ourselves. I was very happy with how it all went.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704274359868/bd7dead0-9aec-43c1-af9c-2dafbb884af0.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-march-the-valley-of-decision"><strong>March - The valley of decision 🤽‍♀️</strong></h2>
<p>March threw me into a whirlwind of decisions and making pivotal life changes. Again I had to hold onto the anchor and build upon the foundation of trust and faith in God.</p>
<p>Started the month by moderating an AMA panel session on how to ace technical Interviews. Doing it with friends made it an even richer experience - sharing insights and tips that could potentially change someone's career trajectory.</p>
<p>Then, I had a fun and relaxing weekend with some of my adopted sisters 😊, who came over to visit. It was an opportunity to visit some cool places in Vancouver and we had lots of fun.</p>
<p>Having a dinner and brunch weekend orchestrated by some amazing friends was the highlight of the month. It was a wonderful experience filled with a lovely time of fellowship. The discussions and testimonies left me feeling inspired and motivated.</p>
<p>Amidst all these fun and wonderful moments, I had to make one of the biggest decisions of my life — I decided to relocate to a different city for personal and professional reasons. It was a terrifying decision and a big leap of faith. I had to embrace the unknown and again trust the driver of the roller coaster ride.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704276481734/48b72e3a-d1c6-4a93-9ba5-3828e869e607.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-april-big-risk-with-faith">April - Big risk with faith 🚀</h2>
<p>I took the biggest risk I have ever taken in my life - I moved with uncertainty and literally planned the move in 3 weeks. It was challenging and very stressful and I had lost of fear but I am thankful that I decided to set my wings to the wind of faith.</p>
<p>God provided me with people who helped me pack, move, and settle in. Even getting a new apartment was all Gods favor, I literally got the apartment without viewing it myself and just trusted that it was going to be fine.</p>
<p>It was indeed a month of adventure. I took a big leap of faith, I learned new things, and made new friends.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704503823120/8381f6e3-ffb9-4301-812d-ef10359612e0.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-may-an-unexpected-achievement">May - An unexpected achievement🙌</h2>
<p>Changing environment is an opportunity to try something new. Make new friends, visiting new places and maybe trying new recipes 😄. So in the spirit of embracing change, I took on the challenge of making healthier food choices. It turns out, getting creative with veggies isn't as bad as I thought.</p>
<p>I also had an epic weekend. It was a short, sweet, relaxing and powerful church singles camp. And, No it wasnt a matchmaking event. it was about real-talk and soul-searching. Among all the amazing takeaways, someone mentioned this statemen t that has stuck with me ever since.. <strong>“My walk with God is more important than my reputation”.</strong></p>
<p>The biggest highlight of May was getting promoted to SDE II - (meaning I am no longer a junior software engineer 😊). This was a huge surprise and a huge achievement for me. I was not expecting it at all, and I was shocked when my manager told me the news.</p>
<p>But then I felt a lot of emotions and thoughts about this promotion. I felt proud of myself, but also scared of the new responsibilities and expectations. I felt confident in my skills, but also inadequate and unworthy of the promotion. It was like wearing a shiny new badge but feeling a bit unsure about the fit. Apparently, growth sometimes comes with a side of discomfort.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704507275042/7657d63e-2cd1-400b-95fa-9e78bf548511.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-june-the-best-birthday-celebration">June - The best birthday celebration 🎂</h2>
<p>June was a month of many blessings and celebrating my birthday.</p>
<p>I achieved a big goal of passing my CKA certification exam, which I had been preparing for a long time. I booked the exam one Friday, and I was very nervous and scared. But I passed it in flying colors, which was like a birthday gift from God.</p>
<p>I had a birthday photoshoot, which I have never done before, and I was really happy with the outcome of the photos. I also organized, planned, and had a gorgeous birthday dinner party, which was everything I wanted and more. God made it successful and beautiful. He raised up people who helped me selflessly, and He surrounded me with love and respect. I had a lot of fun with my friends, everyone had a nice time, and I felt their love and support.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704533934581/1c725b1d-ac54-4b65-bc2a-c253ec6cd076.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-july-celebrating-my-friend">July - Celebrating my friend 🎈</h2>
<p>July was a month of friendship and fun for me. I went back to Vancouver to celebrate my friend’s birthday with her. She is one of my closest friends, and I was super happy I was able to make it and be there for her. Her birthday was a blast.  </p>
<p>After returning from the trip, I fell ill and tested positive for COVID-19. I experienced severe pain for a week, but thankfully, God’s healing touch came through, and I recovered in a week.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704531496692/f4b5cd80-1410-4926-9d80-811f8676caef.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-august-summer-camp">August - Summer camp 🏕️</h2>
<p>I attended my very first summer camp, and it was a life-changing experience that I will never forget. I volunteered to work in the kitchen, which wasn’t what I originally signed up for, but somehow I got moved to the kitchen. Surprisingly, I really enjoyed it so much, and it gave me the opportunity to connect with a lot of amazing people. I even got to make the most beautiful strawberry bowl I have ever seen 😄</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704532991072/6efa8851-38ae-4663-92fa-1a59602a1d1a.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-september-travel-and-fun">September - Travel and fun 🧳</h2>
<p>September was another great month filled with fun and friendship.</p>
<p>I hosted a Garden of Grace dinner 😊 with my friends Precious and Clemence. We planned this within a week and the idea was to host some young people at church for a bohemian dinner enjoying some African delicacies. It was really eventful, especially the way it turned out with the rain and all. We had planned for a garden dinner outdoors, but then God made it beautiful in his own way.</p>
<p>Having my friend and travel buddy around, we decided to do our first travel in the US to meet up with our third friend in LA, while doing a stop in San Jose. It was a really fun trip and a great time to reconnect with my friends.</p>
<p>I gave my very first talk on <strong>observability</strong> - a topic I am recently passionate about. And I was able to write my first article on it as well.</p>
<p>To finish up the month, I helped plan a surprise birthday dinner for my friend Eden. This was really special because it became the first time I ate some Ethiopian food. She had always wanted us to go to an Ethiopian restaurant, and there was no better way to celebrate her birthday than having all the people she cared about around her at her favorite Ethiopian restaurant.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704537560267/c5aeef20-6059-4cdf-a780-6e575c51d6bf.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-october-experiences-and-challenges">October - Experiences and challenges 🥾</h2>
<p>I went on a hike with some folks at work, which was my first hike of the year. Although my body was far from prepared for it, I managed to finish the hike despite snapping my back.</p>
<p>I also contributed to a potluck at work and I made an amazing pan of plantain and sauce, which was a hit.</p>
<p>We launched a cloud bootcamp that we had been planning for months. It was great to see all our hard work come to fruition.</p>
<p>A project I had been working on for more than 3 months got paused. Although it was painful, but it was relieving.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704542790724/f4d0d65a-85d7-4999-8f62-d63dc790264b.jpeg" alt class="image--center mx-auto" /></p>
<h2 id="heading-november-networking-and-fun">November - Networking and Fun 🤝</h2>
<p>November was another month of learning, networking, and fun.</p>
<p>I attended Kubecon + CloudNativeCon in Chicago, which was my first ever big and international conference. It was an exciting experience, and I shared my insights and experience with here.</p>
<p>I also hosted a lunch for some African MVPs who attended Ignite. I invited them to my place and provided some African dishes for them. We had a great time connecting and sharing our experiences.</p>
<p>And to crown the month, we had a Friendsgiving dinner, where I and my friends had a potluck of different African dishes. It was a great deal of fun, and we enjoyed trying out new dishes and sharing our cooking skills.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704541642034/c75b61c5-e147-4607-8d9b-be4b88890f07.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-december-enjoying-the-holidays">December - Enjoying the holidays 🎄</h2>
<p>December was a time to enjoy the holidays and rejuvenate for the new year.</p>
<p>One big achievement for me during this period was the creation and launch of my personal website—a long overdue project.</p>
<p>I organized a secret santa and virtual end of year party for my team. The heartwarming accolades from my teammates showed how much they enjoyed and appreciated it.</p>
<p>To cap it all off, I went on an amazing holiday trip to Vancouver, where I celebrated Christmas and New Year with family and friends.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704543058548/85e76187-db93-4f5b-96b2-8ca94d9a94b0.png" alt class="image--center mx-auto" /></p>
]]></content:encoded></item><item><title><![CDATA[Observability: What, Why and How]]></title><description><![CDATA[What is Observability?
Observability is a fundamental concept in the realms of software engineering, DevOps, and systems administration. It revolves around the idea of gaining insight into the internal state of a system by examining the data it gener...]]></description><link>https://blog.hopeoluwalolope.com/observability-what-why-and-how</link><guid isPermaLink="true">https://blog.hopeoluwalolope.com/observability-what-why-and-how</guid><category><![CDATA[observability]]></category><category><![CDATA[monitoring]]></category><category><![CDATA[Cloud Computing]]></category><category><![CDATA[Application Development]]></category><dc:creator><![CDATA[Hope Oluwalolope]]></dc:creator><pubDate>Wed, 20 Dec 2023 11:39:52 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1703072005805/24bf1cb8-beaf-4e2e-bcf1-7af6c40f9562.gif" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-what-is-observability">What is Observability?</h2>
<p><strong>Observability</strong> is a fundamental concept in the realms of software engineering, DevOps, and systems administration. It revolves around the idea of gaining insight into the internal state of a system by examining the data it generates and emits. <strong>At its core, observability is about understanding what is happening within a system based on the outputs it produces.</strong></p>
<p>In simpler terms, consider it as a set of tools and practices that allow you to decipher the inner workings of your applications, services, and infrastructure by examining the signals they emit. The more observable your system is, the more swiftly and accurately you can traverse from identifying a problem to pinpointing its root cause and eventually resolving it.</p>
<p>It's important to note that observability goes beyond mere buzzwords or a fancy term for monitoring. It represents an evolutionary step in addressing the unique challenges posed by modern distributed systems. As applications become increasingly complex and interconnected, traditional monitoring methods often fall short in providing the depth of insights required to maintain and optimize these intricate ecosystems.</p>
<hr />
<h2 id="heading-why-do-you-need-observability">Why do you need Observability?</h2>
<p><strong>Monitoring</strong> is the practice of vigilantly watching over your systems to detect specific scenarios or conditions, both desirable and undesirable. It's the guardian that keeps an eye on the known unknowns—the issues you are aware of and can anticipate.<br />Monitoring is a crucial first step in ensuring system reliability and performance.</p>
<p>However, in the complex and dynamic landscape of modern software and infrastructure, where systems are constantly changing and evolving, monitoring alone may fall short. These systems often present a myriad of <strong>unknown unknowns</strong>—issues that you neither know exist nor can predict. This is where <strong>observability</strong> comes into play.</p>
<p><strong>Example:</strong><br />Imagine you have a complex microservices architecture powering your e-commerce platform. Your monitoring tools have been diligently watching for known issues like high CPU usage or excessive memory consumption. However, you start receiving customer complaints about slow checkouts, and your monitoring tools haven't triggered any alerts.</p>
<p>With observability, you dig deeper into the system. You find that the payment service was sometimes experiencing significant delays for specific transactions. By your telemetry data, you discover that these delays are caused by external payment gateway timeouts during high traffic spikes—a scenario not explicitly monitored for.</p>
<p>Armed with this newfound knowledge, you implement adaptive strategies to handle these external service hiccups gracefully, ensuring a smoother shopping experience for your customers. This proactive approach to addressing unknown unknowns is a key strength of observability.</p>
<p><strong>Observability builds on top of monitoring</strong>, extending your capability to navigate the intricate terrain of your systems. It equips you with a flexible and holistic view of your system's behavior and performance. While monitoring focuses on what you expect to see, observability empowers you to explore what's happening within your system, even when you don't have predefined expectations.</p>
<p>With observability, you can delve deep into your applications, services, and infrastructure, uncovering insights that would otherwise remain hidden. It enables you to swiftly and effectively trace the root cause of any problem, be it an unexpected performance dip or a mysterious error.</p>
<p>In essence, observability transforms your system management from a reactive stance, where you address known issues, to a proactive approach, where you anticipate and mitigate the unknowns that can impact your operations and user satisfaction.</p>
<p><a target="_blank" href="https://res.cloudinary.com/practicaldev/image/fetch/s--SlHufHhg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pfmd6gvxm1585z3ggti5.png"><img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SlHufHhg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pfmd6gvxm1585z3ggti5.png" alt="Ice berg" class="image--center mx-auto" /></a></p>
<hr />
<h2 id="heading-how-do-you-achieve-observability">How do you achieve Observability?</h2>
<p>To achieve observability, you must understand the fundamental building blocks of application observability: <strong>metrics, traces, and logs</strong>.<br />These components provide crucial telemetry data to help you gain insights into your system's behavior</p>
<h3 id="heading-metrics">Metrics</h3>
<ul>
<li><p>Metrics are time-series data that represent counts or measures, typically calculated or aggregated over time intervals.</p>
</li>
<li><p>Anything that can be measured or tracked as a number can be collected as a metric.</p>
</li>
<li><p>Some examples include response time, request counts, CPU usage, memory consumption, error rates, and latency, resource health.</p>
</li>
<li><p>Metrics are useful for identifying trends and generating alerts.</p>
</li>
</ul>
<h3 id="heading-traces">Traces</h3>
<ul>
<li><p>Traces offer a detailed record of the journey of a request as it traverses through your distributed architecture.</p>
</li>
<li><p>They provide visibility into how services interact and process requests, along with causal ordering to pinpoint issues in complex systems.</p>
</li>
<li><p>Traces are indispensable for troubleshooting and pinpointing issues.</p>
</li>
</ul>
<h3 id="heading-logs">Logs</h3>
<ul>
<li><p>Logs are print statements in a structured format that capture important events and actions in your system.</p>
</li>
<li><p>They offer a chronological view of system activities at a granular level.</p>
</li>
<li><p>Logs are timestamped and immutable records that help create audit trails.</p>
</li>
<li><p>They are very useful in providing context regarding an event.</p>
</li>
</ul>
<p><a target="_blank" href="https://res.cloudinary.com/practicaldev/image/fetch/s--NCTnCDoB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ziz1orgwgjk5tegfc92z.jpg"><img src="https://res.cloudinary.com/practicaldev/image/fetch/s--NCTnCDoB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ziz1orgwgjk5tegfc92z.jpg" alt="metrics-logs-traces" class="image--center mx-auto" /></a></p>
<p>Instrumenting your code to generate and collect these telemetry data types from your system components is a fundamental step toward achieving application observability.</p>
<p>But to effectively utilize your observability data, you need tools and platforms that can store, analyze, and visualize it in a meaningful way.</p>
<p>Some of the tools you can use:</p>
<ul>
<li><p>Metrics: <a target="_blank" href="https://prometheus.io/docs/prometheus/latest/getting_started/">Prometheus</a>, <a target="_blank" href="https://grafana.com/docs/mimir/latest/get-started/">Memir</a></p>
</li>
<li><p>Traces: <a target="_blank" href="https://www.jaegertracing.io/docs/1.49/getting-started/">Jaegar</a>, <a target="_blank" href="https://zipkin.io/pages/quickstart.html">Zipkin</a>, <a target="_blank" href="https://grafana.com/docs/tempo/latest/getting-started/">Tempo</a></p>
</li>
<li><p>Logs: <a target="_blank" href="https://www.elastic.co/getting-started">Logstash</a>, <a target="_blank" href="https://grafana.com/docs/loki/latest/get-started/">Loki</a>, <a target="_blank" href="https://serilog.net/">Serilog</a></p>
</li>
<li><p>Analytics and visualization: <a target="_blank" href="https://grafana.com/grafana/">Grafana</a>, <a target="_blank" href="https://www.elastic.co/kibana">Kibana</a></p>
</li>
</ul>
<p><a target="_blank" href="https://res.cloudinary.com/practicaldev/image/fetch/s--5qOS-yKD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bsigbrktembxyxu99c1q.jpg"><img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5qOS-yKD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bsigbrktembxyxu99c1q.jpg" alt="observability tools" class="image--center mx-auto" /></a></p>
<p>While some tools specialize in specific areas, such as metric collection, log management, or tracing, managing various tools for these purposes can be overwhelming.</p>
<p>To address this challenge, the concept of full-stack observability platforms has emerged. These platforms provide end-to-end visibility into your system's behavior and performance. They come equipped with their own agents that you install within your code or applications to gather all the telemetry data effectively.</p>
<p>Notable examples of full-stack observability platforms include:</p>
<ul>
<li><p><a target="_blank" href="https://www.dynatrace.com/">Dynatrace</a></p>
</li>
<li><p><a target="_blank" href="https://newrelic.com/">New Relic</a></p>
</li>
<li><p><a target="_blank" href="https://www.splunk.com/">Splunk</a></p>
</li>
<li><p><a target="_blank" href="https://www.datadoghq.com/">Datadog</a></p>
</li>
<li><p><a target="_blank" href="https://www.elastic.co/">Elastic Stack</a></p>
</li>
<li><p><a target="_blank" href="https://grafana.com/">Grafana LGTM Stack</a></p>
</li>
</ul>
<p>These full-stack observability platforms streamline the observability process by unifying telemetry data generation, storage, and visualization.</p>
<hr />
<h2 id="heading-how-do-you-get-started-with-observability">How do you get started with Observability?</h2>
<p>Chances are, you're already dabbling in observability, perhaps with a few <code>console.log</code> or <strong>print</strong> statements scattered throughout your code. These initial steps are indeed a form of observability, providing some insights into your system's behavior.<br />But why stop there? Observability can be taken to a whole new level by embracing structured and comprehensive tools and practices.</p>
<p>You can start by choosing an observability platform or tool that suits your needs and budget. You can also explore the open-source options like Prometheus, Jaeger, Elastic, Grafana stack etc.</p>
<p>You should not stop at getting started as observability is not a one-time endeavor. It's an ongoing process that requires continuous learning and adaptation. As your system evolves, so should your observability strategy and practices.</p>
<p>Take your observability game a step further by adopting an approach known as Observability-Driven Development (ODD). ODD encourages a cultural shift from reactive to proactive problem-solving by empowering developers to take ownership of observability. Instead of thinking about observability when issues arise, weave it into your code from the very start of development.</p>
<p><strong><em>In today's AI-driven world, collecting data from your system is crucial to creating AI models that can help automate and streamline your operational workflows. Hence, if you want to unlock the full potential of AIOPs (Artificial Intelligence for IT Operations), observability is not an optional feature; it’s an essential requirement.</em></strong></p>
<hr />
<h2 id="heading-references">References</h2>
<p><a target="_blank" href="https://dev.to/iamebonyhope/observability-what-why-and-how-1lj0#what-is-observability">https://dev.longy.cloud/whats-the-difference-between-observability-and-monitoring<br />https://dev.to/argonaut/top-20-observability-tools-every-startup-should-know-about-in-2022-29nf</a></p>
]]></content:encoded></item></channel></rss>