Sunday, July 13, 2025
Code Harbor
Adventures in
Programming
  • DevJournal
    • Hardware & Software
    • Media & Podcast
    • Programming
    • Project
    • Research
    • Scratch Code
    • Tutorial
  • Framework
    • .NET Aspire
    • .NET MAUI
    • AI Framework
    • ASP.NET
    • Data Framework
    • Framework Tool & Manager
    • Game
    • MCP
    • WCF
    • WF
    • WinForms
    • WPF
  • IDE
    • Cursor
    • Eclipse
    • Extension
    • IDE Tool & Manager
    • JetBrains
    • Visual Studio
    • VS Code
    • Windsurf
    • Xcode
  • Language
    • C
    • C++
    • C#
    • F#
    • Go
    • Java
    • JavaScript
    • Kotlin
    • Objective-C
    • Python
    • TypeScript
    • Visual Basic
  • Platform
    • .NET
    • AI Platform & Service
    • Amazon Cloud
    • Azure Cloud
    • GitHub
    • Google Cloud
    • Hosting
    • JVM
    • Kubernetes
    • Node.js
    • OS & Virtualization
    • Platform Tool & Manager
    • WordPress
  • Science
    • AI & Machine Learning
    • Algorithms & Data Structures
    • Bioinformatics & Computational Biology
    • Computer Architecture & Organization
    • Computer Graphics & Visualization
    • Cybersecurity
    • Databases & Data Management
    • HCI & UX
    • Networking & Distributed Systems
    • Programming Languages & Compilers
    • Quantum Computing
    • Software Engineering
No Result
View All Result
Code Harbor
Adventures in
Programming
  • DevJournal
    • Hardware & Software
    • Media & Podcast
    • Programming
    • Project
    • Research
    • Scratch Code
    • Tutorial
  • Framework
    • .NET Aspire
    • .NET MAUI
    • AI Framework
    • ASP.NET
    • Data Framework
    • Framework Tool & Manager
    • Game
    • MCP
    • WCF
    • WF
    • WinForms
    • WPF
  • IDE
    • Cursor
    • Eclipse
    • Extension
    • IDE Tool & Manager
    • JetBrains
    • Visual Studio
    • VS Code
    • Windsurf
    • Xcode
  • Language
    • C
    • C++
    • C#
    • F#
    • Go
    • Java
    • JavaScript
    • Kotlin
    • Objective-C
    • Python
    • TypeScript
    • Visual Basic
  • Platform
    • .NET
    • AI Platform & Service
    • Amazon Cloud
    • Azure Cloud
    • GitHub
    • Google Cloud
    • Hosting
    • JVM
    • Kubernetes
    • Node.js
    • OS & Virtualization
    • Platform Tool & Manager
    • WordPress
  • Science
    • AI & Machine Learning
    • Algorithms & Data Structures
    • Bioinformatics & Computational Biology
    • Computer Architecture & Organization
    • Computer Graphics & Visualization
    • Cybersecurity
    • Databases & Data Management
    • HCI & UX
    • Networking & Distributed Systems
    • Programming Languages & Compilers
    • Quantum Computing
    • Software Engineering
No Result
View All Result
Code Harbor
No Result
View All Result
Home DevJournal

Let’s Set Sail and Begin this Programming Journey and Journal

by ltoscano
June 17, 2025 - Updated on June 30, 2025
in DevJournal, Programming, Science, Software Engineering
Reading Time: 9 mins read
Let's Set Sail and Begin this Programming Journey and Journal

[ Updated on June 30, 2025 ]

I’d like to make it clear that these software development journal posts are primarily notes to myself, and secondarily notes to any one else who might find them useful, regarding software engineering topics I find interesting such as: frameworks, IDEs, languages, platforms, and beyond that, other computer science subjects that might catch my attention, too.

I would also like to make it clear that I only have two days a week, at most, to focus on this effort. The rest of the week I’m busy with other matters.

I will begin the notetaking by recording the following step-by-step outline, which I developed in conjunction with Gemini 2.5 Flash within AI Studio.

This is how I originally prompted that AI for help:

“I have started to make post notes to myself, an d possibly a to handful or other readers, using WordPress. The notes are mostly about my direct software engineering, development ,and coding hobby, and will include my direct experiences, discoveries and conclusions as I proceed. I need and outline that handles the inital phases of my posts. Perhaps one milestone outline entry for each post. In the first set of posts want to record the setup (both hardware and software) needed to develop in software for the .NET platform, and more specifically for .NET MAUI, including Blazor apps, too. You can reference quality tutorial videos you find, giving there links in the outline. Allow a place in the outline to discuss my particular hardware and software setup (VMs and IDEs, too), within your discussion of general specifications and requirements. Within .NET MAUI, I will be focusing on developing and deploying Windows, Android, iOS, iPad, Mac Catlyst, and Tizen apps. I will also discuss the importance of keeping a DevJournal, like I am doing with WordPress. Can you help with this?”

