10 Pluralsight Courses–A Milestone

I just had my 10th Pluralsight course released; Building .NET Console Applications in C# teaches how to create well-designed, fully-featured .NET Console applications.

When I hit 7 courses I wrote Three Things I’ve Learned Being a Pluralsight Course Author and those learnings still stand but there’s three other things that I think I also appreciate more now.

1 Continuous Improvement

As the saying goes: practice really does make perfect; though aiming for “perfection” is probably not a path to happiness. To paraphrase Mother Teresa: don’t try to do great things in this life, just do small things with great love.

We did not weave the web of life, we are merely strands in it

Continuous improvement doesn’t just apply to code, it applies to ourselves as a whole. A the name of this site implies, if we don’t take good care of our health (mental, physical, spiritual) then our code will be affected adversely. We know this from our own experience, we can bang our head against a problem and stay late for hours only to leave work without success, feeling tired and unproductive. The next morning we start work and solve the problem in 10 minutes. We are not machines, we shouldn’t think of ourselves as such. We are not Human Resources, we’re just Human.

I’ve learnt loads by being a Pluralsight author, maybe one day I’ll make it to 20 courses, there’s one thing for sure: my 20th course will be better than my 1st. We should all look for and feel a sense of progress, if we aren’t then maybe it’s time to revaluate our circumstances.

The goal of getting better and making progress is, I think, a better goal than becoming perfect.

2 Gratitude

No matter how cool the things we do for work are, it’s easy for the common to become unconsciously ignored.

Having my 10th course published is probably a good time to reflect with gratitude.

I’m grateful for:

  • Being part of the Pluralsight vision to democratize online tech training for people around the world, because
  • The work I do on course production helps people to get better at what they do
  • The opportunity to create, and have what I create viewed by thousands of people around the world
  • Being part of what really is a revolution in tech training, and Pluralsight really is leading the way for tech training
  • And finally, simply being able to teach.

3 Changing the World

We sometimes don’t think of the ripples we send out into the world by our actions. No thing exists purely because of a single cause. A complex web of things brought the thing into existence.

Continuous improvement doesn’t just apply to code, it applies to ourselves as a whole

Take for example the clothes you are wearing right now. You aren’t wearing them simply because you bought them: someone made them, someone made the machine that made them, someone harvested the cotton that made them, someone planted the cotton, someone drilled the oil to make the diesel that delivered that t-shirt to the store, and so on.

In the same way, the work we do sends ripples into the world. When we make software, we change people’s lives. When someone learns and uses something from one of my courses, their software gets better, and their lives and the lives of their users is improved. This is a pretty amazing thing to be part of.

“We did not weave the web of life, we are merely strands in it. Whatever we do to the web we do to ourselves” – Chief Seattle.

SHARE:

15-Second Favourite Programmer Music Survey

Hi, I thought it would be cool to collate peoples favourite music album to code to.

I created this Excel Web App survey – I would be grateful if you could take 15-seconds to tell me (anonymously) what your fave artist and album are:

http://bit.ly/programmermusicsurvey

Results will be published on the blog once the response sample set is high enough.

Thanks :)

SHARE:

Kill Your Productivity Demons with my New Pluralsight Course

My new Pluralsight course Personal Productivity & Performance Tools for Windows Developers “get more done in less time” has just been released.

It covers a range of developer-focused and general productivity tools that you can mix and match to suit your way of working.

“We’re constantly under pressure to be more productive. Learn how to use these tools to improve your productivity, streamline your workflows, and get more done in less time. ”

The course consists of:

  • Reduce Typing with AutoHotkey
  • LINQPad – A C# / VB.NET Scratchpad
  • Starting Programs and Websites with SlickRun
  • Take Control of your Clipboard with ClipX
  • Remember What you Did with TimeSnapper
  • Making the Internet Work for You with IFTTT
  • Free Image Editing with Paint.NET

You can find this course along with my other courses on the Pluralsight author page.

SHARE:

What are Your 3 Wins for 2014?

The idea of "the power of three" is a universal concept; it can be seen anywhere from religion (The Holy Trinity, Triquetra, etc.) to childhood learning ("ABC", "123") to entertainment (The Three Musketeers, The Three Stooges, etc.) to project management (the scope-cost-schedule triangle).

One simple way to exploit the power of three is to define outcomes/wins/achievements. These "three wins" can be at any level:

  • Three wins for the project
  • Three wins for the year
  • Three wins for the month
  • Three wins for the week
  • Three wins for today

The three chosen things should not be simple tasks to be ticked off, they should be things that feel like a "win" and give a real sense of progress and satisfaction.

The "wins" should be realistic and achievable.

