1/5
_Follow along the course with this video._ Hello, coders! In this lesson we'll be covering the importance of well crafted questions and how to properly format our inquires to give them the best chance of receiving a response. ## Creating Discussions in GitHub As practice, I want you to navigate to the [**GitHub discussions page**](https://github.com/Cyfrin/foundry-full-course-f23/discussions) for this course and try creating a discussion yourself! > Try to categorize your discussion appropriately. `General` for conversations and discussions, `QA` for questions. ::image{src='/solidity/ai-prompting/question1.png' style='width: 100%; height: auto;'} ## The Art of Asking Questions We often come across questions that are asked in a hasty and incoherent manner. Here's an example of a poorly formatted question: ``` "Hey why my code not be good?" quire(msg.value == entranceFee * newPlayers.length, "PuppyRaffle: Must send enough to enter raffle"); for (uint256 i = 0; i < newPlayers.length; i++) { ``` We need to be clear in describing our problem, the steps we took that got us to the problem, and explicit in any errors we're receiving. A better example would be: "I am receiving this error when compiling.": ```bash TypeError: Exactly one argument expected for explicit type conversion. --> PriceConvertor.sol:21:43: | 21| AggregatorV3Interface priceFeed = AggregatorV3Interface() | ``` Here's my code: ```js AggregatorV3Interface priceFeed = AggregatorV3Interface() ``` Could someone please help me figure out what the issue is? đ Quite simply, we can take the following necessary steps while crafting our questions: 1. **Describe the issue clearly and concisely** - Be clear in the problem you're facing and what steps got you there 2. **Highlight the specific error you're experiencing** - including exact error messages can provide those helping you with valuable insight into where things went wrong 3. **Use markdown for code formatting** - this is critical, formatting your code allows your question to be more readable and approachable for those trying to understand the problem 4. **Share the relevant part of the code causing the issue** - only include what's relevant to your issue. Don't paste a whole contract into your question unless appropriate to do so. You can provide _too much_ information. With a well formatted question, you're going to see a much higher rate of success in receiving help from others as well as AI. > The importance of markdown formatting cannot be stressed enough. If you're unfamiliar with markdown, don't hesitate to ask an AI like ChatGPT for advice, or to format things for you. ### Wrapping Up Always remember, there are no _`bad questions`_ but there are _`poorly formatted questions`_. Make your questions count and format them appropriately. A pillar of becoming a software engineer is being involved in these communities. Jump in and participate, ask questions and meet people. Contribution is the cornerstone of open source communities. Do your best to answer as many questions as you ask, this will reinforce your knowledge. > You don't have to be an expert to help those on the journey behind you.
A guide on how to ask effective questions in code discussions, particularly on GitHub. It covers the importance of clear, concise, and well-formatted questions, and includes tips on using markdown for code formatting and highlighting specific errors to get better responses.
Previous lesson
Previous
Next lesson
Next
Give us feedback
Course Overview
About the course
Blockchain developer fundamentals
Introduction to blockchain gas
Transaction signatures
Smart contract development
Solidity gas optimization techniques
Smart Contract Auditor
$100,000 - $200,000 (avg. salary)
Smart Contract Engineer
$100,000 - $150,000 (avg. salary)
Web3 Developer Relations
$85,000 - $125,000 (avg. salary)
Web3 developer
$60,000 - $150,000 (avg. salary)
Web3 engineer, educator, and Cyfrin co-founder. Patrick's smart contract development and security courses have helped hundreds of thousands of engineers kickstarting their careers into web3.
Last updated on November 25, 2024
Solidity Developer
Solidity Smart Contract DevelopmentDuration: 1h 46min
Duration: 38min
Duration: 2h
Duration: 23min
Course Overview
About the course
Blockchain developer fundamentals
Introduction to blockchain gas
Transaction signatures
Smart contract development
Solidity gas optimization techniques
Smart Contract Auditor
$100,000 - $200,000 (avg. salary)
Smart Contract Engineer
$100,000 - $150,000 (avg. salary)
Web3 Developer Relations
$85,000 - $125,000 (avg. salary)
Web3 developer
$60,000 - $150,000 (avg. salary)
Web3 engineer, educator, and Cyfrin co-founder. Patrick's smart contract development and security courses have helped hundreds of thousands of engineers kickstarting their careers into web3.
Last updated on November 25, 2024
Testimonials
Read what our students have to say about this course.
Chainlink
Chainlink
Gustavo Gonzalez
Solutions Engineer at OpenZeppelin
Francesco Andreoli
Lead Devrel at Metamask
Albert Hu
DeForm Founding Engineer
Radek
Senior Developer Advocate at Ceramic
Boidushya
WalletConnect
Idris
Developer Relations Engineer at Axelar