Git is an indispensable tool for managing source code in modern software development. While basic commands like git clone, git add, and git commit are essential, they are just the tip of the iceberg. This guide is intended for developers who already have some Git experience and wish to unlock its full capabilities. We will…
Read more…
Visual Studio Mac is dead or will be 8/31/2024. This probably doesn’t affect many of you, but this is an interesting turn of events. Visual Studio Mac has a fascinating lineage. Microsoft created .NET years ago (2001), and alongside .NET an open-source alternative was created (Mono). Developers needed an alternative editor, which begot SharpDevelop. And…
Read more…
Pictures often provide more meaning than can be provided by text. You know the pain if you have ever had to explain what is happening in an application but struggled to find the right words. Sometimes it’s just easier to send a screenshot. This is where html2canvas comes in. This handy little piece of JavaScript…
Read more…
Selecting the right development tools is pivotal. It’s essential not only to have a broad array of features but also to ensure those tools are user-friendly and efficient. Over recent years, my preference has strongly leaned towards JetBrains’ Rider IDE. Rider stands shoulder to shoulder with the full Visual Studio IDE, boasting features from solution…
Read more…
NodeJS is one of the more common server hosting environments out there. We at Don’t Panic Labs tend to use .NET instead of NodeJS for the hosting of backend systems, but I like to use NodeJS for a lot of my experiments as it often forces me to learn new things. When standing something up…
Read more…
Azure Storage tables are simple; they’re basically rows and columns. Storage tables can be used to store data much like you would with Azure SQL. While Azure SQL has more features, there is something nice about the simplicity of Storage tables. Once you get your data into storage tables, you will likely need to see…
Read more…
Sending emails is a pretty known technical space. Many of us have sent emails using a variety of services. One you maybe haven’t tried is Azure Communication Services, which is still in preview at the time of this blog post. Here’s how you set up Azure Communications to send emails from your applications. Create a…
Read more…
Software projects often come down to transforming data from one format to another. A common situation involves extracting some data from HTML. This can occur when transferring data from a legacy system, and the best way to do it is screen scraping. There are a variety of options available when screen scraping, but a really…
Read more…
Azure Service Bus is an excellent glue technology that we can use to handle the communication between our subsystems. We often use Azure Service Bus as the “queue” between our subsystems, which works great. We usually build our backend systems using C#/.NET, but what if we need to send a message using Node.js? Node.js is…
Read more…
AWS Cognito is an identity provider we can use to manage users in our systems. Cognito supports a simple oauth2 sign-in flow. Following this flow makes it pretty straightforward for users to sign in or sign up. Before doing anything else, you must create an AWS Cognito user pool in the AWS Console. For this…
Read more…