How do I become a legit programmer?

Maybe someone else is in similar shoes as me..

So I recently got a job as a "software developer"... This is my 3rd such role for a company (The first 2 were at tiny startups, that lasted less than a year each. Now I'm at a massive company, helping build a web-based GUI in Javascript).

The job is going well, pays decent, but that's not the point. I talk on the phone sometimes to my friend who codes in C++ exclusively in optimization / algorithms / improving software performance (i.e. all back-end) and he calls me a "web dev", as a derogatory term..

I'm tired of this stigma. If I do anything web-related, I am not considered 'legit', or that I know what true programming entails. I even wrote a game using the Unity engine. But still I'm pigeon-holed as just re-configuring standardized patterns, assembling templates in drag & drop / point & click / cut & paste way, which ends up being completely uninteresting as software, and has no long-term prospects for me professionally.

I want to ACTUALLY design software, not be relegated to pushing around stock forms, inputs, buttons, etc inside a browser that renders it all.

I just don't know how to come up with any ideas or where to start at this..

I'm not trying to brag, but I am damn fucking good at Javascript, dissecting any new web technologies & APIs that come out, to figure out how to connect them all up. Usually in a weekend I can breeze through some tutorial, just start coding any kind of web or mobile app I put my mind on.

Django, python, reactjs, docker, angular, html/css, etc I've run the gamut of them all. I can really do it in my sleep at this point.

But this is a dual-edged sword as I keep getting trapped in a rut of pulling down the same standard npm packages, making a nice unit-tested 2d interface with bootstrap, etc and starting from there.

Maybe you can see my dilemma. How can I break this cycle and really delve deeper into making interesting software that really does something cool & worthwhile?

just apply for a new job doing 'legit' programming bro it's not that hard

>I talk on the phone sometimes to my friend who codes in C++ exclusively in optimization / algorithms / improving software performance (i.e. all back-end) and he calls me a "web dev", as a derogatory term..
If the dude isn't joking, then he sounds like a real faggot. Not exactly sure how the word web dev is derogatory in any way though.

>I am damn fucking good at Javascript
Then why are you writing it for someone else?

The easiest ways are going into native mobile and backend. Both should be trivial from where you are.

There's also the route of going into deeper into frontend javascript, but very few companies do that (e.g. heavy GMail frontend, 60fps webgl iCloud frontends, writing core libraries or frameworks)

*this, I code in C++ and what your "friend" is saying to you wouldn't cross my mind. But besides that, you need to take a step back go take a bath/w.e and figure out what question you really want to ask here.

OP even says in their post that all they do is "re-configuring standardized patterns, assembling templates in drag & drop / point & click / cut & paste way, which ends up being completely uninteresting as software"

you can kill yourself at any time you want

There is a stigma because Web Deb is really really easy and simple. The fact that you can breeze through a tutorial is just evidence of how easy it is.

If you want to design software, write something that at least attempts to not be your simple everyday CRUD app

This person has never written a web application that was even slightly complex. If you want, I can give you an example and you can try to write a function to solve it. :^)

learn scratch

Read a book about C programming, computer architecture and OS.

His friend is being mean but the more layers of abstraction you get from hardware, the more paint by numbers the programming job is.

Just learn a lower level language and implement some algorithms and stop being such a bitch. You obviously have a fluctuating self-image and honestly its fucking annoying.

>Coded a game in Unity
No that's pretty much just cut and paste

Just embrace who you are, a web developer. Either, contribute to open source stuff in your spare time if you want to do real programming, or get a real job, or kill yourself.

Would also like to add "programmers" will all be replaced by neural networks. Just do whatever earns the most money and get out while you can.

Well it was comprised of lots of code I hand wrote in C#, including AI, ship control scripts, etc. You appear to have misinterpreted an abbreviation I used to get a point across, and used it again to reiterate the aforementioned derogatory label.

who will code the neural networks?

So you want a starting/junior programming job?

