top of page
  • Writer: By Alexander Batenhorst
    By Alexander Batenhorst
  • May 29, 2023
  • 4 min read

• SDK • C#

ree

One of the main advantages of Maui Blazor is that it is cross-platform. You can use the same code base to target Windows, Android, iOS, and macOS devices with native performance and look-and-feel. This means you don't have to learn different languages or frameworks for each platform, which can save you time and effort.


Maui Blazor is a newer technology that allows you to create hybrid apps that combine web and native UI elements using C# and Razor. In this blog post, I will share some of the benefits of using Maui Blazor for new developers and how you can get started with it in minutes.


DIY for Beginners


To get started with Maui Blazor, you can follow a simple guide that shows you how to build your first app using Visual Studio—found at the end of this article. With the basic Blazor application, you can create a basic app that displays a counter and a weather forecast using web components. You can also customize your app with native controls and platform features using C# and XAML.


XAML – Low Level Understanding


To use XAML, you create a file with the .xaml extension and write the XAML code to define the layout and appearance of your user interface. The XAML code is then parsed and used to create the visual elements of your application at runtime.


Here is an example of a simple XAML file that defines a button:


<Button Content="Click me!" />

This XAML code creates a button with the text “Click me!” on it. When the application is ran, the XAML code is parsed and a button is created and displayed to the user.


XAML is a language used to create the look and layout of an app’s user interface. It’s like a blueprint that tells the app what buttons, text, and other elements to show on the screen and where to put them. Developers write XAML code in a special file and when the app runs, it reads the code and creates the user interface based on the instructions in the XAML file. For the purposes of the rest of this article, you don’t need to fully understand XAML. However, I felt necessary to show a quick example like the one above to form a better understanding. And to demonstrate how easy it is to create things like a button.


Maui Blazor Introduction

I learned about Maui Blazor from a presentation given by Timothy Ingledue at the May 2023 Omaha Dotnet User Group meetup. He is an accomplished software engineer with over two decades of experience in the field. He specializes in the Microsoft and AWS cloud technology stacks. He demonstrated how easy and powerful Maui Blazor is for creating hybrid apps. And to avoid “tutorial rot,” you’re not going to want to miss this short and sweet tutorial over Balzor Maui. As mentioned in my previous posts, avoid lengthy complex coding tutorials, if possible, especially when first starting out.


Blazor vs. Maui Blazor


Over three years ago, I was introduced to an SDK via a Blazor application tutorial. I have been interested in Blazor ever since. But there is a distinction between Blazor and Maui Blazor. Blazor is like a set of building blocks that lets you make websites using C#. .Net Maui is another set of building blocks that lets you make apps for phones, tablets, and computers using C# and another special language called XAML (cross-platform). With .Net Maui, you can also use the Blazor building blocks to make apps that work like websites but can also do things that only apps can do. In other words, Blazor is for making websites and .Net Maui is for making apps, but you can also use Blazor with .Net Maui to make apps that work like websites.


But initially most of my exposure to software development was using C# on the back end. I like Blazor because it simplifies web development by using C# instead of JavaScript. Seeing Maui Blazor for the first time was exciting because it extends Blazor to native platforms.

Conclusion


Maui Blazor is great for new developers because it lets you use your existing C# and web skills to create hybrid apps for multiple platforms. You don't have to learn new languages or tools, and you can leverage the rich ecosystem. If you are a new software developer who wants to learn more about the full stack or how modern APIs work, you might be interested in Maui Blazor. Maui Blazor can help you see the whole stack because it combines web development with native development. You can use Razor components to create your user interface and interact with platform features and UI controls—low code development. You can also use C# and .NET libraries to access data and services from various sources, such as databases and Rest APIs.


If you want to try Maui Blazor yourself, you can check out Timothy's repo with step-by-step instructions: https://github.com/Muaadeeb/May2023UserGroupMaui. I will note that I did enjoy the AI created Lizard images in the presentation. Remember, everything you see is free. You can also find more resources and tutorials on the official .NET Maui documentation site: https://docs.microsoft.com/en-us/dotnet/maui/.


