General

Failed Post

This week I set out to write a continuation of the Blazor themed post I have been doing over the last few weeks. I was going to show how to handle OnSubmit instead of OnValidSubmit as I did in the first post on forms and validation.

I spend most of the week on trying to get this to work, but I failed. I couldn’t find a way to get access to the EditForm in the function that handled the submit. I’m sure there is a way to get this work, but I couldn’t get it to work in the timebox that I had for this post.

Hitting a wall on something like this is frustrating, but having to stretch and learn is one of the things I love about being in the development space. The hard part about a failed post like this week is I really need to cut my losses and move on to a new subject.

One of the things people often ask me about is how I manage to keep doing a post a week in the long run. The timebox I mentioned above is a critical component to the reason my system works. While I would love to be able to solve every problem I hit it just isn’t reasonable to do if I want to hit my goal of a post a week.

Failed Post Read More »

Summer Schedule Challenges

I’m writing just before July 4th, which in the United States is a national holiday. My family is taking advantage of this extra time off to travel to St. Louis for the first time. This is just one example of the many scheduling challenges that the summer season brings to my writing schedule.

Normal Schedule

Typically I am able to get my posts written in the hours before work by getting up an hour or two before I would have to in order to make it to the office on time. My wife gives me a hard time about getting up early, but getting at least one post done a week is something I am very proud of and don’t want to compromise on.

Dealing with the Summer Schedule

The question is how to deal with the changes in time expectations, but still get everything done. This week, for example, I only have 3 work days and will be traveling the rest of the week. The most important thing I have done to handle this situation is having 3 to 4 weeks of post done ahead of time. Knowing that I have a buffer of posts reduced my stress level related to my blog tremendously.

The other way I handle weeks with a lack of time is posts like this which are non-technical and therefore take a lot less time to write. The downside is these type of post don’t get very many reads. On the positive, it allows me some practice in a different writing style. I also hope that even if it isn’t super popular that someone gets some value out of it.

Wrapping Up

Hopefully, someone found something useful in this post. If you do like this type of post I would love to get some feedback on some non-technical topics that you all might be interested in. I don’t see this blog ever changing from primarily technical topics, but it is fun for me to mix it up occasionally.

Summer Schedule Challenges Read More »

Back at it

Hopefully, you all haven’t noticed, but over the last few weeks, I have been out of my normal routine due to some medical issues with multiple family members. Don’t worry everyone is now fine, or well on the way to fine. While my wife doesn’t actually read this blog I still want to call her out for being amazing. She is one of the family members who had an issue and I took some time off to take care of our son while she was recovering and her job is so much harder than what I do every day.

Back to blog related items. The reason you all haven’t noticed that I haven’t been around is that I keep about 4 posts ahead. This is a rule I set for myself years ago. If you are running a blog where you are trying to post on a schedule I highly recommend that you get ahead of your schedule. Getting ahead of my schedule is the only way that I have kept my stress level low enough to continue the blog at all. Since I have been out for a while my number of posts ready to go has gotten way too low and I have been struggling to get back into my normal routine.

I know this post isn’t going to be interesting to most people, but this is going to be a small win that gets things flowing again. Thank you for sticking with me and stay tuned the normal post will return next week.

Back at it Read More »

Limit Failure

My family and I just got back from our first really big trip since our son was born six years ago. We had a ton of fun and it was a great experience for us all. While we were gone I intentionally let a few things drop such as my diet, exercise, reading, and podcasts. For my everyday life letting all of those things drop is a big failure.

Letting go is OK

Let me lead by saying letting things go is OK. None of us can be on plan 100% of the time especially if any of the things you are doing require your willpower to get done. Check out Willpower Doesn’t Work for more information on why using willpower to change your life isn’t a good idea.

Plan, plan, plan

Having a plan for how far off of the rails you are going to go can help limit the damage you do. For example, planning to have one unrestricted meal a day lets you have some freedom while on vacation while limiting your downside versus what it would be if you just went off the rails completely. The key for me in the future will be finding the right balance between my normal routine and not affecting the enjoyment of the trip.

I haven’t tried this yet, but I have read going to the point of visualizing the challenges you might face and how you will respond to them can be a very powerful way of making sure you stick with your plan. Then instead of having to make choices at the moment, you can fall back to going with what you visualized.

This all comes down to not having to make a judgment call at the moment you face the situation. When making calls at the moment we tend to choose the option with the most immediate reward, not the one that is the best long-term.

Back to reality

When everything is over getting back into your normal routine can be hard. If you planned fully then this transition is planned and you just have to execute. Again taking the decision away from the moment.

For our trip, the transition didn’t go as planned. We had numerous delays in flights, unforeseen things to take care of after getting home. We have been back for close to a week now and I still haven’t gotten back on track with all of my activities.

You can’t plan for everything, but that doesn’t mean you don’t plan. When faced with unforeseen events you have to make the best choice you can at the moment and move on. As soon as you have the chance to reevaluate where you are and then adjust course.

