<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Godwill Barasa</title>
    <description>The latest articles on DEV Community by Godwill Barasa (@godwillb).</description>
    <link>https://dev.to/godwillb</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F117653%2F16c45426-c4e6-4e1a-aaad-494795c62631.jpg</url>
      <title>DEV Community: Godwill Barasa</title>
      <link>https://dev.to/godwillb</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/godwillb"/>
    <language>en</language>
    <item>
      <title>Why you should be using Linux ( as a Kenyan Software Engineer )</title>
      <dc:creator>Godwill Barasa</dc:creator>
      <pubDate>Sat, 17 Oct 2020 07:25:44 +0000</pubDate>
      <link>https://dev.to/godwillb/why-you-should-be-using-linux-as-a-kenyan-software-engineer-3mcj</link>
      <guid>https://dev.to/godwillb/why-you-should-be-using-linux-as-a-kenyan-software-engineer-3mcj</guid>
      <description>&lt;p&gt;If you are reading this, you likely fall into two categories: either you are a powerhouse Linux user already looking at this, thinking “Oh jeez, noobs” or you are a Windows user thinking “ Linux is so cool, plus I’m tired of always having to restart my laptop. Is it overwhelming? Is it better than Windows? As a software developer will I be able to run my favorite tools of trade on the platform? Which distro should I use?”&lt;/p&gt;

&lt;p&gt;This article will help answer the questions “noobs” might want to know before The Exodus.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/p35XvxQf7kJk4/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/p35XvxQf7kJk4/giphy.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;First of all, this is not going to be that article that bashes the great work of Bill Gates or Microsoft. I think Microsoft is cool, I think Bill Gates is cool. Microsoft has the best engineers who work really hard and are talented. They create great products and in fact : for some of you trading a Windows Platform for a Linux one would be infeasible but possible i.e. I cannot work with Adobe  for my UX projects.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/3oz8xPyx3qgq5jAmMo/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/3oz8xPyx3qgq5jAmMo/giphy.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But wait is that a bad thing? &lt;/p&gt;

&lt;p&gt;No more Microsoft Office? No more Premiere pro for my amarture &lt;a href="https://www.youtube.com/channel/UCtem9MXCv1HHm1CVLQGl2sA?view_as=subscriber"&gt;youtube videos&lt;/a&gt; ?&lt;/p&gt;

&lt;p&gt;Hold your horses. There are some points you have to know first.&lt;/p&gt;

&lt;h2&gt;
  
  
  Open Source
&lt;/h2&gt;

&lt;p&gt;The open source way is a set of principles derived from open source software development models and applied more broadly to additional industries and domains. Its principles include transparency, collaboration, realising early and often, inclusive meritocracy and community.&lt;/p&gt;

&lt;p&gt;These are the same principles that are the foundation of great software products especially for developers; projects such as React, GraphQL and many technologies were developed with this methods. Such collaboration and transparency is made possible by version control Git. No wonder, Git and Linux share the same creator Linus Tovaldi.&lt;/p&gt;

&lt;p&gt;Open source is the most important feature for the platform even though most people seem to not care about it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Secure
&lt;/h2&gt;

&lt;p&gt;From its very inception, security has been a cornerstone of the Linux operating system. Each user has to be walled off from others, and a password and user ID are required for an individual to use Linux.&lt;/p&gt;

&lt;p&gt;Users also have lower automatic access rights, which makes it harder for them to perpetuate the spread of malware by accessing a wide range of files on the computer.&lt;/p&gt;

&lt;p&gt;The open source format with many different operating environments, system architectures, and components — such as different email clients — also makes it more difficult for malware to sweep through it.&lt;/p&gt;

&lt;p&gt;No operating system is totally secure. One issue currently facing Linux is its growing popularity.Linux was primarily used by a smaller, more tech-centric demographic. Now, its increasing use opens it up to the age-old problem of more users leading to an increased risk for malware infestations.&lt;/p&gt;

&lt;p&gt;Malware already exists that is designed especially for Linux. Erebus ransomware is one example, and the Tsunami backdoor has also caused problems for users over the last few years.&lt;/p&gt;

&lt;h2&gt;
  
  
  Revive your old PC’s
&lt;/h2&gt;