Reference: Ingledue, T. (2023). Maui Blazor: Build hybrid apps with web and native UI elements [Presentation]. Omaha Dotnet User Group Meetup.

 
 
  • Writer: By Alexander Batenhorst
    By Alexander Batenhorst
  • May 20, 2023
  • 3 min read

Updated: May 28, 2023

• SDK • Scaffolding

ree

If you are interested in becoming a software developer, one of the first decisions you need to make is which programming language to learn. There are many factors that can influence your choices, such as your personal preference, your career goals, and the availability of resources and mentors. In this article, I will share some tips on how to pick a programming language that suits your needs and aspirations.


Pick one code based on local geographics. Depending on where you live and work, some programming languages may be more popular and in demand than others. For example, C# is popular in the Omaha metro area in Nebraska. Although C# was my primary focus, I stuck with JavaScript since it was the first language I used when first learning how to develop over three years ago.


Find a Tech Mentor


Next, find a tech mentor that’s either been a software developer or is some kind of information technology professional. Learning a new skill can be challenging and frustrating, especially if you don't have anyone to guide you and answer your questions. A tech mentor can help you overcome obstacles, provide feedback, and motivate you to keep going.


IT professionals with over a decade of experience usually have enough coding background to point you in the right direction during the early learning process. Using an IT professional instead of developer was helpful making the decision to go into software development because at the time there were zero programmers in my old community in rural Nebraska.


Embrace Diversity


I was excited to find different cultures within the tech community. These individuals from a different cultural background single-handedly impacted my early tech career path. They were the best mentors early-on in the process.


Diversity can enrich your learning experience and expose you to different perspectives and approaches. You can also benefit from the support and encouragement of people who share your different diverse background and identity and work in technology. But much can be gained by embracing different cultures than your own—depolarization.


Community


Find resources and communities to support your learning. There are many online and offline resources that can help you learn a programming language, such as books, courses, tutorials, blogs, podcasts, and videos. As discussed in previous blog posts, immersion in programing via different medias support the lower level of Bloom’s taxonomy. Immersion is what helps you “remember” and start nailing down the schema of software development required to begin the early learning process. But don’t forget to use other in-person resources.


One resource in Omaha Nebraska is the Dotnet meetups. I believe they have been around for over two decades. Their mission, pulled from their website, is to facilitate a discussion environment for .NET developers and IT professionals focused on building real-world solutions using the Microsoft .NET platform. You can also join them online for hybrid in-person and online tech presentations if you don’t live around the area. Be sure to check via your favorite search engine, the local resources available in your area. These can be forums, chat groups, social media platforms, or events where you can network, exchange ideas, and collaborate on projects.


Stick to One Language


Stick to one language during the first year of the code learning process: I cannot emphasis this enough. This was the best advice I have gotten from my early tech mentors before switching careers. Learning a programming language can be overwhelming at first, as you need to master it’s syntax, logic, and features. If you try to learn multiple languages at once, you may end up confusing yourself and losing focus. It is better to stick to one language until you feel confident and comfortable with it before moving onto another one.


Often, I wanted to learn the next best popular code. However, I remember one of my tech mentors slapping me on the hand and telling me to stop thinking about other programing languages. He gave this advice to stick to one language, no matter what, in a stern manner. The way a big brother talks to his little brother—with great sincerity.


Conclusion


I hope these tips will help you choose a programming language that fits your needs and aspirations. You may also benefit, like I did, from having a mentor from another culture. Remember that there is no one right answer for everyone, and that you can always change your mind later if you find a different language more appealing or suitable for your goals. If you are within your first year of learning code, stick with only one language that’s most popular in your area.


Sources as of 5/20/2023

Omaha Dotnet Meetup (n.d.). About Us.

 
 
  • Writer: By Alexander Batenhorst
    By Alexander Batenhorst
  • May 15, 2023
  • 4 min read

• SDK • Scaffolding

ree

If you are new to software development, you might have heard of CRUD operations and wondered what they are and why they are important. In this blog post, we will explain what CRUD operations are, how you can practice with a CRUD template, and how they can teach you the concept of encapsulation. Learning CRUD is a great way to scaffold your knowledge from easier steps involving coding in Visual Studio to more difficult operations.