The key point is we are all going to fail and that is OK, but we want to limit the downside of our failures as much as we can. Evaluate and adjust. Don’t beat yourself up over failing. Learn.

Limit Failure Read More »

Welcome to 2018

This isn’t the post I had planned for this week, but thanks to a failed automatic upgrade of one of the WordPress plugins this site uses I had to restore a back up of the site which destroyed a lot of the post meant for this week. Thankfully NodeHost does automatic backups every day and the restore process is super simple.

On the positive, it gives me a chance to try out something new. I am going to list the books that I read last year. For the ones that are available on Amazon, I am using affiliate links just to see what happens. A lot of these books come from John Sonmez’s book reviews playlist. Without further adieu here is the list broken out by rough category.

Biographical/Entertaining

Elon Musk: Tesla, SpaceX, and the Quest for a Fantastic Future
Living with a Seal (I laughed a lot on this one)

Business

EntreLeadership (Free gift from CodeStock 2 years ago)
The Phoenix Project

Health

The Obesity Code (Very informational if you struggle with weight read this one)

Parenting

The Kazdin Method for Parenting the Defiant Child

Personal Development

Think and Grow Rich
Boundaries
Triggers: Creating Behavior That Lasts
Never Split the Difference: Negotiating As If Your Life Depended On It
Banish Your Inner Critic
The Energy Bus
Eat That Frog!
The 10X Rule
Peak Secrets from the new Science of Expertise
Moonwalking with Einstein
Deep Work

Software/Career

SOLID Principles Succinctly
.NET Core Succinctly
Little ASP.NET Core Book
The Imposter’s Handbook
The Complete Software Developer’s Career Guide

Top Picks

The Phoenix Project is at the very top of my list from 2017 it uses a story to teach lean concepts from an IT perspective. I which I could get everyone in my company to read this book.

The Energy Bus helped me adjust my perspective and have a more positive outlook on life. If you have any issues with negativity check it out.

The 10X Rule is pretty high on my list as well. This book will get you taking action toward your goals if you follow its advice.

If you have any recommendations leave a comment as I am always looking to add new books to my backlog.

Welcome to 2018 Read More »

Hitting a wall

I have had a very frustrating week. I got sick, failure on two different blog posts, basically no progress on any project. I hit walls on everything I attempted.

Everyone has bad weeks and if you look back I am sure you will find I have made a couple of posts along these same lines. I don’t post this type stuff to complain, but instead to be clear that this isn’t easy and at times is a struggle. I share this so that it can be an encouragement when you hit your own walls. Everyone faces struggles. Pick your hero and I can promise that they struggle.

We tend to see only the positives from the lives of other people which makes what we are going through feel worse and unfair. Comparing the full depth of yourself to the public face of others is an easy way to head down a very negative path. A path I have struggled with at times.

If you struggle with some of the same things I recommend that you check out the content of John Sonmez and Gary Vaynerchuk. Both of them have helped me push through some of the walls I have hit. The Energy Bus by Jon Gordon has also been helpful for staying positive.

Whatever wall you are hitting keep working and push through. You can do this.

Hitting a wall Read More »

First talk retrospective

I made it through my first lightning talk at the May meeting of the Nashville .NET user group. If you want some background you can check out this post on my preparation for the talk.

This post is going to be mostly for me to look back on in the future in case I decided to attempt another talk, but I am sure if someone is a new speaking it could be a useful as well.

Retro

Overall the talk went OK. There was no huge epic failure, but it far from a good talk. I was extremely nervous which lead to me be locked to the podium and flying through the talk way faster than I should have. I am pretty soft spoken and didn’t project as much as I really needed to. As a result of that is my points weren’t as clear as I would have liked.

David Neal was right that the audience does want you to succeed. There were a couple of questions at the end of my talk which made me feel that my point wasn’t totally lost. I got feedback for some of the audience members and other speakers which I included in the previous paragraph. All the feedback was presented to me in a kind manner which I greatly appreciated.

The future

In the future, if I try speaking again I have a lot of things I can improve on. I know that sounds negative, but I am looking at it as an opportunity to grow. I now know that I will need more time during the prepping stage to practice out loud and in front of people.

I love technology and sharing what I learn with others. That is one of the reasons I write this blog every week. Speaking may or may not be part of the future way I get to share with other, but I am happy to now know it is something I can do. It would require a ton of work, but it is no longer something I can’t ever see myself doing.

First talk retrospective Read More »

Visual Studio 2017 Error: The project doesn’t know how to run the profile IIS Express

I have a couple of computers I work between for the samples I use on this blog and when switching to between of them I got the following error last week.

The project doesn’t know how to run the profile IIS Express.

I verified the project would still run on the other computer with no issues. I also verified that on the computer with the issues the project would still work using dotnet run from the command line still worked.

Next, I went to verify the project properties. Here I noticed a strange thing on the computer with the error the Debug tab of the project properties was missing a lot of setting. The following is a screen shot of the computer with the issues.

