<?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: Javier Barbaran</title>
    <description>The latest articles on DEV Community by Javier Barbaran (@javibarbaran).</description>
    <link>https://dev.to/javibarbaran</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%2F218589%2F06687e6b-ffc1-4743-83eb-048824134ff5.jpeg</url>
      <title>DEV Community: Javier Barbaran</title>
      <link>https://dev.to/javibarbaran</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/javibarbaran"/>
    <language>en</language>
    <item>
      <title>How to build a personal blog without paying a single euro</title>
      <dc:creator>Javier Barbaran</dc:creator>
      <pubDate>Sat, 19 Apr 2025 15:53:39 +0000</pubDate>
      <link>https://dev.to/javibarbaran/how-to-build-a-personal-blog-without-paying-a-single-euro-3adc</link>
      <guid>https://dev.to/javibarbaran/how-to-build-a-personal-blog-without-paying-a-single-euro-3adc</guid>
      <description>&lt;p&gt;Most people who needs a blog or a personal website would normally use a CMS (Content Management System). There are a bunch of very well known options, such as, WordPress, Blogger, Wix, Drupal, Joomla, Ghost, Jekyll, or Hugo. However, many of these options come with recurring fees or annoying ads. But what if I told you that you don’t have to pay a single cent to have a fast, and professional blog? And what if that blog could be hosted for free?&lt;/p&gt;

&lt;p&gt;So, either if you already have a blog or you are considering on making one, keep reading, I'm sure you'll find this post very insteresting.&lt;/p&gt;

&lt;p&gt;As developers, we have the knowledge and tools to create our own digital space without spending a single euro. The reality is that most of us still pay for our websites.&lt;/p&gt;

&lt;p&gt;In this post, &lt;em&gt;I’ll walk you through my journey from WordPress to switching to Hugo, an open-source static site generator that I now use for my personal blog.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  My Journey towards Hugo CMS
&lt;/h2&gt;

&lt;p&gt;I’ve been running a personal website since 2008 using WordPress, and it is an amazing software. No need to say more when WordPress by itself powers around 30% of the websites worldwide!!!. &lt;/p&gt;

&lt;p&gt;But I always wanted to have my site multilingual,and doing so things get complicated or more expensive. That's when I decided to look for a different approach.&lt;/p&gt;

&lt;p&gt;After doing some research I discovered Hugo CMS: An open-source, static site generator with amazing multilingual support. And the best part? It's completely free!&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Hugo?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm8vr1dthlhfzh7gplp3r.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm8vr1dthlhfzh7gplp3r.webp" alt="Image Hugo logo" width="800" height="209"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hugo is a headless CMS based on Markdown, and it has a huge community of developers who share a variety of themes. It's incredibly fast and doesn't require you to write a single line of code to get started. You just need to set up a configuration file and you're good to go.&lt;/p&gt;

&lt;p&gt;It's also a static CMS, which means your site will no depend on databases, serving pure HTML, making it super fast and easy to host anywhere, for free!&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting started with Hugo
&lt;/h2&gt;

&lt;p&gt;Setting up Hugo is straightforward, check out this &lt;a href="https://gohugo.io/getting-started/quick-start/" rel="noopener noreferrer"&gt;link&lt;/a&gt;. Here’s how to do it in just a few steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Install Hugo: Follow the installation guide &lt;a href="https://gohugo.io/installation/" rel="noopener noreferrer"&gt;here&lt;/a&gt;. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose a Theme: Browse the themes at &lt;a href="https://themes.gohugo.io/" rel="noopener noreferrer"&gt;Hugo Themes&lt;/a&gt;. I personally recommend PaperMod, which is the one I chose.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Configure Your Site: Adjust the configuration file (TOML or YAML) to match your preferences. You can find an example of my configuration for PaperMod &lt;a href="https://github.com/jbarbaran/hugoblog/blob/main/hugo.toml" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Preview Locally: Run hugo serve and visit &lt;a href="http://localhost:1313/" rel="noopener noreferrer"&gt;http://localhost:1313/&lt;/a&gt; to see your site live on your computer.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Once you are happy with the result, go live! (keep reading!)&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Hosting Your Hugo Blog for Free
&lt;/h2&gt;

