Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Meta

Welcome to Software Development on Codidact!

Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.

Post History

71%
+3 −0
Meta Should beginner-oriented Q&A here include basic use of a terminal (command line) for developers?

Yes, tools used by developers are on topic here From the top of the front page (emphasis mine): General Q&A about programming, scripting, software design & architecture, process, tools,...

posted 6mo ago by trichoplax‭  ·  edited 6mo ago by trichoplax‭

Answer
#2: Post edited by user avatar trichoplax‭ · 2024-06-24T20:56:37Z (6 months ago)
Replace the ambiguous word "fashion"
  • ## Yes, tools used by developers are on topic here
  • From the top of the front page (emphasis mine):
  • > General Q&A about programming, scripting, software design & architecture, process, **tools**, testing, and more.
  • ## Responses to the finer details of the question
  • ### Understanding computers is not necessary for starting to learn programming
  • Different programming languages require understanding of different things. A C programmer may have a certain mental model of memory layout, which a Python programmer can do without due to the abstractions provided by the Python language. As they learn more, the Python programmer may find that they need to think more about how the machine works, in order to achieve things they could not achieve as a beginner. As the C programmer learns more, they may find that their mental model of memory layout turns out to be a sometimes misleading approximation, which needs to be modified for more advanced work.
  • This community is for helping people who are developing software, at any level and in any programming language.
  • ### Confusion can happen even for someone familiar with the terminal
  • The question linked as an example, asking why `pip install` doesn't work in the REPL doesn't seem that surprising to me. Even for someone familiar with the terminal, it isn't immediately obvious to me why PIP couldn't have been written in Python as a function. The fact that PIP happens to be a terminal command seems more like a fashion choice than an inevitable conclusion.
  • The command doesn't look like a Python function, due to the lack of parentheses, but overlooking that could result from being a Python beginner, rather than from being a terminal beginner. *(Also, the question is from only 3 years after the release of Python 3, when most Python programmers were still using Python 2, which used `print "hello"` rather than `print("hello")`, making it even more feasible to mistake a terminal command for a Python command.)*
  • Also bear in mind that if Python is not someone's first programming language, installing using the terminal may be surprising. For example, someone coming to Python from R may expect all packages to be installed using functions.
  • I wouldn't want to assume that a question is beginner level, and I'd want beginner level questions to be welcomed in any case.
  • ### Askers don't know what their question is about
  • The example mistaking a terminal command for a Python command demonstrates that the asker did not realise they were asking a terminal question. I wouldn't want to exclude a question because the answer happens to be "use the terminal" any more than I would want to exclude a question because the answer happens to be "there's a typo". Either way, the question is still about programming.
  • Even when the question is explicitly about the terminal, it's on topic here if it relates to software development.
  • ### There is not a line between different communities
  • Something can be on topic in more than one community. I could ask a question about a recipe on either Cooking or Writing, depending on whether I want culinary feedback or grammatical feedback. Similarly, someone trying to use existing Python software may ask on Power Users for help in getting it running, using the terminal, while someone trying to modify that same Python software may ask here on Software Development for help in using the terminal during testing.
  • Generally, rather than ask "Which community does this question belong in?" I would prefer to ask "Which community does this asker want answers from?".
  • ## Yes, tools used by developers are on topic here
  • From the top of the front page (emphasis mine):
  • > General Q&A about programming, scripting, software design & architecture, process, **tools**, testing, and more.
  • ## Responses to the finer details of the question
  • ### Understanding computers is not necessary for starting to learn programming
  • Different programming languages require understanding of different things. A C programmer may have a certain mental model of memory layout, which a Python programmer can do without due to the abstractions provided by the Python language. As they learn more, the Python programmer may find that they need to think more about how the machine works, in order to achieve things they could not achieve as a beginner. As the C programmer learns more, they may find that their mental model of memory layout turns out to be a sometimes misleading approximation, which needs to be modified for more advanced work.
  • This community is for helping people who are developing software, at any level and in any programming language.
  • ### Confusion can happen even for someone familiar with the terminal
  • The question linked as an example, asking why `pip install` doesn't work in the REPL doesn't seem that surprising to me. Even for someone familiar with the terminal, it isn't immediately obvious to me why PIP couldn't have been written in Python as a function. The fact that PIP happens to be a terminal command seems more like an arbitrary choice than an inevitable conclusion.
  • The command doesn't look like a Python function, due to the lack of parentheses, but overlooking that could result from being a Python beginner, rather than from being a terminal beginner. *(Also, the question is from only 3 years after the release of Python 3, when most Python programmers were still using Python 2, which used `print "hello"` rather than `print("hello")`, making it even more feasible to mistake a terminal command for a Python command.)*
  • Also bear in mind that if Python is not someone's first programming language, installing using the terminal may be surprising. For example, someone coming to Python from R may expect all packages to be installed using functions.
  • I wouldn't want to assume that a question is beginner level, and I'd want beginner level questions to be welcomed in any case.
  • ### Askers don't know what their question is about
  • The example mistaking a terminal command for a Python command demonstrates that the asker did not realise they were asking a terminal question. I wouldn't want to exclude a question because the answer happens to be "use the terminal" any more than I would want to exclude a question because the answer happens to be "there's a typo". Either way, the question is still about programming.
  • Even when the question is explicitly about the terminal, it's on topic here if it relates to software development.
  • ### There is not a line between different communities
  • Something can be on topic in more than one community. I could ask a question about a recipe on either Cooking or Writing, depending on whether I want culinary feedback or grammatical feedback. Similarly, someone trying to use existing Python software may ask on Power Users for help in getting it running, using the terminal, while someone trying to modify that same Python software may ask here on Software Development for help in using the terminal during testing.
  • Generally, rather than ask "Which community does this question belong in?" I would prefer to ask "Which community does this asker want answers from?".
