<?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: David Wampamba</title>
    <description>The latest articles on DEV Community by David Wampamba (@davidofug).</description>
    <link>https://dev.to/davidofug</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%2F398915%2Fa5621e82-0f94-4a06-b5cd-c949f8f9889e.png</url>
      <title>DEV Community: David Wampamba</title>
      <link>https://dev.to/davidofug</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/davidofug"/>
    <language>en</language>
    <item>
      <title>Are Desktop Apps Making a Comeback?</title>
      <dc:creator>David Wampamba</dc:creator>
      <pubDate>Thu, 27 Mar 2025 19:44:46 +0000</pubDate>
      <link>https://dev.to/davidofug/are-desktop-apps-making-a-comeback-237m</link>
      <guid>https://dev.to/davidofug/are-desktop-apps-making-a-comeback-237m</guid>
      <description>&lt;h2&gt;
  
  
  Do Desktop Apps Still Matter?
&lt;/h2&gt;

&lt;p&gt;For a while, it seemed like desktop apps were fading into oblivion. Web apps were the future—lightweight, always updated, and accessible from anywhere. Who needed to install bulky software when everything could run inside a browser?&lt;/p&gt;

&lt;p&gt;And yet, here we are. Desktop apps are creeping back into the spotlight. Think about it: WhatsApp, ChatGPT, Descript, and Canva—startups and tech giants alike are investing in downloadable desktop versions of their flagship products.&lt;/p&gt;

&lt;p&gt;So, what’s going on? Are desktop apps making a comeback, or did they never really go away?&lt;/p&gt;

&lt;h2&gt;
  
  
  What is a Desktop App?
&lt;/h2&gt;

&lt;p&gt;In simple terms, a desktop app is any application you access by clicking an icon on your personal computer—whether a laptop or a full-fledged desktop setup. Think Microsoft Word, Photoshop, or even Google Chrome. Unlike web apps, which run inside a browser, desktop apps are installed directly onto your machine, often providing a richer and more seamless experience.&lt;/p&gt;

&lt;p&gt;Lately, I’ve been using the WhatsApp desktop app (not to be confused with WhatsApp Web). The experience is almost identical to using WhatsApp on my phone—notifications, calls, media sharing, everything just works. And it feels faster and more integrated into my workflow.&lt;/p&gt;

&lt;p&gt;This got me thinking: Are we witnessing the resurrection of desktop apps?&lt;/p&gt;

&lt;h2&gt;
  
  
  The Web App Takeover (And Its Limits)
&lt;/h2&gt;

&lt;p&gt;Over the last decade, web apps have dominated. Companies prioritized building applications that worked on any device with a browser—no installations, no downloads, just instant access. Think Google Docs, Figma, and Notion. With powerful web technologies like JavaScript, TypeScript, and PHP, developers could create sophisticated experiences that felt nearly as smooth as traditional desktop software.&lt;/p&gt;

&lt;p&gt;But web apps have their drawbacks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Limited performance&lt;/strong&gt; – Browsers add an extra layer between the app and the operating system, making some tasks slower.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Offline access&lt;/strong&gt; – While some web apps work offline, most require an internet connection.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Hardware integration&lt;/strong&gt; – Web apps can struggle with deep system access, like using advanced graphics processing or interacting directly with peripherals.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why Are Desktop Apps Coming Back?
&lt;/h2&gt;

&lt;p&gt;So why are companies bringing back desktop apps? A few key reasons:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Performance&lt;/strong&gt; – Native apps run directly on your device, meaning they can be faster and smoother, especially for resource-heavy tasks (think video editing, AI tools, and coding environments).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Better User Experience&lt;/strong&gt; – Desktop apps can integrate more deeply with the operating system, offering features like keyboard shortcuts, drag-and-drop functionality, and system notifications.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Offline Capability&lt;/strong&gt; – Many desktop apps work without an internet connection, making them more reliable.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Security and Privacy&lt;/strong&gt; – Some users prefer desktop apps because they feel more in control of their data compared to always-online web apps.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The Best of Both Worlds: Cross-Platform Development
&lt;/h2&gt;

