<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Cooper Cole</title>
    <description>The latest articles on Forem by Cooper Cole (@coops).</description>
    <link>https://forem.com/coops</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F156843%2F8162b79d-9662-4827-9537-96dd04c8c1fc.png</url>
      <title>Forem: Cooper Cole</title>
      <link>https://forem.com/coops</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/coops"/>
    <language>en</language>
    <item>
      <title>Actionable ways to make software greener</title>
      <dc:creator>Cooper Cole</dc:creator>
      <pubDate>Tue, 23 Nov 2021 21:58:46 +0000</pubDate>
      <link>https://forem.com/coops/actionable-ways-to-make-software-greener-1lg6</link>
      <guid>https://forem.com/coops/actionable-ways-to-make-software-greener-1lg6</guid>
      <description>&lt;p&gt;&lt;em&gt;Originally posted on my blog: &lt;a href="https://www.coops.coffee/"&gt;coops.coffee&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Building and testing models is a carbon-intensive process. In one of my favorite research papers &lt;a href="https://arxiv.org/pdf/1906.02243.pdf"&gt;Energy and Policy Considerations for Deep Learning in NLP&lt;/a&gt;, three UMass Amherst graduates explain the need for researchers to have equitable access to computational resources and the need for prioritizing computationally efficient hardware and algorithms. In this paper, it was discovered that the process of building and testing a final paper-worthy model required 4,789 models jobs that emitted more than 78,468 pounds of carbon. For reference, 78,000 pounds is the equivalent of consumption from 7 average humans and 39 plane rides for 1 passenger from NYC to SF.&lt;/p&gt;

&lt;p&gt;AI leaves behind a heavy carbon footprint but there are ways to mitigate the carbon output. As there are ways to mitigate the carbon footprint of all software. My focus here to make green software development the norm. From AI to web development, there is a role we can all play in making software greener. The recommendations will be short and sweet. My goal here is to recommend 1-2 actions per topic with a resource, author, or podcast to accompany the discussion.&lt;/p&gt;

&lt;h3&gt;
  
  
  Tools 🛠
&lt;/h3&gt;

&lt;p&gt;Each model is different such as the one above focused on Deep Learning in NLP. To understand the energy consumption of models, it's imperative to paint a picture by collating metrics. There are other pieces of the puzzle such as when you train models and cloud compute services. Tools can range from code-based, OS-based, energy-based, and so on. Below are just a few recommendations of papers and tools.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="http://codecarbon.io/"&gt;Code Carbon&lt;/a&gt; is a package that integrates into Python codebases and estimates the amount of CO2 produced by the computing resources used to execute the code&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ensure that the energy used to power your models is green.&lt;/strong&gt; I recommend this paper from Microsoft on the importance of taking the step towards a green cloud. Whether run in-house or via the cloud, cleaner energy mixes make a substantial difference in the carbon output of AI. Overall, it has been argued that running via GPUs is more sustainable and cost-efficient than running in-house.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.cloudcarbonfootprint.org/"&gt;Cloud Carbon Footprint&lt;/a&gt; is an analysis tool for understanding cloud usage impact on the environment &lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.websitecarbon.com/"&gt;Website Carbon Calculator&lt;/a&gt; estimates your website's carbon footprint&lt;/li&gt;
&lt;li&gt;Check to see if your website is hosted green with &lt;a href="https://www.thegreenwebfoundation.org/green-web-check/"&gt;Green Web Check&lt;/a&gt; &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;On this topic, I'd love to recommend &lt;a href="https://thegradient.pub/sustainable-ai/"&gt;Abhishek Gupta's paper on The Imperative for Sustainable AI&lt;/a&gt;. Abhishek is a co-worker but also someone I greatly admire. I'm consistently impressed with his work in green software and ethical AI. In fact, I learned about Code Carbon through his paper. Check out his work! &lt;/p&gt;

&lt;h3&gt;
  
  
  Policy 📜
&lt;/h3&gt;

&lt;p&gt;Arguably, anyone who builds or manages software has the opportunity to change the way software has been traditionally written. We can create policies within our own organizations and companies to urge the adoption of green principles in our software. By utilizing the resources below, I hope it serves as an opportunity to further adopt or innovate policies for your engineering teams to build green. With that, I'd like to introduce these resources:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://principles.green/"&gt;Principles.green&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://sustainablewebdesign.org/"&gt;Green Web Design&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Building policy from the top-down or influencing it from the bottom up can lead to a monumental push in how software is developed.&lt;/p&gt;

&lt;p&gt;For this section, I'm recommending this &lt;a href="https://hbr.org/2020/09/how-green-is-your-software"&gt;How Green is Your Software from the Harvard Business Review&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Coalitions &amp;amp; Communities 🌍
&lt;/h3&gt;

&lt;p&gt;Green software engineering is still a niche community. The largest community of engineers, designers, and writers that I've found focused on green software (and have had the opportunity to join is) the &lt;a href="https://greensoftware.foundation/"&gt;Green Software Foundation&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Change the culture of building software across the tech industry, so sustainability becomes a core priority to software teams, just as important as performance, security, cost, and accessibility.&lt;/p&gt;

&lt;p&gt;-- Green Software Foundation's Vision&lt;/p&gt;

&lt;p&gt;Building coalitions, founding organizations, and creating communities around green software can be a focal point in how change is driven. The Green Software Foundation is an inclusive community focused on developing an ecosystem for creating green software. The work is open-source and done in public. The community is driven by the values and mission of the Green Software Foundation and that is reflected in the work that is done.&lt;/p&gt;

