CaptainSifff / paper_teaching-learning-RSE

The teachingRSE project: "Teaching and Learning Research Software Engineering"
Creative Commons Attribution 4.0 International
23 stars 20 forks source link

More comments about Competencies Paper #242

Closed annalenalamprecht closed 1 month ago

annalenalamprecht commented 3 months ago

I would like to share some more thoughts and observations from a complete read of the competencies paper:

BeastyBlacksmith commented 3 months ago

A thought that popped up in my head when reading A.1 (foundational module), but perhaps it is more general: How relevant is object-oriented programming and design?

Personally, I wouldn't enforce teaching it in the curriculum and leave it up to the teaching person. Surely it's good if RSEs know about it, in particular for dealing with existing software, but I don't see a reason to give it more prominence in the curriculum than any other programming paradigm. In that regard a module about programming paradigms would make sense, but on the other hand I don't see A.1 as a full-fledged curriculum that should be used as is rather than a blueprint that one could use to craft a curriculum.

fer-rum commented 3 months ago

I would consider it good-to-know. Not extremely important, but not negligible. The focus of the curriculum should be to illustrate what paradigms there are and how and when to use them.

As an example, I find that a lot of resource planning tasks - timetables, logistics … boil down to QSAT-problems that you can easily formulate if you have enough of a grasp of logic programming to formulate a CNF. Feed it to a solver, translate the result to something human readable and bingo.

Instead I find people now trying to train exhaustive AIs for this kind of job, because they do miss the knowledge about other established paradigms that could have helped them (and run faster and consume way less energy and may deliver more accurate results).


The fundamental goal is to build a broad range of knowledge and ideally invest some time to playing around with these to build experience that can help to later make more informed decisions which ones to employ for a specific problem.

sdruskat commented 3 months ago

➕ 1️⃣ on not giving focus to one paradigm over others. (Personally I think that functional programming may be more relevant than OOP in some disciplines.)

And thanks for the ping @annalenalamprecht, I'll take look at the SP section.

mhagdorn commented 3 months ago

My sneaky suspicion is that a lot if not most code (I probably mean programs here) is very linear and not even procedural: you start at the top reading some data, do some analysis and visualise the results.

sdruskat commented 3 months ago
  • The Software Publication (SP) skill is mainly concerned with licences, but (open-source) licensing is not the same as software publication, and perhaps we should also talk about software citation here? @sdruskat, your input would be appreciated!

See #243.

CaptainSifff commented 2 months ago

@annalenalamprecht to your second last point, with regard to the survey project: Now that @MakisH got the site up and running (Big Hug!) I could integrate it with commit a7c9b21bf0186233b1223da1f0151a7d58a36a90 .

CaptainSifff commented 1 month ago

Item two has been resolved by #243 .

CaptainSifff commented 1 month ago

Item (6) has been resolved with a7c9b21 .

CaptainSifff commented 1 month ago

item (5) has been resolved in e151fa921a68129eedb2b717993128c8ce000fde

CaptainSifff commented 1 month ago

(3) has already been rephrased: "Another part is given by..." Determined by..." e151fa921a68129eedb2b717993128c8ce000fde

CaptainSifff commented 1 month ago

item 1) moved to #249

CaptainSifff commented 1 month ago

Item (4) has been moved to #250

CaptainSifff commented 1 month ago

From the comments above, I would infer that our community opinion here is, that we emphasize knowing multiple paradigms. I added a small sentence in cb11c32 to at least bring in the word programming paradigm.

CaptainSifff commented 1 month ago

Closing now, since all two points have been adressed. The remaining points are now in two separate sub-issues