rem.codes retuiteado
rem.codes
1.1K posts

rem.codes
@rem_codes
Typescript / Rust developer on the internet computer ∞ https://t.co/qr7Lcy6J1h • https://t.co/nar7g15dnK
🇳🇱 Se unió Eylül 2020
412 Siguiendo928 Seguidores
rem.codes retuiteado

Query vs Update Calls on the Internet Computer $ICP
On the Internet Computer, every app uses two types of calls: queries and updates. Together they balance speed and security.
Query calls are the fast ones. They’re read-only, run on a single node, and return results in under 200 ms. Perfect for loading UI data or anything that doesn’t change state.
Update calls are for real changes. They go through full network consensus, which takes 1–3 seconds, but the result becomes permanent and secure.
Queries give you Web2 speed, updates give you Web3 trust and that combination makes the IC feel smooth, responsive, and reliable.

English

Authentication vs Authorization
When you log into an app, two things happen behind the scenes. First, the system checks who you are: that’s authentication. This could be Face ID, a password, a wallet signature, or Internet Identity.
Once your identity is confirmed, the app checks what you’re allowed to do: that’s authorization. Can you edit your profile? Delete a post? Access admin features?
One proves your identity. The other controls your permissions. Together, they keep apps secure and user-friendly. $ICP

English

🔄 What’s “Reverse Gas” and why is it important?
Most blockchains make users pay gas for every action.
Every click. Every update. Every interaction. Great for decentralization, terrible for UX.
The Internet Computer flips this model. This is called reverse gas.
💡 Developers pay, users don’t.
Apps run on cycles loaded into the canister,
and the canister pays for computation. Not the user.
And the best part: anybody can top up a canister to keep it running.
✨ Why it matters
- Smooth, web-like experience
- Zero-friction onboarding
- Predictable developer costs
- Anyone can fund the app
- Makes fully on-chain frontends possible
- Web2 convenience with Web3 security
On the Internet Computer, apps feel like the normal web: fast, free, and seamless, without sacrificing decentralization. $ICP

English
rem.codes retuiteado

This week I have sent in over 50 proposals to $TACO DAO - 28 proposals just today! We're currently registering a lot of backend functions so they become callable via proposal, in a step towards decentralizing more of the administration of the DAO.
This would have been absolutely unbearable torture if not for the work of the still too unsung hero of the $ICP ecosystem, Mr. @rem_codes with his irreplaceable ic-toolkit.app
He has easily saved me (and thus TACO DAO) 50 * 30 min = 25 hours of dev time this week alone.
Thank you Remco!
English

🛂 What Is Internet Identity?
Internet Identity is the Internet Computer’s passwordless login system. No usernames. No passwords. No seed phrases. Just secure sign-in using the devices you already own.
🧠 How it works
You register your phone, laptop, YubiKey or biometric login. Your device creates a unique, anonymous key for each dapp you use. So apps can’t track you across services.
🔒 Why it’s secure
- Powered by WebAuthn
- Hardware-backed authentication
- No passwords to steal
- No private keys to manage
- Phishing-resistant
🌍 Why users love it
- One-click login
- No wallet required
- Private by default
- Easy recovery by adding new devices
✨ Internet Identity feels like single sign on but without Big Tech and tracking. $ICP

English

📦 What Are the Storage Limits on the Internet Computer?
The IC isn’t like traditional blockchains with tiny storage limits. It’s built to store real application data directly on-chain.
🧠 Per-canister storage
- Heap memory: ~4 GB (fast runtime state)
- Stable memory: up to hundreds of GB per canister. Perfect for large datasets, files, logs, and user data.
🧱 Scale across multiple canisters
Need more than a single canister can hold? Just add more. Your app scales horizontally, like sharded storage or microservices.
🌍 No global cap
The IC expands by adding new subnets, so total network storage grows as demand grows.
🧪 Blob Storage (announced)
A new upcoming feature designed for massive, low-cost storage of large files and media. Making it even easier to handle heavy on-chain data workloads.
✨ In short:
A single canister can store hundreds of GB and your app can scale to unlimited storage. $ICP

English

