Theory tasks

LANGUAGE COMPARISON (1)

REFLECTION (2)

Reflecting on the path to becoming a software engineer, I recognize the challenges and skills required for success in this field. While the role offers appealing rewards, it demands a high level of technical proficiency, problem-solving, and teamwork. Software engineers are responsible not only for creating but also for maintaining and optimizing complex programs, often under tight deadlines and amidst constant advancements in technology.

In evaluating my own strengths, I feel confident in my teamwork, leadership, and problem-solving skills, qualities that are essential in software engineering. However, I recognize the need to further develop my organizational abilities and creative thinking. I anticipate that university experiences, such as group projects and exposure to new ideas through diverse media, will help me strengthen these skills. By cultivating creativity and refining my organizational skills, I aim to be well-prepared for the dynamic and collaborative nature of software engineering.

In conclusion, by completing this assignment, I now have a better understanding an plan for my future.

code of ethics (3)

REFLECTION (4)

In completing this assignment, I developed a deeper understanding of Python’s diverse data structures and learned how to choose the right one for specific tasks. Exploring alternatives to arrays, like lists, tuples, sets, and dictionaries, taught me to analyze the properties of each structure, such as mutability, order, and uniqueness, and to consider how these characteristics impact the functionality and efficiency of a program. Working with libraries like NumPy and Pandas expanded my technical skills, as I saw firsthand how specialized modules can enhance Python’s built-in capabilities. This assignment strengthened my ability to approach data organization thoughtfully, tailoring my choice of structure to fit the program’s requirements and optimize performance.

ENVIRONMENTAL STEWARDSHIP (5)

REFLECTION (6)

Reflecting on this assignment, I gained a comprehensive understanding of artificial intelligence (AI) and its impact on society. Learning about AI’s ability to mimic human behaviours, from problem-solving to creativity, helped me appreciate the complexity of the algorithms and learning techniques involved, like machine learning and deep learning. Exploring the difference between Narrow AI, designed for specific tasks, and the ambitious scope of General AI offered insight into the breadth of AI’s potential and its current limitations.

This assignment also highlighted the societal implications and controversies surrounding AI, including privacy issues, job displacement, and deepfakes. Realizing the depth of these challenges underscored the need for responsible development and regulation. Overall, I came to understand AI not only as a powerful technological advancement but also as a field that raises important ethical and societal questions, prompting reflection on how best to harness its potential while mitigating its risks.

REFLECTION (1)

In this assignment, I compared Java and Python, focusing on input/output, selection statements, and loop structures. The differences in syntax, data handling, and overall program structure between the two languages gave me a deeper understanding for each. I found Python’s syntax to be simpler and more readable, with print() requiring less setup than Java’s System.out.print() for basic output. In selection structures, Python’s new match statement functions like Java’s switch, but with a more streamlined syntax, while Python's indentation based structure, different from Java's curly braces, makes code feel more organized. In loops, Python’s for loop is clean and handles range-based iteration efficiently, unlike Java’s more complex variable initialization. Python’s flexible list handling also differs significantly from Java's static arrays, which require specific type and size declarations. This exercise not only strengthened my understanding of both languages but also underscored how syntax affects readability and coding efficiency. Working through Java's structured requirements reminded me of the importance of detail, while Python’s simplicity highlighted the advantages of minimal syntax. This experience will help me make more informed decisions about language choice in future projects and has broadened my understanding of how different programming structures shape problem-solving strategies.

Ultimately, in my opinion, I find Python much more simpler to use and the structure of the code is more organized.

Careers (2)

REFLECTION (3)

Reflecting on the importance of a Code of Ethics in technology, I see how crucial these guidelines are for ensuring responsible, professional conduct in the field. Organizations like IEEE and ACM emphasize the responsibility that technology professionals have to society, promoting standards that prioritize public safety and fairness. This means developing software that is safe, beneficial, and respects users’ rights. The focus on integrity also highlights the need to respect others’ work, maintaining honesty and transparency in all contributions.

In the tech world, confidentiality and security are vital, as programmers often handle sensitive information and must prevent unauthorized access. The Code of Ethics also stresses the need to avoid malicious activities, underscoring that software professionals have a duty to prevent harm and protect user interests. Recognizing these guidelines reinforces my understanding of the responsibility that comes with a career in technology, reminding me of the high ethical standards required to foster trust and positive impact in society.

Completing this assignment is beneficial toward my future job in the tech industry where I will have to follow these practices.

COMPARING ARRAYS (4)

REFLECTION (5)

Reflecting on this assignment, I’ve gained insight into the vital role technology plays in both causing and mitigating environmental issues. Learning about the environmental impact of technology, from energy-intensive data centres to electronic waste, emphasized the urgency of sustainable practices. Exploring solutions like Environmental Technology (or clean technology) and initiatives like Energy Star deepened my understanding of how innovation can promote environmental responsibility, such as by improving energy efficiency in smart devices or auditing supply chains for sustainable practices.

I also gained a broader perspective on electric vehicles and their transformative potential to reduce carbon emissions. Researching government initiatives, like Canada’s push for zero-emission vehicles by 2035, underscored how policy can drive change. Additionally, studying Direct Air Capture (DAC) technology gave me insight into the potential and challenges of cutting-edge carbon reduction methods, which highlight the importance of long-term research. Overall, this assignment enriched my understanding of sustainability efforts in the tech industry and demonstrated how industry and individuals can work together to build a more sustainable future.

THEORETICAL COMPUTER SCIENCE (6)