<?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[Altmash Rangrez]]></title><description><![CDATA[Altmash Rangrez]]></description><link>https://blog.altmash.me</link><generator>RSS for Node</generator><lastBuildDate>Fri, 05 Jun 2026 22:07:56 GMT</lastBuildDate><atom:link href="https://blog.altmash.me/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[The npm Supply Chain Attack: What Happened and How We (Hopefully) Dodge the Next One]]></title><description><![CDATA[Over the past few weeks, this npm situation has been everywhere, circling the same questions: which packages are safe, and how far did this thing has spread. It’s not just headlines, folks around us have been double checking lockfiles, rotating token...]]></description><link>https://blog.altmash.me/the-npm-supply-chain-attack-what-happened-and-how-we-hopefully-dodge-the-next-one</link><guid isPermaLink="true">https://blog.altmash.me/the-npm-supply-chain-attack-what-happened-and-how-we-hopefully-dodge-the-next-one</guid><category><![CDATA[#cybersecurity]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Sun, 21 Sep 2025 12:55:09 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1758458262084/0c86c158-ae11-4b49-9b09-1885c3374740.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Over the past few weeks, this npm situation has been everywhere, circling the same questions: which packages are safe, and how far did this thing has spread. It’s not just headlines, folks around us have been double checking lockfiles, rotating tokens, and pausing deploys while they figure out if anything slipped in. This post breaks down what a supply chain hack actually is, what’s going on with the npm wave right now, and the practical steps that help keep projects out of the blast radius.</p>
<h2 id="heading-whats-a-supply-chain-hack-anyway">What’s a Supply Chain Hack Anyway?</h2>
<p>Picture this: instead of attacking a big company head-on, hackers sneak in through smaller partners, software, or services those companies trust. That’s a supply chain hack. If one of the links in the chain gets infected, anything or anyon who relies on that link risks getting hit too. It’s basically like poisoning the town’s water tank instead of everyone’s individual mug.</p>
<h2 id="heading-heres-how-this-npm-thing-went-down">Here’s How This npm Thing Went Down</h2>
<p>Recently, some hackers started targeting software developers who control popular npm packages. They tricked these devs into giving up access to their npm accounts, usually through phishing.<br />Once the bad guys get in, they add malware scripts into the npm package code. When someone installs a tainted package, the malware:</p>
<ul>
<li><p>Tries to steal secret info (API keys, tokens, all the keys-to-the-castle stuff) from your system.</p>
</li>
<li><p>Uses anything it finds (especially npm tokens) to hijack more accounts, which lets it infect even more packages like a worm that spreads by itself.</p>
</li>
<li><p>Automatically pushes malicious code to even more places, keeping its infection rolling with almost no human input.</p>
</li>
</ul>
<p>This spread insanely fast, and pretty soon, hundreds of npm packages were affected. A ton of big-name projects were on the list too (no one is safe, apparently).</p>
<ul>
<li><h2 id="heading-how-to-protect-yourself-and-your-projects">How to Protect Yourself (and Your Projects)</h2>
</li>
<li><ul>
<li><p><strong>Audit dependencies regularly:</strong> Check which packages are used in projects and compare them against lists of known compromised packages.</p>
<ul>
<li><p><strong>Use lockfiles and pin versions:</strong> Require "lockfiles" (like package-lock.json) to be used and pin packages to known-safe versions. This helps stop new or tainted versions from sneaking in.</p>
</li>
<li><p><strong>Disable or review install scripts:</strong> Use options to ignore install scripts or only allow them from trusted sources. Many attacks rely on post-install scripts to execute malware.</p>
</li>
<li><p><strong>Rotate secrets and tokens:</strong> If compromised packages are found, quickly change all API keys, npm tokens, and other sensitive credentials just in case they were stolen.</p>
</li>
<li><p><strong>Monitor for suspicious activity:</strong> Watch out for unusual new repositories, workflows, or outbound connections from developer environment these could be signs of a spreading malware worm.</p>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2 id="heading-final-thoughts">Final Thoughts</h2>
<p>    Software supply chains are super useful, but they’re also a juicy target for attackers. All this npm chaos is proof we need to stay sharp and double check what goes into our projects. Hopefully, this makes sense and helps a bit. If you work with npm or open source at all, now’s the time to be cautious, keep things updated, and lock down those secrets!</p>
]]></content:encoded></item><item><title><![CDATA[DeepSeek R1: The Open-Source AI Revolution]]></title><description><![CDATA[DeepSeek R1: The AI Revolution That Almost Wiped $1 Trillion Off the Market
Artificial Intelligence always excites me, but sometimes comes a moment when everything gets absolutely blown out of the water. DeepSeek R1 is such a moment. From the Chinese...]]></description><link>https://blog.altmash.me/deepseek-r1-the-open-source-ai-revolution</link><guid isPermaLink="true">https://blog.altmash.me/deepseek-r1-the-open-source-ai-revolution</guid><category><![CDATA[#cybersecurity]]></category><category><![CDATA[AI]]></category><category><![CDATA[Deepseek]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Tue, 28 Jan 2025 20:04:14 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1738093233351/81d5fe6f-cc60-4782-b300-5ca6bac72ae6.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>DeepSeek R1: The AI Revolution That Almost Wiped $1 Trillion Off the Market</strong></p>
<p>Artificial Intelligence always excites me, but sometimes comes a moment when everything gets absolutely blown out of the water. DeepSeek R1 is such a moment. From the Chinese firm DeepSeek, this state-of-the-art AI model is changing the paradigm for reasoning and solving problems and it made waves big enough to wipe almost $1 trillion from the market. Let's explore what makes this so unique and special</p>
<p><strong>What Is DeepSeek R1?</strong></p>
<p>DeepSeek R1 isn’t an average AI model. It’s designed for heavy duty reasoning tasks, mathematics, logic, and coding but what truly sets it apart is how it learns. Unlike most LLM models that rely on tons of labeled data, DeepSeek R1 uses <strong>reinforcement learning</strong> as its backbone. This means the model explores solutions on its own, self-verifies outputs, and keeps improving through a "chain-of-thought" reasoning process. That’s fascinating to me because it feels closer to how we humans tackle problems.</p>
<p>This isn’t just another AI model, DeepSeek R1 is a serious contender. Its systematic approach to problem-solving and reasoning has put it in direct competition with industry leaders like OpenAI, with accuracy levels that are mind-blowing.</p>
<h3 id="heading-the-1-trillion-shockwave"><strong>The $1 Trillion Shockwave</strong></h3>
<p>Now, here’s where things get wild. When DeepSeek R1 launched, it sent shockwaves through global markets. Investors realized just how disruptive it could be, and suddenly, they were reevaluating their stakes in AI-heavy companies. Shares of giants like NVIDIA took a hit, with NVIDIA’s valuation dropping nearly 18%.</p>
<p>Why such a dramatic reaction? The kicker is that DeepSeek R1 is <strong>open-source</strong>. Released under the MIT license, it’s open for anyone, from startups to individual developers, to tinker with and build upon. That’s huge. It means the AI monopoly held by big players is now being challenged, and the barrier to entry for smaller teams just got a lot lower. This democratization of AI levels the playing field and, in doing so, completely changes the game.</p>
<h3 id="heading-running-deepseek-r1-on-a-personal-laptop"><strong>Running DeepSeek R1 on a Personal Laptop</strong></h3>
<p>This part genuinely blew my mind. The idea that I could run something as powerful as DeepSeek R1 on my MacBook Air felt unreal. But it’s true. Thanks to tools like <strong>Ollama</strong> and <strong>Open Web UI</strong>, setting up and running this model has been made incredibly simple.</p>
<p>These platforms are optimized for lightweight versions of the model (I personally used the 1.5 bilion parameters model), which work even on resource constrained devices. Using the lightest model I was able to easily:</p>
<ul>
<li><p>Write and debug advanced scripts effortlessly.</p>
</li>
<li><p>Experiment with logical reasoning scenarios that felt out of reach before.</p>
</li>
</ul>
<p>What’s astonishing is how accessible this technology has become. A few years ago, running a model of this caliber would’ve required enterprise grade hardware. Now, I’m sitting here with my laptop, casually working with it that’s the power of progress.</p>
<h3 id="heading-privacy-and-data-ownership"><strong>Privacy and Data Ownership</strong></h3>
<p>One of the standout benefits of running DeepSeek R1 locally is the control it gives you over your data. If you’re someone who’s cautious about sharing sensitive information with big tech companies, this model is a game-changer. Since it operates entirely on your device, you don’t need to worry about your data being sent to cloud servers or being analyzed by third parties. This makes DeepSeek R1 an excellent choice for professionals working with sensitive or proprietary information who still want the power of advanced AI without compromising privacy.</p>
<h3 id="heading-implications-for-cybersecurity"><strong>Implications for Cybersecurity</strong></h3>
<p>As someone passionate about cybersecurity, I can’t help but imagine the potential applications of DeepSeek R1 in this field. Its reasoning and self-verification abilities could change the game in areas like:</p>
<ol>
<li><p><strong>Threat Detection and Analysis</strong>:</p>
<ul>
<li>Automating malware analysis and providing detailed, actionable insights.</li>
</ul>
</li>
<li><p><strong>Vulnerability Assessment</strong>:</p>
<ul>
<li>Pinpointing system and code weaknesses with impressive precision.</li>
</ul>
</li>
<li><p><strong>Incident Response</strong>:</p>
<ul>
<li>Streamlining forensic investigations and creating step-by-step remediation plans.</li>
</ul>
</li>
<li><p><strong>Threat Intelligence</strong>:</p>
<ul>
<li>Correlating large datasets to predict emerging threats and trends.</li>
</ul>
</li>
</ol>
<p>Having tools like DeepSeek R1 in the arsenal of cybersecurity professionals could mean faster threat detection, smarter response times, and overall stronger defenses. It’s an exciting prospect that could redefine how we approach digital security.</p>
<h3 id="heading-conclusion"><strong>Conclusion</strong></h3>
<p>DeepSeek R1 is certainly more than any other AI model: it a paradigm shift. Rattling the stock market and giving some guys like me a chance to run advanced models on personal laptops shows how transformative this technology really is.</p>
<p>For me, experimenting with DeepSeek R1 has been a humbling reminder of how far we’ve come. The fact that I can explore its capabilities from my laptop speaks a lot about the democratization of technology and Its potential in fields like cybersecurity and beyond only adds to its appeal.</p>
<p>If you haven’t tried it yet, what are you waiting for? The future of AI is here, and it’s within reach even from the comfort of your own laptop.</p>
]]></content:encoded></item><item><title><![CDATA[Private DNS on AWS using Pi-hole]]></title><description><![CDATA[Pi-hole is an open-source application that serves as a DNS sinkhole that blocks advertisements. It uses publicly available lists to block queries from common ad domains making them unavailable on the website that you are looking at. Because it’s bloc...]]></description><link>https://blog.altmash.me/private-dns-on-aws-using-pi-hole</link><guid isPermaLink="true">https://blog.altmash.me/private-dns-on-aws-using-pi-hole</guid><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Fri, 14 Jul 2023 18:30:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1745669734281/0c2136d7-3b5d-41b5-8cd6-97968caff87f.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Pi-hole is an open-source application that serves as a DNS sinkhole that blocks advertisements. It uses publicly available lists to block queries from common ad domains making them unavailable on the website that you are looking at. Because it’s blocking queries to those servers the performance of the network increases due to not waiting to fetch a resource. Another bonus is that you can block sites that you don’t want to be accessed in your network.</p>
<p>The ideal scenario for Pi-hole is to set up a Raspberry-pi on your local network, Install pi-hole on it and use it as a DNS. But here I will show you how you can set up a pi-hole on an AWS EC2 instance (free tier).</p>
<p><strong><em>NOTE: Pi-hole will not block ads on YouTube, Facebook, Twitch, etc as they stream Content and ads from the same server</em></strong></p>
<h4 id="heading-steps-to-setup-pi-hole">Steps to Setup Pi-hole</h4>
<p><strong>Step 1.</strong> Login to your AWS Management Console, Go to EC2 instances, and click on Launch Instance</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745669722697/7765c64a-0a2c-4fc1-8812-d2271cecc252.jpeg" alt /></p>
<p><strong>Step 2.</strong> Choose Ubuntu 20.4 as your AMI.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745669724053/b6807676-f60c-4468-842b-bc05bfb7cd05.jpeg" alt /></p>
<p><strong>Step 3.</strong> Choose t2.micro (free tier) for instance type and click Review and Launch.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745669725704/8cdb0c8b-b0b0-48cd-a276-3cb818d3215c.jpeg" alt /></p>
<p><strong>Step 4</strong>. Select a key pair for your instance. If you don’t have a key pair then create a new pair and Launch Instance.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745669727582/b28975f0-0e12-4ea9-b149-b48adc409d29.jpeg" alt /></p>
<p><strong>Step 6.</strong> Connect/SSH to your Instance<br />Go to your AWS Console, Select your Instance → Actions → Connect, On the next page Select EC2 Instance Connect and click on Connect.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745669729019/faaf274a-a6eb-4b77-97c0-1b848b8afc3d.jpeg" alt /></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745669730268/f12e9f7a-4d7a-4c04-a438-a6349a3c82b0.jpeg" alt /></p>
<p><em>You can also SSH to your instance using PuTTY.</em></p>
<p><strong>Step 7.</strong> Install Pi-hole<br />Use the following command for One-step Automated Install</p>
<pre><code class="lang-plaintext">curl -sSL https://install.pi-hole.net | bash
</code></pre>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745669731523/75d49e2a-6498-4599-98e9-d2fd72a239ea.jpeg" alt /></p>
<p><em>After running this command Pi-hole will be automatically installed in few seconds, after installation a configuration interface will appear.</em></p>
<p><strong>Step 8.</strong> Configure Pi-hole<br />Choose Your Preferred DNS</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745669732814/3d81c4bb-5e6e-46c4-a318-ebcab3645655.jpeg" alt /></p>
<p>*I personally prefer Cloudflare but you can choose Google or any other of your choice<br />*<strong><em>Leave the rest of the settings to default.</em></strong></p>
<p><strong>Step 9.</strong> Set Password for Web Interface<br />Run the following Command to Set a new password</p>
<p>sudo pihole -a -p</p>
<h4 id="heading-configure-devices-to-use-pi-hole-as-your-dns">Configure devices to use Pi-hole as your DNS</h4>
<p>Go to your AWS Console and copy your instance Public IP address<br />Go to your Router Settings and change your DNS IP address to the IP address of your Instance<br /><em>Some routers don't have a DNS setting in that case you have to change your DHCP server IP address to your instance IP address</em></p>
<p>If you don’t have a router or you are not on your home network, you can just go to your device’s network settings and just change your DNS IP address to the IP address of your instance.<br />For android devices, you have to install the <a target="_blank" href="https://play.google.com/store/apps/details?id=com.frostnerd.dnschanger&amp;hl=en_US&amp;gl=US">DNS Changer app</a> (No ads) to Use your Pi-hole as your DNS. <em>(only when you are not on your home network or you are using mobile data)</em></p>
<p><strong><em>NOTE: Make sure to add 8.8.8.8 or 1.1.1.1 as your Secondary DNS, Just in case if your instance crashes or something else happens, you still be able to access the internet without any problem.</em></strong></p>
<h4 id="heading-how-to-access-pi-hole-web-interface">How to access Pi-hole Web Interface?</h4>
<p>Go to “your.instance.ip.address/admin”<br />Example - 1.2.3.4/admin</p>
<h4 id="heading-pro-tips">Pro Tips</h4>
<ul>
<li><p>Pi-hole is advertised as an adblocker but you can add more “Adlist” to block tackers and malicious Websites.</p>
</li>
<li><p>If you want to make your connection more secure and private, you can just fire up another EC2 instance with an OpenVPN or Wireguard and just set up your Pi-hole instance to only listen to your VPN instance.</p>
</li>
<li><p>You can install few python scripts on your instance to block ads on youtube or on any other streaming services.</p>
</li>
</ul>
<p>If you find any difficulty in any step or you face any problem just leave a comment here, I’ll try my best to solve your problem</p>
<p>If you find this helpful please consider clapping and following me on <a target="_blank" href="https://twitter.com/altmash07">Twitter</a> :)</p>
]]></content:encoded></item><item><title><![CDATA[InternSkill – Android App for Internship Seekers]]></title><description><![CDATA[About the Project:InternSkill is a Flutter-based Android app that I developed to help students and early-career professionals discover internship opportunities and free courses from top global companies like Microsoft, Google, and Amazon. The app aim...]]></description><link>https://blog.altmash.me/internskill-android-app-for-internship-seekers</link><guid isPermaLink="true">https://blog.altmash.me/internskill-android-app-for-internship-seekers</guid><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Wed, 31 May 2023 18:30:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1745677160909/e4155935-b44f-47ee-b2de-189aeea48008.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>About the Project:</strong><br />InternSkill is a Flutter-based Android app that I developed to help students and early-career professionals discover internship opportunities and free courses from top global companies like Microsoft, Google, and Amazon. The app aimed to simplify the search process by offering curated daily updates and a community space for users to learn and connect.</p>
<p><strong>Inspiration:</strong><br />Navigating the world of internships can be overwhelming, with scattered resources and outdated listings. I wanted to create a focused, reliable platform that keeps users informed without the noise — a place where aspiring professionals could find opportunities and grow together.</p>
<p><strong>Key Features:</strong></p>
<ul>
<li><p>📢 <strong>Daily Internship &amp; Course Updates</strong>: Curated listings from leading companies.</p>
</li>
<li><p>🔔 <strong>Instant Notifications</strong>: Stay ahead with real-time updates powered by Firebase Cloud Messaging.</p>
</li>
<li><p>🧑‍🤝‍🧑 <strong>Community Forum</strong>: Engage, share knowledge, and build connections.</p>
</li>
<li><p>🔒 <strong>Privacy-Centric</strong>: No unnecessary data collection — user trust was a core principle.</p>
</li>
</ul>
<p><strong>Technical Stack:</strong></p>
<ul>
<li><p><strong>Flutter</strong> (Frontend framework)</p>
</li>
<li><p><strong>Firebase</strong> (Realtime Database and Cloud Messaging)</p>
</li>
<li><p><strong>Play Store Distribution</strong></p>
</li>
</ul>
<p><strong>Launch &amp; Impact:</strong><br />InternSkill crossed <strong>1,000+ downloads within just 2 months</strong> of its release, reflecting the real need for a streamlined internship discovery platform. It was incredibly rewarding to see the community grow and engage through something I built from scratch.</p>
<p><strong>What I Learned:</strong><br />This project was a major milestone in my development journey — from designing intuitive user experiences to integrating real-time updates and managing app scalability. It also deepened my expertise in Flutter and Firebase ecosystems.</p>
<hr />
<p><strong>A New Chapter:</strong><br />As my focus has expanded toward building even broader solutions and more ambitious projects, InternSkill has gracefully concluded its journey. While the app is no longer actively available, the experience and impact it created continue to inspire my future work.</p>
<hr />
]]></content:encoded></item><item><title><![CDATA[Twitter's Algorithm]]></title><description><![CDATA[Twitter revealed its algorithm to the world. But what does it mean for you? I spent this weekend analyzing it.Here’s what you need to know:Don't Miss the bonus point, it's wild 👀

Likes, then retweets, then replies Here’s the ranking parameters.
 • ...]]></description><link>https://blog.altmash.me/twitters-algorithm</link><guid isPermaLink="true">https://blog.altmash.me/twitters-algorithm</guid><category><![CDATA[algorithms]]></category><category><![CDATA[Twitter]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Sun, 02 Apr 2023 07:39:53 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1746376195182/fc2da651-8f38-4956-8c91-353a4501a916.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Twitter revealed its algorithm to the world. But what does it mean for you? I spent this weekend analyzing it.<br />Here’s what you need to know:<br />Don't Miss the bonus point, it's wild 👀</p>
