Where does one learn "real" programming...

Where does one learn "real" programming? I'm talking about the kind where you are actually making something meaningful you would post on your Github rather than making a program to find the intersection of a linked list of integers and deleting the last node.

the internet

Well, I dunno but when I look at "real" programs, they just look like a collection of useless junk like you described stitched together and through a few layers of abstraction somehow become real programs. Really makes me think.

First find an itch, then learn what you need to know to scratch it.

I learned programming at workplace.
My job don't really need any programming skills, but I used Java and Python to make my everyday routine little bit easier.
Like sending dozens of emails with one click, checking database is any ticket closed or not, writing tons of data in Excel files, extracting data from those files and calculating some shit, and similar.

what job

NOC Technician.
I'm planning to switch to programming soon.

B-but low-level is legacy and everything will be implemented in lgbtwtfbbq.js soon (including firmware, kernels, embedded, and hardware drivers)

You have to throw yourself in the deep end. Start building the program you want to create and see where it leads you.

I'll throw you a bone, but only for the enterprise ecommerce shit i do for a living.

"Real" programs tend to use the full stack. Go learn HTML CSS and JavaScript. Make some basic websites.

Real programs have business logic in a powerful language like c++, c#, java, etc. I use java.

Real programs have persistence via a database. Go learn sql and maybe MySQL.

You need to know XML and maybe some xslt. If not this json but you may still need XML.

Where to learn is key because 90% of stuff online is trash. Udemy is amazing. Get a few long free courses then buy from the higher rated ones. Learn HTML CSS JavaScript well enough to make a website, java well enough to make some basic business task (like take in data, transform and filter it, then send it back). Make a small sql program that manages your anime or whatever.

>full stack
meme term

After you have the basics down you want to make full stack (web, app, database) things.

Head first makes books for HTML and CSS, JavaScript, sql, and java.

They also make a book for JSP and servlets. This is older technology but still used, especially the concepts. HF JSP will teach you about "model view controller", a pattern of organizing your code.

You can start making applications that are accessible on the web, have organized and powerful business logic, and save data to a database.

After HF JSP you'll have enough basics to keep learning about frameworks and projects on udemy and look at people's open source code.

You'll understand "real" projects that are using a shitload of technologies and layers of abstraction.

Then you could literally make a shitty amazon clone, or a facebook clone, etc. again, udemy (or pluralsight) and even some online websites have "build a xxx with us" where you can follow along. After that it's a matter of doing it at the big boy level for a real workplace.

>buy

Found the shill.

Pretty decent answer.

It's easy enough to learn these things individually but there will be some effort required to connect all these moving pieces together.

It's good fun! There are bound to be problems and bugs that come up but that's how you learn.

This is my current project at work

We have a portal that you can log into, with 7 roles set via spring security. This separates users from admins from developers etc.

Depending on your role, your portal looks different because you can access different stuff.

