Beyond the Web

10 Dec 2023

Throughout the vast realm of software engineering, there are many principles and concepts that transfer over from web development. For instance, having to adapt to a new development environment or writing code in accordance with the required coding standards. My web development endeavors hold a personal testament that adaptation is one of the most important qualities of a growing software developer.

Adapting to Your Development Environment

A development environment is an invaluable tool for software developers. It enables developers to work on new features, conduct testing, and edit the codebase without affecting end-users. Depending on the software being developed, a text editor with similar functionality may also be appropriate (i.e. IntelliJ IDEA vs. Visual Studio Code). In ICS 314 (Software Engineering I), our primary development environment was IntelliJ IDEA. For me, this was an entirely different experience, and I had to get used to it in order to complete our assignments as efficiently as possible. One of the biggest initial frustrations were the macOS keyboard shortcuts that behaved differently. For instance, “cmd + delete” deleted the line itself, whereas typically it would leave a blank line but delete its text. However, after spending enough time in the environment, it actually made my coding process much easier and more efficient. Learning a new development environment is not an unrealistic expectation when finding a software development job. I have recently been developing for the iOS platform, and XCode is the development environment that Apple limits you to. The shortcuts are different, there’s no built-in terminal, and the overall functionality is different. However, this is as to be expected given that the development environment is catering towards a different type of software development. My biggest takeaway from this class regarding development environments is to spend as much time as possible initially getting used to everything. In the end, it will be well worth it.

Less Spaghetti Code

A big part of ICS 314 was something known as coding standards. Coding standards are like guidelines on how code should be written, to retain consistency and better quality throughout the application. In the web development assignments for this course, we were required to use ESLint, a popular JavaScript linter. A linter is something that helps enforce coding standards, assist in finding syntax errors, etc. However, the importance of coding standards does not only apply to web development. The principles of consistent code formatting, naming conventions, and best practices are universally applicable across various domains of software engineering. Whether engaged in iOS development, system integration, or any other software project, adhering to coding standards remains paramount. Consistent coding practices not only enhance collaboration within development teams but also contribute to the long-term maintainability and scalability of software solutions. This is crucial in developing software in good practice.

The Diverse Landscape of Software Engineering

Throughout my web development journey so far, I have realized that there are many concepts or principles that can apply to any field within software engineering. At the end of the day, it is most important to be able to adapt to whatever the job requires. Whether that be a new development environment, new programming languages or technologies, or a different set of coding standards, the ability to adapt is crucial for a successful career. There are so many fields within the realm of software engineering, and I will be sure to keep an open mind as I navigate through them.