Startups

Burn Out

Disclaimer

I wanted to write this post to share my honest and personal experiences with burn out in the software and startup scene. I’m hoping that my experiences with getting to a stage of burn out can help someone identify if they’re going through the same thing. Hopefully someone will be able to take preventative actions before things get too serious, like I’ve been able to do. I’d also like to point out that I absolutely love my job (you’ll be reminded of that in my post) so my experience might be biased in some ways because of that. If I didn’t love what I do, I’d be finding another job where I did.

What is Burn Out?

In my earlier days at the company I work for, I remember my HR manager talking to me about burning out. It’s not unusual to pull all-nighters to work on something at a startup, and after hearing about this a few times, she mentioned to me that I need to be careful about this. She said I need to be careful that I don’t make a habit of doing things like that all the time or else I’ll “burn out”.

Now I had heard this phrase before, but never really spoke to anyone who had burnt out from too much work. From going to the University of Waterloo for co-op, I had heard about lucrative opportunities for some co-ops going out to The Valley to get jobs where they could work crazy overtime and make a killing. The idea was that on a co-op it was okay because after only four months you wouldn’t “burn out” too badly. Four months of 60-80 hour work weeks would be really intense and draining… But it couldn’t REALLY have that big of an impact on your life, right?

So that was really all I knew about burning out. 60-80 hour work-weeks for an extended period of time would result in burn out. And that meant… What? What did it mean to burn out? All I could think of was that you would become disinterested in your job and not want to work there any longer. You’d start to be tired all the time and resent going to work. You’d be an old cranky person in a potentially younger person body. Yeah, that sounds like it sucks. Is that far-off from what burning out actually is? Maybe not. But is there more to it?

Wikipedia (and yeah I’m referencing Wikipedia… deal with it) defines burning out as:

“a psychological term that refers to long-term exhaustion and diminished interest in work. Burnout has been assumed to result from chronic occupational stress (e.g., work overload)”

And that looks like it chalks up to what my initial definition of burn out used to be. It also mentions this though:

“The symptoms of burnout are similar to those of clinical depression”

So that one is a bit more extreme than the symptoms I had in my mind, previously. If you keep reading the Wikipedia article on burn out, you’ll get some spoilers for what I want to continue to talk about… The point is that burn out is actually pretty serious business and it’s a little bit more than being cranky and not liking your job.

My Early(ier) Startup Days

I had (and still have) my first job out of university at a company that was super small and appeared to have a really exciting future. A blossoming startup. In the really early days things were always moving incredibly fast. We’d turn out feature after feature in our software, triage critical bugs into the wee hours of the morning, ensure any customer we talked to was 100% pleased in every facet of the business, and we’d be doing all of this around the clock. It was exciting, and it still is exciting to be able to take pride in doing all of those things (although, there’s less fixing of critical bugs because… we’re like… perfect… or something). Having a really fast paced environment, a team of people you love to work with, an awesome product, and an incredible mission, it was easy to get sucked right into work.

I was still a 9 o’clocker. I hated (and I still dread) mornings. I’d like to sleep until noon every day if I could. I’d get into the office around 9 and head home at 5:30-6:00ish. It might mean I pick up the odd little thing at home or do a quick investigation into a bug if I heard something in an email, but otherwise those were my core hours. This worked out really well for me when I wanted to pull a really late night to work on something cool because I could still get enough rest to come into work.

I can think back to days (and I’m only talking about a couple of years ago, not like I’m some wise old man, so take that for what it’s worth) where I’d head into the office to triage bugs that we’d consider huge blockers until two or three in the morning. I didn’t have my bosses hounding me to do this, and whether they knew it or not, I didn’t care. I had pride in what we were making so I wanted to be part of ensuring that it was of the highest quality. I’d find myself trying to churn out some extra code on weekends in my spare time when I thought of something cool related to our product or business, or just to get us a little bit more ahead.

Between hitting the gym, hanging with my friends at bars/parties, playing video games, programming my own stuff for fun, or just relaxing at home, I’d find time every now and then to program stuff for work. Again, not because anyone forced me to… but because I wanted to. I wouldn’t let my gym/nutrition schedule slide during our hectic releases, and I know we had co-op students that can recall me popping out of the office for a couple of hours during crazy releases to ensure that was the case. I’ll make sacrifices into my other personal time, but ensuring I can get my gym time in is sacred to how I choose to live my life. I was still keeping in touch with my friends from university even though most of them moved away right after school, and I’d of course always have time for my close high school friends. Weekends were a great time to drive out (aside from having an old crappy car that was always overheating) to visit friends or have them drop in.

Early startup days were exciting and insanely busy. It was hard work but we always made sure we were having fun along the way.

… As Time Went On…

This trend kept up for a while… which was awesome for our company. We’ve received so many accolades for our success and it’s great to share a responsibility in that. We’d hear back from our clients about how we were making a difference in the world, and that was more fuel to keep doing such an amazing job. I knew by then that I loved where I worked and I loved what I was doing. I had received more responsibilities in my job by this point too, so I was not only programming but I became a people manager (which was an entirely new experience for me). There was more (and very different) work being introduced for my day-to-day activities, but it continued to be an exciting journey.

There were fewer late nights to triage bugs because we adapted to have much better systems in place. There were more people that knew different parts of our code base so I could rely on other people to help out. It was reassuring to know the right people were being brought on in our company to help out with all of the different pieces. Even though I felt like I had more work to do, the responsibilities were shared on some of the big pieces that I didn’t want to be entirely responsible for. That was a bit of a relief. The difference was that now I had to know the status of more things, which added pressure.

I started to be a little bit more distant with my friends. I think it’s a natural thing to happen after university (just like it was with high school) where some of your closer friends start to go off in different directions. It’s part of life. You can keep your close friends close, but you always know that you can catch up with your for-life friends even if you’re apart for long periods of time. Okay, let’s not get all emotional on the friend-front. I noticed that I was starting to put off visiting friends for certain work things at this point though. For example, if I had a big release I might skip someone’s birthday because I knew I had a stressful weekend coming up, and of course it didn’t help that we had a milestone with some project that was following right after too. I was trying to find ways to make it up to my friends for missing things because I felt bad about it.

My hobbies started to narrow a bit by this point. I’m still an avid gym goer, and I was during this time frame as well. I was going every single day like I had planned… even during those hectic releases. I was playing video games less because they weren’t really something that was productive. If I noticed I was spending a lot of time on video games, I could often convince myself that there was work to do that would have a positive impact if I could deliver it. Do I need to level up my digital wizard character again in some fantasy land that doesn’t mean anything, or could I knock off another feature from our roadmap? It’s not that hard to change your mind when you like what your building, so the choice would often come down to “what’s more productive”? This is also coming from a person who doesn’t watch TV ever because it doesn’t feel productive, so maybe I’m just weird.