You MUST master the basics of programming, and be able to implement your programming knowledge using any language. That means solving problems without relying on any particular syntax. If you cannot separate programming syntax from programming concepts/algorithms, then you will need to go back and focus on the basics.

After mastering the basics, you want a starting job. Let us look at languages that will help you launch your programming career. And no, you will not be earning $300k/year when you are just starting, but you may do so if you persevere.

1- Java. Enormously popular, Java is everywhere, and everyone wants a Java developer. A must for Android applications.

2- Javascript. It runs most of the internet! A must for website developers, (with CSS and HTML.)

3- Objective C/Swift. The languages that power Apple gadgets. A must for iOS applications.

There are more languages in high demand, but they require more experience. Master the following to expand your horizons:

-SQL. Because data must get stored.
-C. Real programmers point to this language.
-C++. For classy, objective programmers.
-Python. For high-paying sssoftware engineering jobs.

>WHAT OTHER LANGUAGES ARE IN HIGH DEMAND?
Other than what was mentioned above: C#, Ruby, and PHP.

>I WANT TO WORK WITH HARDWARE DIRECTLY. WHAT LANGUAGE IS CLOSEST TO THE METAL?
Machine code. Good luck, friend.

>WHAT HUMANLY-READABLE LANGUAGE IS CLOSEST TO THE METAL?
Assembly. When it comes to programming, Assembly is the apex predator.

>I WANT TO KNOW ABOUT THE LATEST NEW MODERN not-a-fad LANGUAGES!
Take a look at Rust, Go, Hack, Scala, Julia, Dart, and Erlang.

>THOSE LATEST not-a-fad LANGUAGES WILL GUARANTEE A JOB, RIGHT?
No.

>I STARTED LEARNING [language x] BUT YESTERDAY MY [friend/lecturer/uncle] SAID TO SWITCH TO [language y]. WHAT DO?
You have already started, so stick. That other language will still be there when you are done with your current task.

Also, I *have* a real job, I thought I made that abundantly clear. I am building something on a team that will be an upgrade to the company's internal systems.

These kind of knee-jerk, insulting responses are maybe what's really the biggest bug in my craw.

I was essentially asking how I can become a *BETTER* programmer, I guess would have been a better way to phrase it. How can I dig deeper into lower-level code and get more mileage out of the functions that I write, etc.

But there's this recurring trend I have noticed; that this antagonist, toxic attitude loves to rear it's head and put other devs down.

I suggest you stop harassing fellow coders, telling them to an-hero, or that they're annoying as such, as other beginning coders might be discouraged by such negative quips, and this isn't good for society. We need more people (not less) who can program the machines to do stuff, to help with widespread issues like health, law, poverty, housing, foot, etc.

Sorry about the copy/pasta, but hope it will help point in the right direction.

Also note that proper "web dev" is indeed programming, as long as you are doing actual "website development via programming", and not "wireframes and UI/UX". The latter is called "design". There is a genuine reason to make fun of designers who do not do any programming, but call themselves "developers".

Unfortunately, many "non web"-programmers do not distinguish between proper web developers and cut-and-pasters.

>How can I dig deeper into lower-level code and get more mileage out of the functions that I write.

By writing low level functions?
Understand the architecture you are working on?
Read up on computer science and mathematics ?

If you know JS/CSS/HTML, and the latest web frameworks that come out every other month, then you are not going to get any deeper if you stick to website development. You will need to switch to a different language, and do non-web programming.

What do you want to do? Make Android/iOS applications? Make games? Write simple AI to drive real-life robots, including taking data from sensors and sending signals to actuators?

You gotta figure out what you actually want. "Deeper" is not good enough.

>I suggest you stop harassing fellow coders, telling them to an-hero, or that they're annoying as such, as other beginning coders might be discouraged by such negative quips, and this isn't good for society.
We are here to talk about technology, and we are adults who talk like adults. If you want to have your feelings taken care of, you can hire a nanny.

>adults are assholes to each other all the time

Im going to make sure I only use functional programming languages from now on, so I dont have to see idiots like this.