<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ Kylie Ying - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ Browse thousands of programming tutorials written by experts. Learn Web Development, Data Science, DevOps, Security, and get developer career advice. ]]>
        </description>
        <link>https://www.freecodecamp.org/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ Kylie Ying - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Mon, 25 May 2026 05:05:37 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/news/author/kying/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ What I Learned Teaching 20 High School Girls How to Code ]]>
                </title>
                <description>
                    <![CDATA[ On day 1, they barely knew what a float was. On day 14, they had programmed a game of minesweeper, a cipher decoder, or a zombie apocalypse simulation. And I helped teach them how to do it. Each summer, MIT hosts a program called WTP, or Women's Tech... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/what-i-learned-teaching-20-hs-girls-to-code/</link>
                <guid isPermaLink="false">66b0c4587abc6e46174eea11</guid>
                
                    <category>
                        <![CDATA[ learning to code ]]>
                    </category>
                
                    <category>
                        <![CDATA[ teaching ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Kylie Ying ]]>
                </dc:creator>
                <pubDate>Wed, 14 Sep 2022 14:46:14 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2022/09/pexels-pixabay-207691.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>On day 1, they barely knew what a <em>float</em> was. On day 14, they had programmed a game of minesweeper, a cipher decoder, or a zombie apocalypse simulation. And I helped teach them how to do it.</p>
<p>Each summer, MIT hosts a program called WTP, or Women's Technology Program. </p>
<p>In the program's own words, its goal is:</p>
<blockquote>
<p>"to spark interest in the future study of engineering and computer science among high school rising seniors". </p>
</blockquote>
<p>The program fosters a collaborative, women-focused community for those who have not had opportunities to explore engineering and technology.</p>
<p>This year, I had the privilege of being the Computer Science Instructor for the EECS (Electrical Engineering and Computer Science) track of WTP. This meant I would be teaching 20 high school girls how to code – none of whom had any prior exposure to programming.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/09/image-362.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>In two short weeks, I, along with four brilliant tutors from MIT, would teach them the foundations of programming in Python: data types, variables, conditionals, loops, functions, classes, and even inheritance. The last week of the program would be reserved for working on a programming project of their choice, putting their new skills to the test.</p>
<p>As the instructor, I spent over a month preparing the materials for the class. During the course (no pun intended) of the class, I spent three hours a day running lectures and one hour a day running office hours for the students. Here's what I learned along the way:</p>
<h2 id="heading-1-anyone-can-learn-to-code">1) Anyone Can Learn to Code</h2>
<p>Yes, anyone.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/09/image-366.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>On day 1, I handed everyone a Python cheat sheet. They looked at it with horror and intimidation (I will admit, the formatting was a little scary). But by day 8, we discussed the cheat sheet and the general consensus was that they understood almost everything!</p>
<p>The girls I taught came from all over the country, all with varying backgrounds and access to resources. By the end of the class, all the students felt like they understood the basics and simply needed more repetition.</p>
<p>Perhaps some students with more access to math and science resources grasped concepts <em>faster</em>, but those without the same background were still able to understand those topics eventually. It <em>did</em> take extra work.</p>
<p>These students often sought extra help with assignments, or voluntarily spent their time reviewing additional problems. Nonetheless, at the end of the day, they were able to complete the same tasks and projects as their accelerated peers.</p>
<h2 id="heading-2-community-matters">2) Community Matters</h2>
<p>When you learn with other people, it makes all the difference. A supportive, inviting community can help you answer questions, explain a concept from a different perspective, and remind you that the road ahead is tough, but you are all in this together.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/09/image-368.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Often, my students formed their own problem-solving groups to discuss approaches tackling different assignments. In fact, this collaboration is encouraged by MIT policies. </p>
<p>In these groups, when you discuss different solutions and weigh the pros and the cons of each solution, you are exposing yourself to new ideas and new concepts.</p>
<p>Ultimately, these will build problem-solving skills. At the core of programming, is problem-solving.</p>
<p>WTP created a unique community of supportive women, led by women in STEM. I noticed that the key to building a supportive and welcoming community is patience, understanding, and open dialogue–ensuring that nobody feels alienated, ridiculed, or belittled.</p>
<h2 id="heading-3-coding-takes-practice">3) Coding Takes Practice</h2>
<p>At the beginning of the course, I asked my students if anyone knew or was learning another language. Ten hands went up. Then, I asked my students if they could write a book in that language. No hands were in the air.</p>
<p>Learning a programming language is much like learning any other language. While it is critical to understand grammar, vocabulary, and syntax, these become intuitive with practice. </p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/09/image-369.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>But programming a script is much like writing a book (or maybe an essay). The idea and structure are as important as the language itself.</p>
<p>Words alone do not write a book. Ideas write the book, and language simply expresses those ideas. Similarly, conditionals and loops alone do not make up a script. Logic writes the backbone, and conditionals/loops tell the computer how to execute it.</p>
<p><em>How do I keep track of used letters in hangman? How do I find the index of the smallest number in a list? How should I represent this polynomial?</em></p>
<p>For a beginner programmer, these are daunting questions. For someone who has experience, these come with intuition. The only difference between the beginner and the expert is the time spent on practicing the skill.</p>
<h2 id="heading-4-teaching-is-rewarding">4) Teaching is Rewarding</h2>
<p>I could have spent my summer relaxing on the California coast. Instead, I chose to teach. I have no regrets.</p>
<p>Teaching is difficult. There is a saying along the lines of: <em>if you can't teach it, you don't know it</em>. Teaching forces you to fully understand a concept so that you can explain it in multiple ways to others. It is exhausting to repeat yourself over and over, hoping that maybe the concept finally clicks.</p>
<p>However, when a student has that <em>AHA!</em> moment when something finally makes sense, it is the best feeling in the world. To know that you have passed on your knowledge to someone who desired to learn it means you have given a priceless gift.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/09/image-371.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>I have been extremely privileged to go through an education system that values learning and to be able to attend one of the most renowned colleges in America. I attribute much of this to the teachers I had growing up. This is proof that teachers can have a huge impact.</p>
<p>At the end of the course, some of the students were excited to show their friends what they learned and to help then learn to code as well.</p>
<p>The act of teaching is exponential.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/09/image-370.png" alt="Image" width="600" height="400" loading="lazy"></p>
<h2 id="heading-in-reflection">In Reflection</h2>
<p>Initially, I was hesitant to be the instructor. It meant three weeks of my summer after graduation occupied by teaching. Twenty high school girls' introduction to programming through me, their thoughts about STEM influenced by how I taught my course. I was nervous.</p>
<p>However, reflecting upon the summer, I am extremely grateful to have had this once-in-a-lifetime opportunity to interact with and teach these students. I helped them learn not just how to program in Python, but also how to think like a computer scientist. It inspired me to continue teaching, especially in interactive environments where I could ask real-time questions.</p>
<p>At the very end of the program, the students created a monthbook and wrote cute notes to one another and the staff. Upon reading the messages addressed to me, I felt honored to be part of their introduction to computer science. They were just as inspirational to me as I was to them.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Data Science Ethics – What Could Go Wrong and How to Avoid It ]]>
                </title>
                <description>
                    <![CDATA[ Data science models are all around you. They could impact your admission to a school, whether you get hired (or fired), your work schedule, whom you date, whether you get a loan, what ads are shown to you, what social media posts you see, and so on. ... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/the-ethics-of-data-science/</link>
                <guid isPermaLink="false">66b0c4567abc6e46174eea0f</guid>
                
                    <category>
                        <![CDATA[ algorithms ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Data Science ]]>
                    </category>
                
                    <category>
                        <![CDATA[ ethics ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Kylie Ying ]]>
                </dc:creator>
                <pubDate>Thu, 16 Sep 2021 15:17:13 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2021/09/data-science-ethics-101.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>Data science models are all around you.</p>
<p>They could impact your admission to a school, whether you get hired (or fired), your work schedule, whom you date, whether you get a loan, what ads are shown to you, what social media posts you see, and so on.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2021/09/Slide3.jpeg" alt="Image" width="600" height="400" loading="lazy"></p>
<p>I have created a talk discussing the ethics behind data science, from data acquisition to modeling and algorithms. </p>
<p>In this course, I discuss what could go wrong from a moral standpoint, what has gone wrong in the past, and what guidelines the computer science community has created to combat unethical conduct.</p>
<p>This content is adapted from <a target="_blank" href="https://github.com/odpi/OpenDS4All/tree/master/opends4all-resources">OpenDS4All</a>. OpenDS4All is a project created to accelerate the creation of data science curricula at academic institutions. </p>
<p>OpenDS4All attempts to provide a combination of lectures, recitation or flipped classroom activities, and hands-on assignments to deliver data science and data engineering education.</p>
<p>Now, let's explore into how ethics plays a role in modern day data acquisition and algorithms. </p>
<p>For a deep dive into the ethics of data science, you can watch the talk here. If you want to briefly learn more about ethics in data science and understand what the talk is about, read on.</p>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/WU7McTUumxU" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
<h2 id="heading-why-should-we-care-about-ethics-in-tech">Why Should We Care About Ethics in Tech?</h2>
<p><strong>"With great power comes great responsibility"</strong>. Ah, the Peter Parker principle. Data science has so much influence now over peoples' lives. A good data scientist needs to understand the ethical issues surrounding the data they obtain or use, the algorithms they employ, and its impact on people.</p>
<p>People do the right thing for a few different reasons. Ethics comes into play here. Ethics are rules that we all voluntarily follow because it makes the world a better place for all of us.</p>
<p>However, sometimes it's not clear in the moment what the right thing even is. Sometimes, it's only evident in retrospect. However, these experiences and consequences are what shape our understanding and expectations for the future.</p>
<h2 id="heading-ethics-and-data">Ethics and Data</h2>
<p>Data is constantly being collected about us. Cameras are everywhere. Cell phones report locations. Social media follows our clicks.</p>
<h3 id="heading-informed-consent">Informed Consent</h3>
<p>In human subject research, there is a notion of informed consent. We understand what is being done, we voluntarily consent to the experiment, and we have the right to withdraw consent at any time.</p>
<p>However, this is more vague in "ordinary conduct of business", such as A/B testing. For example, Facebook may perform these tests all the time without explicit consent or even knowledge! </p>
<p>In the video, I discuss a mood manipulation experiment done by Facebook in 2012 and a "Love Is Blind" experiment done by OKCupid in 2015.</p>
<p>Informed consent is often buried in the fine print and many of us do not necessarily read those lengthy terms and conditions. In addition, it is hard to control how data is used in the future and how it is controlled.</p>
<p>Furthermore, big data sets are sometimes very vague about how they are protected. For example, Wikipedia, Yelp, Rotten Tomatoes, a clinical data set, a company's data, your gene sequence...</p>
<h3 id="heading-privacy">Privacy</h3>
<p>There is also a concern over privacy. Privacy is a basic human need. Loss of privacy occurs when there's a loss of control over personal data. In the video, I discuss a 2016 OKCupid controversy where user profile data was released.</p>
<p>In some cases, even when identifiable information is removed from data – like name, phone number, address, and so on – it may not be sufficient to protect individuals' identities. </p>
<p>There have been many cases of de-anonymization, where AOL users are identified based on search history, or peoples' health records are identified based on ZIP code, birth date, and sex.</p>
<p>From these concerns over safety of released data, the concept of "differential privacy" has come into play. Essentially, the goal is to provide as much statistical information as possible while guaranteeing the anonymity of the contributing individual.</p>
<h2 id="heading-ethics-and-algorithms">Ethics and Algorithms</h2>
<p>An algorithm cannot be neutral. An algorithm naturally encodes biases that we feed it. For example, our training data might not represent the entire population. The past population may not represent the future population.</p>
<p><strong>It's possible to get "bad" results from "good" data.</strong></p>
<h3 id="heading-common-algorithm-mishaps">Common Algorithm Mishaps</h3>
<p>There may be correlated attributes that get in the way. In the video, I discuss an example of one time when Staples was attempting to beat their competitors, but ended up offering cheaper deals to wealthier neighborhoods.</p>
<p>In addition, results can sometimes be presented in a misleading fashion. In the example below, we can see how the same data with different y-axes can lead to different conclusions:</p>
<p><img src="https://lh6.googleusercontent.com/rDNiax3IOShWDaOt5qDoKQFEi1UON7sQtoqkIZC63mpyJWTK8T9SskSyXTxSDKVQ2caps-AiYgTNq7hp4ZVF0nRWf65kt_nYIgnGlrX9_7yj2SVrEGkRfubO7Ws3kdD6HCByyTuOQU8=s0" alt="Image" width="605" height="357" loading="lazy"></p>
<p>It's also possible to p-hack to find patterns in data that can be presented as statistically significant. But in reality, you may have just done many statistical tests on many experiments and only reported the ones with significant results. </p>
<p>If you do infinitely many experiments, there is bound to be one that comes back with significant results just by chance.</p>
<h3 id="heading-fat-fairness-accountability-transparency">FAT* – Fairness, Accountability, Transparency</h3>
<p>In the computer science community, one important research area that has emerged is FAT* (Fairness, Accountability, Transparency). This involves determining fair decisions according to our notions of social justice, ethical use of data, and interpretable decisions from machine learning. </p>
<p><a target="_blank" href="https://geomblog.github.io/fairness">Here</a> is a good resource for learning more about this in depth.</p>
<p>Fairness is a trendy topic in theoretical computer science right now. There are two types of discrimination that may occur: discrimination of an individual and discrimination in aggregate outcome. </p>
<p>Discrimination of an individual may occur when an individual from the target group gets treated differently from an otherwise identical individual not from the target group. </p>
<p>Discrimination in aggregate outcome may occur when the percentage success of the target group may differ compared to that of the general population. </p>
<p><a target="_blank" href="https://www.quantamagazine.org/making-algorithms-fair-an-interview-with-cynthia-dwork-20161123">Here</a> is a great resource for further discussion.</p>
<p>In the video, I discuss the controversial role of algorithms in sentencing and parole. These algorithms seem to show racial disparities in favor of white defendants and in opposition to black defendants.</p>
<p><img src="https://lh6.googleusercontent.com/tDiLKliZzV-rDY88tsmW3Cafd97o1oNG2FTHhFIzPgHEfLIzODgcjEp0Nwt8O0y7EeoVB4Mwzdn_5WSlOUUesrDTLrIKASQBFpBBqB5MrtbDD3HEUjYhXUcPfmMetLFf15i0SWQVxCw=s0" alt="Image" width="592" height="293" loading="lazy"></p>
<p>In addition to being fair, we also want our algorithms to be reproducible. In general, "transparency" means full transparency. The entire pipeline of data collection, raw data, and research analyses should be made available, thus contributing to potential reproducibility.</p>
<p>However, sometimes the data cannot be shared, and algorithms may be fairly complex and difficult to understand, especially if they are black box algorithms. </p>
<p>To help with this issue, the "FAIR" principles – findable, accessible, interoperable, reusable – have been proposed. Check out this <a target="_blank" href="https://www.nature.com/articles/sdata201618">article</a> to find out more.</p>
<h2 id="heading-want-to-learn-more">Want to Learn More?</h2>
<p>In summary, codes of conduct for research are fairly well understood. In general, experiments want to obtain informed consent, protect the privacy of subjects, and maintain the confidentiality of data collected while minimizing harm. </p>
<p>Conversely, the concept of what is fair is slightly more subtle. Sometimes it is not necessarily clear what exactly is fair treatment of a group from a quantitative standpoint. </p>
<p>There may be a trade-off between optimizing outcomes and avoiding discrimination against a group. However, the computer science community has been actively setting up guidelines to help protect individuals, data, and models.</p>
<p>Want to learn more? Watch the talk to dive into the nuances of ethics in data science!</p>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/WU7McTUumxU" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
<p>Thank you <a target="_blank" href="https://github.com/odpi/OpenDS4All/tree/master/opends4all-resources">OpenDS4All</a>!</p>
 ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
