Jason Haley

Ramblings from an Independent Consultant

Ways to get involved in the local tech community (2 of 5)

Volunteer to speak at a user group

User group leaders are always looking for speakers. The more often a user group meets, the more speakers the organizer needs to line up.  For instance, I organize two user groups (North Boston Azure and DevBoston) which means in order to meet monthly – I need to find 24 speakers a year … that isn’t easy to do – and that also doesn’t capture day long events we do during the year too where we need multiple speakers for that single day workshop.  Keep in mind, the more narrow focus/specialized the user group is – the harder it is to find qualified presentations (like my Azure user group … there are only so many people presenting Azure topics in the New England area).

Pick your topic and write an abstract

Related to last week’s post on Attending a user group – I suggest you pick a topic related to where you want to take your career (and are really interested in) … even if that isn’t what you do day-to-day (yet).

Once you pick a topic, you need to come up with an abstract to submit to the user group organizer.  I suggest working backwards and coming up with a rough outline of what you think would make a good presentation and fill in the details as much as you can.  Then come up with a summary that captures what you have outlined.  It may help to look at some other meetup descriptions or events like VS Live session abstracts to get a good sense of how good abstracts are written … it is an art form and takes practice and effort to write a good one. 

Submit your topic to a user group

Hopefully you’ll have an idea of user groups in your area that your talk would fit with – if not see last week’s post about attending a user group.  Depending on how the meetup.com site is configured for the meetup/user group you should be able to contact the organizer and/or suggest your topic on the website … however I would not suggest using meetup.com for this. 

I suggest you personally contact the organizer - just like finding jobs, submitting a resume through a website may go into a black hole and never get looked at … the same thing happens when submitting a talk through meetup.com.

Once you’ve attended the user group you want to present at, make sure you introduce yourself to the organizer and let them know you are wanting to do a talk – and get their contact information.  Once you’ve successfully introduced yourself to the organizer in person, you can then email them your abstract.

Then wait for the thumbs up or thumbs down.  If your talk isn’t accepted, don’t be discouraged.  You can either ask the organizer if later in the year would be better or at least get an idea of why it wasn’t accepted.  If it is a hard no, then find another group to submit it to or try a local code camp.

Create the presentation

Once your talk has been accepted - find out date and length of time you will have to present. If you are not used to putting presentations together you may need a little more time to prepare – keep this in mind when submitting your talk and committing to a date.  There is plenty of material on the internet about putting a presentation together – so I’ll leave this step to you … besides I’m not an expert and can always use help on putting presentations together too.

Practice, Practice, Practice

Once you have the presentation prepared (or at least drafted), practice it – and time it.  if the thought of presenting makes you nervous – realize you are not alone … and keep practicing.  I used to be really nervous in front of a crowd but have mostly overcome that with years of presenting to groups.  Here is the strategy that has worked for me:

  1. put the slides together into the flow you think will be a good presentation
  2. practice it – don’t memorize it or read the bullet points – talk to the bullet points.  If it is too long trim some slides or bullet points. Maybe rearrange the slides if you think the flow would be better.
  3. practice it again using slightly different terminology and different ways to explain things – again don’t memorize it
  4. practice it again and using yet slightly different terminology and ways to explain things

At this point you have practiced it three times and should have a general idea of how much time it takes to present it … however the biggest advantage of this approach is you have now described the slides in three different ways – so when you are nervous and have some problems during the presentation there is a really good chance you will remember at least one of the ways you described the slide in the practice sessions. 

This approach has worked well for me over the years.  The first time I gave a presentation at a code camp, I had practiced it 7 times and knew the material and timing so well it was really easy to present it even though I was still really nervous.

Useful Utility: Markdown Monster

A couple of months ago at Boston .Net Architecture Group a friend of mine (Bob Goodearl) introduced me to Markdown Monster.

I’m sure many of you who deal with markdown all the time are thinking – big deal just learn the syntax .. what’s the bid deal right? 

For me the killer feature is: Paste Images from Clipboard

