4 ms·
> especially the comments about how unscientific SWE is After trying for months to get into a CSE course at my university (they had a disagreeable policy where
by wallacoloo 10y ago
> especially the comments about how unscientific SWE is
After trying for months to get into a CSE course at my university (they had a disagreeable policy wherein CSE courses were almost entirely open only to CSE majors), I was surprised by this aspect. We were taught methods for proving correctness for recursion-based code, re-expressing recursion as iteration, and things like loop invariants - the latter in particular presented a more methodical way to approach programming than I had seen before. But the general reaction was almost uniformly "yeah, sure, like I'm ever going to use this".
And sure, I don't think about loop invariants when I write most loops. And KISS tends to make most of my loops pretty trivial to understand. But for more algorithm-intensive work, the ideas behind these approaches have proven to be really useful tools! It's disappointing for me to see scientific approaches to SWE so quickly shrugged off. I seem to see the "cobble something together, and then patch it until nobody complains about bugs" approach to coding more often than "assemble this code in a way where it's demonstrably correct and easy to comprehend", and I'm often in the minority by strongly preferring the latter.
- logicchains 10y agoThat sounds more like computer science than software engineering. At my university, they were different majors, with the focus of the latter being UML and building large inheritance hierarchies, so I imagine SWE means different things to different people.