[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: images (1).jpg (10 KB, 215x234)
10 KB
10 KB JPG
I can't fucking learn coding no matter how

>start learning new language and doing side project while so
>Learn for 1-2 weeks finish like 60% of what i started
>get burned out, lose interest to the point where i literally want to vomit when i look into computer screen.

How do i commit myself to coding, i want to learn shit but i just can't
>>
How many languages and projects?
>>
>>106435587
Currently doing webdev roadmap
CSS + HTML later i'm planning javascript
>>
>>106435453
You're not even trying, you lazy fat fuck. Compllaining about it here isn't going to help you, either.
>>
>>106435608
That's the reason. Html and css are not programming languages, neither is javascript, as it says it's for scripting. Learn C like a real man and stop thinking about suicide.
>>
>>106435608
>CSS + HTML
Anon these are literally designed to destroy cooder morale, for the love of all things good, stay away from webshit.
>>
>>106435608
Forget about webshit and learn C
>>
learn algorithms first then
>>
>>106435608
Nobody touches that garbage unless they're in for the money. You'll never be happy programming.
>>
>>106435453
that last 40% is when you actually need to think a little to learn it. You cant just sit back and absorb it since it cant translate to how it works in practice at all.
>>
>>106435608
>CSS + HTML
Bruh...
What other experience do you have?
>>
>>106436540
>Html and css are not programming languages
Borderline...
>neither is javascript
It absolutely is, mong.
>>
>>106435453
What is your dayjob, retard nigger? (I am legitimately trying to help you, please answer this question.)
>>
>>106439497
>It absolutely is, mong.
Javascript is html++. They're both designed to output something whether it be broken or not.
>>
>>106439497
before node the only way to use javascript was in a browser.
>thinks javashit is a programming language
nigger
>>
learn C you idiot.
you will have the power to create whatever you want. like god.
>>
>>106435608
>css, html, Javascript...
That's all bad and wrong. At least learn python and get something of your interest going. Webshit is an awful way to start learning CS. Not that python is the best, but at least you'll be able to do something kinda fun.
>>
>>106435453
>I can't fucking learn coding no matter how

America needs short order cooks too!
>>
>>106435453
It's very simple. Start with python. It's the ultimate learning language (not to mention is widely used professionally). Super forgiving and easy to get the basics. And if you get the feel of python, it's just a small leap to fancier languages like C or C++. Ignore javascript or whatever other web nonsense languages people are talking about.

Learning programming isn't about mastering specific languages. It's about learning -programming-. Python is a about the easiest way to get right at it for a beginner - straight to the basics of imperative programming and all the important fundamentals.
>>
>>106439808
>Super forgiving
This is exactly what you don't want for a learning experience.
>>
>>106439908
Retarded. You don't start first graders out with algebra. You start with arithmetic.
>>
>>106435453
You just have ADHD. It's fine, you just need to learn how to lock-in and you'll be able to go for a multi-hour coding session on a regular basis.
>>
>>106439918
A forgiving language is not the same as a simple language. You wanna be doing the same thing over and over again until it works. That's how you cement knowkedge.
>>
>>106439940
You want to be learning the fundamentals of programming. Variables, loops, if statements, functions. You want a language that stays out of your way while doing this. A complex language like Ada or Haskell or whatever is absolutely not helpful here. With python you start up the interpreter and you can start declaring variables immediately.
>>
>>106435608
why are you 'learning it' when AI can do it already?
>>
>>106439972
kys
>>
>>106439963
Correct, complex languages not good. You want something like C, which's a very small and simple language, but won't work unless you program it correctly, unlike javascript, which's comparatively a bigger language but doesn't care if you screw up so you never develop skills because shit just runs when it shouldn't.
>>
>>106439595
>>106439705
I don't think either of you understand what a programming language means.

t. Certified cnile javashit abhorrer
>>
>>106439981
I accept your concession.
>>
>>106440010
>which's a very small and simple language, but won't work unless you program it correctly

wtf does this even mean? All languages "won't work unless you program it correctly."

C is not a great choice to start with because the tool chain is clunky and there's a lot more boilerplate just to get a hello world up. With python there's none of that. You're writing code instantly and it's C-adjacent. If you can write python code, jumping to C or C++ is straightforward.
>>
>>106440023
You will never be a professional success story if you think "ai" is going to eliminate the need to know how to program. You'll be a wagie forever.
>>
>>106435453
try vibe coding with Codex
>>
>>106440042
You are a luddite if you think AI won't be completely erasing your job soon.
>>
>>106440029
>tool chain is clunky
If you're retarded. For a beginner it's as easy as typing the name of your source file next to the name of the compiler and hitting return.
>>
>>106440029
>toolchain is clunky
Nigger no one is forcing you to write makefiles for fizzbuzz

>boilerplate just to get a hello world up
Just an include of stdio.h or unistd.h nigga. It does need more boilerplate but only when working with libraries like say x11, for good measure because each step in the process means something (win32 is 90% pure beaurocracy though).

And when you write boilerplate to introduce linked lists or hashmaps, you understand what they're doing and that's the golden part of C. Just make them into a personal include if you don't want to do most of it again.

>python is C adjacent
How the fuck is an indentation driven syntax without raw memory access or pointers anything like C at fucking all?

Are you retarded? It doesn't follow either C's core features or it's syntax. It can just call into C libraries and that's it, but so can 90\ of all modern languages.
>>
>>106440065
#include <stdio.h> What does this mean?

void main(int argc, char** argv) uhhh what is char**? wtf does void mean?
{
printf("Hello world\n"); printf? what does the f mean?
}

vs

> print("Hello world");

You are either a.) forgetting what it's like to be a beginner or b.) incorrectly thinking you're some kind of wizard for being le C programmer.
>>
>>106440077
>And when you write boilerplate to introduce linked lists or hashmaps, you understand what they're doing and that's the golden part of C.