&lt;p&gt;Having a committed group of individuals working together to build sustainable tools, develop research papers, and create resources to educate others is a significant way to drive change. Whether you create an employee resource group at work dedicated to green software or start a club at your university around sustainability you can make a change. You are building a community of sustainably driven individuals all working towards the collective good of making sustainability a central part of their jobs, school, and community.&lt;/p&gt;

&lt;p&gt;Coalitions and communities can help drive change at a broader scale, allow for innovation, and create scalable action.&lt;/p&gt;

</description>
      <category>greensoftware</category>
      <category>greensoftwareengineering</category>
      <category>ai</category>
      <category>greenai</category>
    </item>
    <item>
      <title>The 66 Days of Data Challenge</title>
      <dc:creator>Cooper Cole</dc:creator>
      <pubDate>Wed, 04 Aug 2021 02:55:36 +0000</pubDate>
      <link>https://forem.com/coops/the-66-days-of-data-challenge-3hd5</link>
      <guid>https://forem.com/coops/the-66-days-of-data-challenge-3hd5</guid>
      <description>&lt;p&gt;I went from spending 6 hours a day writing code as a Computer Science major to only writing a couple of lines a week in my free time. I've kept up with the industry. But lately, I have had such a desire to get back into it. I love the data science space. I even had the opportunity to TA an Intro to Data Science course for a month last summer. Simplifying problems to teach others was impactful not only for the benefit of the student but also for myself. I was able to chat openly about my love for the data science space, learn new concepts, and apply the problem and solution to provide as homework. When I'd get stuck on a concept,  it would encourage me to iterate on ways to make it more accessible to the students.&lt;/p&gt;

&lt;p&gt;My data science infused summer was wonderful. I explored many introductory concepts and even began poking at my projects in the space - could I experiment with AI/ML next? Maybe use Computer Vision to help reduce bike accidents across Boston? Unfortunately, I fell off the wagon during the pandemic. I was tired of staring at my laptop screen hunched over in a chair for 12 hours a day between work and side projects. Quite simply, I'd lost the motivation to learn.&lt;/p&gt;

&lt;h2&gt;But that changed...&lt;/h2&gt;

&lt;p&gt;Three days ago, I began listening to the book &lt;em&gt;Ultralearning&lt;/em&gt; by Scott H. Young, a book that boils down to 9 core principles on self-directed learning. As I listened to the book, my mind floated to the idea of returning to data science. I was passionate about the data science space but had lost the motivation to learn. Later that evening, I stumbled upon &lt;a href="https://www.youtube.com/watch?v=qV_AlRwhI3I"&gt;Ken Jee's YouTube channel and the 66 Days of Data challenge&lt;/a&gt; he'd kicked off to get himself back into Data Science. &lt;/p&gt;

&lt;p&gt;The beauty of the 66 Days of Data challenge is that the goal is to build data science as a habit into your daily life, not to learn all components of data science within the timeframe. The baseline is 5 minutes a day for 66 days which is easily doable, as long as I prioritize it. &lt;/p&gt;

&lt;h2&gt; Step 1: Build a curriculum &lt;/h2&gt;

&lt;p&gt;Following the steps from &lt;em&gt;Ultralearning&lt;/em&gt;, I began creating a curriculum to learn data science. To start, I looked at data science curriculums across multiple universities. After comparing each one, I built myself a curriculum that covered the core classes and added a few 'electives.' The complete curriculum, including links to the sites I am using, can be found &lt;a href="https://smiling-clarinet-4c5.notion.site/Data-Science-Ultralearning-e6925b7e38e845638283d6988b683402"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Using Notion, I'm tracking my start and end dates for each section along with the tools I referenced. Eventually, I'll include notes and whiteboard drawings.&lt;/p&gt;

&lt;h2&gt; Step 2: Build the Habit &lt;/h2&gt;

&lt;p&gt;I need to spend a minimum of 5 minutes each day learning data science. To do this successfully, I need to make the material accessible. I did this by:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Curating a list of books, podcasts, and videos on data science (I ensured I had items that did not require an internet connection too)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Compiling a list of websites that provide hands-on material with data science&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Creating a central location to find my resources (Notion page)&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;By doing this, I made learning data science simple and accessible for myself. I know my strengths and weaknesses when it comes to sticking to habits. By creating a seamless experience for myself, I've increased the chances of building data science into my daily routine.&lt;/p&gt;

&lt;h2&gt; Step 3: Build something &lt;/h2&gt;

&lt;p&gt;My ultimate goal for this challenge is to build a foundation in data science. At the end of my 66 days, I'll kick off work on a personal project. I'm already thinking of potential research projects around climate change I can do. The Python refresher was a ton of fun to complete. Also,&lt;br&gt;&lt;br&gt;
According to &lt;a href="https://www.jetbrains.com/lp/devecosystem-2021/"&gt;JetBrains State of Developer Ecosystem survey&lt;/a&gt;: Python is one of the top 5 languages, one of the fastest-growing languages, and one of the top 5 languages developers are migrating to or adopting. It's a promising outlook to learn a language that is continuously growing in demand and interest.&lt;/p&gt;

&lt;p&gt;I would love to work in the data science space -- whether that be content creation, as a PM, or programming -- and having a foundation in these core areas will help me achieve that. &lt;/p&gt;

&lt;p&gt;I'll post weekly updates here on my progress and goals. &lt;/p&gt;

&lt;p&gt;I'll catch you in the next one 👋&lt;/p&gt;

&lt;p&gt;Alyssa&lt;/p&gt;

</description>
      <category>python</category>
      <category>66daysofdata</category>
      <category>datascience</category>
      <category>ultralearning</category>
    </item>
  </channel>
</rss>
