Showing posts with label Google. Show all posts
Showing posts with label Google. Show all posts

Tuesday, November 6, 2018

Why use Fedora

Ubuntu may be the most popular Linux distribution however Fedora may be a better alternative for your desktop. Read to understand.
Photo by Clem Onojeghuo on Unsplash

Fedora Linux is a fantastic operating system. On this post I'd like to explore the reasons why I use and recommend Fedora as my daily driver, and present you with some of the reasons why I think it could be your next (and last) Linux distribution.

It's 2023 and there are endless praises to Fedora in YouTube. TL;DR: Since this post was written (7 years ago), Fedora became the most recommended Linux distro for users that want the best Linux experience. Hope you enjoy the article!

My personal journey

Everyone has their own Linux journey. In the beginning it's common for people to try out many distributions until they settle down to one they're comfortable with. In the end, it's all about trade offs. So let let me tell you mine and how I got to choosing Fedora as my main Linux Distribution.

I always used Linux... in dual-boot mode. My journey with it started two decades ago when I was introduced to Slackware Linux. What I loved in Slackware was the level of granularity in which I could tweak my system. But soon I realized that Slackware required a lot of hands on and quickly moved to Red Hat Linux (before RHEL) which provided a more streamlined experience with its package-based system based on yum/RPMs.

Since then I've tried (in that order): Mandriva, Fedora Core, OpenSuse and more recently Ubuntu, Mint, elementary OS, Xubuntu, Lubuntu, Arch, Manjaro and SOLUS. Yes, call me a distrohopper. Then I decided to retry Fedora 24 and check how it had progressed. Eight years later, Fedora remains my primary desktop.

With all that said, let me describe some of the reasons I think you should consider using Fedora on your desktop.

Why I chose Fedora

So let's explore some honest reasons to use Fedora.

Simplicity

Simplicity definitely comes first. Simplicity is one of the characteristics that I enjoy the most in Fedora and is the reason I often recommend it to new users. From the installation to the default UI, everything seems integrated, accessible, fast and intuitive to use. Plus, the default GNOME desktop is pretty solid, its animations are smooth and the performance is really good.

A Fedora workstation running Gnome 3.30 / Source

Stability

Fedora is very stable. And differently from what people think, Fedora is not a beta-testing environment for RHEL. Packages are tested on its development channel, validated and once stable with all dependencies met, released to millions of users. Be sure that for each update that you get, hundreds of hours of tests were performed.

Security

Fedora shines on the security aspect. We know that online security is way more than keeping the system up to date is as important as having a good anti-virus software, a working firewall and safe web browsing habits. Fedora counts with a robust SELinux integration and given its First Principle, Fedora users frequent more up to date software and kernel updates than all other non-rolling release distros.
For those who don't know, SELinux was developed by the NSA and is the standard access control tool for critical services blocking suspicious behavior by default.

Privacy

Linux users shouldn't be concerned about privacy. Or should we?  Fedora discloses its Privacy Policy publicly and adheres to it as to its core principles: Freedom, Friends, Features and First. Differently from other distributions, Fedora never sent your desktop search results to e-commerce sites, or contains intrusive telemetry that cannot be turned off.

Development-Friendly

Developers are pretty much covered with everything on the development site. You will find  Go, Rust Docker, Swift, Python, NodeJs, Ruby, Java,  among others can be found in the repos. Anything else? You will find it there.

Performance

Fedora performs. My 5 yr-old laptop boots in less than 10 seconds. The performance is mainly due to more up to date software and to keeping the OS running only with the necessary resources. Yes there are faster options and yes, Gnome is not as light as other window managers (but got really better as of Gnome 3.36) but it's still the best choice for the average user.

Freedom

With Fedora, free alternatives are chosen to proprietary code and content and limit the effects of proprietary or patent encumbered code on the Project. Releases that are predictable and include only 100% free software.

Community-Driven

Differently from other distros which are subject to private interests, Fedora is driven by a community of dedicated and passionate enthusiasts.  All communication is open to the public and everyone is invited to collaborate! The Fedora communities on the internet are pretty receptive and you'll always find someone willing to help you.

Reliability

The Fedora project serves as the base for RHEL and CentOS. So it needs to be mature, it needs to be stable. It's a very serious Linux desktop operating system used daily by millions of users and servers around the world. It needs to be reliable. Personally, I had zero problems in my last 5 years doing distribution upgrades.

