On 01/03/17 10:09, Leam Hall wrote: > I see computer science as a science that calls upon our creative nature > to produce excellence. Adding constraints like secure coding and TDD > push us to even greater artistic expression. Lack of constraints gives > us the current standard of non-performant and insecure code.
I'd argue that most of that is software engineering. Computer science is the study of computation, ie how we compute stuff. Software engineering is about the practical application of that to building things. It's like the relationship between physics and traditional engineering (Electrical, Mechanical, Civil etc). Engineers study the basic science but they also study topics like design, ethics, law, economics/accounting and marketing. > Hence my desire for the basic tools of science and engineering. What do > I need to know to produce solid code in a team of solid coders. It's interesting how these things seem to come in groups. Yesterday, after sending my initial response I had lunch with an old friend who is working on a consultancy on the future of Computer Science teaching here in Scotland. We had a long chat about what should be in/out of a modern CS curriculum. That discussion made me rethink the need for lists of criteria because college courses need to do just that. And as we brain-stormed lists of topics we naturally categorized some as mandatory core subjects (eg discrete math, finite state machines, data structures, algorithms etc) and others as optional modules (AI, machine architectures etc). Somebody already suggested looking at the online college courses for ideas, so I guess I'd now second that as probably the best available source. One other place to look is the British Computer Society's web site. I don't know if it's still there but they used to have an Industry Model which included definitions of knowledge areas and levels for different roles (programmer, analyst, software engineer, architect etc) It's now apparently called Skills Framework for the Information Age.(SFIA) Wikipedia has this page as a starter: https://en.wikipedia.org/wiki/SFIAPlus HTH -- Alan G Author of the Learn to Program web site http://www.alan-g.me.uk/ http://www.amazon.com/author/alan_gauld Follow my photo-blog on Flickr at: http://www.flickr.com/photos/alangauldphotos _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor