<?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" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Muiz Haruna on Medium]]></title>
        <description><![CDATA[Stories by Muiz Haruna on Medium]]></description>
        <link>https://medium.com/@devdesiignn?source=rss-80ed8166d22a------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*VtqKcD63hfpihk1BuJNDJw.jpeg</url>
            <title>Stories by Muiz Haruna on Medium</title>
            <link>https://medium.com/@devdesiignn?source=rss-80ed8166d22a------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Tue, 02 Jun 2026 00:48:18 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@devdesiignn/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Understanding JavaScript Object Prototypes and Prototype Chains]]></title>
            <link>https://medium.com/@devdesiignn/understanding-javascript-object-prototypes-and-prototype-chains-546b53470f12?source=rss-80ed8166d22a------2</link>
            <guid isPermaLink="false">https://medium.com/p/546b53470f12</guid>
            <category><![CDATA[object-prototype]]></category>
            <category><![CDATA[javascript]]></category>
            <category><![CDATA[prototype-chain]]></category>
            <dc:creator><![CDATA[Muiz Haruna]]></dc:creator>
            <pubDate>Thu, 05 Dec 2024 15:01:52 GMT</pubDate>
            <atom:updated>2024-12-05T15:01:52.945Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/991/1*8OsW-NiYJpZ8YFe8nY87wg.png" /><figcaption>Prototype Chains</figcaption></figure><p>Every object in JavaScript has a built-in property called <strong>prototype</strong>. The prototype itself is an object, so it also has its own prototype, forming what we call a <strong>prototype chain</strong>. The chain ends when we reach a prototype whose prototype is null.</p><p>The property that points to or contains the prototype is often called __proto__, but the standard way to access an object&#39;s prototype is by using Object.getPrototypeOf(), which takes the object whose prototype you want to retrieve as an argument.</p><p><strong>Note:</strong> When you try to access a property or method of an object, if the property/method cannot be found on the object itself, its prototype is searched. If it is still not found, the search continues up the prototype chain. If the end of the chain is reached and the property/method is not found, undefined is returned.</p><p>For example:</p><p>myObject → __proto__ → Object.prototype → __proto__ → null</p><h3>Setting up a prototype</h3><ul><li><strong>Using </strong>Object.create()<br>Object.create() allows you to create new objects and specify an existing object to be used as their prototype.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*UEomDTAcV7qcUUSZMnSmHA.png" /><figcaption>Code illustration of Object.create()</figcaption></figure><ul><li><strong>Using a Constructor</strong><br>All functions in JavaScript have a built-in property called prototype. When a function is called as a constructor (using the new keyword), its prototype is set as the new object&#39;s prototype (__proto__). As a result, all objects created using the constructor function will share the same prototype, which is the constructor&#39;s prototype property.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4CwNmA0pHKtSs2P6Aq7CHA.png" /><figcaption>Code illustration of Constructor Function</figcaption></figure><h3>Own Properties</h3><p>Properties defined directly on an object are called <strong>Own Properties</strong>. They can be checked using the Object.hasOwn() method or the Object.hasOwnProperty() method.</p><figure><img alt="Code illustration of hasOwn() and hasOwnProperty()" src="https://cdn-images-1.medium.com/max/1024/1*YGljjwGtkLvLZZvyM3Vl6g.png" /><figcaption>Code illustration of hasOwn() and hasOwnProperty()</figcaption></figure><h3>Conclusion</h3><p>Understanding JavaScript prototypes and prototype chains is essential for mastering object-oriented programming in JavaScript. By taking advantage of methods like Object.create(), constructor functions, and the ability to check for <strong>Own Properties</strong> with hasOwn() and hasOwnProperty(), you gain more control over how objects are structured and how they inherit properties. This knowledge allows you to write cleaner, more efficient code, and helps you avoid common pitfalls when working with JavaScript objects and their inheritance mechanisms.</p><p>Thanks for reading! I look forward to sharing more in my next post.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=546b53470f12" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Those rings on your earphone plug, what do they mean?]]></title>
            <link>https://medium.com/@devdesiignn/those-rings-on-your-earphone-plug-what-do-they-mean-9e8045e0bca2?source=rss-80ed8166d22a------2</link>
            <guid isPermaLink="false">https://medium.com/p/9e8045e0bca2</guid>
            <category><![CDATA[earphones]]></category>
            <category><![CDATA[what-it-means]]></category>
            <category><![CDATA[how-it-works]]></category>
            <dc:creator><![CDATA[Muiz Haruna]]></dc:creator>
            <pubDate>Mon, 18 Sep 2023 05:50:37 GMT</pubDate>
            <atom:updated>2023-09-18T05:50:37.565Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/482/1*czNgYv-gMk3zks1GN8-X8Q.jpeg" /></figure><p>Ever wondered why there are rings on your earphone plug? Well, here’s what they do:</p><p>The number of rings on an earphone plug, also known as a headphone jack, indicates the type of audio signal and functionality it supports. We have earphones with single, two, and three rings.</p><p>Single ring:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/427/1*xzBByPbB5uL1SLXSZF2_Fg.jpeg" /><figcaption>Single Ring Earphone Plug</figcaption></figure><p>An earphone with one ring means that there are two sections, so the plug is mono audio.</p><p>In simpler terms, it means your earphones play exactly the same sound.</p><p>In essence, when you see an earphone plug with only one ring, it’s telling you that it’s a mono audio connection, meaning both the left and right earbuds will play the same audio, creating a single, unified sound experience.</p><p>2 rings:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/434/1*n9gLHXDUstTwJeMB_ECmlQ.jpeg" /><figcaption>Two Rings Earphone Plug</figcaption></figure><p>An earphone with two rings means that there are three sections, so the plug is stereo audio.</p><p>In simpler terms, it means the earphone has dual audio channels, one for the left earbud and the other for the right earbud.</p><p>So, when you plug in earphones with two rings, you can expect to hear separate left and right audio channels, creating a stereo audio experience. This is the most common type of earphone plug for listening to music and other audio content in stereo.</p><p>3 rings:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/468/1*8XPWZPK5lcyAFriuVH5knQ.jpeg" /><figcaption>Three Rings Earphone Plug</figcaption></figure><p>An earphone with three rings means that there are four sections, so the plug is stereo audio plus microphone/volume control or both.</p><p>In simpler terms, it means the earphone has the same functionalities as the 2-ring earphone, but with a plus, a microphone/volume control, or both.</p><p>Earphones with three rings are versatile and commonly found on headsets designed for smartphones and other mobile devices. They support stereo audio playback, microphone input for making calls or recording audio, and sometimes additional functions like volume control or playback controls.</p><p>You’re Welcome,</p><p>DEVDESIIGNN 🌵 from How It Works.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=9e8045e0bca2" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Why Nigerian Banking Apps Reset at 1:00 AM]]></title>
            <link>https://medium.com/@devdesiignn/why-nigerian-banking-apps-reset-at-1-00-am-6784f83c5962?source=rss-80ed8166d22a------2</link>
            <guid isPermaLink="false">https://medium.com/p/6784f83c5962</guid>
            <category><![CDATA[fintech]]></category>
            <category><![CDATA[technology]]></category>
            <category><![CDATA[how-things-work]]></category>
            <dc:creator><![CDATA[Muiz Haruna]]></dc:creator>
            <pubDate>Sun, 03 Sep 2023 04:25:32 GMT</pubDate>
            <atom:updated>2023-09-03T04:25:32.951Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="A banner displaying Nigerian banking apps." src="https://cdn-images-1.medium.com/max/739/1*6iy0vEkS94rA2990ltEIlw.png" /><figcaption>Unlocking the Mysteries: Nigerian Banking Apps in Focus</figcaption></figure><p>In the ever-changing world of fintech and digital banking, it’s the little details that catch our eye. Lately, I noticed something quite interesting that made me curious: the timing of resets in Nigerian banking apps.</p><p>Specifically, in apps like PiggyVest and OPay, the resets don’t happen at midnight as you might think. They actually occur at the somewhat unusual time of 1:00 a.m.</p><p>What’s more, I shared this observation on my <a href="https://twitter.com/devdesiignn/status/1697783791593377852?s=20">social media</a>, and to my delight, a backend developer responded with valuable insights.</p><p>Now, let’s delve into the intriguing world of digital finance and uncover the reasons behind this unique timing choice.</p><p><strong>The Curious Case of Reset Timing</strong></p><p>Picture this scenario: It’s the beginning of a new month, and you eagerly log into your PiggyVest or OPay app. You’re expecting your transaction counts, debit card ATM limits, cash withdrawal, and transfer limits to reset at the stroke of midnight. However, what you encounter is a subtle but intriguing twist — they reset at 1:00 a.m., not midnight.</p><p><strong>Possible Explanations</strong></p><p>Several factors could contribute to this timing choice:</p><p>1. <strong>GMT+0 Server Time</strong>: This explanation particularly resonates with me. A compelling reason lies in the backend infrastructure. Platforms like PiggyVest and OPay may host their backend code on GMT+0 (Greenwich Mean Time) servers, ensuring consistency across global operations and simplifying complexities tied to different time zones.</p><p>2. <strong>Maintenance and Backup</strong>: The 1:00 a.m. reset time might be carefully orchestrated to coincide with a period of lower server activity. This facilitates seamless maintenance and backups without causing disruptions to the user experience.</p><p>3. <strong>Global Standardization</strong>: In the interconnected world of fintech, some institutions opt for standardized timing worldwide to maintain uniformity across regions. This can lead to variations in reset times, as we’ve observed.</p><p>4. <strong>Transaction Processing</strong>: The choice of 1:00 a.m. could align with overnight batch processing or reconciliation procedures. Such timing ensures smooth operations and precise accounting.</p><p>5. <strong>Technical Constraints</strong>: It’s possible that specific technical limitations or dependencies within their systems dictate this timing for certain processes.</p><p>6. <strong>User Behavior</strong>: The decision might also be influenced by user behavior. Fewer users are typically active at 1:00 a.m., reducing the impact of resetting transaction counts and limits.</p><p>Regarding the use of GMT+0 Servers, here are some other contexts where GMT+0 or UTC (Coordinated Universal Time) serves as the reference:</p><p>1. <strong>NTP Servers</strong>: Network Time Protocol servers frequently rely on UTC as the benchmark for synchronizing computer networks.</p><p>2. <strong>Global Financial Systems</strong>: Across worldwide financial systems and trading platforms, UTC is the linchpin for ensuring consistency and precision in financial transactions.</p><p>3. <strong>Astronomical Observatories</strong>: In the field of astronomy, UTC plays a pivotal role in achieving precise timing for celestial observations.</p><p>4. <strong>International Aviation</strong>: Air traffic control and aviation systems lean on UTC for flight coordination and scheduling, regardless of time zones.</p><p>5. <strong>Military Operations</strong>: The military extensively uses UTC to orchestrate actions seamlessly across diverse regions and time zones.</p><p>Conclusion</p><p>In the world of fintech and beyond, timing serves as the linchpin for precision, uniformity, and security. While the precise reasons behind the timing of resets in Nigerian banking apps like PiggyVest and OPay may vary, the use of GMT+0 servers and UTC as a reference point underscores the significance of global standardization and reliability.</p><p>As we navigate the ever-evolving landscape of digital finance, these observations serve as a reminder that even the smallest details can unveil captivating insights into the inner workings of systems that shape our daily lives.</p><p>Yours Truly,</p><p>DEVDESIIGNN 🌵 from How It Works.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=6784f83c5962" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Unlocking the Magic of How Things Work]]></title>
            <link>https://medium.com/@devdesiignn/unlocking-the-magic-of-how-things-work-24e85dafe63?source=rss-80ed8166d22a------2</link>
            <guid isPermaLink="false">https://medium.com/p/24e85dafe63</guid>
            <dc:creator><![CDATA[Muiz Haruna]]></dc:creator>
            <pubDate>Wed, 30 Aug 2023 23:59:30 GMT</pubDate>
            <atom:updated>2023-08-31T00:01:13.520Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*FPKC9Qz0Zg-zjaY3" /><figcaption>Photo by <a href="https://unsplash.com/@markuswinkler?utm_source=medium&amp;utm_medium=referral">Markus Winkler</a> on <a href="https://unsplash.com?utm_source=medium&amp;utm_medium=referral">Unsplash</a></figcaption></figure><p>How Things Work? How Things Work!</p><p>Hello, curious minds and inquisitive souls! 🌟 Welcome to a journey that promises to unveil the mysteries that power our world. I’m thrilled to kickstart this exploration with you as we delve into the fascinating realm of understanding how things work.</p><p>Why “How Things Work”? Have you ever stared at a complex machine, an intricate piece of software, or even the natural phenomena that surround us, and wondered, “How does this actually work?” If you’re nodding your head or even just a tad bit intrigued, you’re in the right place. Here, we’re all about quenching that thirst for knowledge and uncovering the gears, codes, and mechanisms that make our world tick.</p><p>The Joy of Discovery 🕵️‍♀️ There’s a special joy in uncovering the mechanics that drive our technology, systems, and everyday wonders. Whether it’s diving into the intricate pathways of a computer program or understanding the physics behind a mind-boggling illusion, every discovery is a small victory, a moment of clarity in the face of complexity.</p><p>Our Expedition Together 🚀 Through this Medium page, we’re embarking on an expedition that promises awe-inspiring revelations. From breaking down concepts into easily digestible pieces to exploring the history, evolution, and real-world applications of these phenomena, we’ll unravel the hidden layers of knowledge together.</p><p>Get Ready to Geek Out! 🤓 If you’re a curious learner, a tech enthusiast, or simply someone who loves those “aha!” moments, you’re part of the tribe. Whether you’re joining us to learn, to marvel, or just to satisfy your inner geek, I’m excited to have you on board.</p><p>Join the Conversation! 🗣️ This isn’t a one-sided journey. Your thoughts, questions, and perspectives are incredibly valuable. I invite you to join in on the conversation by sharing your insights, asking those burning questions, and sparking discussions that enrich our understanding.</p><p>A Big “Hello, World!” to Curiosity 🌎 So, here’s to embracing the wonder of discovery and the thrill of unraveling the intricate web of “How Things Work.” Thank you for being here at the start of this exciting journey. Buckle up, because we’re about to dive deep into the heart of the matter and emerge with insights that’ll leave you in awe.</p><p>Here’s to uncovering the magic in the mechanics! 🌌🔍</p><p>Warm regards,</p><p>DEVDESIIGNN from How It Works.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=24e85dafe63" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>