#1: Initial revision by user avatar trichoplax‭ · 2024-06-24T20:51:35Z (6 months ago)
## Yes, tools used by developers are on topic here
From the top of the front page (emphasis mine):

> General Q&A about programming, scripting, software design & architecture, process, **tools**, testing, and more.

## Responses to the finer details of the question

### Understanding computers is not necessary for starting to learn programming
Different programming languages require understanding of different things. A C programmer may have a certain mental model of memory layout, which a Python programmer can do without due to the abstractions provided by the Python language. As they learn more, the Python programmer may find that they need to think more about how the machine works, in order to achieve things they could not achieve as a beginner. As the C programmer learns more, they may find that their mental model of memory layout turns out to be a sometimes misleading approximation, which needs to be modified for more advanced work.

This community is for helping people who are developing software, at any level and in any programming language.

### Confusion can happen even for someone familiar with the terminal
The question linked as an example, asking why `pip install` doesn't work in the REPL doesn't seem that surprising to me. Even for someone familiar with the terminal, it isn't immediately obvious to me why PIP couldn't have been written in Python as a function. The fact that PIP happens to be a terminal command seems more like a fashion choice than an inevitable conclusion.

The command doesn't look like a Python function, due to the lack of parentheses, but overlooking that could result from being a Python beginner, rather than from being a terminal beginner. *(Also, the question is from only 3 years after the release of Python 3, when most Python programmers were still using Python 2, which used `print "hello"` rather than `print("hello")`, making it even more feasible to mistake a terminal command for a Python command.)*

Also bear in mind that if Python is not someone's first programming language, installing using the terminal may be surprising. For example, someone coming to Python from R may expect all packages to be installed using functions.

I wouldn't want to assume that a question is beginner level, and I'd want beginner level questions to be welcomed in any case.

### Askers don't know what their question is about
The example mistaking a terminal command for a Python command demonstrates that the asker did not realise they were asking a terminal question. I wouldn't want to exclude a question because the answer happens to be "use the terminal" any more than I would want to exclude a question because the answer happens to be "there's a typo". Either way, the question is still about programming.

Even when the question is explicitly about the terminal, it's on topic here if it relates to software development.

### There is not a line between different communities
Something can be on topic in more than one community. I could ask a question about a recipe on either Cooking or Writing, depending on whether I want culinary feedback or grammatical feedback. Similarly, someone trying to use existing Python software may ask on Power Users for help in getting it running, using the terminal, while someone trying to modify that same Python software may ask here on Software Development for help in using the terminal during testing.

Generally, rather than ask "Which community does this question belong in?" I would prefer to ask "Which community does this asker want answers from?".