- Joined
- Apr 11, 2023
Think of a project. Take it to feature-completion. That'll help you localize your unknowns more than you'd expect.I guess I'm asking, how do I continue my learning in a way that will actually help me learn?
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
Think of a project. Take it to feature-completion. That'll help you localize your unknowns more than you'd expect.I guess I'm asking, how do I continue my learning in a way that will actually help me learn?
write shit you want to writeI decided to start off with learning python and I'm going through the code academy course for it now, but my concern is once I finish the course, what do I do from there?
i'm sorry for your lossI decided to start off with learning python
you will understand stuff like modularity and organization as you continue making things and the things get so complex you realize you ought to break it up into multiple parts for clarityThere are so many coding principles and practices I feel like I'll still need to learn, use of libraries, and just other things that I'm not really sure how to explain as other than computer science knowledge.
obtain a scheme interpreter and learn some scheme. it removes all the fancy tricks that python tutorials are trying to teach you and exposes you to the raw basics of computational abstractionI guess I'm asking, how do I continue my learning in a way that will actually help me learn? I feel like there are currently a lot of "unknown" unknowns for me, and I'd like some advice on how what to do about that.
Think of a project. Take it to feature-completion. That'll help you localize your unknowns more than you'd expect.
these pieces of advice are also correctwrite shit you want to write
thats the beauty of it and any other creative thing like drawing or crocheting
doing this you will learn exactly what you need and maybe more
or use C to learn how the fuck computer is computering stuffobtain a scheme interpreter and learn some scheme. it removes all the fancy tricks that python tutorials are trying to teach you and exposes you to the raw basics of computational abstraction
scheme has certain incredibly powerful conceptual benefits, such as knowing that any given looping construct is just as good as any other, and you can just write your own if you want, so they don't mean anything. in scheme, any loop syntax will just be automatically converted into the same thing: a procedure that calls itself over and over
along the same lines for a different fundamental, learn some c. its pointers and direct memory manipulation will give you some context for just what the computer is doing, and if you understand all its tools you will be much more knowledgeable of the principles of your operating system
yeah i said thisor use C to learn how the fuck computer is computering stuff
i think stuff like scheme is a bit less distracting because it has way less featurespython is good to use to learn problem solving where you dont really need to focus on the computer side of things just on the problem
My bad, I'm blind and only read most of it, not everything.yeah i said this
If you go this route, the wizard book is freely available online here. You go from the very basics to writing your own interpreter. I haven't finished it yet, but a lot of people say it's good and so far I agree.obtain a scheme interpreter and learn some scheme.
usually people these days use either r6rs or r7rs but they are both very similar to r5rs, r7rs is slightly more similar than r6rs isIs there a field guide to Scheme? R5RS looks long and academic.
This was my first thought, think of something, and make it, but my main concern is, for the things I don't know, do I need to dig into the documentation to truly learn them? Or am I going to be lazy and just have chatgpt walk me through it, and if I do that am I really learning? Is it even gunna tell me the right way to do it? This is all probably just cope, but still.Think of a project. Take it to feature-completion. That'll help you localize your unknowns more than you'd expect.
I guess I might just be struggling on knowing what I actually want to write? I think that was one of the things I was hoping to sort of figure out along the way.write shit you want to write
thats the beauty of it and any other creative thing like drawing or crocheting
doing this you will learn exactly what you need and maybe more
Yea I sort of picked this up throughout the course, there hasn't really been any deeper information on the reason behind using python or the deeper concepts that it can address beyond surface level "here are things python can do".i'm sorry for your loss
python courses are notorious for not teaching you any higher level concept than just how to use python
Interesting, yea these are the concepts I just don't know anything about, but it makes sense that they are important, my hope is that I can get myself to learn it and actually implement it.you will understand stuff like modularity and organization as you continue making things and the things get so complex you realize you ought to break it up into multiple parts for clarity
learning stuff like computational complexity becomes easier once you put a loop inside a loop inside a loop and then wonder why everything got so slow
99% of your skill as a programmer should be put into writing code that is easy to read and understand. being overly obsessed with optimization and sacrificing clarity is a well-known beginner mistake
I'll be honest, this is something I don't anything about, so any info on just how I should go about doing it would be helpful, like when you say "learn some scheme" what exactly does that entail? And which interpreter would you recommend I try and learn with?obtain a scheme interpreter and learn some scheme. it removes all the fancy tricks that python tutorials are trying to teach you and exposes you to the raw basics of computational abstraction
scheme has certain incredibly powerful conceptual benefits, such as knowing that any given looping construct is just as good as any other, and you can just write your own if you want, so they don't mean anything. in scheme, any loop syntax will just be automatically converted into the same thing: a procedure that calls itself over and over
This is something I've been seriously considering too, but didn't want to get ahead of myself on. Python is something I want to learn since it could have practical uses in my job, but I have been thinking about trying to move more into a developer role, I just haven't been sure the which direction I'd want to go. C does sound appealing though, and I like the concept of low level programming, or at least what I understand it to be.along the same lines for a different fundamental, learn some c. its pointers and direct memory manipulation will give you some context for just what the computer is doing, and if you understand all its tools you will be much more knowledgeable of the principles of your operating system
yeah i have problems with it as well, just think of something small in scope, people often start with a "todo app"I guess I might just be struggling on knowing what I actually want to write? I think that was one of the things I was hoping to sort of figure out along the way.
yes that is what the documentation is forfor the things I don't know, do I need to dig into the documentation to truly learn them?
maybe write a program that generates a fractal and writes it out in ppm formatI guess I might just be struggling on knowing what I actually want to write?
it means "learn some scheme"I'll be honest, this is something I don't anything about, so any info on just how I should go about doing it would be helpful, like when you say "learn some scheme" what exactly does that entail? And which interpreter would you recommend I try and learn with?
Yea I sort of picked this up throughout the course, there hasn't really been any deeper information the reason behind using python or the deeper concepts that it can address beyond surface level "here are things python can do"
try to wean yourself off of tutorials like "how to do X in Y language". sicp will help you think of your problems more abstractly and walk you through the kinds of thought processes that programmers use to decompose problems into forms the computer can calculateInteresting, yea these are the concepts I just don't know anything about, but it makes sense that they are important, my hope is that I can get myself to learn it and actually implement it.
I think my biggest struggle when it comes to learning in general is actually knowing how to apply the things I've learned outside of the specific scenarios I've learned them.
For example, knowing when to write a function, when to write a for loop, when to write an if/else statement, etc
Maybe the best way to explain it would be I feel like I'm having a hard time mapping my current knowledge of programming onto completing a task.
you will find that languages are tools that work well in certain areas and terribly in othersC does sound appealing though, and I like the concept of low level programming, or at least what I understand it to be.
todo apps are cliche how about looking at rosettacode or something and just doing one of the problems thereyeah i have problems with it as well, just think of something small in scope, people often start with a "todo app"
a list you can add and remove things from
then you can extend it if you want, add deadlines for example or do something else if you get inspired
Working code is working code. If you can copypaste a black box that does what you want, it doesn't matter. But if it's code, you can read it and learn from it. Having ChatGPT walk you through code is a valid way to learn. You basically can't go wrong except by doing nothing. You have no idea how horrifying production code written by professionals looks. Never ever beat yourself up over code quality, especially when you identify as a newbie. If it works, it's fine.my main concern is, for the things I don't know, do I need to dig into the documentation to truly learn them? Or am I going to be lazy and just have chatgpt walk me through it, and if I do that am I really learning? Is it even gunna tell me the right way to do it? This is all probably just cope, but still.
which is why we have a new gigantic security breach every weekIf it works, it's fine.
I never used it* and never felt like I was missing out, if that helps.chatgpt
Why did you get into programming? Have you already accomplished the program you wanted to write then?I think that was one of the things I was hoping to sort of figure out along the way.
I would not worry about this at all, you will acquire those preferences as you go along. Don't be shy to refactor!knowing when to write a function, when to write a for loop, when to write an if/else statement, etc
I'm trying to encourage a newbie here, not write a manifesto on philosophy of development. My self-taught programming (the degree I got to prove my competence was piss easy by comparison) has served in all kinds of scenarios for me in the real world. I think it's quite the opposite: an experienced programmer who is used to weird designs shouldn't have difficulty decomposing a mechanical or electrical system. Even biological systems are tractable using the kinds of problem solving programming teaches. The process-systems foundations that underpin cell culture and gene product extraction are straightforward compared to many APIs I'd seen when working on that.computer programming is the engineering world equivalent of having a gender studies degree
I get what you mean, and I just need to get over it.if you can't tolerate reading through documentation, are you sure you want to be a programmer?
i get what you're saying but i have an irrational phobia of bad habitsYes, if you're dealing with software that people depend on, code quality is pivotal. But trying to get a newbie to produce such is putting the cart a mile before the horse.
yes docs are nice you should bookmark or download local copies of any docs you findI get what you mean, and I just need to get over it.
idk maybe programming is just not for youI'm somebody who does best with a straight forward plan, and if you're willing to tell me exactly what you think I should do, I'll do.
I know it's a lot to ask, and you've already given really good advice I could follow, so if you were to say "Get fucked, I already laid out plenty" I can't say you'd be wrong.
here's one: make a scheme program that prints a few fibonacci numbers to the standard output port. it's quite simple, you can do it with 1 functionI'm somebody who does best with a straight forward plan, and if you're willing to tell me exactly what you think I should do, I'll do.
;; perhaps it should work like this:
(print-fibonaccis 6)
1 1 2 3 5 8
this is probably best if you want to do stuff with hardware and like the idea of using cI would almost suggest a new programmer get one of those Arduino or Pi Pico kits with some buttons, switches and wires, and make that do stuff. It's not complicated but if you stick to Adruino or the Pico SDK(Not Python) then it's a pretty simple introduction to C/C++. I prefer the Pico since you get lower level with the SDK.
Then again a Pico is 266x(1MHz 6510 vs Dual Core 133MHz ARM) faster than my first computer with several times the RAM and about 100x the storage, so maybe I'm biased.
magick something.png to ppm to stdout | retardedfilter | magick stdin to fucked.png