Cutting-Edge Software

Fedora is frequently mentioned as the distribution that explores the outer limits of what Linux can do. But that's no news to Fedora users since is the First foundation adopted by the project. Fedora repos usually land features way earlier than Ubuntu and derivatives (Elementary, Mint and Pop!_OS) which IMHO is as best as it can be without being a rolling release. And remember, you can always add different repos or install software trough universal Linux packages like Flatpak.

Frequent Updates

Fedora updates are frequent. Sometimes, multiple times a week I get software upgrades covering security issues, performance, stability and even Kernel updates. It's also common to get multiple kernel updates per release. That usually means running a more mature, stable and secure kernel. It also means better performance and supported hardware too.

Impressive Software Selection

The default package repository contains all the software you will ever need. Plus, in Fedora the software can be managed by the powerful DNF package manager. For example, this is the number of packages (software) available from the repository ran from my XFCE instance:
DNF also handles distribution updates which happen twice a year.

Custom Software Repositories

The amount of software available on the official Fedora repo is incredible. Probably everything that you need, you can find there. But if you're not covered for the package selection on the free/default repo, you still could make use of RPM Fusion to install software that doesn't adhere to Fedora's requirements.

Not to mention Copr (Cool Other Package Repo), a Fedora project to help  building and managing third party package repositories easy. Copr is hosted under the Fedora Infrastructure and allows developers to create repos so they can be shared with users.

Excellent Hardware Support

Fedora has excellent support for hardware. I don't have cutting-edge hardware neither am a gamer so I cannot comment on that but for most people, both the Fedora installer and the kernel are very good at recognizing and activating the hardware. That's probably a good reason why most people stop distrohopping when they get to Fedora. Most of the issues (including lack of hardware support) disappear.

Incubator for new features

The Fedora community creates many of the technical features that have made Linux powerful, flexible, and usable for a wide spectrum of millions of users, administrators, and developers worldwide. In fact, this is the Missions and Foundations of the project:
The Fedora community prefers approaches that benefit the progress of free software in the future over those that emphasize short term ease of use.
Some of the features developed with Fedora include:
  • The Linux Kernel - there are hundreds of kernel hackers worldwide using Fedora. The most famous of them is Linus Torwalds, the creator of Linux ("It just works").
  • Wayland - a new display system replacing the venerable X.org.
  • XWayland - extensions to the X server so it can be run as a Wayland protocol.
  • systemd - Linux's default init system and used on 95% of the modern and most popular distros.
  • GNOME - a free and open-source desktop environment for Unix-like operating systems. 
  • The GTK toolkit - a cross-platform widget toolkit for creating graphical user interfaces.
  • PipeWire - a new audio and video subsystem
  • Flatpak - application packaging
  • The cockpit project - Manager your server in a web browser and perform system tasks with a mouse.
  • Anaconda installer - Anaconda is a free and open-source system installer for Linux distributions used in Fedora, RHEL, CentOS and other Linux distributions. 
  • Podman - a tool to create and maintain containers.
    Buildah - a tool to create and manage container images
  • Silverblue - a next-gen OS for the desktop 
  • Fedora CoreOS - a next-gen cloud appliance. 
  • Modularity - Modularity is a mechanism of making multiple versions of software available to your system.

Two upgrades per year

Because Fedora releases happen twice a year, you'll get big system updates (including Gnome, GCC and base libs) twice a year. It's the best way to have up to date software without the complexities and issues rolling release distros have. Upgrading is as simple as 2 clicks on the Software app or running the below on your terminal:
sudo dnf upgrade --refresh
sudo dnf install dnf-plugin-system-upgrade
sudo dnf system-upgrade download --releasever=XXX
sudo dnf system-upgrade reboot

Universal Linux Packages

You know you can install software using the package repos. Another option is using Snap or FlatPak. And installation is as simple as opening Software -> Searching and clicking install.

RHEL

Many people ignore this but another strong reason to use Fedora is because it's RHEL's upstream. You'll be using with Yum/DNF, SystemD, SELinux, and testing what will be available on the next RHEL, the leading Linux-based OS on servers. Invaluable knowledge to have.

Variants 

Don't like GNOME? Fedora also ships different spins including KDE, Xfce, LXQt, MATE, Cinnamon, LXDE and others. All available in both 64-bit and 32-bit versions. It has even support for ARM and IoT.