What’s the IC Equivalent of REST APIs?
On the Internet Computer, you don’t build REST routes. You expose Candid methods inside your canister; typed functions your frontend can call directly.
It’s different from traditional APIs so it takes a moment to get used to…
but once it clicks, it feels cleaner and more direct.
🧠 Candid = the IC’s API layer
Every method, input and output is defined with strong typing.
No JSON endpoints or URL-based routing, the interface is the contract.
🗂️ Canisters take the role of API servers
In Web2, you call a URL like GET /users/123.
On the IC, you call a method defined in your canister, such as get_user(“123”).
Same idea; fetch data from your backend but without HTTP routes or manual parsing. Your app communicates with the canister via an agent,
which handles serialization and transport for you.
⚡ Two types of calls
• Query calls: fast, read-only
• Update calls: state-changing, processed through consensus
✨ Why it’s great
• Strong typing end-to-end
• Automatic serialization
• Predictable, self-documenting interfaces
• Simpler than REST once you understand the model
• Fully on-chain backend logic
On the Internet Computer, your backend isn’t a REST API. It’s a typed, decentralized interface you call like a function. $ICP

English

What Is PocketIC?
PocketIC is like having a mini Internet Computer on your laptop. Perfect for fast, reliable testing. It simulates the IC locally so you can test your canisters without deploying to mainnet or running a full replica.
🧠 Why developers use it
• Run multiple canisters locally
• Test cross-canister calls
• Advance time for timers or governance logic
• Zero cycles needed
• Fast, deterministic, repeatable tests
• Works great in CI pipelines
⚙️ What it can do
- Test updates and queries
- Simulate subnets
- Try upgrades safely
- Reproduce real IC behavior more accurately than dfx start
✨ In short: PocketIC gives you a lightweight, programmable Internet Computer you can use for development and automated testing. $ICP

English

What Is Chain Key Cryptography?
Chain Key Cryptography is the tech that lets the Internet Computer act like one unified blockchain, even though it runs across thousands of independent nodes.
🧠 One public key
The entire network uses a single public key to verify messages and signatures. No matter how big the IC grows, it still behaves like one system.
🔐 Threshold signatures
No node has the full secret key. Each node holds only a share, and only a threshold working together can create a valid signature, keeping the network secure and decentralized.
🔄 Keys evolve automatically
As nodes join or leave, the IC updates its cryptography on the fly without downtime and without changing its identity.
⚡ Why it matters
• Lets the IC run at massive scale
• Enables direct Bitcoin & Ethereum integrations
• Allows canisters to serve the web (HTTPS)
• Makes the network self-healing and secure
✨ Chain Key Cryptography is what powers the Internet Computer’s speed, security, and seamless interoperability. $ICP

English

@madis__0000 Not natively but "ic websockets" does this a bit, its a CDK that hooks into you canister but would still require a central gateway unfortunatly.
github.com/omnia-network/…
English

@rem_codes What about data stream via websocket, is the IC can handle such calls?
English

How Do I Connect My IC Backend to Web2 APIs?
Your Internet Computer $ICP backend can call Web2 services using HTTPS outcalls. Your canister sends a secure request, the network performs the HTTPS call, and the response comes back on-chain.
🧠 How it works
Your canister calls the system method http_request. The Internet Computer performs the HTTPS request and returns the response.
It works just like a normal backend, but fully decentralized.
⚙️ Consensus vs. Non-Consensus Calls
There are two modes of HTTPS outcalls on the IC:
Consensus calls
• All nodes perform the request
• The network agrees on the same response
• Fully trustless, fully decentralized
• Ideal for public APIs and deterministic data
Non-consensus calls
• Only one node performs the request
• Faster and cheaper
• Good when full decentralization isn’t required
• Useful for real-time data or less predictable APIs
💡 Most developers use consensus calls for reliability and integrity,
and non-consensus calls when performance or flexibility is more important.
🧹 Transform function
Some Web2 APIs include unstable headers like timestamps. A small transform step cleans the response so nodes can agree on one result.
💸 Who pays?
The canister pays in cycles, so users never need tokens or gas.
✨ You can fetch Web2 data, call external APIs, or trigger workflows.
Directly from your on-chain backend, no oracle needed.

English

Can I Use a Custom Domain for My Dapp?
Yes, you can use your own domain like rem.codes for any Internet Computer $ICP dapp. Every canister gets a default URL, but you can easily connect your own custom domain to make your app feel polished and professional.
🔗 How it works
You point your domain’s DNS to the IC’s boundary nodes using a simple CNAME or A record. The Internet Computer handles the rest.
🔐 Automatic HTTPS
TLS certificates are managed for you, so your domain is always secure. No setup, no renewal, no server configs.
⚙️ Smooth setup
You can configure everything manually with dfx, or use a service like @junobuild for easy domain management, cycle top-ups, and seamless deployments.
✨ Your app, your branding, your domain, running fully on the open internet.