&lt;p&gt;Now that you’ve created an amazing blog, it's time to share it with the world!&lt;/p&gt;

&lt;p&gt;Here are some of the best free hosting options for static sites:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://pages.github.com/" rel="noopener noreferrer"&gt;GitHub Pages&lt;/a&gt;: Host your site directly from a GitHub repository.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://pages.cloudflare.com/" rel="noopener noreferrer"&gt;Cloudflare Pages&lt;/a&gt;: I personally recommend Cloudflare Pages for its great performance and custom domain support.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.netlify.com/" rel="noopener noreferrer"&gt;Netlify&lt;/a&gt; and &lt;a href="https://vercel.com/" rel="noopener noreferrer"&gt;Vercel&lt;/a&gt;: Both offer fast and free hosting with easy integration.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(I may have missed some other interesting options, if you know others please share them down bellow, in comments!)&lt;/p&gt;

&lt;p&gt;In my case, I compared all the previous options and I chose &lt;a href="https://pages.cloudflare.com/" rel="noopener noreferrer"&gt;Cloudflare pages&lt;/a&gt;, which it seems to me like the best option. &lt;/p&gt;

&lt;p&gt;How to do it? Again, it is rather easy and it is very well documented. Just follow &lt;a href="https://developers.cloudflare.com/pages/framework-guides/deploy-a-hugo-site/" rel="noopener noreferrer"&gt;this guide&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Just remark that you have to use git and upload the source code of your website to GitHub and doing so, every time you push your changes to your repo Cloudflare detects it automatically and publish it instantly.&lt;/p&gt;

&lt;p&gt;By the way, my website is &lt;a href="https://javierbarbaran.com" rel="noopener noreferrer"&gt;javierbarbaran.com&lt;/a&gt;. I'd love to hear what you think, and I encourage you to share your experience if you decide to go this route!&lt;/p&gt;

&lt;p&gt;Happy coding!&lt;/p&gt;

</description>
      <category>developers</category>
      <category>website</category>
      <category>programming</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Advent of Code 2024</title>
      <dc:creator>Javier Barbaran</dc:creator>
      <pubDate>Sat, 30 Nov 2024 08:33:10 +0000</pubDate>
      <link>https://dev.to/javibarbaran/advent-of-code-2024-26mm</link>
      <guid>https://dev.to/javibarbaran/advent-of-code-2024-26mm</guid>
      <description>&lt;p&gt;🎁 🎶 It's beginging to look a lot like Christmas.... 🎶 🎄&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe4fx3fnz0jwyp1ymtt8y.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe4fx3fnz0jwyp1ymtt8y.gif" alt="Alt Animated GIF Duggee exited about Christmas" width="500" height="281"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Since 2020, when I first discovered Advent of Code &lt;a href="https://adventofcode.com/" rel="noopener noreferrer"&gt;adventofcode.com&lt;/a&gt;, I can't help but feel excited as November ends. Every year, I start planning which programming language, IDE, or technology I’ll use for this fun and challenging event.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Advent of Code (AoC)?
&lt;/h2&gt;

&lt;p&gt;Wait... you don’t know what Advent of Code is? No worries, let me explain!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://adventofcode.com/" rel="noopener noreferrer"&gt;adventofcode.com&lt;/a&gt; is a website created by Eric Wastl where, from December 1st to December 25th, a daily programming puzzle is published. These puzzles can be solved with code, and they range from simple to complex as the days progress. If you enjoy programming, it’s an incredibly fun experience!. For a sneak peak, check out puzzles from previous years &lt;a href="https://adventofcode.com/2024/events" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;For me, Advent of Code has become a tradition that marks the beginning of the Christmas season.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fit93kt1d1r74wrso7pit.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fit93kt1d1r74wrso7pit.gif" alt="Alt Animated GIF Carlton Banks dancing for Christmas" width="245" height="188"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How to approach Advent Of Code
&lt;/h2&gt;

&lt;p&gt;Advent of Code can be a great opportunity to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Learn a new programming language or get comfortable with a new IDE.&lt;/li&gt;
&lt;li&gt;Sharpen your skills with algorithms, recursion, optimization, and more.&lt;/li&gt;
&lt;li&gt;Just have fun coding with the language and tools you already love!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Whether you’re diving into something new or sticking with what you know, the key is to enjoy the journey.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why join the challenge?
&lt;/h2&gt;

