Week 15: Reflections
Final Thoughts on the Class and my Presentation
Overall, I’m extremely grateful to have taken a class that forced me to learn yet still offered freedom. I felt forced to learn because we were required to work on real-world projects, often ones the rest of the class had never seen. In my case, the first stable release of Gleam, the project I chose to work on, was one year ago. This novelty means that there are no clear instructions, and there is no one to babysit you through the code. If you don’t put in the time reading the code, you won’t have any idea what you’re doing. This was also the first time I made changes to a project in production and worked with a very large, complicated codebase, so it gives me perspective on what real software engineering looks like and what I’d be interested in working on in the future. I now see that real software engineering is like running consecutive intellectual marathons. The cherry on top of all of this is that we chose to work on Gleam rather than it being forced on us. I think I would’ve dropped the class if I was assigned a front end project.
In terms of my presentation, I think it went reasonably well, but we should have given a better high level explanation. We should have said, “Gleam is a functional programming language that compiles into Erlang or Javascript. The compiler is written in Rust. We worked on the compiler. We wrote rust code.” And then we should have said it three more times to drill it in. Some of the questions at the end of the class showed that people didn’t understand that sentence. Understandably, if you zone out for 10 seconds in the intro where we gave a version of this explanation, it’s hard to pick up this context from the rest of the presentation.