# Why do people enjoy studying computing/computer science so much?

**URL:** <https://boards.straightdope.com/t/why-do-people-enjoy-studying-computing-computer-science-so-much/305604>\
**Category:** In My Humble Opinion\
**Created:** [May 26, 2005, 2:39pm UTC](https://boards.straightdope.com/t/why-do-people-enjoy-studying-computing-computer-science-so-much/305604 "2005-05-26T14:39:09Z")\
**Posts on this page:** 5\
**Page:** 3

<div class="post-metadata">

**Author:** ![Shalmanese](https://avatars.discourse-cdn.com/v4/letter/s/45deac/32.png) [@Shalmanese](https://boards.straightdope.com/u/Shalmanese)\
**Post date:** [May 29, 2005, 4:54am UTC](https://boards.straightdope.com/t/why-do-people-enjoy-studying-computing-computer-science-so-much/305604/41 "2005-05-29T04:54:24Z")

</div>

> [@Dinaroozie](#):
>
> One of my lecturers once said that computer science should really be called informatics - while physics is the study of energy and chemistry is the study of matter, computer science is the study of information, and we need a better name. It’s just that computers are the things that deal in information very well, so we use them.  
> ~ Isaac

OT: What uni are you at? You may know some of my friends.

---

<div class="post-metadata">

**Author:** ![Dinaroozie](https://avatars.discourse-cdn.com/v4/letter/d/e9c0ed/32.png) [@Dinaroozie](https://boards.straightdope.com/u/Dinaroozie)\
**Post date:** [May 29, 2005, 1:44pm UTC](https://boards.straightdope.com/t/why-do-people-enjoy-studying-computing-computer-science-so-much/305604/42 "2005-05-29T13:44:41Z")

</div>

> [@](#):
>
> From **Shalmanese** :  
> OT: What uni are you at? You may know some of my friends.

I’m at the Melbourne University - I’m doing my honours year this year.

> [@](#):
>
> From **bitwise** :  
> Write a program that prints its own source code.

Those things are pretty snazzy. I doubt I’d have it in me to write one of those… I think they’re called ‘quines’, in case anyone wants to search for them. Also, **bitwise** is a very cool name.

~ Isaac

---

<div class="post-metadata">

**Author:** ![Taran](https://avatars.discourse-cdn.com/v4/letter/t/edb3f5/32.png) [@Taran](https://boards.straightdope.com/u/Taran)\
**Post date:** [May 29, 2005, 4:18pm UTC](https://boards.straightdope.com/t/why-do-people-enjoy-studying-computing-computer-science-so-much/305604/43 "2005-05-29T16:18:45Z")

</div>

They are indeed called quines. For extra fun, write a program which takes an input program, turns it into a quine, and outputs the result.

[sub]grumble grumble had to do that in _freshman year_ grumble grumble _in Java_ grumble grumble[/sub]

---

<div class="post-metadata">

**Author:** ![TimeWinder](https://avatars.discourse-cdn.com/v4/letter/t/bcef8e/32.png) [@TimeWinder](https://boards.straightdope.com/u/TimeWinder)\
**Post date:** [May 30, 2005, 6:36am UTC](https://boards.straightdope.com/t/why-do-people-enjoy-studying-computing-computer-science-so-much/305604/44 "2005-05-30T06:36:50Z")

</div>

Re: the OP - Computer programming is the closest thing to magic (in the incantations / spellcasting sense) that actually works in the real world. I can make anything\* happen if I can come up with the right formula. Who WOULDN’T want that sort of power?

Re: Holy wars - Holy wars on programming language (and OS, and editor…) amuse me.

PROBLEMS usually come with a set of constraints (required operating systems, library interoperability, problem domain, performance, development time, memory usage, architecture, available tools…). Evaluate the constraints and you’ll usually be left with only a small collection of languages to choose from: pick whichever one you want at that point, but don’t believe that your choice – perfect as it may be for that problem – is therefore the right one for all problems.

Yes, this means you need to know several, and use them. Frankly, anyone whose chosing a reference-based language because they don’t understand or like pointers shouldn’t be programming at all until they rectify the lack of understanding. You’d be stunned how often I’ve had to fix a pointer problem in VB or Java - the pointer just wasn’t obvious to the person who wrote the code. For similar reasons, I think everyone should learn at least one assembly language, SQL, and Lisp/Scheme, even if you’ll likely never use them in professional (or hobby) work. I’ve never been paid for a line of Lisp code, or written any at all for at least fifteen years. But I’d guess that things I learned from it add $10K/year to my salary.

- computable, at least. But while the theoretical limits of computation are pretty well known at this point, the practical ones are still wide open.

---

<div class="post-metadata">

**Author:** ![Monstre](https://avatars.discourse-cdn.com/v4/letter/m/e274bd/32.png) [@Monstre](https://boards.straightdope.com/u/Monstre)\
**Post date:** [May 30, 2005, 3:18pm UTC](https://boards.straightdope.com/t/why-do-people-enjoy-studying-computing-computer-science-so-much/305604/45 "2005-05-30T15:18:32Z")

</div>

> [@TimeWinder](#):
>
> Frankly, anyone whose chosing a reference-based language because they don’t understand or like pointers shouldn’t be programming at all until they rectify the lack of understanding.

AMEN! Sing it, brother!

“Hey, professor! I built this Java class, and it’s got that composition thing we learned. You know, the “has-a” thingy. Whattya think, teach?”

```auto

class Doohickey
{
   private StringBuffer buf;
   private String name;

   public Doohickey(StringBuffer b, String n)
   {
      buf = b;
      name = n;
   }

   // ... more methods ...
}

```

(Prof. Monstre: “Well, it’s half okay…”)

[Previous page](https://boards.straightdope.com/t/why-do-people-enjoy-studying-computing-computer-science-so-much/305604.md?page=2)