&lt;p&gt;There are several reason for taking this challenge, however the most important one is: &lt;strong&gt;to have fun!&lt;/strong&gt;. Beyond that, it is an excellent opportunity to sharpen your skills. I totally recommend it, either if you are beginner in coding, or either you are an experienced developer, the challenges will push you and broaden your knowledge!&lt;/p&gt;

&lt;h2&gt;
  
  
  You are not alone!
&lt;/h2&gt;

&lt;p&gt;Lets be real, it’s not a walk in the park, and as days go by, the puzzles are more complex so you have to spend for time solving it.  There is a huge range of algorithms covered, recursivity, optimization, branch and bound, ... so it is rather complicated to get to the whole advent of calendar.&lt;/p&gt;

&lt;p&gt;When you get stuck (because let’s face it, it happens to everyone),we must not forget that there is a active and supportive community in &lt;a href="https://www.reddit.com/r/adventofcode/" rel="noopener noreferrer"&gt;Reddit&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  My setup for 2024
&lt;/h2&gt;

&lt;p&gt;This year, I’ve decided to use &lt;strong&gt;C# with the latest .NET version in Visual Studio Code, and also Dev Containers&lt;/strong&gt;. Why? &lt;a href="https://code.visualstudio.com/docs/devcontainers/containers" rel="noopener noreferrer"&gt;dev containers in Visual Studio&lt;/a&gt; offer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A consistent, isolated development environment.&lt;/li&gt;
&lt;li&gt;Security and ease of managing dependencies.&lt;/li&gt;
&lt;li&gt;The ability to keep my base OS clean, regardless of the tools or languages I’m using.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With a busy schedule, I need something efficient, and this setup feels like the perfect balance of productivity and fun.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final thoughts
&lt;/h2&gt;

&lt;p&gt;What about you? Will you participate this year? Is it your first time, or are you a regular participant? I’d love to hear about your plans, tech stack, and experiences in the comments below!&lt;/p&gt;

&lt;p&gt;If you enjoyed this post, please leave a like and share your thoughts. Happy coding, and good luck with Advent of Code!&lt;/p&gt;

</description>
      <category>adventofcode</category>
      <category>algorithms</category>
      <category>coding</category>
      <category>christmas</category>
    </item>
    <item>
      <title>Ubuntu Setup Essentials: First Steps After Installing on a 2015 MacBook Air</title>
      <dc:creator>Javier Barbaran</dc:creator>
      <pubDate>Sun, 10 Nov 2024 15:25:03 +0000</pubDate>
      <link>https://dev.to/javibarbaran/ubuntu-setup-essentials-first-steps-after-installing-on-a-2015-macbook-air-27jh</link>
      <guid>https://dev.to/javibarbaran/ubuntu-setup-essentials-first-steps-after-installing-on-a-2015-macbook-air-27jh</guid>
      <description>&lt;p&gt;In the first part of this series I showed how easy it was and the great performance I got when installing Ubuntu 24.04 LTS on a 2015 MacBook Air to give it a new lease on life. &lt;/p&gt;

&lt;p&gt;The turn over is.... Surprise! As I mentioned before, all the laptop's functionality works perfectly! Plus, the system speed is noticeably better compared to macOS. And that is awesome.&lt;/p&gt;

&lt;p&gt;Now that I have a fresh Ubuntu installation, what are the next steps? There are a ton of very professional websites showing advanced first steps in Linux in general (deleting unused users, securing root, enabling SSH access, setting up a firewall, among a lot others). After researching online, I've compiled a list of essential and straight-forward first tasks:&lt;/p&gt;

&lt;h2&gt;
  
  
  Update the System
&lt;/h2&gt;

&lt;p&gt;Keeping your system updated is essential for getting the latest security patches and an optimized experience.&lt;/p&gt;

&lt;p&gt;First, refresh your local package index by running the following command in the terminal:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;sudo apt update&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Then, upgrade your packages to the latest versions with this command:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;sudo apt upgrade&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Finally, open the Software Center to check if any installed applications have pending updates.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1fllw18i6y0z72krcnpy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1fllw18i6y0z72krcnpy.png" alt="Applications centre updates" width="800" height="435"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Get Familiar with the GNOME Desktop
&lt;/h2&gt;