Absolutely none of this has anything to do with a BEGINNER learning basic shit like variables and if statements. How fucking dense are you?
>>
>>106440077
>How the fuck is an indentation driven syntax without raw memory access or pointers anything like C at fucking all?

The semantics of python are C are extremely similar. Pointers are unimportant to a BEGINNER.
>>
>>106440084
You dumb animal, you don't need most of that.

#include <stdio.h>

int main(void)
{
printf("Hello, world!\n");
return 0;
}
>>
>>106440084
argc and argv are optional to declare and void/int return type and stdio.h are pretty simple to explain, nigga.

Nobody I've ever had to train or teach has taken more than 15 seconds to grasp those concepts and even when they haven't, the liittle bitch can just use it for fuck's sake. Not knowing what the int in front of main does, is essentially the equivalent of not understanding how anything in python works.

It's not any "clearer" because 40 minutes after first teaching him to "just do it", you'll have to teach him about code organization and function calling with defs.

And when you never explain what an integer is, int(input()) becomes that much harder to explain.
>>
>>106440113
Oh yes, that's so very different to someone who is a complete beginner.

How about this? Nice and tidy and simple? Real easy to comprehend for someone who has no idea what a variable is?

class progrum {
public static void main(String[] args)
{
System.out.println("Hello world");
}
}
>>
>>106440134
A what beginners book on C will teach someone who never programmed before something like that in the first lessons? Are you even white?
>>
>>106440088
Any beginner would have to get to that in 10 days after starting at most. And for fuck's sake, there isn't any boilerplate before introducing data structures in C at all, You don't have to call open() to get the fd of stdout, it's already fucking open.

>>106440097
What semantics? Care to elaborate? Just because the assignment operator is like C instead of iverilog, doesn't mean it's C adjacent.

>>106440113

#include<stdio.h>

int main()
{
puts("Hello World");
}


