[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y ] [Home]
4chanarchives logo
Yo /g/ I don't know what I'm doing. I wanna learn how
Images are sometimes not shown due to bandwidth/network limitations. Refreshing the page usually helps.

You are currently reading a thread in /g/ - Technology

Thread replies: 37
Thread images: 3
File: Capture.png (52 KB, 919x666) Image search: [Google]
Capture.png
52 KB, 919x666
Yo /g/ I don't know what I'm doing. I wanna learn how to code and all that jazz but I'm not sure where to start. there was a thread yesterday and most people said to start with JS, but that was on /b/ so I don't know if they were messing with each other or not. Where should I begin?
>>
>>52204438
Depends what you want to do... What are your plans? Web, cool tiny stuff, or actual software?
>>
>>52204438
JS will be okay to start learning, they're are better, but what is most important is that you stick to one and learn as much as you can about programming. Personally I would recommend Java or C++, I've also heard good things about Python for learning, but the language you start with is not that important. What is important is understanding the concepts of programming. Some people make the mistake of jumping from language to language, while you will know a lot of languages, you will not have as deep of an understanding as you could have by focusing on one.
>>
I never liked javascript, it always felt really fucking messy and obtuse to do things in.
I started on ruby.
>>
>>52204438
It depends on what exactly you want to do. If you're doing web design start with HTML & CSS and then move on to JS. If you want to do actual programming, start with Python and then do some dialect of C (C#, C++, etc).
>>
>>52204689
I wanna do all three but if I had to choose in order it would probably be Web, Actual Software, and then tiny stuff.
>>
>>52204802
Wait no. Actual software, Websites, and other stuff.
>>
>>52204831
>>52204802
tl;dr: If your focus is web, start with javascript. If your focus is anything else, don't.

The great thing about web development -- javascript included -- is that it gets you highly visible results fairly early and easily. Most other forms of programming will take you a while before you are able to do anything visual at all, and you'll spend a long time doing trivial things in old-timey text consoles. With web development, you can start doing visually appealing things much faster, and thus do things that are practically useful early on.

The terrible thing about web development -- and this, too, certainly applies to javascript -- is that's a messy, very complex, inconsistent whole. If you work on javascript, for many of the things you can do, you will not be able to understand what exactly is going on and why for an awfully long time; instead, you'll have to live with fuzzy words and handwaving. If something breaks with your javascript work, half the time the problem lies with the web technology you are using and not with anything you did, and the only way to find this out is at the end of a long and frustrating google session; after which you have not learned any real fundamental programming skill, but just one more random pitfall to avoid for no obvious reason.

To compare, in most other forms of programming, you can -- and must -- understand exactly what you are doing at all times. If your code doesn't work, that's because YOU messed up and should have known better, full stop. The consequence of this is that all problems you come across are solvable, and solvable by you personally if you stick to it; and afterwards, you'll have become better at programming and won't be making that silly mistake again. The actual debugging will be just as frustrating as it would be for javascript, but at least at the end there will be real understanding and improvement, rather than just "yeah don't do that because <reasons>".

(continued)
>>
>>52204736
>start with Python
Nope
Don't do that
>>
>>52204964
(continued)

This tradeoff is more or less unavoidable. The reason you can do nice and modern effects with only modest work in webdev is that the system is built on layers upon layers of magic, more than you could possibly hope to understand in *detail* in less than a decade. The consequence of playing with powerful toys like this is that you can never be the master of what's going on, never be the wizard in charge; you are always playing with fire and hope for the best. As opposed to general-purpose programming, where you start working your way up from much closer to rock bottom, with everything under your control and under your understanding, at the cost of taking considerably longer to get to the tip of modern technology.

If you go webdev, you'll get practical shit done considerably earlier and easier, but your understanding and skill will be shallow. If you aim for general programming first, you'll be in the low-tech trenches for a fair while longer, but the skill you build will be deeper and more powerful for it.

The two options don't conflict, of course. You can start with one and study the other later. Once you have some experience with general programming, you'll be far better equipped to deal with the confusion of webdev; on the other hand, the immediate usefulness of webdev may be a critical motivational factor for you.

If you go the webdev route, html and javascript is the way to go. If you prefer general programming first, have a look at http://greenteapress.com/thinkpython/ , it's a wonderful textbook and free to boot.
>>
>>52205079
Sweet, thank you so much.So I guess Ill stick to webdev. Im currently doing Javascript.Does it matter if I learn HTML first or second?
>>
>>52205184
HTML isn't really a programming language, but if you're doing webdev you really ought to learn the basics of it ASAP.
>>
Not OP but what are some good resources and websites for learning programming?
>>
File: fucking-image.png (302 KB, 1920x1080) Image search: [Google]
fucking-image.png
302 KB, 1920x1080
>>52204438
pick a language
go to google.com
roll for this image
go
>>
>>52205236
Yeah, I'm about to finish HS and I barely started so Im trying to spend as much time as I can trying to learn.
>>
>>52205184
>Does it matter if I learn HTML first or second?
HTML is a system for making static graphical things (that is, unmoving webpages). Javascript is a general-purpose programming language that does not have any graphical stuff builtin, but you'll use it to manipulate HTML and thus create dynamic graphical things.

You can study javascript without HTML, but you will not be able to do anything graphical and are basically doing general purpose programming.

Furthermore, HTML is a fundamentally simpler system to learn than javascript. Thus, the usual approach is to study HTML first, and ignore the question of "ok this is kinda neat but how can I make my thingy *do* anything?"; and later, start studying javascript when you have a firm command of HTML.

A firm command of HTML includes the sublanguage CSS, by the way; so don't neglect that. Some textbooks and teaching methods consider that a separate skill, others consider it a unified whole, so take care.
>>
>>52205316
Thanks for the help anon!
>>
>>52204438
What site is this?
>>
>>52205430
codeacademy
>>
>>52205284
Rolling.
>>
>>52205284
Rolling again.
>>
>>52205284
Roll.
>>
>>52205284
Rolling a thing.
>>
>>52204970
Why not?
>>
>>52204438
If you're a complete noob, start with Python or Java, then work your way up to C++
>>
>>52206234
not sure if I should do HTML, Java, or Python first now
>>
>>52206277
If your goal is webdev, you start with HTML, CSS, and JS, now get the fuck off 4chan and write a helloworld.html file and open it in your browser faggot
>>
>>52206338
Will do cap'n
>>
If I take classes on webdev, would I be expected to have No knowledge, little knowledge, or a lot?
>>
>>52206870
depends entirely on who the class is aimed at
>>
>>52205284
roll
>>
>>52206997
making websites
>>
download Eclipse and write a hello world in java.
>>
>>52206083
Python will teach you nothing about OOP.
>>
>>52204438
>not starting with C
It's like you want to be a shit programmer.
>>
>>52204438
If you want to be employable, start with C and learn how programming works, then branch out from there.

If you just want to fuck around at home and make cool stuff, start with something like C#, Java or even python. Since you're just programming at home, don't let peoples snobbery ruin what should be fun for you. You don't "have" to know about every detail of memory management and optimisations when you're making a shit snake game. However, if you want to, that's great!
>>
>>52205284
just fuck my life up
Thread replies: 37
Thread images: 3

banner
banner
[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y] [Home]

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.
If a post contains personal/copyrighted/illegal content you can contact me at [email protected] with that post and thread number and it will be removed as soon as possible.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com, send takedown notices to them.
This is a 4chan archive - all of the content originated from them. If you need IP information for a Poster - you need to contact them. This website shows only archived content.