After a couple of years of startup life, I was still loving it. Certain parts of my life were changing (less time for friends and hobbies… more and varied responsibilities at work), but the positives still outweighed the negatives. Besides, it feels really good to be productive.

And Now…

It’s been a few years now, and yes, I still absolutely still love my job, what we make, who I make it with, our customers, and all of the crazy things we go through. If you talk to anyone on my team, they’ll let you know I’m a morning person now. Except that I’m really not. I actually hate waking up early, but rolling out of bed at 7 to get to work for 7:30-7:45 means that I get some extra time in the morning to work. My team would also let you know that I work late too, so if you needed to pop into the office because you forgot something, you could come by my desk and chat with me. My core hours aren’t 9-5 anymore, but they’ve evolved to be about 8 to 6. If I’m not at the office by 8, some of the early risers actually get worried about where I’m at. If I’m out of the office before 6, people will ask me what’s wrong because if I’m leaving “early”, then something must be up. I don’t really take vacation now either. I’ve been bothered (for what I believe to be all of the right reasons) by my HR manager to take more vacation than I do. And yeah, this is the same HR manager that mentioned the burn out thing to me. I don’t really take vacation now because it chews into my work time. Work often carries over into the weekends too. I’m working those Valley hours now trying to get as much productivity as I can in my 24×7 window.

My job responsibilities? They’ve shifted to encompass more things, which feels great. It feels good to put in time and be able to take on more responsibilities. However, with more responsibilities comes more accountability for things (obviously) which can mean pressure build ups when certain things align. For example, instead of being responsible for a single project or deliverable, I might be responsible for two to four of these things. If they happen to line up in a short period of time, it can mean an immense amount of stress. It can also mean that I don’t feel comfortable taking vacation during those heavy periods. Unfortunately, the more prolonged that goes, the more I need vacation and the more I feel like I can’t take it.

My hobbies are really narrow now. I hit the gym every day still. I’m still adamant about this. However, my nutrition has been starting to slack. I enjoy eating healthy, preparing food, and knowing what I’m putting in my body. The latest thing to give way is food preparation  because it takes time, and it’s easy to get food in other ways. I’m not really proud of this or happy with this. Video games? I’ll take a day every now and then and binge on them to blow off some steam. Hobby programming? Not a chance. Blogging? Look at the frequency of my posts as of late to get an idea… It’s trailed off.  My current frame of mind seems to revolve around the idea of “if it’s not work, I probably shouldn’t be doing it”.

My friends? I feel like I only have my closest friends still and my colleagues (and I love my colleagues like family, so that’s not a bad thing). I’ve done a really poor job of keeping in touch with everyone else because I’m not making any time for them. I’ve been doing a pretty bad job of keeping in touch with m y immediate family too. I didn’t even realize it until my parents started pointing it out, which is obviously a problem.

So What’s Going On?

Right now I’d say thing in my life probably aren’t what I would consider great, despite the fact that I’m living to all of the goals that I’ve set for myself. I’ve graduated from university with a degree studying computer engineering. I have a full time job that I love and work hard at. I have a car that I like. I have a condo that I love. Why aren’t things great?

I’ll direct us back to Wikipedia for this interesting little list they have. They’ve actually defined a list of the stages of burning out, and I can speak to a lot of them in the order that they present them:

  • The Compulsion to Prove Oneself: New to the workforce. New to the job. New to the team. I saw great potential in the company, and I wanted to prove that I could be a driver in getting it to where it could be. I needed to prove to someone (myself? I don’t even know) that I could be that driving change. Could it be done without me? I’m sure my team could have gotten to where they are without me because they’re all talented people, and I didn’t bring anything to the table that they couldn’t have made up for. But I wanted people to look back and think that I was a primary driver in all of this.
  • Working Harder: You can likely see it in the transitions I described above. I’m not a morning person, but now I wake up early to get more time for work. I stay up later to get more time in for work. I trade out my hobbies so that I can make time for work. I have tried to find any way I can to increase the amount of work I can get done.
  • Neglecting Their Needs: I’ve probably been in denial on this one for a long time. I try to be as healthy as I can… But I’m neglecting my need to sleep sufficiently. I’m neglecting my need to spend time with friends and family. I often look at my “needs” as biological (good food and exercise) and my ability to keep a roof over my head. I’ve been neglecting the other pieces.
  • Displacement of Conflicts: This is apparently the stage when people first start to realize something is wrong. Is that why I’m writing this post in the first place? Am I only at this early stage of burn out? I feel like I’m showing traits of some of the following steps though.
  • Revision of Values: When reflecting on my current state compared to how I viewed myself at the end of university, I know things have changed. My highest valued trait is my ability to do work. If I don’t work as much or as hard, I value myself less. I’ve certainly become more emotionally blunt as well. Over the past few years, I’ve been referred to as robotic more and more frequently. Other people are noticing this too, so it’t not just me.
  • Denial of Emerging Problems: My personality type tends to ride the line between introvert and extrovert on certain things. I can tell that my ability to be extroverted has become extremely demanding on me mentally/emotionally and that often means that I’d choose to be alone versus with a group of people. The article also states increased amounts of aggression and sarcasm are present. For anyone that knows me well, sarcasm is my middle name… And when I’m irritated, sarcasm becomes my weapon of choice (which is really unfortunate). I also blame all of this on the amount of work that I have and pressure that I believe I’m under. I don’t blame any of this on how I’ve changed my value systems over the past couple years, which isn’t fair.
  • Withdrawal: I’m not quite sure if I’ve totally hit this step, but this really just refers to an increased level of wanting to be removed from social interactions.
  • Obvious Behavioral Changes: I suppose this is for other people to observe. I’ve picked up a few cues that other people are noticing I behave differently. An example is my reduced emotional intelligence and tolerance for certain things I don’t find logical at face value. I generally get irritated by this kind of thing and then turn to sarcasm.
  • Depersonalization: This point was interesting. While I don’t think that I’ve devalued myself or others necessarily, I do think that I view my life as a series of mechanical functions. It’s a rather boring way to look at life, but I’ll admit I look at things as a regular process and I look for ways to optimize my time to get more work done. The amount of work I can get done is how I determine my efficiency, and my life currently revolves around being more efficient.
  • Inner Emptiness: I think I’ve arrived close to this point, personally. As I mentioned above… I’ve set a few personal goals in my life: education, good job, car, and place to live. I feel that I’ve achieved those things, and I’m always working to improve in those areas. I still feel completely empty in terms of achievement though.
  • Depression: Next up? Depression. The great news is that I don’t feel depressed. At all. There’s a history of depression in both my mother’s and father’s sides of the family, so this is a fear of mine. I’m worried about falling into a depression, but I don’t believe I’m there yet. I actually think I’m a long way off from it. I think as far along into burning out that I might be, I can take the necessary steps to avoid getting to a depressed state.
  • Burnout Syndrome: This is the final stage that involves collapsing physically and emotionally. While I do have a feeling of emptiness, I’m still quite physically healthy and I think I have the right frame of mind for how I’m looking at my state of burn out. With that said, I’m quite confident that I’m not at this stage.

