So to spare myself from being insulted, I may be posting a very stupid (or legit) question. (inb4 no such thing as stupid questions)
Anyways... I know absolutely NOTHING about redstone at the moment, lets leave it at that. I have watched some videos on peoples minecraft creations and I noticed that a lot of them say that they "programmed" it (mostly computers). Does learning minecraft (and later experimenting with, after learning most things) teach you programming too? Or is this kind of programming not related to any other kind of programming and relatively useless while not in minecraft?
I'm a novice/entry-level programmer, but I can say that redstone does teach you some programming basics. Specifically, unless you start building in-game computer hardware like some of the nuts out there, you'll learn about logic gates that just about everyone uses in anything beyond basic redstone application. The three basic gates are the AND, OR, and NOT gates, and can be combined to form some exceptionally complex circuitry.
programming in minecraft and programming in irl a two completly different things, in irl programming takes alot of knowledge on codeing (redstone isnt a code unless ou count it's I/O state) and all your doing with redstone is arranging it in such a way that.... well i geuss it could be compared to real programming, just ignore me, im a redstone newb as well but im learning quickly.
So to spare myself from being insulted, I may be posting a very stupid (or legit) question. (inb4 no such thing as stupid questions)
Anyways... I know absolutely NOTHING about redstone at the moment, lets leave it at that. I have watched some videos on peoples minecraft creations and I noticed that a lot of them say that they "programmed" it (mostly computers). Does learning minecraft (and later experimenting with, after learning most things) teach you programming too? Or is this kind of programming not related to any other kind of programming and relatively useless while not in minecraft?
Thanks!
Haha, I'm not going to insult you.
Redstone logic has enough in common with real-life digital logic that it can teach you certain aspects of real-world electronics!
It is not the same thing as computer programming (i.e., writing code in a programming language), but when people speak of programming devices in-game, what they are doing is related to "computer programming".
Programming takes place on the software level rather than the hardware level. Let's say you're making an electronic combination lock. Wiring the lock to open on a specific combination is not programming. But if you build it so that you can set a combination by pressing buttons and a set switch, that is programming, changing the behavior of a device by changing the state of its (digital) memory rather than the arrangement of its hardware.
Using a programming language like Java or C is a little more complicated, because it also has to interact with an operating system and other intermediate layers above the hardware level. Generally the devices we program in Minecraft do not have operating systems (but I wouldn't be surprised if some did!).
In addition, there is a relationship between logical operators for if-statements used in programming languages (and, or, nand, nor, not, etc.) and the logic gates used in redstone wiring as well as irl electronics. If you understand how one works, you have a sense of how the other works.
Programming in the sense that we are creating something that will follow a certain pattern like first open the door, hold that door open for 1 min and finally close it.
sequences we want the redstone to follow in a certain order, similar to programming.
It's not a general purpose programming which you might be thinking but something like we make a calculator only work as a calculator to add/subtract/divide/multiply ETC only and not make it run like an Ipod. Only one task is being done using redstone and repetitively sometimes, there are some that performs much more advance and complicated commands tho like how a tetris game might be if someone creates it.
Here is my simpe Paint application in Minecraft.
Above is my old 2011 project that I liked, I don't play that much minecraft anymore but I occasionally help out on the Redstone forum. Hope my answers can be of help, let me know if I am unclear, and a +REP would be nice for me.
Redstone logic has enough in common with real-life digital logic that it can teach you certain aspects of real-world electronics!
It is not the same thing as computer programming (i.e., writing code in a programming language), but when people speak of programming devices in-game, what they are doing is related to "computer programming".
Programming takes place on the software level rather than the hardware level. Let's say you're making an electronic combination lock. Wiring the lock to open on a specific combination is not programming. But if you build it so that you can set a combination by pressing buttons and a set switch, that is programming, changing the behavior of a device by changing the state of its (digital) memory rather than the arrangement of its hardware.
Using a programming language like Java or C is a little more complicated, because it also has to interact with an operating system and other intermediate layers above the hardware level. Generally the devices we program in Minecraft do not have operating systems (but I wouldn't be surprised if some did!).
In addition, there is a relationship between logical operators for if-statements used in programming languages (and, or, nand, nor, not, etc.) and the logic gates used in redstone wiring as well as irl electronics. If you understand how one works, you have a sense of how the other works.
That's my short answer.
Thank you very much for this answer! However I would like to inquire about something. I saw a youtube video with some guy who said he had friends working on a game of snake and he was working on a game of megaman (?). This honestly sounds extremely intense, but wouldnt that mean they would have to work on the software AND hardware level too? Wouldnt they need a display for games like that?
Thank you very much for this answer! However I would like to inquire about something. I saw a youtube video with some guy who said he had friends working on a game of snake and he was working on a game of megaman (?). This honestly sounds extremely intense, but wouldnt that mean they would have to work on the software AND hardware level too? Wouldnt they need a display for games like that?
I know you didn't direct that question at me, but did those people say how in-depth they were going to go? A recent Digital Diamond showcased a game of Tetris, for example, but it was done with stop-motion techniques.
redstone design in minecraft will mostly teach you digital circuitry, and if you get deep enough in some machine coding. as far as teaching you modern object oriented programming.....no, not even close. that's not to say the basics you pick up here won't help you.
Rollback Post to RevisionRollBack
When life gives you melons, you're probably dyslexic.
In addition, there is a relationship between logical operators for if-statements used in programming languages (and, or, nand, nor, not, etc.) and the logic gates used in redstone wiring as well as irl electronics. If you understand how one works, you have a sense of how the other works.
i agree with the rest, but comparing a conditional to an and gate is a bit of a stretch
EDIT: I think this got misinterpreted. To avoid more confusion, yes, from a logical standpoint you are absolutely correct.
Redstone is very similar to programming in how everything works and it helps you get used to things like logic gates to do more complex things. It will help you but it won't quite teach you everything you need to know.
Rollback Post to RevisionRollBack
If a post helps you, press that green button in the bottom right. || .
Knowledge of input/output from redstone logic gates DOES apply in the programming world. Knowledge of logic gates in programming is a very basic tool though. However, playing with redstone logic gates helped in my AP compsci class (ended up getting an easy A, and a 5 on the exam).
When I started using redstone, I was good at many other programming languages, sutch as Batch, Expression2 (lolz) and Java (and probably more but i kinda forgot the rest) but still, I found redstone quite hard to use. Now I'm a freaking' PRO at it. I have built many machines such as cobblestone generator(old pistons), a 10byte memory unit, a player detector without any pressure plates or BUD switches or anything, and more. :biggrin.gif:
Redstone doesn't teach programming but yet hardware. Minecraft created endless things to make in minecraft. A guy on youtube named RedStoneWarrior is currently making a working PC in minecraft. If you look on a circuit board those lines are similar to redstone. And those bumps and whatever are somewhat like logic gates. If you take apart a snes controller there is basicly one circuit taking in each input from buttons and giving the suggested output through the cable to the console itself.
Redstone doesn't teach programming but yet hardware. Minecraft created endless things to make in minecraft. A guy on youtube named RedStoneWarrior is currently making a working PC in minecraft. If you look on a circuit board those lines are similar to redstone. And those bumps and whatever are somewhat like logic gates. If you take apart a snes controller there is basicly one circuit taking in each input from buttons and giving the suggested output through the cable to the console itself.
No, redstone won't teach you programming itself. However, making complex redstone circuits trains two aspects which are relevant to programming.
First logic. Logic is a fundamental skill when programming. It's most visible application is that of boolean expressions (e.g. a AND b OR c) which are utilized in the guards (/conditions) of selection statements (if, case) and repetitions. But (predicate) logic is also what forms the basis which allows you to reason about correctness of programs.
Second, it can train a problem solving mindset which is quite similar to how you tackle programming problems. In other words, it might influence your way of thinking (divide and conquer, abstraction, grouping and structuring, all those kind of things).
Finally, if you dive deeply enough into building redstone computers you will eventually learn something about computer architecture, which in turn will allow you to write more efficient programs because you understand how computers work. However, at this point you are spending more time studying this material than you actually spend on redstone.
That's not a stretch at all. That's exactly what logic gates are. An "And" gate is a conditional that goes something like this:
IF (input1 = on) and (input2 = on) THEN output = on
ELSE output = off
END IF
It's exactly conditionals. There's no stretch at all.
I understand the example, but no programmer would write it like that.
if (input1 == true) and (input2 == true) then
Would be written as:
if input1 and input2 then
Your entire example would actually be written as:
output = input1 and input2
Rollback Post to RevisionRollBack
Support the Allocator! Find my inventions such as my pressure plate removal detector on the About Me page of my profile.
I'm still looking for more feedback on my configurable Redstone Gate mod. All gates and common circuits (such as e.g. clocks, edge detectors, latches and Flip-Flops) in a single block.
I can say that it is not a stupid question, especially seeing as so many posters here got it wrong. Working with redstone is programming, but it is programming via hardware. Yes, that actually exists. The ENIAC, for instance, had to be re-wired every time you wanted to run a new program.
The definition of a program says nothing about the way in which it is implemented.
Strictly speaking you are right. However, the two disciplines of circuit design and software programming are sufficiently different that one does not teach the other, though there most certainly is a synergy between them.
Rollback Post to RevisionRollBack
Support the Allocator! Find my inventions such as my pressure plate removal detector on the About Me page of my profile.
I'm still looking for more feedback on my configurable Redstone Gate mod. All gates and common circuits (such as e.g. clocks, edge detectors, latches and Flip-Flops) in a single block.
That's not a stretch at all. That's exactly what logic gates are. An "And" gate is a conditional that goes something like this:
IF (input1 = on) and (input2 = on) THEN output = on
ELSE output = off
END IF
It's exactly conditionals. There's no stretch at all.
I see you're point as far as the logic behind the two disciplines, using logic gates WILL teach you the logic based fundamentals. But, claiming that redstone will teach you object oriented programming is just too farfetched.
Rollback Post to RevisionRollBack
When life gives you melons, you're probably dyslexic.
So to spare myself from being insulted, I may be posting a very stupid (or legit) question. (inb4 no such thing as stupid questions)
Anyways... I know absolutely NOTHING about redstone at the moment, lets leave it at that. I have watched some videos on peoples minecraft creations and I noticed that a lot of them say that they "programmed" it (mostly computers). Does learning minecraft (and later experimenting with, after learning most things) teach you programming too? Or is this kind of programming not related to any other kind of programming and relatively useless while not in minecraft?
Thanks!
Haha, I'm not going to insult you.
Redstone logic has enough in common with real-life digital logic that it can teach you certain aspects of real-world electronics!
It is not the same thing as computer programming (i.e., writing code in a programming language), but when people speak of programming devices in-game, what they are doing is related to "computer programming".
Programming takes place on the software level rather than the hardware level. Let's say you're making an electronic combination lock. Wiring the lock to open on a specific combination is not programming. But if you build it so that you can set a combination by pressing buttons and a set switch, that is programming, changing the behavior of a device by changing the state of its (digital) memory rather than the arrangement of its hardware.
Using a programming language like Java or C is a little more complicated, because it also has to interact with an operating system and other intermediate layers above the hardware level. Generally the devices we program in Minecraft do not have operating systems (but I wouldn't be surprised if some did!).
In addition, there is a relationship between logical operators for if-statements used in programming languages (and, or, nand, nor, not, etc.) and the logic gates used in redstone wiring as well as irl electronics. If you understand how one works, you have a sense of how the other works.
That's my short answer.
sequences we want the redstone to follow in a certain order, similar to programming.
It's not a general purpose programming which you might be thinking but something like we make a calculator only work as a calculator to add/subtract/divide/multiply ETC only and not make it run like an Ipod. Only one task is being done using redstone and repetitively sometimes, there are some that performs much more advance and complicated commands tho like how a tetris game might be if someone creates it.
Above is my old 2011 project that I liked, I don't play that much minecraft anymore but I occasionally help out on the Redstone forum. Hope my answers can be of help, let me know if I am unclear, and a +REP would be nice for me.
Thank you very much for this answer! However I would like to inquire about something. I saw a youtube video with some guy who said he had friends working on a game of snake and he was working on a game of megaman (?). This honestly sounds extremely intense, but wouldnt that mean they would have to work on the software AND hardware level too? Wouldnt they need a display for games like that?
I know you didn't direct that question at me, but did those people say how in-depth they were going to go? A recent Digital Diamond showcased a game of Tetris, for example, but it was done with stop-motion techniques.
i agree with the rest, but comparing a conditional to an and gate is a bit of a stretch
EDIT: I think this got misinterpreted. To avoid more confusion, yes, from a logical standpoint you are absolutely correct.
That's not a stretch at all. That's exactly what logic gates are. An "And" gate is a conditional that goes something like this:
IF (input1 = on) and (input2 = on) THEN output = on
ELSE output = off
END IF
It's exactly conditionals. There's no stretch at all.
First logic. Logic is a fundamental skill when programming. It's most visible application is that of boolean expressions (e.g. a AND b OR c) which are utilized in the guards (/conditions) of selection statements (if, case) and repetitions. But (predicate) logic is also what forms the basis which allows you to reason about correctness of programs.
Second, it can train a problem solving mindset which is quite similar to how you tackle programming problems. In other words, it might influence your way of thinking (divide and conquer, abstraction, grouping and structuring, all those kind of things).
Finally, if you dive deeply enough into building redstone computers you will eventually learn something about computer architecture, which in turn will allow you to write more efficient programs because you understand how computers work. However, at this point you are spending more time studying this material than you actually spend on redstone.
I understand the example, but no programmer would write it like that.
Would be written as:
Your entire example would actually be written as:
I'm still looking for more feedback on my configurable Redstone Gate mod. All gates and common circuits (such as e.g. clocks, edge detectors, latches and Flip-Flops) in a single block.
The definition of a program says nothing about the way in which it is implemented.
I'm still looking for more feedback on my configurable Redstone Gate mod. All gates and common circuits (such as e.g. clocks, edge detectors, latches and Flip-Flops) in a single block.
I see you're point as far as the logic behind the two disciplines, using logic gates WILL teach you the logic based fundamentals. But, claiming that redstone will teach you object oriented programming is just too farfetched.