EnglishGermanFrenchRussianItalianSpanish
Log inRegister
 
Test predicts ability to learn programming
Post new topic Reply to topic Goto page Previous  1, 2, 3, 4
View previous topic :: View next topic
Author Message
pjknibbs



MEDALMEDALMEDAL

Joined: 06 Nov 2002
Posts: 28261 on topic
Location: UK
Thank you for registering your game
PostPosted: Sat, 13. Jan 18, 08:10    Post subject: Reply with quote Print

kohlrak wrote:

Assembly and BASIC are popular for this reason: they're lower level tools with simpler things, upon which the newer higher level languages are based.


BASIC is in no way a low-level language. The reason it's popular is because of the home computer boom of the 80s, where almost all of them had a BASIC interpreter built in--many of today's older programmers can trace back their start in programming to one of those computers, at least in Europe.

Back to top
View user's profile Send private message
Observe





Joined: 30 Dec 2005
Posts: 2559 on topic
Location: Oregon, USA
Thank you for registering your game
PostPosted: Sat, 13. Jan 18, 08:31    Post subject: Reply with quote Print

pjknibbs wrote:
kohlrak wrote:

Assembly and BASIC are popular for this reason: they're lower level tools with simpler things, upon which the newer higher level languages are based.


BASIC is in no way a low-level language. The reason it's popular is because of the home computer boom of the 80s, where almost all of them had a BASIC interpreter built in--many of today's older programmers can trace back their start in programming to one of those computers, at least in Europe.

This ^^

You basically have: machine language -> assembly language -> Basic and all the other high-level languages. Basic, in its turn, was influenced by Fortran, which is still used to this day; primarily in certain scientific applications.

BTW, my first programming was using machine language for the Signetics 2650 microprocessor in 1975, to control a variable frequency, synthesized A.C. power supply for the U.S. Air Force. Smile

Back to top
View user's profile Send private message
Morkonan





Joined: 25 Sep 2011
Posts: 1598 on topic

Thank you for registering your game
PostPosted: Sat, 13. Jan 18, 10:15    Post subject: Reply with quote Print

kohlrak wrote:
Computer science isn't all that fluid, either. Everyone just comes up with their own new ideas that they think are new just because it has a new name, but really isn't....


Then, distill it - What is it? Here's a "definition" - "the study of the principles and use of computers." (courtesy of Google)

As a rule, anytime you use the same word to define a thing, it's not a "definition."What's a "truck?" "Well, I'm glad you asked that question! It's a truck!" /sigh

I get it, it's the "science of computers." OK. But, courtesy of Wikipedia (All Praise to The Almighty Wiki) -

"... An alternate, more succinct definition of computer science is the study of automating algorithmic processes that scale. A computer scientist specializes in the theory of computation and the design of computational systems.[1]..

Now, that is much more betterer. It's a heck of a lot more meatier than " it's about computers."

IF that is the most succinct definition, that's where one should start when teaching or learning it, right? Sure, there's lots of other stuff, but all of that builds on that concept. If it doesn't, then it's "something else." That's true of every subject, each having their branches of specialization, some becoming fully independent subjects themselves as a result.

Quote:
Quote:
What changes instruction in Computer Science? What is the active operator? What is considered "new knowledge?"


A person with an idea, a promise, and the belief that something they're doing is actually different.


Too general. Smile A promise of innovation isn't innovation. A claim that a new ball will roll further isn't innovation unless it does. It won't create a paradigm shift if it doesn't do... what? What must it effect or affect in order to drive true change? There's a nugget deep in Computer Science that will respond to that thing. What's that nugget and what does it pay attention to?

No, it's not easy, since the notion itself screams out that it's not easily predictable. But, like porn, any student of it should know it when they see it. Smile

Quote:
Rerepresentation of math is more accurate, to the degree that it can have functional properties. ...


THIS IS GOLD. I'm purposefully ignore the part where you went deeper into explaining this sentence. No more explanation is needed nor should the focus be clouded with needless words. Unfortunately, I'm talking now, supplying them all for you.

Is math an "abstraction?" Point to ponder, perhaps. But, what you're really doing is manipulating an existing system, mathematics, to control another system, physics. Mathematics, through all the funky controls implemented, manipulates physical controls to yield a desired result. But, mathematics itself, if it isn't truly the "language of the Universe" isn't the system you're manipulating.

You're re-representing the controls in mathematical terms. Why? Because, mathematics is an abstraction, representing the controls in place over a physical system. And, why math? Precision and rigor, no matter how it's defined. It's also much better than using Portuguese... Besides, things get difficult to really understand at their most basic level without maths. Maybe it is the language of the Universe, just not very well-liked by its inhabitants. I suppose some people like Portuguese, so let them be the "mathematicians."

Quote:
Math is more of an art than a science, even though we use it in science. I see computers as no different, aside from the fact that we use science to make computers. And if you understand the connection between the three, you start to view modern scientific theories (especially quantum physics, computer modeled events, etc) in a very, very new light, and probably not a positive one when you also realize how wildly inaccurate it is. Add psychology to the mix and you'll be a skeptic of human "knowledge."


I'm a skeptic of what people call knowledge. I think "knowledge" is a misleading term. I also think that most people don't consider our reality very well or very deeply, but that's another subject.

"There was a crooked man, and he walked a crooked mile,
He found a crooked sixpence against a crooked stile;
He bought a crooked cat which caught a crooked mouse,
And they all lived together in a little crooked house.
" - Mother Goose

Quote:
... As such, the more you know of a processor's assembly, the more you know about what you should and shouldn't do on it.


"Its assembly."

If it changes from time to time, something changes it and it's not fundamental. (Different architecture may require different instruction sets.) There are controls further below, operators that respond to the commands and "make do" stuff. Assembly, in this interpretation, is simply the most basic instruction set for those other things. And, it's the one that is open for manipulation to those uninitiated in the mysteries, since they'd set the house on fire if they were allowed to go any deeper...