Getting Results the Agile Way by J. D. Meier makes extensive use of the power of three with its "Monday Vision, Daily Outcomes, Friday Reflection" and three types of "Hot Spot".

The power of three can also be applied to individual items of work/features being developed, for example a feature can be evaluated by: user value, business value, technical value. In agile team retrospectives the power of three can be used to decide: what went well, what didn't go well, what will be improved upon in the next iteration.

(the above is an excerpt from my book Keeping Software Soft)

My 3 Wins for 2014

These are my 3 (professional) wins for 2014 (in no particular order):

While these aren’t my only wins for the year, they are things that I feel if I accomplish them, when I see in 2015 I can look back and be content.

It’s also important to be flexible with plans, if professional or personal events happen that mean I really can’t accomplish these then that’s ok: no plan survives contact with the enemy.

 

Make some time to think about and write down your 3 wins for 2014 and feel free to share them in the comments.

SHARE:

The Golden Age of Software Development

There's a lot of negativity sometimes in our profession, just take a look in your Twitter stream.

The tools we use aren't absolutely 100% without imperfection; the vendors of the tools we use don't always go in the direction we want them to; and sometimes the things we invest time in learning go away and it's beyond our control.

We are change

It's amazing to me how many developers seem to hate Windows 8, even to the point of wanting to install start button replacement tools. And that's ok, it’s a personal choice. For me, Windows 8 is the best operating system I've ever used. Another example was the "Visual Studio menus are shouting at me!", for the record I didn't "fix" this "problem" as it didn't bother me. But I know some developers who really hated it.

Perhaps because we are agents of change, we don't like not being in control of change.

I think we're living in a golden age of software development

We have amazing (if imperfect) tools, Visual Studio is great and we have some awesome open source libraries that are super easy to install via NuGet.

Between my Windows Phone and Windows Store apps I've had almost 28,000 downloads. More than downloads though, that's 28,000 people’s lives that I've touched, even if it’s in a small way.

I can have an idea, and within an hour have a prototype running on my touch screen Lumia phone, or my SurfaceRT tablet. This is amazing, really it is, and I take it for granted sometimes.

This doesn't mean we shouldn't highlight problems or disagree with the strategies of our tools vendors. When we do, we can drop f-bombs and call "them" idiots and create more negativity in our profession; or we can call things out with respect and with hope for the future.

It's our community, we get to decide how it feels...

SHARE:

Today I Became a Microsoft MVP

I’ve been awarded a Microsoft Most Valuable Professional award for the first time in my career.

I feel like it’s a real personal achievement for me. But why?

Recognition

The first is purely one of recognition, and while I suppose this could be considered somewhat egoistic, I guess we all like to be rewarded or recognised.

give each other more compliments; not in the vacuous, high-fiving, “team-building exercise” kind of way

I suppose that if you feel good whilst feeling like you’re helping others, then it’s nice win-win.

Confidence

The imposter syndrome seems to be an oft-quoted thing in our industry and I’m not ashamed to say that I sometimes suffer from this “phenomenon in which people are unable to internalize their accomplishments” [Wikipedia]. Recognition, such as direct compliments from individuals and awards such as the MVP scheme help to alleviate this. I think my article “5 Ways To Give Yourself A Break” was a reflection on this. Perhaps one thing we can do to make our industry more amazing is to give each other more compliments; not in the vacuous, high-fiving, “team-building exercise” kind of way; but in a genuine and sincere appreciation of others’ efforts.

Making Things Better

Things like access to other MVPs and having a more direct line to Microsoft to provide feedback will hopefully make the products and tools we all use better. It’s cool to think I may be able to participate in betas or other programs and provide feedback to make things better.

 

All in all, I feel like this is a significant milestone in my career and I hope to make the best of it in the coming year…

 

* Technically it’s from Oct 1st PST – but it’s the 1st here in Australia :)

SHARE:

5 Ways To Give Yourself A Break

In my many years of being a software developer there’s one thing that I’ve seemed to have experienced on and off throughout this time: Fear.

Fear of:

  • Not knowing the latest language/framework/architecture
  • Falling “behind” everyone else
  • Not being the best
  • Not being as good as others
  • Being wrong
  • Making mistakes
  • Looking stupid
  • Not being able to learn future technology X

This list could go on…

I’m not alone in these feelings. I have been told the same by, or seen this trait in, other developers I’ve worked with over the years.

We don’t have to be super heroes

So what can we do as a community of developers for us all to feel happier and more fulfilled?

I think if we want to make our professional community better we can start by learning to gives ourselves a break.

Here’s five ways we might be able to do this, feel free to disagree or add your own ideas in the comments section.

1. You Don’t Have To Wear A Cape

We don’t have to be super heroes.

More...

SHARE: