00:00:20.810
All right, hello everyone! I'm William Horton, and this talk is titled "We Don't Code Alone: Building Learning Communities."
00:00:26.390
The main question I want to answer in this talk is: how can we build communities that learn together?
00:00:38.850
This is a question I am really passionate about, and the reason for my passion is simple: I owe my career to being able to learn.
00:00:45.180
Not only to learn, but to learn with other people and to be a part of communities that helped me grow as an engineer. To start off, let me tell you a little bit about myself.
00:00:56.070
I am currently a Senior Software Engineer at Compass, a real estate technology company based in New York City. There, I work mostly on data pipelines and ingestion.
00:01:07.619
We're bringing in data about real estate listings, and my team is working to process millions of real estate listing updates efficiently, making them available to other applications.
00:01:20.369
But this talk isn't only about me; it's also informed by my experience from four years ago.
00:01:32.280
Back then, I was a Senior in college working on my BA in Social Studies. The only thing I truly cared about at that time was efficiently processing all the readings I had to complete each week.
00:01:45.569
You can see from the photo that I did a good job balancing my studies. I had a lot more hair back then! So, as I mentioned, I earned my BA in Social Studies.
00:01:59.610
You might wonder what that means; that's a fair question since, according to the Stack Overflow survey, it's not a common area of study among people in our field. It comes in at about 1.8%.
00:02:10.590
In essence, the degree aimed to take both classical and contemporary social theories and apply them to problems or questions that exist today.
00:02:27.840
That's kind of what the degree was founded to do, and I hope to share a little bit of what I learned from that with you today.
00:02:40.319
The degree culminated in a thesis, and this is the title page of my thesis which was about religion and democracy in Latin America. I am happy to share a copy if anybody's interested in this topic.
00:02:57.180
You would be the first to read it alongside my graders and my mom! However, if you're not interested in that topic, you might wonder about the relevance of religion and politics in the tech world.
00:03:08.850
I thought about that, and it hit me that in tech, we have evangelists and even dictators for life that we're hopeful are benevolent. We also have an affinity for interpreting ancient texts, and in our case, that refers to legacy code.
00:03:23.940
We gather to hear explanations about how to understand things that were written a long time ago.
00:03:30.810
This aside, I'd like to convey that social studies and the social sciences are not just for studying large groups such as religion and politics, but also to apply these theories to interests you have.
00:03:42.840
When studying in college, I took these debates and discussions that have been around for centuries and applied them to modern topics. Some of my classmates wrote about unique subjects, such as the history of actuarial science or the use of pig dissection in the medical field.
00:03:56.640
Their theories can inform anything you're passionate about, and today, we will focus on learning communities. In tech, we often refer to "the [blank] community." For instance, we are here as part of the Rails community or the Ruby community.
00:04:12.900
I wanted to investigate the concept of community and how it applies to the spaces we've created. In my experience, I've been part of many communities, starting with the Ruby community.
00:04:26.010
I came into this community through a boot camp, which was a formative experience. It was my first time writing code every day. Ruby was the first language I truly learned, and Rails was the first framework I became familiar with.
00:04:37.469
As I did more full-stack work, I also got involved with the React community and currently, the Deep Learning community.
00:04:41.909
These communities are not only formed around people but also around ideas and technologies that those people are interested in. This is where the intersection of learning and community exists.
00:04:58.320
The real question is: how do we make this work well? This is the question I am most passionate about, and it can take many forms, such as an open-source project, a company, a local meetup, or a remote study group.
00:05:10.050
There are many ways we come together, communicate, and congregate around the desire to know more. It's crucial to learn lessons from those who have thought about these ideas before us.
00:05:25.460
The summary of this talk is this: if I were to apply the lens of my undergraduate studies to my past four years working in tech, what insights can I draw from that?
00:05:39.840
To outline what I want to discuss, there are three main parts. The first will focus on community, examining classic and contemporary theories. The second will explore learning: how to develop effective educational strategies and how that ties into community.
00:05:56.670
Finally, we will put it all together, discussing communities that learn together and the questions that arise when we consider these ideas.
00:06:07.440
To start, we will dive into classic theories of community, beginning with some foundational thinkers in sociology. Ferdinand Tönnies wrote about "Gemeinschaft" and "Gesellschaft." My German is not the best, as I did not study it in college.
00:06:25.920
Another prominent thinker was Émile Durkheim, who wrote "The Division of Labor in Society." At the dawn of sociology as a field, they were interested in understanding different types of communities and how they change.
00:06:38.250
To discuss Tönnies, these German words translate to community and society. In his worldview, these were two distinct ways people gather: Gemeinschaft based on kinship or proximity, and Gesellschaft based on rational interests.
00:06:55.080
The latter includes things like business exchanges, trade, and formal law. These are ideal types in his system, indicating that groups contain both elements. Durkheim’s work centers on mechanical versus organic solidarity.
00:07:07.750
Mechanical solidarity stems from shared similarities in homogeneous societies, while organic solidarity arises as societal roles differentiate, increasing the need for laws and governance.
00:07:18.949
So to apply both of these concepts to our context today, we can ask what lessons we can draw. One takeaway is categorization; tech communities often cross usual boundaries.
00:07:31.180
They exist both in-person and online, crossing national borders, and may encompass personal or professional interests, potentially complicating their categorization.
00:07:46.799
Additionally, they can be founded by paid staff or volunteers, making it difficult to draw distinctions between them. Another important idea, running through both Tönnies and Durkheim, is the balance of personal versus rational interests.
00:08:03.870
In these communities, we desire kinship; we want to feel connected to others, especially when attending conferences and hearing talks. There's comfort in realizing that others share similar struggles.
00:08:17.119
However, we also have rational motivations, such as a desire to improve our jobs or overcome challenges, like lengthy migrations. This combination is prevalent when we come together.
00:08:27.699
The communities we inhabit today form amidst great social and technological changes, paralleling the context in which Tönnies and Durkheim wrote about community.
00:08:43.330
To make the discussion more contemporary, one significant paper sought to define community elements: membership, influence, integration, fulfillment of needs, and shared emotional connections.
00:09:00.349
I’ll discuss how these relate to the Rails community. Membership can be broken down into crucial elements, one of which is emotional safety; truly vital to any community's health.
00:09:14.820
People want to feel safe and comfortable, meaning we must establish boundaries without excluding others, which is a challenging balance.
00:09:28.380
The second element, influence, is paradoxical, as individuals want to feel they can influence the group, but the group's norms also influence them. This dynamic is essential for community cohesion.
00:09:39.480
An illustration of this is DHH's essay "Rails is Omakase," where he points out that while some elements of Rails are pre-selected, there's still room for individuals to express their unique opinions.
00:09:55.750
Integration and fulfillment of needs involves coming together around shared values. In the Rails community, there are values explicitly laid out, which helps newcomers understand what the group stands for.
00:10:08.350
Finally, shared emotional connections are rooted in a shared history, illustrated by experiences like memorable videos or Git commits that record our journey.
00:10:20.200
The last source I want to address is building successful online communities, highlighting the importance of social science in creating thriving online spaces.
00:10:37.780
This paper outlines strategies for starting a community, encouraging commitment, contribution, behavior regulation, and dealing with newcomers—key components of healthy communities.
00:10:51.400
They note that having friendly interactions with new members as they join is crucial for their long-term retention. Additionally, allowing newcomers to experiment without repercussions can help cultivate an inclusive environment.
00:11:03.540
Now onto learning. Having understood ways to think about community, how can we connect that with learning? Many people come to Rails to learn how to meet their needs, just as they do with Ruby and other technologies.
00:11:26.470
A key thinker in this area is John Dewey, who was an American public intellectual. He emphasized progressive education and the importance of learning by doing.
00:11:38.320
In his book "Democracy and Education," Dewey discusses how social groups play a vital role in sustaining education and ultimately democracy. The group can't survive without mature members aiding the educational growth of newcomers.
00:11:51.820
Important too is the emphasis on activity. Dewey illustrates this concept by explaining that we learn best through concrete experiences, rather than just reading about concepts.
00:12:02.780
Another powerful concept comes from the book "Making Learning Whole." The author presents several principles such as playing the whole game, making the game worth playing, and working on the hard parts.
00:12:15.740
One principle, "Play the Whole Game," argues that students should engage in the entire system, not just learn isolated elements, which is often how traditional education operates.
00:12:29.070
For example, in baseball, people should enjoy playing, running bases, and hitting balls. Dewey believes teaching should introduce the whole system rather than focusing on core basics beforehand.
00:12:43.829
Rails exemplifies this well. Early on, I used a book that let me build a full application, integrating numerous elements without isolating any single aspect.
00:12:55.960
Many experience a threshold when they finally grasp a concept, such as seeing a live Rails application serve data.
00:13:07.070
Another principle emphasizes learning from teams and others. Dewey argues that we rarely learn in isolation; we are connected through various inputs.
00:13:19.850
Pair programming demonstrates that learning in collaboration yields significant benefits. Meanwhile, Dewey points to the value of cross-age tutoring, which has parallels in the tech community.
00:13:31.840
We tend to consider knowledge transfer as a one-way street, but learning can occur in both directions. Newcomers can bring invaluable insights and experiences as well.
00:13:44.890
The last point he emphasizes is learning the game of learning. The key takeaway in our rapidly evolving technology environment is that we need to learn how to learn.
00:13:58.140
Rather than mastering one specific technology, it's crucial to build adaptable learning skills—skills that will evolve as the technology does.
00:14:10.830
In the context of programming, we should say that promoting self-directed learning helps future growth. This means empowering others to navigate their paths rather than dictating them.
00:14:23.020
Wrapping everything up, we’re discussing theories of community and education, and how they relate to our learning communities.
00:14:36.190
In practices of inclusive learning, I highly recommend Peer Henson’s book on social architecture. His focus on social architecture parallels the vital role of software architects.
00:14:51.300
He emphasizes the importance of being intentional about creating community spaces—designing clear entry points so that people feel welcome and safe.
00:15:05.000
The question of whether we should even design communities arises; some argue for organic growth, while others highlight the innate norms and values present.
00:15:19.060
Given that we spend so much time in these groups, it’s essential to not leave their structure to chance. Norms will arise regardless, so it benefits everyone to clarify those values.
00:15:33.080
Another essential aspect of our learning communities is ensuring they are inclusive. We must strive to make the spaces feel welcoming for all individuals, particularly considering societal biases.
00:15:48.320
Traditional educational paths remain unequal, with underrepresented minorities often lacking access to tech classes, impacting their opportunities in the field.
00:16:03.390
As we create learning communities, we must consciously design plans to welcome people from all walks of life. The Ruby on Rails community has embraced a code of conduct to help define the expected behavior.
00:16:15.960
Ensuring that these explicit values exist helps newcomers feel like they belong. Similarly, companies like Recurse Center emphasize crucial social rules that foster inclusivity.
00:16:29.650
In summary, we want to foster belonging in learning communities. We cannot effectively learn or teach if there's behavior or ideas that make others feel unwelcome.
00:16:43.360
We want to take ownership of our learning; as facilitators of communities, we should give people opportunities to engage actively.
00:16:57.250
Finally, we need to understand the bigger picture; learners shouldn't become restricted to any path that doesn't connect to overall goals.
00:17:11.840
This importance drives the conversation today because we need to seize these ideas as we shape our communal experiences.
00:17:24.870
As a conclusion, this talk is just the start of a conversation. I wrote a thesis that took nearly two years; this talk comes from a few months of research.
00:17:36.490
The goal is to ignite discussion around applying these concepts in this setting. To close, I'd like to share a quote from a community studies paper.
00:17:48.060
"Somehow we must find a way to build communities based on faith, hope, and tolerance, rather than fear, hatred, and rigidity. We must learn to use our sense of community as a tool for fostering understanding and cooperation.
00:18:05.990
We hope that research on this topic will provide a base to facilitate free, open, and accepting communities. Let's work together to build the world we've been dreaming about."
00:18:18.170
Thank you!
00:18:30.800
And we have a couple of minutes for Q&A.
00:18:34.400
That's a good question. When we think about online communities, what sites come to mind?
00:18:38.670
For me, like a lot of programmers I interact with, it's Twitter, where there's an active community sharing ideas.
00:18:46.470
Definitely the Rails community and React as well; I spend quite a bit of time engaging with those.
00:18:54.550
There are also platforms like Hacker News, although they would require a separate discussion.
00:19:03.890
Thank you!
00:19:18.670
[END]