If you type out assembly code, you're not moving electrons. You're telling something else to move them. Something in a particular chip or on the board responds, shunting things around according to your command. The existence of 101101101 is not reflected in little ones and zeroes lining up, since ones and zeros don't do anything themselves. There's a fuzzy electron bouncing or reaching, depending on how you look at it, being influenced in its movement, however you look at that, to avoid burning the whole thing down while still making something happen in the "aggregate."

Quote:
It's not inconceivable to teach from the atomic level. I've tried to do this a couple times, but your average Joe gets too bored. Which, i understand: arduino's are cool, but most people don't want to use them outside of picking up a "shield."


A blacksmith must have an understanding of metallurgy. That's the boring part to people that aren't blacksmiths. Smile In a way, a blacksmith is a practical chemist. A "computer scientist" may need a deeper, more functional, understanding of physics of the quanta, but a programmer needs to have some portion of that understanding as well. A cert carrying Cisco Engineer, some Novel guy, someone humping footballs writing netcode? Not so much. It might help, though.


On the subject of teaching and prediction of performance:

So, what works in other disciplines? That's the subject, right? "How do we make this betterer?"

History is a good subject to start with. It's all about "starts" anyway. Most teaching seems to include a lot of it in early classes. "The history of our subject, part one" is usually <insert class subject here> 101 level. Every textbook is full of "the history of the evolution of the making of the design of the study of the idea that is the result that we now call _____." Surely, that's important in some fundamental way besides an instructor bragging on how far we've come since the days when we actually had to chase our food.

I've had friends, mostly women, who decided to go into the profession of teaching. I can only assume, since I paid little attention, that such subjects start off with discussing Plato and a bunch of Greeks arguing with each other as students watched.

But, I also assume that they don't actually... do this. They don't move chairs around and then get students to stand up and start "teaching" in Teaching 101. If they don't do that, how can they be reasonably expected to understand how teaching has evolved and how it has improved? Or... has it?

If Computer Science is looking for a better way to teach and, perhaps, be able to predict a student's success given a set of teaching conditions, it may need to look to other professions, even ones some would consider to be unrelated. How do these professions achieve their goals with success? Copy that. Paste it. Save.

Quote:
This is the kicker with computers, and why it's especially difficult. We see it a little with arduino, but, in reality, we both make and use the tools. This topic is often hard to me in terms of game dev. I really want to make a game where it's moddable at the core. Thus, i'm a tool maker, not a tool using game maker.


I had a similar idea. I wanted a game that I couldn't predict and one that readily accepted complexities and responded to them. And, not just through some RNG, either. I wanted a game that built its own rules and changed them in response to "x" much like a person would, but still within certain limits. (Basically, "AI.")

A long time ago, in a basement far far away, I started coming up with a grand strategy modern warfare game. It was all just numbers with some primitive graphics, but I had loads and loads of data on units, strengths, weaknesses, terrain, etc. But, I sucked at programming, so it never got to the point where it would "do." I made a character generator and a sort of adventure maker for D&D, instead. That was easy. Smile Thus ended my dream.

Quote:
You'd be surprised how well a race-car driver knows about their automobile...


Well, kinda. I had a race-car driver that would constantly solicit me for sponsorship. We bought some tires for him and he plastered our name on the side of his car. Tiny letters. You get bigger letters if you pay more. Smile

Race-car driver "professionals" are Professionals. They have an in-depth knowledge of their field including how to change blinker fluid and all the other stuffs they should know about their tools. They have a specialized knowledge and capability inside their field, though.

A point spawned from another post, can't remember who's or where: As a college student, I once got offered a job working on a classified military project, simply because I could "computer." WTF? My "do computer" was pretty much limited to "make this fookin' thing run game and make this other thing get pr0n from teh bbs." And, one of the leads on the project, who wasn't computer literate, was scrambling to get staffed. I told him I sucked. He didn't care. "We'll get you taught, just show up and you're golden." The project got buku funding and is all over the place, today, revealed in the open, mostly, and still managing to get bunches of dollars thrown at it. Eventually, it'll all hit "sci-fi-reality" in a few years. I keep kicking myself whenever I think about it. But, no regrets, really, as I have no desire to make more of an idiot of myself in public on that scale. I'll just stick it out here in OT and accomplish much of the same thing, with less volume. Wink

Back to top
View user's profile Send private message
JSDD





Joined: 21 Mar 2014
Posts: 698 on topic
Location: Belt of Aguilar ... JSDD Headquarters
Thank you for registering your game
PostPosted: Sat, 13. Jan 18, 10:49    Post subject: Reply with quote Print

"ability to learn" is an inherent capability of all living creatures, isnt it ?

"programming" is nothing more than a sequence of instructions, what varies is the "language" in which these instructions are written ... i'm sure that every monkey can learn "program" a machine to give them a banana if you teach them the language ... there's no magic behind it


_________________
To err is human. To really foul things up you need a computer.
Irren ist menschlich. Aber wenn man richtig Fehler machen will, braucht man einen Computer.
Back to top
View user's profile Send private message
kohlrak





Joined: 28 Dec 2017



PostPosted: Sat, 13. Jan 18, 13:08    Post subject: Reply with quote Print

pjknibbs wrote:
kohlrak wrote:

Assembly and BASIC are popular for this reason: they're lower level tools with simpler things, upon which the newer higher level languages are based.


BASIC is in no way a low-level language. The reason it's popular is because of the home computer boom of the 80s, where almost all of them had a BASIC interpreter built in--many of today's older programmers can trace back their start in programming to one of those computers, at least in Europe.


