3 ms·
Note that project is the outlier for how much code it contained. That team did have the most trouble getting things done on time and fixing all the bugs, so the
by trishume 7y ago
Note that project is the outlier for how much code it contained. That team did have the most trouble getting things done on time and fixing all the bugs, so they passed the least tests, as one would expect given how much code their design choices required them to write. I think the causality goes from their design to the line count, not from the line count to worse design, they had to write lots of code to implement their more abstract design choices. I looked at their code and didn't see any obvious deficiencies in anything other than the design.
Also note that UWaterloo's CS and SE programs are different than other universities. Everyone on all teams had at least two years of full time work experience at 6 internships. The people I talked to were also programming enthusiasts who read online a lot. The only teams that may not have written the most idiomatic code are the person who used Python alone, and the Haskell team because I've heard idiomatic high-end Haskell involves an insane amount of knowledge of abstractions like lens, way more than all the other languages.
This compilers class is also well known for requiring lots of work, so students often arrange their schedules to have a low load from other classes while taking it, which is possible since the CS program requirements have a lot of flexibility.
- shaklee3 7y agoTwo years of work experience isn't going to make them experts in a language, especially during an internship. Languages like c++ would be a minimum of 5 years of professional programming to be competent I've found.
- sonnyblarney 7y agoMy office was across the street from UW for years, and I've hired handfulls of you as interns and full timers. You're great. But - '6 internships' is not quite enough to do this comprehensively, as exhibited by someone blasting out 15K LOC (I'm still reeling at that). I've worked on a number of projects in C++ and I'm pretty sure that I'm not very good at it, even with many years of experience in other languages, for example. The authors deserve a lot of credit, but I don't think much can be concluded from this ... it's just not the right situation. FYI - this kind of comparison is very difficult to do even for the most experienced.