---
# System prepended metadata

title: PL Application

---

# PL Application

Full name: Irakli Gozalishvili
Email: hi@gozala.io
Phone: 4152865586
Current company: Mozilla


## Links

Github URL: https://github.com/gozala
LinkedIn URL: https://linkedin.com/in/gozala
Twitter URL: https://twitter.com/gozala
Other Website: https://gozala.io

## Roles


## [IPLD Engineer](https://jobs.lever.co/protocol/8114fb70-9bf7-4b41-965f-fab029b02a17)


## [Senior Software Engineer, libp2p](https://jobs.lever.co/protocol/8c03a123-4890-4265-96e1-0427bd7ec193)

#### What excites you about libp2p? What p2p networking challenges are you pumped to to solve ?

In the face of an unfolding climate collapse, it is utterly important to break networked systems free of fragile infrastructure. By abstracting transport layer and making it pluggable, Libp2p lays foundation for resilient systems, adaptable to changing network constraints.

New networking capabilities in the form of [Apple Multipeer Connectivity][1] or / and [Google Nearby][2] unlock opportunities for peers on the nearby devices (edges) to connect without having to be on the same network (not to mention many public wifi networks block UDP). However, these technologies challenge existing model of the libp2p by requiring specific user interactions to advertise / discover peers on nearby devices. Overcoming these challenges and icorporating such new capabilities into libp2p is exciting, as it enables new type of applications not possible today.

[1]:https://developer.apple.com/documentation/multipeerconnectivity
[2]:https://developers.google.com/nearby

## [Software Engineer, Distributed Systems](https://jobs.lever.co/protocol/50de30a8-289f-49e5-93ad-9967e1941c12)


## [Software Engineer, Peer-to-Peer Networks](https://jobs.lever.co/protocol/e4a469e4-c420-4ae5-acea-44c33a03dbd2)


## [Senior Software Engineer, IPFS](https://jobs.lever.co/protocol/82793e56-124f-484c-bf13-357ef0b45bc6)




#### What draws you to Protocol Labs ? What projects have you worked on ? What do you care about ? What do you dislike ?

A long time ago, when [@jbenet][] & [@whyrusleeping][] where hacking on early version of IPFS, my colleague from Mozilla and me had been tasked to reimagine a [“True User Agent”][browser.html]. From this research, an image of an agent with built-in IPFS has emerged. It enabled users to save fragments of web into local libarary (built-in IPFS node), to annotate those with notes and to share with others - Like [Memex][] of the Web.

We started collaborating on the project with [@jbenet][] & [@whyrusleeping][], but unfortunately did not get too far. It proved diffucult to embed go-ipfs (only implementation at that time) into [Servo][]. Also, Mozilla's appetite for ambitious projects did not last long.

That vision however, drew me to the community which I am proud to be part of. Through years I have took on various efforts to utilize my expertise in browser internals and web security and to contribute to the community.


It is scattered across pull requests, [discussions][3] _(difficult to capture everything, due to repo migrations, multiple orgs, etc)_, but there are few of my efforts that are worth highlighting:

- [Libdweb][] effort at the Mozilla with an intent to extend Firefox extensions' capabilities to allow full fledged in-browser IPFS implementation. While Mozilla remains conservative towards realeasing this work, it [seems to have inspired similar efforts in other browsers like Brave & Opera](https://blog.ipfs.io/2019-10-08-ipfs-browsers-update/).

- Dissatisfiction with state of IPFS in browsers inspired attempt to identify shortcomings of js-ipfs (in-browser environment) and resulted in a proof of concept in form of [lunet][]. It demonstrated how identified limitations can be addressed all within existing web capabilities. In the [deep dive session at the IPFS camp][4] part of those findings were shared with community _(Specifically benefits of moving IPFS into worker thread(s) & how to share a single node across multiple browser tabs)_
More findings about sharing IPFS node across origins, sandboxing and seamselss bridging with local daemon had been [drafted into proposed work plan][5]

- One weakness of IPFS in comparison to projects like [Dat][] or [SSB][] had been the lack of built-in mutability primitives that enable collaborative applications. After rounds of hearted discussions with the core team, and their encouragement to take it upon myself, I have started project [IPDF][IPDF]. It incorporates ideas from other projects and addresses some of their limitations through feautures avaliable in IPLD. In an attempt to inspire the community I have shared this work [at IPFS Camp][6] and through continued collaboration with Textile team it converged into new [Threads Protocol Whitepaper][7].

 

That vision of "True User Agent" that empowers user to create, share and collaborate with others privately and securely free of walled gardens and infrastructure constraints is what inspires me to date. My personal mission is to devote my skills and experience to enable such software & I can not imagine a better place than Protocol Labs to pursue this.

[@jbenet]:https://github.com/jbenet
[@whyrusleeping]:https://github.com/whyrusleeping
[browser.html]:https://github.com/browserhtml/browserhtml
[Memex]:https://en.wikipedia.org/wiki/Memex
[Servo]:https://servo.org
[3]:https://github.com/search?o=asc&q=org%3Aipfs+commenter%3Agozala&s=created&type=Issues
[libdweb]:https://github.com/mozilla/libdweb
[lunet]:https://github.com/Gozala/lunet
[SSB]:https://ssbc.github.io/scuttlebutt-protocol-guide/
[Dat]:https://datproject.org/
[4]:https://github.com/ipfs/camp/blob/master/DEEP_DIVES/37-ipfs-in-web-workers.md
[5]:https://docs.google.com/document/d/17tMeQreiKGOm2m3WblnEGzABThgOHy9RU6Hi2GGvChM/edit?usp=sharing
[IPDF]:https://github.com/gozala/ipdf
[6]:https://www.youtube.com/watch?v=KBwR0I7i4Wg&feature=youtu.be
[7]:https://blog.textile.io/introducing-textiles-threads-protocol/

#### What is your experience with open source ?

All the work I have done in the past 10 years has been with open source. Before that I worked at the closed source company, but still contributed to numerous open source projects. When I run into a bug with an open source software, I report it and whenever within my expertice, accompany it with a pull request. Some of those contributions are what led me to join Mozilla.

#### Additional information

I have been writing primarily in Javascript for past 13 years, not necessarily by choice, but rather by circumstances. However I love multiple programing languages, I [even have written one][8] and have a crazy one in the pipeline. I have played with [exotic languages][9] and with [less so][10] and have a deep desire to program in Rust (Which BTW I think PL should absolutely adopt). I have to be honest, Go never picked my curiosity, but I don’t mind learning it either.

[8]:https://github.com/gozala/wisp
[9]:http://shenlanguage.org
[10]:https://www.haskell.org