Some processors execute basic without compilation. Technically, this makes BASIC a dialect of assembly. Not my argument, per se, but I've heard it before and i think it's a legitimate stance. It is certainly low level, even if interpreted.

Observe wrote:
pjknibbs wrote:
kohlrak wrote:

Assembly and BASIC are popular for this reason: they're lower level tools with simpler things, upon which the newer higher level languages are based.


BASIC is in no way a low-level language. The reason it's popular is because of the home computer boom of the 80s, where almost all of them had a BASIC interpreter built in--many of today's older programmers can trace back their start in programming to one of those computers, at least in Europe.

This ^^

You basically have: machine language -> assembly language -> Basic and all the other high-level languages. Basic, in its turn, was influenced by Fortran, which is still used to this day; primarily in certain scientific applications.

BTW, my first programming was using machine language for the Signetics 2650 microprocessor in 1975, to control a variable frequency, synthesized A.C. power supply for the U.S. Air Force. Smile


If you do know machine language, then you should also know that assembly is only a level of transcription, rather than translation. Either that, or you skipped learning assembly, at which point i feel really sorry for your programming experience.

Morkonan wrote:
kohlrak wrote:
Computer science isn't all that fluid, either. Everyone just comes up with their own new ideas that they think are new just because it has a new name, but really isn't....


Then, distill it - What is it? Here's a "definition" - "the study of the principles and use of computers." (courtesy of Google)

As a rule, anytime you use the same word to define a thing, it's not a "definition."What's a "truck?" "Well, I'm glad you asked that question! It's a truck!" /sigh

I get it, it's the "science of computers." OK. But, courtesy of Wikipedia (All Praise to The Almighty Wiki) -

"... An alternate, more succinct definition of computer science is the study of automating algorithmic processes that scale. A computer scientist specializes in the theory of computation and the design of computational systems.[1]..

Now, that is much more betterer. It's a heck of a lot more meatier than " it's about computers."

IF that is the most succinct definition, that's where one should start when teaching or learning it, right? Sure, there's lots of other stuff, but all of that builds on that concept. If it doesn't, then it's "something else." That's true of every subject, each having their branches of specialization, some becoming fully independent subjects themselves as a result.


Well, to that degree, you would expect, then, the main purpose of getting into the field as a whole without specialization would then be getting yourself a functional level of knowledge of all the major layers, to the point you can continue into your own research. But, by that definition, comp sci becomes a 101, an entry point into a more specialized field.