&lt;p&gt;Ready to renew life to your old dual or even single core machine. From personal experience running Windows on an old laptop, which honestly most of us have, is painful. From Windows Explorer failing, to Software freezes. Sometimes, it would happen when the machine is under very little or no load.&lt;/p&gt;

&lt;p&gt;I tried Kubuntu, on my PC and never looked back. From those days, some devs at the office still remember me as the Kubuntu Dev. It gave a new lease of life to my Intel Celeron, 4GB RAM with a 500GB drive. Simple tasks such as browsing which was very hard with the Windows platform were breezy and snappy.&lt;/p&gt;

&lt;h2&gt;
  
  
  It's the perfect tool for programmers
&lt;/h2&gt;

&lt;p&gt;The Linux terminal is superior to use , you would find many libraries developed natively for Linux. Developers also appreciate the use of package managers on Linux helps them get things done easily.&lt;/p&gt;

&lt;p&gt;Interestingly, the ability of bash scripting is also one of the most compelling reasons why devs prefer using Linux OS.&lt;/p&gt;

&lt;p&gt;However, this can be worked around on Windows, if you research.&lt;/p&gt;

&lt;h2&gt;
  
  
  Variety of Distributions
&lt;/h2&gt;

&lt;p&gt;A Linux distribution( and there are hundreds of them) is not like the next version of Windows and macOS. Each Linux "distro" is a current version that has components that may differ slightly or greatly from another Linux distribution. For the most popular ranked by hits per day, visit &lt;a href="http://www.distrowatch.com"&gt;www.distrowatch.com&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/xT0BKGcVvNFvATzpew/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/xT0BKGcVvNFvATzpew/giphy.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Trying out distros is the only way to get the one perfect for you. You can also take my word for it, since we take advice from strangers on the internet : Ubuntu, Elementary OS, Kubuntu, CentOS and for extreme niche techies Arch Linux.&lt;/p&gt;

&lt;p&gt;You could be the Linux Mint guy, its not as cool as Kubuntu guy, but hey, you know. It's cool.&lt;/p&gt;

&lt;h2&gt;
  
  
  Community
&lt;/h2&gt;

&lt;p&gt;Linux has one of the largest communities on the Internet to help people get their queries cleared. From Linux Questions to help you get Linux solutions, Stack OverFlow, Unix Stack : when(certainly not if) you run into problems.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/L3RMqVU2LRnSLQVO2a/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/L3RMqVU2LRnSLQVO2a/giphy.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That's right. You never have to know something, you just copy paste from the internet.  Cool, right?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My very opinionated opinion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As Vusi Thembekwayo once said, self identity limits your potential. I believe a good workflow for diverse technologists like us needs diverse tools to do diverse tasks. &lt;/p&gt;

&lt;p&gt;You can have both. &lt;br&gt;
&lt;a href="https://i.giphy.com/media/dM2xuxnJCg4H6/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/dM2xuxnJCg4H6/giphy.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Either:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="https://docs.microsoft.com/en-us/windows/wsl/install-win10"&gt;WSL2 Route&lt;/a&gt; - There are fears in the developer community that Windows Subsystem for Linux could be a way to embrace, extend, and extinguish Linux.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Richard Stallman has expressed fears that integrating Linux functionality into Windows will only hinder the development of free software.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Dual-booting - Linux is a great operating system with widespread hardware and software support, but the reality is that sometimes you have to use Windows, perhaps due to key apps that won't run on Linux. Thankfully, dual-booting Windows and Linux is very straightforward—and I'll show you how to set it up, with Windows 10 and Ubuntu, in this &lt;a href="https://opensource.com/article/18/5/dual-boot-linux"&gt;article&lt;/a&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Both of them are excellent options. If you were successful on your path to Ubuntu. Get in touch with me on &lt;a href="https://www.linkedin.com/in/gdwllb/"&gt;LinkedIn&lt;/a&gt;, talk to me about your experience. I reply in less than 30 minutes&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/IcoMfdWwY26mBcX008/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/IcoMfdWwY26mBcX008/giphy.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Until next time, See you later.&lt;/p&gt;

