Argument parsing with Abbot
Most Bot skills strive for a more natural language feel to arguments passed them. For example, to remember something with Abbot you can use @abbot rem haacked's blog is https://haacked.com
. And then later recall it with @abbot rem haacked's blog
. Or just @abbot rem haacked
because Abbot uses fuzzy matching.
Introducing Abbot, a powerful ChatOps tool for collaborative work
Collaborative work is difficult enough when located together in an office. It can present new challenges when working remotely. When I worked at GitHub, one powerful tool we used that left a lasting impact on me was ChatOps. In fact, GitHub may have created the concept. If not, they were certainly one of the first.
Read MoreNaming NuGet, A Lesson In Distributed Decision Making
It is notoriously difficult to make decisions in a distributed asynchronous manner. It’s hard enough for me to make decisions by myself. Now introduce more people and timezones and you have yourself a hot mess. People tend to meet an online proposal with the silence of indifference. Or the silence that’s a result of the bystander effect as everyone waits for someone else to chime in.
Read MoreWill Remote Compensation Be Tied To Location In The Future?
On Twitter the other day, David Anson asked,
Read MoreA Subtle Gotcha with Azure Deployment Slots and ASP.NET Core
When I deploy software, I’m lazy. Very lazy. This is why I lean heavily on Continous Deployment (CD) to automatically test and deploy software when it’s merged into my main
branch. I don’t have time to deploy code by hand. So gauche!
Mystery of The French Thousands Separator
I enjoy writing silly chat bots. To indulge my silliness, I’ve been exploring the Microsoft Bot Framework. Overall, it’s a pretty good framework, but I’ve had some weird bugs here and there. It’s unclear to me if they’re my fault or not. So to dig into them, I cloned the microsoft/botbuilder-dotnet to my machine and ran all the unit tests. It’s what I do.
Read MoreIt's Time To Break to Build
Marc Andreessen wrote a recent cri de cœur to start building to solve the biggest problems we have. I believe the overall sentiment is a good one.
Read MoreIntroducing Aboard Beta
In a recent post about remote work, I noted the importance of writing things down.
Read MoreWhen Remote Work Goes Wrong
With all this recent emphasis on remote work, you can be forgiven if you think proponents (like myself) are a bit Pollyannaish about the benefits of remote work. Even so, you have to admit that preventing the collapse of civilization from a pandemic is a strong benefit to add to the list. Whodathunkit? Given that many are now required to work from home, it makes sense to try our best to make it work. This is the motivation behind my series of posts about remote work.
Read MoreGeographically Distributed Teams
Facebook, Microsoft, Google, and Amazon just told its Seattle area employees to work from home for the next three weeks to reduce the risk of spreading the coronavirus. Lucky for them, I’m working on a series of post that will help.
Read MoreHow to Lead From Home
Working from home is a hot topic right now. If you’re a manager letting your people work from home, you may have concerns. How do you ensure that people are working? How do you create a good remote work environment? Are your people really not wearing pants?
Read MoreHow To Work From Home
Debunking the Peter Principle
Professor Laurence J. Peter wrote The Peter Principle in 1968 as satire critical of management and management practices. Over time, cynical folks latched onto it as a universal law of nature. Here’s how Professor Peter stated the law he named after himself,
Read MoreRecovering from Burnout
Today’s my birthday so naturally the topic of burnout comes to mind. For the past couple years, I’ve been coping with varying degrees of burnout. This is not to be confused with being a Burner which is something else entirely.
Read MoreMy First Xamarin app
A few days ago, my daughter was in a real funk. It breaks my heart to see her struggle. Fortunately, I knew exactly what to do, “build a mobile app!”
Read MoreFun with URL Encodings
Quick! How many ways are there with .NET Core to encode parts of a URL? Here’s a list I came up with.
Read MoreBuild an ASP.NET Core Update Panel with Vanilla JavaScript in Four Easy Steps
Sometimes you just need to submit a form and update a portion of your web page without a lot of fuss and muss. Today, you have a lot of options for dynamically updating the DOM based on changes made on the server. You could use React, Vue, Angular, SignalR, and Blazor.
Read MoreThe Bot That Helps You Merge
Developer tools that understand code semantics have a lot of potential. They have potential to make developers more productive and reduce the friction and drudgery of our craft. But it can be difficult to put these tools to use in practice. Many of them require a steep learning curve to use. It would be nice if we could automate the benefits of some of these tools. You can see where I’m going with this.
Read MoreGlobal Query Filters for Interfaces
UPDATE: At the bottom is an update that works for EF Core 5.0.2 and above that doesn’t rely on internal interfaces.
Read MoreShould You Flow External Claims On Every Login?
In my last post, I showed how to flow claims from an external identity provider (also referred to as a login provider) to your application. My post walks through how to bring over the claims every time the user logs in. But why would I want to do this?
Read More