this is my first #ama, so please bear with me
What I'm Willing to Talk About
I'm happy to answer questions on podcasting (hosting, producing, and editing), creating content, .NET Core, and anything else that the following information inspires you to ask about.
Posting Questions
Please post any questions that you have as comments on this article.
About Me
I've been a .NET developer for close to 11 years, recently went contractor. I've been writing about .NET Core since November 2016 over at https://dotnetcore.gaprogman.com/ which, combined with my appearances on:
- The Cynical Developer podcast - across four episodes
- The Productivity in Tech podcast
- This was on the old show, before the recent rebrand
- The Rising Young Minds blog
- My posts on codeshare.co.uk on Free HTTPS Certificates and Rider from Jet Brains
lead to the creation of one of my podcasts: The .NET Core Podcast - which is celebrating it's one year anniversary this month.
I've also been writing and creating podcast episodes for a website that I run with my brother: The Waffling Taylors. We've been writing about video games since January 2017, and launched our podcast in November that same year, too.
In November 2017, I started working as a DevOps engineer for a UK-based start up consultancy. This required me to learn containerisation technologies (focusing primarily on docker) and cloud based architecture (focusing on Microsoft's Azure platform). It was during this time that I started looking into productivity tools, and I started making .NET Core Global Tools and .NET Core custom templates.
I'm an open source advocate, and have created a number of NuGet packages
that's kind of like npm packages but for .NET
which are used in a lot of projects:
-
OwaspHeaders.Core
- which adds OWASP recommended HTTP Headers for ASP.NET Core applications (33,456 total downloads according to NuGet)
- The source code is freely available on GitHub (used in 10 other open source projects)
-
ClacksMiddleware (4,054 total downloads according to NuGet)
- which adds the GNU Terry Pratchett HTTP header to ASP.NET Core applications
- The source code is freely available on GitHub
I'm also a Hack24 winner - as part of a four person team called Merge Conflicts. I also entered in 2017, as a member of Abstract Sausage Factory - although we didn't win, we had a great time.
I've also been looking into JAM Stack and static site generators like Hugo, Jekyll, and Gatsby. Which is something that I talked about on my recent appearance on the Developer Side Quests podcast.
So I invite you all to ask me anything. I'll be answering questions until around 10pm UK time.
Top comments (29)
How your normal day look like?
How you start your day --- till you go to sleep?
My normal weekday looks like:
I'll fit podcast interviews (guests on my shows) into my day, too. But I plan them around the availability of my guests.
Weekends are completely different, as I tend to spend one Saturday a month recording a month's worth of episodes for Waffling Taylors. But mostly, it's family and chill out time.
Do you code and listen to podcasts at the same time? If yes, do you not find it distracting?
I certainly do code and listen to podcasts at the same time. I don't tend to find it distracting at all.
I put it down to me being an auditory learner. I'm sure that the science doesn't work out like this, but I can keep all of my attention on the work that I'm doing and still take the details of the show in.
Thank You for sharing your schedule.
Really appreciate a lot.
No worries.
You've had a few folks on the podcast who've made big transitions in their career. You've also made a big transition to being a contractor. Do you have any advice for people making a big change? Whether it's getting into development after having done something else, or changing the nature of of their development career from full-time to contracting or some other direction. Yes, I know, very broad. :)
Ooh! I love that question. But my answer might have to be equally as broad.
The first thing you need is a plan. What do you want to achieve? Be as specific as you possibly can, but also acknowledge that there are:
Then take a look at how you think this new transition might affect you and your dependents - you may not have dependents, and that's fine, but you are dependent on yourself.
If it's career related, like going full time or moving to contracting work, do a full budget. Take the time to figure out precisely what your finances are, and how much you need to survive for 3 months. Then have at least that much banked before you do ANYTHING. With contracting, you will typically lose any employment benefits that a full time employee has (medical insurance, paid sick leave, etc.), so what happens to your bills and dependents if you become sick? You need to know these things.
Be aware that a big change can have both positive and negative effects. And you need to try and be aware of both of these sides of the coin before you can make a decision. Try and think of it as being similar to informed consent, but you have to inform yourself. But that's hard because of the unknown unknowns.
To combat those unknown unknowns, seek out other people who have done the same. Maybe see if there are meetups or professionals that you can talk with. When I was thinking of changing to being a contractor, I spoke with all of my contractor friends. I also went to seek legal and financial advice (I have experts in those areas in my family, and while they couldn't advise me as a professional, they helped me finding the questions thay I should be asking).
In summation, and to quote Scar from The Lion King:
Tell me your journey of how you started the podcast.
Pro and Cons.
How much time do you invest in this despite having a job as well?
If I want to start a Podcast what are Don't and Do for a newbie.
So I started the podcast after realising that my blog posts on .NET Core where starting to get longer and longer. One of the longest blog posts clocks in at around three and a half thousand words, which isn't that long for a technical post. But it meant that I was spending a lot of time writing the article and creating the source code to go alongside it.
Mix this in with the fact that I'm an auditory learner - I'm actually listening to an episode of the Retro Asylum podcast as I type this comment - and I started to see that audio would be easier to work with.
I started by writing the first 10 monologues. I figured that if I couldn't come up with content for the first 10 episodes, then I wouldn't be able to come up with enough content to keep the show going. I did this by spending an afternoon at a local coffee shop with a notebook and a pen.
I do all of the production myself: writing questions for guests; interviewing guests; writing the monologues; editing the show; creating the show notes (including the transcriptions); publicising the show; reaching out to guests; etc. As such I spend a lot of time working on the show. A year ago, I would be editing audio over lunch breaks at work and rushing home to continue to produce all evening.
But, since then I've levelled up with my productivity. One of the things that I've walked away from is what Richard Campbell called "The anti-umm thing" (when I interviewed him). To quote Jay Miller (of Productivity in Tech):
I also dropped from one episode a week to one episode per fortnight. This really helped with the pressure to get the show edited down.
If you're looking to create a podcast, make sure that you really want to do it. It requires a lot of effort, and you need to be sure that you have a large amount of content planned and ready to go before you start. Otherwise you'll run out of content and either podfade or you'll end up putting out low quality, filler episodes.
Also, accept that the first four or five episodes that you record will be terrible. This is because you'll still be trying to figure out what your show should sound like, or what your radio voice sounds like.
You also need to accept that gaining followers with podcasting is a marathon rather than a sprint. Unless you find a super specific niche, you'll find that it will take a long time to gain a good enough following.
My major concern is reaching out to guest.
Will they accept my invitation as I am not popular at all.
Why would they invest there time when I am not even paying them.
Besides the obvious, can you recommend any other podcasts? Not necessarily limited to development either.
I can certainly recommend loads of podcasts. I have two lists on Podchaser:
I'd heartily recommend:
.NET Core 3.0 is pretty much locked in, but what do you hope to see in the .NET 5 timeframe?
What's great about .NET 5 is that they're bringing Xamarin, Core, and Mono together. With that we'll get native, cross platform access to the Mono linker and tool chain.
My biggest hope for .NET 5 is installed templates not being wiped out with SDK updates. So right now, if you install a
dotnet new
template then update the installation of the SDK, the template will disappear. I created an issue on GitHub for this, after asking about it on Twitter.But the most exciting thing to me is the rolling release schedule in .NET 5. Traditionally, Framework is tied to the Windows Kernel. This means that they can't issue updates out of band for Windows. Which means that updates for Framework have always been super slow. Especially since there's nearly 20 years of apps which NEED to keep running, exactly the way that they have before, when a Framework update is released.
But .NET 5 (and beyond) is going to have yearly releases, meaning that we'll get access to new features on a very rapid release cycle. Thinking thay we could have a new feature announced, trialed, previewed, and into our production code bases in less than a year is incredibly exciting to me.
Where can we ask questions?
Over here or twitter?
I've just updated the post to include:
Do you have any good tips on how you manage tasks? Tools and/or concepts? How you do prioritize?
If you'd have asked me how I prioritise tasks 2 years ago, I'd have said that I firefight. But these days, I take a look at what can allow me to check off the most at once.
One of the things which has helped me a lot recently, and it's super low tech, is pen and paper. Like, I'll write the heading:
What Do I Have?
And list everything that I have about a task. Do I have the spec for a job? Do I have access to documentations? Do I have the audio that I want to edit? Do I have the tools that I need?
Then I'll write the heading:
What Do I Want?
And list what I want the end result to be, in as much detail. For example, I might put something like:
That way, I can see the list of steps that I need to take to get to the final result, and precisely what that final result will be.
Then I'll make a check list of steps to perform, and check them off, one by one, until they're done.
The biggest thing to remember is that the individual tasks will take as long as they take. And if they go over, then it's not the end of the world.
Tips that you want to share with developers around the glob.
If you have to start learning some new technology.
How you prepare yourself to learn it resources, daily time investment.
So I've done this recently with Hugo. What I did for that was find out the bare minimum that I need to be able to build something with it (in this case, ensure that both Go and the hugo cli app are installed).
The next thing that I do is figure out a project that I can get some use out of, and start building it with the new technology. In the case of Hugo, I started recreating the Waffling Taylors website with it, implementing a new design as I went along.
Once I've scratched the surface enough, I'll go back and look into how the technology actually works. That way, I can better understand the inner workings and the design decisions for the technology.
Have any tips for the days when you just "don't wanna"?
Oh man. I get this at around 8pm on a Wednesday night.
My goto strategy is to take a short break and do something completely different. So when I'm 2 hours into editing some audio and I get all antsy, or just want to give up, I get up from my chair, head outside and walk around the block. Granted UK blocks are a lot smaller than most of the world, but it clears my head.
But if I haven't started the task yet, and I really don't wanna, what I'll do is get myself into a position where I should have already started. So when I used to go running all the time, I'd get changed into my running gear and go stand by the front door. It seemed pointless to be standing there, ready to go, knowing that I'd have to get changed again if I didn't go. So I kind of procrastinated myself into running.
It's what I call the Professor Farnsworth dilemma.
Do you develop on a Windows, MacOS or a Linux distro and why did you pick that particular OS?
So I'm OS agnostic. I have devices which run both Windows 10 and Mac OS vLatest (a separate device for each), and I run Pop! OS on my main PC.
I used to be Windows only, but about 8 years ago I moved over to Ubuntu Linux for my daily driver. I'd tried a few different distros before then, but there was something special about the fact that it just worked.
Then, when I started getting interested in cross platform .NET development, I bought myself a Macbook Pro.
I still use all three on a daily basis.
Any tips that you want to share for developers across the globe.
I think i missed it. :(
You certainly haven't. I'll be answering any questions for the next 5 hours (as of me posting this reply)