<ol>
<li><p>Likes, then retweets, then replies<br /> Here’s the ranking parameters.</p>
<p> • Each like gets a 30x boost<br /> • Each retweet a 20x<br /> • Each reply only 1x</p>
<p> It’s much more impactful to earn likes and retweets than replies.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1680420490905/40dc8fb2-791b-45dc-9b22-4e9af23bc351.avif" alt class="image--center mx-auto" /></p>
</li>
<li><p>Images &amp; videos help<br /> Both images and videos lead to a nice 2x boost.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1680420504742/a32a66d0-f52e-405c-9f81-6e79bb10463b.avif" alt class="image--center mx-auto" /></p>
</li>
<li><p>Links hurt unless you have enough engagement<br /> Generally, external links get you marked as spam. Unless you have enough engagement.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1680420515879/a237bbe6-938a-4c71-b39e-bf3c3b1e4b97.avif" alt class="image--center mx-auto" /></p>
</li>
<li><p>Mutes &amp; unfollows hurt<br /> All of the following hurt your engagement:<br /> • Mutes<br /> • Blocks<br /> • Unfollows<br /> • Spam reports<br /> • Abuse reports</p>
<p> Personally, I was surprised by this, I always thought reporting a tweet was just a waste of time but turns out it did something.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1680420523617/de6bcc7d-1a38-4934-9ac0-830bce688dd5.avif" alt class="image--center mx-auto" /></p>
</li>
<li><p>Blue extends reach<br /> Paying the monthly fee gets you a healthy boost.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1680420529173/25c1323f-37c9-44e7-852a-8efce8f19995.avif" alt class="image--center mx-auto" /></p>
</li>
<li><p>Misinformation is highly down-ranked<br /> Anything that is categorized as misinformation gets the rug pulled out from under it.<br /> Surprisingly, so are posts about Ukraine.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1680420549482/fbadb53e-906c-4221-9c76-3366e29825e6.avif" alt class="image--center mx-auto" /></p>
</li>
<li><p>You are clustered into a group<br /> The algorithm puts you into a grouping of similar profiles.<br /> It uses that to extend tweet reach beyond your followers to similar people.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1680420558304/259afd9d-a0b7-4ed8-8581-4233f886cbd9.avif" alt class="image--center mx-auto" /></p>
</li>
<li><p>Posting outside your cluster hurts<br /> If you do “out of network” content, it’s not going to do as well.<br /> That’s why hammering home points about your niche works.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1680420569557/f9244875-23e9-4c10-930d-02bcfb228307.avif" alt class="image--center mx-auto" /></p>
</li>
<li><p>Making up words or misspelling hurts<br /> Words that are identified as “unknown language” are given 0.01, which is a huge penalty.<br /> Anything under 1 is bad.<br /> This is really bad.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1680420575925/ae38d9d8-347b-4d4a-a712-fdd21bfaa0f4.avif" alt class="image--center mx-auto" /></p>
</li>
<li><p>Followers, engagement &amp; user data are the three data points<br />If you take away anything, remember this - the models take in 3 inputs:<br />• Likes, retweets, replies: engagement data<br />• Mutes, unfollows, spam reports: user data<br />• Who follows you: the follower graph</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1680420583935/fe01f611-926f-4264-a8b2-665ae34888b8.avif" alt class="image--center mx-auto" /></p>
</li>
<li><p>Bonus Point<br />Elon is hard coded into the Twitter algorithm 👀 No wonder he appears everywhere on twitter.</p>
</li>
</ol>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1680420629622/9b69ba3a-b4f4-4087-a5ec-69f23ddd53a8.avif" alt class="image--center mx-auto" /></p>
<p><strong>In conclusion, understanding Twitter's algorithm can help users improve their engagement and reach on the platform. Focusing on earning likes and retweets, using images and videos, and avoiding negative actions can boost engagement. Paying for a verified account and avoiding misinformation and posting within your cluster can also help extend reach. Overall, while Twitter's algorithm may seem complex, paying attention to these key factors can help users succeed on the platform.</strong></p>
<p>If you find it helpful then make sure to hit that 🤍 and subscribe to my newsletter if you want see more stuff like this.<br />Thank you<br />Have a great day ahead.</p>
]]></content:encoded></item><item><title><![CDATA[Azure Networking services | Azure Fundamentals(Az-900) Part-7]]></title><description><![CDATA[What is Azure virtual networking?
Azure virtual networks allow Azure services, like  virtual machines, web applications, and databases, to connect with one other, as well as with internet users and on-premises client PCs. An Azure network is a collec...]]></description><link>https://blog.altmash.me/azure-networking-services-or-azure-fundamentalsaz-900-part-7</link><guid isPermaLink="true">https://blog.altmash.me/azure-networking-services-or-azure-fundamentalsaz-900-part-7</guid><category><![CDATA[Cloud Computing]]></category><category><![CDATA[Azure]]></category><category><![CDATA[Linux]]></category><category><![CDATA[AWS]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Tue, 23 Nov 2021 18:23:58 GMT</pubDate><content:encoded><![CDATA[<h3 id="heading-what-is-azure-virtual-networking">What is Azure virtual networking?</h3>
<p>Azure virtual networks allow Azure services, like  virtual machines, web applications, and databases, to connect with one other, as well as with internet users and on-premises client PCs. An Azure network is a collection of resources that work together to connect other Azure resources.</p>
<p>Some of the key networking functionalities that Azure virtual networks provide are listed below.</p>
<ul>
<li>Isolation and segmentation</li>
<li>Internet communications</li>
<li>Communicate between Azure resources</li>
<li>Communicate with on-premises resources</li>
<li>Route network traffic</li>
<li>Filter network traffic</li>
<li>Connect virtual networks</li>
</ul>
<h3 id="heading-azure-vpn-gateway-fundamentals">Azure VPN Gateway fundamentals</h3>
<h4 id="heading-what-is-a-vpn">What is a VPN?</h4>
<p>Virtual private network or VPNs function by creating an encrypted tunnel between two networks. They're most commonly used to join two or more trusted private networks over an insecure network (typically the public internet). To avoid eavesdropping or other attacks, traffic is encrypted while travelling across an untrusted network.</p>
<h4 id="heading-what-is-vpn-gateway">What is VPN Gateway?</h4>
<p>A virtual network gateway, or VPN gateway, is a specific form of virtual network gateway. Azure VPN Gateway instances are deployed in Azure Virtual Network instances and provide connection for the following</p>
<ul>
<li>Connect on-premises datacenters to virtual networks through a site-to-site connection.</li>
<li>Connect individual devices to virtual networks through a point-to-site connection.</li>
<li>Connect virtual networks to other virtual networks through a network-to-network connection.</li>
</ul>
<p>As the data travels across the internet, it is encrypted in a private tunnel. Each virtual network can only have one VPN gateway, but it can connect to multiple locations, such as other virtual networks or on-premises data centers, using one gateway.</p>
<p>When you deploy a VPN gateway, you specify the VPN type: either policy-based or route-based.</p>
<h4 id="heading-policy-based-policy">Policy based policy</h4>
<p>The IP address of packets that should be encrypted across each tunnel is specified statically by policy-based VPN gateways. This sort of device compares each data packet against those sets of IP addresses to determine which tunnel it should be transmitted through.</p>
<h4 id="heading-role-based-policy">Role based policy</h4>
<p>Route-based gateways can be utilised if determining which IP addresses are behind each tunnel is too difficult. IPSec tunnels are modelled as a network interface or virtual tunnel interface with route-based gateways. When transmitting each packet, IP routing (either static routes or dynamic routing protocols) determines which of these tunnel interfaces to utilise. For on-premises devices, route-based VPNs are the primary connection technique. They're more resistant to changes in topology, such as the addition of additional subnets.</p>
<p>Azure ExpressRoute
With the support of a connectivity provider, ExpressRoute enables you to expand your on-premises networks into the Microsoft cloud through a secure connection. You may connect to Microsoft cloud services like Azure and Microsoft 365 with ExpressRoute.
An IP VPN network, a point-to-point Ethernet network, or a virtual cross-connection through a colocation facility's connectivity provider are all options for connectivity. ExpressRoute connections are not made through the Internet. ExpressRoute connections can now provide more dependability, quicker speeds, consistent latencies, and stronger security than traditional Internet connections.</p>
]]></content:encoded></item><item><title><![CDATA[Azure compute services
 | Azure Fundamentals(Az-900) Part-6]]></title><description><![CDATA[Azure compute is a cloud computing solution that allows you to run cloud-based applications on demand. It offers storage, processors, memory, networking, and operating systems as well as other computing resources. The resources are available on deman...]]></description><link>https://blog.altmash.me/azure-compute-services-or-azure-fundamentalsaz-900-part-6</link><guid isPermaLink="true">https://blog.altmash.me/azure-compute-services-or-azure-fundamentalsaz-900-part-6</guid><category><![CDATA[Azure]]></category><category><![CDATA[Cloud Computing]]></category><category><![CDATA[2Articles1Week]]></category><category><![CDATA[Linux]]></category><category><![CDATA[AWS]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Wed, 22 Sep 2021 05:06:43 GMT</pubDate><content:encoded><![CDATA[<p>Azure compute is a cloud computing solution that allows you to run cloud-based applications on demand. It offers storage, processors, memory, networking, and operating systems as well as other computing resources. The resources are available on demand and may usually be accessed within minutes or seconds. You only pay for the resources that you use, and only for the time that you utilize them.</p>
