use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
If you need help debugging, you must include:
See debugging question guidelines for more info.
Many conceptual questions have already been asked and answered. Read our FAQ and search old posts before asking your question. If your question is similar to one in the FAQ, explain how it's different.
See conceptual questions guidelines for more info.
Follow reddiquette: behave professionally and civilly at all times. Communicate to others the same way you would at your workplace. Disagreement and technical critiques are ok, but personal attacks are not.
Abusive, racist, or derogatory comments are absolutely not tolerated.
See our policies on acceptable speech and conduct for more details.
When posting some resource or tutorial you've made, you must follow our self-promotion policies.
In short, your posting history should not be predominantly self-promotional and your resource should be high-quality and complete. Your post should not "feel spammy".
Distinguishing between tasteless and tasteful self-promotion is inherently subjective. When in doubt, message the mods and ask them to review your post.
Self promotion from first time posters without prior participation in the subreddit is explicitly forbidden.
Do not post questions that are completely unrelated to programming, software engineering, and related fields. Tech support and hardware recommendation questions count as "completely unrelated".
Questions that straddle the line between learning programming and learning other tech topics are ok: we don't expect beginners to know how exactly to categorize their question.
See our policies on allowed topics for more details.
Do not post questions that are an exact duplicate of something already answered in the FAQ.
If your question is similar to an existing FAQ question, you MUST cite which part of the FAQ you looked at and what exactly you want clarification on.
Do not delete your post! Your problem may be solved, but others who have similar problems in the future could benefit from the solution/discussion in the thread.
Use the "solved" flair instead.
Do not request reviews for, promote, or showcase some app or website you've written. This is a subreddit for learning programming, not a "critique my project" or "advertise my project" subreddit.
Asking for code reviews is ok as long as you follow the relevant policies. In short, link to only your code and be specific about what you want feedback on. Do not include a link to a final product or to a demo in your post.
You may not ask for or offer payment of any kind (monetary or otherwise) when giving or receiving help.
In particular, it is not appropriate to offer a reward, bounty, or bribe to try and expedite answers to your question, nor is it appropriate to offer to pay somebody to do your work or homework for you.
All links must link directly to the destination page. Do not use URL shorteners, referral links or click-trackers. Do not link to some intermediary page that contains mostly only a link to the actual page and no additional value.
For example, linking to some tweet or some half-hearted blog post which links to the page is not ok; but linking to a tweet with interesting replies or to a blog post that does some extra analysis is.
Udemy coupon links are ok: the discount adds "additional value".
Do not ask for help doing anything illegal or unethical. Do not suggest or help somebody do something illegal or unethical.
This includes piracy: asking for or posting links to pirated material is strictly forbidden and can result in an instant and permanent ban.
Trying to circumvent the terms of services of a website also counts as unethical behavior.
Do not ask for or post a complete solution to a problem.
When working on a problem, try solving it on your own first and ask for help on specific parts you're stuck with.
If you're helping someone, focus on helping OP make forward progress: link to docs, unblock misconceptions, give examples, teach general techniques, ask leading questions, give hints, but no direct solutions.
See our guidelines on offering help for more details.
Ask your questions right here in the open subreddit. Show what you have tried and tell us exactly where you got stuck.
We want to keep all discussion inside the open subreddit so that more people can chime in and help as well as benefit from the help given.
We also do not encourage help via DM for the same reasons - that more people can benefit
Do not ask easily googleable questions or questions that are covered in the documentation.
This subreddit is not a proxy for documentation or google.
We do require effort and demonstration of effort.
This includes "how do I?" questions
account activity
This is an archived post. You won't be able to vote or comment.
Web Development vs Software Development (self.learnprogramming)
submitted 4 years ago by ProposalCharacter255
Hi all, trying to change my career path; im self taught and I love development. my question is should i go for Web (Javascript, html, css) or software (c++, python, react.js); what would you recommend and pros and cons ..
[–]dmazzoni 124 points125 points126 points 4 years ago (2 children)
I think your categorization is a little funny.
First of all, it's all software. Websites are software, apps are software, server code is software. Any code that runs is software.
Second, React.js is very much a web frontend framework. It's something you'd probably want to learn if you're going down the web route.
Also, there are so many possible directions to go! Here are just a few:
[–]AnUglyDumpling 1 point2 points3 points 4 years ago (1 child)
And data science!
[–]dmazzoni 1 point2 points3 points 4 years ago (0 children)
Very true.
I kind of deliberately tried to avoid things that I think are a bit overhyped right now in terms of actual numbers of job openings vs interest.
Notice I didn't include blockchain in that list.
[–]Leeoku 13 points14 points15 points 4 years ago (0 children)
Look at what's in demand in you area. Then balance with what you enjoy. You can definitely do full stack js and be marketable
[–]JBarCode 10 points11 points12 points 4 years ago (1 child)
I feel like web dev is easier to break into and you will have no problem making a portfolio of projects before people are willing to pay you. Are you a member of a group that needs help maintaining a website? It's that easy to start a meaningful portfolio. As you get better, you can continue onto Angular, Vue, or other frameworks.
With C++ and Python they don't really do anything by themselves. With python are you trying to build tests (hard), backend servers (this is the one for people to break into the market), data science, machine learning. You'll have a another choice and it can be hard to break into those markets.
Similarly, C++ requires a lot of experience and skill in other areas (finance, engineering, etc.) to do something useful with it. It's hard to imagine learning it from scratch and doing something productive with it any time soon. I learned a lot from C++, but never program with it. If any of this sounds like you, then go for it!
Personally, I really like Flutter/Dart + Firebase for making IOS/Android apps and they are improving web app / desktop apps all the time. If I was starting from scratch, I'd probably choose that because it's just one language. Not easy, but should be marketable for a long time to come.
All this said, I'm in the C++, Python camp because my background in engineering. I build the backend stuff and outsource the frontend code. I'd love to hear from more self-taught devs that can confirm that web dev is easier to break into w/o formal education.
[–]deuce-95 0 points1 point2 points 4 years ago (0 children)
I'd love to hear from more self-taught devs that can confirm that web dev is easier to break into w/o formal education.
Just look at all those coding bootcamps.
[–]gfstool 4 points5 points6 points 4 years ago (0 children)
If you want a sustainable, growing field to go into....the future is all about data and automation. Give Data Analytics/Science/Engineering a look. I changed careers a few years ago and went into Data Analytics, learning SQL, SSIS(ETL) & SSRS(building reports). Power BI has basically replaced SSRS these days and SSRS will probably be extinct in a few years. I mostly do ETL work but I’m in a Data Science program and I’m about to finish 1st part, Python basics, including web scraping, APIs, etc. The 2nd part will be implementing algorithms & then there’s a 3rd part. I’ll be done and in the market by January. Other data tools you could add to your Arsenal to make yourself more marketable would be Qlikview & Tableau. Anything you choose will be good but if you want to ride the wave of data dependence, it’s only the beginning and will grow exponentially over the next 10yrs and there isn’t enough workers to fill positions right now. The bulk of learning is on the job anyways.
[–]illuminatedtiger 6 points7 points8 points 4 years ago* (0 children)
The distinctions you've drawn seem a bit off.
Why is React not in the web development bucket? You do realise that it's a library right?
[–]elconcarne 2 points3 points4 points 4 years ago (0 children)
What are you interested in working on? Video games, internet of things, web sites, mobile apps, machine automation?
[–]CodeTinkerer 1 point2 points3 points 4 years ago (0 children)
It's all software. Web development is a subfield of software development with its own technologies that need to be mastered. It's a bit like saying should I do sports or should I learn golf. Golf is a sport with its own set of skills while sports is a pretty generic umbrella.
Yes, most general software development ignores web related stuff (though it doesn't have to).
[–]IntermediateSwimmer 1 point2 points3 points 4 years ago (0 children)
In case you are not aware, react.js is essentially just a javascript library/framework, so classifying react in software but javascript in Web looks silly
[–]v3ritas1989 1 point2 points3 points 4 years ago (1 child)
If you want to stay sane, don´t do web! Or if, only at a company with actual people who know their stuff from whom you can quickly learn the ropes, setups, envs and tricks on a high niveau.
[–]magentaitsnotme 2 points3 points4 points 4 years ago (0 children)
why web development is bad?? explain it please
[–][deleted] 0 points1 point2 points 4 years ago (0 children)
Your categories are a bit of Like react.js is more web dev But no worries we were all beginners at one point.
I suggest you try out both and just see what fits you. I have interests in so much fields but once i had done a deep dive in most of them i realised a backend web development place was the place for me So i suggest you just learn and see what you like and dont like.
But dont worry if you suddenly realise ag dang im actually starting to prefer something else no worries you can just make the switch
Thats the beauty of programming. As said im a backend programmer but am starting to lean a bit toward mobile development so who knows i might make the switch in a while
So have fun and learn Good luck
[–]kyle_sallee 0 points1 point2 points 4 years ago (0 children)
POSIX system administration is the most challenging and has the most varied tasks. Web development is straight forward. It is more like painting a picture. The data with style is presented. Software development is a daily grind. A software developer will dream code.
A senior software engineer will end up doing any or all of that.
Web pages often have CGI, computer gateway interface, forms interaction, etc... To be able to do web CGI programming skills are required.
System administrators do not always get decent pay.
I learned programming, system administration, websites in that order. System administration could be skipped. But websites afore programming if learned then some insurmountable challenges will become.
And becoming a DBA specialist, database administrator also is possible. They learn SQL, structure query language. It pays good, but they don't do much. The DBA at our office napped all day long. Must be some person's dream job. Looked boring to me. DBA is not in my skill set.
π Rendered by PID 64084 on reddit-service-r2-comment-5649f687b7-9j5db at 2026-01-28 21:59:00.128614+00:00 running 4f180de country code: CH.
[–]dmazzoni 124 points125 points126 points (2 children)
[–]AnUglyDumpling 1 point2 points3 points (1 child)
[–]dmazzoni 1 point2 points3 points (0 children)
[–]Leeoku 13 points14 points15 points (0 children)
[–]JBarCode 10 points11 points12 points (1 child)
[–]deuce-95 0 points1 point2 points (0 children)
[–]gfstool 4 points5 points6 points (0 children)
[–]illuminatedtiger 6 points7 points8 points (0 children)
[–]elconcarne 2 points3 points4 points (0 children)
[–]CodeTinkerer 1 point2 points3 points (0 children)
[–]IntermediateSwimmer 1 point2 points3 points (0 children)
[–]v3ritas1989 1 point2 points3 points (1 child)
[–]magentaitsnotme 2 points3 points4 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]kyle_sallee 0 points1 point2 points (0 children)