Learn to google

how viable is this, wagecucks? some friends of a friend have done this and they are living in relative comfort without the educational jew demanding debt payment

Can you live like a pajeet?

If so, yes.

being a college student is no betterinnit. or are you saying that it will last more than ~6 years

it only works if you actually take the time to git gud
gitting gud does not entail reading learn python the hard way by zed shaw and then thinking you know everything there is to know about programming.

this is my plan so it better fucking work. i wanna build experience making open source software and then i'll accept a shitty IT job

holy fuck do not do this, go to school and get an internship

test

or


or


or

best you can do OP is learn:

HTML/CSS/JavaScript/
SQL/PHP/Bootstrap/React/
Ajax/LESS/SASS/Python/
Ruby/ASP.NET/Meteor/Node.js/
Django/Wordpress/Drupal/Angular.js/
Ember.js/jQuery/MangoDB/
PostgreSQL/MySQL/HTTP/
JSON/XML/CSV

And save for HIV medicine

The Art Of Computer Programming by Knuth is a must have. Do not toss it aside if some of it seems way beyond high level for you. It's written so the novice up to the graduate can read it and gain something.

From someone in this exact position here is the actual lowdown.

1.) stop posting on /g/ Holla Forums wherever asking "should do this, should i do that?". You want to learn to program fucking learn to program half the battle is just starting

2.) dont fret about school a lot of people put themselves in debt because papa ruthenstein told them they had to. i see lots of big headed fuckers think because they have degree they can demand interviews and that they hold some unique and exclusive knowledge, not the case

If you can afford some school and you like that sort of thing. just getting in the door can land you a few interviews

3.) get an entry level help desk job or some shit, work for 2 years and in the meantime fuck around with your favorite hobby-horse linux distro and setup a home lab. learn computers, the logic behind them, once you know the basics of how they operate you can apply that tuition and adaptibility to new concepts easily.

so really

dont let the retards here sway your beliefs and your drive just push forward

Not the OP here but I actually have been going down this path for the past year. I learned HTML, CSS, JS, JQuery. I am moving on to PHP/MySQL and will then probably just focus on whatever JS libraries sound good.

Enjoy 40k/y starting.


The most important thing in programming is not writing the program, it's designing it! Anybody can write a program, making it good is a skill that requires more knowledge than playing around with GNU/Linux could give you.

You don't necessarily have to go to college for the knowledge, however it helps. You could use The Art of Computer Programming like suggests. What's important is that you get that knowledge. There are dozens of self taught idiots who write shitty code thinking "The only math I need is +,-,*,/", while their programs are poorly designed, poorly implemented garbage. This is because they don't consider the needs of the program, the most important constraints, and how to work with them to promote maximum efficiency. When all you have is a hammer, every problem is a nail.

Those are OK but you might want a more modern stack in addition to that.

More than I've ever made tbqh fam. My family couldn't afford *any* money for college. I'd rather self learn and not owe any debt, and move through the career field as I gain experience.

That's not modern? Howso? I've found Jquery and JS libraries are pretty dang relevant right now, and PHP is still one of the most widely used net languages. I should note I'm interested in Web Dev. I have a lot of other skills that don't include languages that are sort of relevant, Photoshop, graphic design, that kind of thing.

Then make sure to learn up on discrete math, otherwise you'll stay on the bottom.
haha

Web code isn't very heavy on math.

Actually I have a better question. Is there a good community where I can go to discuss code concepts? The only place I know is stack overflow and I have nothing to contribute there, since any question I come up with is too noobish and already asked or questions that I could have answered are already dealt with by people way better than me.

learn the following:
>linux gnu+linux
for learning linux, you should default to ubuntu linux. if a company is using linux it's usually ubuntu. windows is the only linux distro more like windows than ubuntu
for practicing interviewing skills i suggest using hackerrank or topcoder. lots of companies use these sites to conduct coding interviews so you'll be prepared.
Now you're ready.

Get a job at a trading firm as a quant, 70k - 90k starting salary.
Even the interns make ~50k / year
5 years in you'll be making 130k+

Experience, ability, and dedication are more important than education.

red hat/cent OS / Fedora if you're in north America.

most that i see in USA are using ubuntu.

THIS!
Just because you farted around enough with Python or C tutorials to be able to write your own shitty Depression Quest, doesn't mean you know jack about making good/efficient programs.

What is a data structure? If you're already thinking it's just a variable type, kill yourself. Discrete math is a requisite if you want to do anything more than make MySpace themes or make Twatter slower with more interface code.

What are linked lists? What are binary trees? What are arrays? If you have an array of fixed size N, and you need to put an (N+1)th value into it, what's the best way to resolve this where you're not spending O(n+1) to add the (n+1)th element?

You only need, like, three math courses beyond high-school. I recommend pre-calculus, discreet mathematics, and linear algebra. Pirate and read The Art of Computer Programming by Knuth, from Library Genesis, and work to understand just *half* of it. If you can do that, you will be just good enough to compete against pajeet for a Micro$hit job.

If you're getting into programming as a primary job (and it's not something like "Scientist/machinist learning to program to science/machine better")... don't. Do it because you love it, or you will regret spending time learning it.

Very viable, if you are dedicated. You need to be able to spend several hours a day for at least a year building said experience, though. You can't just google "how to program" and be hireable in a month.

Where's the experience part in your master plan?

But, to be honest, if you focus in one or two areas, and get some shit done there (MOOCs, some interesting projects, etc.) you're probably good to go.

University has only 2 advantages:
In a good course, you learn from all the areas, not just the ones you like.

If the course is hard, you'll have to sweat to pass your exams and projects. That's something you don't do with hobby projects.

tbh fam I just want an easy paycheck that doesn't require me to lick toilets in front of my boss, and I hopefully don't have to commute at all to get and thus have no reliance on a fucking gas-hogging insurance money gobbling hunk of slowly rusting metal.

why do I need to be the world's best programmer? AI is just going to replace us all in 20 years anyway, so your dreams of being the very best the best there ever was won't mean anything

communism is the answer

No it's not. You only need discrete math if you plan on getting into AI or cryptography.


Software development is not easy by any means. It's mentally exhausting and can be very stressful.

why?

This is the source of bloat right here in software. Point your fingers and shame him.

SHAME! SHAAAME!

No tech company is going to pay you what you are worth.

You're implying way too much. No shit "Learning to program" isn't just learning the syntax just about anyone can pick it up in a few minutes. Data structures and algorithms go along with learning programming.

Learning programming also implies studies mathematics, you don't have to be a math wiz but it helps with the logical thinking process.

A lot of people that want to program get too mixed up and worry about "what language is going to get me the most slave coins?" when in reality you should begin by really mastering and learning 2-3 languages preferably ones that work together well, while studying algorithms and computer science concepts that interest you.

by fucking around i mean it doesnt have to be chore work it should be enjoyable or you should choose another career.

and yeah autodidactism is pretty much

If you stopped using the internet just to shitpost perhaps youd get it

Yeah graphs are everywhere, but TBH you only need like, a 100 level course to understand more than you'll need.

It's not needed because it's one of those things you can easily learn-as-you-need-it.

For one, your PRs won't get merged if they're shit and you don't know what you're doing with your code. Open source isn't designed for learning, it's designed so people who can already work with the language/git can contribute. If you've never used git for a big project with lots of branches you'd need to somehow get experience doing that and with making/merging pull requests.

Fundamentally a viable strategy, OP, but a bit suboptimal. I went through the traditional college path, and I do think it is so useless (and for introverted teen also socially painful) that if I was 18 again I'd consider just not going.

But realistically, college still has some advantages:

You can compensate for 2 by just going on MIT or Harvard's website and stealing their curriculum. 3 is sometimes available, though lower quality from volunteers at libraries and such. 5 can be easily outdone with solid experience. 1 is not really something college gives you, you either learn discipline or you don't, it's just slightly easier in college sometimes. 4 is the main issue with the no college path, although you can solve it by networking with friends or more senior people whose open source shit you work on. But this is also hard for an autist.

Also you will top out with promotions pretty quick, because big companies like senior employees to also have more credentials, since they think a BS employee can only stomach being bossed by an MS or something. But you could focus on smaller companies and startups that have a less formal attitude.

With this strategy, you have to be ready to go the long haul of hobby programming for many years, maybe a decade, before you finally get a great idea that you implement and make a killing. It might be so hard to break in to the industry without a degree that you end up accumulating enough knowledge to create software on your own from start to finish, at that point you might as well. Of course being independently wealthy from your own product is infinitely better any corporate wage job, but I hope you have rich parents who will support you all that time.

If you go back to the reasons for avoiding college, to me they are:

3 only applies if you take a 200k loan to go to Dartmouth or something. You can just go to a cheap local college, it will be easier to get in, easier to maintain high GPA, easier homework (meaning more free time to practice coding or working on FOSS). Teaching quality doesn't matter because you can just skip class and watch MIT lectures online from anywhere. There are even some decent public schools where your 4 year expenses will total ~15k (not counting rent). If you can find one in your town so you can save money on rent by living with parents even better. Or if you really must go to a top private school, at least do it with actual financial aid so that you only actually pay a fraction of the costs. So then the "educational jew demanding debt payment" problem is gone.

For SJW propaganda, again if you go to Harvard you have it coming. But if you find a small, less well-known technical college or something like that, chances are the mandatory SJW will be either minimal, or so low-effort that you can just silently sit in the back of class programming while the professor is trying not to shit herself getting her powerpoint to work, since you know the exam will be so easy you can just guess the answers anyway.

Which leaves inefficient use of time. Unfortunately it's hard deviate strongly from the mandatory curriculum. A lot of courses enforce attendance (either hard by taking signatures or soft by asking very specific questions on exam that were taught only in lectures). But if the college isn't too tuff, you can coast by and devote your free time to other pursuits, sometimes even biting the bullet and accepting A- when you could have been top of the class.

If I was you, I'd go to some no name boring ass college (the less its known for partying, or anything for that matter, the better) where tuition is cheap and competition is low, and treat college as a side-thing to my main business of learning to code like you describe. Internships will be a bit hard to get but still doable with some perseverance and pluck. Once you get them, work your ass off, get a job offer, work a few years, make company pay for you going back to school for a masters so they can promote you, this is a top tier career plan IMO.

Having kinda done this for several years, I'd say it's a bit harder than it sounds. To make serious progress with your hobby you will end up sacrificing performance at your primary job sometimes. It will exhaust you mentally making afternoon studies hard and demoralize you when you're being berated and passed over for promotions at a job that's clearly beneath your level.

If you have some serious balls, it's absolutely a solid approach (maybe better to focus on development than linux fuckery) but be ready to for a mentally taxing time. Though I guess college, if it were less pozzed, would hardly differ.

true, but i mostly mean making software by myself.

isn't it better to build a portfolio?

i'll probably be lucky to end up working IT for some mom and pop store anyway

Portfolio pieces are important to some employers and the more depth they go into with whatever language, the better. Not all. I don't see any benefit to making personal projects open source unless A) it directly provides some benefit to other people who need it or B) you really want to allow random people to see it. If employers want to see your shit they'll ask. Don't do it 4 free.

99% of the time people are given the advice "learn programming" or say they are going to "learn programming" they do not learn related maths. So no, at least in conventional usage, learning programming does not imply learning the maths. Hence why we have to mention it specifically.
If you bothered to think about anything you'd know just how totally pointless "fucking around and learning how a unix system works" is to making good programs.


How do you think your phone gets you directions to an address? Oh right, discrete math.

i am 95% done with college but need money, how viable is getting a job with what i have right now?

That's a very specific example. I've been programming for 6 years and the only time I've ever needed discrete math was when I was taking AI and crypto courses. It is useful in some fields and in very specific circumstances, but is by no means required for being a good software developer/programmer. You should only learn discrete math if you think you'll be needing it or if you genuinely enjoy learning things that you probably won't need.

Do you use an array for everything as well? At most extra a linked list?

You need discrete math when you you're analyzing for complexity and counting the cost of the resources.

top retarded

haha.

I've studied graph theory and I know how to write binary trees and red-black trees and Dijkstra's algorithm and so on. I've never actually had to use that knowledge except for an AI course I once took. Arrays, linked lists and hash tables suffice for 98% of jobs.


Sure, everyone should know how to analyze algorithmic complexity, but that doesn't require dedicating your studies to discrete math. You usually learn that in an algorithms and data structures course.

People should worry less about math, and more about learning lower level concepts like pointers, compilers, assembly literacy, stack/heap etc. I found that after I learned those concepts, everything higher level made much more sense.

this

top pleb

You're not even trying anymore, are you?

You've obviously never actually been involved in software development

JHeeeeeeeeeeeeere we go...

Freelance the shit out of your skills. If you find that you can't sell what you're learning, you dun screwed up.

Work on and manage personal projects before you start submitting code to others' stuff and don't add anything big unless you've asked before hand or you're planning to fork and maintain that fork.

I agree with him. Arrays, linked lists, and hash tables cover a huge amount of software applications (maybe even 98% of applications) in most cases. The more exotic applications that require more sophisticated techniques have fewer applications in terms of real world deployments.

B-b-but muh Djikstra

Well, let's be fair, there's a few big swinging dicks like Google's search indexing, Amazon's cloud shit, supercomputer computation, Facebook's db set up and so on where this stuff becomes crucial. This is a pretty narrow area of work, but in practice it employs a lot of top engineers and they get paid well too. So narrow or not this stuff is relevant to anyone's career.

Whether you actually want to work at a place like Google, Amazon or Facebook is a different matter.

But generally I'd agree. It seems like the supposedly hard math is actually pretty easy, because there's always a big selection of different libraries in various languages that do this stuff already. The algorithms have been known for decades, all it takes is some bored CS kid to go and implement it, something with a low, low skill barrier. And then anyone can use the library.

And while the library only needs to be written once, there is a huge variety of applications, especially once you start getting into combinations of libraries. So in the end the vast majority of software project space is made up of not designing and implementing algorithms, but various applications of those algos. So the algo part is saturated (again except people pushing the envelope like Google) but the wide application field is largely untapped.

I forgot to add - you can say that having a knowledge of the algorithms and the math will still help you select a good library, and use it appropriately by leveraging its strengths, and maybe even make the decision to roll your own when you realize what's available is insufficient.

In this way you can make quality software that is better than competitors who made theirs first. But new markets and fresh use cases crop up every day, so there is no shortage of virgin applications where no competing program exists. Even if you abuse libraries and make low quality software, you can get people to use it due to lack of an alternative. And by the time the alternative shows up, the use case might have fallen out of fashion.

Especially with things like phone apps and normie webapps, it really feels like a wild west kind of deal. I wonder what things will look like when it inevitably matures.

It depends
Some places want a degree
Some places want certifications
Some places want both

if you thought a little harder you would see how it all corresponds, "just fucking around" can lead to a lot of good learning experiences that translate well to the workplace
if you dont think learning how to configure machines, troubleshoot, and repair them wwont help you than your not thinking hard enough

I don't believe you.