[opensource] RESOLVE

Aaron Joseph bonesawosu at gmail.com
Sun Feb 8 12:49:14 EST 2009


Bullseye!!!!!!


--Aaron Joseph


On Sun, Feb 8, 2009 at 12:34 PM, Tyler Sampson <tdsampson at gmail.com> wrote:

> I'll throw in my two cents...why not.
>
> I'm going to start my argument by using the analogy of programming (formal)
> languages to natural languages. There are obviously differences, but the
> underlying concept of *language* remains the same. When you learn a new
> natural language, for instance if you are a native English speaker and you
> want to learn Spanish, you don't have to re-learn all the concepts. That is,
> you don't need to re-learn what a verb is, or what a noun is, you already
> know that. You have to relearn some grammar and spelling, but you don't need
> to re-learn how to form thoughts. Though structure and syntax change from
> language to language, really all any language is is a way to communicate
> ideas from one being to another (human-to-human, human-to-computer,
> human-to-dog, etc.).
>
> The 221/222/321 series is not about learning a language. If it were
> possible to get concepts to sink in without labs, they'd be just as well off
> teaching it with pencil and paper, no computer necessary. (See:
> http://en.wikipedia.org/wiki/Edsger_W._Dijkstra). Unfortunately, we must
> use some language to learn the concepts. You can't speak English by just
> looking at pictures and the words leap from your mouth. You actually need to
> know the language.
>
> So far, I am on board with a lot of what the people arguing against Aaron
> are saying. Learning Resolve is not the point of the "Resolve sequence". The
> point of it is to give you a solid understanding of the concept of formal
> languages, so that you know the concepts, thereby making learning new
> languages.
>
> However, I ultimately find the method to be flawed. Let's go back to our
> natural language analogy. Let's pretend that we're parents of a newborn
> child (a freshman!). We want to teach our child how to communicate
> effectively, and good concepts behind language. Unfortunately for Junior,
> English (read: C++) is a really *terrible* language for this. There's lots
> of confusing syntax and inconsistent rules. So, rather than teach Junior
> English, we decide to teach him German (read: Resolve). It's sort of like
> English, but the rules are a little more predictable. (Note: I'm not a
> linguist so I don't know if German is actually less complicated than
> English...just assume for argument's sake that it is.) So, we spend the
> first 5 years (read: 221/222/321) of Junior's life only speaking German to
> him. Then, we send Junior off to Kindergarten (read: internship search, or
> CSE 560). Uh-oh! It's an English speaking Kindergarten (he understands
> Kindergarten, since it's a German word, but that's about it). Junior fails
> and gets put into the remedial class. Of course, since he has such a great
> understand of natural language concepts now, he flies through the remedial
> class and is soon speaking English pretty well. However, he is now far
> behind the other children, because he failed Kindergarten.
>
> Maybe the situation I have provided above is a bit contrived, so let me
> explain my point straightforwardly: there is no reason not to teach a "real"
> (i.e. industrially used) programming language for teaching concepts. Now, as
> I have said, C++ would be a bad way to do this. It's clunky, got terrible
> syntax, etc. I have not seen one good reason anywhere on the Resolve website
> that explains why Java cannot be used. The only thing I see is that they
> want to hide reference/value semantics until the second half of the
> sequence. I had no experience with Java coming into 421 (which I took last
> quarter). I was shocked at how similar many of the things that exist in Java
> were so similar to Resolve, such as interfaces, extends, abstract, etc.
> (that basically are represented by virtual void or =0 in C++).
>
> I get the argument of using an easier to understand language to teach
> concepts. Java is that language. The way  the sequence is taught now
> accomplishes its objective of teaching concepts of CS. But if it is possible
> to do the same thing, while giving students experience with a programming
> language that is functional outside the Ivory Tower, then why not do it?
>
>
> -- Tyler Sampson
>
>
>
> On Sun, Feb 8, 2009 at 11:35 AM, Aaron Joseph <bonesawosu at gmail.com>wrote:
>
>>
>> *I completely agree, in fact I decided to be in the electrical
>>> specialization of ECE for that reason alone. I figure I'm better off
>>> teaching java or c++ to myself as opposed to taking these resolve courses.
>>> *
>>
>>
>> Well, there are still some good underlying principles that are taught in
>> resolve... it's just taught with a language that becomes worthless after get
>> out of the series. 560 is a great class, and 660 is good if you take it with
>> the right people.
>>
>> I wouldn't let resolve be my deciding factor for whether or not to do the
>> Computer Specialization. ECE is about architecture, not programming. So
>> maybe ece 206, 265, 567 would be better classes to base your decision on.
>>
>> --Aaron Joseph
>>
>>
>>
>>
>> On Sun, Feb 8, 2009 at 11:35 AM, Daniel Zeleznikar <zeleznikar.2 at osu.edu>wrote:
>>
>>> "ECE majors don't take language courses. We take 221,222,321,560,660 and
>>> that's it. So resolve is a waste of time to me."
>>>
>>> I completely agree, in fact I decided to be in the electrical
>>> specialization of ECE for that reason alone. I figure I'm better off
>>> teaching java or c++ to myself as opposed to taking these resolve courses.
>>>
>>> On Sun, Feb 8, 2009 at 8:52 AM, Aaron Joseph <bonesawosu at gmail.com>wrote:
>>>
>>>>
>>>> I'm replying to shauns message in this thread so that we dont have 3
>>>> threads floating around.
>>>>
>>>>
>>>> RESOLVE/C++ is definitely not C++. Not even close. It just happens to be
>>>> built in C++. RESOLVE is about using those cryptic math definitions that
>>>> brian mentioned, which is somehow supposed to help people understand what's
>>>> going on. It's just a stupid concept to try to make something more
>>>> understandable by adding these math definitions as comments. And they really
>>>> push this idea as if it's useful. That's why I want to see some java pop in
>>>> there.
>>>>
>>>> As for taking 421 or 459... ECE majors don't take language courses. We
>>>> take 221,222,321,560,660 and that's it. So resolve is a waste of time to me.
>>>> If they used pure C++ then I'd be totally fine with that too... but the
>>>> bastardized version they use doesn't cut it.
>>>>
>>>> I'm happy that at least Brian gets what I'm talking about. The class
>>>> would be so much better if the same stuff were done in java and if they got
>>>> rid of the whole math respresentation thing.
>>>>
>>>>
>>>>
>>>> --Aaron Joseph
>>>>
>>>>
>>>> _______________________________________________
>>>> Opensource mailing list
>>>> Opensource at cse.ohio-state.edu
>>>> http://mail.cse.ohio-state.edu/mailman/listinfo/opensource
>>>>
>>>>
>>>
>>>
>>> --
>>> Dan Zeleznikar
>>> daniel.zeleznikar at gmail.com
>>> zeleznikar.2 at osu.edu
>>> (216) 233-6232
>>>
>>
>>
>> _______________________________________________
>> Opensource mailing list
>> Opensource at cse.ohio-state.edu
>> http://mail.cse.ohio-state.edu/mailman/listinfo/opensource
>>
>>
>
> _______________________________________________
> Opensource mailing list
> Opensource at cse.ohio-state.edu
> http://mail.cse.ohio-state.edu/mailman/listinfo/opensource
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.cse.ohio-state.edu/mailman/private/opensource/attachments/20090208/cca40449/attachment.html


More information about the Opensource mailing list