Fedora in some of its variants
You can also find on Labs, variants that are target to designers, astronomers, scientists and musicians.

A multitude of options for your desktop

Don't like the default? You can always change. For example, check this post to learn more about a multitude of desktops and window managers available on Fedora 31. Among my favorites:
  • i3 (and its Wayland alternative Sway) - my personal choice ❤!
  • XFCE - also use on my cloud instances, including on my Ubuntu instance on azure
  • KDE - an excellent desktop for your Linux PC
  • GNOME - I also have it installed at home as a fallback in case my i3 breaks (never happened 😊)
  • And another multitude of options - counting at 38 alternatives to customize your desktop
Still on tiling window managers, for a couple of years now I'm using the i3 window manager (shown on the screenshot below) and I love it! For more information check my post on why i3 is awesome, how to install it and why it will change the way you use your Linux desktop.
Source: DevianArt

So, Fedora is perfect?

Of course not! No software is perfect as no software will ever be bug-free. However, it's important to consider that open-source operating systems are extremely complex software bundles composed of thousands of packages developed by volunteers worldwide.

Fedora provides the best balance in what matters most: open-source software, up-to-date software and a strong focus on stability, security and privacy. Plus, you can find on Fedora and its derivatives everything you're looking for. Need a more stable environment for your server or container? Go with Fedora Server or CentOS. Want to go even more cutting edge on the desktop? Try Silverblue. Need a lightweight alternative for that old netbook? Go with Fedora XFCE. Using ARM on a Pi or on a Pinebook Pro? Try Fedora ARM!

Fedora also shines on its community aspect. The community is very open for onboarding newcomers and volunteers. And as previously mentioned, everyone is invited to collaborate, even if it's just to write articles for the Fedora Magazine. All communication is shared online and the teams are structured to help newcomers trough mentoring programs.

Conclusion

Fedora is a polished, modern, stable, secure and privacy-focused GNU/Linux operating system. With all its variants, I'm pretty sure there will be something for you too! If you have never used it, I would suggest that you try it, regardless of your technical background. If you use another distro, I would kindly recommend that you to download Fedora, install it on a VM and give it a try. And don't hesitate to send a big thank you to the @Fedora community on Twitter.

References

See Also

Monday, October 15, 2018

Customizing your Blogger title to improve SEO

How to use this simple tip and make your blog have more visibility.

Last week we discussed how to prevent archived pages from being indexed by crawlers. On this post we will discuss another nice improvement that we can add to our site: how to customize the tile of your page if you're using Blogger.

Changing Theme Settings

In order to do that, we will have to edit the html for our blog. As mentioned in the previous post, to edit our html, inside Blogger, we click Theme -> customize button:


Once the html opens, just at the beginning we can find the <tilte> tag. I replaced mine by:



Modified Template

After making this change, this is the expected logic:
  • if the page is an archive page (myblog/2018/05), show the blog title and add a noindex to the page so it won't show up in search results
  • else if the landing page, only show blog title
  • if it's a post page, then show the post title.

And this is my final source:
<b:if cond='data:blog.pageType == "archive"'>
<meta content='NOINDEX' name='ROBOTS'/>
<title><data:blog.title/></title>
<b:elseif cond='data:blog.pageType == "index"'/>
<title><data:blog.title/></title>
<b:else/>
<title><data:blog.pageName/></title>
</b:if>

Conclusion

There are many customizations that we can done to our pages. For more information check Blogger Help. Links specific to this post are referenced below.

See Also

For more posts like this, please click here.

References

Blogger Help - Widget Tags for Layouts
Blogger Help - Layouts Data Tags

Monday, October 8, 2018

Removing Blogger archives from Google to improve your SEO


If you're using Blogger like me to host your blog and tried to add your blog to google adding Google Search Console, you may have realized that by default, Blogger does not block Google from indexing your archived pages.

Potential problems are:
  • users won't find the content they are looking for
  • users will probably not click on your impressions
  • your site will be ranked low due to poor or duplicated results
  • some of your pages may even be banned

So how do we fix that?

Implementing noindex

According to Google:
You can prevent a page from appearing in Google Search by including a noindex meta tag in the page's HTML code, or by returning a 'noindex' header in the HTTP request. When Googlebot next crawls that page and see the tag or header, Googlebot will drop that page entirely from Google Search results, regardless of whether other sites link to it.
So, there are two ways to implement noindex: as a meta tag and as an HTTP response header. Using Blogger, the simplest is to make use of the meta <meta content='NOINDEX' name='ROBOTS'/>.

