Creating the Future

26 Apr 2024
Future Image

Building the Future

For ICS 314, we have a learned a multitude of fundamental software engineering concepts that we will most definitely learn and apply in the future should we choose to pursue a career in software engineering.

These concepts include:

These concepts are the building blocks of software engineering and are essential to creating and improving software for the future. As someone who is still getting introduced to the concept of software engineering, this class made me hopeful on what I can do to apply these skills to become a full fledged software engineer. In this essay, I will be discussing the importance of two of these concepts that I feel will be of most relevance to me in the future: User Interface Frameworks and Open Source Software Development.

Open Source Software Development: A Key Pillar in Modern Software Engineering

Open Source Software Development is a method of software development where the source code of the software is made publicly available. This means that anyone can view, use, modify, and distribute the project’s source code. In this class, the source code is typically shared on the ICS 314 website and on GitHub, making it accessible to students and developers worldwide. It is also a way to show your abilities to potential employers and see from the developers perspective on how they code and what they do to help developers understand the code and build off it.

In class, we built off of Meteor templates and React templates that helped us learn about other concepts that were great stepping stones to learning about their respective frameworks. Without these templates that the professors worked so hard on, we would not have been able to learn about these frameworks as easily as we did.

The important of Open Source Software Development is that it creates a sense of community among developers. We can collaborate, share ideas, and improve code together. Since the source code is publicly available, users can inspect it for security flaws or bugs which can build trust as users know exactly what the software is doing. Open source projects can evolve and improve at a rapid pace due to the collective input from the community. When we asked smart questions in the discord, a lot of us were able to pinpoint the issues and help each other out. It is also great to know that this is all free for everyone to use and learn from.

Computer Soup

For the future, I will definitely be using Open Source Software Development to help me learn and grow as a software engineer. As I become more developed in my skills, I hope to contribute to open source projects and help other learn and grow as well. GitHub is a great way to do this as well as stack overflow and other forums where developers like myself can ask questions and share code to solve problems. People need to start from somewhere and having the ability to share what we have learned for free is a great way to start.

User Interface Frameworks: The Future of User Experience

User Interface Frameworks are a set of tools and components that help developers create user interfaces for web applications. These frameworks are essential for creating responsive, user-friendly, and visually appealing web applications. In ICS 314, we learned about React and used Meteor along with it to create our own web applications. These are one of the times where I’ve felt inspired to create more web applications and learn more about how to make them better after trying out these frameworks in class.

Computer Soup

When we first started, it was vanilla HTML which looked very old school and particularly not visually appealing to look at. When we started using React and Meteor, it was a gamer changer. We were able to create web applications that looked modern, interactive, fun, and responsive. Island Snow was a great example of this as we were able to create a web application that looked like a real website. Then we were tasked to recreate a site that was already made and I chose to do Pinterest. It was a great learning experience as I was able to see how the site was made and how I could recreate it using the tools that we learned in class. It was one of those things where I could look back in revel in the fact that I was able to create something that looked like a real website.

This essentially opened my eyes to the world of web development and how I could potentially make a career out of it. A user interface framework like React is a great way to start as it is very popular and is used by many companies and front end developers. I could see myself applying it to different project contexts and hopefully expanding my knowledge on other frameworks as well. As an artist, starting websites from scratch is like a blank canvas that can turn into a myriad of possibilities. I am excited to see where this will take me in the future.

Conclusion

In conclusion, the journey through ICS 314 has not only provided me with invaluable insights into the foundational concepts of software engineering but has also sparked within me a passion for continual learning and growth within this dynamic field. Open Source Software Development has emerged as a cornerstone, fostering a sense of community and collaboration among developers. Through the accessibility and transparency is offers, I see many opportunities to contribute, learn, and evolve alongside a global community of developers. Additionally, delving into User Interface Frameworks has unveiled the transformative power of modern technologies in shaping user experiences. The exploration of frameworks like React has not only elevated my skills but has also ignited a newfound creativity and enthusiasm for web development. As I embark on my journey, armed with the knowledge and experiences gained from ICS 314, I am filled with excitement and optimism for the possibilities that lie ahead in the realm of software engineering.