&lt;p&gt;The cool part? Developers don’t have to choose between web and desktop apps anymore. Thanks to frameworks like Electron, Tauri, and Flutter, companies can build cross-platform apps that work on web, mobile, and desktop with the same codebase. That’s why so many apps start as web-first before launching mobile and desktop versions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Should Developers Still Learn Web Development?
&lt;/h2&gt;

&lt;p&gt;Absolutely! Web development is still the foundation of modern software. Whether you're building a web app, a mobile app, or a desktop app, chances are you’ll be using web technologies like JavaScript, TypeScript, or React. Understanding web development means you can adapt to any platform—whether the future leans more toward web apps, desktop apps, or something entirely new.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Verdict
&lt;/h2&gt;

&lt;p&gt;Desktop apps never truly died; they just took a backseat while web apps thrived. But now, as technology enables more seamless cross-platform development, desktop applications are regaining their relevance. If performance, deep system integration, and offline access matter, desktop apps will always have a place.&lt;/p&gt;

&lt;p&gt;So, what do you think? Are desktop apps making a full-blown comeback, or is this just a phase?&lt;/p&gt;

&lt;p&gt;Drop your thoughts in the comments!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>javascript</category>
      <category>typescript</category>
    </item>
    <item>
      <title>What if I had to learn web development again? What would be my journey?</title>
      <dc:creator>David Wampamba</dc:creator>
      <pubDate>Sat, 17 Jun 2023 17:11:58 +0000</pubDate>
      <link>https://dev.to/davidofug/what-if-i-had-to-learn-web-development-again-what-would-be-my-journey-hcm</link>
      <guid>https://dev.to/davidofug/what-if-i-had-to-learn-web-development-again-what-would-be-my-journey-hcm</guid>
      <description>&lt;p&gt;When I was starting to learn coding I didn't have goals to become a Web developer but I found myself becoming one anyway. &lt;/p&gt;

&lt;p&gt;If you ask me today whether the journey has been smooth or deliberate. Absolute, Not would be my answer.&lt;/p&gt;

&lt;p&gt;You see there are many advantages that come with being a self-taught web developer. Who doesn't want to decide what they'll learn, when, where and how?&lt;/p&gt;

&lt;p&gt;In as much as being in total control of our choices feels magical, it doesn't always bring out the best in us.&lt;/p&gt;

&lt;p&gt;How many times, did I skip learning because it sounded difficult? Uncountable. Did it help, of course it did but it also left with undesirable knowledge gaps.&lt;/p&gt;

&lt;p&gt;I'm here thinking to myself what if I were to learn Web Development afresh(start to finish), how could I go about it?&lt;/p&gt;

&lt;p&gt;In this post, am going to talk about the programming languages, tools, skills to develop in the exact order I would have gone about them.&lt;/p&gt;

&lt;p&gt;Let's dive straight away.&lt;/p&gt;

&lt;h3&gt;
  
  
  ⓪① Foundation
&lt;/h3&gt;

&lt;p&gt;Unlike some other developers, I grew up in a household without electricity, computers, internet, or phones. Furthermore, none of the elderly spoke English or any other foreign language. Our information came from a neighbor and an FM radio.&lt;/p&gt;

&lt;p&gt;I recall hearing the phrase "computer" for the first time in elementary school. The notion I had at the time was that a computer was some kind of terminator-like robot.&lt;/p&gt;

&lt;p&gt;When I got the chance to touch the computer for the first time, I was about 13 years or so.&lt;/p&gt;

&lt;p&gt;For that reason if I was to learn Web development, I would be deliberate and focus on gaining much knowledge about how computers work, why were they invented, how does the computer store and transfer information in different components? &lt;/p&gt;

&lt;p&gt;Can one or more computers communicate, is this something I can test out practically to gain a clear understanding of Networks and related knowledge such as the internet?&lt;/p&gt;

&lt;p&gt;What is an Operating System? How to obtain an Operating system, set it up, troubleshoot and secure it?&lt;/p&gt;

&lt;p&gt;What is software? What's the general process of creating apps?&lt;/p&gt;

&lt;p&gt;Is there a computer fundamentals certificate I can pursue to prove that I am a qualified professional computer user?&lt;/p&gt;

&lt;p&gt;At this point, I would focus on honing my social media, research, and touch typing abilities.&lt;/p&gt;

