Skip to content

Archives

2024
August
  • 4 Lessons from a 30 Year Career in 5 minutes

    Chuck spills the tea on 30 years of career lessons, revealing surprising truths about toxic coworkers, the myth of loyalty, and why your family should always come first.

April
2022
March
2021
May
April
  • Give a Safe Space to Express Ideas

    When leading a team, it’s important to create an environment where everyone feels safe to express their ideas regardless of their experience level.

March
  • Scrum is Overrated

    Scrum is overrated. It's a good starting point for teams that have never worked together, but it's not the end all be all.

2020
December
  • A Binary Search Implementation

    The binary search algorithm quickly searches a large array of numbers, it’s often referred to as divide and conquer.

November
  • The Benefits of Using a Build Framework

    Continuous Integration (CI) and/or Continuous Delivery (CD) is the norm on software projects these days. There are many build servers such as Azure DevOps, TeamCity, Jenkins, and Cruise Control.Net.

October
September
August
  • NVarchar Vs Varchar

    Each engineer defining a new string column decides: Do I use nvarchar or do I use varchar?

July
2019
November
  • C# 8 - Nullable Reference Types

    Microsoft is adding a new feature to C# 8 called Nullable Reference Types. Which at first, is confusing because all reference types are nullable… so how this different? Going forward, if the feature is enabled, references types are non-nullable, unless you explicitly notate them as nullable.

  • When to Use The FromService Attribute

    The [FromServices] attribute allows method level dependency injection in Asp.Net Core controllers.

October
  • With or Without Curly Braces?

    There’s a heated debate around single statements and whether they should have curly braces or not.

  • 9 Guidelines for Creating Expressive Names

    Naming is subjective and situational, it’s an art, and with most art, we discover patterns. I’ve learned a lot through the reading of other’s code. In this article, I’ve compiled 9 guidelines I wished others had followed when I read their code.

September
August
July
  • Implementing Request Caching in ASP.Net Core

    At some point in an application’s development, usually, fairly early on, you realize the application is slow. After some research, the culprit is, unnecessarily retrieving the same data, and a light goes off, and you think: “I need some caching.”

  • The Collection Comparer, Finding the Differences Between Two Collections

    Have you had to compare two collections and execute some logic based on whether the item is in the source collection, in the comparing collection or in both? Yeah, me too, I needed to merge data from the UI and the database. I couldn’t find a good solution, so, I wrote a collection comparer.

June
2018
June
2017
October
2015
December
  • Examining the Case for Switch Statements

    For nearly 50 years, the switch statement (also known as the case statement) has been an integral part of programming. In recent years, however, some are claiming that the switch statement has outlived its usefulness. Others go even further by labeling the switch statement as a code-smell.

  • In a Single Page Application, Should I process on the Client or the Server?

    One of the selling points of the Single Page Application (SPA) was offloading work traditionally performed on the server onto the client. I feel the SPA has delivered on this promise.

November
  • 4 Practices to Lowering Your Defect Rate

    Writing software is a battle between complexity and simplicity. Striking balance between the two is difficult. The trade-off is between long unmaintainable methods and too much abstraction. Tilting too far in either direction impairs code readability and increases the likelihood of defects.

August
  • Setting up Continuous Integration on Ubuntu with Nodejs

    I went through blood, sweat and tears to bring this to you. I suffered the scorching heat of Death Valley and summited the peaks of Mount McKinley. I’ve sacrificed much.

  • 8 Must Have Extensions for Brackets.io

    Everyone has a favorite editor. I’ve tried them all. And I’ve found that Brackets.io best suits me. Unfortunately, there are gaps in the functionality of Brackets.io. With a robust ecosystem of extensions, I’ve found 8 extensions that complete Brackets.io.

  • Ignorance is Bliss When Using Frameworks

    In software engineering, there is a prevailing idea that an engineer should only use a framework when he or she understands the internal workings. This is a fallacy.

May
April
  • Index Fragmentation in SQL Azure, Who Knew!

    I’ve been on my project for over a year and it has significantly grown as an application and in data during the year. It’s been nonstop new features. I’ve rarely gone back and refactored code...

March
  • Proofing a Concept and Growing the Code

    In a recent conversation, a friend mentioned he creates proof of concepts and then discards them after testing their viability. I’ve done the same in the past. This time it didn’t feel right. I cringed when he said he threw away to the code. Maybe my days as a business owner has turned me into a froogle goat, but it felt like he was throwing away value.

  • A General Ledger : Understanding the Ledger

    What is a general ledger and why is it important? To find out read on!

February
  • Securing AngularJS with Claims

    At some point an application needs authorization. This means different levels of access behave differently on a web site (or anything for that matter). It can be anything from seeing data to whole area’s that are not accessible by a group of users.

January
  • 5 Steps for Coding for the Next Developer

    Most of us probably don't think about the developer who will maintain our code. Until recently, I did not consider him either. I never intentionally wrote obtuse code, but I also never left any breadcrumbs.

  • 3 Reasons Why Code Reviews are Important

    A great code review will challenge your assumptions and give you constructive feedback. For me, code reviews are an essential part in growing as a software engineer.

2014
November
  • Implementing Transparent Encryption with NHibernate Listeners (Interceptors)

    Have you ever had to encrypt data in the database? In this post, I’ll explore how using nHibernate Listeners to encrypt and decrypt data coming from and going into your database. The cryptography will be transparent to your application.

  • Questions to Ask During an Interview

    When I walk out of an interview, I want to know the position’s responsibilities, I want to know the environment and I want to know what I am expected to accomplish during my first week. Most of all I want to know if the company is a fit for me.

October
  • Git Cheat Sheet

    Below are git commands I find myself using over and over.

  • Calling Stored Procedures with Code First

    One of the weaknesses of Entity Framework 6 Code First is the lack of support for natively calling database constructs (views, stored procedures… etc). For those who have not heard of or used Code-First in Entity Framework (EF), Code-First is simply a Fluent mapping API.

  • Missing Management Delegation Icon in IIS

    It’s critical this is done first. Web deploy may not install correctly if it’s installed with the Management Service icon missing. Check IIS for the Management Delegation icon, it’ll be under the Management section.

March
  • Conditional Sql parameters with nHibernate

    The problem is a the nHibernate’s `CreateSqlQuery` needs a complete sql string to be created, but you can’t create a string until you’ve evaluated the parameters. The only work around is to evaluate the conditional parameters to create the sql string to create the nHibernate session and then revaluate the parameters again to add them to the `nHibernate` query object.

February
  • A Simple Guide to Finding Your Next Job

    It’s time to look for the next job, eh? I feel for you. Finding a job sucks. It’s one of those things that everyone must do at some point. I equate it to looking for love. Every aspect of “you” is on display. When someone passes on you, it’s hard not to take it personally. Chin up my friend; we’ll get through this.

2013
December
  • Crystal Reports 13 Maximum Report Processing Limit Reached Workaround

    In the Visual Studio 2012 version of Crystal Reports 13 there is a threshold that throttles concurrent reports, this also includes subreports, to 75 reports across a machine. This means if there are 5 web applications on a given server all opened reports across all 5 web applications counts toward the 75 report limit.

March
  • Considerations When Throwing Exceptions

    There is an underlining philosophy in this system that nulls are bad. In most cases where a null can be generated an exception is thrown. At first I did not see a problem with this. I saw it as an architecture decision, an aesthetic, but as I interface with the code, it’s apparent to me it’s an architectural mistake.

2012
October
May
  • Deploying with MsDeploy Outside of Visual Studio

    MsDeploy is a powerful tool for deploying web applications. Here are some command line examples for deploying with MsDeploy.

  • Creating a Generic Type at Runtime

    To use a runtime type with an IOC container like StructureMap to find a generic implementation, create the generic type using `MakeGenericType` and then retrieve the instance from the container using `_container.GetInstance(type)`.

January
2011
December
June
  • King of the Hill Developer

    Typically this developer has been in few organizations. They tend to be the smart frog in the small pond. When another smarter developer joins them, they try to subjugate them. Tactics include withholding information, passive put downs and excessive explaining.

  • Mini-Me Developer

    This developer follows the King of the Hill Developer like..

  • Insecurinator Developer

    This developer refuses to find a better job.

  • Chronic Contractor

    This developer is always looking for a gig. There is always something better. Chronic Contractors are expensive. Mileage per dollar varies.

May
  • The Ego Interviewer

    The Ego Interviewer is a person who uses the interview process to stroke their ego.

2010
November
October