Skip to main content

Advice from Dan Wahlin

Dan Wahlin was here this week running an Angular training course.
The Intern team had the great opportunity to steal an hour of his time today to ask questions and learn from an expert. We had some Angular specific questions, but we also got a ton of great life advice.

These are the biggest take-aways I had from our time with Dan.

  1. His greatest strength is his persistence and ability to work harder than others. He said that he might not be the smartest, even though he clearly is very smart, but that he will out work you and he will solve whatever problem he is facing through his persistence.
  2. He also said that it was important to quiet your inner critic. You should not be afraid to do something, but rather use that fear and "go over the wall, not run away." I have also recently begun reading the book Banish Your Inner Critic, which focuses directly on this concept and what you can do to change your inner critic, this advice had really great timing for me.
  3. The next thing will not bring you happiness. Early on he was always striving for that next thing, whether it was a promotion, a raise, a trip somewhere, or whatever else. None of those next things turned out to be the thing that finally made him happy. He had to learn to be happy as he was. Once he figured that out everything was happy and he could spend his time being happy doing what he was doing rather than focusing on the next thing.
  4. Always be learning. The developers he has seen be successful are the ones that are always learning and are willing to adapt and change. One of his hobbies is to learn, rather than spending his time with a leisure activity he would rather be reading about a new technology or trying out some new framework. I think this goes along with his persistence in giving him an advantage that most other do not have.
  5. Lastly, some advice for what he looks for when interviewing developers, be willing to say, "I don't know." If you are not able to say I don't know, then you are going to be difficult to work with and he would not be interested in working with you.


Popular posts from this blog

Converting a Large AngularJS Application to TypeScript Part 1

I work on a project that uses AngularJS heavily. Recently we wondered if using a preprocesser like CoffeeScript or TypeScript for our JavaScript would be beneficial. If our team is going to switch languages, we would need to be able to convert existing code over without much pain and we would have to find enough value in switching that it would be worth the conversion.

I had read an article that stated that because TypeScript is a SuperSet of JavaScript, you could convert a plain JavaScript file to TypeScript by changing the extension to .ts and not much else would need to change. I wanted to test out this claim, so I took a file that I was familiar with, an Angular Controller, and tried to convert it to TypeScript to see how much effort it would take and then try to figure out where we would benefit from using TypeScript.

This is what the controller JavaScript file looked like to start out with:
(function () { 'use strict'; angular .module('app') …

Converting a Large AngularJS Application to TypeScript Part 2

In part 1 I was able to take an Angular controller written in JavaScript and convert it to a TypeScript file while doing very little to change the code. In this post I am going to explore transitioning that same controller to actually use the features provided in TypeScript. This is how I left off my controller:
declare var angular: any; (function () { 'use strict'; var controller: any = function($scope){ ... } angular .module('app') .controller('controller', controller); controller.$inject = ["$scope"]; })();
While performing the translation from JavaScript to TypeScript, I would make sure at every step that the functionality I expected still worked, so if anything I did broke the system I would change it back and try again with another approach. Also if something seemed like it worked too easily, I would break it on purpose to make sure I wasn't getting a false result through browser caching a previously working fil…

Gamify TDD

I like it when things that would not normally be associated with games add concepts from games as a way to incentives you to accomplish things. Why simply go for a run if you can have an app that will track you and give you a gold star if you do better than you did the last time? Why go to the coffee shop that only gives you coffee if the other one will give you points that you can redeem for free drinks eventually?

I was recently introduced to CodeSchool, an online training system similar to PluralSight, it has video courses and challenges you can take to prove that you retained what the video taught. CodeSchool also adds badges and tracks to your learning, so as you complete a video and its challenges you get a badge. Complete a collection of courses within a specific discipline and you become a master of that discipline.

Some of these incentives are not tangible and really don't mean much in the real world, but they tend to work for me. If I start working towards a large goal a…