Management Mondays

I wear many hats at work. Sometimes I’m a developer, sometimes I’m an architect, and there are times when I play manager. I don’t particuarly enjoy management as much as the other three roles, and it rightly so takes time to do. Recently, I have been having a hard time making time for these management tasks. As you can imagine, leading a team of developers while also writing code leaves little actionable time for management.

DotNet Core with Shibboleth

One of the more difficult and painful changes while migrating our enterprise applciations to DotNet Core has been supporting Shibboleth authentication and consequently, implementing our group based authorization system. There are a few main things we have to implement in our applications in order to leverage Shibboleth. Grab the current logged in users login name, in our case it is a custom username called eName Establish a local cookie based login scheme for the dot net app Additionally, we use a custom group based authorization system that accepts an eName and returns a list of groups associated with that user.

Foreign Key Dropdowns with .NET MVC 5

One of the more difficult form controls in web development is adding drop downs for foreign key relationships. .NET MVC gives you several different options for generating form markup from different types of models. However, the method for foreign keys and drop down lists is a bit more work than the rest. Given the following models: JobPosting.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace CMJobs.Models { public class JobPosting { public JobPosting() { this.

Global Template Objects with .NET MVC 5

In modern web applications it is often convienient to have certain content or database object available to all views throughout an application. Good examples of this are avatars, usernames, and user content such as first and last names, and email addresses. Most modern web frameworks have an easy way to accomplish this. For instance, Django has middleware which can fairly easily be added to the request/response stack in order to inject objects or content into the global view/template context.

Custom Authorize Attribute in .Net MVC

I’ve recently been doing most of my coding within the .Net space. As such I’ve found myself trying to repeat several of the patterns available within the Django Framework. One of those common patterns is authentication/authorization and easy ways to apply these to various controllers/views. It’s sometimes necessary to restrict access to certain views based upon more than a user role. For instance, you may only want to allow the owner of an object (or and Admin) to be able to remove or modify that object within the application.

A New Path

The next few weeks are sure to be a wild ride. After spending well over half of my career with Kansas State University, I’ve decided to accept a new position as Assistant Director of I.T. for Application Development at Colorado State University, College of Health and Human Sciences. I’ve had a great opportunity to grow and develop during my time at OME, one that I don’t take lightly. I’m extremely excited for the opportunity to be a Ram and be a part of the higher education community in my adopted state of Colorado.

RocketChat API Wrapper

Today I open sourced a library for dealing with the RocketChat API. If you’ve never heard of it RocketChat is an open source chat platform similar in feature set to that of Slack and HipChat. It was recently adopted by my organization as an internal tool. In the past my team has used HipChat as our main communication platform and it worked just fine, but in an effort to trim costs and use similar tools we’ve made the transition to RocketChat.

Intermittent Fasting Experiment

For the past two weeks I’ve been experimenting with a Ketogenic diet to see if I could finally lose the last 30 or so pounds that I’ve gained over the last decade. The initial weeks have gone well, losing almost 10 pounds so far. In addition to eating in a completely different way, I’ve wanted to experiment with another diet change that is “Intermittent Fasting”. My goal is to have periods of fasting for 16-18 hours per 24 hour period.

Multiple Forms in Django Views

In one of our projects, we maintain a fairly large central view to display a dashboard of user information. Recently, we’ve begun adding the ability for users to edit parts of that information inline on the dashboard. Due to the nature of the data being disparate, we need to have the ability to build out multiple different forms, and at the same time maintain some sort of structure and organization within the application itself.

2015 Year in Review

Here’s my list of 2015 goals for the year and how I progressed. Get in better shape Climb another mountain, hopefully above 12k Improve my leadership skills Attend a technical conference Get in Better Shape This year has been a good year for getting back into better shape. I’ve been spending a lot of time cycling this year and even have gotten a new bike. Climb Another Mountain I didn’t climb a different mountain, but I did climb another one.