&lt;p&gt;And stay safe. Don't be weird and keep your mask on.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Hardware specifications for Developers on a budget</title>
      <dc:creator>Godwill Barasa</dc:creator>
      <pubDate>Wed, 30 Sep 2020 19:22:22 +0000</pubDate>
      <link>https://dev.to/godwillb/hardware-specifications-for-developers-on-a-budget-34ah</link>
      <guid>https://dev.to/godwillb/hardware-specifications-for-developers-on-a-budget-34ah</guid>
      <description>&lt;p&gt;&lt;strong&gt;Back story&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Remember the purple knight, well, sadly, it broke in the middle of a project. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/ktcUyw6mBlMVa/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/ktcUyw6mBlMVa/giphy.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Its specifications were Intel Celeron, 4 GB Ram, and 500 Hard disk space. Not the fastest I know, but I managed to make do with what I had for the last two years by making use of the lightweight Linux Distribution OS: Kubuntu. Still to this day, former workmates at Legibra remember me as the Kubuntu guy)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fqjxoghjtel3q9evu21ni.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fqjxoghjtel3q9evu21ni.jpeg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Time for new hardware.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I ordered a MacBook Pro 2020.&lt;/p&gt;

&lt;p&gt;End of article. Thanks for reading.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/xThuWhoaNyNBjTGERa/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/xThuWhoaNyNBjTGERa/giphy.gif" alt="Or is it"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MacBook Saga&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Just kidding. As you might already know am from Nairobi, Kenya. I am 22 years old and the mighty MacBook Pro 13 2020 costs Kshs. 198,000 (2100 USD), which is exorbitantly expensive for my current unemployed economic status  ( &lt;a href="https://www.linkedin.com/in/gdwllb/" rel="noopener noreferrer"&gt;contact me&lt;/a&gt; for remote jobs, my people ) that option is out of the window for me. If you are deep-pocketed I would definitely recommend you get the MacBook Pro. It's good for taking Instagram pictures.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fwyd8fybpbmod1ez2vx32.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fwyd8fybpbmod1ez2vx32.jpeg" alt="The one and only tech lead"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Other brands I would recommend you check out Microsoft Surface Pro 7, HP Spectre x360, Lenovo ThinkPad X1. These options are well above the 1,00O USD ( Kshs. 110,000, not forgetting inflation of prices by around 200 USD for “shipping fee”).&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Sadly, That’s definitely not my budget ( as per now, don’t forget to &lt;a href="https://www.linkedin.com/in/gdwllb/" rel="noopener noreferrer"&gt;contact&lt;/a&gt; me for any open remote positions).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/d2lcHJTG5Tscg/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/d2lcHJTG5Tscg/giphy.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The basics&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In general, what I need is :&lt;br&gt;
*Intel i5 CPU, with an i7, preferred&lt;br&gt;
*8GB RAM, with 16GB, preferred&lt;br&gt;
*1920 x 1080 resolution display.&lt;br&gt;
*Decent GPU &lt;br&gt;
*Support for multiple displays ( for the cool multi-monitor environment)&lt;br&gt;
*SSD support at very least with secondary HDD&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reality Check&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For my fellow Kenyans, Nigerians, and Mzanzi brothers and sisters: these brands might not be readily available at the nearest shop to you. I would suggest going to the shop and just showing the shop-guy these specifications and see what options you have. You will get the best value that way. However, if the models at your nearest shop don’t match (because for some reason they all sell i3 with 4 GB RAM), I suggest looking for a reliable shipper* ( can be a friend you made at dev.to) who would source the product from Best Buy (since the USA get the best prices) then ship them to you.&lt;/p&gt;

&lt;p&gt;I suggest Kentex Cargo for Kenyans. Do your research depending on where you are. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Beware of frauds. Stay safe.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;My budget is around $400 to $800 (ouch). &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My options&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=NJjpUnJRlAI&amp;amp;ab_channel=ShortCircuit" rel="noopener noreferrer"&gt;Dell Inspiron 5991&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=emt7-FGyreo&amp;amp;ab_channel=MobileTechReview" rel="noopener noreferrer"&gt;Lenovo c740&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=emt7-FGyreo&amp;amp;ab_channel=MobileTechReview" rel="noopener noreferrer"&gt;Lenovo Flex 14&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=2RHtN8F_d9Q&amp;amp;ab_channel=HardwareCanucks" rel="noopener noreferrer"&gt;Asus Vivobook&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=gqe69z-4QqU&amp;amp;t=194s&amp;amp;ab_channel=MatthewMoniz" rel="noopener noreferrer"&gt;HP Envy&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Comment below on what hardware you use and what you use it for.&lt;/p&gt;

