This might be a weird article.
A few years ago I saw the terrific movie “Arrival” and it changed how I look at language. A little later, I encountered F# for the first time and it changed the way I look at programming languages.
In this article I’m going to walk you through the basics of some of the theories touched upon in Arrival and then pivot into the role of language in programming. …
This article is part of the C# Advent Series check it out for more articles from others in the community
I love C#. I’ve been working with the language since 2001 and still view C# as my favorite and primary programming language, despite growing to love many other languages as well since then. However, this year has been eye-opening for me as I’ve gotten a glimpse into how others learn programming and the problems C# has with new developers.
This year I left software engineering and became an instructor at Tech Elevator, a full-stack C# and Java bootcamp. I am now responsible for teaching others programming via teaching them C#, SQL, and JavaScript among other technologies. …
I’ve been living a lie. For 20 years of professional software development, I had convinced myself that I didn’t enjoy database development.
I was wrong.
It turned out that I was getting stuck on the repetitive nature of database code and query generation, instead of the core problems we solve when building database applications.
In this article I’ll discuss why I hated working with databases as a C# developer, and the tools and libraries I found that proved me wrong.
It’s not that I thought databases weren’t important — they are critically important to the majority of professional software applications. …
Starting a new job can be exciting, intimidating, and frustrating. The first few weeks can set the tone for how you are perceived in the organization as well as your opportunities to succeed in your new role. Here are my thoughts on how to start strong at your new job.
I’ve been around long enough to recognize how vital it is to take the first few weeks seriously and have a solid plan for getting yourself up to speed.
So, in no particular order, let’s talk about the things that I find are the most helpful to keep in mind when changing jobs. …
OpenSilver has recently made its presence known and announced that Silverlight, like disco, is in fact not dead and is still more relevant than ever — albiet in a fairly changed form.
As a former Silverlight developer and XAML specialist, let me lay out for you what Silverlight was, how OpenSilver is different, and my initial take on whether this matters (and who it might matter to).
If you’re like many new developers I speak with, you may not be familiar with Silverlight or even XAML, so let me set the stage for you.
Back in 2006 Microsoft released .NET Framework 3.0, including a new desktop technology called Windows Presentation Foundation (WPF). WPF was (and is) an extremely powerful way to build and customize desktop user interfaces. It addressed many of the issues with Windows Forms and aimed to build a user interface technology centered around something called XAML. …
Let me show you how creative use of TypeScript’s discriminated unions, type aliases, and functions can give you a greater degree of flexibility in your own code.
I’m going to do this by illustrating how these techniques addressed a problem that I was trying to solve and then talk about some additional ideas on how these techniques can be applied.
I’m building a text-based game for a few talks I’ll be giving this spring. …
Career changes are huge, but you don’t have to go into them blind. In this article I’ll discuss some strategies I’ve used recently to evaluate a change in careers, figure out if you might like the change, find ways to safely practice and grow the skills you’d need, and then finally potentially make that leap in changing your career.
Why am I writing this? For the first time in 14 years my primary job will no longer revolve around writing code. …
Recently a younger developer I respect expressed a somewhat common concern. In essence, their concern was that they were finding themselves doing a little bit of everything and not specializing enough. They were specifically concerned that nobody would want to hire them without a key specialization.
They also mentioned the idea of a “T-shaped” developer who has a wide breadth of experience but a specific area that they are deeply skilled in.
Keep in mind that this was a new developer who had recently graduated from a bootcamp and that specializing early on can be both hard and limiting.
This is a common concern for new developers and so, in this article, I’ll explore the pros of cons of generalizing, specializing, being a so-called T-shaped developer, as well as introducing the term “comb-shaped” which I believe is a more accurate picture of a developer career. …
In this article I’ll show you how to use the Compromise JavaScript library to interpret user input and translate it to a hierarchical sentence graph.
I’ll be using Compromise to interpret player input in an Angular interactive fiction game, but you can use Compromise for many different things including:
Learning Objectives
In this article we’ll cover:
Note: this article is an updated and more narrowly scoped version of an older article I wrote on Compromise. This information works with modern versions of Angular as well as modern versions of Compromise. …
Let’s talk about building accessible Angular applications. Why? Because Angular apps are awesome, but the amazing things Angular lets you do are a net negative unless you can build an app that everyone can use.
Accessibility (sometimes abbreviated as “a11y”) refers to designing software in such a way that it can be used by all users, regardless of any disabilities they may have.
While I’m not an accessibility expert, I can help you get started with accessibility in general and, more specifically, how to follow accessibility practices in Angular.
Before we get into auditing your applications for accessibility issues, let’s look at some common violations. …
About