字幕表 動画を再生する
-
That's it!
-
Now I'm a star.
-
I'm done!
-
Thank you.
-
Okay, today I'm going to be talking about JavaScript is for everyone.
-
That wasn't supposed to happen!
-
And also that wasn't supposed to happen!
-
Okay, hello.
-
I'm Kenigbolo Stephen, a lead and advocate.
-
I'm also the community manager for Code Afrique story, and I will tell you about the Code
-
Afrique story and why JavaScript is for everyone.
-
You can find me on Twitter.
-
Please don't ask me how I came about that handle!
-
It's one of those things I don't really want to talk about!
-
But, yes.
-
I work in Finland.
-
Who knows about Finland?
-
That's nice.
-
This audience is way better.
-
In Finland, we don't smile, so it is do you know about Finland?
-
That's pretty much it!
-
I'm going to be talking about JavaScript being for everyone.
-
This is basically how it's going to go.
-
I will talk about what Code Afrique is, why we do what we do, an important disclaimer:
-
you may not like a lot of the things I'm going to say today but I think it's important to
-
state these things.
-
There's been a huge dysfunction between teaching JavaScript and getting beginners into the
-
industry.
-
I'm going to talk about the team behind Code Afrique.
-
I'm going to be telling you how we teach JavaScript.
-
I'm going to tell you about Amber, how the conventions of configuration have changed.
-
Beginner concepts that we used Ember to do, and a history of where we came from and how
-
we decided to go with this.
-
What is Code Afrique?
-
Nothing fancy, just giving back to the community.
-
It's a bunch of students, doing a masters in software engineering.
-
We figured out the problem in Estonia and decided to get together to solve it.
-
I'm going to tell you what we did.
-
What do we do, and why do we do what we do?
-
Who understands what this means?
-
Okay.
-
Very few hands.
-
But this basically explains why I'm giving this talk.
-
In case you missed it in my previous slide, I used the word "under represented" highlighted
-
in red for a reason.
-
I would like to redefine this word.
-
I see myself as a marginalised person.
-
In 2015, I was doing a Masters in software engineering?
-
In Estonia.
-
We have a lot of people of colour in the country, not so many but a significant number.
-
The issue was it was difficult to get jobs, right?
-
There were a lot of people who wanted to get into the tech space and it was difficult to
-
get in and the reason was we had created this barrier for them, assuming that everyone had
-
the same cognitive abilities.
-
This is a bias, a lot of us have.
-
We don't necessarily do it intentionally, but this is it.
-
A random question: how many people who make tutorials or teach people think about learning
-
disabilities like ADHD, for example?
-
Very few hands.
-
How many people think about people who are not really able to learn not because they're
-
not smart enough, but because they didn't have the same privileges that you had?
-
Do you ever think of that?
-
How many people here got their first computers before 15?
-
Okay.
-
You see these hands?
-
I never got a computer before 15.
-
So, what whether I like it or not, I didn't get the advantages that others had.
-
This is why we came about Code Afrique to actually try to boost that gap and give people
-
the ability to actually get into the industry without thinking so much.
-
Yesterday, something happened, and I basically wanted to call out this.
-
I thought it was important.
-
I would like to change the narrative of we being under represented.
-
I quote Brian Lyells when he says you're not under represented before, you're over represented.
-
I'm sorry, but this is fact.
-
We are black, indigenous people of colour in IT, and we are supposed to be here.
-
We're not here as a quota, we are here because we're supposed to be here.
-
We don't want to use negatives to address ourselves in the industry, we want to be seen
-
as people managing our lives, not under represented.
-
Hopefully, I hope that by the end of this talk everything thinks this back and puts
-
it on the back of their minds.
-
Would you believe me when I tell you there are a lot of amazing ideas that because it
-
belongs to a person of colour or a marginalised community?
-
How many people actually believe this?
-
It is always difficult when you need to go and talk for funds when you belong to a specific
-
demographic.
-
It's not as easy as a lot of people think.
-
This it is one of the reasons where we decided we want to bring this community to get people
-
together, people who belong to these under represented groups and then teach them JavaScript
-
in such a way where they don't need to be so much worried about the toxicity we have
-
not industry.
-
They could just come and learn, and afterwards explore.
-
So, yes, like everyone else, I think we all deserve an equal chance.
-
It might not be nice, it might not be comfortable for some people, but we all deserve an equal
-
chance.
-
I'm not sure about pizza and - I'm a pizza person, so maybe the Americans may not be
-
so happy but I like pizza more than ... we're a bunch of regular people.
-
The folks who work at Code Afrique, that's Gabriel.
-
This is Sunday.
-
And this is Victor, all senior software engineers.
-
Two work in Canada and one works in Estonia.
-
We started Code Afrique together in 2016, and we've been going strong there ever since.
-
I'm going to give an honourable mention to a friend called Fortuna based in Estonia.
-
He helped us discover a better way to actually accommodate people when we need to teach JavaScript.
-
Now, one of the biggest things we found out about JavaScript and getting people into the
-
industry is the conceptions of pure evil.
-
One of the preconceptions is that JavaScript is easy.
-
You can say that when you're not a beginner.
-
If you've never written a line of code, programming is never as easy as you think, and this is
-
something I want us to remember when you have to teach people.
-
The fact that you understand it does not necessarily mean they will understand it the way that
-
you do.
-
The fact that you have the ability to assimilate things does not necessarily mean they would
-
have the ability to assimilate it in the way that you will.
-
The JavaScript community out here, there is no control of people grasping the concepts.
-
This is not the fault of JavaScript but down to the fact that people learn differently.
-
Where we've made the mistake is not taking time to find ways to accommodate the different
-
type of people who need to learn.
-
We have been very mainstream in the way we teach JavaScript, and I'm hoping that, as
-
we go back today to mentor people, those who have junior developers, we take this into
-
consideration about who we are teaching what the situations might be.
-
Sometimes, it's not only about learning disabilities, it could be emotional, mental, physical.
-
Let's always put that into consideration when we need to teach.
-
Now, JavaScript does not have to be complicated as much as we tend to make it complicated.
-
I strongly believe it doesn't have to be.
-
JavaScript is a beautiful language.
-
I didn't come from a JavaScript background.
-
I came from a C++ background but of since I got here I don't want to go back because
-
I love being here.
-
However, we have created a barrier that makes it difficult for people to come into the industry,
-
and just before I go, a quick question: how many people here work in front-end development?
-
Awesome.
-
That's a lot of hands.
-
Okay.
-
This should have been named JSConf front-end!
-
How many people as front-end engineers have had to traverse a binary tree in their regular
-
day jobs?
-
That's very few hands.
-
I can't even count.
-
How many have had to use the big notification in the regular jobs and front-end engineers?
-
Also very few hand.
-
Now, think about it: why do we need to actually make beginners scared of getting into the
-
industry by bombarding them with all this information instead of getting them in and
-
easing them into learning?
-
Why can't we do that?
-
Why do we always have to make it so complicated?
-
So we designed a simple way to actually teach beginners, and it's basically this: because
-
whether you like it or not, these are the three building blocks of JavaScript.
-
The moment you can understand these three concepts, it makes it easier for you to go
-
on and explore different other things.
-
We basically decided to use the pattern explaining variables and objects and methods going through
-
this way.
-
We think it's easier.
-
It has worked for us and enabled us to get out the 15 students we initially take, get
-
nine of them into the industry, they're good engineers, they're still young, they still
-
have a lot of time to improve, but they're learning, and it has shown us that there is
-
a possibility to actually ease people into the industry without necessarily complicating
-
the entrants.
-
We need to think about the different type of people.
-
We need no to think about the different communities and find a way to get everyone in without
-
necessarily unintentionally excluding them.
-
Now, the biggest problem we face when we need to teach people, and this is not - this is
-
by no means me lashing out at anyone, or any particular thing, I'm just saying the JavaScript
-
community has grown so big, and something that is supposed to be a huge help for us
-
has unfortunately turned out to be a problem, and that is that?
-
This is it.
-
Yes.
-
And, again, pretty much frameworks.
-
Frameworks was supposed to make software development easy.
-
Frameworks were basically - we started building frameworks to enable people become productive
-
easier.
-
Unfortunately, we have started making frameworks that by making it more complicated for people
-
to get in, and this is now not a lash-out to anyone or framework.
-
In my team, we use four different JavaScript frameworks for different projects.
-
Every one has its pros and cons.
-
I think that it's important that when we build this, and even when we make tutorials, we
-
take into consideration the different type of people that need to learn.
-
Now, I like Ember, and I'm going to make a disclaimer: I am not sure I'm not connected
-
to Ember.
-
I'm only speaking it in the context of how we use them by giving people simple instructions.
-
There's something very controversial about Ember.
-
I wouldn't say controversial but a diverse opinion.
-
It's a convention over configuration.
-
A lot of people feel that this is not so good.
-
And that's not justified.
-
They have their reasons.
-
A lot of people do believe that conventional over configuration is quite important, and
-
they have their reasons.
-
Now, starting in Code Afrique, we actually went ahead to teach people in terms of the
-
different things that we needed to show them.
-
What we discovered was that it was easier to actually use Ember because we could give
-
them a set of instructions to follow.
-
One of the most important things you enjoyed as a beginner was writing the line of code
-
and seeing it work.
-
We gave them an opportunity to see their work progress, enjoy that excitement, and then
-
go on to dig deeper behind the basics, why this works the way it works, with , instead
-
of working in the reverse pattern.
-
So typical pit stalls we encountered with trying to use frameworks.
-
Lazy-loading.
-
Too many computer science concepts that is front-end development.
-
It doesn't have to be so complicated.
-
Come on.
-
Some frameworks seemed to be front-end frameworks designed for back-end developers.
-
A lot of people here can agree with that, I'm pretty sure we've all seen it.
-
You probably know what I'm talking about.
-
Yes, and then some things aren't designed for beginners, it's true.
-
As much as we would like to say it is, it's just not designed for beginners.
-
It's not beginner-friendly.
-
There are tons of other things but I will skip that and talk about the basic ones.
-
At this point, I'm going to play a nice video.
-
Hopefully, the musical part is actually removed.
-
This was a video made by one of our students and I promised him I was going to play here.
-
>> Thank you.
-
God bless America.
-
[Applause].
-
>> It's a representation of how the different technologies and frameworks.
-
[Video]: "Nice to meet you.
-
What's up, Graham.
-
You know this.
-
Heath Williamson.
-
Nice to meet you, sir.
-
Come on.
-
Come on.
-
Emily George.
-
How are you doing?
-
All right.
-
Never forget about that.
-
That's all we got.
-
Nice to meet you.
-
All right.
-
Oh, bring it in!
-
Starting from the bottom now we are here.
-
Nice to meet you.
-
All right.
-
All right.
-
Nice to meet you.
-
One - bring it in there.
-
[Voices overspeaking].
- <