Getting Started with Solidity: Displaying "Hello, World!
Published: 2023-09-06 19:04:46

## Introduction

Solidity is a popular programming language for writing smart contracts on the Ethereum blockchain. In this blog, we will walk you through the process of creating a simple "Hello, World!" smart contract using Solidity and how to run it in an online development environment called Remix (remix.ethereum.org). We'll explain each step, line by line, to help you understand the code.

## Prerequisites

Before we begin, ensure you have the following:

|Tools/Services                                |
|----------------------------------------------|
|A web browser                                 |
|Access to the internet                        |
|A basic understanding of programming concepts |


## Creating a **"Hello, World!"** Smart Contract


**Step 1: Open Remix**

Open your web browser and navigate to [Remix](https://remix.ethereum.org/).

**Step 2: Create a New File**

Click on the "+" button in the left sidebar to create a new file. Name it "HelloWorld.sol".

**Step 3: Write the Smart Contract Code**

In the newly created "HelloWorld.sol" file, write the following Solidity code:

```
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract HelloWorld {
    string public greeting = "Hello, World!";

    function getGreeting() public view returns (string memory) {
        return greeting;
    }
}

```

Let's break down this code line by line:

- **// SPDX-License-Identifier: MIT:** This is a comment specifying the license under which the code is released. In this case, it's the MIT License.

- **pragma solidity ^0.8.0;:** This line specifies the version of the Solidity compiler to be used. In this example, we're using Solidity version 0.8.0.

- **contract HelloWorld {:** This line defines the start of a new contract named "HelloWorld."

- **string public greeting = "Hello, World!";:** Here, we declare a public string variable named "greeting" and initialise it with the text "Hello, World!".

- **function getGreeting() public view returns (string memory) {:** This line defines a function named "getGreeting." It's marked as "public" so that it can be called from outside the contract. The "view" keyword indicates that this function only reads data and doesn't modify the blockchain state. The function returns a string.

- **return greeting;:** Inside the function, we return the value of the "greeting" variable.

**Step 4: Compile the Contract**


Click on the "Solidity" tab in Remix, then click the "Compile HelloWorld.sol" button to compile your contract. You should see a green checkmark indicating successful compilation.

**Step 5: Deploy the Contract**


- Click on the "Deploy & Run Transactions" tab in Remix.

- Select "HelloWorld" from the dropdown list under "Deployed Contracts."

- Click the "Deploy" button to deploy your contract to a local Ethereum virtual machine (VM).

**Step 6: Interact with the Contract**


- Once deployed, you can interact with the contract. In the "HelloWorld" section, you will see your deployed contract with the "getGreeting" function.

- Click the "getGreeting" button to view the "Hello, World!" message.

**Sample Output:**


After following these steps, you should see the output: "Hello, World!" displayed in Remix.

In this blog, we've introduced you to Solidity, created a simple "Hello, World!" smart contract, and explained each line of the code. You've also learned how to compile and deploy the contract using Remix. This is just the beginning of your journey into blockchain development with Solidity, and you can now build more complex smart contracts as you continue to explore this exciting field. 

## References

Cover: https://www.quora.com/How-Solidity-is-used-in-Ethereum

## Connects

Check out my other blogs: 
[Travel/Geo Blogs](shishsingh.wordpress.com)
Subscribe to my channel: 
[Youtube Channel](youtube.com/@destinationhideout)
Instagram:
[Destination Hideout](https://www.instagram.com/destinationhideout/)