I have several hands on labs in Word form which I am converting to markdown files to version in github.  With Markdown Monster, I can just copy and paste the text over into a new .md file, format the header and bulleted lists – then I can copy and paste the images into the document.

When you paste the image it will prompt you for where you want to save it and what you want to name it – so it isn’t effortless – but it is a lot easier for me than to grab all those images from the word document, save each to a file then have to locate the file when modifying the markdown.

Great simple utility!


Ways to get involved in the local tech community (1 of 5)

Attend a user group

For you readers who have already attended user groups, this is a no brainer.  You know this … but when was the last time you attended a user group?

For those of you who don’t know - user groups (or meetups as they are often called these days) is a type of club (or organized meeting) focused on a specific technology topic.  Usually meeting on a monthly basis. 

If you live near a large metropolitan area, your easiest way to find a user group (or meetup) is to go to https://www.meetup.com/ and search for a topic you are interested in.  If meetup.com doesn’t have groups near you (or you are not near a large metropolitan area) it is going to be harder to find these groups.

If meetup.com works for you, then register for an account and rsvp to the user group you wish to attend and then GO TO IT!

Once you find a group to attend, here is what you might expect:

  • other people who are interested in the topic of the evening and/or regular attendees of the group
  • food is often provided - but not always so if you will be showing up hungry make sure you verify there will be food there (otherwise being hungry the whole meeting won’t be a good experience for you)
  • a networking period (usually before or after the main talk)
  • a main event – sometimes a small intro or short presentation happens before a longer topic specific presentation
  • going out for drinks afterwards (sometimes)

Why attend a user group?

If you want to grow personally, grow your network and help grow your career, I suggest attending user groups that are related to where you want to take your career – even if that isn’t where you are in your day-to-day career yet.

Example: I like Microsoft Azure – so I attend Azure User Groups (there are 2 of them in the Boston Area - Boston Azure and North Boston Azure).  A lot of people at these Azure user groups are passionate about learning Azure but just don’t get to use it at work yet.

Other common reasons to attend a user group:

  • If you are looking for a job – often times hiring managers and sometimes recruiters attend user groups
  • If you are looking to hire – people who attend user groups show a level of commitment their career simply by giving up a weeknight to attend
  • New to an area and want to meet other professionals – with meetup.com you can now locate groups of people who are interested in the same things you are
  • Get to know more people in your industry – it is nice to go to meetings where you know people and sometimes get to meet big name rock star speakers

For me, user groups is where the local tech community starts, whether you are new to an area, starting a new career, looking to learn something new or a seasoned professional wanting to broaden their span of influence.

Career Update: Running 100 miles a month and still not losing weight

This entry is a personal/career update mostly mid-year reflections about how I’m hitting some goals but not able to reach other goals.

For those of you who know me, you know I’m a runner and usually run two races a year (half or full marathons). This is because I have a life goal of running either a half or full marathon in all 50 states – I’m now up to 10 states.  I also organize two user groups in the Boston area (DevBoston and North Boston Azure) and speak at several other groups in the New England area.

Reflecting on some of my accomplishments and failures this year:


  • I am averaging over 100 miles a month in mileage (goal achieved)
  • I ran a half marathon in Montana in July and beat my best time for a half by 6 minutes (goal achieved)
  • Have not lost any weight around my mid-section this year (fail)


  • Passed the third Azure exam 70-534 to get my MSCE: Cloud Platform and Infrastructure certification (goal achieved)
  • Became a Microsoft Azure MVP for my community efforts in the past year (goal achieved)
  • Have not blogged (fail)
  • Have not worked on my list of open source projects like I wanted (fail)

Thoughts on why I can hit some goals but not others

Running is easy.  I can make myself go out for a five mile run – it is just a habit and I enjoy it.  This means the miles add up quickly and the 100 mile mark is not a hard goal to hit for a month. 

