Well. I've learnd my first programming language.. but


#1

Hello…
Well… as stated in the title… I feel like learning a programming language is fine… but it’s missing something…
i’ve never studied about computers in school… (everything is self thought) and becuase of that I feel like knowing a programming language isn’t enough as I don’t really how computers actually work… how graphics work… how memory works and so on… (well… I know that it is about transistors and changing from 0 to 1… and this way using electricity as information rather than power…) but more into computers… I don’t know the basics…
I’m honestly not even sure if there is anything there…
I would like to study what computer scientists study before studying a language… and sadly i’m clueless what it is…
So I hope somebody can help me and guide me with what i’m looking for…
Thanks


#2

You can make logic gates with those transistors, and combine them together to create instructions like adding and subtracting, if you enumerate those instructions then you’ve got yourself an instruction set.

Generally those instructions are to load one or two values and which instruction to carry out, after which you may want to put the result somewhere (moving would also be an instruction) or do more operations

Then you do that on repeat, and you’ve got a cpu. A loop carrying out instructions. Some languages (like python) use a vm which is behaving much like a cpu (hence why called virtual machine)

Then you hook that cpu up to a bus, and you also connect memory and such to that bus, so that the cpu can now address memory and other devices


#3

Go to your local library and withdraw books about computers, how they work, and what they are used for. We don’t need to be computer scientists or electrical engineers but we can learn about the very basics in the technology.

Start with a history of computers. That will take you back to very early days, such as the Turing Machine, Bletchley Park, Princeton University, early days of NASA, etc. We do not need to be programmers to learn how programs work (elementary principles) just as we don’t need to be scientists to learn the basics of how computers have aided the progress of science and information technology.

There are hundreds of books on the subject of computing… Look for the oldest ones, first. They will be much more generalized than more recent ones (that will more resemble Scientific American articles). Speaking of SA, they will have articles going all the way to the early years of that periodical and your local library will likely have the full collection.


#4

This looks like an awfully good place to start to get an overview
https://www.youtube.com/playlist?list=PL8dPuuaLjXtNlUrzyH5r6jN9ulIgZBpdo
Seriously. Watch it all.


#5

Thanks for pointing this out. i’ve never watched it and love how it is presented. Totally agree with your serious recomendation.

Just for fun, while watching episode #python_3

>>> def xor (A, B):
    print ((A, B), not (A and B) and (A or B))

    
>>> xor(True, True)
(True, True) False
>>> xor(True, False)
(True, False) True
>>> xor(False, True)
(False, True) True
>>> xor(False, False)
(False, False) False
>>> 

#6

I merely googled for something like it, figured something along those lines had to exist. Was pleasantly surprised though, because after the 3.5 hours of couch time there, one is actually pretty well educated on computers… (To be fair, it’s more like 7-10 hours because they go fast and some things should be paused and figured out)


#7

There’s a book for that… :slight_smile:


#8

well… thanks for so much help provided… ok… I guess I’ll watch the youtube videos… and will do like @mtf said…
something that needs more time to be explained, I’ll look for a book for that


#9

Well… Finally finished the series… at first boring then very interesting…
now that I have a general view on this world I would like to know what I could do now?
should I attempt to make low level codes like expanding the battleship’s code?
or studying advanced python?
or I should learn a different language or even subject?

Was always interested in cryptography and cybersecurity… and would really love to move through this path