&lt;p&gt;Feel free to contact me on &lt;a href="https://www.linkedin.com/in/gdwllb/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; or &lt;a href="https://www.instagram.com/godwllb/" rel="noopener noreferrer"&gt;Instagram&lt;/a&gt; and tell me stories. Related or unrelated. I love making new friends from around the world.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Also, I am a front-end developer open to remote work. If you have an open position or side gig, help me get the MacBook Pro (To take beautiful Instagram pics with) by scheduling me for an interview.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/kaBU6pgv0OsPHz2yxy/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/kaBU6pgv0OsPHz2yxy/giphy.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>firstyearincode</category>
      <category>webdev</category>
      <category>devrel</category>
    </item>
    <item>
      <title>The JAMstack by Godwill Barasa</title>
      <dc:creator>Godwill Barasa</dc:creator>
      <pubDate>Tue, 15 Sep 2020 06:09:57 +0000</pubDate>
      <link>https://dev.to/godwillb/the-jamstack-by-godwill-barasa-2b02</link>
      <guid>https://dev.to/godwillb/the-jamstack-by-godwill-barasa-2b02</guid>
      <description>&lt;p&gt;JAMstack is quite popular right now in the developer world. But what exactly is it? Should you use JAMstack for your next project?&lt;br&gt;
Termed as a new approach to make our websites faster and more secure, does it live up to the hype?&lt;/p&gt;

&lt;p&gt;This is a quick guide to JAMstack.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is it?&lt;/strong&gt;&lt;br&gt;
It’s typically comprised of 3 components: Javascript, APIs, and Markup. Its history stems from growing the term “static site” into something more meaningful (and marketable). So while ultimately a static site is the end result, it’s blown up to include first-class tooling for every step of the way. Javascript is for any dynamic programming during the request/response cycle, running exclusively on the client. APIs are for All server-side functions or database actions. They are abstracted into reusable APIs, accessed over HTTPS with JS. Markup is prebuilt at build time, usually using a site generator for content sites, or a build tool for web apps.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;JAMstack is revolutionizing the way we think about workflow by providing a simpler developer experience, better performance, lower cost, and greater scalability.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is all great. But in practice, what does it really mean?&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem with the legacy web
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--eJ22V-v---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/98an0jjqqvjftzgu3omm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--eJ22V-v---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/98an0jjqqvjftzgu3omm.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For a long time, web developers used coupled CMS: it organized development efforts and gave clients the autonomy to manage their site. This made the hand-over of web projects and customization by the client easier.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;But that was 5+ years ago. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Many web developers have since felt the pains of working with CMS. We became aware that traditional CMSs (WordPress) were too much. We realized how cumbersome and opinionated they were. They also had numerous security problems such as cross-site scripting, brute force attack, file inclusion exploits, and malware mostly from Plug-Ins.&lt;/p&gt;

&lt;h2&gt;
  
  
  How JAMstack works
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Decoupling the frontend from the backend
&lt;/h3&gt;

&lt;p&gt;Unlike the large legacy apps, Jamstack projects neatly separate the frontend pages and UI from the backend apps and databases. Freed from backend servers, the frontend can then be deployed globally, directly to a CDN.&lt;/p&gt;

&lt;h3&gt;
  
  
  Prebuilding all pages for speed
&lt;/h3&gt;

&lt;p&gt;Before deployment, the entire front end is prebuilt into highly optimized static pages and assets. This happens in a build process (before being deployed/hosted).&lt;/p&gt;

&lt;h3&gt;
  
  
  Dynamic content via APIs
&lt;/h3&gt;

&lt;p&gt;The global front end uses Javascript and APIs to talk to backend services, allowing pages to be enhanced and personalized.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZGyRr63Z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/2ol8py7wisq3fram3bfq.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZGyRr63Z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/2ol8py7wisq3fram3bfq.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Advantages of JAMstack.
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Faster performance
&lt;/h3&gt;

&lt;p&gt;Serve pre-built markup and assets over a CDN&lt;/p&gt;

&lt;h3&gt;
  
  
  More secure
&lt;/h3&gt;

&lt;p&gt;No need to worry about server or database vulnerabilities&lt;/p&gt;

&lt;h3&gt;
  
  
  Less expensive
&lt;/h3&gt;

&lt;p&gt;Hosting of static files are cheap or even free&lt;/p&gt;