in c99 and onwards.
>>
>>106440134
There are no variables involved there at all, for fuck's sake you stupid fucking cunt. A return type is not a variable and anyway, teaching a bedginner that you should always iust write int main() is not bad practice because that's always true for any program to be compiled into an executable.
>>
>>106440154
I wouldn't personally introduce a total beginner to strings that early on, but I get your point.
>>
>>106440154
>What semantics? Care to elaborate?

Function declarations, flow control, arithmetic and logic. The basics. They're not syntactically the same, but they compose the same and if you learn how to do it in python, it's easy to transition to C/C++. If you become familiar with how a source file is structured in python, it'll feel the same in C But it's easier to learn it in python because there's less baggage and arcane seeming (to a beginner) stuff in your way. It's quite obvious this is the case - and if you don't understand this you're probably a terrible engineer.
>>
>>106440171
There isn't any more role of a string in there than the one liner python snippet, and even if there were, for the love of god, you can't shield beginners from everything. Shit like strings are perfectly simple for anyone to comprehend at any level. I've had to teach CS college freshmen that never touched a computer before many times and everybody grasps this within seconds. When you teach incrementally, almost no one gets stuck until 1.) Flow control and loops 2.) Pointers.
>>
>>106440168
You continue to be dense. What I am saying is, if someone is a beginner, they don't even have the foggiest idea of anything about programming. Not variables, not if statements, not anything. Zero. You throw "public static void main" at them right out of the gate and they are much more likely to just be confused and give up.

Seriously are you legitimately incapable of reading English?
>>
>>106440184
Ah, and now we see. Someone who can't do, so he teaches. This explains a lot about this conversation.
>>
>>106435453
Can I ask you why you're learning coding now? Is it to try get a job? Because you won't find one. The industry is cooled. Also, as a hobby it will destroy your health. Coders are all boring, one-minded people without diverse interests, and health problems. The autistic focus on low level bullshit slowly transitions your humanity over time which is not good for people.
>>
>>106440184
>Shit like strings are perfectly simple for anyone to comprehend at any level.
It's not that they are complex, it's because they can be dangerous without extra fundamental knowledge. printf is a much better choice for introduction.
>>
>>106440180
You do realize that function declarations, conditionals, arithmetic and bitwise operations are as similar between Ada or Pascal or Go or Fortran or Rust or Java or Ecmascript and C, as they are between C and python?

Hell, Python's weak and dynamic typing makes it's function declaration very different from C's, compared to most of those languages. Python isn't anymore C like than any other non esoteric high level language (Yes, C is high level on everything except raw memory access).
>>
>>106435453
Get diagnosed with ADHD.
I don't mean it like "fake it to get legal amphetamines". I mean it like "go get treatment for a condition you obviously have".
>>
>>106440186
int main() is not complex at all. You're touting a false equivalence.

