Skip to content

Instantly share code, notes, and snippets.

@tonymorris

tonymorris/ysu.txt

Created Apr 20, 2017
Embed
What would you like to do?
YSU computer science has a reputation for anti-intellectualism
[06:45:34] <relrod> Do not ask me to rant about CS education. https://images.srv1.elrod.me/do-not-ask-me-to-rant-about-cs-education.png
[06:45:39] <relrod> bad idea for everyone
[06:45:40] <relrod> :slightly_smiling_face:
[12:30:07] *** Joins: caraballo114 (caraballo114@irc.tinyspeck.com)
[12:53:11] <djday01> CS education in general or at YSU?
[13:08:24] <tonymorris> they still teaching you the object oriented woowoo magix?
[22:16:27] <mrdegenova> I mean, they teach it, but they don't claim its magic, just another tool in the toolbox and one that is widely used in the world.
[22:17:46] <mrdegenova> @relrod This one was made with you in mind :joy: https://imgs.xkcd.com/comics/team_chat.png
[22:36:05] <tonymorris> haha, I used to lecture OO nonsense 15 years ago. http://blog.higher-order.com/blog/2008/12/04/no-such-thing/
[23:22:53] <mrdegenova> Just because there is no strict definition of OO, doesn't mean that its style isn't used. It is indeed widely used, and YSU focuses on "teaching for the job/real world" most of the time. As such, because OO techniques are widely used in workplaces, it makes sense to teach it. Programming has evolved many times in order to facilitate an easier understanding, building, team coordination, and a multitude of other things. Even if there isn't a strict, mathimatical-like definition of it, doesn't mean that it doesn't exist nor that it shouldn't be taught. C/C++ does a lot of weird things, but that's because it was created for use in the field (in Cs case, creating UNIX) rather than academia. In the computer world, a great many things are the way they are not because of academic research, or even if it makes sense, many of it is simply "thats just the way it is". Heck, look at Intel's architecture as an example of it.
[01:17:21] <relrod> @djday01 most of the rant was about in CS education in general. Some at the end was more ysu specific.
[01:17:21] <relrod> [April 18th, 2017 10:48 PM] djday01: CS education in general or at YSU?
[01:50:22] <jwsternthal> So, Windows decides to update, and it changes the boot order, deciding to boot to legacy, not its own EFI Boot Manager, so I awake to grub rescue. Windows shouldnt be changing EFI/ BIOS settings..
[02:16:32] <mrdegenova> Welcome to windows!
[04:45:13] <relrod> @mrdegenova To not have one definition is to have no definition, so "its style" cannot be used because "it" is not defined. Indeed, programming has evolved much over time, which is why some of us are left to wonder why universities (and industry, but that's a conversation for later) continue to push to live decades in the past. Now, I think we can agree that something being created "for use in the field" should strive to produce (correct, valid, useful) results in the field. And indeed, some things do this, but your examples "C/C++" do not. Further, C was _not_ created to create UNIX, UNIX existed first but was pretty early on rewritten in C. There is no "that's just the way it is," and as a computer _scientist_, I would think it would be in your nature to reject such a thought, not promote it. Intel's architecture is a great example: I'd encourage you to look up the FDIV bug which is what caused Intel to begin caring about formal verification; I went to a summer school in California two years ago and one of the lecturers (John Harrison) works at Intel, where he is formalizing x86_64 in HOL Light - a tool that uses functional programming (OCaml) and type theory to ensure that there are no bugs.
[05:11:48] <mrdegenova> Sorry about the length.
[05:11:49] <mrdegenova> @relrod My main point was that industry uses the OO paridgem quite commonly, as such, is it not the job of a University to prepare students for going into the field? If functional programming was more widely used throughout the industry, then schools would teach it. But, as it stands, functional programming has a small adoption size.
[05:11:49] <mrdegenova> While I did misspeak, it is not wrong that C was created for the task of building UNIX (though, as you've stated, earlier versions existed). Those at Bell labs created C in order to have a language that was closer to the metal, yet provided advantages over programming in pure assembly. It is not a "safe" language. Heck, it was built with the idea that the people using would know what they were doing, and would want to "hack" things together, because often, weird tricks and unreadable messes grabbed that extra bit of performance out of (then) weak machines.
[05:11:49] <mrdegenova> With regards to Intel's architecture- I wasn't refering to the toolchain they use, but rather the architecture itself. Its a mess. They have done a fantastic job sustaining their architecture, but huge portions of it are the way it is, because for backwards-compatibility reasons, they can't be changed. This has made it much harder for Intel to adapt their architecture to increase performance. Have an old rarely used instruction? have to keep it, and the nessicary hardware, because something might use it. This would be an example of something that is just "the way it is".
[05:11:49] <mrdegenova> > There is no "that's just the way it is," and as a computer _scientist_, I would think it would be in your nature to reject such a thought, not promote it.
[05:11:49] <mrdegenova> Sometimes, that is exactly the case however. To argue otherwise would be turning a blind eye to how things are actually done. To wish otherwise doesn't fix it. Many graduating students first job won't be writing the next up and coming thing using the best language for the job, but rather be maintaining an old codebase written by a shoddy programmer and you're luckily if its not Java 3.
[05:11:49] <mrdegenova> I think what we have here is a disconnect between what we want the program to be about- I go for computer science to learn how to work in the field, it seems like you are interested in the theory of computer science in its pure form. However, the application of computer science are just as important to cover as the pure theory. I do not disagree that more theory should be explored in the University setting, but I can't blame them for also teaching how things are actually done.
[05:21:11] <amp9312> Despite only catching 75% of the terminology here, this debate is very intriguing.
[05:26:34] <relrod> @mrdegenova I have some things to do atm, but I will respond to this a bit later. :)
[11:31:41] <jennalwise> I'm a theoretical mathematician who loves the OO programming style. Also, OO can certainly be referred to as "it" as most people have an agreed upon definition/description of the OO style. It is comparable to referring to the English language as "it". It may be the case in many fields that OO produces results that are correct, valid, and useful without requiring mathematical proofs as well as having the added bonus of improved readability and reuse capabilities. This is not always the case of course, but neither is the necessity of functional programming all the time. It is also fairly easy to produce code in OO style as it is extremely intuitive which is one of the draws of the language. There are trade offs to using each programming language and programming language styles which must be discussed before approaching any new project. So to limit your education to one or the other style or to a single language is to limit your abilities as a programmer and software designer.
[11:32:46] <tonymorris> the best attempt to define OO is by Luca Cardelli, by the way.
[11:33:05] <tonymorris> it's the homeopathy of computer science, magic woowoo nonsense that requires immediate dismissal out of hand
[11:34:43] <tonymorris> I am hiring Haskell programmers at the moment; an understanding of industry programming, including all the nonsense like OO, is highly desirable. Come to the real world with me!
[11:35:24] <joeduncko> Yo, if we can not refer to programming paradigms and languages that aren't our preferred tooling as "nonsense" and "woo woo magic" I'd really appreciate it.
[11:35:49] <tonymorris> I will withhold from stating true facts from hereon.
[11:36:05] <joeduncko> It's not productive conversation, and makes people feel uncomfortable.
[11:36:25] <tonymorris> Well, it definitely is productive conversation, and one that I have with other university students quite regularly, and they benefit from doing so.
[11:36:32] <tonymorris> Mostly, because it is a matter of fact.
[11:36:43] <jennalwise> Just because something can't be formalized at this point in time doesn't make it woo woo magic[11:36:52] <tonymorris> I used to teach OO at university, then afterward, we'd do "actual learning", for example
[11:36:57] <tonymorris> that's not what I said
[11:37:05] <tonymorris> I gave an article that demonstrates socratically that it is nonsense
[11:37:10] <tonymorris> attempts to formalise also failed
[11:37:21] <tonymorris> I am one such individual who has attempted this, along with Cardelli
[11:37:41] <tonymorris> find me a better attempt at "what it even means" than this, and I will stop stating the matter of fact
[11:38:04] <jennalwise> Still doesn't mean it's woo woo magic (as you refer to it as an insult)
[11:38:09] <tonymorris> it is not an insult
[11:38:20] <tonymorris> that you might choose to take it that way is up to you
[11:38:21] <jennalwise> And yet it tends to come off as one
[11:38:29] <tonymorris> fine, you are welcome to take it that way
[11:38:32] <tonymorris> it remains, matter of fact
[11:38:37] <tonymorris> homeopathy is also magic woowoo
[11:38:40] <jennalwise> In your mind mabye
[11:38:45] <amp9312> Elitism is usually frowned upon, even on professional grounds. I suppose better terminology would be simpler, peculiar, or more technical.
[11:38:49] <tonymorris> and everyone who has explored the question
[11:39:00] <tonymorris> or, if you have some work that we are all unaware of, let's see it
[11:39:21] <tonymorris> "boo hoo that makes me feel bad" is not particularly admirable work
[11:39:25] <joeduncko> As one of the admins, it's my job to make sure that people feel comfortable. People learn best when they are comfortable with the people they are learning with and from. @tonymorris , I respect your opinions and deep knowledge base, but I've had several people message me privately saying you're tone makes them feel uncomfortable. If you could try to keep the slander to a minimum, I'd appreciate it. If you can't, I'm sorry to be that guy, but I'll have to kick you from this chat.
[11:39:40] <tonymorris> joeduncko: OO does not make me feel comfortable.
[11:39:55] <joeduncko> *sighs*
[11:40:24] <tonymorris> do you realise you are stating that a technical opinion, that you dislike, "makes people feel uncomfortable", and therefore, cannot be stated?
[11:40:32] <tonymorris> try to understand the consequences of this
[11:40:59] <tonymorris> am I allowed to privately believe it, along with the zillions of people who have bothered to try answering the question, and come to the same conclusion?
[11:41:08] <jennalwise> I wouldn't say woo woo magic is a technical opinion just cause formalizations of OO fail
[11:42:05] <tonymorris> again, I did not say that.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.