&lt;h3&gt;
  
  
  Better developer experience: Front end developers can focus on the front end, without being tied to a monolithic architecture. This usually means quicker and more focused development
&lt;/h3&gt;

&lt;h3&gt;
  
  
  Scalability
&lt;/h3&gt;

&lt;p&gt;If your product suddenly goes viral and has many active users, the CDN seamlessly compensates.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;When building Jamstack projects, you can really get the most out of the stack if you stick to a few best practices.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Entire Project on a CDN
&lt;/h3&gt;

&lt;p&gt;Because Jamstack projects don’t rely on server-side code, they can be distributed instead of living on a single server. Serving directly from a CDN unlocks speeds and performance that can’t be beaten. The more of your app you can push to the edge, the better the user experience.&lt;/p&gt;

&lt;h3&gt;
  
  
  Everything Lives in Git
&lt;/h3&gt;

&lt;p&gt;With a Jamstack project, anyone should be able to do a git clone, install any needed dependencies with a standard procedure (like npm install), and be ready to run the full project locally. No databases to clone, no complex installs. This reduces contributor friction and also simplifies staging and testing workflows.&lt;/p&gt;

&lt;h3&gt;
  
  
  Modern Build Tools
&lt;/h3&gt;

&lt;p&gt;Take advantage of the world of modern build tools. It can be a jungle to get oriented in and it’s a fast-moving space, but you’ll want to be able to use tomorrow’s web standards today without waiting for tomorrow’s browsers. And that currently means Babel, PostCSS, Webpack, and friends.&lt;/p&gt;

&lt;h3&gt;
  
  
  Automated Builds
&lt;/h3&gt;

&lt;p&gt;Because Jamstack markup is prebuilt, content changes won’t go live until you run another build. Automating this process will save you lots of frustration. You can do this yourself with webhooks, or use a publishing platform that includes the service automatically.&lt;/p&gt;

&lt;h3&gt;
  
  
  Atomic Deploys
&lt;/h3&gt;

&lt;p&gt;As Jamstack projects grow really large, new changes might require re-deploying hundreds of files. Uploading these one at a time can cause inconsistent state while the process completes. You can avoid this with a system that lets you do “atomic deploys,” where no changes go live until all changed files have been uploaded.&lt;/p&gt;

&lt;h3&gt;
  
  
  Instant Cache Invalidation
&lt;/h3&gt;

&lt;p&gt;When the build-to-deploy cycle becomes a regular occurrence, you need to know that when a deploy goes live, it really goes live. Eliminate any doubt by making sure your CDN can handle instant cache purges.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;So, what tools should you use for a JAMStack?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The good news here, there are a ton of tools currently available and a ton more on the way. They might still be a little rough around the edges, but that’s because this is a brave new world of tooling and that takes some smoothing out to get just right.&lt;br&gt;
Pick your favorite flavor of the UI framework and get off the ground running.(Gatsby, or Scully for Angular fanboys)&lt;/p&gt;

&lt;p&gt;Tools like Netlify make it easy to configure by hooking into your Github repo and building anytime a new commit gets pushed, but of course, you have options like AWS if you want more control.&lt;br&gt;
Making your app dynamic&lt;/p&gt;

&lt;p&gt;Make your web app dynamic: I’m not going to list a bunch of examples per type, even better, here are a few tools and places you can find some resources.&lt;/p&gt;

&lt;p&gt;Auth0 — Authentication&lt;br&gt;
Cloudinary — Media management&lt;br&gt;
Google Analytics — Web traffic analytics&lt;br&gt;
headlesscms.org — Endless list of headless CMSs&lt;br&gt;
Sanity — CMS&lt;br&gt;
Serverless Framework — DIY, easy to deploy serverless resources&lt;br&gt;
Snipcart — Ecommerce&lt;br&gt;
Stripe — Payment management&lt;br&gt;
And a bunch of other resources…&lt;br&gt;
And a bunch of other CMS choices…&lt;br&gt;
And some general info and tools…&lt;/p&gt;

&lt;p&gt;Missing your favorite JAMstack tool or an awesome example? Connect with me on &lt;a href="https://www.linkedin.com/in/gdwllb/"&gt;LinkedIn&lt;/a&gt; or comment below.&lt;/p&gt;

&lt;p&gt;Have a great day(or night) wherever you are, from Nairobi.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>firstyearincode</category>
    </item>
    <item>
      <title>Life of a Kenyan Software Developer</title>
      <dc:creator>Godwill Barasa</dc:creator>
      <pubDate>Sat, 12 Sep 2020 02:53:01 +0000</pubDate>
      <link>https://dev.to/godwillb/life-of-a-kenyan-software-developer-jbf</link>
      <guid>https://dev.to/godwillb/life-of-a-kenyan-software-developer-jbf</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kyclm1QR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3n4sjhnm9epq23ipi3um.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kyclm1QR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3n4sjhnm9epq23ipi3um.jpeg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here is a little context, My name is Godwill Barasa. I am a 23-year-old software developer based in Nairobi, Kenya. I live in Roysambu, TRM Drive. More often than not, when people during family gatherings, ask me what I do for a living.&lt;br&gt;
Perhaps is the casual wear I am known for having after trying to go to my sister’s wedding with a hoody ( don’t worry it did not happen ). I am going to give everyone a picture of how a 23-year-old software developer based in Kenya undertakes his dailies.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Rrn3Pwkt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/5hd8fv2gooboqyb7bu06.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Rrn3Pwkt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/5hd8fv2gooboqyb7bu06.jpeg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;5:00 AM&lt;br&gt;
I wake up at 5:00 am. I jog to my local gym which is not far from my apartment. I do a 40-minute work out with my trainer (who is also my neighbor). I take a shower at around 5:50 am and make breakfast which is almost always an egg, Bread, and Tea.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---ABUFpgj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/vzc0zge3ykvwvb7tb6y7.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---ABUFpgj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/vzc0zge3ykvwvb7tb6y7.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;6:30 AM&lt;br&gt;
I put on some mood music usually something like 30 Seconds to Mars or a podcast. I browse my emails, check my LinkedIn for new connections. I do not use Facebook or Instagram because they make me anxious. I get why people employ social media managers. I am not inactive though, I try to post content to keep my brand on point.&lt;/p&gt;

&lt;p&gt;7:00 AM&lt;br&gt;
My meals are normally pre-packaged which is a pro-move since food prices near the office are pricy and tasteless. I pack them and then pre-heat them in the company kitchen. I take my Acer, Charger, and Notebook and throw it into my olive backpack. Earphones are also definite must-have essential.&lt;/p&gt;

&lt;p&gt;7: 20 AM&lt;br&gt;
I board a matatu bound to tao. It is almost always chilly and grey in the morning in Nairobi( however, it becomes hotter as the day continues). More mood music and a novel, right now am reading Harper Lees, To kill a mocking bird. Harper Lee believed to be one of the most influential authors to have ever existed, famously published only a single novel (up until its controversial sequel was published in 2015 just before her death). Lee’s To Kill a Mockingbird was published in 1960 and became an immediate classic of literature.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_TbO82kH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/s847ilpvij1jcg1rhglg.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_TbO82kH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/s847ilpvij1jcg1rhglg.jpeg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;8:00 AM&lt;/p&gt;

&lt;p&gt;On a good day ill be at the CBD by 8:00 AM. I would then check-in at the Jomo Kenyatta NCBD Campus, my university. I am a student class representative for my Bachelor of Business Information &amp;amp; Technology class. Make sure I have my schedule mapped out. I also water the plants at the reception, sometimes. The receptionist is a middle-aged woman who is so motherly everyone calls her Nana. I call my classmates and send them the days schedule on Slack and WhatsApp.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Yt0XzG9s--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/f72p1aw3lxnrsg5lgfbe.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Yt0XzG9s--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/f72p1aw3lxnrsg5lgfbe.jpeg" alt="My university"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;8:30 AM&lt;br&gt;
I’ll arrive at the office. I make a coffee for a little more energy. I take this time to assess my to-do app. I check what has been done and what has not. I also send work emails and alerts on slack teams. This is when I reply to other work emails that require further discussions. These issues are the ones which rise in the next hour.&lt;/p&gt;

&lt;p&gt;9:00 AM&lt;br&gt;
We have a scrum meeting with designers, project managers, sometimes the CTO (but mostly not). It is designed for teams who break their work into goals that can be completed within timeboxed iterations, called sprints, no longer than one month, and most commonly two weeks. The Scrum Team tracks progress in 15-minute time-boxed daily meetings, called daily scrums. At the end of the sprint, the team holds a sprint review, to demonstrate the work done, and sprint retrospective to continuously improve. Some good ol’ Software Engineering&lt;/p&gt;

