first create the folder for the package usual it is called `packagename_ws`where `_ws` stands for then you enter the directory and create another directory called `src` then run the `colcon build` command.
```bash
colcon build
```
next go into the `install` folder and add the `setup.bash` source command to your `~/.bashrc`
Now add it to the setup.py file in the `entry_points` section.
it is setup with the name of the ROS2 command first then the equals followed by the package name, python file name that is in the same folder as the `__init__.py`, and finally the function name to call, usual `main`.
```python
entry_points={
'console_scripts': [
"test_node = husky_test.my_first_node:main"
],
},
```
The final step is building the script and testing it.
#### Building
go the the `{package_name}_ws` folder with the `src` and `install` folder in it. Then run the `colcon build` command.
```bash
colcon build
```
next run the `source ~/.bashrc` command to reload the workspace source file and the other source files.
#### Simplifying Build (specific to python)
since we are using python and it is interpreted we can simplify the build process when working buy using the symlink command to avoid building.
```bash
colcon build --symlink-install
```
then just like before run the `source ~/.bashrc` command to refresh everything and after that you will never have to worry about building or refreshing again.
## Creating a C++ Packages
Go to the workspace folder that was created in the last step and open the `src` folder. In this folder run this command.
Next open the program menu on VSCode using `CTRL + SHIFT + P`. Select the `C/C++: Edit Configurations (JSON)`. Make Sure the `c_cpp_properties.json` file has the `"/opt/ros/humble/include/**"` include