&lt;p&gt;Even though I’ve used Linux—and specifically Ubuntu—before, I mostly use Windows on a daily basis. GNOME is quite intuitive, but it's a good idea to spend a few minutes exploring its options, menus, applications, and getting comfortable with the system.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Customize the Desktop&lt;/strong&gt;&lt;br&gt;
In the Settings menu, you'll find tools to personalize the system. The &lt;strong&gt;Appearance&lt;/strong&gt; section is especially useful, allowing you to switch to dark mode, change the wallpaper, and adjust the dock’s position.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6cwxfvf41goi34umz736.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6cwxfvf41goi34umz736.png" alt="Ubuntu appearance setup" width="800" height="553"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Install Your Preferred Software
&lt;/h2&gt;

&lt;p&gt;The easiest way to install software is through the Software Center, which includes many popular applications.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm94sz3auf8veyhw6tnqi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm94sz3auf8veyhw6tnqi.png" alt="Ubuntu applications centre" width="800" height="491"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In my case, I've already installed some essentials that I frequently use and will add more as needed:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Brave – This browser looks promising, and I’m eager to try it. Ubuntu comes with Firefox by default.&lt;/li&gt;
&lt;li&gt;Visual Studio Code – A versatile code editor and development environment.&lt;/li&gt;
&lt;li&gt;Element – A Matrix client for decentralized communication.&lt;/li&gt;
&lt;li&gt;Prioritize Security: Enable and Configure the Firewall&lt;/li&gt;
&lt;li&gt;Ubuntu includes UFW (Uncomplicated Firewall), which is simple to configure and effective. &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Configuring Ubuntu Firewall (UFW, Uncomplicated Firewall)
&lt;/h2&gt;

&lt;p&gt;UFW (Uncomplicated Firewall) does not have its own web interface for configuration, so it is generally managed from the terminal in Linux operating systems. It is a firewall tool designed to be simple and easy to use, especially on Ubuntu and similar distributions, and it allows for simplified firewall rule management through command-line commands. Therefore, I'm going to provide here a few basic steps to configure it.&lt;/p&gt;