How Can CRUD Operations Scaffold Your knowledge?


Encapsulation is one of the fundamental principles of object-oriented programming. It means that data and methods that operate on that data are bundled together in a single unit called an object (Stackify, 2023). Encapsulation helps to hide the complexity and details of how an object works from the outside world and only expose what is necessary for interaction. For example, when you use a CRUD template, you don't need to know how the database connection is established or how the SQL queries are executed.


You only need to know how to use the methods that perform CRUD operations on the data. And once you start getting the hang of it, you can really start scaling up your program. That is why learning CRUD operations are a great opportunity to learn coding on the lower level of Bloom's taxonomy (freeCodeCamp.org, 2023). That is as long as you remember to start small.


What are CRUD Operations?


CRUD stands for Create, Read, Update, and Delete. These are the four basic operations that we perform. CRUD is also data-oriented and the standardized use of HTTP methods. For example, when you create an account on a website, you are performing a CRUD operation. You are creating a new record in the database with your personal information. When you log in to your account, you are reading the data from the database. When you edit your profile or change your password, you are updating the data in the database. When you delete your account, you are deleting the data from the database. See a trend?

CRUD example repo link:


Please open via iOS/WIN web browser, for best results of the example below:

In the above example of CRUD, notice that each letter (e.g. “D” for delete) represents a CRUD operation. Initializing the CRUD operation in loops allows you to create an interface for a user. Once the interface is created, you can start building out your CRUD operation by creating, deleting, and/or updating data.


Search the Web for Resources


There are tons of free resources out there to learn CRUD. All you need to do is set up Visual Studio which is free for learning purposes and start searching YouTube. When building your CRUD program, try to focus not only on one programing language but on one CRUD operation. Start with “Create” which is the easiest CRUD operation. “Create” involves the fewest steps when coding in C#. As soon as you create an array, you will find it easy to “read” data in your program. You will find that as you move down the letters, the CRUD operations get harder—start small.


Scaffolding is a learning technique that involves providing support and guidance to learners as they progress from easier to more difficult tasks (Educative, 2023). Scaffolding helps learners to build their confidence and competence by breaking down complex problems into manageable steps. For example, when you learn CRUD operations with Visual Studio, you can start with simple tasks such as creating a program to add a data source and generating a data model (iteration loop). Then you can move on to more challenging tasks such as creating controllers, views, and routes for performing CRUD operations on the data.


Reflection


I personally have found practicing and creating a CRUD application to be the most frustrating yet rewarding process of learning software developent. The process felt impossible until you figure out the patterns to move onto other CRUD operations. And it was frustrating because I had a difficult time, initially, learning how to build the "delete" operations. It was rewarding because once I figured out some of the CRUD operations, my program took off. I could create an exciting UI on my console program too. And I could begin the process of scaling up software by carefully planning prior to coding using mapping software–Microsoft Viso™.


Conclusion


CRUD operations are essential for web development as they allow us to manipulate data in persistent storage. By learning CRUD operations with a CRUD template and Visual Studio, we can practice our coding skills, learn the concept of encapsulation, and scaffold our knowledge from easier steps. By understanding CRUD operations and APIs, developers can build powerful web applications that can store and retrieve data from databases quickly and easily. And learning CRUD is a great opportunity to learn coding on the lower level of Bloom's taxonomy, which is the cognitive process of remembering facts and concepts.


Sources as of: 5/13/2023

Stackify. (2023). What are CRUD Operations? Examples, Tutorials & More. Retrieved from https://stackify.com/what-are-crud-operations/

Educative. (2023). CRUD operations explained: Create, read, update, and delete. Retrieved from https://www.educative.io/blog/crud-operations

freeCodeCamp.org. (2023). CRUD Operations – What is CRUD? Retrieved from https://www.freecodecamp.org/news/crud-operations-explained/.

 
 
  • GitHub-Mark-Light-120px-plus
  • LinkedIn

© 2020 by Alexander Batenhorst

LET'S TAKE IT TO THE NEXT LEVEL

Thanks for submitting!

bottom of page