Learning to program to achieve something (Serious)
4 02 Dec 2018 18:51 by u/Malagant
I am not a programmer, but the recent events of the linux community (Linus, IBM, etc.) makes me feel like I would like to learn to program. I would like to contribute and possibly one day move towards making my own O.S.
What books/websites/learning media would be useful? I have no programming experience, but have a lot of networking experience.
Thanks in advance.
33 comments
0 u/freespeechwarrior 02 Dec 2018 18:55
Just pick up where Terry Davis left off.
0 u/Malagant [OP] 02 Dec 2018 19:05
Temple OS. Never used it. Will look into it.
0 u/freespeechwarrior 02 Dec 2018 19:09
It was kind of a joke but Terry will still always be one of my heroes.
What we really need is open source hardware running a truly open source OS, and a decentralized social networking app that uses crypto bonded accounts to access a decentralized p2p meshnet. All of the tech is here. It just needs to be combined into one darpanet slaying system.
1 u/Malagant [OP] 02 Dec 2018 19:11
I am already slightly crazy, but your ideas sound great. I guess I need to learn to program and then learn the low level stuff. Going to be a while, I guess.
0 u/Trousersnake1488 02 Dec 2018 19:36
Udemy.com
0 u/rocksbottamnew 03 Dec 2018 06:49
https://www.w3schools.com/ http://practpoint.com/
0 u/libman 03 Dec 2018 22:08
I recommend learning Python first. It is extremely popular, and you'll find lots of free learning resources of all kinds. If you want to later learn systems programming, I recommend the Nim programming language.
0 u/Malagant [OP] 04 Dec 2018 00:00
Sounds good. Just bought a book. Thanks man.
0 u/takarabako 04 Dec 2018 00:39
I'm self-taught and now self-employed. I'm honestly not sure what advice I should give, since my own process was ludicrously hare-brained. An exercise in doing everything wrong. I floundered through a bunch of C tutorials for a few months, and the energy I wasted spinning my wheels and beating my head against compiler errors could've covered so much more ground if only I'd had a mentor to clear up the fundamental misunderstandings I'd had.
Like, to begin with, I didn't really understand what a compiler is, versus an IDE. I thought I needed the latter, whereas it's really just something to make using the compiler easier. I didn't understand that the idea of a "language" is really fairly abstract, whereas a compiler is the realization of what a language is specified to be. I didn't know about the shell, I wasn't on *nix, and suffered less for not knowing about these things, as for not knowing that these were important things to know about.
I didn't know what I didn't know, in other words.
So, #1 is to seek guidance from a human being, and not some bugshit tutorial website.
2 is my own subjective preference: On Lisp by Paul Graham. That's what made everything click, and turned my view of programming from a vocational skill for pajeets, to something almost transcendent. Wizard magic. An infinite frontier littered with the cast-off monoliths of people smarter than me. Common Lisp isn't typically an OSDev lang, but the point of the book is to teach you how to think about programming in terms of language construction rather than the bare mechanics of a particular language, like how to subclass
Looto have a 'poo' method.3: If you're not already, become conversant with mathematics, and in particular learn linear algebra now rather than down the line when you find that not being able to understand math is a serious roadblock.
0 u/Malagant [OP] 04 Dec 2018 01:41
Excellent reply. Ludicrous is good since I like to stay there. I prefer the terminal with what I already have done. I will take this advice to heart. Never tried Lisp, but I will. Thanks. If I could upvote you twice, I would.
0 u/GoldenAutumn 04 Dec 2018 18:16
Thanks for the question and reply. I'm also interested to learn programming as hobby. Looking into c++ as foundation but would like to have some simple brief as to where python is situated. I can check out wikipedia for some general idea but would appreciate the experts input on this too.
Thanks.
0 u/aanchalkaura 05 Dec 2018 07:09
Every language has its own features. I'm Magento expert so here I am talking about Magento which is one of the best using content management system to build eCommerce website. If you want to build a single page website and you have no specific knowledge of coding or programming then you can choose wordpress which is very user friendly and easy to use.
0 u/Adesh 05 Dec 2018 15:56
first, start with either C/C++ or Python
0 u/avgwhtguy1 07 Dec 2018 01:21
Take the first 5 lessons in java and python from codeacademy (will take 1 hour total). Make a website (basic, like your resume). Make an simple android app (like tic tac toe). By the time you're done, youll feel like 18 y/o Bill Gates, ready to take on the world. You can do this in a week in your spare time.
0 u/Malagant [OP] 07 Dec 2018 01:25
will do. thanks
0 u/honingds 07 Dec 2018 04:27
I recommend learning Python. Its easiest to learn and will be helpful to do Big Data , Data Science, DevOps and UI development as well.
0 u/Malagant [OP] 07 Dec 2018 09:44
Bought "cracking codes with python". I am going to start there.
0 u/ranch-othelioma 22 Dec 2018 01:53
I have been trying to learn to program, with zero local irl friends with the same goal. Since I am mechanically oriented, I started programming arduinos for use in projects, and 3D modeling in OpenSCAD to at least get my mind "thinking" in programming mode. I hope this helps, and I'm following this thread hoping it will also set me in the right direction.
0 u/Malagant [OP] 22 Dec 2018 02:20
Just bought a book on Arduino. Was thinking the same thing. Thanks.
0 u/ranch-othelioma 22 Dec 2018 02:36
Someone here on VOAT posted a neat arduino project that is very VOAT. Using those little wifi modules, distribute hidden pirate battery powered wifi units and name the SSID something like "Hitler did nothing wrong" or "it's okay to be white" and maybe have it host a splash page.
0 u/Malagant [OP] 22 Dec 2018 02:40
Intriguing. Sounds like my kind of fun. I will try to find it. Thanks.
0 u/AlpineTree 02 Jan 2019 00:35
Start by learning c. The language has stood the test of time and will be a great place to start since almost everything is built on c. By the time you are proficient, you will have already learned many computer science concepts that will be extremely valuable to you. Don’t use IDE’s or other automation tools at first. Just use emacs/vim (if you don’t know either of those start learning. You can be functional with the programs in a couple hours if you put your head into it) Read comp sci forums, watch hacker videos, read books, documentation, and man pages. Comp sci is really about learning about how to operate complex abstraction systems, rather than actual coding. You can’t write a book if you can’t use a pencil, so when you run into something you don’t know how to do, find a tool to perform a task.
Remember that programming languages aren’t “magical portals into the computer” but programs built by other people to be used to create programs more efficiently. Avoid the urge to do everything yourself even though it’s tempting at first.
Don’t get caught up in political mumbo grumbo and use the tools that work best for what you want to do. The most difficult part is perserverence, but if you have discipline you can learn.
0 u/justlogin 14 Jan 2019 06:09
How have things gone since posting this a month ago? Have you learned much :)
0 u/Malagant [OP] 14 Jan 2019 09:52
Very poorly. I have had other life complications that have monopolized my time. I'll get there. Thanks for asking though.
0 u/justlogin 14 Jan 2019 10:48
It does take much time set aside, that is true... It would be nice to have someone to code with.
0 u/Malagant [OP] 14 Jan 2019 13:24
Yes it would.
0 u/justlogin 14 Jan 2019 13:50
Aww c'mon... Why don't you code up Conway's Game of Life and do a show and tell tomorrow morning. The field can be small if printing to STDOUT, or graphical. Random starting population.
0 u/Malagant [OP] 14 Jan 2019 16:44
Unfortunately, I have some other things that are consuming all my time. So, this will have to be put on hold for the moment.
0 u/canuhunter 29 Jan 2019 17:36
Udemy is garbage. Make sure that you understand the fundamental concepts of computer science - code structures like for, if, while, switch, functions, classes, and when you're ready - dynamic or 'classless' code. Make sure you understand algorithms and data structures, big O notation / time complexity, space complexity, and you'll be WAY ahead of everyone else.
0 u/Malagant [OP] 29 Jan 2019 22:49
Someone else advised that same thing. I have seen some of the ads lately that they run. Not endearing at all
0 u/JimJ666 31 Jan 2019 06:12
To learn how to code go to the original documentation created by the company that is responsible for making the language. For example if one were to learn javascript. the most common language in the world with the most users and the most universality, one would go to mozilla.com.
I suggest web technology. Websites like chrome exist on all devices and platforms. A miniature version of chrome can run on cell phones, computers of all operating systems, online ect .'. webtech is universal and there is no need to invent a new operating system.
search: https://developer.mozilla.org/en-US/docs/Web/Guide, atom.io, electron.js, cordova,
You will need an IDE such as Atom.io.
I have absolutely no idea about starting from scratch.
0 u/Malagant [OP] 31 Jan 2019 12:19
Awesome post. Thank you for a the wisdom.