About me


Hi – I’m Erik Dahl and I’m a technologist living in the Minneapolis suburbs and spending time with my teams in Richardson TX, Lombard IL, and Costa Mesa CA.  For details of my work setting and experience, check out View Erik Dahl's profile on LinkedIn

I’m on Twitter as @DahlSailRunner.


I’ve also authored some Pluralsight courses, and you can see them here:

To see some of the rules I live by as a programmer, check out my post on my guiding principles.

As an aside, I’m a pretty avid reader.  I don’t comment on many books (but will if you ask), but you can check out my Goodreads page if you want to see what I’ve read or am currently reading. A few of my all-time favorites are below. Enjoy.

Favorites

Ready Player One
5 of 5 stars
tagged:
favorites
Carrion Comfort
5 of 5 stars
tagged:
favorites
Hyperion
5 of 5 stars
tagged:
favorites
Caesar
5 of 5 stars
tagged:
favorites
A Game of Thrones
5 of 5 stars
tagged:
favorites




goodreads.com

11 thoughts on “About me

  1. Jeff Jorczak

    Hi Erik. Wondering if you blogged yet about IdentityServer3?

    From you other post:
    “Authentication is pretty easy to setup, assuming you already have your OAUth server configured and ready. This assumption turns out to be non-trivial, but setting it up is not the subject of this post. I’ll blog about setting it up using IdentityServer3 at another time (soon) — it is using a custom user service to inject the claims we need to the principal being identified, and is using an internal user/password validation.”

    Reply
    1. dahlsailrunner Post author

      I haven’t yet but was planning to do so in the short term future.  If you’re looking for info right away, the Identity Server 3 and 4 GitHub sites and their docs pages are really good, and they have working samples as well. But I’ll do a blog post soon on Id Srv. Do you have any specific questions you were wondering about?

      Reply
  2. Al Navidi

    Hi Erik, I’ve been studying your course on .NET Logging Done Right on Pluralsight and loving it. However, I have one problem with the ToDoWebApi that I was hoping you could help me with.

    For the project properties, the Start URL is: https://sampleapi.local/swagger, as it is in your project
    Under “Servers”, I have “IIS Express” selected instead of “Local IIS”, since when I go change it, it gives me a permissions error. You did not touch on IIS at all during this video. Am I supposed to tweak IIS (e.g., convert a folder to an Application, create Virtual Directory, etc.) or leave it alone? For Project URL, I have http://localhost:33686/, instead of what you had in your project, since I don’t seem to be able to change it!! Anyhow, since I can’t change it, when I run the Solution with my settings, it just goes to the following URL: https://sampleapi.local/swagger and after hanging for a while, it just displays a browser error: “Can’t reach this page” !! What am I doing wrong?

    Thanks in advance for your help.

    Al

    Reply
    1. dahlsailrunner Post author

      Hi Al — glad you’re liking the course! When running with local IIS, you need to start Visual Studio as an Administrator — because VS interacts with the IIS “metabase” and by default doesn’t try to take on those permissions. You also probably need to do the following things (assuming you do want to run under https and not http):
      – create an SSL certificate (maybe even a trusted root authority) for “sampleapi.local” and import it to your cert store
      – go into IIS and create a website and tie it to both your code directory and your cert store, and “require server name authentication”
      – add a HOSTS file entry (c:\windows\system32\drivers\etc\hosts) that says “sampleapi.local” is your localhost — 127.0.0.1

      I might be able to add a blog post about how to do this soon, but the place I learned about how to do it was Dominick Baier’s great course on Web API v2 Security. Focus on the module called HTTP Security Primer and that will have all of this covered. It’s well done and probably explains it better than I could anyway. 🙂

      Reply
  3. Ondrej Moravcik

    Hi Erik,

    I wrote you a message regarding the one of the Pluralsight course on Linkedin (by adding you as a contact). I am writing here too because I don’t know which communication channels are active or how to contact you in a normal way.

    Thanks you for the reply. 🙂

    Reply
  4. VJ

    Hi Eric,

    I’ve gone through your course “.NET Logging Done Right: An Opinionated Apprach Using Serilog. Well done! Very informative.

    One question I do have, if I wanted each of my projects within my application(.NET not core) to write to there own log file can it be done by using the global logger?

    I have many projects(UI, BL, DAL) in my application where I want each project to write to it’s own log file. I’m having a hard time trying to figure out the best way to do this.

    Reply
    1. dahlsailrunner Post author

      I generally like to write all of the logs from a single application to a single place but have an easy way to filter or see where logs came from, and what you describe could be easily achieved by simply adding the AssemblyName (and other info if you like) to each entry via enrichment. If you search for Serilog Enrichers Assembly you should find what you would need to do this with a centrally-placed line of code rather than modifying all of the places that you are creating entries from.

      If you really wanted to create different sinks from these places you could write different static methods (something like “LogBusinessLogic.Information” and this would log an entry with some kind of distinction that would enable you to route the entry to its own sink via what Serilog calls “sub-loggers”. But I recommend a single sink with the assembly name added.

      Reply
  5. Sunil Kumar

    Hi Eric,

    I just read your “Secure Web APIs with Swagger, Swashbuckle, and OAuth2” all four parts and try to implemented on my Asp.net WEB API using owin and OAuth2 and all things goes right but i stuck on external login which i setup on another project. Can you please help me out for user login or Can you please provide source code of these posts.

    Thanks in advance.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *