[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
I wanna get into programming and I consider myself somewhat computer
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: 34
Thread images: 5
File: FB_IMG_1463899348360.jpg (14 KB, 529x468) Image search: [Google]
FB_IMG_1463899348360.jpg
14 KB, 529x468
I wanna get into programming and I consider myself somewhat computer illiterate. Where do I start?
>>
File: c.png (16 KB, 362x479) Image search: [Google]
c.png
16 KB, 362x479
Start reading.
>>
Learn Python. CodeAcademy has a good free set of tutorials.
>>
>>54779042
Is this legit? I've seen mixed opinions about this specific book.
>>
File: cover.jpg (51 KB, 400x579) Image search: [Google]
cover.jpg
51 KB, 400x579
>>54779279
It's a total meme. If you have no programming or computer experience at all it's best to start with pic related
>>
>>54779279

It's a meme. The thing was written in the 1970s. It's really good, and it'll teach you a lot, but if you don't know what you want to do, it'll hurt more than help.

For example, you wouldn't create a 3D model in emacs, (a text editor), even though emacs is an incredibly powerful text editor that can do basically anything.

There's nothing impossible about 3D modelling in emacs. It could be done. but it's an incredibly stupid task using a tool that's waaay too primitive and low level for what you'd be trying to accomplish.

Or, if someone told you to "build a computer", you'd probably go to Amazon or Newegg or something and look for parts. You wouldn't go to Wikipedia and start looking up where some decent silicon mines are and start calling people to see if you can source their raw materials. It can be done, and it would teach you a lot, but if the end result is you just want a god damned Linux/Windows machine, it's a stupid way to go about it and a waste of time.

C Might be the language for you, though. It knows what it does and it does it really god damned well. But it all depends on what you want to do. You're saying you want to get into carpentry and you're asking what our favorite tools are. Figure out what you want to do with programming first, then ask the question again.
>>
>>54779399
I trust your dubs.
>>
>>54779279
there's better books
>>
>>54779279
>>54779279
Yes it's legit. Just start reading programming books. C is good because a lot of programming languages are based on it.
>>54779399
This book is great too.
>>
>>54779428
Although I agree with the sentiment.

This guy is just looking for a starting language. He needs something that will teach his how programming in general works without it being overwhelmingly confusing.

C is amazing but awful for beginners though.
>>
>>54779004
>computer illiterate
Choose an easier language like python, ruby, or javascript.
>>
Stick with flipping burgers kid.
>>
>>54779279
I'd also have to recommend C Primer Plus 6th Ed.
>>
>>54779487
>>54779117
+1 python
>>
>>54779279

If you have some footing in programming, this is a great book.

If you have nothing, start with something incredibly basic. go to Codecademy and bang through a course or two. They basically only give you the syntax but you'll learn enough to get an idea of what you're getting into.

Other good places to start might be FreeCodeCamp or Learn Python the Hard Way etc
>>
All of you are fucking retarded; try APL >>54779004
>>
>>54779457
TCPL is not a good book for learning programming. It was written to teach C to people who already knew how to program the way people programmed in the 70s. You should definitely read it if you want to program in C, but it's not really a good place to start.
>>
Take an online course (make sure you read the course textbook cover to cover) in three kinds of languages:

* A low-level, compiled, statically typed language (C, C++, Go)
* A high-level, interpreted, dynamically typed language (Python, Ruby, Javascript)
* A functional language (Lisp, Haskell, Scala)

You can get the better half of a college education for free online nowadays: https://www.coursera.org/

CodeAcademy has some shit-simple tutorials that will make you feel more comfortable with the idea of writing code but won't really teach you much (still, a good way to warm up to it): https://www.codecademy.com/

I think books are still really good resources, especially ones that read like tutorials (present a concept, make you do exercises, rinse and repeat.)

The Learn Code the Hard Way series has a lot of acclaim for being good at bringing someone from beginner to intermediate very quickly: http://learncodethehardway.org/

Here's the first programming book I ever read, it still holds its own and it's free: http://greenteapress.com/wp/think-python/

If you make it that far and you want to get a job, your best bet is to join a programming bootcamp like App Academy or Hack Reactor. They'll refine your skills and hook you up with job recruiters, and it costs a lot less than a college education. I've had several coworkers come out of these types of programs and they're just as competent as me. I have a bachelor's in CS and $25k more in debt than they do. Hindsight is 20/20...
>>
>>54779428
>Figure out what you want to do with programming first, then ask the question again.
Not many people suggest this.
This is good advice.
Good post in general.
>>
>>54780169
(con't) Some other tips I would give you:

* Try programming challenges like Project Euler and try to find interview questions online. These help you apply your knowledge in practical ways.
* Make a github account and start putting your code there. If you put anything half-decent up there, it'll actually look good to recruiters. It's your portfolio.
* Also make a stackoverflow account and lurk there. Answer questions if you feel confident that you have the right answer. Having a noteworthy stackoverflow profile is a nice little cherry on top for recruiters, plus they have their own jobs site that hooks into your profile. That's how I got my current job, I got contacted on Stackoverflow Careers.
* Just write some programs and see them through, then publish them under an open source license. Doesn't matter if they do anything useful. Go ahead and reinvent the wheel. Make a sudoku game or something. Just write something!

Oh, and learn Lisp. Just do it. It will make you a better programmer almost immediately.
>>
>>54779428
I'd say as a counterpoint that learning a low level language is invaluable for understanding how your computer works. I don't think it's something you should start with but I think it's something you should learn early on.

That said, K&R is not for beginners, we can all agree on that.
>>
>>54779279
While I find your advice to be in line with what I can reason to be the most sensible as well as the sentiment of the people who're actually good at computing, I'm interested to know what you would think would be most prudent to learn for someone who's
A) Interested in learning to modify free software to fit his needs better for fairly low-level stuff. Mostly just general personal information management and developing simple tools to use with my pen and paper roleplaying games for example
B) Interested in applied embedded systems at the nanoscale, as my studies pertain to nanoscience and I feel it'd be downright retarded to not be capable of even programming any given automaton I could conceive might be useful
I'm thinking I might have to just learn two languages well given how disparate these purposes are, but maybe I'm just a moron
>>
>>54779004
Unless you are literally non-meme legitimately medically autistic I do not recommend it.

Instead become proficient in using software to do some task, such as learning the ins and outs of video and music production. You will find this more enjoyable and there will be less competition from real autists.
>>
>>54779004
if you're older than 7 years old it's too late you'll never be a good programmer
>>
>>54780289
I don't think you asked for my opinion but I'll give it anyway.

By the time our nanotech is advanced enough to support automata I think we'll already be so good at compiler optimization that you won't need to worry about real-time, embedded systems programming as we know it today.

BUT you should still learn a language that deals with memory references directly because it's important to know how programs are represented in a computer. But that's something you can learn after you learn a higher-level language.

Remember that programming languages shape the way you approach problems and choosing a language that has very few abstractions will make it hard for you to analyze big picture problems... Paul Graham makes a good point about that when talking about Lisp in comparison to the Perl and C of his day. http://www.paulgraham.com/avg.html
>>
>>54779004
Read automate the boring stuff.
>>
>>54779004
College if you want a job.
If for a hobby get a book. Online tutorials/videos will teach you basics but won't go in depth.
>>
File: 1463116979320.png (403 KB, 960x550) Image search: [Google]
1463116979320.png
403 KB, 960x550
>>54780425
I did ask for your opinion, Anon. Even if I disagree (which I don't know enough to do, at least not meaningfully), it's nice to know what other people think to contrast and compare.

If I understand you correctly, you are recommending learning first a higher-level language to get an understanding of basic programming logic and complexity, then learning a lower-level one once I have the basics in place so that I can better understand the "actuality" of what I'm doing, for lack of a better vocabulary?

If so, that seems pretty reasonable. Similar to how most other skills are learned, actually. I'll give that link you sent a read. Thank you very much for your input, Anon. Have a great day my man.
>>
>>54780425
>>54781519
Woops, I just realized I quoted >>54779279
when I was meaning to quote >>54779428
I'm retarded
>>
you start by going back to facebook you fucking normie REEEEEEEEEEE
>>
I started learning python, but motivation is a huge problem. How do I keep muyself motivated? Also, how do I actually use what I learn, say for loop, to make something helpful rather than posting numbers with it?
>>
File: 1463625242736.jpg (89 KB, 960x796) Image search: [Google]
1463625242736.jpg
89 KB, 960x796
>>54781911
:^)
>>
>>54780169
>Scala listed as a functional language
>>
>>54781964
>using the smiley with a carat nose
Thread replies: 34
Thread images: 5

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.