However, controlling my diet is hard.  I know if I don’t do non-aerobic exercise or control my diet, I simply don’t lose weight.  If I add resistance training and/or eat better dinners and no snacks – then I do lose weight.  I know this.  I know what I need to do.  I am simply not doing it.

I love learning.  Learning more about Azure and playing around it is easy and I enjoy it.  When studying for exams, I have a list of topics to learn and can make myself do it.  This means as long as I stick to learning the topics the exam covers, it is not hard to pass the exams. 

I also like organizing and speaking at user groups and community events.  I’m not great at it, but I can make myself do it.  I am working on improving – but that is a blog post for another day.

However, blogging and consistently working on my open source projects is hard.  Hard in the sense that it is not a habit I currently have … and I can come up with many reasons to stay in the “thinking” and “planning” phases … which will never deliver anything.

Today is Tuesday August 1, 2017.  Today I am starting to take the next steps in reaching more of my goals that require me to change what I do and create new habits. 

NOTE: this entry is a bit rough … actually it just isn’t written well at all.  However, I will improve the more I write – and today it is more important to put it out there than to get it right – no more putting it off.

May 2017 Boston Area: Docker and Container Events

If you are in the Boston area (Cambridge or Burlington) and want to learn more about Docker and container technologies – here are three events you may want to attend in the next three weeks:

May 18, 2017 @ 6pm (tonight) in Cambridge is ASP.NET Core and Docker in Azure by @dev_enginerd

ASP.NET Core is a new open-source and cross-platform framework for building modern cloud based internet connected. ASP.NET Core apps can run on .NET Core or on the full .NET Framework. It was architected to provide an optimized development framework for apps that are deployed to the cloud or run on-premises. You can develop and run your ASP.NET Core apps cross-platform on Windows, Mac and Linux.

It has never been easier to add Docker support to ASP.NET and ASP.NET Core applications. Even better, there are many options to host your Docker containers in Azure!

May 23, 2017 @ 6pm in Burlington is Docker Fundamentals: Getting Started with Container Technologies By @aspenwilder

Docker is everywhere today but what is it? In this talk, we will start from the beginning to introduce containers and explore why they have become so popular. Next, we will take a look how to get started using Docker in your applications today and finally how to deploy containers using Azure. By the end, you will have seen containers in action, know how to create your first container and understand your path to production.

May 30, 2017 @ 6pm in Burlington is Containers and DevOps in Azure by @ITProGuru

Containers, the next wave of virtualization, are changing everything! As companies learn about the value of DevOps practices and containerization they are flocking to containers. Now with Docker running on Windows and Docker Containers built into both Azure and Windows Server, containers are poised to take over the virtualization landscape. Nano Server, Microsoft’s newest and smallest ever operating system is poised to lead that charge. Come to the session to learn all about containers and how you can put these technologies to use in your organization. You will learn about the tools and practices for leveraging containers, deploying containers as well as how to continue your journey to becoming a container expert as you grow your technical career. Plus **** insight to the Microsoft commitment to becoming a member and Platinum Member of the Linux Foundation. What it means for Microsoft, Linux, Azure and most importantly to * Open Source *! You do not want to miss this!!!

My 30 Day Challenge and Update on Azure Cloud Certification Studying

It has been a long time since I’ve regularly written in my blog … or anywhere for that matter.  I have been meaning to start writing again but I just haven’t been committed to it enough to do it – until today.

Today I am starting a 30 day challenge for myself – to write something every day for 30 days.

This challenge isn’t to make 30 days of blog entries, but to write something – maybe even just in word or a notebook (ie. doesn’t have to be published).  I want to move toward a cadence of at least one decent blog post a week, but no promises.

Update on studying

Yesterday I signed up to take the 70-534 exam at the end of this month – which gives me around 4 months to study for it.  In November, I was about ready to signup for the exam but found out the exam was going to change so I didn’t finish my studying (I wrote about that last year).

I have been learning and using more and more products and features of Azure for quite sometime, so I think I know the majority of the content on the exam – I just need to freshen up my knowledge on some of the things that I haven’t used in awhile.  Plus I need to practice getting tested on my knowledge again.