This portal has links to commands like "increase the database limit" or "add user to application x" for the sysadmins (i don't know what else it does, I only did that piece). Sysadmins click links, go to new webpages, do their business via web.

Those JSP webpages (you could use angular if you're familiar with it) and the AJAX calls in it are captured by spring controllers. Which call spring services and eventually daos. Then bubble the data or results back to the webpage.

For example sysadmin adam wants to give new employee bob access to the sales database. Adam goes to the add user link, adds bobs id, selects sales database, clicks ok.

The program verifies Bob and lets him access the sales database. Records are kept of this new access given to bob by Adam. Plus it keeps records of what bob does.

Now bob as a salesman, can use the portal to start selling products... and the view/controller/model cycle starts again.

That's basically a lot of enterprise software in a nutshell - a lot of MVC.

what does a full stack entail?
is that like saying mother lode or more like saying big kahuna?

As this guy said, yes, the REAL challenge is fitting it together.

That's why I suggested you learn them individually, then move to nice resources that show you how to fit them together. Head first servlets is a great resource, and so is cave of programming for jsp an and servlets.

After jap and servlets you can venture into other mvc full stack stuff.

There is the new spring framework, the mean stack, the world of NET, iOS stuff... but nearly all of them have some kind of MVC.

Some don't of course - but I did say I only know mvc ecommerce... and that's enough to land you a job from entry level all the way to senior architect.

Good luck!

Also OP, ignore the cretins on g that only want to make fun of anything that remotely resembles work words. Just get to studying and coding.

Find a problem, plan a project to solve it, profit.

>regurgitating the "full stack" meme requiring a "real programmer" to know at least two dozen languages and then another two dozen or more meme frameworks for them

It's just treating an employee as a labor hypervisor upon which as many roles as possible are stacked like VMs to cut costs. The latest variant is the "devops" meme which in addition to be a "full stack developer" also requires involvedment in system and network administration. What a joke. I wonder if someone from management would like to be a "full stack manager" having to micro- and macromanage everything from single employees to whole enterprise while receiving the salary of a lower middle manager at best.

But learning and masterig new technologies makes YOU more valueable. You can't see that because you don't have entrepreneurial mindset, and that is exactly what is needed to succeed today.

classical wageslaving is more or less a meme nowadays

OPs question was building real software. It is entirely possible to build real software in a single language a la video games (c++ and java), but a lot of real software has some MVC aspects. Hell, even java could let you do front end desktop app via spring.

Another good way to learn MVC would be the HTML/CSS/JavaScript for front end, java for application, and sql for backend. No frameworks needed if you use servlets.

If you really wanted frameworks you could use bootstrap for pretty CSS, Angular for a powerful front end, and spring for the java. None of those frameworks are needed but do add some powerful features - and simplicity if you know the language and framework well.

Your hatred of "oh my god enterprise is so ridiculous they expect everything" isn't relevant at all to what I said. I only offered my experience as a full stack ecommerce developer. OP could also make real software by learning a single piece really really well. We have CSS and UX experts who only know their piece.

But, those people will never learn to make "real" software because they have no idea how to connect a GUI to a database and via versa.

tl;dr eat shit hater, the advice was spot on to the question

>useful programs are just useless junk in disguise
Wow

Ive created video games before, do those count as "real" programming.

>2 spaces

>MVC
>2017

Of course.

Why don't you explain it in detail like the mvc poster did?

Then op has more paths to choose from.

>udemy is amazing
10/10 made me reply

Depends on the instructor. Depends on the course.

im guessing you want to build something yo ucan show off
make websites
pretty ez to make and has a learning curve to it and you get to show off the world your creation
or go make discord bots those are fun too

i had this same question too OP

make a CRUD app, a Sup Forums clone would be a great project, dont forget about security too

im trying to give him a head for good direction. full stack depends on him knowing stuff he doesnt know. like what makes a stack full. how to build a stack. who might know the answer to these questions.

first you learn the "meaningless" shit then you apply that knowledge to solve meaningful problems

if you're clueless has to what makes big projects cohere, then you shouldn't stress out over that. demonstrate your ability to program and join a team directed by competent managers and you'll be golden.

If you want to work on something meaningful you should start with a use case or a problem that needs to be solved. Then you write a program to address the use case or to solve the problem.

i think all u need 2 realize is that... evry time u try to program a system that is other than ur own, u essentially need to learn it all over again

eg: ur 'X' in ur system, could mean 'Y' in the new system ur learning

after that, ur just like evry other programmer... but experience always helps i guess?

...

i made my own language that ended being a benefit (LOL)
(((no1 else knows what it means other than me)))

Instead of JSP and plain servlets learn Spring (Boot) and Thymeleaf

You start working on a real project? With a goal like "I'm going to make a gay dating app" and not "I'm going to learn shitlanguage X".

If you don't have a real project then you don't need to learn programming. Solving little shitpuzzles is nice if you're that kind of savant but essentially a waste of time.

What's a good project to start on? I already have a gay dating app.

either ur own or something u want to learn?!

write a spell checking app for this guy

there is 1 already, but it's excessively flawed (...its learning(& im lazy(so it is what it is)))

Make a dating app that matches up people who haven't seen LOST yet so they can share their shitty theories with each other as they watch it.

Not a "real" programmer but working with and reading a lot of "real" code.

Most "real" programming is glueing together API calls, database interaction and implementing Business logic and data validation rules.

Unless you are going to work on a project from scratch and are involved in the design the programming that you are going to do is either in bad projects and terrible because it's mostly bug fixing and writing hacks you have to write because of a hack that doesn't let you do what you should be doing or, in good projects boring because working on them is mostly declarative.

Not that exciting IMO.

this
you're basically a glorified plumber

>what is a pattern
>that grammar and spelling
Holy shit pajeet LEAVE MUH G REEEEEEEEE
Kindly do the needful and leave and answer no more doubts

man its really fucking encouraging to read this.
ive been studying dev in a school in germany for 1 year now, next year i could work full time with it.
But i constantly feel like i cant do anything, because basically all i can is exactly what you described. And it seems so ridicolously easy that i just keep thinking there is more to it. there has to be, why would any real business pay anyone for this, anyone could learn this in a month.
While at the same time 90% of the people in my class basically cant code at all.
idk man, conflicted as fuck because its so ez but at the same time so many people around me cant do it.

You'll never really understand why spring is the way it is without servlets. Spring makes 10x more sense with a little background in servlets.

Same for thymeleaf and knowing jsp.

But, I agree - if OP is serious about this (and OP is a faggot who probably already left to rice his desktop) then he should learn spring and thymeleaf afterwards.

Should I post my Project Euler problems on github?

Write your own OS complete with file system, boot loader, command line etc. Write your own compiler.

what doubt?
its based in 'logic'
x=what i define it 2 mean, same 4 y, z & any other logic/variable i define my system to know what they mean

op is too much of a nigger user
terry is the whitest of the white with divine intellect

>not turning your garage into a fab and building your own hardware

>Most "real" programming is glueing together API calls, database interaction and implementing Business logic and data validation rules.
>the programming that you are going to do is either in bad projects and terrible because it's mostly bug fixing and writing hacks you have to write because of a hack that doesn't let you do what you should be doing

This this this this this

Listen to this man, OP. This is so fucking real I literally started shaking for a few seconds. Jesus Chirst I can't articulate enough how true this is.

Fuck everything.

I'd do it. It shows that you're doing programming stuff outside of the job. x

>should i free/open-source
ur choice isnt it?

>job
If only.

when you apply they'll see you're productive or soomething. don't give up my nigga

Aw come on, coding data structures and shit is way more fun than just create an application for the sake of it, using a fucking ton of API calls, O(1) complexity
Believe me, when you have a real problem to solve, those hours refining your logic and data structures will pay off.

>average enterprise project
>rolling your own stuff
Ok guy who never worked before

No, you should

1 look at what jobs want
2 realize it's JavaScript and maybe another language like c++ or whatever
3 realize it's frameworks and shit too

Then

4 learn that language from a real book
5 learn the framework
6 make projects of high quality

Then you apply
Get interview
And

"Why are you a good fit for user enterprises"
"Well you use c++ to sell dog collars and here on Github you see I have written a small c++ app that tracks cat collars so I hve relevant skill"

Find something you need to do. Write a program to do it. Repeat. Occasionally go back and optimize and refactor your code. You will get good.

>>>/wdg/