English

@novahodler Yes. If you’re already using an oracle, you don’t need the IC to double-check the data for you. In that case, non-consensus outcalls are a great fit because they’re faster, cheaper and still give you the info you need.
English

@rem_codes Also if you are using an oracle the non-consensus would also perfect I imagine?
English

On a 13-node subnet, consensus HTTPS outcalls require all nodes to perform the request and agree on the result, while non-consensus outcalls let one node perform the request. That makes them faster and more flexible, but not fully replicated.
It’s still bounded by the IC’s update call latency which is 2-3 seconds.
English

@rem_codes So with the Non-consensus calls real-time application are possible comparable to web2?
English

How Do I Connect My IC Backend to Web2 APIs?
Your Internet Computer $ICP backend can call Web2 services using HTTPS outcalls. Your canister sends a secure request, the network performs the HTTPS call, and the response comes back on-chain.
🧠 How it works
Your canister calls the system method http_request. The Internet Computer performs the HTTPS request and returns the response.
It works just like a normal backend, but fully decentralized.
⚙️ Consensus vs. Non-Consensus Calls
There are two modes of HTTPS outcalls on the IC:
Consensus calls
• All nodes perform the request
• The network agrees on the same response
• Fully trustless, fully decentralized
• Ideal for public APIs and deterministic data
Non-consensus calls
• Only one node performs the request
• Faster and cheaper
• Good when full decentralization isn’t required
• Useful for real-time data or less predictable APIs
💡 Most developers use consensus calls for reliability and integrity,
and non-consensus calls when performance or flexibility is more important.
🧹 Transform function
Some Web2 APIs include unstable headers like timestamps. A small transform step cleans the response so nodes can agree on one result.
💸 Who pays?
The canister pays in cycles, so users never need tokens or gas.
✨ You can fetch Web2 data, call external APIs, or trigger workflows.
Directly from your on-chain backend, no oracle needed.

English

How Is the Internet Computer Updated?
The Internet Computer $ICP can update itself: securely, automatically, and without downtime. This is powered by the Network Nervous System, the IC’s on-chain governance.
🧠 1. Governed by the NNS
The NNS controls network upgrades, adds new nodes, expands subnets and adjusts the protocol. Anyone with voting neurons helps decide the future of the network.
🗳️ 2. Everything happens through proposals
When an upgrade is needed, a proposal is submitted:
• protocol improvements
• subnet changes
• replica upgrades
• performance boosts
• new features
If the community votes “yes,” the update is approved.
🚀 3. Automatic rollout
Nodes download the new version and upgrade automatically.
Subnets update safely, one step at a time.
🛡️ 4. Secure and transparent
All changes are public, voted on, and recorded on-chain.
✨ The Internet Computer is a network that improves itself. Decentralized, autonomous, and always evolving.

English

Is the Internet Computer $ICP just another blockchain?
No, it’s much more than that. Most blockchains can only run smart contracts with tiny amounts of storage and slow, expensive execution. They store things… but they don’t run real applications.
The Internet Computer is different:
🌐 It runs full applications, not just smart contracts
Frontends, backends, APIs, and data storage all live directly on the network. No AWS, no servers, no off-chain infrastructure.
⚡ It executes at web speed
Fast queries, seamless UX, and real-time interactions. Not the slow, transaction-based model of traditional blockchains.
🧠 It upgrades itself autonomously
The Network Nervous System (NNS) manages updates, scaling, and new features without downtime.
💾 It acts like a decentralized cloud
Apps store gigabytes of data, serve web content, and scale horizontally. All on-chain.
🔌 It feels like Web2, but built on Web3 principles
Users don’t need wallets, tokens, or gas fees thanks to reverse gas.

English

Can I Use My Existing Frontend Frameworks on the Internet Computer? $ICP
Yes, absolutely. 🙌
You can keep using React, Vue, Svelte, Vite, Next.js, or even plain HTML/CSS/JS. Your workflow stays the same: build your app, generate your dist/ folder… and instead of deploying to Vercel or Netlify, you deploy it to a canister.
You can do this directly using dfx,
or use a hosting service like Juno.build that also supports automated cycle top-ups, easy custom domains, and smooth deployments.
🧠 How it works:
Your frontend is just static assets: HTML, JS, CSS. A canister serves those files on the open internet like a global CDN…but fully decentralized.
✨ Same tools. Same frameworks.
Just a new way to host without servers.

English

