<?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[My first Publication]]></title><description><![CDATA[My first Publication]]></description><link>https://firstone1.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Thu, 29 Oct 2026 00:49:07 GMT</lastBuildDate><atom:link href="https://firstone1.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Common Reasons Employees Leave, and What Managers Can Do]]></title><description><![CDATA[The common reasons employees leave, how to spot them early, and what managers can do about each one.]]></description><link>https://firstone1.hashnode.dev/common-reasons-employees-leave-and-what-managers-can-do</link><guid isPermaLink="true">https://firstone1.hashnode.dev/common-reasons-employees-leave-and-what-managers-can-do</guid><category><![CDATA[Employee Retention]]></category><dc:creator><![CDATA[Habban Muhammad]]></dc:creator><pubDate>Tue, 20 Oct 2026 19:59:26 GMT</pubDate><content:encoded><![CDATA[<p>People leave jobs for many reasons, and the reason given in an exit interview is not always the whole story. Most of the common ones, though, are visible long before someone resigns, and many are within a manager's reach.</p>
<h3>1. Unclear expectations</h3>
<p>When people are not sure what good work looks like or what matters most this week, they work hard on the wrong things and feel they are never getting it right. <strong>What helps:</strong> a short weekly priorities note and regular one-to-ones where expectations are checked, not assumed.</p>
<h3>2. Too much work, for too long</h3>
<p>Busy periods are normal. A permanently unmanageable workload is not. <strong>What helps:</strong> ask about workload on a regular rhythm, and when it is too high, take something off the plate or agree what will wait.</p>
<h3>3. Feeling unheard</h3>
<p>People raise concerns, nothing visibly changes, and they stop raising them. Silence is not agreement. <strong>What helps:</strong> tell people what you heard and what you will do, even when the answer is "not now, and here is why".</p>
<h3>4. Little sense of growth</h3>
<p>People want to learn and see where they could go next. <strong>What helps:</strong> ask what they would like to learn, agree one small step and revisit it.</p>
<h3>5. Weak manager relationship</h3>
<p>Many people say they leave managers more than companies. Managers who are hard to reach, rarely give feedback or react badly to bad news make staying difficult. <strong>What helps:</strong> regular, predictable one-to-ones and feedback that is specific and timely.</p>
<h3>6. Not feeling recognised</h3>
<p>Good work that is never noticed erodes motivation. <strong>What helps:</strong> specific, timely thanks that says what the person did and why it mattered.</p>
<h3>7. Poor fit between the job and the person</h3>
<p>Sometimes the role changed, or was described differently when the person joined. <strong>What helps:</strong> check in during the first months and revisit the role as it changes.</p>
<h3>8. Change that is not explained</h3>
<p>Reorganisations and new tools are easier to accept when people know why they are happening. <strong>What helps:</strong> explain the reason, the impact on each person's work and the support available.</p>
<h3>Spotting problems early</h3>
<p>Short, regular check-ins surface these themes while there is still time to act. The same few questions each round, kept brief, let you see whether something is slipping in a team. Do not wait for an exit interview to find out.</p>
<h3>What to do with what you hear</h3>
<ol>
<li>Look for the theme that appears most.</li>
<li>Choose one action and give it an owner and a date.</li>
<li>Tell the team.</li>
<li>Check again to see whether it helped.</li>
</ol>
<h3>A note from us</h3>
<p><a href="https://ethosone.ai">Ethos One</a> is an AI-powered pulse, insight and accountability ecosystem for companies of 50 to 500 people. Its 10-second check-ins turn into actions with an owner and a date, and later check-ins show whether those actions worked. It is a live product, in open beta since 23 June 2026, with 14 days free access at <a href="https://ethosone.ai/company/register">ethosone.ai/company/register</a>.</p>
<p><em>Written by the Ethos One team.</em></p>
]]></content:encoded></item><item><title><![CDATA[Engagement Surveys Explained: What They Measure and How Often to Run Them]]></title><description><![CDATA[An engagement survey asks employees how they feel about their work, their team and the company, and turns the answers into something a manager can act on…]]></description><link>https://firstone1.hashnode.dev/engagement-surveys-explained-what-they-measure-and-how-often-to-run-them</link><guid isPermaLink="true">https://firstone1.hashnode.dev/engagement-surveys-explained-what-they-measure-and-how-often-to-run-them</guid><category><![CDATA[employee engagement]]></category><dc:creator><![CDATA[Habban Muhammad]]></dc:creator><pubDate>Tue, 20 Oct 2026 19:56:39 GMT</pubDate><content:encoded><![CDATA[<p>An engagement survey asks employees how they feel about their work, their team and the company, and turns the answers into something a manager can act on. The idea is simple. The value comes from what happens afterwards.</p>
<h3>What an engagement survey measures</h3>
<p>Different surveys use different wording, but most cover the same handful of themes:</p>
<ul>
<li><strong>Clarity:</strong> do people know what is expected of them and why it matters?</li>
<li><strong>Workload:</strong> is the amount of work realistic?</li>
<li><strong>Manager support:</strong> can people get help and useful feedback?</li>
<li><strong>Growth:</strong> do people see a path to learn and progress?</li>
<li><strong>Recognition:</strong> is good work noticed?</li>
<li><strong>Belonging and communication:</strong> do people feel included and informed?</li>
</ul>
<p>A good survey measures a small number of these at a time rather than everything at once.</p>
<h3>Types of engagement survey</h3>
<ol>
<li><strong>Annual survey.</strong> A long survey once a year. It gives a broad baseline but the results can be months old by the time anyone acts.</li>
<li><strong>Pulse survey.</strong> Three to five questions, sent every week, fortnight or month. It spots change early.</li>
<li><strong>Lifecycle survey.</strong> Short surveys at moments that matter: after onboarding, after a promotion, at exit.</li>
<li><strong>Topic survey.</strong> One-off, focused on a single decision such as a new working pattern.</li>
</ol>
<p>Most teams that do this well combine an occasional broader survey with regular short ones.</p>
<h3>How often to run one</h3>
<p>Choose a rhythm you can actually keep. Weekly suits fast-moving teams, monthly suits most others, and a longer survey once or twice a year gives context. The rule that matters more than frequency: do not ask more often than you can act on the answers. If people answer and nothing changes, they stop answering honestly.</p>
<h3>A simple way to run the first one</h3>
<ol>
<li>Pick one topic you are ready to act on.</li>
<li>Write three to five questions: mostly rating scales, one open comment.</li>
<li>Tell people why you are asking and when they will hear back.</li>
<li>Share the main themes in the time you promised, even when the news is mixed.</li>
<li>Choose one or two actions, give each an owner and a date.</li>
<li>Ask the same questions again next round and report whether things moved.</li>
</ol>
<h3>Common mistakes</h3>
<ul>
<li>Asking too many questions, so completion drops.</li>
<li>Changing the wording every round, so nothing can be compared.</li>
<li>Collecting answers without sharing results.</li>
<li>Producing charts but no owners or dates.</li>
<li>Treating a low score as a verdict on a manager instead of a prompt to ask what would help.</li>
</ul>
<h3>Reading the results</h3>
<p>Look for themes in the open comments before looking at the scores. Comments usually explain the numbers. Compare a team with its own earlier rounds rather than with other teams, because context differs. Small groups need care: report themes rather than individual comments so people stay comfortable being candid.</p>
<h3>Where tools help</h3>
<p>You can start with a spreadsheet and a form. When you want the answers, the actions and the follow-up check-ins in one place, a tool helps. <a href="https://ethosone.ai">Ethos One</a> is an AI-powered pulse, insight and accountability ecosystem for companies of 50 to 500 people. Its 10-second check-ins turn into actions with an owner and a date, and later check-ins show whether those actions worked. It is a live product, in open beta since 23 June 2026, with 14 days free access at <a href="https://ethosone.ai/company/register">ethosone.ai/company/register</a>.</p>
<p><em>Written by the Ethos One team.</em></p>
]]></content:encoded></item><item><title><![CDATA[Core Web Vitals Explained Simply (and How to Check Them with the PageSpeed Insights API)]]></title><description><![CDATA[What Google actually measures, what the numbers mean, and how to pull them for any website with a few lines of code If you've ever run a site through…]]></description><link>https://firstone1.hashnode.dev/core-web-vitals-explained-simply-and-how-to-check-them-with-the-pagespeed-insights-api</link><guid isPermaLink="true">https://firstone1.hashnode.dev/core-web-vitals-explained-simply-and-how-to-check-them-with-the-pagespeed-insights-api</guid><dc:creator><![CDATA[Habban Muhammad]]></dc:creator><pubDate>Sun, 04 Oct 2026 00:02:45 GMT</pubDate><content:encoded><![CDATA[<p>What Google actually measures, what the numbers mean, and how to pull them for any website with a few lines of code</p>
<p>If you've ever run a site through Google's PageSpeed tool, you've seen a wall of acronyms: LCP, CLS, INP, FCP, TTFB. They look technical, but each one answers a simple question about how your page feels to a real person.</p>
<p>This guide explains them in plain English, then shows how to pull the same numbers automatically using Google's free PageSpeed Insights API.</p>
<p>The three metrics Google cares most about</p>
<p>Google calls these the Core Web Vitals. They're the ones that count as a ranking signal, so they're worth understanding first.</p>
<ol>
<li><p>LCP (Largest Contentful Paint): "How fast does the main content show up?" It measures how long it takes for the biggest visible thing on the page (usually a hero image or a big headline) to appear. If it takes forever, visitors stare at a blank or half-loaded screen.</p>
</li>
<li><p>INP (Interaction to Next Paint): "How fast does the page react when I click?" You tap a button, open a menu, or type in a field. INP measures the delay before the page visibly responds. A laggy page feels broken even if it loaded quickly.</p>
</li>
<li><p>CLS (Cumulative Layout Shift): "Does the page jump around?" You're about to tap a link, then an ad loads above it and everything shifts down, and you tap the wrong thing. CLS scores how much stuff moves unexpectedly while the page loads.</p>
</li>
</ol>
<p>What counts as "good" Metric Good Needs work Poor LCP under 2.5 s 2.5 to 4 s over 4 s INP under 200 ms 200 to 500 ms over 500 ms CLS under 0.1 0.1 to 0.25 over 0.25</p>
<p>A quick note: you'll still see FID (First Input Delay) in older articles and tools. INP replaced it as the official responsiveness metric, so focus on INP.</p>
<p>Two helper metrics worth knowing</p>
<p>These aren't "core," but they help you find why the main ones are slow.</p>
<p>FCP (First Contentful Paint): when the very first piece of content appears. If this is slow, the problem starts early. TTFB (Time to First Byte): how long your server takes to start responding. A slow TTFB (often bad hosting or no caching) drags every other metric down with it. Two kinds of data: lab vs. field</p>
<p>This trips up a lot of people. PageSpeed gives you two different types of results:</p>
<p>Lab data: a simulated test run on Google's servers, right now. Great for debugging because it's repeatable. Field data: real measurements from actual Chrome users who visited your site over the past 28 days. This is what Google uses for ranking.</p>
<p>If your lab score looks great but your field data is poor, real visitors (maybe on slower phones or networks) are having a worse time than the test suggests. Always look at both.</p>
<p>How to check them with the PageSpeed Insights API</p>
<p>You can use the web tool at pagespeed.web.dev, but if you want to check many pages, track changes over time, or build your own dashboard, the free API is the way to go.</p>
<p>Step 1: Get an API key. Create a project in Google Cloud Console, enable the "PageSpeed Insights API," and generate a key. It's free for normal usage.</p>
<p>Step 2: Make a request. The API is just a web address you call with the page you want tested:</p>
<p><a href="https://www.googleapis.com/pagespeedonline/v5/runPagespeed">https://www.googleapis.com/pagespeedonline/v5/runPagespeed</a> ?url=<a href="https://example.com">https://example.com</a> &amp;strategy=mobile &amp;category=performance &amp;key=YOUR_API_KEY</p>
<p>strategy can be mobile or desktop. Mobile is the one that matters most, since Google indexes the mobile version of your site first.</p>
<p>Step 3: Read the results. The response is a big chunk of data. The useful parts are:</p>
<p>Lab metrics: lighthouseResult.audits (look for largest-contentful-paint, cumulative-layout-shift, first-contentful-paint, and so on) Field metrics: loadingExperience.metrics (real-user data, including LCP, CLS, and INP)</p>
<p>Here's a simple example in JavaScript:</p>
<p><mark class="bg-yellow-200 dark:bg-yellow-500/30">javascript async function checkVitals(pageUrl, apiKey) { const endpoint = "<a href="https://www.googleapis.com/pagespeedonline/v5/runPagespeed">https://www.googleapis.com/pagespeedonline/v5/runPagespeed</a>" + ?url=\({encodeURIComponent(pageUrl)}&amp;strategy=mobile&amp;key=\){apiKey};</mark></p>
<p><mark class="bg-yellow-200 dark:bg-yellow-500/30">const res = await fetch(endpoint); const data = await res.json();</mark></p>
<p><mark class="bg-yellow-200 dark:bg-yellow-500/30">const audits = data.lighthouseResult.audits;</mark></p>
<p><mark class="bg-yellow-200 dark:bg-yellow-500/30">return { lcp: audits["largest-contentful-paint"].displayValue, cls: audits["cumulative-layout-shift"].displayValue, fcp: audits["first-contentful-paint"].displayValue, score: data.lighthouseResult.categories.performance.score * 100, }; }</mark></p>
<p><mark class="bg-yellow-200 dark:bg-yellow-500/30">checkVitals("<a href="https://example.com">https://example.com</a>", "YOUR_API_KEY").then(console.log);</mark> One important rule: keep your API key off the browser</p>
<p>If you build a tool that calls this API, never put your key directly in front-end code. Anyone can open their browser's developer tools, copy it, and use up your quota.</p>
<p>The safe approach is to have a small server-side piece sit in the middle: your page calls your server, your server calls Google using the secret key, and then passes the results back. In Next.js, this is what an API route does. The key stays on the server, and visitors never see it.</p>
<p>What I learned building a tool around this</p>
<p>I built a Core Web Vitals checker with Next.js on top of this API. A few lessons that apply to anyone attempting something similar:</p>
<p>Show the numbers in context. A raw "LCP: 3.1 s" means nothing to most people. Pairing each number with a good / needs work / poor label makes the report instantly readable. Be ready for slow responses. The API runs a real test, so it can take 10 to 30 seconds. Show a loading state so people know it's working. Handle missing field data. Small or new sites often don't have enough real-user data, so the field section comes back empty. Don't treat that as an error. Just fall back to lab data and say so. Keep it light. A performance tool that's itself slow defeats the purpose, so I kept the interface free of heavy UI libraries. Quick fixes for the most common problems If this is bad... Try this first LCP Compress and properly size your hero image, use modern formats like WebP, and add caching INP Cut down heavy JavaScript and remove unused plugins or scripts CLS Set width and height on images and ad slots so the browser reserves space TTFB Better hosting, server-side caching, or a CDN The takeaway</p>
<p>Core Web Vitals sound intimidating, but they boil down to three questions: Is it fast to appear? Is it quick to respond? Does it stay still? Check them with the PageSpeed Insights API, look at both lab and field data, and fix the biggest problem first. Small wins on mobile add up quickly.</p>
<p>Muhammad Habban writes about technical SEO, web development, and building practical tools. <a href="https://www.linkedin.com/in/muhammad-habban1/">Connect on LinkedIn</a>.</p>
]]></content:encoded></item></channel></rss>