&lt;p&gt;The ultimate goal would be, to be a professional and comfortable computer user that is able to pick up learning an advanced computer skill.&lt;/p&gt;

&lt;h3&gt;
  
  
  ⓪② HTML
&lt;/h3&gt;

&lt;p&gt;I will learn HTML because it's the fundamental language for developing websites and web applications, in fact, it comes second to none. Despite HTML, being so powerful it is very simple to learn. So this is where I would start after in the coding journey.&lt;/p&gt;

&lt;p&gt;HTML, Stands for HyperText Markup Language.&lt;/p&gt;

&lt;p&gt;It is a markup language that is used to create web pages and web applications. It is made up of a series of elements, represented by tags, that define a document's structure and content. It also works with attributes to perform special behaviours.&lt;/p&gt;

&lt;h3&gt;
  
  
  ⓪③ Terminal/CLI
&lt;/h3&gt;

&lt;p&gt;The software lets you interact with your computer's operating system via a text-based interface. It enables to control the computer by allowing you to input commands and receive response in form of text as output.&lt;/p&gt;

&lt;p&gt;It would help my progress if I learnt some commands earlier especially after or before learning HTML. Being comfortable to work with the Terminal app on macOS and Linux and the Command Prompt on Windows.&lt;/p&gt;

&lt;p&gt;Additionally, grasping how to work with commands like ping, hostname, nslookup, sudo, apt-get, passwd, ls, cd, mv, cp, nano, vi, grep, and cat etc would be so helpful going forward.&lt;/p&gt;

&lt;h3&gt;
  
  
  ⓪④ (a). Design and CSS
&lt;/h3&gt;

&lt;p&gt;Let me explain.&lt;/p&gt;

&lt;p&gt;To begin with, CSS stands for Cascading Style Sheet. It is a stylesheet language used to describe the appearance and formatting of HTML elements in a webpage.&lt;/p&gt;

&lt;p&gt;CSS is about understanding the general syntax which will include but not a selector, curly brackets, properties and values.&lt;/p&gt;

&lt;p&gt;What makeup is to us is what CSS is to HTML. How is that not amazing?&lt;/p&gt;

&lt;p&gt;On top of grasping how to use CSS to change the color, text size, or background etc of something, you could learn some and hone design skills. There are many apps you can use to design the interfaces of web applications though I find Figma easier, so I highly recommend it.&lt;/p&gt;

&lt;h3&gt;
  
  
  ⓪④ (b). SASS
&lt;/h3&gt;

&lt;p&gt;SASS (Syntactically Awesome Style Sheets) is a CSS preprocessor, which is a scripting language that extends CSS functionality. It enables you to write more organized and maintainable CSS code by utilizing features such as variables, mixins, and functions.&lt;/p&gt;

&lt;h3&gt;
  
  
  ⓪⑤ TailwindCSS
&lt;/h3&gt;

&lt;p&gt;It is a utility-first CSS framework for creating custom user interfaces quickly.&lt;br&gt;
It provides a set of utility CSS classes that allow you to apply styles directly to HTML elements using class attributes.&lt;/p&gt;

&lt;p&gt;This makes it easy to style HTML without writing custom CSS.&lt;/p&gt;

&lt;p&gt;TailwindCSS is intended to be adaptable, modular, and simple to integrate with your existing design system.&lt;/p&gt;

&lt;h3&gt;
  
  
  ⓪⑥ Writing
&lt;/h3&gt;

&lt;p&gt;Working to develop writing habits is useful to a developer as it enables them to enhance communication skills, document code and thoughts, and establish a professional online presence.&lt;/p&gt;

&lt;p&gt;→ Tools to help in your in-writing journey&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Notion&lt;/li&gt;
&lt;li&gt;Grammarly&lt;/li&gt;
&lt;li&gt;Notes app&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  ⓪⑦ Marketing and Self-promotion
&lt;/h3&gt;

&lt;p&gt;It is the act of promoting oneself, skills and accomplishments to others. It is important for developers as it may assist them in developing a personal brand, networking with other professionals, and increasing their opportunities for career advancement.&lt;/p&gt;

&lt;p&gt;If you're to promote yours learn how to;-&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;You need to be working experience in a skill, in this case Code&lt;/li&gt;
&lt;li&gt;You need Write&lt;/li&gt;
&lt;li&gt;Publish content on WhatsApp, Twitter, Instagram, TikTok, YouTube, LinkedIn, your blog and other platforms.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  ⓪⑧ Selling HTML Templates
&lt;/h3&gt;

