Final Entry

Shayan Maradia
3 min readMay 10, 2021

Long-term takeaways from this class:
• test first, test during, test after; test, test, test
• when designing algorithms, demand the weakest capabilities (e.g. iterable vs. indexable)
• when designing containers, provide the strongest capabilities (e.g. indexable vs iterable)
• build decorators on top of containers, iterators, and functions
• utilize the benefits of being lazy (i.e. yield)
• always look for reuse and symmetry in your code
• collaboration is essential to the quality of your code and to your well-being in producing it
• refactor, refactor, refactor
• make your code beautiful

1. How well do you think the course conveyed those takeaways?
After taking SWE, I believe the class did a wonderful job at teaching the main ideas, and there was a lot that I got the opportunity to learn individually and also through working with my HopeForHomeless teammates.

2. Were there any other particular takaways for you?
I think these ideas are a good summary of what I learned through SWE this semester. I think they sum up what we learned in class pretty well, but there are definitely more things about how to work as a team that I learned such as communicating on time, improving leadership, etc.

3. How did you feel about cold calling?
I think a combination of lectures where we would have the chance to discuss new ideas in an interactive way through exercises and the assignments like the papers allowed for learning in a lot of different learning styles.

4. How did you feel about cold calling?
I also got the chance to learn a lot from the classmates I worked with in the class on projects and exercises because everyone came in with different things that they were good at, and everyone was able to share knowledge with each other during lecture as well, which was also why I thought cold calling was beneficial.

5. How did you feel about office hours?/How did you feel about lab sessions? I think office and lab hours were really helpful whenever I or any of my teammates needed to ask the TAs any questions, and it was also worth listening to questions that people from other groups had. The TAs were also very responsive and would help whenever we would ping them in Teams. I thought office and lab hours were similar.

6. What required tool did you not know and now find very useful?
I think React was the one thing I spent the most time learning during the project that I think is powerful, especially when we got to see the benefits of using React after not using it on the first phase. I think some parts of React were challenging to understand, but I think it was really rewarding, especially after we got to see how our website turned out.

7. What’s the most useful Web dev tool that your group used that was not required?
Algolia search was something that we used on the project that definitely made searching a lot easier to add to our HopeForHomeless website, and they had a lot of useful resources and tutorials on their website that made it easy for us to learn how it works.

8. How did you feel about your group having to self-teach many, many technologies?
I think the fact that we had to teach ourselves so many new things really showed me how helpful tutorials on YouTube and such websites can be to learn coding skills in different languages and how useful Internet research and teamwork can be.

9. Give me your suggestions for improving the course.
Overall, I think SWE was a great class, and I think it could be even better if the papers that were assigned were discussed in class more.

--

--