>>106440188
What part of "I've had to teach" was indecipherable to you. Teaching is not my professjon but if you keep good relations with your friends and family and are always helpful, the burden of teaching falls on you sometimes.
>>
>>106440209
puts has a lesser scope (It's fundamentally a subset of printf), so it's actually safer to introduce with puts, but then again, you have to teach them to print numbers at some point so printf is a good choice too.
>>
>>106440212
>Hell, Python's weak and dynamic typing makes it's function declaration very different from C's, compared to most of those languages.

This is such a retarded conversation. You are arguing about abstract concepts that are utterly irrelevant to a beginner. We're talking about someone who is just getting started. Who knows nothing. We want to hit them with the least confusing amount of weirdness we can. Weirdness includes language constructs that obfuscate all the truly important things. Assigning a value to a variable

x = 10

In python, you can literally just lead off with that. Nothing more. Not one additional character. The cleanest, most straightforward way to start understanding basic imperative programming. C is not that. Python is considerably simpler for someone for their first couple months. It could not be more clear.
>>
>>106440232
If you had bothered to read, that particular post was about Python not being a C adjacent language, not ease of use.
>>
>>106440232
Also, a lot of people drop into CS after studying mathematics and algebra so shit like x = x + 2 is actually confusing sometimes. This is why Ada adjacent languages' := assignment operator is better than C/Python's =, for beginners.
>>
>>106440238
It is a C adjacent language. If you have a file with like 4 functions in it that take a few parameters and do some if statements, loops, etc, the only real difference between python and C is going to be syntactical.

Not list comprehensions, not templates, not rvalue references, or pointers. Just basic programming shit. They are very close. But the difference lies in the little details that will cause a beginner to get hung up. Python is lenient in all the ways that make it easier for a beginner to not sweat the details.
>>
>>106440246
That's fine. Even Pascal is a better choice than C to start with. That's what I learned on 35 years ago.
>>
>>106440252
Man are you genuinely retarded. No language that has rvalue references or templates needs them to be used in a program that simple either.

And with pointers, If you purposely exclude the features of C which make it very different from python, then what's the fucking point? Yeah, if you write those same programs in Ada or Scheme, both very different languages from C, you can write them with largely the same structure too, where the difference is only syntactical. Because almost every high level language has variables, function declarations, conditionals and loops.

Hell Ada is closer in this example because of it's very strong and static typing system.

That's not what similar means at all.
>>
>>106440263
I respect Pascal for it's discipline so I can live with that. Python? No. That's just the fastest way to become a codeshitter who can't even tell what type some function critical data being juggled around is.

Pascal/Ada instill Discipline while C works by giving you freedom and punishing you for mistakes. ECMAscript and Python just roll with it except for when it's actually pointless, like god forbid you mixed Space and Tab indents, that's a sin, but yeah you can implicitly cast this string to an integer, no problemo there.
>>
>>106440279
>If you purposely exclude the features of C which make it very different from python, then what's the fucking point

The point is the subject of this thread. Teaching a beginner you absolute fucking smoothbrain. We're not debating the merits of C vs. python for production. Or metaprogramming vs. OOP for some big architectural design. We're talking about teaching a beginner the utter basics. In that context, Python and C are extremely similar, but python eliminates all the extra syntactic and structural junk that will only confuse them up front.

When the beginner has a little pythn source file with a half dozen simple funcitons that he -actually- comprehends, it will be a lot easier for him to try out some C code because all the additional arcane syntax won't be a burden.
>>
>>106440294
>Python? No. That's just the fastest way to become a codeshitter who can't even tell what type some function critical data being juggled around is.

I am not talking about python as the one language you teach someone and that's it. I am talking about python as the first stepping stone. It is much less painless than just about anything else. You keep obsessing over language differences that are completely irrelevant to this point.
>>
>>106440212
>Python
>weak and dynamic
Gonna nitick, but... nah, man. Python's typing is dynamic, but otherwise strong. You can consider it weak because it's dynamic, whatever, those are imprecise terms. But "and" implies it's weak in addition to dynamic, and that's just outright incorrect.
>>
>>106440296
And my point is that the beginner semantics of almost all languages are the fucking same. Even JS is a more C adjacent choice actually so it should be preferred over python if you want to make the C adjacent arguments.

The only thing that changes between most high level languages is what import/include statement you have to make and how you declare the entrypoint into the code. Some like Java are excessively verbose while some like Python let you get right to it. But weighing all pros and cons -

#include<stdio.h>

int main()
{
puts("Hello World");
}


is nor fucking verbose at all. Python is not C adjacent and C is the better beginners language by the way of introducing them to essential concepts of computing early in a simplified, high level manner.

>When the beginner has a little pythn source file with a half dozen simple funcitons that he -actually- comprehends, it will be a lot easier for him to try out some C code because all the additional arcane syntax won't be a burden.
Nigga you're not making it easy for yourself here. C doesn't add anymore syntactic complexity than python does for half a dozen simple functions. The only thing different there is specifying the types, which is a good beginner exercise, simple enough that they can understand and no more and (I concede this one atleast) function ordering, which is admittedly distracting from basic concepts and only exists to make the compiler's job easier for the most part.
>>
>>106440345
You're just incapable of understanding my point I guess.

t. professional C/C++ programmer of almost 30 years.
>>
>>106440321
There is little functional difference is terms of python's syntax. It's meaningless to call a typing system strong when a variable will just change types to accomodate the type of the assignee. The only place where this distinction makes any sense is in arguments passed to functions, most of the time, for the rest the definition is muddy as fuck, and I can't call it Strongly typed.
>>
>>106440301
The point of learning is not to be painless. The best way to learn is to mount challenges that can be overcome without excess difficulty. "Too Easy" like python forces you into complacency and "Too difficult" demoralizes. There has to be obstacle and rewards, not just an endless stream of rewards and obstacles. Python is a bad beginners' language.

>>106440362
I am perfectly capable. I'm just saying two things:-

1. Calling Python C adjacent is objectively fucking retarded IF you think that other high level languages like Ada and Scheme are different to C in a real capacity. There are significant differences between all Four of these families witg respect to all of these - syntax, features, typing and ABI. And all of these have many things like basic operators, conditional and loop constructs and function declarations in common. Python is not C adjacent at all.

2. It's a bad beginners language and I've already qualified that enough. C isn't perfect but what few flaws it has are outweighed by the fact that a beginners' language should also be practical and useful by the view of having a compiler, userbase and toolchain, and if you fix the beginner unfriendly flaws of C, that just makes a new language which has none of those.

>t......almost 30 years
Look mate. I may have slightly less experience than you but that matters shit when I have enough. Experience flexing gets you nowhere if you insist on retarded things like Python being C adjacent.
>>
>>106440362
And yes, I get that you're trying to say that Python is the better language to teach about variables and conditionals to a beginner, which it is, but that's fucking it.

And you can't go to a beginner and tell him, now that we've learned 30 minutes of basics in python, let's switch languages so I can teach you other basics better. That's disorienting and bad for learning. All the things a beginner should know, Python teaches very few of them. Having C from the outset is a good mix of challenges + rewards through the entire process. C is not deathly complicated for beginners and provides enough material to cover all basics not just a couple of them.
>>
>>106440412
>Experience flexing gets you nowhere if you insist on retarded things like Python being C adjacent.

I only mentioned it to point out that I have nothing against C. I love C. I like C-style programming a hell of a lot more than I do C++, which I am forced to do. But the summary is this:

Me: Python and C are extremely similar when it comes to the basic constructs a beginner needs to learn. Python just drops all the extra baggage that makes code seem mysterious and confusing.

You: Python and C are NOT similar because (things that are completely unrelated to the things that matter to a beginner).

Pointers are utterly useless to talk about to someone who doesn't understand "a variable is a box that stores a number!" Having to explain what "include" means and what "stdio.h" means is going to be an additional burden. Having to explain what "void" means is another one. "Well, there's the compiler, and the linker. Compiling is X, linking is Y...etc". We're just interested in getting someone to learn how to add up some numbers in an array without becoming frustrated. Think about your average dumbass high school kid. You need to clear obstacles. The ones who pick it up - sure, give them C in a few months. Start to talk about structs and the difference between an int and a short. But not for someone who has never typed a semicolon in their life.
>>
>>106435608
Unironically I have most experience in js for a lot of side projects. Youre way better off committing to mobile development with Java or swift, learning C for hardware or OS applications, python for DS, or Java/Kotlin for backend. Web development is overstaturated with too many brown fingers having away at making react applications. Its too easy and unrewarding.
>>
>>106439595
Its not but its basically what happens if you think php is too hard.
>>
>>106439705
Now that the dust has settled (almost 10 years), we can all see that nodejs is perfect for a small backend service in a startup company with 3 software engineers. Obviously for bigger collection of services for a product, Java or Python or even C++ are more preferred.
>>
just learn to layer your logic properly
and every language comes easy to you
>>
>>106435453
You can still use your energy to make racist posts about Indians that can code.
>>
>>106440650
He said he is currently learning html and css, soon to be forced to learn javascript. I dont think OP realises that he shouldn't start with learning Front End. Thats for #womenintech and Indians.
>>
>>106440665
frontend
backend
it doesnt matter
just layer your shit right
>>
>>106440440
>Python and C are extremely similar when it comes to the basic constructs a beginner needs to learn.
And my point is that it's a meaningless distinction because almost all high level languages are similarly 'similar' at the most basic level. But beyond a few hours of teaching, migration isn't a 1 to 1 mapping anymore.

>Having to explain what "include" means and what "stdio.h" means is going to be an additional burden.
>Having to explain what "void" means is another one.
It really is not.
>"The Include statement lets us include some extra code to display things and the int means integer, it's what this whole program will return. But for now, just ignore that, let's focus on the actual program"
is more than sufficient.

> "Well, there's the compiler, and the linker. Compiling is X, linking is Y...etc"
Provided that I do not teach with an IDE, these are problems that are easily solved by just using something like codeblocks. It's as straightforward an interface as python's and compared to the last time I used python's editor, codeblocks actually has autocomplete. I still prefer teaching with nano/gcc, and no one really has a longstanding problem beyond the first few times. Complete nothingburger.

Besides, if you use a C IDE, the whole beginner boilerplate problem vanishes too because new files are made with the boilerplate already written in.

You're reaching out on feeble points of a "canonical" C dev environment here, while in reality the choice of environment is very flexible. I've never had a problem teaching in a cli shell (as opposed to a gui one), but if you think you would, just use an IDE.
>>
you should start with C
you will learn all the concepts you need to easily swtich to any language afterwards.
if you start with retarded shit like javascript or python you will have a hard time understanding real programming.
>>
>>106441777
>777
godly trips of truth
>>
Stop doing endless tutorials where you learn nothing and create something you want to make. Start small.
>>
>>106439753
js/ts is fun, what are you talking about, I bet you have never written something nice in javascript.
>>
File: 1744457539374847.jpg (35 KB, 680x667)
35 KB
35 KB JPG
Same. I am too dumb to learn anything practical
>>
>>106435453
>He tries learning something without a goal
WHY are you learning coding, faggot?

If that goal doesn't seem worth your time, either improve your goal or do something else. Coding might not be the thing for you.

Tip: come up with a project you have a passion for, and then learn the coding you need in order to make it. Creating your dream game, website or service is how a lot of people start.
>>
Either :
>go to college
>go to a coding boot camp
>ask someone you know to teach you
It's impossible to learn anything alone.
>>
>>106436540
>Oh, so you struggle to learn how to swim? Retard, a pool is not real water. Jump into the pacific ocean like a real man.
Very helpful advice, egofag. I piss on C.
>>
>>106435608
Those are the 3 easiest languages to learn anon. Don't let it weigh you down.

What are you struggling with?
>>
>>106442343
you guys are living in the best time to learn programming, though not the best time to get a job. you can do a lot with AI already, and very quickly. at least see how far you can go with web dev.
>>
>>106442343
I learned HTML at 9 years old in 1998. HTML is not hard. If you are using a framework like React or even Tailwind, it makes it harder. Don't use a framework. Download Wordpress if you want to create a website. Learn HTML, CSS and PHP from there. Don't reinvent the wheel. Learn only what you have to.
>>
>>106440097
Well programming is a mentorship like profession I think if you don't have much talent or skill you aren't going to get very far.
>>
>>106440650
This is the truth. Programming is programming is programming. Any given language is just a terrible expression of computation. They all suck in that sense. Imperfect.

That's why I advocate for python. The properties of the language vs whatever else don't matter. What matters is that it makes it easy for a beginner to get sucked in. Almost zero overhead. It doesn't matter where they go next. Just get them thinking about variables, branches and functions. Everything else is details.



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.