1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | So over the years, I start to think about that it's like we're traveling a path; as we're traveling this path working toward better programmers, but also becoming better people working together You might think of it as a path toward enlightment; growing as human beings. This is really my personal philosophy which I'd like to share with you So the first thing is, that the center of every open source project is really the people. The code is important; but the center is the people. Different kinds of people: People who code, who writes docs, who writes test. Users, too, are important for a project. People who work on the software that project uses -- you'll be using projects from other people, and you might want to send them a patch. Maybe you're writing a library or a module, and other people will be using your software and communicating with you as well. Why do people work on open source softeare? Because this is a very important questino to understand how open source work. Maybe in people's day job they work in code, and they work in open source to work on exciting and new things We share as we increase the fun together working on open source projects People work on open source to "give" to others, we're reaching out as human beings, this is an important part of being a human. There are many reward; we draw people in, they receive from it as they work on software -- One of the big ones is respect The reason for people to create something new is that people recognize who you are and what you acapable of, and that gives you a sense of accompolishment So make sure you show respect to them in any way you can, because it helps them to stay invovled. Another important aspect is appreciation; as people do work; talk with them: Even just a simple thank0you email message "it meant a lot of me" brings about culture of motivation to keep everybody motivate. Credit is also important; as you talk to other people, you mention other people around you saying "this person did such a wonderful thing" so we build a community feeling together. One of the things that keeps people interested in open source is that, as we work together, we become stronger and can do more part of it is math: 2x people makes at least 2x code, 2x people makes 2x code, but there is much more: When we work together, we can make each other stronger and better -- part of that is encouraging each other; as you see people workigng on a very difficult problem, you can encourage them saying that "you are doing great and I see you will do great in the future" you can empower them just by talking and sharing with the and then also there's the fact that when you have many people together; they'll have different set of skills. we you ar eworking togethre, maybe you know the five things you need to know and they know the other five things and so you have the complete set of ksills so it's not only linear effect; there's am ultiplication effect when we start working together. Encouraging each other to look beyond into the future is also important -- inspire others to solve problems. Sometimes just saying "I have an idea" is enough for someone else to make it in reality sometimes you look at what someone else is doing -- you have not do all the work but you have on idea they needed so they can reach out and go gurther. So the key thing working on open source is that we're not just standing alone. When you are working with other people, the main thing you want to improve is your communication skills. We communicate about the plans we have, how we want to make the software, your personal plans, like the feature you want to work on One of the things I see is that in open source, people often have good plans to create software, but they clash and fail to communicate So if you work on one plan without communication you may end up hurting the other plan It's like a hive of bees -- a constant buzz keeps us all functioning You'll find that you often communicate about possible futures -- what's the best way to solve a problem? In this you can communicate in a way that's contentious and angry, and making it very ahrd to make progress. One of the things we're learning in our process is how to embraces all possibilities working on the possibility you imagine, but remaining fully open to other possibilities other people may bhave As you make progress, you'll also be communicating constantly aout whsat you have done -- email, twitter, there are many ways to let people know. Sometimes we may feel like shy or not "bragging" but that's not what it is! It's good for the peoject and for the people as well because they can learn from what you hav done. Another communication skill is the ability to ask questions -- the advantage of having a community is that it may happen that people have solved your peoblem before asking a questinon on a forum or irc may save you days of work. In the same way, when others are learning, you can be responsive, you should not put down them like answering with "RTFM" for simple questions maybe it'd save the question asker a bit of time, but it taught that person that they "sholdn't ask questions" that's not what you want to teach with your people -- you want to teach them to communicate with others. And learn how to make answers that are helpful to people, and help them see that they can walk down the path as well and take the path further. Sometimes you have to criticize people; there are ways that are right -- the best way to get people to change is to answer nicely so they can learn You have to give you some grace if they're not doing very well. Some people may be harsh with you, but it's also part of a path -- sometimes it helps to have a thicker skin -- even if other people should have said it nicer and better, maybe there's a bit of truth you can learn from Even if they speak in a way that is note polite, you can respond politely. The other part about communication is not about talking, but also listening -- not only telling what we think -- sometimes that means just sitting very quietly and let others talk It's not just listening -- it's empathy. "If you really want to understand someone you have to walk in their shoes (so you get the blisters they have)" Some people think you have to be a genius to work on open source -- but that is _not_ the truth there are Larry and Guide and Linus but there are so many things any projects needs -- no matter how smart you are it's important to stay humble. because in humility you will be open to other people and see new way of doing things. By doing that you will welcome other people to your project; Pride is essentially telling people "I don't need you; I can do things my way" And by being humble we also welcome in new people, so there's diversity in gender, in culture, a richness in open source by opening to different kinds of people there's also differences between different projects; it's almost illike languages and cultures of a country; Linux, Perl, Ruby, Python community all communicate and collaborate differently Maybe we can see our project is not the only way -- maybe you can appreciate the ways other community are doing Now open source is not all fun -- it's fun, but it's also a responsibility when you agree to particiapate in a project, you're taking a weight on your shoulders, and it's a good thing that teaches us to be better humans but Life can get in the way -- husbands, parents, childrens, jobs -- we may accepe responsibility for a time, but maybe we will realize one day where we can't carry it anymore there's a cycle, where you start taking more and more of a role in a community, and as life goes on you gradually takes less and less, but it's natural, it's a normal cycle of a project so keep in mind -- who will continue my work when I no longer have time? so it's a continuous process -- part of our work iw teaching and sharing the knowledge we've learned, as we learn more and more from others. it's a continuous process of gaining and sharing knowledge as you work on open source, be happy, with a smile on your face, and make other people happy! because the happiness is what gives us power to make great hings thank you! any questions? Do you feel happier now? thank you very much! |
Direct link: https://paste.plurk.com/show/1008460