I’d encourage you to actually check out the article on this because it’s pretty interesting; especially if you think that you’re on your way to being burn out.

I haven’t been totally oblivious to what’s been happening over time. Here’s my own list of the things I’ve picked up on:

  • My emotional intelligence has been slipping and I’m always thinking in a more logical manner, often neglecting the feelings of others. I’ve had a few instances come up where I’ve said the wrong thing because I wasn’t really offering support for a friend, but instead telling them what I thought based on my more robotic personality.
  • Being around people is draining. I hate to admit this one, but I find spending time around other people is draining. Spending time around people I don’t know for a night might mean that I don’t feel like hanging out with anyone for a week or more.
  • I’m becoming socially challenged. When I need to meet new people, I don’t really know what to say anymore. I don’t have all that much to talk about now. I’d rather just be alone. Sure, I might be a programmer so people expect that my social skills aren’t up to average, but I’m actually noticing that I don’t know how to interact with new people now. It’s scary. You might not observe it if you meet me, which just means I’m doing a really good job of hiding it because that’s how I feel about it.
  • I have one hobby, and it’s lifting weights. Unfortunately, I happened to pick one hobby that not a ton of people find that exciting. I don’t make time for creating music anymore. I don’t hobby program that often. I rarely play video games. I don’t feel like I have time or interest to go pick up anything new.

The Silver Lining

If you’ve made it this far without clicking away, falling asleep, or both, then it probably sounds like a pretty lame post about my life. That’s not the goal of it though, and that’s certainly not how I feel about my situation. I’m actually just trying to understand all that’s going on with regards to going through burn out. With that said, I think there’s a handful of really positive things I’ve picked up on over the past few years with respect to this:

  • I’ve learned how I work most efficiently. I’ve had to work in a variety of scenarios on a variety of different projects. I know that I like working mostly in isolation or if I’m part of a team, then working around just those individuals. I like having distractions of my other responsibilities removed (which for my career, is often tricky given that I interface with many different people). I know that I like having some music going and being able to crank out code without interruption. I like to stay well caffeinated, and I like working in the evening more than I like working in the morning. I’m a typical programmer.
  • I’ve learned that I love working with the people at my office. Call it corny, but I have my work family, and I love to work with them. They have a high level of trust in me, and I’m able to trust them. It’s a great dynamic and I’m glad I’ve had the opportunity to work with so many great people.
  • I know that given enough time, I can work through most problems no matter how difficult they seem. I’ve had to come up with some really unique solutions to problems I originally thought near impossible.
  • I consider myself the hardest working individual that I know. I pride myself in this, but… perhaps that’s the whole problem here 🙂

What’s Next?

That’s the big question here. I’ve identified that I’m well on my way to burning out… So what’s next for me? If you’re going through something similar… What’s next for you?

  • Spend more time with friends. Hands down. Number one priority. I’m going to start making more time for friends.  If they’re out of town, I’m going to start offering to drive out to visit them more often if they don’t feel like making the journey here. Same goes for family. I’m getting regular Skype sessions set up with my family so we can stay in touch between visits. Friends and family are one of my needs that I’m neglecting, and I’m going to remedy that first.
  • Vacation. I used to believe I lived the work-hard-play-hard lifestyle, but it’s just the work hard lifestyle now. It’s time to take some vacation and acknowledge that I need it in order to actually stay sharp and operate at the best of my ability. Taking vacations and having time for yourself (and/or your friends/family) is hugely beneficial. Just because it doesn’t let me turn out more lines of code doesn’t mean it’s a bad thing.
  • Tell my HR manager she’s been right for a long time. And this will be my first step in seeking some external help. The first step is admitting the problem… and the next step is getting help for it 🙂

I’m keeping my list of goals pretty short for now. I need to start making changes in how I operate and then reassess how these changes are affecting my life. I’m expecting positive changes, but I’m not sure how fast.

If you think you’re on the way to potentially burning out, I think the most important thing you can do is be aware of it. I still don’t believe there’s anything wrong with working hard and pouring your heart into something you love doing. But like anything, the more time you dedicate to something and take away time from other places, you’ll find that it starts to change the person that you are. Pay attention to it. Be aware of it. It’s all that you can do to prevent yourself from getting to a state where you feel like it’s too late for you to make a change.

It’s never too late for you to work your way back from burning out.


There’s Nothing Wrong With Failing

Fail!

Failure to Communicate

So this post will be pretty short, but I wanted to quickly touch on a workplace experience that happened the other day. I was approached by a colleague (who’s perspective I really value) about the way some of us on the team were discussing a series of events. This individual was really concerned that we kept calling it a failure, and in this person’s mind, we hadn’t truly failed at anything. We had done an experiment in terms of tackling a development problem and the team had reached a critical mass where we declared “enough is enough, this is a failure”. I became concerned because I wanted to make sure this person and I were on the same page.

I couldn’t totally wrap my ahead around why this person was so concerned about calling it a failure. In my opinion, all the evidence was there to call it a failure! But I guess that was just a failure on my part to communicate properly. I think that there was a work culture gap where this person was viewing our declaration of a failure as something really negative, whereas a lot of us were really just marking it as a point of realization to not continue along with something. All of the reasons this person offered up for why our experiment was not a failure were true. We hadn’t missed a deadline to ship and we had a plan for how to work around it. That sounds like success, right?

I guess the communication breakdown was really this: There’s nothing wrong with failing. We tried something and we’ve identified that it’s not working. That’s a failure. What makes us successful? Being able to identify our failures, learn from them, and improve going forward. And that’s exactly what we’re doing. Acknowledging a failure and planning how we can be better next time around.

So with that said… You should be failing when you push the boundaries. Just make sure you learn from your failures.


Hack The North

Hack The North

Hack The North… What The Hack Is That?

Hack The North is Canada’s largest international hackathon. It’s big. It’s bad. It’s awesome. Okay, but what does that even mean?

