[Music]
Hi everyone. Welcome back to this
session in Ballroom 1. We got Michelle
up now. Uh she's from Microsoft and
she'll be talking about code without
barriers, inclusive Python development
with AI.
Hi everyone. Uh, thank you for coming to
my talk because I appreciate there have
been quite a few that are about
diversity and inclusion and we're on day
three so maybe you'll you know most
people might be done with it. Um,
does anyone I was thinking this morning
does anyone else appreciate the
difficulty of speaking on day three? Do
you know what I was most worried about?
What it apart from the everyone said it
before?
I was actually just super concerned
because every single talk I saw was so
good and I was getting stronger and
stronger in imposter syndrome and I was
like how can I even say anything? But
I'll give it a crack. Bear with me. I
definitely guarantee at some point I'll
just start telling stories and I hope
they are funny and interesting as
opposed to just me rambling.
Uh if we are not already connected then
you can find me on all of the socials
there. I uh work at Microsoft. I've
worked there for almost 13 years now.
When I came to this country in 2010, I
started working for a company called
Programmed Group. Does anyone know them?
They have like a bunch of companies
under them including programmed
facilities management and some
recruitment and all of that. But I
wanted to, you know, assimilate and
become really Australian. So I thought I
needed an Australian company to do that.
But I did miss the the big big company
culture because before that I'd been
with IBM and before that I had been with
Anhouser Bush InBev. Does anyone know
who they are?
Yes, they this is the beer drinkers in
the room nodding with me.
They are the largest brewer in the world
by volume. And if you are early in
career and you're thinking about how do
I know which company to work for? When I
was your age, I thought uh well the best
way is to think about what you would
like and what makes you happy and work
for a company that makes that. So
I had many happy years there and they
did give us a slab in fact four slabs
every quarter.
Yes. This this was a legacy thing that
came out of the fact that initially
before they were doing that there was a
rule that if you worked on a brewery
site you could just drink as much as you
wanted from the vat during the day.
A and the problem came when too many
people drowned in those vats whilst at
work. So they had to stop it and say we
won't take away the benefit but you need
to take it home with you and consume it
there. So yes, good years. Good years.
Anyway, oh the other thing is um Oh
yeah, Rene Renee said to me this morning
she was speaking to someone who said,
"Is Michelle famous?"
I just wanted to clarify Michelle is
famous adjacent.
So I do speak at international
conferences. Famous people know my name.
I know Scott Hanselman. I know
Markinovich and Donna Saka and they know
who I am. But I wouldn't say that I have
like millions of followers and that. So,
if you could help me out, if
if you do, all of you subscribe to my
YouTube channel, I'll have 700. So,
that'll be good.
Okay, who gets to code in the future?
Everybody, that should be the answer,
right? If if you were thinking anything
else then um that's that's not good.
Okay, we write the code that the world
runs on and the world is very diverse
but the tech industry is still not which
is always such a bizarre thing to me
because it should be the most open and
diverse field. You can do what we do
from anywhere in the world as long as
you have an internet connection and a
laptop. So really anyone should be able
to do it. You can do it whatever hours
of the day or night you want to do it.
So if you need to drop off kids at
school or if you need to take care of a
aging relative, you should be able to do
those things and then just get your get
your code written when you have some
free moments, not when not between the
specific hours of 9 and 5. And you
shouldn't have to be sitting in an
office to do it because none of that is
important. I think it's a tremendous
career for everyone and I'm always super
excited to try and get women and the
next generation into tech careers
because it is just such a great field to
be in. Um, that's where our code without
barriers program came from. Now, there
are a lot of programs around this
country that are designed to help people
get into code. So, Code Dojo is one of
my favorite. That's for children aged 7
to 17. Uh mostly you see those out of
the universities. So you have a lot of
student mentors running them and you
also see them now in libraries and in
schools. And it's really great because
of course there is no barrier to entry
either. You could start coding when you
are as young as six or seven. Uh there's
a excellent TED talk on the internet by
a young boy called Thomas Suarez who at
the age of seven wrote his first app. It
was a whack-a-mole game that you could
hit Justin Bieber over the head with a
hammer and he earned enough money from
that game to buy his own Xbox.
Now imagine if your seven-year-old
children were already earning enough
money to buy their own consoles. Um, by
the time he was 12, he had three more
apps and his own company. Obviously, his
parents needed to help with that, but
still. And I just think compared to us,
many of us, I'm definitely looking at
some people who are in my generation in
this room. We did not have the internet
when we were at university. It did not
exist yet. Google did not exist yet. Um
when I was in high school there were
some computers but they were only for
spreadsheets. You know it was uh a
different time than they are growing up
with now. Uh there's a lot of women's
coding communities. So my friend and
colleague Renee she is the founder of
girls programming network and a group
called tech inclusion. Uh there was
sheodes Australia. My other friend Kate
Kerwin runs that. Uh obviously Microsoft
has code without barriers. Uh there was
a there's several more. You might see
them in some of the pictures uh if you
can squint really hard. Um but yeah,
there's plenty of communities that you
can be involved in. Plenty of
communities that you can help. They all
have the same mission. Open it up so
that we have this more inclusive and
diverse group of people that are coding.
I feel like I'm preaching to the choir
at PyCon because obviously there is no no
more inclusive coding community than
Python coders. But uh glad you're here
to talk about it anyway.
Uh did I? Yes. On the next slide. So
here's some nice pictures. Look, I put a
star around Renee's face
just in case you weren't sure who she
is. She is hiding with a mask on. So,
you know, but she is there. That is her
face.
Okay. So, these I suppose they're not
really foundations, but they are things
that all communities tend to do to try
and make a safe and welcoming place and
to try and enable and help uh the people
that join them to be part of it. And the
way that they go about these things can
be different. So, Girls Programming
Network, it's all girls um teaching
girls, right? It's um a really safe
space because it is uh a place where
they know they don't have to face anyone
outside of other girls. Uh in she codes,
you can be a male mentor in there. And
it's it it is really wonderful because
it is great if you are a man who is a
great coder to use your privilege to
enable women to level up and code. And I
think it's one of the the coolest and uh
relaxing places for me to go even though
I hate people. Oops, sorry I said that
out loud.
I find it stressful to be amongst people
all the time. But and you know in
communities like this in communities
like she codes like GPN I feel like I am
surrounded by people that I trust and I
don't need to fear. And that is the the
safe space that everyone is in. And so
uh there are plenty of ways that you can
get involved even if you are a white
man. Um,
uh, positive marketing was the other
thing I wanted to call out. This
conference doesn't have an official
photographer. Uh, Jack was telling me
that all the sponsors came in at the
last minute, so they didn't know if they
had enough money for a photographer. So
he's running around with a camera and
also he's relying on people to make
posts on social media saying what a a
great conference this is and what an
inclusive place this is. So um one of
the problems I think with why there are
less women and girls in tech careers is
marketing. When you look at a lot of
conferences, what you see is photos
mostly of men. And when women look at
it, they think, "Oh, that is not a
conference for me to go to. That is not
a safe space." So if you are here at
this conference where it is very diverse
and inclusive, then take a picture, take
a selfie with some people around you
showing what a friendly nice place it is
and post that up on your preferred
social media so that the marketing that
goes out there is that this is this is
the place to come. This is a place to be
amongst people that will be kind to you.
um change that that image that says
coding is for boys
um not for girls. It's import it is
important because I think it is like the
whole blue aisle pink aisle thing is
part of what have driven driven this
wedge between us and there's no need for
it because we are better together. So
yes, each of these things to try and um
to try and uh build a community and keep
us safe and inspire us and level women
up, but not just women. I guess level up
every area that you see as being lesser.
I think in tech careers generally, we
need more people in total. Not just more
women, but more people in total. And
also it is a great career for people who
are later in life to change into as
well. So uh in Australia definitely I
think retirement age is a bit of a
blurry line. We might not I think a lot
of people start to worry they might not
have enough money in retirement. Why
shouldn't they learn to code and do a
little bit of projects on the side? And
I think that's a lot easier than having
to do something manual in your old age.
So encourage your grandparents to learn
to code. I have seen them at coded dayjs
in fact learning a volunteering to be
mentors but helping the kids uh code as
a way to spend time with their
grandchildren. Never too late to learn
to code. Okay. So in for the code
without barriers program which was
launched in Australia and APAC well Azan
first and they had tremendous success.
So 780,000
women were skilled in that first year.
373
got job placements and 500 million
reached via via socials by engagement
online. So you can absolutely
do a lot because there is a lot of there
is a lot of requirement for it. People
want it. They want to be part of it.
Python is a gateway language. I don't
mean that you should start using Python
and then move on to something harder to
to like you know get your kicks cuz
Python as we all know is the number one
language in the world and it is super
popular today. It um has in fact had a
huge jump again in popularity as a
result of AI rising because it is a
really really flexible language to use
with AI. Um, oh, I realized they said
stand out here. Don't stand behind your
laptop. Michelle, can you even see me
when I'm behind there? I'm so short.
Sorry. Um, Python holds the top spot.
Yes, because of um it is uh super easy
to use with AI, very flexible for that.
But these things as well are good
reasons why we often teach it as the
first language. It's has very simple
syntax. It has this already very
inclusive community and it has wide
applicability. Some of the biggest apps
in the world were written on Python. So,
it's super useful to teach all of these
new communities how to use Python. I
would say though um as they have said in
all of the um all of the diversity
stuff,
we shouldn't judge people who who like
other languages.
And I do say to the people that I am
teaching to go in those communities that
it isn't always
the first language that you are taught
that really speaks to your heart. You
know, um I was taught C++ in university
and I actually thought I was a very bad
programmer and I didn't understand it
and I should change careers because p
C++ makes no sense to me. I don't
understand how these people think. It
isn't how I think. But when I saw
Python, I was like, but this is it. This
is simple. This is clear. This makes
sense. This goes in order.
And I also like JavaScript because it's
a bit weird. And I think I'm a bit weird
as well.
And so I I'd say to them all if you you
know if you try it and you really don't
like it because it like nothing makes
sense then absolutely look at other
languages. You will find something else
that makes more sense to you and you can
go there but not on day one. I'll come
back to that later.
Oops.
Go forward. No, nothing.
Here we go. Oh, this is my little
Snickers. Snickers. Um, she is no longer
with us, I'm afraid, but she was a huge
vibe coder.
When I say she was a huge vibe coder,
what I I actually like we didn't even
have agent mode when Snickers was here,
but code completions, right? So, you're
writing your code and then all you have
to press is tab and enter to like get
stuff accepted. And she would like sit
there with her little paw on the enter
key for me,
which was very useful. But I do not
encourage these communities to vibe
code. I absolutely
am fully against it. Um, but I'm not
fully against it. I'm fully against it
for them. And uh I think a few people
have kind of gone over why um if you are
vibe coding well humans are essentially
very lazy people and given the
opportunity you're not reading all the
stuff that it is explaining to you about
why it's doing this and what it's going
to do and all of that. You're just
hitting enter and you're just thinking
yeah go ahead just do it and if it all
goes wrong I can just undo it. I can
just say undo and it'll all go back. So
there is absolutely no um you know
nothing on you to use your brain and to
think. And so if you start your career
in coding
using agent mode, you are not going to
learn. You're not going to learn about
architecture. You're not going to learn
about syntax. You're not going to learn
all of the things that you need to
learn. You will never be a great
programmer if that is what you start
your career with. and everyone all of
the news with the whole we're going to
get rid of all the the programmers
because you know everyone can do it now.
Truth is they don't want to. Our
business users do not want to code and
build apps. If they did they would have
been developers. They might play with it
for a little bit but they're going to
get frustrated when it doesn't do
exactly what they imagined it would do
because they don't know how to tell it
what to do. Whereas a senior dev does
know how to tell agent mode what to do.
So if you are a senior dev absolutely
check it out and go with it because it
is going to enable you to do what you
were going to do anyway a lot faster.
It's going to absolutely just get
through all of that boilerplate get
through all of that stuff but it will
follow your architecture and you can
guide it properly and you can do it all
faster. So uh agent mode for senior
devs, juniors, early in careers,
beginners, do not touch that.
Let's learn actively.
So, one of the biggest fears that I find
when I go into those communities is they
women will come for like a one-day
workshop and they will try to do it and
they will feel like they're getting lost
amongst the other people that are maybe
moving faster than them. I personally
cannot concentrate at all in a room full
of people trying to code and learn. So,
there's no way I'm moving as fast
through the tutorial as other people
around me. Um, and so one of the things
people will often say to me is,
"Obviously, I'm no good at this. I've
tried it and I'm no good. I shouldn't,
you know, what they said all along was
right. Girls aren't good at maths. Girls
aren't good at code. I should just go
back to the kitchen.
No one ever says that part actually, but
you can see that they're thinking in
their brain, I am not good enough for
this." Um, this thought comes from that
voice in your head. And let me remind
you that voice in your head is not your
friend.
Does anyone else have that voice in
their head that tells them they're not
good enough? That holds them back from
opportunity? Yes. Do not listen to that
voice. It is not your friend. Sometimes
it sounds like your mother or
Yes. But what I like to remind those
people is no one ever walked out of the
birth canal. It took you two years
around to learn how to walk, to learn
how to feed yourself and more than that
to learn how to be an independent
person, how to grow, how to, you know,
how to do anything. And yet we go in and
we do one day's worth of coding and we
say, "I can't do this. I'm no good at
it." That's a crazy thought. Don't
listen to that voice. Of course you
shouldn't be perfect at something the
first time you do it. Of course you
shouldn't be able to win a race. Of
course you shouldn't be able to write a
program. Of course it's going to take
you more than one day. And so what you
need to remember, what they need to
remember is that all of these messages,
all of these voices that say this is not
something you can do are not correct.
Just like everything else, start a
little bit today and then when your
brain can't take anymore, put it down
and come back to it tomorrow and do the
same thing every day for 20 days. And
then it you'll be surprised at how far
you have gone along that journey. And we
need to remind the women in our programs
of this kind of thing, but also we may
as well remind ourselves of that as
well. Stop being so harsh on yourselves,
you know?
Okay. Um, I also have I have created
like a little workshop online. Not
really a workshop, more like a thing
that I take them through reminding of
these things, showing them some things.
And I'll let you have that at the end.
The uh methodology, the um oh, what's
the word for uh when you put something
in a story to
I'm not saying it right. I'll tell you
the thing. So I've given them a you're
the baker and co-pilot is your sue chef.
So use it to learn not to bake the the
cupcakes for you. So you know um this is
the kind of scenario that I've I've
given them. So there's a lot of
references to sort of cupcakes and
baking and how you are to use the AI to
help you to enable you uh rather than to
do the stuff for you. It shouldn't be
there to replace you. It should be there
to enable you to learn better faster, to
understand stuff, go quicker, ask
questions, stay curious. It is a very
non-judgmental colleague. And so this is
the other thing I personally for many
years was very very afraid to ask
questions and like so there was so much
stuff I didn't know because I wouldn't
ask questions because I didn't want to
look stupid. This only really stopped
for me a a few years ago when one of the
early in careers that worked for me
would whenever she was in a meeting, she
would be the first one to put up her
hand in a town hall in a room of people.
She would put up her hand and she would
ask questions and she always had a load
of questions. And the thing is it never
made her look stupid. It made her look
smart. And I thought I bet I wish I wish
I had thought of those questions. And
so, but when GitHub copilot came along,
I was super happy chat mode because I
could ask it a million questions without
peering stupid. And I could ask it those
questions, it would tell me them. And
then when I had finally gone through all
of those questions and had it explain
stuff to me, if I still couldn't get an
answer or an understanding, I would take
that to a senior dev and they would be
like, "Ah, that's an interesting
question."
So I think it's a good thing because
your junior devs you yourselves if you
are early in career you can ask it a
million questions and then you can not
annoy your senior dev by asking those
million questions and then you can bring
your senior dev interesting questions
and so it's win-win for everyone.
um
have got like a bunch of questions that
you could ask it, but I'm uh they're on
the on the workshop site, so I'll leave
them there for you because I realize
that I am once again behind the
schedule. So, I was talking to Anthony
Shaw yesterday and he said he reminded
me that it's best practice when you're
mentoring people to not put your hands
on their keyboard. So when something
goes wrong, you explain to them what
they need to do, but you don't touch it.
You don't take it away from them and
say, "Oh, give me that. I'll do it. You
explain and they learn how to do it by
typing the code themselves." And he said
that agent mode was in fact the AI
taking the keyboard for them. And so
that's, you know, another reason why we
don't want
we don't want people who are learning to
use agent mode. We want them to use chat
mode.
So, use ask mode, stay curious, ask a
million questions. It will never judge
and it will never tell. It's also a
secret between you and the you and your
co-pilot.
So, here are the the ways that I always
tell them to go. So, I will often say,
could you get show me five different
ways to code this function? And um I
think that's super useful because when I
was at university, as I said, there were
no internet. We had a textbook and the
textbook actually only showed you one
way to solve the problem. And so either
if you couldn't afford a textbook or
even if you could and it only showed you
one way and you didn't understand that
way, then you were really stuck. Whereas
now you can see five ways. When it
initially came out, what I would do is I
would choose the way that made sense to
me and use that way. Whereas what I do
now is I look at those five ways and
then I will ask it to explain those five
ways to me and explain
what scenarios those five ways might be
better in and explain when you would use
those five ways. Um there there was a
really um interesting interpretation
that it gave me where I said which of
these five ways is better and it said
number four and I said but why did you
offer me the the best explanation fourth
rather than first and it said well if
you're a beginner programmer the first
one is where you are and that's how you
would code. After you learn these
concepts, then you might produce uh the
second one. After you become more
advanced than the third one, if you're
an enterprise level programmer in a much
more complex code base, then it would
make more sense to write it as level
four. And so it had yeah, very
reasonably given me five different uh
alternatives based on what would be
interesting or useful to me. If you're
using an enterprise license and it's
looking at the context of your
enterprise repositories, what it will
offer you is solutions in the context of
your organization's codebase. So you
will get the relevant code in the right
style for what you are trying to do. But
um for us now if you are a beginner or
if you are teaching beginners it offers
them a bunch of things and it teaches
them and enables them to learn about
each of those things and to understand
what those all do.
Uh okay next I did want to say because I
do often say explain it to me like like
I'm five because I want the simplest
explanation and a fun one. But I also
then said, could you explain it to me
like I'm a grown-up? And it gave me like
an enterprise architecture explanation.
And I thought, actually, this is super
useful as well. If I want to have a
serious grown-up conversation with my
senior dev, I could use this language
and these words to convince him that
this is the way we should do our stuff.
Okay. So now this is our resources page.
And so that is the workshop that I have
created.
So not the QR code that's I think still
my thing. So this link, these two links,
one is the full link, one is a short
link. It occurred to me that not
everyone trusts short links. So then I
put the longer link in. Um and I will
just flip and show you what that looks
like. So, we just have this little uh
website that I've written for them. Um
that's look that's the AI foundry sora
the video um playground created that
image for me. That's supposed to be me
with my dog, but actually it looks like
a giant dog in proportion to see it's at
thigh level, but it's like a little uh
poodle Shih Tzu. Um what else?
Oh, look how fun they're having in their
coding class.
The the one that I think has gone
through most of the stuff that I talk
through today though is that mind shift
one where I'm talking about it's your
baker. It's not your baker. It's the sue
chef. It's not going to bake the
cupcakes for you. Copilot is there to
help you bake better cupcakes. Um, and
then like some examples and stuff like
that all in the thing. So, you didn't
really need to make any notes because I
have put them all on the website. So,
you can just have a look. It's not um
it's not complete. I feel like there's
so much more I could be putting on
there. So, if anyone wants to um you
know contribute to the repo, then that
would be awesome as well. But otherwise,
I think we are totally done.
[Applause]