• A lot of the projects I work on use multiple database engines. SQL Server or Mongo for persistence, Redis for caching, Elastic for search, etc. Setting all of them up whenever I configure a development environment can be a hassle. Turns out Docker solves this problem very well. Docker not really explained If you don't know what Docker is I recommend checking out this intro article. Ideally, I'd convert my projects to all use Docker containers, but a lot of them aren't .
    approx. 4 minutes. Software    docker
  • You can publish to Azure websites a number of ways. They all have their strengths and weaknesses so I tend to change them up depending on the situation. If I'm trying to get something quickly up to Azure I'll go with the git deployment. If I want full continuous integration I'll generally go WebDeploy and automate with continuous integration. This article explains how to deploy a .Net Core application to Azure websites using git.
    approx. 3 minutes. Software    .net core azure git
  • I really like my Macbook Pro. I'm also a developer who uses .Net a lot. This creates a problem for me since the .Net ecosystem is primarily a Windows one. Luckily, with the addition of .Net Core this is changing. .Net Core is open source, cross-platform, and supports many of the things us .Net developers are used to. I was wanting to test the cross-platform part so I set out to build a simple Asp.
    approx. 5 minutes. Software    csharp .net core asp.net
  • Selenium is a great product for browser automation. It allows me to build great suites of interface tests. The only issue is the code to implement Selenium in the C# world isn't very clean. With a single page application, the developers end up with a lot of Thread sleeps, complex selection queries, etc. Enter Coypu. Coypu is a C# wrapper around Selenium with an API inspired by Capybara. This means coding to Coypu is very straightforward.
    approx. 3 minutes. Software    selenium csharp
  • I want to note this was my first stab at getting a workflow for cross-platform libraries using the new technologies. I don't consider any of these methods the correct way to do things, but they represent my experience with it so far. I've had a fairly unstable relationship with .Net recently. I support the push to make things cross-platform. I understand that change is tricky. However, I feel like there is a lack of the usual Microsoft prep-work when it comes to the new offerings.
    approx. 5 minutes. Software    asp.net .net core csharp
  • Re-Launch with Hugo

    The site has been transformed. It's now mattkruskamp.com instead of cyberkruz.com. But, there's more! I've moved from a website builder (Squarespace) to using a static website generator (Hugo) to create the site. Why? Content ownership I'm going to simplify here a bit. The internet was originally created to be a decentralized network. Any person or business can throw a server on the network and host a website or other resources. No one site is technically more important than the other.
    approx. 2 minutes. Software    hugo
  • I was doing my usual Azure publishes when all of a sudden Visual Studio would hang with the “Visual Studio is Busy.” error. After hours of messing with stuff I found that if you go to your server explorer in visual studio the Azure section said “Reenter credentials.” Once I did that everything was working fine. Hope it helps someone else.
    approx. 1 minutes. Software    azure
  • I develop on a MacBook Pro through Parallels 9. When I am working on web applications I use OS X Chrome for my debugging. The reason that I do this is that OS X renders fonts much closer to Photoshop. The problem is that every time I re-install my development tools I cannot remember how I got it working. Here are the steps so future Matt has an easier life.
    approx. 2 minutes. Software    asp.net
  • So you implement a sweet new section to your website and publish. You tell all your friends and family how amazing this new section of your pets blog is. They report back to you that it looks terrible and ugly but it was a good effort. After the back and forth of making sure they aren’t on Netscape 4 or IE 6 you realize that they have to refresh their cache.
    approx. 1 minutes. Software    csharp
  • I have been working on a modal dialog that would alter the scrolling of a browser window. Essentially I have a page with a lot of content causing vertical scroll. I have a modal dialog that should pop up that also contains enough content to create vertical scrolling. The goal here is to make the browser scroll on the background content until the model is shown, and then it would switch to scrolling on the modal content.
    approx. 2 minutes. Software    js