&lt;p&gt;Did you know that HTML templates can be created and sold? These are custom, professional website designs that clients can use to establish their online presence. It's a great way to put your HTML skills to use and earn some extra money!&lt;/p&gt;

&lt;p&gt;You can publish HTML Templates to popular platforms such as:-&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;ThemeForest&lt;/li&gt;
&lt;li&gt;TemplateMonster&lt;/li&gt;
&lt;li&gt;Creative Market&lt;/li&gt;
&lt;li&gt;Personal Website&lt;/li&gt;
&lt;li&gt;Gumroad&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  ⓪⑨ (a). Why Learn Git
&lt;/h3&gt;

&lt;p&gt;1) It makes it possible for us to collaborate on computer projects while maintaining a record of all the changes we make.&lt;/p&gt;

&lt;p&gt;2) It's a useful skill for working on projects with others.&lt;/p&gt;

&lt;p&gt;3) It can give you an advantage in job searches since it is widely used.&lt;/p&gt;

&lt;h3&gt;
  
  
  ⓪⑨ (b). GitHub
&lt;/h3&gt;

&lt;p&gt;Git repositories can be hosted and managed on GitHub. It enables developers to track changes, share and work together on code, and create software projects more quickly.&lt;/p&gt;

&lt;p&gt;Many developers use it as a really helpful tool to make their work easier.&lt;/p&gt;

&lt;h3&gt;
  
  
  ①⓪ Deploying Webpages
&lt;/h3&gt;

&lt;p&gt;A webpage is deployed when it is published online for public viewing. We can save webpages and share them with the world just like we can save images on our computers!&lt;/p&gt;

&lt;p&gt;You can earn money by setting up websites for customers.&lt;/p&gt;

&lt;h3&gt;
  
  
  ①① JavaScript
&lt;/h3&gt;

&lt;p&gt;Learning JavaScript can open up a world of possibilities for you as a developer, including building interactive web applications, creating games, and automating tasks for customers or your business.&lt;br&gt;
Understanding JavaScript helps start learning JS Frameworks.&lt;/p&gt;

&lt;p&gt;①② (a). React.js&lt;/p&gt;

&lt;p&gt;React is a popular JavaScript library for building user interfaces, especially for web applications. Learning React can help developers create fast, efficient, and scalable front-end applications.&lt;/p&gt;

&lt;h3&gt;
  
  
  ①② (b).Vue.js
&lt;/h3&gt;

&lt;p&gt;Vue is a lightweight JavaScript framework for building web applications. It's easy to learn and use, and offers a smooth and intuitive developer experience. Additionally, it's flexible and can be used in a variety of projects.&lt;/p&gt;

&lt;p&gt;It is known that the Popular JavaScript libraries for creating web applications include React and Vue.&lt;/p&gt;

&lt;p&gt;Vue is a good option because it is lightweight and simple to learn, whereas React is great for bigger projects and has a robust ecosystem.&lt;/p&gt;

&lt;h3&gt;
  
  
  ①③ Building Apps
&lt;/h3&gt;

&lt;p&gt;Developers can turn their ideas into reality, solve problems, and add value to companies or organizations by using their coding skills to build apps. It's a highly prized skill that creates countless opportunities for innovation and personal development.&lt;/p&gt;

&lt;h2&gt;
  
  
  The End
&lt;/h2&gt;

&lt;p&gt;⓪① HTML&lt;br&gt;
⓪② Terminal/CLI&lt;br&gt;
⓪③ CSS + SASS&lt;br&gt;
⓪④ TailwindCSS&lt;br&gt;
⓪⑤ Writing&lt;br&gt;
⓪⑥ Self-promotion&lt;br&gt;
⓪⑦ Selling HTML Templates&lt;br&gt;
⓪⑧ Git + GitHub&lt;br&gt;
⓪⑨ Deploying Webpages&lt;br&gt;
①⓪ JavaScript&lt;br&gt;
①① React.js or Vue.js&lt;br&gt;
①② Building Apps&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>roadmap</category>
    </item>
  </channel>
</rss>
