Holochain Forum

Where would a python developer would start?

I am python developer, have machine learning background and have done some api with flask and django apps.

I don’t have a good grasp on blockchain.

  1. Can I start with holochain without understanding blockchain?
  2. Is it possible to write apps in python for holochain? (I some apps being written in lisp)
  3. Is it possible to run private chain in holochain?

Hi @vanangamudi it’s not necessary to understand blockchain to start learning Holochain.

  1. It would be important to learn the basics about Holochain. You can start here: How is Holochain Different than Blockchain? and explore the FAQs section. We are in the process of finalizing the Core Concepts and related tutorials.

  2. You can write the front-end in any front-end language. For the back-end, for now you’ll need to use the Rust HDK.
    What language is Holochain written? What languages can I use to make Holochain apps?
    When you are ready, check out the Quick Start.

  3. Yes it’s possible to create a private chain with Holochain.
    What is Holochain?
    Why are Holochain Applications Different and What Does That Mean for Me?

1 Like

Thanks. I had the same question.

1 Like

As a beginner, I have found python easy to learn, so even I have been wondering if python could be used for the same.

Here are some of the resources and tools I found:

What my understanding reading above resources is that python libraries can be used in Rust, though eventually developer would have to pick up Rust (known for its unreadable code).

Please share your thoughts so one has clear understanding on how someone comfortable in python can get started with hAPPs.

2 Likes

I’m not sure you could use a rust - python combo at this stage as holochain is actually targeting wasm and I think this could be a bit tricky to work with pythons interpreter / GC.

You really don’t need to know that much Rust to start making holochain apps. Most of you development will go into your front end and the type of Rust that developers need to know to use the HDK is pretty basic.

Also you will find Rust actually has a lot in common with python it terms of language design.
The big differences are you have to use types and there’s a borrow checker instead of a garbage collector.
This isn’t super accurate but you could think of the borrow checker as a garbage collector that runs when you compile.
As for types there’s a bit to learn but it allows you to be a bit more confident your programs will be correct at runtime which is pretty useful for writing this type of software.

You could write most of your software in Python and then setup a websocket connection to the hApp.

It really depends what your intentions are. If you are just looking to have a play and learn I’d encourage you to build something in Python because you are comfortable with it and then talk to the Rust backend over websocket.

Please feel free to ask me for help with any of this. I have a bit of modest Python experience and plenty of Rust experience. I think it would be cool to see this use case.

2 Likes