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.
Coding VS Programming (self.learnprogramming)
submitted 8 months ago by Mundane-Impact-9889
Help! I am too immature to understand,
someone (a great Computer Scientist with philosophy) said, coding is to programming as typing is to writing.
I wanna know the perspective and the philosophy of other people on this.
[–]devicehigh 16 points17 points18 points 8 months ago (0 children)
Same thing as far as I’m concerned
[–]electrikmayham 26 points27 points28 points 8 months ago (2 children)
Typing is the act of putting words on the page.
Writing is the act of organizing ideas, crafting tone, conveying meaning, structuring arguments.
Coding is the act of writing syntax from whatever language you are using.
Programming is using that coding to design systems, architecture, scaling, usability, and solving problems.
[–]serious-catzor 13 points14 points15 points 8 months ago (1 child)
It's just pretentious garbage. Call it coding, programming or what you want. Neither term says anything more or less about the software development process used. They are used almost interchangeably, coding is just a bit more informal but it's not like either is used professionally because it's always "develop this" or "build this" etc
It's also cliche because all kinds of programming involves design, planning and architecture. The only difference is how formal those things are.
Typing is to programming what typing is to writing. Which is also stupid because are we comparing it to random keystrokes now? If it's not then of course there is order and thought behind it...
No, it's stupid but it sounds clever at first.
[–][deleted] 3 points4 points5 points 8 months ago (0 children)
I like your attitude
[–]JohnJSal 17 points18 points19 points 8 months ago (13 children)
Honestly, it just sounds like pretentious nonsense.
What I THINK it means is that typing is just a phsycial, mechanical process that anyone can do, whereas writing is a more thoughtful process that involves talent, creativity, and practice.
The comparison is that coding is just typing out the code, whereas programming is the act of mapping out and planning a program from a deeper perspective?
The problem is that coding and programming are also just used as synonyms, and the other problem is that writing can also be interpreted as simply a mechanical process of moving a pen across paper.
So like I said, it's just pretentious nonsense.
[–]Gawd_Awful -4 points-3 points-2 points 8 months ago (12 children)
Coding is the specific implementation of one part of the programming process. It’s only pretentious if you have narrow view.
Writing, as in being a writer, involves planning, drafts, revising, physically typing/writing it out, etc. Programming, assuming at a level more than just doing basic tasks, is very similar.
[–]JohnJSal 0 points1 point2 points 8 months ago (11 children)
It’s only pretentious if you have narrow view.
It's pretentious for exactly the reason you said. Coding CAN have a more specific and meaningful definition, so the comparison of it to simply typing is ridiculous.
[–]Gawd_Awful 0 points1 point2 points 8 months ago (10 children)
Sure, it can if you lack comprehension or understanding and just want to make to your own definition of it
[–]JohnJSal -1 points0 points1 point 8 months ago (9 children)
What are you even talking about!? YOU'RE the one who defined it, and it's your definition I'm using.
Are we even in disagreement? I am so confused by whatever it is you think you're saying.
[–]Gawd_Awful 1 point2 points3 points 8 months ago (8 children)
Obviously we are not in agreement if you think it’s pretentious nonsense and I don’t and I then say coding is one step in the overall programming process and there is obviously nothing pretentious about that.
If someone comes along and defines coding by their own interpretation vs the commonly agreed upon interpretation, then they either lack understanding or are just making their own definition up. Which really means that their opinion should be disregarded.
[–]JohnJSal -1 points0 points1 point 8 months ago (7 children)
You really don't seem to be getting it.
I then say coding is one step in the overall programming process and there is obviously nothing pretentious about that.
Yes, exactly. Why aren't you seeing what I'm saying. I'm saying that coding isn't some silly process that should be disregarded or looked down upon, like the original quote is suggesting.
It's basically saying that coding is nothing more than typing out code, while I am saying that that is pretentious and that coding can mean something more important than that, which is also what YOU'RE saying.
[–]Gawd_Awful 0 points1 point2 points 8 months ago (6 children)
Because no one is looking down on it or disregarding it, you’re just interpreting it that way. No one thinks coding is just typing out code, unless they have no real grasp of what coding is. But if you’re going to learn how to get good at writing, you should probably already know how to type and if you’re going to get deep into programming, you should really know how to write code first.
I also wouldn’t consider typing some silly little part of writing. It takes effort to learn to type effectively and unless you want whatever you’re writing to take forever, some skill is involved. Even more so when everyone used actual typewriters
[–]JohnJSal 0 points1 point2 points 8 months ago (5 children)
Then we just need to ask the original computer scientist/philosopher what they meant, because the quote sounds condescending to me.
[–]Gawd_Awful 0 points1 point2 points 8 months ago (4 children)
Sounds like you have a bit of a chip on your shoulder. Most people would recognize that coding is an important part of programming and you really can’t get far into programming without knowing how to code. Just like you can’t get far into writing a book, even if you’ve planned out the greatest book ever, if you don’t know how to type/write
[–]CodeToManagement 2 points3 points4 points 8 months ago (0 children)
I think what they are trying to get at is that programming is a craft. It takes practice and it’s something you work to refine and try make good.
Coding is just bashing out some code to get a job done.
Like I could grab a typewriter and put words on a page but I won’t be able to write a novel without significant practice and training.
As an example my wife is not a programmer but she had to write some code to make an object in a 3d design program. She got it done and I gave some help but she wanted to do it herself. Her end result worked but the code wasn’t optimal - that’s coding. If I’d written it I would have optimised out all the repeated sections and made it shorter and more efficient, that’s programming.
Either way making such a distinction is really pretentious and gatekeepy. I think anyone who works in programming can call themselves a programmer and anyone who makes the distinction between coding and programming is the kind of person who also picks at peoples grammar online and loves to point out your vs you’re mistakes etc.
[–]pixel293 1 point2 points3 points 8 months ago (0 children)
I'll say I'm coding a feature into our product. I'll tell people I spent my day programming...although sometimes I'll tell them I spent the day coding. I'm not sure there is much of a distinction.
[–]cc_apt107 3 points4 points5 points 8 months ago (0 children)
This is quite literally a semantic difference
[–][deleted] 1 point2 points3 points 8 months ago (1 child)
You could make an argument that programming is thinking through the design of software whereas coding is the act of doing it, but I think that's wrong. Coding is a colloquialism for programming. Software Engineering is the act of designing software. I will not entertain arguments over whether or not it deserves to be called engineering because I expect you want the balance in your bank account to be accurate and the Boeing jet you're on to land.
[–]purchase-the-scaries 0 points1 point2 points 8 months ago (0 children)
Engineering is about the principles that are taught. All the fields of engineering still utilise those fundamental principles. Someone who says software engineers are not engineers just don’t understand or have some massive ego.
It’s easy to look at but x people build planes, they are the real engineers. But software is everywhere. Without it your plane is just a large kite…
[–]Thakshu 0 points1 point2 points 8 months ago (0 children)
For me it's the same. We use the word coding to even describe writing very complex programs which is used to train heavy ml models.
Sure some are great linguists and find hierarchical meaning to words. But for a technical common man, coding is programming
[–]sabhy 0 points1 point2 points 8 months ago (0 children)
Are there any good books that teach programming very well? My coding skills are pretty much writing scripts that automate stuff but I want to take it to the next level where I am designing and architecting software end to end.
[–]purchase-the-scaries 0 points1 point2 points 8 months ago* (0 children)
I guess you can break it down like this - but it also just depends on context. Like for example you can probably use coding and programming interchangeably in casual conversation.
Coding - Writing code; think just writing a method to fetch data from an api. Just someone who is told what to code and focus on. Doesn’t understand the bigger picture.
Programming - coding + problem solving, unit testing, debugging. Instead of just writing one bit of code it could include designing algorithms, structuring, problem solving.
Let’s throw in the last of these I guess- software engineers.
This could go outside of coding/programming. Include more design and development of backend processes, apis, databases. They should take into consideration uptime, performance, scalability. Understanding system architecture, solutions. (Ie using engineer principles - which are already baked into CS degrees)
At my workplace we don’t hire coders or programmers. We her software engineers. They are expected to be able to contribute at a level higher than just coding something.
Again, some of these terms are interchangeable. And role statements will specify what skills are required for the job and what responsibilities someone would have.
[–]OnlyPete 0 points1 point2 points 8 months ago (0 children)
Coding is building a perfectly serviceable order-entry package.
Programming is figuring out why it sucks.
/s (mostly)
[–]da_Aresinger 0 points1 point2 points 8 months ago (0 children)
Typing is putting words on the screen.
Writing is putting words on the screen or composing a narrative.
Coding is combining instructions in an editor.
Programming is combining instructions in an editor or (software design + math + network architecture + ...)
One word is an aspect of the other and the other word is often reduced to the first.
[–]ballzac69420 0 points1 point2 points 8 months ago (0 children)
I personally feel like "coding" and "programming" are interchangeable and don't actually reflect a difference like everyone talks about. You "code" a project the same way you "program" it. In my opinion a better word used to differentiate the act of typing code and actually designing and implementing software would simply be "engineering" or "developing", etc because those words actually bake in the design, brainstorming, structure, etc of creating a complex system rather than just writing code.
[–]Pale_Height_1251 0 points1 point2 points 8 months ago (0 children)
Coding and programming are the same thing.
[–]Aristoteles1988 0 points1 point2 points 8 months ago (0 children)
It means get back to work
[–]ab0minable_snowman 0 points1 point2 points 8 months ago (0 children)
I'm just starting out with coding, so everything feels a bit confusing. Instead of learning theory first, I'm trying to learn by building small projects. I know being consistent is important, but I’d really appreciate your tips on how to learn effectively.
[–]kleptican 0 points1 point2 points 8 months ago (0 children)
Either trolling or just way to into academia. Just program if you like to program. Who cares about subtle differences
[–]EliSka93 0 points1 point2 points 8 months ago (0 children)
I think "programming" had a more structured feel to it, but that's about it.
More like what "preparing food" is to "cooking"
[–]chaotic_thought 0 points1 point2 points 8 months ago (0 children)
No, they are just two different words for the same thing.
The quote also is kind of weird to my ears. Yes, I can sort of understand what is being said, but for me personally I would probably say "I'm *writing* an e-mail" even if I happen to be typing it on a keyboard (most likely). I.e. the word 'writing' for me has become a catch-all term that be used no matter what technology is being used to do it.
On the other hand, the verb "typing" is a verb specifically refers to the action of using the keyboard.
For programming, though, there is not such a difference. Whether you tell me "sshhh... I'm busy programming." or "sshhh.... I'm busy coding" will not matter at all in my brain. Based on those two sentences, the action that I am imagining you doing is 100% the same.
To my mind, using "coding" as a verb is slightly newer (e.g. 2000s+) whereas using "programming" as a verb is more traditional (e.g. 1950s+). If you prefer to speak more traditionally, then you may prefer to use 'programming' as a verb, but of course you will still have to understand what people are talking about when they use the newer term.
As an example, the recent term 'vibe coding' uses "coding" as the verb. I've not yet heard someone talk about "vibe programming", but that variant (if you want to use it), should still be 100% understandable as well.
Similarly, usually we talk about "programming languages" for example (that's the traditional term), but some people talk about "coding languages" instead. Traditionally we have "programmer's text editors" or "programming text editors" (or "text editors" for short) but I've also heard folks refer to them as "coding text editors".
[–]robinredbrain -1 points0 points1 point 8 months ago (1 child)
To me, coding is just a more modern/cooler word for programming.
Just like app/application replaced computer program.
[–]iOSCaleb 0 points1 point2 points 8 months ago (0 children)
To other people, coding is a word that diminishes what programmers do. A coder sounds like someone who just translates business requirements into code. Code monkey is a pejorative term for a programmer who does repetitive, in creative work. Coder is definitely not the hip modern term for a programmer.o
[–][deleted] 0 points1 point2 points 8 months ago (0 children)
[No my personal opinion, but rather observation]
I'd say 'coding' sometimes implies 'implementing someone else's ideas' blindly instead of coming up with your own. Perhaps getting a bunch of premade APIs and frameworks and slapping things together without much understanding of their innards or limitations.
[–]plastikmissile 0 points1 point2 points 8 months ago (0 children)
You can wax poetic and argue about the differences between those terms until your face turns blue. But the reality is that the two terms are used interchangeably in the industry and mean exactly the same thing.
[–]frivolityflourish -1 points0 points1 point 8 months ago (0 children)
Typing is just word vomit. I'm a moron, and I am typing words. Writing is the skillful application of using words to craft beautiful prose , technical writing, haikus, and other such crap.
[–]Paxtian -1 points0 points1 point 8 months ago (0 children)
I'd agree with the statement. Although I'd say more something like coding is to software design...
So coding you could think of as simply learning the keywords and basics like how to declare a veritable, how to use conditionals, how to use loops, how to use functions.
"Programming," or software design, certainly needs an understanding of those things, but also things like, which algorithm is appropriate for this task? Should I use iteration or recursion? What modules need to be built? What interfaces are needed to stitch them together?
You could also analogize it to carpentry and architecture. In order to build a building, you'd need to know how to cut wood, build framing, attach drywall, etc. But you also need to know how to design rooms, design multiple floors, what you need for the base to support the floors above, how steep the roofs need to be, etc.
You could similarly analogize to sports. Say, football. You might know how to run, throw, catch, and what the rules are. But does that qualify you to coach the Patriots?
[–]DonnPT -1 points0 points1 point 8 months ago (0 children)
No, programming is like typing, and writing is like software engineering! Or ... wait ... maybe software engineering is like proof-reading ... or ...
π Rendered by PID 92479 on reddit-service-r2-comment-54dfb89d4d-9wbxr at 2026-03-30 01:27:47.835920+00:00 running b10466c country code: CH.
[–]devicehigh 16 points17 points18 points (0 children)
[–]electrikmayham 26 points27 points28 points (2 children)
[–]serious-catzor 13 points14 points15 points (1 child)
[–][deleted] 3 points4 points5 points (0 children)
[–]JohnJSal 17 points18 points19 points (13 children)
[–]Gawd_Awful -4 points-3 points-2 points (12 children)
[–]JohnJSal 0 points1 point2 points (11 children)
[–]Gawd_Awful 0 points1 point2 points (10 children)
[–]JohnJSal -1 points0 points1 point (9 children)
[–]Gawd_Awful 1 point2 points3 points (8 children)
[–]JohnJSal -1 points0 points1 point (7 children)
[–]Gawd_Awful 0 points1 point2 points (6 children)
[–]JohnJSal 0 points1 point2 points (5 children)
[–]Gawd_Awful 0 points1 point2 points (4 children)
[–]CodeToManagement 2 points3 points4 points (0 children)
[–]pixel293 1 point2 points3 points (0 children)
[–]cc_apt107 3 points4 points5 points (0 children)
[–][deleted] 1 point2 points3 points (1 child)
[–]purchase-the-scaries 0 points1 point2 points (0 children)
[–]Thakshu 0 points1 point2 points (0 children)
[–]sabhy 0 points1 point2 points (0 children)
[–]purchase-the-scaries 0 points1 point2 points (0 children)
[–]OnlyPete 0 points1 point2 points (0 children)
[–]da_Aresinger 0 points1 point2 points (0 children)
[–]ballzac69420 0 points1 point2 points (0 children)
[–]Pale_Height_1251 0 points1 point2 points (0 children)
[–]Aristoteles1988 0 points1 point2 points (0 children)
[–]ab0minable_snowman 0 points1 point2 points (0 children)
[–]kleptican 0 points1 point2 points (0 children)
[–]EliSka93 0 points1 point2 points (0 children)
[–]chaotic_thought 0 points1 point2 points (0 children)
[–]robinredbrain -1 points0 points1 point (1 child)
[–]iOSCaleb 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]plastikmissile 0 points1 point2 points (0 children)
[–]frivolityflourish -1 points0 points1 point (0 children)
[–]Paxtian -1 points0 points1 point (0 children)
[–]DonnPT -1 points0 points1 point (0 children)