<p>Azure offers a variety of computing solutions for development and testing, application deployment, and datacenter expansion. Linux, Windows Server, SQL Server, Oracle, IBM, and SAP are all supported by the service. Many Azure services can also run virtual machines (VMs). Depending on your needs, each service offers different possibilities. The following are some of the most well-known services:</p>
<ul>
<li>Azure Virtual Machines</li>
<li>Azure Container Instances</li>
<li>Azure App Service</li>
<li>Azure Functions (or serverless computing)</li>
</ul>
<h4 id="virtual-machines">Virtual machines</h4>
<p>Virtual machines are computer simulations that run on software. A virtual CPU, memory, storage, and networking resources are all included. Virtual machines (VMs) run an operating system and allow you to install and run software much like a real computer. You can use and operate the virtual machine as if you were sitting in front of it while utilizing a remote desktop client.</p>
<h4 id="virtual-machine-scale-sets">Virtual machine scale sets</h4>
<p>Scale sets are an Azure compute resource that may be used to deploy and manage a group of identical virtual machines. Virtual machine scale sets are meant to provide real autoscale when all VMs are setup the same. Virtual machines do not need to be pre-provisioned. As a result, developing large-scale services for big computing, big data, and containerized workloads is easy. More VM instances can be added as demand grows. VM instances can be withdrawn when demand decreases. The procedure might be manual, automated, or a hybrid of the two.</p>
<h4 id="containers-and-kubernetes">Containers and Kubernetes</h4>
<p>You may leverage Azure compute resources like Container Instances and Azure Kubernetes Service to deploy and manage containers. Containers are virtualized application environments that are lightweight. They're built to be dynamically formed, scaled out, and stopped. On a single host machine, you can run many instances of a containerized application.</p>
<h4 id="app-service">App Service</h4>
<p>App Service is a platform as a service (PaaS) offering. You can easily design, deploy, and scale enterprise-grade web, mobile, and API apps on any platform with Azure App Service. When you use a fully managed platform to execute infrastructure maintenance, you can meet stringent performance, scalability, security, and compliance requirements.</p>
<h4 id="functions">Functions</h4>
<p>When you simply care about the code that runs your service and not the underlying platform or infrastructure, functions are great. They're frequently used when you need to respond to an event (typically via a REST request), a timer, or a message from another Azure service, and the job can be accomplished rapidly, in seconds or less.</p>
]]></content:encoded></item><item><title><![CDATA[Introduction to Azure services  | Azure Fundamentals(Az-900) Part-5]]></title><description><![CDATA[Here is the list of some commonly used Azure services Categories

Compute
Networking
Storage
Databases
Web
Internet of Things (IoT)
Big data
AI
DevOps

Compute
One of the most common reasons for enterprises to migrate to the Azure platform is for com...]]></description><link>https://blog.altmash.me/introduction-to-azure-services-or-azure-fundamentalsaz-900-part-5</link><guid isPermaLink="true">https://blog.altmash.me/introduction-to-azure-services-or-azure-fundamentalsaz-900-part-5</guid><category><![CDATA[Azure]]></category><category><![CDATA[Cloud Computing]]></category><category><![CDATA[Databases]]></category><category><![CDATA[networking]]></category><category><![CDATA[iot]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Sun, 19 Sep 2021 13:02:44 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1632056400933/2Jo6f04jo.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h4 id="here-is-the-list-of-some-commonly-used-azure-services-categories">Here is the list of some commonly used Azure services Categories</h4>
<ul>
<li>Compute</li>
<li>Networking</li>
<li>Storage</li>
<li>Databases</li>
<li>Web</li>
<li>Internet of Things (IoT)</li>
<li>Big data</li>
<li>AI</li>
<li>DevOps</li>
</ul>
<h3 id="compute">Compute</h3>
<p>One of the most common reasons for enterprises to migrate to the Azure platform is for compute services. Azure offers a variety of hosting choices for apps and services. Here are a few instances of Azure compute services.</p>
<h4 id="azure-virtual-machines">Azure Virtual Machines</h4>
<p>Windows or Linux virtual machines (VMs) hosted in Azure.</p>
<h4 id="azure-virtual-machine-scale-sets">Azure Virtual Machine Scale Sets</h4>
<p>Scaling for Windows or Linux VMs hosted in Azure.</p>
<h4 id="azure-kubernetes-service">Azure Kubernetes Service</h4>
<p>Cluster management for VMs that run containerized services.</p>
<h4 id="azure-service-fabric">Azure Service Fabric</h4>
<p>Distributed systems platform that runs in Azure or on-premises.</p>
<h4 id="azure-batch">Azure Batch</h4>
<p>Managed service for parallel and high-performance computing applications.</p>
<h4 id="azure-container-instances">Azure Container Instances</h4>
<p>Containerized apps run on Azure without provisioning servers or VMs.</p>
<h4 id="azure-functions">Azure Functions</h4>
<p>An event-driven, serverless compute service.</p>
<h3 id="networking">Networking</h3>
<p>Azure networking's primary job is to connect compute resources and provide access to apps. Azure's networking capabilities include a variety of methods for connecting the outside world to services and features in Azure's global datacenters.</p>
<h4 id="azure-virtual-network">Azure Virtual Network</h4>
<p>Connects VMs to incoming virtual private network (VPN) connections.</p>
<h4 id="azure-load-balancer">Azure Load Balancer</h4>
<p>Balances inbound and outbound connections to applications or service endpoints.</p>
<h4 id="azure-application-gateway">Azure Application Gateway</h4>
<p>Optimizes app server farm delivery while increasing application security.</p>
<h4 id="azure-vpn-gateway">Azure VPN Gateway</h4>
<p>Accesses Azure Virtual Networks through high-performance VPN gateways.</p>
<h4 id="azure-dns">Azure DNS</h4>
<p>Provides ultra-fast DNS responses and ultra-high domain availability.</p>
<h4 id="azure-content-delivery-network">Azure Content Delivery Network</h4>
<p>Delivers high-bandwidth content to customers globally.</p>
<h4 id="azure-ddos-protection">Azure DDoS Protection</h4>
<p>Protects Azure-hosted applications from distributed denial of service (DDOS) attacks.</p>
<h4 id="azure-traffic-manager">Azure Traffic Manager</h4>
<p>Distributes network traffic across Azure regions worldwide.</p>
<h4 id="azure-expressroute">Azure ExpressRoute</h4>
<p>Connects to Azure over high-bandwidth dedicated secure connections.</p>
<h4 id="azure-network-watcher">Azure Network Watcher</h4>
<p>Monitors and diagnoses network issues by using scenario-based analysis.</p>
<h4 id="azure-firewall">Azure Firewall</h4>
<p>Implements high-security, high-availability firewall with unlimited scalability.</p>
<h4 id="azure-virtual-wan">Azure Virtual WAN</h4>
<p>Creates a unified wide area network (WAN) that connects local and remote sites.</p>
<h3 id="storage">Storage</h3>
<p>Azure provides four main types of storage services.</p>
<h4 id="azure-blob-storage">Azure Blob storage</h4>
<p>Storage service for very large objects, such as video files or bitmaps.</p>
<h4 id="azure-file-storage">Azure File storage</h4>
<p>File shares that can be accessed and managed like a file server.</p>
<h4 id="azure-queue-storage">Azure Queue storage</h4>
<p>A data store for queuing and reliably delivering messages between applications.</p>
<h4 id="azure-table-storage">Azure Table storage</h4>
<p>Table storage is a service that stores non-relational structured data (also known as structured NoSQL data) in the cloud, providing a key/attribute store with a schemaless design.</p>
<h3 id="databases">Databases</h3>
<p>Multiple database services are available in Azure to store a wide range of data types and volumes. And, thanks to worldwide connectivity, users may access this information immediately.</p>
<h4 id="azure-cosmos-db">Azure Cosmos DB</h4>
<p>Globally distributed database that supports NoSQL options.</p>
<h4 id="azure-sql-database">Azure SQL Database</h4>
<p>Fully managed relational database with auto-scale, integral intelligence, and robust security.</p>
<h4 id="azure-database-for-mysql">Azure Database for MySQL</h4>
<p>Fully managed and scalable MySQL relational database with high availability and security.</p>
<h4 id="azure-database-for-postgresql">Azure Database for PostgreSQL</h4>
<p>Fully managed and scalable PostgreSQL relational database with high availability and security.</p>
<h4 id="sql-server-on-azure-virtual-machines">SQL Server on Azure Virtual Machines</h4>
<p>Service that hosts enterprise SQL Server apps in the cloud.</p>
<h4 id="azure-synapse-analytics">Azure Synapse Analytics</h4>
<p>Fully managed data warehouse with integral security at every level of scale at no extra cost.</p>
<h4 id="azure-database-migration-service">Azure Database Migration Service</h4>
<p>Service that migrates databases to the cloud with no application code changes.</p>
<h4 id="azure-cache-for-redis">Azure Cache for Redis</h4>
<p>Fully managed service caches frequently used and static data to reduce data and application latency.</p>
<h4 id="azure-database-for-mariadb">Azure Database for MariaDB</h4>
<p>Fully managed and scalable MariaDB relational database with high availability and security.</p>
<h3 id="web">Web</h3>
<p>In today's business world, having a strong web experience is essential. Web apps and HTTP-based web services are built and hosted with first-class support in Azure. Web hosting is the focus of the following Azure services.</p>
<h4 id="azure-app-service">Azure App Service</h4>
<p>Quickly create powerful cloud web-based apps.</p>
<h4 id="azure-notification-hubs">Azure Notification Hubs</h4>
<p>Send push notifications to any platform from any back end.</p>
<h4 id="azure-api-management">Azure API Management</h4>
<p>Publish APIs to developers, partners, and employees securely and at scale.</p>
<h4 id="azure-cognitive-search">Azure Cognitive Search</h4>
<p>Deploy this fully managed search as a service.</p>
<h4 id="web-apps-feature-of-azure-app-service">Web Apps feature of Azure App Service</h4>
<p>Create and deploy mission-critical web apps at scale.</p>
<h4 id="azure-signalr-service">Azure SignalR Service</h4>
<p>Add real-time web functionalities easily.</p>
<h3 id="iot">IoT</h3>
<p>People now have more information at their fingertips than ever before. Smartphones evolved from personal digital assistants, and today smart watches, smart thermostats, and even smart refrigerators are available. Personal computers were once the standard. Any item that is online-capable can now access vital information thanks to the internet. IoT refers to a device's ability to gather and then relay information for data analysis.</p>
<h4 id="iot-central">IoT Central</h4>
<p>Fully managed global IoT software as a service (SaaS) solution that makes it easy to connect, monitor, and manage IoT assets at scale.</p>
<h4 id="azure-iot-hub">Azure IoT Hub</h4>
<p>Messaging hub that provides secure communications between and monitoring of millions of IoT devices.</p>
<h4 id="iot-edge">IoT Edge</h4>
<p>Fully managed service that allows data analysis models to be pushed directly onto IoT devices, which allows them to react quickly to state changes without needing to consult cloud-based AI models.</p>
<h3 id="big-data">Big data</h3>
<p>Data is available in a variety of forms and sizes. When we talk about big data, we're talking about vast amounts of information. Hundreds of gigabytes of data are generated by weather systems, communications systems, genetic research, imaging platforms, and a variety of other scenarios. With so much data, it's difficult to assess and make decisions. It's frequently so vast that typical processing and analysis methods are no longer adequate.</p>
<h4 id="azure-synapse-analytics">Azure Synapse Analytics</h4>
<p>Run analytics at a massive scale by using a cloud-based enterprise data warehouse that takes advantage of massively parallel processing to run complex queries quickly across petabytes of data.</p>
<h4 id="azure-hdinsight">Azure HDInsight</h4>
<p>Process massive amounts of data with managed clusters of Hadoop clusters in the cloud.</p>
<h4 id="azure-databricks">Azure Databricks</h4>
<p>Integrate this collaborative Apache Spark-based analytics service with other big data services in Azure.</p>
<h3 id="ai">AI</h3>
<p>In the context of cloud computing, AI is made up of a variety of services, the most important of which is machine learning. Machine learning is a data science technique that allows computers to predict future actions, results, and trends using present data. Computers that use machine learning learn without being explicitly programmed.</p>
<h4 id="azure-machine-learning-service">Azure Machine Learning Service</h4>
<p>Cloud-based environment you can use to develop, train, test, deploy, manage, and track machine learning models. It can auto-generate a model and auto-tune it for you. It will let you start training on your local machine, and then scale out to the cloud.</p>
<h4 id="azure-ml-studio">Azure ML Studio</h4>
<p>Collaborative visual workspace where you can build, test, and deploy machine learning solutions by using prebuilt machine learning algorithms and data-handling modules.</p>
<h3 id="devops">DevOps</h3>
<p>By automating software delivery, DevOps combines people, processes, and technology together to provide continuous value to your users. You may use Azure DevOps to develop build and release pipelines for your applications that allow continuous integration, delivery, and deployment.</p>
<h4 id="azure-devops">Azure DevOps</h4>
<p>Use development collaboration tools such as high-performance pipelines, free private Git repositories, configurable Kanban boards, and extensive automated and cloud-based load testing. Formerly known as Visual Studio Team Services.</p>
<h4 id="azure-devtest-labs">Azure DevTest Labs</h4>
<p>Quickly create on-demand Windows and Linux environments to test or demo applications directly from deployment pipelines.</p>
]]></content:encoded></item><item><title><![CDATA[What are regions, availability zones, and region pairs
| Azure Fundamentals(Az-900) Part-4]]></title><description><![CDATA[Regions
A region is a geographical area on the planet that contains at least one but potentially multiple data-centers that are nearby and networked together with a low-latency network. Cloud Providers intelligently assigns and controls the resources...]]></description><link>https://blog.altmash.me/what-are-regions-availability-zones-and-region-pairs-or-azure-fundamentalsaz-900-part-4</link><guid isPermaLink="true">https://blog.altmash.me/what-are-regions-availability-zones-and-region-pairs-or-azure-fundamentalsaz-900-part-4</guid><category><![CDATA[Azure]]></category><category><![CDATA[Cloud Computing]]></category><category><![CDATA[AWS]]></category><category><![CDATA[server]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Wed, 15 Sep 2021 18:10:27 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1631729292792/a6FRSbKhQ.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3 id="regions">Regions</h3>
<p>A region is a geographical area on the planet that contains at least one but potentially multiple data-centers that are nearby and networked together with a low-latency network. Cloud Providers intelligently assigns and controls the resources within each region to ensure workloads are appropriately balanced.</p>
<p>When you deploy a resource on Cloud, you'll often need to choose the region where you want your resource deployed.</p>
<h4 id="why-are-regions-important">Why are regions important?</h4>
<p>Regions give you the flexibility to bring applications closer to your users no matter where they are. Global regions provide better scalability and redundancy. They also preserve data residency for your services.</p>
<h3 id="availability-zones">Availability zones</h3>
<p>Availability zones are physically separate datacenters within an region. Each availability zone is made up of one or more datacenters equipped with independent power, cooling, and networking. An availability zone is set up to be an isolation boundary. If one zone goes down, the other continues working. Availability zones are connected through high-speed, private fiber-optic networks.</p>
<h3 id="region-pair">Region pair</h3>
<p>Each region is always paired with another region within the same geography (such as US, Europe, or Asia) at least 300 miles away. This approach allows for the replication of resources (such as VM storage) across a geography that helps reduce the likelihood of interruptions because of events such as natural disasters, civil unrest, power outages, or physical network outages that affect both regions at once. If a region in a pair was affected by a natural disaster, for instance, services would automatically failover to the other region in its region pair.</p>
]]></content:encoded></item><item><title><![CDATA[What are public, private, and hybrid clouds? |  Azure Fundamentals(Az-900) Part-3]]></title><description><![CDATA[Public Cloud
Public clouds are the most common type of cloud computing deployment. The cloud resources (like servers and storage) are owned and operated by a third-party cloud service provider and delivered over the internet. With a public cloud, all...]]></description><link>https://blog.altmash.me/what-are-public-private-and-hybrid-clouds-or-azure-fundamentalsaz-900-part-3</link><guid isPermaLink="true">https://blog.altmash.me/what-are-public-private-and-hybrid-clouds-or-azure-fundamentalsaz-900-part-3</guid><category><![CDATA[Azure]]></category><category><![CDATA[Cloud]]></category><category><![CDATA[AWS]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Tue, 14 Sep 2021 15:37:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1631633689378/ssAtLhRm2.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3 id="public-cloud">Public Cloud</h3>
<p>Public clouds are the most common type of cloud computing deployment. The cloud resources (like servers and storage) are owned and operated by a third-party cloud service provider and delivered over the internet. With a public cloud, all hardware, software, and other supporting infrastructure are owned and managed by the cloud provider. Microsoft Azure is an example of a public cloud.</p>
<p>In a public cloud, you share the same hardware, storage, and network devices with other organizations or cloud “tenants,” and you access services and manage your account using a web browser. Public cloud deployments are frequently used to provide web-based email, online office applications, storage, and testing and development environments.</p>
<h4 id="advantages-of-public-clouds">Advantages of public clouds:</h4>
<ul>
<li>Lower costs—no need to purchase hardware or software, and you pay only for the service you use.</li>
<li>No maintenance—your service provider provides the maintenance.</li>
<li>Near-unlimited scalability—on-demand resources are available to meet your business needs.</li>
<li>High reliability—a vast network of servers ensures against failure.</li>
</ul>
<h3 id="private-cloud">Private Cloud</h3>
<p>A private cloud consists of cloud computing resources used exclusively by one business or organization. The private cloud can be physically located at your organization’s on-site datacenter, or it can be hosted by a third-party service provider. But in a private cloud, the services and infrastructure are always maintained on a private network and the hardware and software are dedicated solely to your organization.</p>
<p>In this way, a private cloud can make it easier for an organization to customize its resources to meet specific IT requirements. Private clouds are often used by government agencies, financial institutions, any other mid- to large-size organizations with business-critical operations seeking enhanced control over their environment.</p>
<h4 id="advantages-of-a-private-cloud">Advantages of a private cloud:</h4>
<ul>
<li>More flexibility—your organization can customize its cloud environment to meet specific business needs.</li>
<li>More control—resources are not shared with others, so higher levels of control and privacy are possible.</li>
<li>More scalability—private clouds often offer more scalability compared to on-premises infrastructure.</li>
</ul>
<h3 id="hybrid-cloud">Hybrid Cloud</h3>
<p>A hybrid cloud is a type of cloud computing that combines on-premises infrastructure—or a private cloud—with a public cloud. Hybrid clouds allow data and apps to move between the two environments.</p>
<p>Many organizations choose a hybrid cloud approach due to business imperatives such as meeting regulatory and data sovereignty requirements, taking full advantage of on-premises technology investment, or addressing low latency issues.</p>
<p>The hybrid cloud is evolving to include edge workloads as well. Edge computing brings the computing power of the cloud to IoT devices—closer to where the data resides. By moving workloads to the edge, devices spend less time communicating with the cloud, reducing latency, and they are even able to operate reliably in extended offline periods.</p>
<h4 id="advantages-of-the-hybrid-cloud">Advantages of the hybrid cloud:</h4>
<ul>
<li><strong>Control</strong> your organization can maintain a private infrastructure for sensitive assets or workloads that require low latency.</li>
<li><strong>Flexibility</strong> you can take advantage of additional resources in the public cloud when you need them.</li>
<li><strong>Cost-effectiveness</strong> with the ability to scale to the public cloud, you pay for extra computing power only when needed.</li>
<li><strong>Ease</strong> transitioning to the cloud doesn’t have to be overwhelming because you can migrate gradually—phasing in workloads over time.</li>
</ul>
]]></content:encoded></item><item><title><![CDATA[Cloud Computing Models. IaaS, PaaS & SaaS | Azure Fundamentals(Az-900) Part-2]]></title><description><![CDATA[Cloud computing models fall into 3 main categories

IaaS - Infrastructure as a service
PaaS - Platform as a service
SaaS - Software as a service

Infrastructure as a service (IaaS)
Cloud computing services where hardware resources are provided by an ...]]></description><link>https://blog.altmash.me/cloud-computing-models-iaas-paas-and-saas-or-azure-fundamentalsaz-900-part-2</link><guid isPermaLink="true">https://blog.altmash.me/cloud-computing-models-iaas-paas-and-saas-or-azure-fundamentalsaz-900-part-2</guid><category><![CDATA[Azure]]></category><category><![CDATA[Cloud]]></category><category><![CDATA[AWS]]></category><category><![CDATA[PaaS]]></category><category><![CDATA[SaaS]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Mon, 13 Sep 2021 17:16:03 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1631554102861/ZDtDOsafS.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Cloud computing models fall into 3 main categories</p>
<ol>
<li>IaaS - Infrastructure as a service</li>
<li>PaaS - Platform as a service</li>
<li>SaaS - Software as a service</li>
</ol>
<h3 id="infrastructure-as-a-service-iaas">Infrastructure as a service (IaaS)</h3>
<p>Cloud computing services where hardware resources are provided by an external provider and managed for you. 
IaaS helps users to use computing power or virtual machines without labor-intensive hardware investments or server management. Physically, the hardware resources are pulled from a variety of networks and servers distributed across different data centers, all of which are managed and maintained by the cloud service provider.</p>
<p>For example, say a user wants a Linux system, with IaaS he will get access to it without having to worry about the networking of the machine on which Linux is installed or the physical system. </p>
<h4 id="features-and-benefits-of-iaas-cloud-computing-service">Features and Benefits of IaaS Cloud Computing Service</h4>
<ol>
<li>A typical infrastructure as a service offering saves both time and money as the underlying hardware set up and support is provided by the service provider. </li>
<li>Resources are available on demand as and when required so there is no wastage of any unused resources and no delays on adding any resources. </li>
<li>Utility-based pricing model i.e. pay only for the resources you actually use.</li>
</ol>
<h3 id="platform-as-a-service-paas">Platform as a Service (PaaS)</h3>
<p>This cloud computing service is an advanced version of IaaS. Apart from just providing the IT infrastructure, PaaS also provides the computing platform and solution stack as a service. PaaS is a cloud computing service that provides developers with a framework that can be used for building custom applications. Platform as a Service lets software developers build custom applications online without having to worry about data storage, data serving, and management. </p>
<p><strong>A typical Platform as a Service offering consists of </strong></p>
<ol>
<li>Hosting Solutions </li>
<li>OS </li>
<li>Software tools for design and development.  </li>
<li>Environment for server-side scripting </li>
<li>DBMS </li>
<li>Network Access </li>
<li>Storage </li>
<li>Server Software </li>
<li>Support </li>
</ol>
<h4 id="features-and-benefits-of-paas-cloud-computing-service">Features and Benefits of PaaS Cloud Computing Service</h4>
<ol>
<li>PaaS makes software development easy even for non-experts as anybody can develop an application through the web browser with just a single click functionality. </li>
<li>There is no need for the users to upgrade or update the infrastructure as the PaaS service provider handles all the update patches, upgrades, and regular software maintenance. </li>
<li>PaaS provides location independence as developers in different locations can work together on the same application build. </li>
<li>There is no need to invest in physical infrastructure or in expertise required to manage it, an example of this would be SAP. The ability to rent virtual IT infrastructure brings in great cost benefits for the users. </li>
</ol>
<h3 id="software-as-a-service-saas">Software as a Service (SaaS)</h3>
<p>A special cloud computing service that incorporates both IaaS and PaaS service offerings. SaaS is a cloud computing service that provides application-level services tailored to diverse business needs such as business analytics, CRM, or marketing automation. SaaS is a cloud computing service offering that provides web-based software applications to customers on-demand. SaaS providers host a fully-functional application through a browser-based interface and make it accessible to the users through the Internet. </p>
<p>SaaS is a subscription-based offering where users subscribe to software on a monthly basis instead if purchasing it so there are no upfront costs involved. It also provides a provision to the users to end the subscription when it is no longer needed.</p>
<h4 id="features-and-benefits-of-saas-cloud-computing-service">Features and Benefits of SaaS Cloud Computing Service</h4>
<ol>
<li>There is no initial setup cost as the users can make use of the application as soon as they subscribe. </li>
<li>There is no hardware cost as well because the processing power is supplied by the service provider.</li>
<li>Flexible payments as the users pay for the services on a pay-as-you-go model. </li>
<li>Any updates to the software are automatic and free of charge. </li>
<li>SaaS provides cross-device compatibility because SaaS applications can be accessed through any internet enabled devices, such as laptop, smartphone, or desktop.</li>
<li>Enterprises need not engage an IT expert to download the software on multiple systems in the office nor have to worry about the keeping the software up-to-date on every PC.</li>
</ol>
]]></content:encoded></item><item><title><![CDATA[What is Cloud Computing? | Azure Fundamentals(Az-900) Part-1]]></title><description><![CDATA[Hello there Geeks, I am Learning and Preparing for Azure Certification So i have decided to write a blog everyday about what i have learnt, It will be a whole series focusing mainly on Azure Fundamentals, .So stay tuned and subscribe to my newsletter...]]></description><link>https://blog.altmash.me/what-is-cloud-computing-or-azure-fundamentalsaz-900-part-1</link><guid isPermaLink="true">https://blog.altmash.me/what-is-cloud-computing-or-azure-fundamentalsaz-900-part-1</guid><category><![CDATA[Azure]]></category><category><![CDATA[Cloud Computing]]></category><category><![CDATA[Cloud]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Sun, 12 Sep 2021 17:28:40 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1631467571376/CrQkjJgZr.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello there Geeks, I am Learning and Preparing for Azure Certification So i have decided to write a blog everyday about what i have learnt, It will be a whole series focusing mainly on Azure Fundamentals, .So stay tuned and subscribe to my newsletter to get notified when I make a new post. Also do drop your suggestions in the comments and let me know if you want a detailed post on my Azure Concepts.</p>
<h3 id="cloud-computing">Cloud Computing</h3>
<p>Cloud computing is the on-demand availability of computer system resources, especially data storage (cloud storage) and computing power, without direct active management by the user. The term is generally used to describe data centers available to many users over the Internet.</p>
<h3 id="how-is-cloud-computing-helpful">How is Cloud Computing Helpful?</h3>
<p>In today’s digital world, any business that operates needs a lot of computational resources to run their applications and has a lot of data which needs to be stored and processed. This is where cloud comes into picture.
Traditionally businesses used to host their applications and store their data on their in-house data centers. Data centers are physical server warehouses which are built and managed by businesses.
But with business owned data centers, you have certain drawbacks such as large investment to setup your own physical infrastructure and machines, higher operating costs especially when you have to scale your application or have to host it in a different place, maintenance and security overhead and so on.
Cloud computing comes to the rescue of businesses which cannot afford large investments, businesses which want to be more agile, businesses which want lesser infrastructure maintenance overhead.</p>
<h3 id="features-of-cloud">Features of cloud</h3>
<ol>
<li>On demand access.</li>
<li>High availability.</li>
<li>Scalability &amp; Elasticity.</li>
<li>Redundancy &amp; Disaster Recovery.</li>
<li>Better resource costs.</li>
</ol>
<h3 id="on-demand-access">On Demand Access</h3>
<p>With cloud computing,
“You get whatever you want, wherever you want, whenever you want.”
Businesses can simply get a physical machine or a virtual storage device in a desired location whenever they need, on demand.</p>
<h3 id="high-availability">High Availability</h3>
<p>Your cloud computing resources come with upto 99.99% availability SLAs. Once allocated, they are literally never be unavailable.</p>
<h2 id="scalability-and-elasticity">Scalability &amp; Elasticity</h2>
<p>At any point of time, you can scale up or scale down your resources. Say you have one virtual machine hosting your application at time, you can choose to scale it to say 5 machines when there is heavy load and you can then scale it down to 1 machine when the load is normal.</p>
<h3 id="redundancy-and-disaster-recovery">Redundancy &amp; Disaster Recovery</h3>
<p>With cloud computing, you get a high percentage of redundancy with services and storage's offered. Say you have data stored on storage in Region A, it can easily be replicated in Region B to facilitate fail-over or to serve customers in Region B.
If in case there is is disaster in one of the regions your application is hosted, there are in place mechanisms to facilitate faster and smoother recovery to another region or to another cloud or even to your in-house data centers.</p>
<h3 id="better-costs">Better Costs</h3>
<p>With cloud, “you pay for only what you use” for that period. You do not have to pay for buying physical machines or for infrastructure setup and maintenance and security setup, they are all available in house.</p>
]]></content:encoded></item><item><title><![CDATA[How to configure Apache server on Ubuntu 20.04]]></title><description><![CDATA[First of all Make sure your system is up to date,
To do that, type the following command
sudo apt update && sudo apt upgrade
Step 1 - Install Apache 2 server
To install apache server run the following command
sudo apt install apache2
Step 2 - Make su...]]></description><link>https://blog.altmash.me/how-to-configure-apache-server-on-ubuntu-2004</link><guid isPermaLink="true">https://blog.altmash.me/how-to-configure-apache-server-on-ubuntu-2004</guid><category><![CDATA[Linux]]></category><category><![CDATA[apache]]></category><category><![CDATA[AWS]]></category><category><![CDATA[Azure]]></category><category><![CDATA[#howtos]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Sat, 11 Sep 2021 05:30:57 GMT</pubDate><content:encoded><![CDATA[<p>First of all Make sure your system is up to date,
To do that, type the following command</p>
<pre><code>sudo apt <span class="hljs-keyword">update</span> &amp;&amp; sudo apt <span class="hljs-keyword">upgrade</span>
</code></pre><h3 id="step-1-install-apache-2-server">Step 1 - Install Apache 2 server</h3>
<p>To install apache server run the following command</p>
<pre><code><span class="hljs-attribute">sudo</span> apt install apache<span class="hljs-number">2</span>
</code></pre><h3 id="step-2-make-sure-apache-service-starts-on-system-boot">Step 2 - Make sure Apache service starts on system boot</h3>
<p>To check that run the following command</p>
<pre><code>sudo systemctl <span class="hljs-keyword">is</span>-enabled apache2.service
</code></pre><p>If you get Output similar to the image below then you are good to go</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1631156088262/tvexgAIGR.png" alt="Screen Capture_select-area_20210909082401.png" /></p>
<p><em>If your Output is not similar to the Image then run the following command to enable Apache service on boot</em></p>
<pre><code>sudo systemctl <span class="hljs-keyword">enable</span> apache2.service
</code></pre><h3 id="step-4-make-sure-your-apache-server-status-is-active">Step 4 - Make sure your Apache server status is active</h3>
<p>To check the status run the following command</p>
<pre><code><span class="hljs-selector-tag">sudo</span> <span class="hljs-selector-tag">systemctl</span> <span class="hljs-selector-tag">status</span> <span class="hljs-selector-tag">apache2</span><span class="hljs-selector-class">.service</span>
</code></pre><p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1631157430334/fO1WA0u6a.png" alt="Screen Capture_select-area_20210909075109.png" />
If server status is active (running) then everything is fine, up and running</p>
<h3 id="step-4-open-apache-port-80-and-443">Step 4 - Open Apache port 80 and 443</h3>
<p>To open port 80 and 443 use the following commands</p>
<pre><code><span class="hljs-attribute">sudo</span> ufw <span class="hljs-literal">allow</span> <span class="hljs-number">80</span>/tcp
<span class="hljs-attribute">sudo</span> ufw <span class="hljs-literal">allow</span> <span class="hljs-number">443</span>/tcp
</code></pre><p><em>if you are Configuring a cloud server then make sure to allow ssh so that you don't get locked out of your server.
Run the following command to allow SSH</em></p>
<pre><code><span class="hljs-attribute">sudo</span> ufw <span class="hljs-literal">allow</span> openssh
</code></pre><p><strong>Now Enable the firewall</strong></p>
<pre><code>sudo ufw <span class="hljs-keyword">enable</span>
</code></pre><p>Check Status of firewall</p>
<pre><code><span class="hljs-attribute">sudo</span> ufw status
</code></pre><p>It should look like this</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1631157019457/uYJJNeHgN.png" alt="Screen Capture_select-area_20210909084009.png" /></p>
<h3 id="step-5-test-your-apache-server">Step 5 - Test your Apache server</h3>
<p>Test Using terminal</p>
<pre><code><span class="hljs-selector-tag">curl</span> <span class="hljs-selector-tag">-I</span> <span class="hljs-selector-tag">http</span>:<span class="hljs-comment">//&lt;your-server-ip-address&gt;/</span>
</code></pre><p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1631157312431/ULR87npTM.png" alt="Screen Capture_select-area_20210909084501.png" /></p>
<p>To Test Using Web-Browser, Simply type your servers ip address in the address bar,and you should get output like this</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1631157386461/hNpOk25Ou.png" alt="Screen Capture_select-area_20210909080617.png" /></p>
]]></content:encoded></item><item><title><![CDATA[How to configure FTP server on Ubuntu 20.04]]></title><description><![CDATA[First of all Make sure your system is up to date,
To do that, type the following command
sudo apt update && sudo apt upgrade
Step 1 - Install vsftpd
Use the following command to install vsftpd
sudo apt install vsftpd
Step 2 - Configure Firewall
Let’s...]]></description><link>https://blog.altmash.me/how-to-configure-ftp-server-on-ubuntu-2004</link><guid isPermaLink="true">https://blog.altmash.me/how-to-configure-ftp-server-on-ubuntu-2004</guid><category><![CDATA[Linux]]></category><category><![CDATA[Ubuntu]]></category><category><![CDATA[AWS]]></category><category><![CDATA[Azure]]></category><category><![CDATA[files]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Thu, 09 Sep 2021 12:10:53 GMT</pubDate><content:encoded><![CDATA[<p>First of all Make sure your system is up to date,
To do that, type the following command</p>
<pre><code>sudo apt <span class="hljs-keyword">update</span> &amp;&amp; sudo apt <span class="hljs-keyword">upgrade</span>
</code></pre><h3 id="step-1-install-vsftpd">Step 1 - Install vsftpd</h3>
<p>Use the following command to install vsftpd</p>
<pre><code><span class="hljs-attribute">sudo</span> apt install vsftpd
</code></pre><h3 id="step-2-configure-firewall">Step 2 - Configure Firewall</h3>
<p>Let’s open ports 20 and 21 for FTP, and ports 40000-50000 for passive FTP. We’ll also open port 990 for TLS</p>
<pre><code><span class="hljs-attribute">sudo</span> ufw <span class="hljs-literal">allow</span> <span class="hljs-number">20</span>/tcp
<span class="hljs-attribute">sudo</span> ufw <span class="hljs-literal">allow</span> <span class="hljs-number">21</span>/tcp
<span class="hljs-attribute">sudo</span> ufw <span class="hljs-literal">allow</span> <span class="hljs-number">40000</span>:<span class="hljs-number">50000</span>/tcp
<span class="hljs-attribute">sudo</span> ufw <span class="hljs-literal">allow</span> <span class="hljs-number">990</span>/tcp
</code></pre><p><em>if you are Configuring a cloud server then make sure to allow ssh so that you don't get locked out of your server.
Run the following command to allow SSH</em></p>
<pre><code><span class="hljs-attribute">sudo</span> ufw <span class="hljs-literal">allow</span> openssh
</code></pre><p><strong>Now Enable the firewall</strong></p>
<pre><code>sudo ufw <span class="hljs-keyword">enable</span>
</code></pre><p>Check Status of firewall</p>
<pre><code><span class="hljs-attribute">sudo</span> ufw status
</code></pre><p>It should look like this
<img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1631186237137/jxzcE1zsK.png" alt="Screen Capture_select-area_20210909164649.png" /></p>
<h3 id="step-3-create-a-ftp-user">Step 3 - Create a FTP User</h3>
<p>We will now create a new user that we will use to log into FTP. In this example, we will create a new user called <strong>ftpuser</strong></p>
<pre><code><span class="hljs-attribute">sudo</span> adduser ftpuser
</code></pre><p>Generate a strong password and keep it safe.</p>
<p>You may also be asked to enter some contact information. You can just press <strong>ENTER</strong> to each of these.</p>
<h3 id="step-4-grant-directory-permissions">Step 4 - Grant Directory Permissions</h3>
<p>You now need to decide where this new FTP user is allowed to view and upload files.</p>
<p>vsftpd uses chroot jails to restrict users to their home directories and requires that the home directory is not writable. For that reason, we have to set up some directories and permissions.</p>
<p>We want this user to upload files to the home directory, so we will create a new directory called <strong>ftp</strong> in the user’s home directory and another within it called files</p>
<pre><code>sudo <span class="hljs-keyword">mkdir</span> /home/ftpuser/ftp
</code></pre><p>Set the ownership of the ftp directory to no nobody:nogroup.</p>
<pre><code><span class="hljs-selector-tag">sudo</span> <span class="hljs-selector-tag">chown</span> <span class="hljs-selector-tag">nobody</span><span class="hljs-selector-pseudo">:nogroup</span> /<span class="hljs-selector-tag">home</span>/<span class="hljs-selector-tag">ftpuser</span>/<span class="hljs-selector-tag">ftp</span>
</code></pre><p>Set permissions for the ftp directory using chmod so that it is not writable by anyone, otherwise vsftpd will not allow you to log in</p>
<pre><code>sudo <span class="hljs-keyword">chmod</span> a-w /home/ftpuser/ftp
</code></pre><p>Next we will create a new directory within /ftp where the user can view and upload files.</p>
<pre><code>sudo <span class="hljs-keyword">mkdir</span> /home/ftpuser/ftp/files
</code></pre><p>Assign ownership of this directory to our new FTP user otherwise they will not be able to write to it.</p>
<pre><code><span class="hljs-selector-tag">sudo</span> <span class="hljs-selector-tag">chown</span> <span class="hljs-selector-tag">ftpuser</span><span class="hljs-selector-pseudo">:ftpuser</span> /<span class="hljs-selector-tag">home</span>/<span class="hljs-selector-tag">ftpuser</span>/<span class="hljs-selector-tag">ftp</span>/<span class="hljs-selector-tag">files</span>
</code></pre><h3 id="step-5-configure-vsftpd">Step 5 - Configure vsftpd</h3>
<p>Rename the config file.</p>
<pre><code><span class="hljs-attribute">sudo</span> mv /etc/vsftpd.conf /etc/vsftpd.conf.bak
</code></pre><p>Create a new config file with Vim editor.</p>
<pre><code><span class="hljs-attribute">sudo</span> nano /etc/vsftpd.conf
</code></pre><p>Paste in the following:</p>
<pre><code><span class="hljs-attr">listen</span>=<span class="hljs-literal">NO</span>
<span class="hljs-attr">listen_ipv6</span>=<span class="hljs-literal">YES</span>
<span class="hljs-attr">anonymous_enable</span>=<span class="hljs-literal">NO</span>
<span class="hljs-attr">local_enable</span>=<span class="hljs-literal">YES</span>
<span class="hljs-attr">write_enable</span>=<span class="hljs-literal">YES</span>
<span class="hljs-attr">local_umask</span>=<span class="hljs-number">022</span>
<span class="hljs-attr">dirmessage_enable</span>=<span class="hljs-literal">YES</span>
<span class="hljs-attr">use_localtime</span>=<span class="hljs-literal">YES</span>
<span class="hljs-attr">xferlog_enable</span>=<span class="hljs-literal">YES</span>
<span class="hljs-attr">connect_from_port_20</span>=<span class="hljs-literal">YES</span>
<span class="hljs-attr">chroot_local_user</span>=<span class="hljs-literal">YES</span>
<span class="hljs-attr">secure_chroot_dir</span>=/var/run/vsftpd/empty
<span class="hljs-attr">pam_service_name</span>=vsftpd
<span class="hljs-attr">force_dot_files</span>=<span class="hljs-literal">YES</span>
<span class="hljs-attr">pasv_min_port</span>=<span class="hljs-number">40000</span>
<span class="hljs-attr">pasv_max_port</span>=<span class="hljs-number">50000</span>
<span class="hljs-attr">user_sub_token</span>=<span class="hljs-variable">$USER</span>
<span class="hljs-attr">local_root</span>=/home/<span class="hljs-variable">$USER</span>/ftp
</code></pre><p>Your final config file should look like this</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1631187441492/ajCQQi2TY.png" alt="Screen Capture_select-area_20210909170708.png" /></p>
<p>Now Save and exit the file </p>
<p><em>To exit Vim editor Press esc then Shift^ZZ.
</em></p>
<p><strong>Restart vsftpd to apply new changes.
</strong></p>
<pre><code>sudo systemctl <span class="hljs-keyword">restart</span> vsftpd
</code></pre><h3 id="step-6-test-ftp">Step - 6 Test FTP</h3>
<p>Open terminal and type the following Command</p>
<pre><code>ftp &lt;your-ftp-<span class="hljs-keyword">server</span>-ip&gt;
</code></pre><p>you will be prompted to enter username and password, Enter the username and password of the ftp user which we have created earlier,
If everything is Perfect you will get a login Successful message.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1631188843589/H4bIl70mU.png" alt="Screen Capture_select-area_20210909173022.png" /></p>
<p>Now you can runy any file command you want like cd, mkdir,ls etc.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1631189054277/YtSiui7dvA.png" alt="Screen Capture_select-area_20210909173322.png" /></p>
]]></content:encoded></item><item><title><![CDATA[How to use external packages in Flutter]]></title><description><![CDATA[An external package allows us to quickly achieve the functionality we need without writing code from scratch.
In this example, I am using use an open-source package named  quotes , which contains top 500 English quotes as of now.
You can find the  qu...]]></description><link>https://blog.altmash.me/how-to-use-external-packages-in-flutter</link><guid isPermaLink="true">https://blog.altmash.me/how-to-use-external-packages-in-flutter</guid><category><![CDATA[2Articles1Week]]></category><category><![CDATA[Android]]></category><category><![CDATA[Flutter]]></category><category><![CDATA[Flutter Examples]]></category><category><![CDATA[android app development]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Wed, 12 May 2021 21:00:31 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1620852594263/yMgRgEv1C.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>An external package allows us to quickly achieve the functionality we need without writing code from scratch.
In this example, I am using use an open-source package named  <a target="_blank" href="https://pub.dev/packages/quotes">quotes</a> , which contains top 500 English quotes as of now.</p>
<p>You can find the  <a target="_blank" href="https://pub.dev/packages/quotes">quotes</a>  package, as well as many other open source packages, on  <a target="_blank" href="https://pub.dev/">pub.dev</a> .</p>
<p><strong>Step-1.</strong> The <code>pubspec.yaml</code> file manages the assets and dependencies for a Flutter app. In pubspec.yaml, add quotes to the dependencies list:</p>
<pre><code><span class="hljs-attribute">dependencies</span>:
  <span class="hljs-attribute">flutter</span>:
    <span class="hljs-attribute">sdk</span>: flutter
    <span class="hljs-attribute">quotes</span>:
