# Internet Computer infrastructure (2023)

> The second-half-of-2023 gap-year subproject of Omnia: a pivot to digital sovereignty and the Internet Computer — turning Omnia into a canister oracle, then building the World-computer infrastructure the community kept asking for, including IC WebSockets, IC Side Services, and non-replicated HTTPS outcalls.

- Canonical URL: [https://massimo.context-use.com/p/about/projects/2020-2024_omnia/2023_internet-computer-infrastructure/story](https://massimo.context-use.com/p/about/projects/2020-2024_omnia/2023_internet-computer-infrastructure/story)
- Site index: [https://massimo.context-use.com/llms.txt](https://massimo.context-use.com/llms.txt)
- Last edited: 2026-07-25T16:37:44.508Z

After our failed attempt at being part of [Neom's cognitive city](https://massimo.context-use.com/p/about/projects/2020-2024_omnia/2023_neom-cognitive-city/story), we decided to move away from ubiquitous computing and focus on the other of our big passions: digital sovereignty — and, in particular, inspired by the work of [my master's thesis](https://massimo.context-use.com/p/about/projects/2022-2023_fast-internet-computer-consensus/story), the Internet Computer.

### Turning Omnia into an oracle

The really first thing we did — mostly just for fun, and to start getting involved in the IC developer community — was to turn Omnia into an oracle that would let smart contracts (or canisters, as they're called on the Internet Computer) read data from sensors and control actuators, obviously via [the Web of Things](https://massimo.context-use.com/p/about/chapters/2020-2024_zurich/2021-2022_web-of-things/story). Here is an ugly video demonstrating how a smart contract can turn on a light (if you want to find out why we thought it would be a good idea, here is a [long explanation](https://www.youtube.com/watch?v=lTTTxZqWUSQ&t=300s)):

![Screen recording of the Omnia Lighting App — a web app backed by an Internet Computer canister: clicking "List devices" queries the Omnia canister, which returns "Light #1" and "Light #2" cards with "Set color" controls, letting a smart contract read from and control real lights through Omnia's Web-of-Things oracle.](https://assets.massimo.context-use.com/a/about/projects/2020-2024_omnia/2023_internet-computer-infrastructure/omnia-oracle-lighting-demo){size=large align=center}

### Building for a World computer

Anyway, after this short experience we started noticing that the developer community had a bunch of feature requests that the DFINITY foundation hadn't yet implemented — so we decided to step in and take care of those. That's how we started building infrastructure to help the Internet Computer become a real [World computer](https://massimo.context-use.com/p/about/chapters/2020-2024_zurich/2022-2023_master-thesis-at-disco#the-world-computer).

For developers outside the crypto bubble to start building on a new computing platform, there had to be (at least) feature parity with existing platforms. Two big things the community kept asking for were WebSockets for smart contracts and the ability for a smart contract to run off-chain computation (not everything could run on-chain). That's what we delivered.

### IC WebSockets

In 2023, the Internet Computer was hosting many messaging and social networking applications with hundreds of thousands of users. One thing the Internet Computer couldn't offer these applications was the ability to send updates and notifications from a canister to a user. Developers were already hacking their way around this limitation, but we decided to solve the problem by building an API familiar to millions of developers around the world: [WebSockets, but for the Internet Computer](https://www.youtube.com/watch?v=lTTTxZqWUSQ&t=1196s).

![Recording of a presentation on IC WebSockets: the slides walk through how it started (DFINITY's May 2023 proof of concept), the core problem that a canister can't push updates or notifications to a user, the polling workaround developers were using, and the team's solution — an IC WebSocket Gateway that keeps a WebSocket open with the client and queries the canisters on the Internet Computer subnet.](https://assets.massimo.context-use.com/a/about/projects/2020-2024_omnia/2023_internet-computer-infrastructure/ic-websockets-presentation){size=large align=center}

See our initial [roadmap](https://forum.dfinity.org/t/ic-websocket-roadmap/21503), the [beta release](https://forum.dfinity.org/t/ic-websocket-beta-release/21962), and the [final release](https://forum.dfinity.org/t/ic-websocket-stable-release/23872).

### IC Side Services

After completing IC WebSockets, we needed a way to run the [IC WebSocket Gateway](https://github.com/omnia-network/ic-websocket-gateway) [without relying on a single party](https://www.youtube.com/watch?v=lTTTxZqWUSQ&t=2112s) that could act as a single point of failure — exactly what blockchains are designed to combat. Beyond our WebSocket gateway, the IC developer community had long been asking for a way for smart contracts to directly control off-chain services. So next we built [IC Side Services](https://github.com/omnia-network/ic_akash), which turned into a full integration between the Internet Computer and the [Akash Network](https://akash.network/).

![Screen recording of the IC Side Services demo: on the left, a Candid UI calls an orchestrator canister's methods (address, check_tx, close_deployment, create_certificate); on the right, a Cloudmos dashboard shows the canister's Akash (AKT) account with its balance, transactions, and deployments — a canister paying for and controlling compute on the Akash Network. Massimo and Luca appear in webcam thumbnails.](https://assets.massimo.context-use.com/a/about/projects/2020-2024_omnia/2023_internet-computer-infrastructure/ic-side-services-demo){size=large align=center}

![Recording of a presentation on IC Side Services: the slides lay out the problem (DAOs can only control on-chain services, while most Web3 services rely on off-chain infrastructure, so DAOs can't govern them) and the solution — DAO-controlled decentralized compute marketplaces, where an orchestrator canister owns an Akash private key, signs deployment transactions via threshold ECDSA, pays via HTTP outcalls, and is governed by an SNS DAO, fully integrating the Internet Computer with the Akash Network.](https://assets.massimo.context-use.com/a/about/projects/2020-2024_omnia/2023_internet-computer-infrastructure/ic-side-services-presentation){size=large align=center}

See also our initial [proposal](https://forum.dfinity.org/t/proposal-enable-canisters-to-pay-in-icp-for-external-services/24459) and the [beta release](https://forum.dfinity.org/t/ic-side-services-integration-with-the-akash-network/32431).

### One more thing

Once we finished IC Side Services, [our deadline](https://massimo.context-use.com/p/about/chapters/2020-2024_zurich/2023_gap-year#the-deadline) was also coming up close. By then we were almost already sure that none of the projects would actually become a company. So we built one more thing!

One of the biggest limitations of the Internet Computer — which was actually also a feature — was that it couldn't make a single HTTP call to an external service (say an oracle, or whatever other Web2 API). Every single server in an Internet Computer subnet would make the exact same call, so the receiving service would get anywhere between 13 and 40 identical requests. This wouldn't be a problem for idempotent APIs, but unfortunately most APIs aren't like that. Before officially closing [the Omnia chapter of our life](https://massimo.context-use.com/p/about/projects/2020-2024_omnia/intro) (which had lasted almost 4 years), we brought together IC WebSockets and IC Side Services to enable the Internet Computer to make [non-replicated HTTPS outcalls](https://forum.dfinity.org/t/non-replicated-https-outcalls/26627).
