My name is Scott Hanselman. I'm a programmer, teacher, and speaker. I work in Open Source on ASP.NET and the Azure Cloud for Microsoft out of my home office in Portland, Oregon.
I'm excited about community, social equity, media, entrepreneurship and above all, the open web.
Ask me anything!
Top comments (142)
Scott! First time caller, long time listener. But seriously, you're a great voice for social justice and I appreciate the way you use your platform to highlight issues in communities that you might not necessarily belong to. What inspired you to become this person?
Not sure, I've always been this guy. I think that people in the majority can easily forget what it's like to be in the minority. I think it's also easy to for some to forget that YOUR success isn't to my detriment. Your rise isn't my fall. I do my best to "lend my privilege" (age, experience, gender, ability, race, etc) whenever I can do lift up the voices of folks who may be missing one or more of those privileges.
Ad: Subscribe to and listen to my podcast! ;) hanselminutes.com/archives
Great question. Scott, your platform is huge and I, as a black woman in this industry, am grateful to have your voice in my corner.
My pleasure, and I'm happy that we're in this industry together!
How do you prepare for a brand new talk? Any specific routines you run through leading up to/day of?
I did a video on preparing for a new talk from scratch here if you have a PluralSight sub or want a trial: pluralsight.com/courses/hanselman-....
I start with the number of minutes I'm trying to fill. So if it's a 30 min talk, I figure I need 6 five minute points. Then I think "what can I show that's interesting for five minutes?" Then I get my half dozen demos/points/concepts, and I move them around/reorder them into a story arc. I try to put myself in the head of the watcher/listener/attendee...figure after each demo they will say "So what?" so your next point or demo should answer that question.
How do you mentally prepare (ie. any speaking anxiety)?
I know some people practice the talk in front of anyone who will listen, while other people feel way more comfortable not practicing because the first time feels more 'authentic'.
And some people need specific things to help ground them -- like...being really careful about what they eat beforehand, etc.
I'm a Type 1 Diabetic so I only eat what I KNOW and what I'm comfortable with, for sure. I always sleep well and avoid going to the speaker parties and stuff the day before. Always I focus on the talk, not the stuff around it.
how often do you recycle talks? do you have 3 talks you can give at the drop of a hat and another...5 always brewing? how do you choose which conferences to speak at?
I can't speak for @shanselman , but I've been a Toastmaster for a few years. There's definitely good reasons to have a at least one talk or speech you can give with no preparation. Happens if a speaker drops out unexpectedly or has trouble arriving on time.
Especially as you expand your reach and the types of audiences you talk to, there may be reasons to further develop similar talks on the same topic using bits and pieces from prior talks.
It all depends on whether you think you will focus on a specific topic or concern, or if you just want to have a few talks on separate topics because the audiences you talk to are always different.
I've never spoken at a conference, so I can only suggest go to conferences that have topics that appeal to you or on which you feel you have something to say. Alternatively, if a conference offers you a unique networking opportunity, that could be a consideration.
In summary:
Figure out if you want your talks to be focused on a single topic or connected via similar theme.
Good idea to have at least one strong talk at the ready that's simple and requires little to no preparation.
This is a great course, it helped me figure out my speaking style. Thanks!
Hello Scott, it's my pleasure! I hope you're doing well.
My question to you: What do you think of soft skills and personal development as must-haves for software developers these days? In my career so far (I'm in my thirties) I experience that the stereotyped code monkey seems to disappear and it's more important than ever that you overcome your shyness and learn to communicate (face-to-face) with your team, become self-aware and just try to be a person you'd like to hang out with.
Thank you very much,
Patrick
I think you're right on. While there will always be shy folks and shy folks in software, the fact is that most of us are not writing code in a vacuum. We make this software FOR PEOPLE so getting outside our comfort zones and looking people in the eye and understanding/empathizing their situation is absolutely essential for good software.
Thanks a lot, Scott. :)
Hey Scott,
Thank you for participating in this AMA.
I'd like to ask you about speaking.
How do you find and secure speaking engagements?
What are your recommendations to find the right opportunities?
I fill out "CFPs" (calls for papers). It's like a job application for a talk you want to give. Figure 10 to 1 return. Start with a brownbag at your job, then local meetups, then local or regional code camps, then larger conferences. Also consider ComedySportz (really) and Toastmasters.
Hi Scott! I'm sorry to say I'm not familiar with you or your work, but I'm going to remedy that quickly. I see you do work with ASP.NET, which is highly relevant to my current work. I work in an organization that has been using ASP.NET since 1.1 - mostly for small one-page web forms, but occasionally for larger database apps. We're up to using .NET 4.5 now, but I'm struggling to figure out where we go next. MVC and .NET Core seem like WAY too much overhead for the small projects we do here. I took a brief look at Razor Pages, but even that looks like more overhead/bloat than we currently have. What would you recommend for someone writing very small .NET apps and where do you see the future of .NET headed?
With respect, not sure where you got "overhead and bloat" but I'm happy to chat about it.
.NET and MVC are VERY lightweight. Like 5-10x less going on than with previous versions of .NET. HttpRequests went from 30k overhead to like 7k. Razor Pages has many fewer moving parts and concepts.
I'd start with Razor pages or MVC (which Razor is built directly on) for basic apps. You can scaffold out most CRUD (Create, Read, Update, Delete) apps in 30 min. Maria and I just did a course on this: mva.microsoft.com/en-US/training-c...
Appreciate the guidance, Scott. Trying to make sense of .NET vs. Core vs. MVC vs. Razor has been a bit daunting. Perhaps overhead and bloat weren't the right words to use. I didn't mean it in terms of server load so much as the amount of code I'd have to write as a developer. The couple of examples I've seen for MVC and Razor involved a lot more code than I'd write to do something similar in .NET 4. But like I said, I only took a brief look recently so I'm still gathering information and learning. I'm glad to hear MVC/Razor is very lightweight and I will definitely check out your course.
Cool. Do reach out if I can help explain and support.
Hi Scott. Thanks for doing the AMA.
You came to Abstractions Con in Pittsburgh back in 2015. I went to the conference but missed your talk.
I've followed you about on Twitter and I remember, I am hoping correctly, that you mentioned taking a vacation and trying to reconcile the feeling that you may lose your house when you did with the fact that you now have that option without losing everything.
Have you been able to reconcile this? What would your advice be for people who have come from meager means to getting a developer or other tech job that affords you the luxury and privilege to do things like take a vacation?
It's hard and it never really goes away. I have some money but I also have issues with concerns around food security. So I save. A LOT. I spend very little and I shop at Goodwill/Thrift shops. I repair old computers and pay it forward and give them away.
And when I DO take a vacation (I am doing this soon) I remind myself every morning how AMAZING it is that I get to take a vacation and I EARNED IT. You did too!
That is awesome, and definitely something I want to do in the future. Would love to read more about that if you're willing to share.
How do you continue to keep engaged with the various issues impacting tech today?
Have you burned out and if so, how did you overcome it?
I burn out a little bit, but I try to avoid Major Burn Out. I just turn off. I didn't email or code for a week last month. Just tuned out. This December I'll take at least two weeks off and work on ME. Self-care matters. If you can (given economic factors, etc) you gotta just UNPLUG. Gotta unplug before you plug back in and keep engaged.
What's your go-to unplugging activity?
Competitive Sleeping! I can sleep at the Olympic level. ;)
I play with my kids, my Nintendo Switch and Xbox, walk, Marvel movies, Netflix, work out, books, 3D printing.
How do you like remote work? Is it ever lonely?
It's definitely lonely. I try to get to get out of the house in someway every day. Even just sitting at a cafe is enough to feel more connected. I also do Skype Pair Programming and Google Hangouts. Sometimes I'll just Skype a co-worker and put them on another monitor and we'll work together quietly, like cube-mates.
Do you feel that the benefits of remote work outweighs the loneliness, given that you can beat the loneliness?
Yes, if only in the flexibility of hours. You can work whenever (although studies show that Remote Workers tend to work more hours than non-Remote) and sometimes take Friday afternoon off.
This is a really great idea. I think I will do this eventually with the team.
Getting to a cafe is something I am looking at doing as well, perhaps a library too.
Even the Mall. Just to feel the electricity and be reminded that there are other humans.
Can you pitch me on Skype and/or VS Live Share? I've not yet used the latest and greatest, but would love to hear from someone in the know. What's on the horizon that I should get excited about?
Totally forgot about VS Code live share.
VS Code Live Share (when broadly available) is gonna be amazing. I have a podcast on it in a few weeks. It's so much more than "google docs for code" that some other editors have. You can do simultaneous collaborative debugging...but without installing any of the dependencies. Think of it as "can you look over my shoulder at this code" but without screensharing. You can explore the code, goto definition, refactor, debug and more.
Thanks so much for doing this, Scott.
When I met you, you recommended to me the great talk by @anjuan Lending Privilege and I wrote about it here.
What's the next talk you'd recommend?
P.S. if you have a YouTube link for the talk, you can drop it in dev.to via this syntax:
{% youtube 9z-Pdfxxdyo %}
😁Thanks again.
I'd say Anjana Vakil's Learning Functional Programming with Javascript
Thanks a lot. This will be timely to share with the team too.
Thanks for recommending me to @ben , Scott! I don't think I can run out of great things to say about you. You're a great friend and a treasure to the tech community. Thanks for everything you do!
That's the great thing about Lending Privilege, my friend. It can be circular and self-sustaining!
🙌
Any tips for us at dev.to to keep pushing and improving on our mission to be an inclusive environment for all the devs of the world?