Skip to content
This is my space, where experience meets the will to start over. This is my space, where experience meets the will to start over.

The first step is knowing where you want to go.

  • Home
  • Coding Hub
    • Software & Project
      • Small Biz Ops – S.B.O.
        • SmallBizOps – Day 10/90
      • CRM/ERP
      • MyTracker
      • My Budget
    • Form Zero to “WoW”
      • JavaScript from Zero (Completed)
        • 2. Remove and Edit List Items
        • 3. Separate HTML and JavaScript, Use addEventListener and Conditional Logic
        • 4. Add Dynamic CSS Classes
        • 5. Save & Restore Your List with localStorage
        • 6 – Turn Your App into a Full To-Do List
      • Python from Zero (Completed)
        • 2. Lists & Loops
        • 3. Conditional Menus
        • 4. Edit & Remove Tasks (with closing: Python vs PHP and Large Data)
        • 5 – Save to File: Make Your Tasks Survive Restarts
        • 6 — Pythin from zero – Final Project Polishing: Numbering, Formatting, and Preparing for CSV
      • Rust – From Zero to “WoW” (Completed)
        • 1 – Setup and Project Structure in Rust
        • 2 – User input: validation and error handling
        • 3 – Rust from Zero to “WoW – BMI Calculation and Conditional Logic
        • 4 –Rust – Clear, Formatted Output
        • 5 – Rust – Final Thoughts: Precision as a Form of Respect
      • Go from Zero to “WoW” (Completed)
        • 1 – Why Go Is Perfect for a Personal Expense Tracker
        • 2 – Logging Expenses and Console Input
        • 3 – Go from Zero to “WoW” – Smart Filtering & Display Logic
        • 4 – Go – Saving Data to Local Files
        • 5 – Go – Final Project – Expense Tracker in Go
      • C++ from Zero to “WoW” (Completed)
        • 1 – Why C++ for file organization?
        • 2 – C++ – File Type Detection and Classification
        • 3 – C++ – Creating & Managing Subfolders
        • 4 – C++ – Safe File Movement and User Feedback
        • 5 – C++ – Order as Mental Clarity
      • Ubuntu – From Zero to “WoW” (Completed)
        • 2 – Ubuntu – The Desktop Environment and Essential Commands
        • 3 – Ubuntu – Managing Files, Folders, and Permissions
        • 4 – Ubuntu – Installing and Updating Software with APT and Snap
        • 5 – Ubuntu – Customizing the Desktop Environment
        • 6 – Ubuntu – Network and Device Configuration
        • 7 – Ubuntu – User Management & System Security — “The Cathedral of Permissions”
        • 8 – Ubuntu – The Talking Machine: Terminal & Bash Scripting
        • 9 – Ubuntu – Ubuntu as a Server or Development Environment
        • 10 – Ubuntu – Backup, Maintenance & Troubleshooting
    • Git Hub Repository
      • Small Biz Ops – S.B.O.
      • Mini ERP – PHP & MySQL
      • CleverCRM (Java, Spring Boot)
      • FraudWatch (Python, FastAPI + scikit-learn)
      • OnboardIQ – Smart Onboarding Portal (Flask + SQLite Demo)
    • ArchPilot
      • 1-Users & Roles, End-to-End (Architecture, Database, and Cross-Framework Code)
      • 2 – Client Registry (CRM) Across Frameworks
      • 3 – Project & Budget Tracker (ERP)
      • 4 – Approval Workflow Engine Multi-step routing, status tracking, escalation paths
      • 5 – Audit Trail & Versioning
    • Small Biz Ops – S.B.O.
  • Vivere in USA
  • P4Y
  • Testi poetici
    • 1 – Sospeso
    • 2 – Il bicchiere di vetro quieto
    • 3 – Quando l’amore inciampa
    • 4 – Ma chi siete davvero?
    • 5 – Above the Thread of Day
    • 6 – The Truth That Doesn’t Exist
    • 7 – All of You, I Miss
    • 8 – The Captain and the Ocean
    • 9 – Between Light and Mist
    • 10 – Il peso delle scelte
  • Contact
  • Admin
This is my space, where experience meets the will to start over.
This is my space, where experience meets the will to start over.

The first step is knowing where you want to go.

Coding – Step 14.4 – Ubuntu – Installing and Updating Software with APT and Snap

Posted on 24 Ottobre 202524 Ottobre 2025 By Francesco

Disclaimer: This guide is intended for beginners and educational purposes only. Always check software and hardware compatibility before installing.

Module Goal

In this step, you’ll learn how to install and update software on Ubuntu using APT and Snap, the two main package systems. But we won’t stop at commands — we’ll also explore real-world challenges, like missing commercial software, printer driver issues, and how Ubuntu differs from Windows without bias or hype.

APT: The Classic Package Manager

APT (Advanced Package Tool) is the traditional software manager for Ubuntu and other Debian-based systems. It works through official repositories containing thousands of tested and secure packages.

Basic Commands

bash

sudo apt update          # Refresh package list
sudo apt upgrade         # Upgrade installed packages
sudo apt install name    # Install a package
sudo apt remove name     # Remove a package

Practical Example

Want to install GIMP (image editor)? Just type:

bash

sudo apt install gimp

Snap: The Modern System

Snap is a universal package format created by Canonical. Each Snap includes all its dependencies, so it works across different Ubuntu versions.

Basic Commands

bash

