AlgoKit — Python Toolkit for Blockchain

22 views 1:00 pm 0 Comments March 28, 2024

Python / Software Development”>Jessica Wachtel”>

AlgoKit — Python Toolkit for Blockchain – The New Stack

You’re most productive when…

A recent TNS post discussed the factors that make developers productive. You code best when:

The work is interesting to me.

0%

I get lots of uninterrupted work time.

0%

I am well-supported by a good toolset.

0%

I understand the entire code base.

0%

All of the above.

0%

I am equally productive all the time.

0%

2024-03-27 07:58:34

AlgoKit — Python Toolkit for Blockchain

Python
/

Software Development

The Algorand Foundation has launched AlgoKit 2.0 with support for Python development.


Mar 27th, 2024 7:58am by


Jessica Wachtel
Featued image for: AlgoKit — Python Toolkit for Blockchain

Feature image via Unsplash.

In a drive to further democratize the blockchain, developers can now write Python applications on Algorand. The Algorand Foundation launched AlgoKit 2.0 this week and The New Stack sat down with foundation CTO John Woods ahead of the launch.

“My expectation is that [AlgoKit 2.0] will give [Python developers] who have either never developed an application before, or are experienced with regular software engineering but have never built an app to run on a blockchain a shallow learning curve,” Woods said.

Woods credited the sheer volume and diversity of Python developers as some of the reasons why Algorand selected Python as its new top-level development language. He said he believes Python developers will help Algorand reach the goal of “achieving something meaningful and something of value from a technical point of view.”

AlgoKit 2.0

AlgoKit 2.0 is a command line tool, similar to Rust’s Cargo and Swift Package Manager in Swift. As explained in the press release, AlgoKit was conceived to help developers quickly and easily build and launch secure, automated, production-ready decentralized applications. Version 1.0, launched in March 2023, introduced a simple five-minute onboarding process, giving you powerful tools to build, test and deploy. Now just one year later, Version 2.0 has expanded into a full kit for developers, featuring a library of smart contract templates; all necessary application infrastructure running locally; a simplified frontend design experience; and native integration of the first common programming language, Python.

Before AlgoKit, developers needed to learn Teal, a low-level assembly-like language before building any apps on Algorand. Now with AlgoKit, developers can write complete applications on Algorand in vanilla Python. A short on-ramp to Algorand was important to Woods and AlgoKit’s engineers, and so when developing the tool, they focused on tools that were already making the development process easier. During the process, where the team did a thorough review of tools like VS Code and Xcode, Woods found that “what all of these platforms rather have in common is that they give [developers] the tools to build, test and deploy their application with ease.” Which, he identified, was in direct contrast to development in Algorand at the time.

Development Challenges

From the start Woods and the AlgoKit team knew they were going to build an appliance-like product with a framework for building applications that “just worked”. Similarly to a microwave or a dishwasher, you just turn it on and it has everything it needs to fully operate. The appliance-like framework also needed to be deliverable, complete with all its tools in a one-line install. But this was not the toughest challenge. The toughest technical challenge for this team was building the compiler that made the top-level Python code readable by Algorand.

Python is not natively fit for blockchain applications. Blockchain applications, such as smart contracts, have limitations that Python applications in traditional operating systems don’t have. This added a layer of complexity for the AlgoKit team because they wanted Python applications that add value to the network and didn’t cause harm. For this, they turned to one of the most trusted working models. AlgoKit’s compiler is modeled after the LLVM open source code.

AlgoKit’s compiler pipeline works in a few steps. On the top is the Python code, the compiler compiles and optimizes the Python code into an intermediate language. It pulls out code that can’t be reached and tasks of the like. The next step the compiler makes is to compile that code down into a slightly lower-level intermediate language and further optimize. The compiler’s last step turns that code into the byte code that will run on Algorand.

Next Steps

AlgoKit will continue to see additional upgrades throughout 2023, including the integration of additional common programming languages. Developers can start their journey with AlgoKit via developer.algorand.org/algokit. The Algorand team will also be hosting a series of beginner and intermediate Developer Bootcamps this Spring, in both English and Spanish, for those interested in kick-starting their blockchain coding journey. Visit developer.algorand.org/bootcamps to learn more and sign up.

YOUTUBE.COM/THENEWSTACK

Tech moves fast, don’t miss an episode. Subscribe to our YouTube
channel to stream all our podcasts, interviews, demos, and more.

Group
Created with Sketch.