This is the response I got back:

“Of course! This is an excellent idea. A development journal, especially a public one, is a fantastic way to solidify your knowledge, track your progress, and help others who are on the same path. Here is the detailed plan using a traditional outline format.

So, with some significant modifications, here is the outline I will stick to for The .NET MAUI Workshop series of posts:

10 Part Series Outline: The .NET MAUI Workshop

  1. Part 1: The Blueprint – Why .NET MAUI and Why a DevJournal?
    1.1. Introduction
    1.1.1. About the author and software development hobby.
    1.1.2. Stating the goal of the series: to journal the setup of a .NET MAUI development environment from start to finish.
    1.2. Foundational Concepts
    1.2.1. What is .NET and .NET MAUI? A high-level overview.
    1.2.2. Why choose .NET MAUI? Discussing the benefits (C#, cross-platform, performance, Microsoft ecosystem).
    1.3. The Power of a DevJournal
    1.3.1. Explaining the purpose of documenting the journey in public.
    1.3.2. Benefits: Reinforcing learning, tracking decisions, creating a knowledge base, and helping others.
    1.4. Personal Setup: My Goals
    1.4.1. Outlining the target platforms for this series: Windows, Android, iOS, iPadOS, MacCatalyst, and Tizen.
    1.4.2. Mentioning specific interest in exploring .NET MAUI Blazor apps.
    1.5. DevJournal Reflection
    1.5.1. Concluding the post as the official first entry and commitment to the journal.
  2. Part 2: The Toolbox – IDEs, SDKs, and Essential Concepts
    2.1. Essential Software Concepts
    2.1.1. The .NET SDK: What it is (compiler, libraries, runtime) and why it’s the core component.
    2.1.2. The IDE (Integrated Development Environment) as the “Workshop”.
    2.1.3. Source Control as a non-negotiable tool (introducing Git).
    2.2. Tool Recommendations and Discussion
    2.2.1. Primary IDE: Visual Studio 2022 (Community, Pro, Enterprise).
    2.2.2. Alternative: Visual Studio Code, noting its role more as a powerful editor.
    2.2.3. Source Control Service: GitHub, Azure DevOps, or GitLab.
    2.3. Personal Setup: My Chosen Tools
    2.3.1. Stating my choice of Visual Studio 2022 on Windows and GitHub for source control.
    2.4. Related Resources and Materials
    2.4.1. Video Title: .NET MAUI for Beginners – What is it? (by James Montemagno)
  3. Part 3: The Workshop – Hardware Requirements and My Hardware
    3.1. General Hardware Specifications
    3.1.1. RAM (16GB+ recommended).
    3.1.2. Storage (SSD is essential).
    3.1.3. CPU (multi-core performance).
    3.2. Platform-Specific Hardware Requirements
    3.2.1. The Windows PC: The hub for Windows and Android development.
    3.2.2. The Apple Mac: The requirement for building/signing iOS, iPadOS, and Mac Catalyst apps.
    3.3. Mac Access Strategies
    3.3.1. Physical Mac hardware (M-series recommended).
    3.3.2. Cloud-based Mac services (e.g., MacinCloud).
    3.4. A Note on Virtual Machines (VMs)
    3.4.1. Clarifying the legal/technical inability to run macOS in a VM on a Windows PC for development.
    3.4.2. Discussing the viability of running Windows in a VM on a Mac (e.g., Parallels).
    3.5. Personal Setup: My Hardware Rig
    3.5.1. Detailing my primary PC specifications.
    3.5.2. Describing my Mac solution (physical machine, cloud service, etc.).
    3.6. DevJournal Reflection
    3.6.1. Discussing the hardware investment as a critical first hurdle for aspiring mobile developers.
  4. Part 4: The Main Install – Setting Up Visual Studio and the .NET MAUI Workload
    4.1. Installation Process
    4.1.1. Downloading the Visual Studio 2022 Installer (linking to the Community edition).
    4.1.2. Navigating the Visual Studio Installer interface.
    4.2. Selecting the Correct Workload
    4.2.1. Highlighting the “.NET Multi-platform App UI development” workload.
    4.2.2. Explaining what this workload includes (.NET SDK, MAUI templates, Android SDK essentials).
    4.3. Post-Installation Verification
    4.3.1. Opening Visual Studio for the first time.
    4.3.2. Checking for the .NET MAUI project templates in the “New Project” dialog.
    4.4. Personal Setup: My Installation Experience
    4.4.1. Documenting any specific choices, additional workloads installed, or issues encountered.
    4.5. Reference Material
    4.5.1. Video Title: Install .NET MAUI on Windows & First App (by Gerald Versluis)
    4.5.2. Video Link: https://www.youtube.com/watch?v=r_c4_3a52s4
    4.6. DevJournal Reflection
    4.6.1. Capturing the feeling of having the primary tools installed and ready to go.
  5. Part 5: The Alternate Install – Setting Up VS Code and the .NET MAUI Workload
    5.1. Installation Process
    5.1.1. Downloading the VS Code Installer.
    5.1.2. Navigating the VS Code Installer interface for Windows
    5.2. Selecting the Correct Workloads
    5.2.1. Highlighting the “.NET Multi-platform App UI development” workload.
    5.2.2. Explaining what this workload includes (.NET SDK, MAUI templates, Android SDK essentials).
    5.3. Post-Installation Verification
    5.3.1. Opening VS Code for the first time.
    5.3.2. Checking for the .NET MAUI project templates in the “New Project” dialog.
    5.4. Personal Setup: My Installation Experience
    5.4.1. Documenting any specific choices, additional workloads installed, or issues encountered.
    5.5. Reference Material
    5.5.1. Video Title: Install .NET MAUI on Windows & First App (by Gerald Versluis) (Check This)
    5.5.2. Video Link: https://www.youtube.com/watch?v=r_c4_3a52s4 (Check This!)
    5.6. DevJournal Reflection
    5.6.1. Capturing the feeling of having the primary tools installed and ready to go.
  6. Part 6: Android Configuration – Emulators and Physical Devices
    6.1. Configuring the Android SDK
    6.1.1. Locating the Android SDK Manager in Visual Studio (Tools > Android > Android SDK Manager).
    6.1.2. Recommending which Android API levels to install.
    6.2. Setting up an Android Emulator
    6.2.1. Using the Android Device Manager to create a virtual device.
    6.2.2. Discussing performance and the need for hardware acceleration (Hyper-V/HAXM).
    6.3. Setting up a Physical Device
    6.3.1. Steps to enable Developer Mode on an Android device.
    6.3.2. Enabling USB Debugging.
    6.3.3. Installing necessary OEM drivers if required.
    6.4. Personal Setup: My Emulator and Device Configuration
    6.4.1. Describing the virtual device I created (e.g., Pixel 5, API 33).
    6.4.2. Detailing the process of connecting my personal Android phone (model, issues solved).
    6.5. DevJournal Reflection
    6.5.1. Comparing the experience and performance of using an emulator vs. a physical device.
  7. Part 7: Biting the Apple – Setting Up for iOS, iPadOS & Mac Catalyst
    7.1. Mac-Side Setup
    7.1.1. Installing Xcode from the Mac App Store.
    7.1.2. Running Xcode once to accept license agreements.
    7.1.3. Installing Xcode Command Line Tools.
    7.2. Windows-Side Setup (Pair to Mac)
    7.2.1. Locating and explaining the “Pair to Mac” feature in Visual Studio.
    7.2.2. Walking through the network pairing process.
    7.3. Apple Developer Account
    7.3.1. Explaining the difference between a free and paid ($99/year) account.
    7.4. Personal Setup: My Pair to Mac Adventure
    7.4.1. Documenting my experience, including any network or firewall issues and their solutions.
    7.5. Reference Material
    7.5.1. Video Title: Pair to Mac for .NET MAUI iOS Development with Visual Studio 2022
    7.5.2. Video Link: https://www.youtube.com/watch?v=7d_Rk_s-jS4 (or a more current version).
    7.6. Installation Process
    7.6.1. Downloading the VS Code Installer.
    7.6.2. Navigating the VS Code Installer interface for Windows
    7.6.3. Selecting the Correct Workloads
    7.6.4. Highlighting the “.NET Multi-platform App UI development” workload.
    7.6.5. Explaining what this workload includes (.NET SDK, MAUI templates, Android SDK essentials).
    7.6.6. Post-Installation Verification
    7.6.7. Opening VS Code for the first time.
    7.6.8. Checking for the .NET MAUI project templates in the “New Project” dialog.
    7.7. DevJournal Reflection
    7.7.1. Reflecting on the cross-ecosystem complexity and the satisfaction of a successful connection.
  8. Part 8: The “Hello, World!” Moment – Creating and Running Your First App
    8.1. Creating the First Project
    8.1.1. Using File > New Project > .NET MAUI App.
    8.1.2. A brief tour of the default project structure (Platforms, Resources, MauiProgram.cs).
    8.2. Running on All Target Platforms
    8.2.1. Explaining the target device dropdown menu in Visual Studio.
    8.2.2. Checklist Item 1: Running on Windows.
    8.2.3. Checklist Item 2: Running on the Android Emulator/Device.
    8.2.4. Checklist Item 3: Running on the iOS Simulator (via Pair to Mac).
    8.2.5. Checklist Item 4: Running on MacCatalyst (via Pair to Mac).
    8.3. Personal Setup: The First Run Payoff
    8.3.1. Posting screenshots of the default app running on each of my target devices/simulators.
    8.4. DevJournal Reflection
    8.4.1. Celebrating the milestone of having a fully functional, cross-platform development and deployment pipeline.
  9. Part 9: The Blazor Bridge – Introducing Blazor Hybrid
    9.1. Understanding Blazor Hybrid
    9.1.1. What it is: Running Blazor components natively in a mobile/desktop app.
    9.1.2. How it’s different from a simple WebView.
    9.1.3. Why use it: Reusing web UI components and C# logic.
    9.2. Creating a .NET MAUI Blazor App
    9.2.1. Showing the “File > New Project” template.
    9.2.2. Pointing out key differences in the project structure (wwwroot folder, BlazorWebView control).
    9.3. Personal Setup: First Look at the Blazor Hybrid Template
    9.3.1. Sharing my initial thoughts on the code and structure based on prior web/native experience.
    9.4. Reference Material
    9.4.1. Video Title: .NET MAUI Blazor – Build Hybrid Cross-Platform Apps
    9.4.2. Video Link: https://www.youtube.com/watch?v=Nn_dD-A92-E
    9.6. DevJournal Reflection
    9.6.1. Discussing the new possibilities that Blazor Hybrid opens up for future projects.
  10. Part 10: The Tizen Frontier – Setting Up for Samsung Devices
    10.1 Introduction to Tizen for .NET10.1.1. Explaining the use case: Samsung TVs, Watches, and other devices.
    10.2. Installation and Configuration
    10.2.1. Installing the Tizen workload via the dotnet workload install tizen command.
    10.2.2. Downloading and installing the separate Tizen Studio.
    10.2.3. Configuring the Tizen Emulator Manager.
    10.2.4. Linking the Tizen SDK to Visual Studio.
    10.3. Personal Setup: My Tizen Setup Log
    10.3.1. As a less common path, providing detailed notes and troubleshooting steps for the setup process.
    10.4. DevJournal Reflection
    10.4.1. Reflecting on the challenges of supporting a more niche platform and the state of its documentation and tooling.

-End Post-

You might also like

The .NET MAUI Workshop, Part 4: The Main Install

The .NET MAUI Workshop, Part 4: The Main Install

July 2, 2025
The .NET MAUI Workshop, Part 3: The Workshop

The .NET MAUI Workshop, Part 3: The Workshop

June 30, 2025
The .NET MAUI Workshop, Part 2: The Toolbox

The .NET MAUI Workshop, Part 2: The Toolbox

June 26, 2025
The .NET MAUI Workshop, Part 1: The Blueprint

The .NET MAUI Workshop, Part 1: The Blueprint

June 17, 2025 - Updated on June 26, 2025
Let's Set Sail and Begin this Programming Journey and Journal

Let’s Set Sail and Begin this Programming Journey and Journal

June 17, 2025 - Updated on June 30, 2025
Code Harbor: a Journal of Programming and Research

Code Harbor: a Journal of Programming and Research

June 11, 2025 - Updated on June 26, 2025

Code Harbor

A programming journal

  • DevJournal
  • Framework
  • IDE
  • Language
  • Platform
  • Science

© 2025 Code Harbor
Adventures in Programming

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In

Add New Playlist

No Result
View All Result
  • DevJournal
    • Hardware & Software
    • Media & Podcast
    • Programming
    • Project
    • Research
    • Scratch Code
    • Tutorial
  • Framework
    • .NET Aspire
    • .NET MAUI
    • AI Framework
    • ASP.NET
    • Data Framework
    • Framework Tool & Manager
    • Game
    • MCP
    • WCF
    • WF
    • WinForms
    • WPF
  • IDE
    • Cursor
    • Eclipse
    • Extension
    • IDE Tool & Manager
    • JetBrains
    • Visual Studio
    • VS Code
    • Windsurf
    • Xcode
  • Language
    • C
    • C++
    • C#
    • F#
    • Go
    • Java
    • JavaScript
    • Kotlin
    • Objective-C
    • Python
    • TypeScript
    • Visual Basic
  • Platform
    • .NET
    • AI Platform & Service
    • Amazon Cloud
    • Azure Cloud
    • GitHub
    • Google Cloud
    • Hosting
    • JVM
    • Kubernetes
    • Node.js
    • OS & Virtualization
    • Platform Tool & Manager
    • WordPress
  • Science
    • AI & Machine Learning
    • Algorithms & Data Structures
    • Bioinformatics & Computational Biology
    • Computer Architecture & Organization
    • Computer Graphics & Visualization
    • Cybersecurity
    • Databases & Data Management
    • HCI & UX
    • Networking & Distributed Systems
    • Programming Languages & Compilers
    • Quantum Computing
    • Software Engineering

© 2025 Code Harbor
Adventures in Programming