But, the truth is, the definitions you find, vs the definitions in the wild, are different. When you sign up for a "comp sci" course, like I did in highschool, it basically translates to "learn the flavor of the day programming language." In my case, the flavor of the day was Java (yep, i have Computer Science credits, but never went to college, so they're worthless to me). And, by that definition, the old Comp. Sci. was C++, which i taught myself years before. And the difference between Java and C++ from a language point of view? Very, very little. In fact, the stuff that the book i was reading failed to teach me about C++ i ended up learning through the java course. I had a potential employer ask me to write him some code to show my worth, and i passed the interview doing C# code when I never coded in C# or took a course on it. How? I googled the API and looked at the compiler errors when it wouldn't compile. He was real anxious to hire me, but then i turned him down for a very special set of reasons (i met someone who knew the guy, and he was over ambitious, and he was likely to go under [to this day, i don't know what happened to his company, if it moved or if he gave up]). For perspective, C# is probably the Comp. Sci. flavor of the day right now, begging to be replaced with something new, maybe C++17.

Quote:
Quote:
Quote:
What changes instruction in Computer Science? What is the active operator? What is considered "new knowledge?"


A person with an idea, a promise, and the belief that something they're doing is actually different.


Too general. Smile A promise of innovation isn't innovation. A claim that a new ball will roll further isn't innovation unless it does. It won't create a paradigm shift if it doesn't do... what? What must it effect or affect in order to drive true change? There's a nugget deep in Computer Science that will respond to that thing. What's that nugget and what does it pay attention to?


Well, my answer was a little towards the sarcasm side. The reality of innovation right now, as it's focused on programming languages, is basically everyone patting each other on the back and calling new features a welcomed addition. Pretty much everyone's converting their language to the same thing so they get brownie points for adding features that people enjoy from some other programming language. From what I can tell, the end goal is "how do we make it easier for people to learn programming, and do so making fewer mistakes?" Which never accomplishes it's goal, because the task of nannying the program makes certain tasks difficult, which makes it harder for students to get into programming, because they can't do what they wanted to do that got them learning in the first place. Or the language ends up being slow on real machines when doing real programs. Or, perhaps, something else that makes the whole "innovation" less practical. Ultimately, the "newer, easier, and safer" programming languages end up being like giving someone a dull knife: they just try that much harder to do what they want to do and end up cutting themselves (giving up or doing something they weren't supposed to do).

And if you really want some comedy, go look up the "goto debate." It's one of those debates that it usually takes a beginner or someone who's not studied in the field to tell the nanny side that they're absolutely full of it. The jist of the arguments boil down to the first code somehow making more sense than the second code.

Code:
while(true){
   command1
   command2
   command3
   command4
   command5
}


Code:

the_beginning_of_the_end:
   command1
   command2
   command3
   command4
   command5
goto the_beginning_of_the_end


If the goal is to do something over and over and over again, which one seems more "readable?" Yep, welcome to the politics of Computer Science. If you think it's any more than preference, note that the debate revolves around the programming languages that have both options available to the programmer.

Quote:
No, it's not easy, since the notion itself screams out that it's not easily predictable. But, like porn, any student of it should know it when they see it. Smile


How about the emperor's new clothes? People are seeing it when it's not even there. I'm still trying to see how lambdas in C++ are innovative when java et al had them for a long time. Don't get me wrong, i appreciate the complication of the tool (I honestly do appreciate having the option that i probably won't use, simply because it's an option), but don't say it somehow makes thing easier or is somehow innovative.

Quote:
Quote:
Rerepresentation of math is more accurate, to the degree that it can have functional properties. ...


THIS IS GOLD. I'm purposefully ignore the part where you went deeper into explaining this sentence. No more explanation is needed nor should the focus be clouded with needless words. Unfortunately, I'm talking now, supplying them all for you.

Is math an "abstraction?" Point to ponder, perhaps. But, what you're really doing is manipulating an existing system, mathematics, to control another system, physics. Mathematics, through all the funky controls implemented, manipulates physical controls to yield a desired result. But, mathematics itself, if it isn't truly the "language of the Universe" isn't the system you're manipulating.


I'm glad i finally heard someone agree with me on the idea that mathematics is not the language of the universe (odds are, you haven't even heard of me making this argument, but it's a staple of mine where science and politics intermix, and it equally destroys both common atheist and common religious doctrines). The thing is, however, that if mathematics is what it is, we're essentially making a new branch, where this new branch is mixed with physics and common notation and interpretation to manipulate a small amount of matter in this universe. If you think about it, it's incredibly inefficient, but still way more efficient than anything we've had before. This idea that wire 1 having electricity running through it represents 1, wire 2 having electricity flowing through it represents 2, wire three's electricity representing 4, and so on, is merely a "standard" that we conform to. We don't even have a standard for what values are addition, subtraction, etc. Programming languages above assembly are basically meant to hide this basic fact.

Quote:
You're re-representing the controls in mathematical terms. Why? Because, mathematics is an abstraction, representing the controls in place over a physical system. And, why math? Precision and rigor, no matter how it's defined. It's also much better than using Portuguese... Besides, things get difficult to really understand at their most basic level without maths. Maybe it is the language of the Universe, just not very well-liked by its inhabitants. I suppose some people like Portuguese, so let them be the "mathematicians."


The point is that the abstractions allow you to return to math, which is a common language that smart humans tend to speak more of than any other language. The messages don't need anything more than numbers and letters to represent numbers and sequences of numbers that you can't be bothered to remember. At the end of the day, it's still math, only we've manipulated the rules to sandbox it (or, rather, because without sandboxing we couldn't make a common interface with it).

Quote:
Quote:
Math is more of an art than a science, even though we use it in science. I see computers as no different, aside from the fact that we use science to make computers. And if you understand the connection between the three, you start to view modern scientific theories (especially quantum physics, computer modeled events, etc) in a very, very new light, and probably not a positive one when you also realize how wildly inaccurate it is. Add psychology to the mix and you'll be a skeptic of human "knowledge."


I'm a skeptic of what people call knowledge. I think "knowledge" is a misleading term. I also think that most people don't consider our reality very well or very deeply, but that's another subject.

"There was a crooked man, and he walked a crooked mile,
He found a crooked sixpence against a crooked stile;
He bought a crooked cat which caught a crooked mouse,
And they all lived together in a little crooked house.
" - Mother Goose


We seem to disagree on pretty much everything except this. So, I have a feeling that our disagreements revolve around a fundemental difference on how to handle this.

Quote:
Quote:
... As such, the more you know of a processor's assembly, the more you know about what you should and shouldn't do on it.


"Its assembly."

If it changes from time to time, something changes it and it's not fundamental. (Different architecture may require different instruction sets.) There are controls further below, operators that respond to the commands and "make do" stuff. Assembly, in this interpretation, is simply the most basic instruction set for those other things. And, it's the one that is open for manipulation to those uninitiated in the mysteries, since they'd set the house on fire if they were allowed to go any deeper...


The instruction set differences tend to vary wildly. While we do have some common elements like add, sub, etc, some of the even simpler operations like call, ret, mov may or may not exist in that form or in a completely different syntax. To the degree of there being any commonality in assembly, it boils down to 1 command per line. GNU Assembler Syntax for x86 even violates the standard "mneumonic destination, source" syntax. That said, there are fundementals to it, but everyone's got their own ideas. For every assembler, though, the basic syntax of the instructions can easily be learned in about 30 seconds. The instruction set learning curve depends on the CPU family, and the macro and conditional assembly depends on the assembler, but often follows a syntax that's relatively similar to another assembler's syntax, with some minor changes. Like the difference between C, C++, C#, Java, etc. You set them side by side and you might have trouble telling them all apart, but you usually can't just drop one in to replace the other, since they're different on "fundemental levels."

Quote:
If you type out assembly code, you're not moving electrons. You're telling something else to move them. Something in a particular chip or on the board responds, shunting things around according to your command. The existence of 101101101 is not reflected in little ones and zeroes lining up, since ones and zeros don't do anything themselves. There's a fuzzy electron bouncing or reaching, depending on how you look at it, being influenced in its movement, however you look at that, to avoid burning the whole thing down while still making something happen in the "aggregate."


More than one, but pretty accurate, otherwise, and unnecessarily abstracted. It really is as simple as "We have a thing called a transister where wires A, B, and C exist. If electrons flow from C (ground) to A (voltage source), then electrons can also flow from C to B, else it don't happen. Accepting that electricity flows through the path of least resistance, you basically string a bunch of these ABC combinations together (2, actually) and you can get a simple "and" or "or" gate, which then you string a few of those together to get some advanced logic regarding the standard representation of one number to mix with another number according to the same standard, and get an output from the overall circuit in the form of another number to the same standard. Now, if the line representing 1 controls whether or not the lights have power, and if the line representing 2 controls whether or not the locks have power, and the line representing 4 represents whether or not the security system has power, you punch in 6 to go to bed, and 7 if you're going to the store. It's scarier than it is complicated, and when you face it, it really does end up being simple.

Quote:
Quote:
It's not inconceivable to teach from the atomic level. I've tried to do this a couple times, but your average Joe gets too bored. Which, i understand: arduino's are cool, but most people don't want to use them outside of picking up a "shield."


A blacksmith must have an understanding of metallurgy. That's the boring part to people that aren't blacksmiths. Smile In a way, a blacksmith is a practical chemist. A "computer scientist" may need a deeper, more functional, understanding of physics of the quanta, but a programmer needs to have some portion of that understanding as well. A cert carrying Cisco Engineer, some Novel guy, someone humping footballs writing netcode? Not so much. It might help, though.


Certainly does. I guess your argument makes sense if you apply the pareto distribution, but employers are kind of sick of getting the 80% of applicants who understand 20% of the big picture. Sure, they can do scripts and such, which is the main task, but sometimes the task calls for a little above the bare minimum, and it also follows the pareto distribution, thus it's not every day, but it's far from rare, either, and it's causing problems.

Quote:
On the subject of teaching and prediction of performance:

So, what works in other disciplines? That's the subject, right? "How do we make this betterer?"

History is a good subject to start with. It's all about "starts" anyway. Most teaching seems to include a lot of it in early classes. "The history of our subject, part one" is usually <insert class subject here> 101 level. Every textbook is full of "the history of the evolution of the making of the design of the study of the idea that is the result that we now call _____." Surely, that's important in some fundamental way besides an instructor bragging on how far we've come since the days when we actually had to chase our food.

I've had friends, mostly women, who decided to go into the profession of teaching. I can only assume, since I paid little attention, that such subjects start off with discussing Plato and a bunch of Greeks arguing with each other as students watched.

But, I also assume that they don't actually... do this. They don't move chairs around and then get students to stand up and start "teaching" in Teaching 101. If they don't do that, how can they be reasonably expected to understand how teaching has evolved and how it has improved? Or... has it?

If Computer Science is looking for a better way to teach and, perhaps, be able to predict a student's success given a set of teaching conditions, it may need to look to other professions, even ones some would consider to be unrelated. How do these professions achieve their goals with success? Copy that. Paste it. Save.


Well, there's places in programming where that works, and places where that doesn't work. Success in another profession usually means knowing the information your rival professional doesn't know. This isn't the attitude we have with technology. Instead, we've tried to measure performance by "lines of code," without comparing it to the complexity of the problem. With math, this is akin to saying the guy who can solve 100 addition and subtraction problems in 1 hour with blocks is better than the guy who can calculate the square root of 10 numbers to 20 decimal placements in his head in 1 hour. Now, you would imagine that they would abandon such a system when they know even if they did compensate for the difficulty of the task, they still couldn't compensate for other factors, such as bad management assigning the wrong tasks to the wrong people, and then not even letting people whose code depends on each other even communicate, that they would give up the idea. Nope, Microsoft committed to that idea, anyway. We have to hire a professional to evaluate the craftsmanship and stability of a house, and we've been living in houses for how long now? Now try evaluating someone's code.

But when it comes to the history point, that's where my idea of teaching from the electron comes in. Teach from that, skip the vacume tubes we don't need anymore, and land on the language of the day, and you have your history. Teach the stages to at least a level that people can see it functioning (get out a multimeter, grab a few transistors, grab a few quad-ops and LEDs, grab some switches, grab a basic addre, grab an arduino, and show the stuff working exactly how you describe it to). What's cool about this is that we don't have to rob a museum to get our ancient artifacts of the field, and the prices are reasonable. Heck, for less than the price of one student to have a text book, a class of 20 can have their own artifacts.

I think what it boils down to is, what this one comp sci guy said (i wish i could find the video), that people aren't tinkering anymore (and my arguments in this post boil down to the fact that we're straight up discouraging it), so people are having trouble understanding the lower levels that make up what they teach. My teacher in highschool clearly didn't even know what assembly looked like (i had it on my screen after "finishing the book"), when he was straight up teaching the entire class that it looked like hex-decimal. He wasn't too pleased when the programming language on my screen didn't look like hex-decimal and i called it assembly. Granted, i live in a rural area and it wasn't college, but the united states is mostly rural. This is what the college professors are picking up. And i've indirectly found out through some students that it's this bad in colleges, too. It's ugly.

Quote:
Quote:
This is the kicker with computers, and why it's especially difficult. We see it a little with arduino, but, in reality, we both make and use the tools. This topic is often hard to me in terms of game dev. I really want to make a game where it's moddable at the core. Thus, i'm a tool maker, not a tool using game maker.


I had a similar idea. I wanted a game that I couldn't predict and one that readily accepted complexities and responded to them. And, not just through some RNG, either. I wanted a game that built its own rules and changed them in response to "x" much like a person would, but still within certain limits. (Basically, "AI.")

A long time ago, in a basement far far away, I started coming up with a grand strategy modern warfare game. It was all just numbers with some primitive graphics, but I had loads and loads of data on units, strengths, weaknesses, terrain, etc. But, I sucked at programming, so it never got to the point where it would "do." I made a character generator and a sort of adventure maker for D&D, instead. That was easy. Smile Thus ended my dream.


Which is a shame. Yet, we see these things are indeed happening, so they're ultimately possible, you just need to get back to the "do."

Quote:
Quote:
You'd be surprised how well a race-car driver knows about their automobile...


Well, kinda. I had a race-car driver that would constantly solicit me for sponsorship. We bought some tires for him and he plastered our name on the side of his car. Tiny letters. You get bigger letters if you pay more. Smile

Race-car driver "professionals" are Professionals. They have an in-depth knowledge of their field including how to change blinker fluid and all the other stuffs they should know about their tools. They have a specialized knowledge and capability inside their field, though.


That's the thing, though, programmers should be that specialized, and often times they're far from it. Someone who drives truck should be specialized like that, too. Someone who goes to and from work should know how to fill the tank, check the oil, and other basics. If your profession uses a computer (which, in modern times usually does), you should be able to do at least basic scripting or something to build some degree of self-sufficience. I'm not asking for them to implement PGP encryption on data on the fly or something. I'm just asking they can "git commit." Yet, in this post, that seems to be too specialized for even degree seekers.

Quote:
A point spawned from another post, can't remember who's or where: As a college student, I once got offered a job working on a classified military project, simply because I could "computer." WTF? My "do computer" was pretty much limited to "make this fookin' thing run game and make this other thing get pr0n from teh bbs." And, one of the leads on the project, who wasn't computer literate, was scrambling to get staffed. I told him I sucked. He didn't care. "We'll get you taught, just show up and you're golden." The project got buku funding and is all over the place, today, revealed in the open, mostly, and still managing to get bunches of dollars thrown at it. Eventually, it'll all hit "sci-fi-reality" in a few years. I keep kicking myself whenever I think about it. But, no regrets, really, as I have no desire to make more of an idiot of myself in public on that scale. I'll just stick it out here in OT and accomplish much of the same thing, with less volume. Wink


That stuff scares me, too. The general idea is, don't go near anything that has been touched by a project with that level of stability, otherwise you might not remember it.

JSDD wrote:
"ability to learn" is an inherent capability of all living creatures, isnt it ?

"programming" is nothing more than a sequence of instructions, what varies is the "language" in which these instructions are written ... i'm sure that every monkey can learn "program" a machine to give them a banana if you teach them the language ... there's no magic behind it


You'd think so, right? We do call some people "code monkeys" for a reason, but they seem to be hard to find, according to businesses. Personally, i just think businesses are looking in the wrong place, and people desiring to learn for real are also putting their trust in the wrong place. I'm sure there's some good education out there, somewhere, through the traditional methods of college, but it's not working, and it's not specific to programming. I think saturation is a big contributor to the problem. And thanks to all the talk about top paying jobs, i imagine people in law and med school have similar proble--oh wait, i just remembered that my girlfriend's menstrual cycle (affected by the endocrine system) had no connection to her thyroid (an organ in the endocrine system). She went to nursing school a month or two later, then apologized for making fun of me for calling BS. Within a week of starting classes, she was learning about the endocrine system and how finicky it is. It only took me 5 minutes and a guess to google and cross reference reputable articles, and general knowledge that the endocrine system is a bit touchy (thanks to all the meds people take, you can see imbalances in people all the time where one med leads to another med).

I tell people all the time that i'm not all that smart or knowledgeable on things, so me having a better track record than a professional medical practitioner in this area isn't me praising myself. It's me insulting the doctors. I could go on, but that was the most recent story.

Back to top
View user's profile Send private message
Morkonan





Joined: 25 Sep 2011
Posts: 1598 on topic

Thank you for registering your game
PostPosted: Sat, 13. Jan 18, 21:28    Post subject: Reply with quote Print

JSDD wrote:
"ability to learn" is an inherent capability of all living creatures, isnt it ?


That's debatable, as I'm sure the teachers in the thread would tell you. Smile

There's "learning" and "conditioning." They're different and it's almost impossible to say, with some creatures, if they have "learned" something or have just developed a conditioned response.

A plant experiment has several plants in pots and obstacles to their growth have been placed above them. They grow around the obstacles to maximize their exposure to light. Did they "learn" that? No. That's not even conditioning, it's an evolutionarily reinforced adaption, a pre-written script.

A planarian, one of the simplest "animals" there is and a popular addition to all grade-school biology classrooms, is put in a petri dish. Food is added to a part of the dish and a light is turned on. This is done until the tiny worm responds to the light by moving to the part of the dish where the food is being put, even if there is no food there. Did it "learn" that the presence of light meant "food?" No. Yes. Maybe.

You might like this: https://motherboard.vice.com/en_us/article/bm39p4/scientists-used-a-little-bee-puppet-to-teach-real-bees-how-to-play-bee-soccer

(They used a fake bee to teach real bees novel behavior.)

Is "learning" just a form of operant conditioning? Maybe in some ways, it is. It is certainly an outstanding survival mechanism, but then that implies intelligence. If it kills you, there's no way for the mechanism to be brought to bear, so learning only works for certain things. It takes a much higher order of intelligence to "learn" about things that could kill you and avoid them. Or, you just have to be lucky with genes that gives you traits which avoids the whole messiness of having to develop intelligence. (Faster, stronger, camouflage, etc.)

Quote:
"programming" is nothing more than a sequence of instructions, what varies is the "language" in which these instructions are written ... i'm sure that every monkey can learn "program" a machine to give them a banana if you teach them the language ... there's no magic behind it


They can be conditioned to respond. They can even make some limited reasoning. Sometimes, they can be surprising and actually innovate. They could even solve novel problems they hadn't yet been exposed to. But, it's not likely they could understand what it is they were doing and that's something necessary for a true programmer, right?

Back to top
View user's profile Send private message
kohlrak





Joined: 28 Dec 2017



PostPosted: Mon, 15. Jan 18, 16:14    Post subject: Reply with quote Print

Morkonan wrote:
JSDD wrote:
"ability to learn" is an inherent capability of all living creatures, isnt it ?


That's debatable, as I'm sure the teachers in the thread would tell you. Smile

There's "learning" and "conditioning." They're different and it's almost impossible to say, with some creatures, if they have "learned" something or have just developed a conditioned response.

A plant experiment has several plants in pots and obstacles to their growth have been placed above them. They grow around the obstacles to maximize their exposure to light. Did they "learn" that? No. That's not even conditioning, it's an evolutionarily reinforced adaption, a pre-written script.

A planarian, one of the simplest "animals" there is and a popular addition to all grade-school biology classrooms, is put in a petri dish. Food is added to a part of the dish and a light is turned on. This is done until the tiny worm responds to the light by moving to the part of the dish where the food is being put, even if there is no food there. Did it "learn" that the presence of light meant "food?" No. Yes. Maybe.

You might like this: https://motherboard.vice.com/en_us/article/bm39p4/scientists-used-a-little-bee-puppet-to-teach-real-bees-how-to-play-bee-soccer

(They used a fake bee to teach real bees novel behavior.)

Is "learning" just a form of operant conditioning? Maybe in some ways, it is. It is certainly an outstanding survival mechanism, but then that implies intelligence. If it kills you, there's no way for the mechanism to be brought to bear, so learning only works for certain things. It takes a much higher order of intelligence to "learn" about things that could kill you and avoid them. Or, you just have to be lucky with genes that gives you traits which avoids the whole messiness of having to develop intelligence. (Faster, stronger, camouflage, etc.)

Quote:
"programming" is nothing more than a sequence of instructions, what varies is the "language" in which these instructions are written ... i'm sure that every monkey can learn "program" a machine to give them a banana if you teach them the language ... there's no magic behind it


They can be conditioned to respond. They can even make some limited reasoning. Sometimes, they can be surprising and actually innovate. They could even solve novel problems they hadn't yet been exposed to. But, it's not likely they could understand what it is they were doing and that's something necessary for a true programmer, right?


Actually, one could question whether or not we actually understand mortality. We certainly fear it, and fear is usually of that which is unknown to us. Some people don't fear it, so it's not like we actually have a survival instinct. Workplace accidents also seem to fly in the face of this. If I said i got kicked in the jewels, you will wince, indicating that you feel the pain in your head. Thus, you can experience something without taking the actual damage. This allows us to condition humans for responses without actually doing things to them.

Back to top
View user's profile Send private message
mrbadger





Joined: 28 Oct 2005
Posts: 5655 on topic

Thank you for registering your game
PostPosted: Mon, 15. Jan 18, 21:32    Post subject: Reply with quote Print

Conditioning and humans is a non trivial subject.
Take fear for instance...

Humans come equipped with all kinds of fears that we have no use for, and we don't know why, or have no definite idea why, but we can't get rid of them.

Why are we so afraid of sharks? Dunno, but there is a definite fear response to them built into humans. Same for a number of aquatic creatures.

Same for Lions and such. 99.999% or so of our species has never seen one in a situation where they would be a threat, but we have a strong fear response to them.

Well maybe that one we do understand. But then why do we like cats so much?
If you ascribe to the Aquatic Ape theory then the Shark thing makes more sense, they were a threat for long enough for us to develop an instinctual fear response. But not otherwise.


Personally I do. But it's taking a while to get traction. That dumb zero evidence Savanna model still gets trotted out because some men in very fine hats thought it up.


_________________
If an injury has to be done to a man it should be so severe that his vengeance need not be feared. ... Niccolò Machiavelli
Back to top
View user's profile Send private message Visit poster's website
brucewarren



MEDAL

Joined: 26 Mar 2008
Posts: 1748 on topic

Thank you for registering your game
PostPosted: Mon, 15. Jan 18, 22:09    Post subject: Reply with quote Print

I think I have an idea as to why we like cats.

There's an account in the Bible of the Pharaoh of Egypt having a dream about cows. Joseph was supposed to have explained what the dream meant. The upshot of the tale is that Pharaoh took to storing 7 years worth of food in great big warehouses to tide everyone over the bad years.

Ancient Egypt was famous for being very fond of cats. Mice eat eat grain and other stored food. Cats keep the mice down. Coincidence?

Back to top
View user's profile Send private message
mrbadger





Joined: 28 Oct 2005
Posts: 5655 on topic

Thank you for registering your game
PostPosted: Mon, 15. Jan 18, 23:00    Post subject: Reply with quote Print

We do like useful things.

But I’m an Athiest, so I don’t beleive in mice.

Or something like that.

One of our cats kept batting me on the face last night to wake me up so I’d let him out. So right now I’m not so desperately fond of cats....


_________________
If an injury has to be done to a man it should be so severe that his vengeance need not be feared. ... Niccolò Machiavelli
Back to top
View user's profile Send private message Visit poster's website
Observe





Joined: 30 Dec 2005
Posts: 2559 on topic
Location: Oregon, USA
Thank you for registering your game
PostPosted: Mon, 15. Jan 18, 23:11    Post subject: Reply with quote Print

Morkonan wrote:
Is "learning" just a form of operant conditioning?

Learning is sometimes a very mechanical process of 'conditioning' gained by knowledge, by experience. This is an additive filling of the reservoir of memory. Mechanistic learning often has a specific purpose in mind (to pass an exam for example), and it stops as soon as we say "I know". There is another kind of learning that never stops, because ultimately, knowledge is always partial.

Back to top
View user's profile Send private message
JSDD





Joined: 21 Mar 2014
Posts: 698 on topic
Location: Belt of Aguilar ... JSDD Headquarters
Thank you for registering your game
PostPosted: Mon, 15. Jan 18, 23:13    Post subject: Reply with quote Print

not everyone likes cats. not everyone likes dogs, maybe because once you've been threatened by a strong / aggressive dog. not everyone likes snakes, but i do, i found them fascinating, learned about them, held 1 little 1.2 meter snake as a pet. but when it comes to spiders, then i'm as fearful as a little child ...

regarding the non-sense "fear about lions" .. i'm sure that an uneducated, nature-loving child loves cats as well as lions, up to the point that child actually sees what a lion actually is ... how big it is, what it eats for dinner, and so on ... you dont have to be bitten by a lion to fear it, but you have to have a little bit of knowledge about the lion to be able to "reasonably" fear it ...

some people fear things they dont know, others dont fear them, scientists for example work every day on issues they dont fully understand ...


_________________
To err is human. To really foul things up you need a computer.
Irren ist menschlich. Aber wenn man richtig Fehler machen will, braucht man einen Computer.
Back to top
View user's profile Send private message
kohlrak





Joined: 28 Dec 2017



PostPosted: Tue, 16. Jan 18, 08:26    Post subject: Reply with quote Print

mrbadger wrote:
Conditioning and humans is a non trivial subject.
Take fear for instance...

Humans come equipped with all kinds of fears that we have no use for, and we don't know why, or have no definite idea why, but we can't get rid of them.

Why are we so afraid of sharks? Dunno, but there is a definite fear response to them built into humans. Same for a number of aquatic creatures.

Same for Lions and such. 99.999% or so of our species has never seen one in a situation where they would be a threat, but we have a strong fear response to them.

Well maybe that one we do understand. But then why do we like cats so much?
If you ascribe to the Aquatic Ape theory then the Shark thing makes more sense, they were a threat for long enough for us to develop an instinctual fear response. But not otherwise.


Personally I do. But it's taking a while to get traction. That dumb zero evidence Savanna model still gets trotted out because some men in very fine hats thought it up.


What about fear being a matter of "this is of chaos?" Are you familiar with this idea of human beings constantly being torn between chaos and order? Things we are fairly familiar with, we're OK with. Things we're not overly familiar with, we're not OK with (some poeple like spiders, some people don't). I noticed people tend to be afraid of acquatic things. If you're partially familiar with it, but not overly, it becomes a fun thing, like a cat. Anything that attacks us looses it's order category and becomes chaos. For example, if ghosts can't hurt us, why do we fear them? Same with ETs. We have little to no evidence either exists, yet the absolutely freak us out.

brucewarren wrote:
I think I have an idea as to why we like cats.

There's an account in the Bible of the Pharaoh of Egypt having a dream about cows. Joseph was supposed to have explained what the dream meant. The upshot of the tale is that Pharaoh took to storing 7 years worth of food in great big warehouses to tide everyone over the bad years.

Ancient Egypt was famous for being very fond of cats. Mice eat eat grain and other stored food. Cats keep the mice down. Coincidence?


It explains why we tame cats. But you got people who find big cats adorable in videos, but not in person. Why? you know it won't hurt you, because it's not really there.

mrbadger wrote:
We do like useful things.

But I’m an Athiest, so I don’t beleive in mice.

Or something like that.

One of our cats kept batting me on the face last night to wake me up so I’d let him out. So right now I’m not so desperately fond of cats....


But you're not afraid.

Observe wrote:
Morkonan wrote:
Is "learning" just a form of operant conditioning?

Learning is sometimes a very mechanical process of 'conditioning' gained by knowledge, by experience. This is an additive filling of the reservoir of memory. Mechanistic learning often has a specific purpose in mind (to pass an exam for example), and it stops as soon as we say "I know". There is another kind of learning that never stops, because ultimately, knowledge is always partial.


Is there any evidence to suggest that we have different forms of learning that can be categorized as such?

JSDD wrote:
not everyone likes cats. not everyone likes dogs, maybe because once you've been threatened by a strong / aggressive dog. not everyone likes snakes, but i do, i found them fascinating, learned about them, held 1 little 1.2 meter snake as a pet. but when it comes to spiders, then i'm as fearful as a little child ...

regarding the non-sense "fear about lions" .. i'm sure that an uneducated, nature-loving child loves cats as well as lions, up to the point that child actually sees what a lion actually is ... how big it is, what it eats for dinner, and so on ... you dont have to be bitten by a lion to fear it, but you have to have a little bit of knowledge about the lion to be able to "reasonably" fear it ...

some people fear things they dont know, others dont fear them, scientists for example work every day on issues they dont fully understand ...


But, child not afraid of mommy or daddy who's big. Children seem universally wary of strangers, shy of an offering (which allows the child to believe s/he knows what the stranger's predictability, bringing the stranger into the ordered category).

Back to top
View user's profile Send private message
mrbadger





Joined: 28 Oct 2005
Posts: 5655 on topic

Thank you for registering your game
PostPosted: Tue, 16. Jan 18, 10:19    Post subject: Reply with quote Print

All this talk of teaching programming to beginners, and guess what I've just been told.

After five years, when I stopped post brain injury due to not being able to deal with the large class sizes, I'm finally back teaching introductory programming!

Not lectures. That would be too much, too many people, but workshops.

I'm quite excited. I'm not in charge, so there's no pressure, I'll just be teaching. I don't want to run any first year modules any more anyway. I prefer final year students.


_________________
If an injury has to be done to a man it should be so severe that his vengeance need not be feared. ... Niccolò Machiavelli
Back to top
View user's profile Send private message Visit poster's website
kohlrak





Joined: 28 Dec 2017



PostPosted: Tue, 16. Jan 18, 13:11    Post subject: Reply with quote Print

mrbadger wrote:
All this talk of teaching programming to beginners, and guess what I've just been told.

After five years, when I stopped post brain injury due to not being able to deal with the large class sizes, I'm finally back teaching introductory programming!

Not lectures. That would be too much, too many people, but workshops.

I'm quite excited. I'm not in charge, so there's no pressure, I'll just be teaching. I don't want to run any first year modules any more anyway. I prefer final year students.


That's awesome. Hopefully this conversation will also be useful towards that.

Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic Reply to topic Goto page Previous  1, 2, 3, 4
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum
Control Panel
Login Data
The time now is Tue, 16. Jan 18, 17:42

All times are GMT + 2 Hours


Board Security

Copyright © EGOSOFT 1989-2018
Powered by phpBB © 2001, 2005 phpBB Group
Template created by Avatar & BurnIt!
Debug: page generation = 0.30036 seconds, sql queries = 29