Let's take a look.

Editing the Template

To fix Blogger, you need to edit your html template by, in Blogger:
  1. open the Management Dashboard by: "Design"  (or "Layout") -> "Edit HTML"
  2. Backup your template by clicking "Download Full Template"
  3. Add the following three lines this just after <head> tag:
<b:if cond='data:blog.pageType == &quot;archive&quot;'>
     <meta content='NOINDEX' name='ROBOTS'/>
</b:if>



And save.  Now your template should then look like:

What's next?

Now just let Google and other search engines do their work. After a couple of weeks you should see that your archives disappeared from the search and your results are way clearer and concise giving users access to what they are looking for and hopefully increasing your engagement.

See Also

Customizing your Blogger title to improve SEO

For more posts like this, please click this link.

References

https://support.google.com/webmasters/answer/93710

Monday, May 14, 2018

Linux apps coming to Chromebooks

Excellent news for Chromebook users and Linux enthusiasts! Google announced that Linux apps are coming to Chrome OS.
Google recently announced that Linux apps are coming to Chromebooks! This is fantastic! But before we discuss how important that is for FOSS, Linux and which benefits it'll bring for Chromebooks owners, let's review Chromebooks and its OS, Chrome OS.

Chrome OS

Chrome OS was originally created as a Ubuntu spin off. It then migrated to Gentoo Linux and evolved to use custom Linux kernel. The UI has always been Chrome - the browser - being basically your only desktop app. The other apps initially available used were traditionally web apps (Gmail, YouTube, etc) wrapped inside a chrome window.
A Chromebook currently being sold on Google Store

Android Apps

Due to the limitations and availability of apps, Google worked to bring Android apps to the Chrome OS. While that's huge, you can run most of Android apps but not all. Reports show that the majority of other applications work flawlessly. That's million of apps. As a result, we've seeing a growing popularity of Chromebooks. But those apps lack advanced features for some users so Google decided to move further and integrate Linux apps to Chrome OS.

Linux apps on Chrome OS

In order to run Linux apps on Chrome OS, developers are working on what's called Project Crostini - an extension that will allow Linux VMs to run inside a container on Chrome OS. First spotted on Reddit, it seems it's already available on Chromium developer builds with a preview being quickly available for the Pixel book.

The main objective is to run these VMs run within containers on top of Linux's built-in Kernel-based Virtual Machine (KVM). This has an extra benefit in terms of security as those Linux apps would have be sandboxed within the container (and/or the VM below it) so that restrictions would exist from the guest to the host.

VentureBeat has some interesting notes regarding this project. According to them, Chrome OS director of product management Kan Liu has provided some insights, including:
“We put the Linux app environment within a security sandbox, running inside a virtual machine. We made sure the user experience is seamless to the user. Whether you use a web app, whether you are using an Android app, or whether you are using a Linux app, the window treatment and the way you launch the app from the launcher is the same.”

How it will happen

Still according to VentureBeat, you won’t see the windows from the Linux side; it’s just running within a Chrome OS window. So expect Chrome to wrap those tools as regular windows similarly to how you're used on Windows and MacOS. On the backend, expect some Wine integration.

Quick Start

Another good news is that, according to Google, it's estimated that the backend VM will starts up in a second meaning that running Linux apps will happen very smoothly.

Security

 Apart from running apps containerized within a VM, VentureBeat reports:
“The files are actually inside the VM as well. From a security standpoint, that’s what makes it safer. But you’ll be able to access files from both sides. If you were ever to get malware in the Linux side, for example, it can’t contaminate the rest of Chrome OS.”

Requirements

Some extra requirements include some extra storage space (300MB for Linux and more for the apps) and Linux kernel version 4.4 or higher.

Conclusion

Considering that we already can run most of Android apps and soon, we'll be able to also run native Linux apps on Chrome OS, Chromebooks are definitely becoming a real operating system. The reason why I never invested time on Chromebooks is the lack of productivity tools including the terminal, compilers, source control, a robust text editor, IDEs, package management tools (apt or dnf) and other programming languages. But it will change.

I'm pretty excited about this. Hope this feature becomes stable soon enough to be able to test my favourite tools on a Chromebook.

See Also

About the Author

Bruno Hildenbrand      
Principal Architect, HildenCo Solutions.