We once again coming near to another semester. Although Spring 2020 may have been interrupted by a sudden pandemic, it’s still a fruitful semester loaded with new-found knowledge. During the making of Club Lounge, our team used agile project management to assign task to each member. I also got a lot of chances to implement features for the application using functional programming.
Whether it be Windows nagging you to restart your PC for an update or Google play store notification of an app finished updating, everyone has to update their technology at some point. With the invention of the internet, software eventually became more easily accessible for the public. Thus came Agile Project Management, allowing programmers to deal with the current tasks, publish it, then decide whether the software needs a new version; If so then cycle repeats.
Through the brief time I’ve exposed to such a project management method, it is very similar to how I would imagine a software would be developed. For my ICS 314 project team, we would discuss the next “phase” of our project and assign the necessary task to the right member. Everyone will work on their part for the whole puzzle piece to fit together. Agile Project Management is likely also the route I would go if we have a small development team.
In short, functional programming turns functions and methods into a data type, allowing it to be passed through parameters or assign to variables. This allows programmers to write shorter lines of code. In programming, shorter code usually translates to fewer bugs. Functional programming aims to eliminate shared states and mutable data.
It is important to note that not all programming languages support functional programming, so this can’t be a solution applied to all situations. However, if given a choice, I would make use of functional programming. Example being my Discord bot project, which is coded using Python (A language that supports FP).