</code></pre><p><strong>Step-2.</strong> While viewing the <code>pubspec.yaml</code> file in Android Studio’s editor view, click Pub get. This pulls the package into your project. You should see the following in the console:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1620844847596/oxqNPFtyc.png" alt="wxttt.png" /></p>
<p><strong>Step-3</strong>. In lib/main.dart, import the new package:</p>
<pre><code><span class="hljs-keyword">import</span> <span class="hljs-string">'package:quotes/quotes.dart'</span>;
</code></pre><p>As you type, Android Studio gives you suggestions for libraries to import. It then renders the import string in gray, letting you know that the imported library is unused (so far).</p>
<p><strong>Step-4.</strong> Use the Quotes package to generate new quotes every time the app is launched.</p>
<pre><code><span class="hljs-keyword">import</span> <span class="hljs-string">'package:flutter/material.dart'</span>;
<span class="hljs-keyword">import</span> <span class="hljs-string">'package:quotes/quotes.dart'</span>;

<span class="hljs-function"><span class="hljs-keyword">void</span> <span class="hljs-title">main</span><span class="hljs-params">()</span> </span>=&gt; runApp(MyApp());

<span class="hljs-class"><span class="hljs-keyword">class</span> <span class="hljs-title">MyApp</span> <span class="hljs-keyword">extends</span> <span class="hljs-title">StatelessWidget</span> </span>{
  <span class="hljs-meta">@override</span>
  <span class="hljs-function">Widget <span class="hljs-title">build</span><span class="hljs-params">(BuildContext context)</span> </span>{
    <span class="hljs-keyword">final</span> quotes = Quotes.getFirst().getContent();
    <span class="hljs-keyword">return</span> MaterialApp(
      title: <span class="hljs-string">'Quotes'</span>,
      home: Scaffold(
        appBar: AppBar(
          title: Text(<span class="hljs-string">'Quotes'</span>),
        ),
        body: Center(
          child: Text(quotes),
        ),
      ),
    );
  }
}
</code></pre><p><strong>Step-5</strong>. Run your App on AVD or any physical device</p>
<p>Step-6. If the app is running, hot reload to update the running app. Each time you click hot reload, or save the project, you should see a different Quote, chosen at random, in the running app</p>
]]></content:encoded></item><item><title><![CDATA[How to Convert String to int in Python]]></title><description><![CDATA[Python has a built-in function int() which converts the passed argument into integer format.
Syntax
int(object, encoding=encoding, errors=errors)
Code
The following code illustrates the usage of the int function in Python.
# An string version of a nu...]]></description><link>https://blog.altmash.me/how-to-convert-string-to-int-in-python</link><guid isPermaLink="true">https://blog.altmash.me/how-to-convert-string-to-int-in-python</guid><category><![CDATA[Python]]></category><category><![CDATA[Python 3]]></category><category><![CDATA[python beginner]]></category><category><![CDATA[python projects]]></category><category><![CDATA[2Articles1Week]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Tue, 11 May 2021 18:29:46 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1620756869286/6ksq9kM-d.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Python has a built-in function <code>int()</code> which converts the passed argument into integer format.</p>
<h2 id="syntax">Syntax</h2>
<pre><code><span class="hljs-type">int</span>(<span class="hljs-keyword">object</span>, encoding=<span class="hljs-keyword">encoding</span>, errors=errors)
</code></pre><h2 id="code">Code</h2>
<p>The following code illustrates the usage of the int function in Python.</p>
<pre><code><span class="hljs-comment"># An string version of a number</span>
string_num = <span class="hljs-number">2021</span>

<span class="hljs-comment"># An integer version of year</span>
integer_num = <span class="hljs-keyword">int</span>(string_num)

<span class="hljs-keyword">print</span> <span class="hljs-string">"The number is"</span>, integer_num

<span class="hljs-comment"># Returns 0 if no argument is provided</span>
<span class="hljs-keyword">print</span>(<span class="hljs-keyword">int</span>())
</code></pre>]]></content:encoded></item><item><title><![CDATA[How to Install Flutter in Android Studio on Linux]]></title><description><![CDATA[Step-1. Download Latest Flutter SDK Version from  here  
Step-2. Extract the Downloaded Zip file at your desired location.
Step-3. Open Android Studio. (Make sure you are starting Android Studio as Root User)
Step-4. Go to Files ➞ Settings ➞ Plugins,...]]></description><link>https://blog.altmash.me/how-to-install-flutter-in-android-studio-on-linux</link><guid isPermaLink="true">https://blog.altmash.me/how-to-install-flutter-in-android-studio-on-linux</guid><category><![CDATA[2Articles1Week]]></category><category><![CDATA[Android]]></category><category><![CDATA[Flutter]]></category><category><![CDATA[Flutter SDK]]></category><category><![CDATA[Linux]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Tue, 11 May 2021 15:00:58 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1620744998917/xa71tgAoA.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>Step-1</strong>. Download Latest Flutter SDK Version from  <a target="_blank" href="https://flutter.dev/docs/development/tools/sdk/releases?tab=linux">here</a>  </p>
<p><strong>Step-2.</strong> Extract the Downloaded Zip file at your desired location.</p>
<p><strong>Step-3.</strong> Open Android Studio. (Make sure you are starting Android Studio as Root User)</p>
<p><strong>Step-4.</strong> Go to Files ➞ Settings ➞ Plugins, Search Flutter, and install it, after installing flutter it will prompt you to install Dart Plugin, Install that too and Restart Android Studio</p>
<p><strong>Step-5</strong>. After opening android Studio Go to Files ➞ New ➞ New Flutter Project, You will be prompted to select the Flutter SDK path, Just simply select the folder where you extracted your SDK file in Step 2.</p>
<p>If you face any issue with the SDK path or you are stuck at an infinite loading screen then just make sure you are Running Android Studio as a root user.
Still, if you are facing any issues then just comment down below and I will try my best to help you. ✌️</p>
]]></content:encoded></item><item><title><![CDATA[How to Add Cloud Messaging to Your Android App]]></title><description><![CDATA[Firebase Cloud Messaging
Firebase Cloud Messaging is a tool that helps you send notification messages or data messages to your client app whether it’s a single device, a group of devices, or devices subscribed to topics. The best part is that this se...]]></description><link>https://blog.altmash.me/how-to-add-cloud-messaging-to-your-android-app</link><guid isPermaLink="true">https://blog.altmash.me/how-to-add-cloud-messaging-to-your-android-app</guid><category><![CDATA[Android]]></category><category><![CDATA[Firebase]]></category><category><![CDATA[messaging]]></category><category><![CDATA[push notifications]]></category><dc:creator><![CDATA[Altmash]]></dc:creator><pubDate>Mon, 10 May 2021 08:43:10 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1620592620614/tdRgKyzkR.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3 id="firebase-cloud-messaging">Firebase Cloud Messaging</h3>
<p>Firebase Cloud Messaging is a tool that helps you send notification messages or data messages to your client app whether it’s a single device, a group of devices, or devices subscribed to topics. The best part is that this service can be used at no cost.</p>
<h3 id="requirements">Requirements</h3>
<ul>
<li>Android Studio</li>
<li>Google Account</li>
</ul>
<h3 id="how-to-add-cloud-messaging-to-your-android-app">How to add cloud messaging to your Android app</h3>
<p><strong>Step 1.</strong> Open your project in Android Studio, click on Tools → Firebase. Now, a list of Firebase tools will appear on the left, Scroll down and select Cloud Messaging, and then click on Set up Firebase Cloud Messaging.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1620629883054/Lp8YCO0LQ.png" alt="1.png" /></p>
<p><strong>Step 2.</strong> Connect your app to Firebase</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1620630289892/GmwgcgpPP.png" alt="2.png" />
<em>After clicking on Connect to Firebase, your browser will open. Then, select your google account.
</em></p>
<p><strong>Step 3.</strong> Create a new Project in Firebase</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1620631169840/cZIqvuZS5.png" alt="3.png" /></p>
<p><em>- Click on Create a project
</em>
<em>- Name your Project and click Next
</em>
<em>- Click on Create Project
</em>
Now, it will take a few seconds to build your Project.</p>
<p>Once the project is built successfully, Connect Firebase with your Android Studio Project.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1620631392984/hNky6FAhe.png" alt="4.png" /></p>
<p><strong>After connecting your project go back to Android Studio</strong></p>
<p><strong>Step 4. </strong>Add FCM to Your app</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1620631509792/YbY0TwNWS.png" alt="5.png" />
<em>Now, click on Accept Changes and build your Project.</em></p>
<p><strong>Step 5</strong>. Run your App on AVD or any Physical Device</p>
<blockquote>
<p><strong>To send a notification to your app, go to Firebase console → Cloud Messaging → Input Your Notification content → select your app as Target → Schedule your notification → click Publish.</strong></p>
</blockquote>
]]></content:encoded></item></channel></rss>