Can someone with zero blockchain experience become an Algorand developer in 10 weeks? Interactive Media Arts student and Algorand Foundation intern Katy Lee is taking on the challenge. First, she took Algorand’s developer toolkit, AlgoKit, for a spin and wrote about her experience.
My name is Katy Lee, and I’m a junior at New York University. Despite my creative background, I’ve always had an interest in computer science and found it exciting to solve problems with code. It wasn't until I attended my first Maker Faire (a gathering of people who love to make things!) that I realized how exciting it could be to apply my knowledge of code to creative projects. I'm thrilled to be able to combine technology with art, allowing me to be creative in a whole new way.
Now, as an intern at the Algorand Foundation, I’m thrilled to have the opportunity to get hands-on learning about blockchain and Web3. Downloading AlgoKit, the package that helps developers set up their build environment, was the start of my Web3 journey. This blog series will document my experience as I build and learn as much as I can. I hope you will join me and feel inspired to share your own experiences too!
Getting started with AlgoKit
I started with a playlist from the Algorand Developers YouTube channel called Algorand Development Environment Setup. The first video explained what AlgoKit is and what other software I would need to install ahead of its setup. This led me to the next video, which detailed how to specifically set up AlgoKit on macOS (the tutorial I am following in this blog). The first steps of the video were downloading Homebrew and Docker (two prerequisites for AlgoKit). Since I have experience using Terminal and VS Code for previous projects, this was fairly easy to follow. With my prerequisites downloaded, I could download AlgoKit on Homebrew and begin using the software in the configured integrated development environment (IDE) on VS Code.
Once I had everything downloaded, I was able to work solely in VS Code and begin creating my first project. AlgoKit contains preset DApp templates and instructions to follow when you’re initializing your project in VS Code’s Terminal. This allows you to bootstrap the toolchain and compile the source code – essentially setting up a barebones Algorand smart contract. After installing a few recommended extensions on VS Code to help AlgoKit run smoothly, I was able to see all of the files automatically generated. There were a lot of files and folders! It was helpful to follow along with the macOS setup video. I paid attention to the specific files the video highlighted to help me get my bearings and then focused on the rest of the contents of the folders later on.
Next, in the Terminal, I ran ‘algokit localnet start’ to initiate a local Algorand development blockchain for my application. Then I ran ‘algokit localnet explore’ to start Dappflow (a web-based Algorand development tool to view, deploy, and invoke smart contracts). Once on Dappflow, I could create my first wallet and dispense test Algo to my account. I could then upload the files containing the ABI methods generated by my AlgoKit smart contract to ABI Studio. With my uploaded files, the browser could create a program asking for data input. This introductory program asks users to input their names. After executing, it outputted “Hello, Katy,” and I successfully ran my first-ever smart contract! Much like how a programmer’s first line of code is often “Hello, world,” I was able to have a similar experience with Algorand.
Concluding thoughts
In about 20 minutes, I had fully set up an Algorand development environment on my laptop and executed my very first smart contract application. From my experience delving into Algorand for the first time, I took away a few key things that would be helpful for someone considering joining the Web3 ecosystem with AlgoKit.
First, it’s important to be flexible throughout the learning process because technology is constantly evolving and changing. This was crucial for me to keep in mind, as I had to do a bit of extra searching for the Python file required to run my smart contract. The location of the file was different in the project I created than what was indicated in the MacOS video. It turns out that the file location has changed in an updated, newer version of AlgoKit to simplify this step. The file was taken out of its folder and placed in the main project folder.
Overall, the process of creating my first smart contract was simpler than I thought and not difficult to understand. I think breaking into Web3 and blockchain may seem daunting at first, but this learning experience helped me overcome that and realize how accessible this technology really is.
If you are interested in learning more about AlgoKit, the Algorand Developer Portal is a great resource and place to start! Next, I plan to continue my journey with another 10-minute Algorand Developer video for beginners, so I can get more practice creating and editing smart contracts.
Further reading:
Blockchain Developer Bootcamps: A Comprehensive Guide
How to Become a Blockchain Developer: A Guide to Getting Started