&lt;p&gt;9:30 AM&lt;br&gt;
Problem-solving mostly( very little coding ) just trying to solve problems from a very high level of understanding. This is very important to me as it helps me treat my code as art. Very in touch with what is needed by the user or investor.&lt;/p&gt;

&lt;p&gt;10:00 AM&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--L_Z0YWij--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/y3f7mlfej8ab4m0epn93.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--L_Z0YWij--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/y3f7mlfej8ab4m0epn93.jpeg" alt="Godwills Workspace"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Godwill Barasa Set-Up, My purple knight&lt;br&gt;
Id stack working on the code. My set up is a dual-screened monitor. I also have a very slow purple Acer, Intel Celeron. However, being a Ubuntu Fan-boy this does not lag at all for writing Javascript code. About Javascript, the stack we use is React.js, GraphQL, Gatsby, Strapi, or WordPress Headerless CMS. popularly known as the Jamstack. The Jamstack is not about specific technologies. It’s a new way of building websites and apps that delivers better performance, higher security, lower cost of scaling, and better developer experience.&lt;br&gt;
Dev lives matter. Loose coupling and separation of controls allow for more targeted development and debugging, and the expanding selection of CMS options for site generators removes the need to maintain a separate stack for content and marketing.&lt;/p&gt;

&lt;p&gt;I listen to Frank Ocean and finish what I had set out to do on that day as per the daily scrum.&lt;/p&gt;

&lt;p&gt;1:00 pm LUNCH&lt;br&gt;
Or gaming&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PXP2zbaq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/zjh8xkwf76wq6qdoiayo.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PXP2zbaq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/zjh8xkwf76wq6qdoiayo.jpeg" alt="Godwill Barasa and Steve on a gentleman game of FIFA"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;2:00 2 HOUR CODING SESSION&lt;br&gt;
Also A short meeting with Human Resource, she says I might be exhausted from school and work. She gives me a go-ahead to work from home on Friday.&lt;/p&gt;

&lt;p&gt;I love working from home. Roysambu is treating me too nice, I pay 15,000KES (150 USD) rent.  It’s worth it, closeness to CBD, Security. Its also close to Andela ( I need Andela Merchandise, guys.) home of very cool tech events usually Saturdays. Very beautiful minds truly top 1 percent talent&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--CrqDDPry--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/xp0sycth61ey4xch98my.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--CrqDDPry--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/xp0sycth61ey4xch98my.jpg" alt="Kinfolk"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;4:00 PM&lt;br&gt;
I stop working on the site. Make notes on the day and start thinking of tomorrow’s sprint meeting. For now, I would open my Codecademy account and learn up to around 7:00 pm. Most people I have met have a problem with this, say I spend too much time at work. I use that moment to make sure am at the top of my game in web development. From dealing with JSON data from APIs to Querying data with SQL. I also have a data science course (but don't tell anyone)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BH555nOT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/e5tgh53k6zdge137u0y8.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BH555nOT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/e5tgh53k6zdge137u0y8.jpeg" alt="Outdoor learning"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I also have evening classes at this time so whenever am not at work, am in school.&lt;/p&gt;

&lt;p&gt;7:00 pm&lt;br&gt;
School Work. sometimes classes&lt;/p&gt;

&lt;p&gt;8:00 PM&lt;br&gt;
A matatu ride back to Roysambu. There are usually no jams in Thika Road at that time. It takes around 10 minutes. It costs around 60 bob and uber costs around 500 bob.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--tydEHVbu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/oc2tvg0b276gudc603nd.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--tydEHVbu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/oc2tvg0b276gudc603nd.jpeg" alt="Famous matatu back home"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I cook something and watch a Netflix series as I eat. I doze off watching cartoons by around 11 pm.&lt;/p&gt;

&lt;p&gt;That's it. That's the story about the software engineer in Nairobi, Kenya&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.instagram.com/godwllb/"&gt;https://www.instagram.com/godwllb/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.linkedin.com/in/gdwllb/"&gt;https://www.linkedin.com/in/gdwllb/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devrel</category>
    </item>
  </channel>
</rss>