&lt;p&gt;To check the current firewall status:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;sudo ufw status&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;By default, it will be inactive, so activate it with this command &lt;strong&gt;&lt;em&gt;(NOTE: Do not activate it if you're connected to the Ubuntu via SSH or you would lose connectivity with it)&lt;/em&gt;&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;sudo ufw enable&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Then, set a basic policy by denying incoming connections by default and allowing outgoing ones:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;sudo ufw default deny incoming&lt;br&gt;
sudo ufw default allow outgoing&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Next, allow exceptions to browse the web (enabling HTTP and HTTPS ports) and to access the device via SSH:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;sudo ufw allow http&lt;br&gt;
sudo ufw allow https&lt;br&gt;
sudo ufw allow ssh&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Advanced Steps
&lt;/h2&gt;

&lt;p&gt;Many guides mention the option of enabling &lt;strong&gt;Flatpak&lt;/strong&gt;, an alternative to Snap, which is Ubuntu's default package manager. Each has its pros and cons, so it’s a good idea to research both before making a choice. &lt;a href="https://itsfoss.com/flatpak-vs-snap/" rel="noopener noreferrer"&gt;You can find more details about these package systems in this link&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;My last experience with Ubuntu was a few years ago, and returning to it now, I’m impressed with its evolution. Compatibility with older hardware has improved, and today it offers a much smoother and efficient experience. For me, installing Ubuntu on my MacBook Air has been a success: it went from barely usable to fast, user-friendly, and fully compatible.&lt;/p&gt;

&lt;p&gt;With the steps outlined here, you have a solid foundation to start exploring Ubuntu.&lt;/p&gt;

</description>
      <category>ubuntu</category>
      <category>linux</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Reviving a 2015 MacBook Air with Ubuntu: A Step-by-Step Guide to Breathe New Life into Your Old Mac</title>
      <dc:creator>Javier Barbaran</dc:creator>
      <pubDate>Wed, 06 Nov 2024 20:30:06 +0000</pubDate>
      <link>https://dev.to/javibarbaran/reviving-a-2015-macbook-air-with-ubuntu-a-step-by-step-guide-to-breathe-new-life-into-your-old-mac-52c9</link>
      <guid>https://dev.to/javibarbaran/reviving-a-2015-macbook-air-with-ubuntu-a-step-by-step-guide-to-breathe-new-life-into-your-old-mac-52c9</guid>
      <description>&lt;p&gt;I have a 2015 MacBook Air with an Intel i5-5240U processor, 4GB of RAM, and a 128GB hard drive. Although I kept it updated with the latest macOS versions (increasingly difficult due to limited disk space), and that was a mistake. This caused the MacBook to slow down drastically, to the point that I barely used it anymore… basically, it became a glorified paperweight.&lt;/p&gt;

&lt;p&gt;The installation and user experience with Ubuntu has improved significantly since I last tried it about six or seven years ago. The process is super straightforward and efficient. Thanks to Ubuntu, my laptop has regained its speed! Here’s the step-by-step installation process:&lt;/p&gt;

&lt;h2&gt;
  
  
  Prerequisites
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;An old laptop or computer&lt;/strong&gt; (in this case, a MacBook Air 2015).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A USB drive with at least 8GB capacity&lt;/strong&gt; (I used a 128GB one, which is more than enough).&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Ubuntu Installation Steps
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Download Ubuntu: Start by downloading the Ubuntu image from its official website. You can do this from the MacBook itself (if it’s still usable) or from another computer, as I did. &lt;strong&gt;Which version to choose?&lt;/strong&gt; I recommend the latest LTS (Long-Term Support) version, which offers five years of maintenance and security updates. I installed Ubuntu 24.04 LTS.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create a bootable USB: The downloaded image will be in .iso format, which is a disk image. To create the bootable USB on Windows, I used Balena Etcher, which is straightforward and effective. This software has three main steps:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0674jzzh8wh5idotx4cy.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0674jzzh8wh5idotx4cy.jpg" alt="Balena Etcher application screenshot" width="800" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- Select the image:&lt;/strong&gt; Click on “Flash from file” and choose the .iso file you downloaded.&lt;br&gt;
&lt;strong&gt;- Select the target drive:&lt;/strong&gt; Make sure you pick the USB drive and not your computer’s hard drive.&lt;br&gt;
&lt;strong&gt;- Start the process:&lt;/strong&gt; Confirm everything is set, and click “Flash.” Writing and verification may take a few minutes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnmtl2o66gvkl7w16haue.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnmtl2o66gvkl7w16haue.jpeg" alt="Balena Etcher flashing screenshot" width="800" height="510"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Installing Ubuntu on the MacBook
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Boot from the USB drive: Connect the USB drive to the MacBook (which should be powered off), then turn it on while holding down the Option/Alt (⌥) key. You’ll see a list of recognized bootable drives, and you should select the USB icon. &lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fufsasofq2wy14udisqht.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fufsasofq2wy14udisqht.jpeg" alt="Macbook boot load" width="800" height="455"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Test before installing: Once Ubuntu loads, you’ll have two options: “Try” or “Install Ubuntu.” I recommend choosing “Try” to check if it recognizes all essential drivers. In my case, everything worked! From the backlit keyboard to the trackpad, WiFi, and special function keys.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Install Ubuntu: When you’re ready, click on the install icon on the Ubuntu desktop. The process is entirely guided and intuitive. You’ll only need to select language, keyboard configuration, and timezone. After a few minutes, Ubuntu was installed and ready to go.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Results and Conclusions
&lt;/h2&gt;

&lt;p&gt;And voilà! My MacBook Air feels like new. With Ubuntu, its performance is much smoother, boot times are quick, and the user experience is excellent. While I didn’t perform benchmark tests before wiping macOS, I can assure you the difference is incredible: the laptop flies!&lt;/p&gt;

&lt;p&gt;So, if you have an old computer and think your only options are recycling or discarding it, consider installing Linux. You could give it a second life with Ubuntu, Mint, or any other distribution. My recommendation is Ubuntu because, as I mentioned, the process was easy and the results fantastic.&lt;/p&gt;

&lt;p&gt;Until next time!&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>ubuntu</category>
      <category>linux</category>
      <category>macbook</category>
    </item>
  </channel>
</rss>
