*Introduction*


These days, every single living being has heard of Bitcoin. Some of those 
know that Bitcoin is a cryptocurrency (crypto for short) and, within those, 
a few know that it runs on top of a technology called Blockchain.


This technology has boomed just alongside Bitcoin since the year 2008, and 
it is being used in many different sectors of society (having numerous 
examples worldwide): finance, industry, healthcare, government.


It has existed for some years now, and there are many different 
blockchains. For crypto, their role is to provide a *descentralized* 
framework upon which one can execute monetary transactions in a *verifiable*, 
*irreversible* manner. But some of those blockchains provide extra 
funcionality: something known as a *smart contract*.

Basically, a smart contract is some computer code that runs on top of a 
blockchain (thus, it has cryptography-enabled *credibility*) that enforces 
some rules to be obeyed by the involved parties.

The first blockchain smart contracts were introduced by Ethereum platform. 
As stated in their website <https://www.ethereum.org/>:

*Ethereum is a decentralized platform that runs smart contracts: 
applications that run exactly as programmed without any possibility of 
downtime, censorship, fraud or third-party interference. *

*These apps run on a custom built blockchain, an enormously powerful shared 
global infrastructure that can move value around and represent the 
ownership of property.*


In other words, blockchain is a protocol for users to build systems which 
need to agree on something. And this thing may be just as simple as a 
monetary transaction, or as complex as a government. *So, having a way to 
easily interact with this technology can enable a whole new set of 
applications.*


*My proposal is...*

to develop a library to supplement or support the development of django 
applications with blockchain integration.

My success indicator is whether I have made it easy for anyone to store and 
retrieve information on the blockchain inside their Django code. 


*Prototype*

I already have a working prototype 
<https://github.com/diego-lima/recepcao_django>. It consists of a simple 
RESTFul API, and it is part of a side project I was working on: a generic 
architecture where the users can channel some input to a fast or robust 
machine to do some processing. The RESTful API was right in the middle, 
connecting the user device and the robust machine. 

The example I have built goes like this: 

   1. The user generates a drawn numerical digit through an android/iOS 
   application, and sends it to the Django API along with his/her ethereum 
   wallet address.
   2. The Django API verifies whether the user has paid a small fee. This 
   verification is done by checking if the user has sent a certain ETH amount 
   to a smart contract I have designed and launched (in a private network).
   3. The users who have paid this fee have their input processed by my 
   machine. I have set up a convolutional neural network which will recognize 
   single handwritten digits in images. The user then receives the processing 
   result.

The idea for this architecture is to be modular and easily extendable for 
any purpose: signal processing, image processing, data crunching...

If my proposal is accepted, I will be open to work on it and do my best, 
and I expect to learn a lot with my mentor.  I also expect to hear 
suggestions on how to lead this proposal to the most useful functionality.


*Schedule*

Since I already have a working propotype, a good week can be spent on 
discussing the existing work, the general implementation design and scope.

The following weeks will be spent building, writing tests and documenting.

The last week should be spent building some working demo.


*About me*

I'm a computer engineering student in Brazil, and I have 3 (soon to be 4) 
years of experience working with Django. Some big projects I have worked on 
are PMAQ <http://pmaq3.lais.ufrn.br/ab/> and SMART 
<http://smart.telessaude.ufrn.br/>, which are related to health quality 
data collection (all over the country) and business intelligence.


-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/11e3174e-a2c3-4e37-a1df-2bd24b1ba850%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to