And here is the same tab on the same project, but from a different computer.

The cause

After more time that I would like to admit I was able to track down the issue. On the computer with the issue, I often work on projects that are very large which tend to slow down Visual Studio pretty bad. In an effort to speed things up a bit I when through and disabled all the extensions that I could including the Microsoft Azure App Service Tools. Turns out that disabling the previous extension caused the Microsft ASP.NET and Web Tools extension to be disabled as well (with no warning).

The solution

The only way I was able to get the project to work properly was to enable both the Microsft ASP.NET and Web Tools extension AND the Microsoft Azure App Service Tools extension. I am not sure why the Microsft ASP.NET and Web Tools extension need the Microsoft Azure App Service Tools extension but based on my experience they are related in some way.

Visual Studio 2017 Error: The project doesn’t know how to run the profile IIS Express Read More »

Preparing for my first talk

I will be doing an intro lightning talk on JavaScriptServices at the May meeting of the Nashville .NET user group. The meeting will be over by the time this post comes out, but I wanted to share my outlook on it before hand.

Background

This will be the first time I have done any sort of talk since the required speeches I did in grammar and high school. In college, all the required speaking was attached to some sort of group work in which I was happy to do some extra legwork if another group member was willing to do the presentation.

Based on what I have written so far I am sure you have picked up on the fact that speaking is terrifying to me. Although I have forced myself into more social situations in the last few years it has done nothing to alleviate my fear of speaking to a group of people.

Motivation

Trying speaking is something that has been in the back of my mind for a few years. Speaking is an area I have always shied away from, but over the last few years listening to people like Scott Hanselman, Cory House, Jeremy Clark and David Neal among others and their take on speaking/giving back to the community planted a seed that speaking is something I need to try at least once.

David Neal’s talk on Public Speaking without Barfing on Your Shoes was especially encouraging to me. Here is a recording of the talk from the last Nodevember.

Preparation

I decided on JavaScriptServices because it has provided a great amount of value to personally and I want more people to be aware of it. With the topic in hand, I moved on to making an outline of what I want to cover. Since this talk should max out at 10 minutes my initial outline ended up needing to be scaled back.

The next thing I did was to create a checklist of all the thing I need to do before the talk. The following is an example of where it stands at the moment.

  • Flesh out the outline
  • Add important items for each point in the outline
  • Create and test demo
  • Test demo offline
  • Create a couple of slides
  • Practice out loud

Of the above having to practice out loud is the one I dread the most. I am not sure what it is about hearing one’s own voice, but it is always disconcerting.

 Wrapping up

I am still in the prepping stages and ever day that the talk gets closer the more nervous I get. There is also a level of excitement to see if this could be something I enjoy. It would be fun to have a new way to share my enjoyment and lessons learned outside of this blog.

I will post an update here or a full new post after the talk with how I felt it went. I will also hopefully have the feedback of a few others as well.

Preparing for my first talk Read More »

Communication Issues

My wife recently had an interesting experience with her cell phone company and this experience reiterated to me the importance of communication. This post is going to cover some high-level issues I encounter regularly.

For a bit of background here is a description of out experience with the cell phone company. First level support was awesome. They were responsive, kind, and mostly knew what they were talking about. Our case ended up getting passes to second level support and this is where things went bad.

Under communication

This company’s second level support was a perfect example of under communication. It was impossible for us to communicate with a second level support person we had to just sit around and wait for them to email us. In fact, even a first level support person could actually talk to a second level support.

The response took days of sitting around and hoping that our issues haven’t fallen through the cracks. The lack of communication ended with use changing cell providers based on the level of under communication. Had we been able to get a status or be told where the issue stood things would have turned out different.

It doesn’t matter if you are dealing with your family, customers or coworkers make sure to communicate what you are doing, what your expectations, what issues you are facing, etc. by providing this information everyone will be on the same page and have good expectations of each other.

Noisy communication

This issue comes up when you are communicating, but the idea being communicated is lost due to an unfocused message. Make sure that each of your points is concise and to the point.

To extend the cell phone example above a noisy version of describing the problem would be describing to the support person how angry the issues is making you, why the weather make you angry, the problem with the cell service, the cool new trick your dog did yesterday.

In the above, the really important bit is the problem with your cell service and the rest of it distracts and obscures what the actual point of the communication.

Dishonest communication

Intentionally providing wrong information for me is the worst communication offense. Missing leading someone either through omission of facts or a full blown lie is a sure way for any process to break down. I feel people try and make the best choices they can, but when making choices based on false or missing information the results aren’t good.

Another big issue with dishonest communication is when someone finds out that you have been dishonest with them if changes all future interactions in a very negative way.

Wrapping up

I have only listed three communication issues here that I seem to deal with for the most, but there are tons of more issues. Take time to evaluate your day to day communication and make sure your communication isn’t unclear for some reason. Don’t let some of this issues cost you customer, employees or friends.

Communication Issues Read More »