Software Licensing-IP-Legislation-Regulation Student Name Skye Khan Student Number 120854229 Special Notes to Instructor Click or tap here to enter text. Computer Principles for Programmers (CP4P) UserID skhan523 @mySeneca.ca This week's activity instructions are quite straightforward, but the answers have the potential to fill a book. Within the scope of our weekly activities, think widely and deeply about open source. Part One of Two (50 points for this 3-part question, 150+ words total) How much open-source software … 1a …can be used for regular tasks on your computer? Regular tasks on a personal computer might require several applications, each running on open source software. For example, a user may use Firefox to access webpages and LibreOffice to create or edit documents and spreadsheets. These applications often have certain features that make them unique—for example, features that are not available in similar commercial applications. Other open source software required to run regular tasks includes an operating system such as macOS and Linux; an office suite like OpenOffice; and programs like GIMP (which can be used as a photo editor) and Blender (which can be used to create 3D models). 1b …is available through Seneca MyApps? The Seneca myapps portal includes a number of open source applications. Students can download and use these applications to complete their coursework. These include: LibreOffice, GIMP, Blender, Firefox, Chrome and Thunderbird. All software is available on Windows and Mac operating systems. Linux support is limited but growing. Open-source software is also being used in other areas within Seneca, such as Moodle (our learning management system) and Blackboard site. 1c …is present but unseen when you are on the web? Web browsers like Google Chrome or Mozilla Firefox use open source software. Web search engines like Google are web applications that run on open source software. Other common web applications, such as online photo-sharing and social networking sites, also run on open source software. These programs may have features that make them unique—for example, they may be faster than similar commercial applications. They may also have certain features not available in other programs. Fall 2022 Page 1 of 2 Software Licensing-IP-Legislation-Regulation Computer Principles for Programmers (CP4P) Part Two of Two How might you get involved in open source projects to gain marketable experience? What open source projects interest you and why? (50 points for 250+ words) 2. The first step to getting involved in an open-source project is finding one that interests you. I like to check out sites like GitHub or LinkedIn to see which projects others are working on, then ask them if they need any help. Here are some ways one can get involved (1) Reviewing current open-source projects and commenting with constructive criticism; (2) Sharing experiences and best practices within your company through blog posts; (3) Hosting meetups where programmers can learn from each other; and finally, (4) Exploring new libraries by contributing bug fixes or new features. If you're just starting out as a programmer, this is a good way to get your foot in the door without committing too much time upfront. Market experience comes from putting in hard work in some of these projects (Steinmacher et al., 2017). I like to check out sites like GitHub or LinkedIn to see which projects others are working on, then ask them if they need any help. Other sources include Stack Overflow or Reddit where developers can collaborate on solutions and build relationships with others in the community. Whether it's writing code, designing graphics, making music, or solving problems with math, there are so many ways to get involved. My approach to participation is just to jump in and do something. Getting involved in open-source projects doesn't necessarily mean coding - you could make graphical design contributions, write documentation, answer questions on forums, translate text into other languages, create artwork, solve tough mathematical problems... the list goes on. I am mostly interested in web development, particularly JavaScript frameworks such as AngularJS or ReactJS. I love that these frameworks allow you to focus on what your app does rather than writing a lot of boilerplate code. And because they are free and open-source software (FOSS), you know exactly how they work inside and out instead of relying on someone else's closed system, often with proprietary APIs. Other projects that I'm interested in are Bootstrap, jQuery, and Ruby on Rails. Bootstrap makes building responsive websites easier by providing CSS and HTML templates; jQuery simplifies DOM traversal; Ruby on Rails provides a framework for web applications written in the Ruby programming language. These three projects provide powerful tools that simplify building web applications or websites without sacrificing quality or efficiency (Fingerhuth et al., 2018). Because I am interested in both backend and frontend development, I also try to find an open-source project that has both sides covered. A good example of this would be Ember, a full-featured JavaScript application framework. This allows me to learn more about all aspects of creating a web application, and keeps me updated on trends and technologies. Another example would be Symfony, which is a PHP-based MVC (model-view-controller) framework that can be used to develop websites, Web applications, and enterprise programs. The advantage of these projects is that anyone can use them, modify, and distribute the code. All you have to do is download the code and start tinkering with it. Contributing to open-source projects will not only give you valuable experience but also give you a chance to learn about new technology and meet interesting people. Fall 2022 Page 2 of 2