The idea is that 1000 people get together from all over the world in an event where they’re given 36 hours to create amazing technology hacks. There’s a lack of sleep but no lack of amazing ideas and hacked together proof of concepts that show incredible innovation. Sponsors are present to hand out prizes for best usage of their product or API to competitors as well as mentor them and provide help with problem solving. This year, Hack The North was hosted at The University of Waterloo.

Bro, Do You Even Hack?!

This was my first time ever at a hackathon. I’ve participated in the Ontario Engineering Competition (OEC) which is much smaller scale event with a similar structure–A bunch of students get together and have to come up with a design to solve a problem. I even ran OEC in 2010 with some schoolmates (you might know them at Thalmic Labs) which was a blast. However, this weekend I was sitting on the other side of the table.

I got to hang out with a group of my colleagues at Hack The North at the Magnet Forensics booth. We had a great time representing our company and meeting tons of incredible students from all over the world. We provided assistance where we could with some of the challenges that students were facing, and spoke to them about the important role that our software plays in the life of a forensic examiner/investigator.

What’d You See There?

When I first showed up at Hack The North, it was around 9:00 on Friday night. I got there just in time for the opening ceremonies, which I thought were great. They had live Q&A with a former Facebook employee who has “made it” in the software industry and intros from some of the major sponsors at the event.

Hack The North - Opening Ceremonies

Everyone getting settled for the opening ceremonies at Hack The North.

From that point on, I spent the rest of the time hanging around the Magnet booth… But that doesn’t mean I didn’t see anything awesome. We had people from all over the place coming by to talk to us and pick up some Magnet swag. We handed out an incredible amount of stress balls and couldn’t seem to keep a sufficient supply of them coming. We had our stickers showing up on everything from fuzzy viking hats to laptops to shirts to megaphones. You name it, our stickers made it onto it.

Hack The North - Magnet Viking

Akshay Joshi decorated his hat with Magnet stickers!

Hack The North - Magnet Megaphone

One of the Hack The North organizers was sporting a Magnet sticker on his megaphone.

On the last day of Hack The North, we had participants coming up to our booth to demonstrate some of their awesome hacks. We got to see how Thalmic’s Myo was being incorporated or how other vendors’ APIs were being leveraged to do some really awesome things. We were really impressed with some of the things we saw.

What’s Next?

I think even after the first night of being at Hack The North I was trying to think of what we could do next time or if we even wanted to come back… The answer to the latter was quickly an “absolutely yes!”, so I’m pretty confident we’ll be making an appearance at Hack The North again. There were so many great people at this even that we spoke with that it would be silly not to go back.

I think next year we’d like to participate even more. We learned a lot about the different ways that we could get involved, so things like speaking sessions or workshops would be awesome to get people involved with. We’ll definitely have more stress balls and unique giveaways to please the masses!

Thanks to everyone who made it out to Hack The North. Stay in touch with us! We’d love to hear more from you.

Hack The North - Kelly and Nick

Kelly and I with our #Truth T-shirts and other Magnet gear on at our booth!


Happy St. Patty’s Day – Weekly Article Dump

Happy St. Patty's Day - Weekly Article Dump (Image by http://www.sxc.hu/)

Happy St. Patty’s Day!

I hope everyone who was celebrating St. Patrick’s Day was able to not only have fun but stay safe doing so. Of course, when there is drinking associated with a holiday it can be easy to get carried away. It’s always a great idea to have driving arrangements or the option to sleep at a friend’s place set up before you head out to celebrate.

This year I was able to celebrate with a handful of my university friends that I don’t get to see as often as I’d like. I haven’t been drinking much at all now for nearly half a year, so I stuck to my one Irish coffee to meet my liquor allowance. We all had a blast discussing where our lives have taken us so far, and it’s great to see everyone doing so well. I was excited to hear that more people are hoping to relocate into or closer to Waterloo!

Happy (belated) St. Patty’s Day everyone, and I hope the recovery has gone smoothly today.

Articles

  • Empower Your Visionaries: Steve Faktor talks to us about who the visionaries are in your company and why you should be empowering them. Steve says that the visionaries within our organizations are frustrated by bureaucracy and will often leave to go start their own Next-Big-Thing. So what should we be doing with them? What can we do with them? Well… challenge them! Challenge them to make their radical ideas a reality. Extend the boundaries you’ve placed on them so that they can try to make their vision a reality and make them feel comfortable with the possibility of failure. Wouldn’t it be great if they’re next big thing was the next big thing for your organization?
  • Don’t Forget Me! Ensuring Distributed Team Members Aren’t Left Out: In this article, Gary Swart touches on how to make sure remote employees are kept engaged. Working remotely can be difficult not only for the person offsite, but for the people that are supposed to interface with the person offsite. Timezone differences, cultural differences (i.e. different holidays, for example), and the fact that you can’t interact in person are all things that make remote team members a lot trickier to work with. Gary suggests using the ICE (Identify, Clarify, and Extend) principle, which he outlines in his post. He also suggests using things like video conferencing so that you can pick up more on body language when you’re meeting remotely and even ensuring that you try to keep your technology homogeneous so that information can be shared easily.
  • Inspire Creativity at Work With All 5 of Your Senses: A good friend of mine shared this with me the other day, and I thought it was worth passing along. Many people don’t pay attention to it, but if you work a traditional office job, you spend a lot of time in the office. Even if you can get a little boost from your environment, it can potentially go a long way over time. This mashable is an infographic about how different colors and ambience in the office can be used to enhance (or restrict) different aspects of your thinking and interaction. If your work environment isn’t playing into your senses, you may be missing out on a positive effect!
  • Great leaders aren’t afraid to take risks: According to Alex Malley, risk taking is a very important part of leadership. He has a handful of suggestions for gearing yourself up for taking risks in your leadership role such as separating the personal aspect of failure from your role. If you’ve set yourself up with talented people, you have open communication with your manager, and you’re prepared for the “worst case”, then you should feel more comfortable taking risks.
  • The complete guide to listening to music at work: I’ve personally given up on listening to music at work during core hours due to the nature of my role (I’ve been told this is “humblebragging“, but realistically I’m just making myself more approachable). However, when I’m cranking through some development work on my own and I know I’m not going to be approached by anyone, I love to turn up some tunes. I thought Adam Pasick had a pretty cool write up about the different aspects of listening to music at work. Essentially, different styles of music may be better for different tasks at work.  I think it’s worth a read if one of the first things you do when you get into the office is strap on your headphones!

Thanks for reading! Follow Dev Leader on social media outlets to get these updates through the week.


Snow Tubing with Team Magnet – Weekly Article Dump

Snow Tubing with Team Magnet - Weekly Article Dump

Snow Tubing

First off… If you haven’t ever gone snow tubing, get off your computer and get to your nearest snow tubing park.

