Throughout my time in ICS 314, I have learned and applied many concepts. Whether through assignments or in-class WODs, I have gained a great deal of knowledge about software engineering and how it applies to the field of computer science. In the following essay, I will reflect on three key concepts I learned in this course: coding standards, UI frameworks, and ethics in software engineering.
One might think that when we code, we simply write what fits our needs and gets the job done. However, in large-scale projects involving many developers, consistency and clarity are crucial. This is where coding standards come in — a set of guidelines for writing code that helps make it more readable, maintainable, and consistent across a team.
For example, consider naming conventions for variables and functions. In many programming languages, we use camelCase, where the first word is lowercase and each subsequent word starts with an uppercase letter. Another common convention is PascalCase, where every word — including the first — starts with an uppercase letter. Beyond casing, names should be clear and descriptive. For instance, instead of naming a variable that stores a user’s age as variable1, a better name would be userAge.
In large projects, tracking changes and understanding code written by others is important. This is where commenting plays a role. Commenting means describing what a piece of code does, why it exists, or noting where errors may occur. It may seem simple, but in the context of a large, collaborative project, well-written comments are highly beneficial for communication and maintenance. Lastly, code formatting refers to following consistent visual guidelines when writing code. This includes proper indentation, keeping lines within a reasonable length, and spacing around operators. Well-formatted code is cleaner, easier to read, and easier to debug.
When we write code today, it’s often not entirely from scratch — especially in web development. This is where UI frameworks come into play. A UI (User Interface) framework is a collection of tools, libraries, and pre-built components that help developers create the visual and interactive parts of an application. Think of it like a toolbox that helps you build the front side of a store — the part customers see and interact with. These frameworks speed up development by providing reusable components, allowing more time to focus on testing or refining application logic. Some might think this results in many websites looking the same — and that can happen. Websites built with the same framework can appear similar in structure and functionality. However, developers often build custom styles or features on top of these frameworks to create a unique experience. So next time you visit a website that feels familiar, it might be using the same framework — or it might just be a copycat.
In software development, ethics are a critical consideration. Ethics in software engineering involve ensuring that the applications we build protect users, respect privacy, and act in fair and honest ways. This is especially important in high-stakes fields such as healthcare, finance, and education, where real lives and futures are impacted by our software. Some key ethical principles include: Privacy: Avoid collecting unnecessary data and keep personal information secure.
When these areas are ignored, we see unethical uses of software — such as creating malware, feeding biased data into AI systems, or spreading misinformation. These are not just technical failures, but ethical ones, and they highlight why ethics must be central to the software development process.
ICS 314 has deepened my understanding of software engineering by introducing practical and ethical concepts that go far beyond just writing code. From learning to follow coding standards and using UI frameworks, to understanding the ethical responsibilities of a developer, this course has provided me with valuable skills and perspectives I will carry forward in my career.