sudo snap install name           # Install a Snap package
sudo snap list                   # List installed Snap packages
sudo snap refresh name           # Update a Snap package
sudo snap remove name            # Remove a Snap package

Practical Example

To install Visual Studio Code:

bash

sudo snap install code --classic

APT vs Snap: Pros and Cons

FeatureAPTSnap
SourceDebian repositoriesCanonical Snap Store
SpeedFast and lightweightSlower startup
UpdatesManualAutomatic
CompatibilityGreat for classic softwareGreat for modern apps
IsolationMinimalHigh (sandboxed)
Server usePreferredNot recommended

Real-World Challenges

Missing Software

Many commercial programs (e.g., Adobe Photoshop, Microsoft Office, AutoCAD) don’t exist for Linux. You won’t find them via APT or Snap.

Possible solutions:

  • Use open-source alternatives (e.g., GIMP, LibreOffice, FreeCAD).
  • Use Wine to emulate Windows software (works, but not always well).
  • Use virtual machines or dual boot to keep Windows available.

Printer and Peripheral Issues

Ubuntu handles many modern printers well, but older models or niche brands can be tricky.

What to do:

  • Check if the manufacturer offers Linux drivers.
  • Search your model on OpenPrinting.org.
  • Try sudo apt install printer-driver-xyz if available.
  • As a last resort, use CUPS (Common Unix Printing System) and configure manually.

Software Outside Repositories

Some programs aren’t available via APT or Snap. In these cases:

Solutions:

  • Download .deb files from official websites and install with:bashsudo dpkg -i filename.deb sudo apt --fix-broken install
  • Use Flatpak (another package system, requires setup).
  • Compile from source (advanced, not beginner-friendly).

Realism Over Fanboyism

Ubuntu isn’t “better” or “worse” than Windows. They’re different ecosystems:

  • Windows is ideal for commercial software, gaming, and enterprise tools.
  • Ubuntu excels in development, security, and customization.

The real advantage? You can use both: dual boot, virtual machines, or separate devices.

Guided Test

  1. Open the terminal.
  2. Install VLC with APT:bashsudo apt install vlc
  3. Install Spotify with Snap:bashsudo snap install spotify
  4. Check if your printer is detected:bashsystem-config-printer

Summary

Installing software on Ubuntu is simple… when the software is available. But it also requires practical awareness: knowing where to look, how to work around limitations, and when to use Windows. That’s the real “WoW” — becoming the master of your system with confidence and clarity.

Next Module

In the next step, we’ll explore how to customize the desktop environment: themes, icons, layout, and tricks to make Ubuntu truly yours.

Post Views: 393

Condividi:

  • Condividi su Facebook (Si apre in una nuova finestra) Facebook
  • Condividi su X (Si apre in una nuova finestra) X
Coding Form Zero to "WoW" Ubuntu

Navigazione articoli

Previous post
Next post

Francesco

My name is Francesco Boschi, originally from Italy and currently based in the United States. For over twenty years, I’ve worked as a manager and consultant across diverse sectors — from education and cultural institutions to the food industry — developing skills in operational management, strategic consulting, and complex problem-solving. In recent years, I’ve combined this experience with a strong passion for software development, creating custom tools designed to simplify workflows and meet real business needs.

Relocating to the U.S. marks the beginning of a new chapter: a personal and professional decision driven by the desire to be close to my son and to embrace new challenges in a different environment. Today, my goal is to turn my experience into meaningful solutions, blending strategic vision with technical expertise to help people and organizations work more effectively.

I enjoy moving between different worlds, adapting tools and approaches to people and contexts. I bring leadership, flexibility, attention to detail, analytical thinking, and a strong problem-solving mindset — along with a deep curiosity to learn and grow. Above all, I believe in sharing: I’m always eager to offer my experience to support the growth of others.

Related Posts

Coding

Coding – Step 1 – This is just the starting point.

Posted on 5 Giugno 202526 Luglio 2025

I’ve started developing a mini ERP in PHP & MySQL to document, week by week, how a management system is built from scratch — one that’s truly designed for the people who will use it.It’s a project that combines my managerial and technical experience, with the goal of creating a…

Condividi:

  • Condividi su Facebook (Si apre in una nuova finestra) Facebook
  • Condividi su X (Si apre in una nuova finestra) X
Read More
Coding

Coding – Go – Step 12.1 – Why Go Is Perfect for a Personal Expense Tracker

Posted on 13 Settembre 202527 Settembre 2025

A practical introduction to the “From Zero to Wow” project: why Go is the ideal language for building a personal expense tracker, and how to set up your environment, structure your project, and run your first working code.

Condividi:

  • Condividi su Facebook (Si apre in una nuova finestra) Facebook
  • Condividi su X (Si apre in una nuova finestra) X
Read More
Coding

Coding – Step 14.5 – Ubuntu – Customizing the Desktop Environment

Posted on 27 Ottobre 202527 Ottobre 2025

Ubuntu offers a flexible desktop you can shape to your style and needs. This chapter shows how to change themes, icons, fonts, and workspace behavior — even if you’re just starting out.

Condividi:

  • Condividi su Facebook (Si apre in una nuova finestra) Facebook
  • Condividi su X (Si apre in una nuova finestra) X
Read More

Iscriviti alla nostra Newsletter

🤞 Let's keep in touch

We do not send spam! Read our Privacy policy for more information.

Controlla la tua casella di posta o la cartella spam per confermare la tua iscrizione

Cerca nel sito

©2026 This is my space, where experience meets the will to start over. | WordPress Theme by SuperbThemes