Boston Code Camp 27

Yesterday was Boston Code Camp 27.  We had a good turn out. I met several people from out of state and also met many people that were attending a Code Camp for the first time.

As often happens, I didn’t get to attending any sessions but everyone I spoke with all had very nice things to say about the sessions they attended.

I presented two sessions:

Introduction to Azure App Service Environment

The room was to hold up to 18 people and I think there ended up being 12 – 15 that attended.  As I started the talk and poled the people about their experiences with Azure, I quickly learned they crowd needed mostly background on App Service and a little about App Service Environment … so I spend quite a bit of time showing them around Web Apps and discussing App Service in general and maybe 10 – 15 on App Service Environments.  Maybe next code camp, I’ll split it into 2 parts: Part 1: App Services, Part 2: App Service Environment.

The slides for the talk can be found here: https://jhaleyfiles2016.blob.core.windows.net/public/AppServiceEnvironment2017.pptx

Going Independent

This room was about the same size as the other, but there was at least a handful of people standing and sitting on the bench of to the side – so maybe 20 people or so.  I’ve given different versions of this talk at least a dozen times in the past 7 years.  Thirty minutes is usually not enough for this one (I gave a two hour version of it earlier this month), but I think I covered the important points. I think the group yesterday may have been the largest percentage of full-time employees that I’ve ever give the talk too – usually it is only 1/3 – 1/2 but it was closer to 2/3 to 3/4  … which is good since that is the audience I targeted the presentation to.

The slides for the talk can be found here: https://jhaleyfiles2016.blob.core.windows.net/public/Half_GoingIndependent2017.pptx

Talk: WebApps and WebJobs

Last month (December 14, 2016) I presented at the Western Mass Development Technology User Group.  The group meets in Agawam, MA about two hours west of Salem, MA – if you are in the area you should check out their meetup site: https://www.meetup.com/Western-Mass-Development-Technology-Users-Group/

I was a fun time and a great group of people interested in learning more about Azure. 

I split the time between WebApps and WebJobs and tried not to make too many comparisons with Cloud Services (since only one person was familiar with them).  We spent most of the time in either the Azure portal or in Visual Studio, but for anyone interested my power point presentation files can be downloaded from this link: https://jhaleyfiles2016.blob.core.windows.net/public/Western%20Mass%20Dev%20Tech.zip

Late November 2016 Update on Azure Cloud Certification Studying

The day after I posted my last update (November 2016 Update on Azure Cloud Certification Studying) I found out the 70-534 exam (the one I am studying for) was going to have some major changes on November 22 - Azure Architecture Exam (70-534) Gets ARM Refresh.

So I had two choices: Cram for the exam and take it before Nov 22 or Step back and widen the material I’ve got to learn to pass it.

Since then, I’ve decided to postpone taking the exam this year.  I am not really doing this to just get the certificate (ie. pass the exam) I want to know that I know the material … and right now I don’t know some of the new things they are adding to the exam.

Also, I’ve been meaning to get back to blogging and have decided to start writing about some of the topics I am learning while studying for the 70-354 exam – so this week I am planning my first blog post (or set of blog posts) … still in the planning stage.

Boston Code Camp 26

Yesterday was Boston Code Camp 26.  I presented Cloud Services vs. Web Apps for the first time.  The slides can be found here: https://jhaleyfiles2016.blob.core.windows.net/public/CloudServicesVsWebApps.pptx

If anyone who attended my talk has any feedback, I’d love to hear from you. 

It was nice to see old friends and meet some new ones yesterday.  I only made it to one talk: The Power of Networking by Betsy Weber (@betsyweber).  There were many other talks that I would have gone to, however I found it more enjoyable to catch up with the group of friends I only tend to see at Code Camps and Dev Camps.

I will be presenting a more detailed and demo oriented talk comparing Cloud Services and Web Apps at the North Boston Azure Cloud User Group Nov 29th, in case anyone missed my talk yesterday or wants more detail.