Body: <p>Some CS students (university level) are attracted to the profession because it promises a well-paying job after graduation, others because they are actually interested in CS as a science.</p>
  <p>In my experience, the extrinsically motivated students often have some kind of &quot;internal resistance&quot; towards learning theory, formalization, abstractions, and the like, which typically appear in Bachelor's level computer science courses.</p>
  <p><strong>Are there some scientific studies that show that the successful software engineers in practice (those working on more interesting projects, being able to job-hop whenever they want to, etc.) tend to also understand the theory of CS well?</strong></p>
  <p>To also motivate the extrinsically motivated learners, it would be useful to show these in the classroom. While there are, for instance, special issues of journals about <a href="https://dl.acm.org/toc/cacm/2003/46/9" rel="nofollow noreferrer">teaching the fundamentals of CS</a> that talk about the importance of understanding abstractions, theory, maths, and the like. To prevent the view that this is just stuff that academics who never met the real world think is important, it would be great to have some studies that show that most successful software engineers in industry learned the foundations.</p>
  <p>There is a lot of flexibility regarding what exactly is shown in the scientific study -- what is important is showing that spending time to really understand the foundations pays off in the long run.</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-01-29T16:19:41.613Z
Comments.Text: @njuffa Thanks for your comment! What do you think that overlap of the categories "can do theory" and "motivated by applying CS" is? Do motivate students to try to understand the theory well (rather than dismissing it as "that's only theory without use"), it would probably suffice that these silicon valley veterans understand or are able to apply theory, even if their motivation is a different one.
Comments.UserDisplayName: DCTLib
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-01-30T04:32:34.433Z
Comments.Text: Those who pursue graduate degrees in CS (Master or PhD) tend to have higher salaries and more employment options (job-hop). The same population presumably has more intrinsic motivation and better understanding of theory. But I sense you want to focus on those who do not want education beyond a bachelor degree.
Comments.UserDisplayName: user52817
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-01-31T01:56:32.847Z
Comments.Text: I'd like to see the research, but my anecdotal experience doesn't entirely support your thesis. Many of the most effective engineers I've worked with professionally don't have substantial educational backgrounds in CS and are basically great at learning fast and grinding daily to deliver. There's probably some correlation, since CS degrees can help teach those skills, but the question of whether it's worth the investment in a CS degree versus attending a bootcamp, working on personal projects and/or going to hackathons until landing a job isn't clear to me, depending on one's goals.
Comments.UserDisplayName: ggorlen
Tags: <student-motivation><cs-theory>
Title: Reference Request: Study on the connection between Abstraction/Theory abilities and Software Engineering Skills
ThreadText: # Reference Request: Study on the connection between Abstraction/Theory abilities and Software Engineering Skills
  
  (Asked by: username_0 on 2024-01-29)
  
  Some CS students (university level) are attracted to the profession because it promises a well-paying job after graduation, others because they are actually interested in CS as a science.
  
  In my experience, the extrinsically motivated students often have some kind of "internal resistance" towards learning theory, formalization, abstractions, and the like, which typically appear in Bachelor's level computer science courses.
  
  **Are there some scientific studies that show that the successful software engineers in practice (those working on more interesting projects, being able to job-hop whenever they want to, etc.) tend to also understand the theory of CS well?**
  
  To also motivate the extrinsically motivated learners, it would be useful to show these in the classroom. While there are, for instance, special issues of journals about [teaching the fundamentals of CS](https://dl.acm.org/toc/cacm/2003/46/9) that talk about the importance of understanding abstractions, theory, maths, and the like. To prevent the view that this is just stuff that academics who never met the real world think is important, it would be great to have some studies that show that most successful software engineers in industry learned the foundations.
  
  There is a lot of flexibility regarding what exactly is shown in the scientific study -- what is important is showing that spending time to really understand the foundations pays off in the long run.
  
  **Tags:** student-motivation, cs-theory
  
  > **Comments:**
  > **username_0**: @njuffa Thanks for your comment! What do you think that overlap of the categories "can do theory" and "motivated by applying CS" is? Do motivate students to try to understand the theory well (rather than dismissing it as "that's only theory without use"), it would probably suffice that these silicon valley veterans understand or are able to apply theory, even if their motivation is a different one.  
  > **username_1**: Those who pursue graduate degrees in CS (Master or PhD) tend to have higher salaries and more employment options (job-hop). The same population presumably has more intrinsic motivation and better understanding of theory. But I sense you want to focus on those who do not want education beyond a bachelor degree.  
  > **username_2**: I'd like to see the research, but my anecdotal experience doesn't entirely support your thesis. Many of the most effective engineers I've worked with professionally don't have substantial educational backgrounds in CS and are basically great at learning fast and grinding daily to deliver. There's probably some correlation, since CS degrees can help teach those skills, but the question of whether it's worth the investment in a CS degree versus attending a bootcamp, working on personal projects and/or going to hackathons until landing a job isn't clear to me, depending on one's goals.  
  
  ---
  
  ## 0 answers
  
  