Now that you’re back from that, we’re all on the same page. Friday was another one of Magnet Forensics‘ staff events and we were fortunate enough to go tubing at Chicopee Tube Park. I hadn’t been snow tubing before–only water tubing–and I haven’t even been on a ski hill or anything for years. To be honest, snow tubing to me seemed like a bit of a glorified crazy-carpet experience which would be fun, but get boring after a couple of runs.

I’ll be the first to admit I was dead wrong. Snow tubing was probably the most awesome way for the entire Magnet family to cut loose this quarter. Most people either love or hate the snow, so finding a big group activity for a company to participate in outside in the Canadian winter can be tricky. Snow tubing was perfect though. It wasn’t too intense that people had to shy away from it and it was exciting enough to keep us entertained for the few hours we were there.

Kelly, you did a great job coordinating the staff event! It was great to see everyone come out and have a blast. Thanks for being awesome, Team Magnet.

Articles

  • The Difference Between Managers and Leaders: In this article by Ilya Pozin, he touches on some of the differences between managing and leading. In my opinion, there’s often the idea that managing people is terrible and leading people is the best thing you can ever do. I get that kind of vibe from this article, so I wanted to point it out right at the beginning. I think that a good way to look at it is like this: Being a manager does not make you a leader, but being a good leader sets you up to be a great manager. Leading and managing are different things, and the better you get at leading the better you can become at managing. With that said, I think the article touches on a lot of great leadership points.
  • 5 Ways to Finish What You Start (and Why You Often Don’t)Susan Perry writes about something that a lot of us likely experience pretty regularly. You pick up something new only to end up abandoning it not too much later. Starting a new project or hobby is exciting and it can be really easy to dive head first into something for this very reason. However, if you find that you always start things and never finish them, it might be worth paying attention to some of Susan’s suggestions.
  • 15 Benefits Of Being An Intelligent Misfit: Isaiah Hankel talks to us about what an “intelligent misfit” is in this article. The idea is that swarm thinking is more about just reacting to things, and that’s not overly beneficial. By being unique and standing out, you actually attract others that are unique like yourself with shared interests. As a result, you end up building a network of people that are truly like you instead of conforming to a group. Isaiah goes on to list 15 benefits to standing out in his article and it’s certainly worth the read.
  • Build the perfect teamPeter Mitchell talks about what ingredients you need to build your perfect team. Establishing a common culture and attitude are things that are definitely among the top. Creating clear goals and objectives for your team will also help pave the way for success. One of the most important parts of creating a team is coming up with complementary skill sets. This can be difficult because you want to create a team with people that think alike but have different skills–and often this is hard for people to separate.
  • Fire, Being Tired.: John Hope Bryant gives us a different perspective on what it means to be tired. He says that it’s not just about lacking energy to do something or not getting enough sleep. Being tired is more about losing interest in something. Why? Well even when you’re run down or low on sleep the things that you’re truly interested in can get you excited. John’s suggestion is stick to things that truly interest you–be honest with yourself. Don’t stay in a job where you’re watching the clock for the end of the day. Find your drive and your motivation.

Follow Dev Leader on social media outlets to get these updates through the week. Thanks!


Recognition: One of Team Magnet’s Masterminds

Recognition: One of Team Magnet's Masterminds (Image by http://www.sxc.hu/)

Background

At Magnet Forensics, I lead an awesome team of people with the mission of creating forensics software to help investigators around the world solve crimes. We’re stacked with incredible people–and not only on the team I’m on, but company-wide. We do a great job of recognizing our achievements as an organization and as a team, but also on an individual level. If someone has gone above and beyond, we don’t keep that a secret.

I’ve been trying to make more of a conscious effort to recognize the people I work with, especially in ways that are unique to my own style. I think recognizing people in person is important, but you also need to consider your setting. Sometimes recognition in a public forum isn’t actually appreciated or isn’t nearly as effective as appreciating in a one-on-one setting. I find even for myself that I get uncomfortable when being recognized in a public setting.

With that said, I wanted to recognize an individual I work with without shining too much of a spotlight directly her. Thank you, Christine, for all of your hard work.

Broken Retrospectives

At Magnet, we try to adhere to some agile philosophies.  It lets us pivot pretty quickly to customer needs–which keeps them quite happy–and still lets us deliver rock solid software. We develop in short cycles called “sprints” and at the end of every sprint we have a retrospective to look back at what worked well and what didn’t. That way in the next sprint we can make improvements. Keep the good stuff, drop the broken stuff and try out a thing or two that’s new. This is excellent for continuous improvement unless…

They don’t work.

We would run our retrospectives religiously, but it seemed like nobody really wanted to be there. It was a seemingly forced meeting where I felt a lot of the time I was trying to stir up conversation. By the end of the meeting, just about everyone would have chimed in, but there weren’t a lot of ideas being generated. It was long, boring, and didn’t accomplish any of the goals we wanted it to. Thus, our development cycles stayed basically the same for a while. They worked and they didn’t appear to be broken enough that people wanted to see change.

Things remained the same until I received some input from Christine. When Christine read an article on LinkedIn called I Like, I Wish, I Wonder, she thought it might have some positive carry-over to our development process. If Christine thought that it might spark a change in our retrospectives, that was more change than I was hearing from the team in general (including myself, to be fair). So I decided we’d give it a shot.

Annnd we haven’t looked back since.

I won’t go too in-depth on how I Like, I Wish, I Wonder has rocked our retrospective world because I want to save that for a separate write-up. The point is that it did, and it’s all thanks to Christine for digging it up for us. We’ve started to completely overhaul different aspects of our development process now that retrospectives are effective. I really started to realize just how big of an impact it had when I was explaining some of the development process changes to our CEO. I remember thinking “Wow… If we wouldn’t have switched our retrospective process, we’d be nowhere near as efficient”.

So, thank you for the retrospective idea, Christine. For anyone else looking to flip retrospectives around, try out the I Like, I Wish, I Wonder scheme.

Personalities

I can imagine a lot of people in the development world don’t think too much about personalities. I know I didn’t. Sure, everyone is different. Everyone has their own effective ways of communicating, things they like, things they don’t like, and optimal situations for working. I get it. Now let me go do my work and you go do your work. In an ideal world, you just assume everyone can figure out everyone else that they’re working with, and things will just be fine. Except things are never ideal, and it never hurts to put in a bit more effort to make sure you can get your team up to speed.

So we tried something out. I worked with my HR manager (read: communicated a potential scenario for our development team, let her run free with her awesome creative ideas, and then helped her where she needed it) to roll out a Myers-Briggs personality test for a small sub-team of our development team. If you aren’t familiar with the tests or the concept, check out the link and read up on it! We figured it would be best to try this kind of thing out on a small part of the team to see if they would find value in it, and if so, we’d try the whole team.

After we rolled out the Myers-Briggs results with the small team, the benefits were immediately noticeable. We didn’t even have to leave the room before seeing the benefits. We knew there was some potential here, so we were already excited to try it out with the rest of the team. With everyone being aware of how other individuals may act and react when communicating and working, it makes a big difference in how particular scenarios are approached.

Thank you, Christine, for making differences in personality something to be cognizant of and then supporting our roll-out of Myers-Briggs. For anyone reading this that manages a team or is part of one… Consider the personality types of the people you work with. Maybe you don’t need a formalized Myers-Briggs plan, but it’s worth raising awareness of it.

Thank You, Christine

Christine, you’ve made a lot of great contributions to the team and I’d like to thank you for them. Our development processes have been able to greatly improve thanks to your initial suggestion. I’m sure we would have adapted over time, but your suggested tweaks have certainly acted as a catalyst. Your furthered support with the personality type analysis and subsequent rollout was also greatly appreciated. You were able to participate in our mini-experiment and offered great feedback to turn it into a success for the entire team.

Thank you. I’m looking forward to what this year will bring!


Swamped But Ready To Push Forward

Swamped But Ready To Push Forward (Image by http://www.sxc.hu/)

Mini Update

Just thought I’d get a quick one out there to say I’m still here. To be honest, I haven’t kept up to speed with my weekly updates or even sharing articles on social media like I try to do on a regular basis. But that’s just how life has been the past few weeks, and there’s no sense beating myself up over it. Time to acknowledge it, and time to push forward.

Work has kept me swamped with things to do. I’ve been busier than normal the past few weeks and it’s largely due to things going on at work. But I’m not complaining. I actually prefer times at work when I feel nearly overwhelmed. The added pressure (whether artificially inflated by my own doing or not) really helps me buckle down and become productive. It’s a great feeling to be able to reflect on a week’s worth of work and know that a lot got done. It’s even better to see the culmination of your work after several months and how far it’s come. If work weren’t enjoyable, I’m sure I’d have a completely different take on this one!

I’ve noticed that my post on creating a tabbed Android user interface has still kept up with a ton of traffic. I’m actually getting some private requests for help outside of public forums regarding this post, and I’ve been falling a bit behind on those too. It’s great to see people are actually benefiting from this blog post though!

What I’ve Been Doing

Not blogging. But you already knew that!

Well I mentioned work has been pretty busy. Magnet Forensics has launched another update to Internet Evidence Finder, so we’re now on version 6.3 of the product. Even though our process for launching a new release has come a long way, there’s still a ton of extra work and stress that comes with any release. Any potential bug that shows its face has to be closely considered for whether or not it should block the software from being released. Any odd behaviour with the application needs to be acknowledged and documented if it won’t be fixed for the release–So if customers contact us, our tech support can easily guide them through workarounds. Of course while that’s happening, the development team is already hashing out how to solve it for the next release.

There’s a lot involved for a release. It’s hectic but it’s exciting. Reflecting on everything that went into the latest release of our software, I’m still amazed. Every time we put out a new version we always make the previous release seem like it was a minor update. I’m extremely proud of the development team at Magnet for being able to rally and put together an awesome product, and of everyone at Magnet for being able to have an awesome version launch.

Thanks Team Magnet!

What’s Around The Corner

So I had actually started on a few things–I swear. I just didn’t get around to finishing them:

  • I have a recognition blog post I want to rework and get put out. This one is long overdue, but it’s near completion.
  • Two assorted leadership/startup-esque blog posts are in the works. These ones still need a ton of work.
  • My leadership blueprint blog post! I mentioned a while back now that I wanted to do a post on this, but I haven’t started yet. I’m really looking forward to this one.
  • Actually posting and sharing on social media again. Sorry!
  • Weekly article dumps. Again, once I start sharing, I can get back on track with these!

There’s a whole lot on the way!


Be a Better Programmer – Weekly Article Dump

Be a Better Programmer - Weekly Article Dump (Image by http://www.sxc.hu/)

Be a Better Programmer

It’s a new year and that means it’s all about resolutions, right? Well, I’m not a huge fan of keeping around a resolution that needs to wait for a new year, but I am a fan of reflecting on your goals and your skills. If you’re a programmer like me, then maybe this will be a great starting point. In my weekly article dumps I usually would just provide a couple of comments on a link like this, but I felt I should dive in a little bit more. You can find the original article by Amy Jollymore over here. Please have a look! I shared it with the whole dev team at Magnet Forensics because I felt there was a little bit of something for everyone.

Number one on this list, and perhaps the one I’d personally like to focus on more out of this list, is checking your code before blaming others. Blaming other people–in general, not just programming–is an easy way out. When a problem occurs, it’s simple to assume that all of your work is right and that it must be someone else’s fault. But if everyone starts thinking like this, it turns into a nasty blame war. So next time the build breaks or your shiny new feature stops working as expected, don’t go blaming other people. Investigate what the problem is. See what your most recent changes were and if they could have caused the problem. As you start to gain confidence that your changes aren’t responsible for the issue, try sitting down with one or two other people you think might have been around the problem area recently–But don’t go accusing them! Putting your heads together to figure out the problem can speed up the process and might even shed some light on some miscommunication over a design or some assumptions in the code that don’t actually hold true. It’s a lot more embarrassing to blame someone when it’s actually your fault compared to putting in the effort and admitting you might have goofed up. Try it out!

Number two is also a great item. You should never put an end to your learning… especially as an individual in a technology space. There are so many great suggestions listed for this point that there’s no point in me repeating them. Just go read them! An interesting point worth mentioning is using podcasts for learning. This is a great option if you find you’re brain is still spinning when you lay down in bed or if you have a long commute to work (or something else you’re involved in). The author also mentions that you don’t need to be learning programming… What about domain expertise? If you’re writing code for banks, lawyers, or digital forensics… Why  not learn about that too?!

The last point I’ll touch on from the article is number three: don’t be afraid to break things. I love this point. If you’re working on a big piece of software, there are almost certainly areas that seem brittle, scary, or just plain incomprehensible. If your project is still small, it very well get to this point. It doesn’t mean that the code is bad or that you’re working with the worst programmers… It’s just something that happens when you’re continuously trying to build on your software. The real problem occurs when nobody is willing to take the time to go change things. If you have big scary brittle parts of code, then set aside some time, take a deep breath, and go refactor it! It might seem like hell at first, but once you get into it (and especially after it’s done) you’ll feel a million times better. Plus, now your code can continue to be built upon without people running in fear when you mention that section of code. Code can get nasty, but consider using a “tech debt” system or regularly set aside time for refactoring parts of your code base.

Again, the original article is located at: 7 Ways to be a Better Programmer in 2014. Check it out!

Articles

  • How to Manage Dynamic Tensions — and Master the Balancing Act: This was an interesting article on some parts of leadership that often oppose each other. Author Chris Cancialosi does an excellent job in discussing balance between internal and external influences as well as leading and managing. A good take away from this article is at least acknowledging that there are certainly some things to balance. You may want to have the most flexible team, but have you considered if there’s a “too flexible”? Just a bit of perspective that this article might bring to light.
  • A Crash Course In Leadership For 20-Something CEOs: Barry Salzberg‘s article is geared toward young CEOs, but I think that means we can apply the lessons to anyone looking to lead! A few of the points I’d like to mention include being tough on problems and not on people. Your people are the one’s who are going to solve problems and bring great ideas to the table. They’ll invest their time into your organization in order to accomplish great things–so don’t be hard on them. Instead, acknowledge that your problems and challenges are the things you want to crush, and work with your team to make sure you conquer every challenge that gets in the way of your goal. Another point is on taking risks. Never taking risks is a great way to stagnate. You need to learn from your failures, but keep pushing the boundaries. Finally, be ready to adapt. As your organization grows or as the market you’re working within evolves, you need to be ready to adapt and change. You might get lucky and things don’t change all that much over a long period of time, but the odds of that are pretty low. Be ready to adapt so when the time comes, you don’t need to worry about everything falling apart.
  • Leading at Scale with Agility: Brad Smith has a few great points on what leading a team should encompass. First, a team should have a goal that it is trying to achieve. If that team is part of a larger organization, the team’s goal should align with the goal of the entire organization. Secondly, decisions for the team should involve those on the team. It’s easy to sit back and speculate what might be best, but why not involve the people directly affected? Of course, this is more difficult for large teams but maybe that’s an indication your teams would be more effective if they were smaller. Next, empower teams to arrive at solutions on their own. If a plan worked out well, try communicating it to others to try out. Conversely, if the plan had some problems, let others on the team (or other teams) know about the hurdles. Finally, Brad has a point on trust. Trust is arguably one of the most important parts of leading a team. Each team member needs to be able to trust the others. There should be an easy assumption that everyone is operating with best intentions.
  • For Leaders, Today is History: In this article by Steven Thompson, he gives a high-level overview of his focus. Specifically, he focuses on the future and not right now. Steven says the teams he is in charge of are often looking at the problems of “right now” and perhaps a little bit in the future. It would be counter productive for him to try and butt-in to try helping with those problems because he’s so far removed from them. Instead, those individuals have been empowered to focus on those problems. Instead, Steven focuses on the future–the direction of the teams. As a leader, it’s important to try and be thinking at least one step ahead.
  • What If You Had to Write a “User Manual” About Your Leadership Style?: After I read Adam Bryant‘s article, I thought the idea of a leadership “user manual” would be pretty cool. Even if there isn’t a single other individual who would benefit from it, at least it would help reveal to myself some of my leadership quirks. That’s useful on it’s own! I’ll be sure to post up my leadership “user manual” when I have it complete… and I imagine I’ll have to keep updating it over time as my style evolves. It’ll be really interesting to see the evolution of my leadership style! Why not consider doing one for yourself?
  • What Bosses Should Never Ask Employees to Do: Jeff Haden‘s article was a little bit controversial in my opinion–and in the opinion of some of the commenters. I think I get the underlying message behind a lot of what Jeff is saying for each of his points, but as one commenter said, it sounds like a bit of a personal complaint the whole way through. Consider the topic of donating to charities at work. The feel I get after reading that segment is that your organization should not attempt to do fundraising through employees. While I don’t actually think that’s what Jeff is saying, that’s how I feel after reading it. I know that we’ve been able to do several charity events at Magnet, and we’ve always said that they are completely voluntary. I think that’s the crucial part. It’s the holiday season and your budget is a bit tight? How could anyone get mad at you for backing out of a completely optional charity donation? Busy with some personal matters or want to focus on finishing up something at work the day we’re doing a charity event? No big deal, it’s optional. Anyway, the point is that perhaps based on the wording in the article, I felt like some of the messaging will be misinterpreted. I think there are some good points buried in there. Check it out and let me know if you agree or not!

Follow Dev Leader on social media outlets to get these updates through the week. Thanks!


Charity Water – Weekly Article Dump

My 24th Birthday Wish - Charity: Water

Charity Water

We have a lot of pretty awesome people at Magnet Forensics, and every day I’m reminded just how awesome. A colleague of mine, Danielle Braun, had what I thought was an incredible idea for her birthday. For Danielle’s birthday, she’s not asking for more new clothes, for her parents to get her a car, for help with paying off tuition, or for some new fancy tech gadgets. But she’s not asking for nothing. Danielle is asking for your support with Charity: Water this year.

Charity: Water is a non-profit organization with the goal of bringing clean water to people in developing nations that don’t have access to it. Reading their mission page probably opens your eyes a fair bit about the lack of access to drinking water in other countries. They’re not about some complex and elaborate plan to revolutionize access to clean drinking water. However, they do have a simple and straight forward approach. Donate a little bit of money and they can install wells, rain catchments, and filters in areas without access to clean water. Your small contribution can make a huge impact on other peoples’ lives.

Please consider helping Danielle out with her goal of raising money for clean drinking water. A little bit goes a long way with Charity: Water.

Articles

  • Guest Post: 7 Deadly Sins: How to Successfully “Cross The Chasm” By Avoiding These Mistakes: In Geoffrey Moore’s article, we get to revisit some of the great learnings in Crossing the Chasm. If you haven’t read the book, although it’s a bit old now, it’s still a solid read. This post was a great reminder of a lot of the things the book talks about. It’s important to know where your business sits in the chasm model so that you know what you should be focusing on. Too many companies focus on the right things at the wrong times and have terrible missteps. Check it out (and the original book too)!
  • Holiday Gifts EVERY Employee Secretly Wants: Dharmesh Shah is a guy who always seems to have an awesome perspective to share. There are a few things that despite someone’s level of performance, length of employment, or amount of skill should be deserved.  Often these are overlooked either by grumpy managers or because perhaps the person may not have been a top performer. In Dharmesh’s opinion, that shouldn’t be a factor. The holidays are a perfect time to remind ourselves to recognize all of our employees’ accomplishments and treat them with respect. If you aren’t already, maybe this article is the little wake-up call you need.
  • 6 Things Really Thoughtful Leaders Do: Nothing groundbreaking here, but like the article says, this time of year is great for reflecting. Do you consider yourself a thoughtful leader? Do you observe the people around you, how they interact, and how things are flowing at work? Do you take the time to reflect on things you’ve done, how you’ve acted, or even how employees may have improved in areas you’ve discussed with them? There’s a handful of great reminders in this article that I would suggest you check out!
  • 14 Code Refactoring smells you can easily sense and What you can do about it?:  This week’s first programming article! Except… Well… This one is about the management side of programming. How do you know if your software team’s code is in a real stinky spot? This doesn’t necessarily mean your developers write bad code. It could just mean that you need to hit the brakes a bit and go revisit some problem areas in the code. This article talks about some of the warning signs.
  • What Makes A Good Manager? 7 Things To Ask Before You Promote: Does it make sense to give anyone you’re promoting a management position? Probably not. Seems obvious when you ask it like that, right? The unfortunate truth is that a lot of companies take the simple path and for anyone they want to promote, they throw a management position their way. Some people just don’t make great managers. This article talks about the qualities you want to look for in managers. Maybe the person you’re looking to promote won’t make a good manager *now*, but if it’s something they can put time and effort into building the skills and experience towards, it could still happen.
  • 10 Major Causes for Failure in Leadership: While lists of things to do are always nice, having a list of things to definitely not do is also helpful. Here’s one of them. Some of the leadership-don’ts I liked on this list were being too good to serve your followers, using your “authority”, and fear of competition. I think those are a few that are easy for people to forget, and there at the top of my list of leadership-don’ts. Read some more great points in the article!

Please take some time to help Danielle out with her goal. Any contribution helps. Remember to follow Dev Leader on social media outlets to get these updates through the week. Thanks!

Nick Cosentino – LinkedIn
Nick Cosentino – Twitter
Dev Leader – Facebook
Dev Leader – Google+
Nick’s CodeProject Articles


Movember Wrap-up – Weekly Article Dump

Movember Wrap-up - Weekly Article Dump

Movember Wrap-up

At the start of December, it’s time for a lot of us to shave off our glorious Movember badges from our upper lips. This year, MoMagnets did an absolutely amazing job raising money for Movember. At the time of writing, we’re sitting at just under $2400! An incredible effort by Magnet Forensics and all of those that helped with their generous contributions.

My ‘stache didn’t quite get to where I wanted to this year. It was close, but it was another connector-less Movember for me. I was almost able to get some twisting done for some not-so-legitimate connectors. Oh well… Here’s what I ended up rocking for most of the month:

Movember Wrap-up - Nick's Final 'Stache

My final Movember creation: The Anti-Connector.

Matt Chang definitely took the lead for raising the most of all the MoMagnets members at over $700! Mica Sadler is sitting in second at just under $400. That’s nearly half the team’s total between these two beauties. We also had a very gracious contribution from our CEO that I wanted to call out. Thanks so much, Adam!

There’s still a bit of time left before donations are closed for the 2013 Movember season. We have until the 9th to get some final contributions in! If you’re feeling generous, please visit our team page and make a contribution. Every little bit helps, and we greatly appreciate it!

Articles

  • Top 5 Reasons People Love Their Jobs and How You Can Love Yours, Too: Some great points on why people love their jobs. Some of these may be pretty obvious, but it’s important to be reminded about what keeps people engaged. Among the top things: the work culture, the amazing people you get to work with, and autonomy. If you’re trying to create an awesome place to work (or if you’re looking for an awesome place to work) then these are probably things you’ll want to focus on!
  • 5 Things Zapping Your Company’s Productivity: Ilya Pozin always has some interesting articles. This article takes the perspective that some of the fancy perks or awesome processes you have in place may actually be hindering productivity. One common theme that was brought up under two separate points in this article is that sometimes people need a spot where they can work in peace. People like having an fun collaborative culture, but many personality types require some quiet time in order to buckle down.
  • Reduce Your Stress in 2 Minutes a Day: I’m not the type of person that truly believes doing one tiny thing for only a moment every day is going to have an enormous positive impact on your life. However, I do think that if you can take the time to try and do a few little things here and there, that overtime, you’re likely to have more a positive outlook. In this article, Greg McKeown shares a few tips on relaxing and trying to regain some focus. I don’t think it’s anything that’s going to be life-changing, but it never hurts to think about different ways to catch your breath.
  • Building a fast-failure-friendly firm: This was a pretty cool series of slides put together by Eric Tachibana that I thought was worth sharing. There are lot’s of articles on failing and why it’s important–especially for innovating. This series of slides provides a high level perspective on how you can approach failing… the right way!
  • Code Smells – Issue Number 3: This is an article I wrote about Code Smells. This entry talks about the use of exception handlers to guide logical flow in your code and alternatives for when your class hierarchy starts to get too many very light weight classes. As always, I’d love to get your feedback. If you have other code smells, or a different perspective on the ones that I’ve posted, please share them in the comments!
  • 5 Bad Thoughts That Will Throw You Off Track: This short little list is worth a quick read through. There are a ton of things that distract us every day, but the distractions you can easily control are the ones that you cause. Examples? Don’t take on too much at once. Don’t try to make every little thing you do perfect. It’s a quick read, but well worth the reminder!
  • Not Crying Over Old Code: Another programming article for this week. As the article says, the common meme for programming is that your old code is always bad code. However, there should be a point in your programming career where old code isn’t bad, it’s just different than how you might have approached it now. If your always experiencing your old code being bad, then maybe you’re not actually that great at programming yet! Or… maybe you’re just too damn picky.
  • Things I Wish Someone Had Told Me When I Was Learning How to Code: This article by Cecily Carver is something I’ve been hoping to come across for a while now. It’s another programming article–a good read for experienced programmers but incredibly important for newbies to check out. Cecily covers some of the roadblocks you experience early on, like code never (almost never) working the first time, or things you experience throughout your programming career, like always being told of a “better” alternative. I highly recommend you read through this if you dabble in programming, or if you’ve ever considered it.

Please visit our team page for MoMagnets and make a Movember contribution if you’re able to! Remember to follow Dev Leader on social media outlets to get these updates through the week. Thanks!

Nick Cosentino – LinkedIn
Nick Cosentino – Twitter
Dev Leader – Facebook
Dev Leader – Google+
Nick’s CodeProject Articles


  • Nick Cosentino

    Nick Cosentino

    I work as a team lead of software engineering at Magnet Forensics (http://www.magnetforensics.com). I'm into powerlifting, bodybuilding, and blogging about leadership/development topics over at http://www.devleader.ca.

    Verified Services

    View Full Profile →

  • Copyright © 1996-2010 Dev Leader. All rights reserved.
    Jarrah theme by Templates Next | Powered by WordPress