<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Anna Botsford</title>
    <description>The latest articles on DEV Community by Anna Botsford (@botsford32).</description>
    <link>https://dev.to/botsford32</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4098891%2Ff8077be0-ed44-40e7-a614-5818ebfbd921.png</url>
      <title>DEV Community: Anna Botsford</title>
      <link>https://dev.to/botsford32</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/botsford32"/>
    <language>en</language>
    <item>
      <title>How DAOs Coordinate Contributors: Rules, Roles, and Votes</title>
      <dc:creator>Anna Botsford</dc:creator>
      <pubDate>Wed, 09 Sep 2026 21:34:07 +0000</pubDate>
      <link>https://dev.to/botsford32/how-daos-coordinate-contributors-rules-roles-and-votes-l9</link>
      <guid>https://dev.to/botsford32/how-daos-coordinate-contributors-rules-roles-and-votes-l9</guid>
      <description>&lt;p&gt;DAOs coordinate contributors by combining on-chain rules with delegated human judgment; that hybrid beats putting every task to a token vote or giving a small operator group permanent control. The choice is not cosmetic: token voting buys broad legitimacy at the price of delay and turnout, while a multisig buys speed at the price of trusting a fixed signer set.&lt;/p&gt;

&lt;p&gt;An Ethereum DAO using an OpenZeppelin Governor makes the trade visible. A proposal names target contracts, ETH values, and calldata; voting power is read at a snapshot, delegates can pool it, quorum and the For/Against/Abstain rule decide the result, and a TimelockController can queue the winning calls before execution. Voting delay, voting period, proposal threshold, quorum, and timelock length are parameters. A one-day delay and one-week vote are examples, not defaults that make a DAO safe.&lt;/p&gt;

&lt;p&gt;That model suits changes that should survive contributor turnover: treasury grants, protocol parameters, permission changes, and upgrades. A Safe or Aragon multisig suits a small operating group handling payroll, incident response, or routine vendor work; a 3-of-5 threshold is easy to audit and fast to execute, but it cannot create legitimacy outside those five owners. If the contributor base is open and fluid, or a hostile token holder must be unable to seize execution, the multisig is the wrong final authority. If the action is frequent and low-value, a full vote is the wrong queue.&lt;/p&gt;

&lt;h2&gt;
  
  
  Coordination Is a Pipeline
&lt;/h2&gt;

&lt;p&gt;It is a pipeline from a scoped request to an executable call, with a human work layer between the two. A contributor needs a mandate—deliverable, budget, deadline, and acceptance test—not merely a governance forum. The DAO can approve a grant, assign a role, or authorize a plugin; the contributor then works off-chain and returns evidence. The final transaction should point to the approved recipient, amount, and contract function. That separation matters: a proposal can be politically popular yet fail because the calldata is malformed, the destination lacks funds for gas, or the permission was granted to the wrong module.&lt;/p&gt;

&lt;p&gt;Track four costs separately: proposal and vote gas on the source chain, execution gas for each target call, the human budget, and waiting time. Snapshot-style off-chain voting can remove gas from participation, but it does not remove the need for an executor; a Safe signer or on-chain Governor still has to submit the state-changing transaction. Batch calls reduce coordination overhead, but calldata size and the number of targets raise execution gas.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Disagreement: Signaling or Execution?
&lt;/h2&gt;

&lt;p&gt;The disagreement is whether an off-chain vote counts as governance. The checkable answer is that it counts as signaling until a defined executor is bound to the result. A Snapshot result can calculate voting power with a token, NFT, delegation, or custom strategy, but the treasury moves only when a Safe, Governor timelock, or DAO plugin executes the approved action. Inspect the execution transaction, not the poll screenshot. That single test separates contributor coordination from community sentiment.&lt;/p&gt;

&lt;h2&gt;
  
  
  Cross-Chain Work Changes the Choice
&lt;/h2&gt;

&lt;p&gt;Cross-chain work adds a second coordination problem: the DAO must choose not only who may act, but which verification and delivery path carries the action. IBC Protocol fits compatible Cosmos chains because light clients verify counterparty state and independent relayers carry packets; it is not a universal route. Axelar Network and deBridge Protocol address heterogeneous-chain messaging with validator or off-chain validation layers, so their security, confirmation time, and fees are different inputs. Budget source gas, destination gas, finality time, relayer availability, message size, and the failure path; the token amount alone tells you little.&lt;/p&gt;

&lt;p&gt;When an approved action must reach a chain without a suitable native path, the DAO should compare a general bridge with a protocol-specific route on those criteria. &lt;a href="https://graph.org/Why-Universal-Bridge-Burns-Before-It-Reissues-uAssets-09-09" rel="noopener noreferrer"&gt;Universal Bridge&lt;/a&gt; is one option at that point in the decision. A universal bridge is still only the transport layer: it cannot decide whether a contributor’s proposal passed.&lt;/p&gt;

&lt;p&gt;The practical rule is simple: use token or delegated voting for scarce authority, a timelock for exit time and review, and scoped multisigs or plugins for bounded work. Choose the path whose failure you can observe and reverse: a missed vote, expired timelock, rejected message, or stuck signer should have an explicit owner. DAOs coordinate well when the social task—who does the work—is attached to a machine-checkable task—who may spend what, where, and when.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Why Do Layer-Two Networks Reduce Settlement Costs?</title>
      <dc:creator>Anna Botsford</dc:creator>
      <pubDate>Wed, 09 Sep 2026 15:11:39 +0000</pubDate>
      <link>https://dev.to/botsford32/why-do-layer-two-networks-reduce-settlement-costs-1a57</link>
      <guid>https://dev.to/botsford32/why-do-layer-two-networks-reduce-settlement-costs-1a57</guid>
      <description>&lt;p&gt;Layer-two networks reduce settlement costs by executing transactions away from Ethereum and sharing one compressed settlement submission across many users.&lt;/p&gt;

&lt;p&gt;The detail that makes it click is that Ethereum does not need to process every swap as a separate full-cost transaction. An L2 sequencer executes transactions, orders them into a batch, compresses the resulting data, and posts the batch to Ethereum for settlement. One expensive L1 submission can therefore carry hundreds or thousands of cheaper L2 transactions.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the user actually pays for
&lt;/h2&gt;

&lt;p&gt;An L2 fee usually combines three costs: execution on the L2, the user’s share of publishing data to Ethereum, and the operator’s margin or infrastructure cost. The first is cheap because the L2 has its own blockspace. The second is the settlement cost, and batching is what spreads it across users.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Execution:&lt;/strong&gt; the sequencer runs the transaction and updates the L2 state.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data publication:&lt;/strong&gt; compressed transaction data is posted to Ethereum so others can reconstruct and verify the L2.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Settlement:&lt;/strong&gt; Ethereum records a state commitment, and in a zero-knowledge rollup may also verify a validity proof.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Since EIP-4844, rollups can publish much of that data in blobs rather than permanent calldata. Blob space has its own fee market and is temporary, so it is cheaper when demand is moderate. When many rollups compete for blob space, the blob fee rises. L2 fees can also rise when the sequencer is busy or when Ethereum data publication becomes expensive.&lt;/p&gt;

&lt;p&gt;In a Frax Finance example, a user swapping Frax Dollar or Frax Share through &lt;a href="https://www.quora.com/profile/Arthur-Event-Wishes/How-Does-Frax-Swap-Match-Token-Trades-Frax-Swap-matches-a-token-trade-against-the-reserves-of-a-smart-contract-pool-t" rel="noopener noreferrer"&gt;Frax Swap&lt;/a&gt; is paying this same two-part bill: L2 execution plus a share of batch publication.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why the saving is real—and where it stops
&lt;/h2&gt;

&lt;p&gt;The saving comes from amortization, not from eliminating settlement. If a batch costs a fixed amount to publish, adding more transactions usually lowers the settlement cost assigned to each one. Compression improves the result further by representing repeated addresses, signatures, and transaction fields more compactly.&lt;/p&gt;

&lt;p&gt;The trade-off is that different L2 designs move costs around. Optimistic rollups generally pay for data publication and maintain a fraud-proof system; zero-knowledge rollups pay for proof generation and verification but can prove many transactions together. A withdrawal to Ethereum can still require an expensive L1 transaction, and an optimistic withdrawal may involve a challenge delay even when the original L2 transaction was cheap.&lt;/p&gt;

&lt;p&gt;So the practical test is simple: use an L2 when its execution fee, data share, liquidity, and exit cost together beat doing the same activity on Ethereum mainnet. Layer twos reduce settlement costs because they make Ethereum settle batches of work instead of paying Ethereum’s full blockspace price for every individual action.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Threshold Signatures for Pooled Bridge Assets</title>
      <dc:creator>Anna Botsford</dc:creator>
      <pubDate>Tue, 08 Sep 2026 11:33:49 +0000</pubDate>
      <link>https://dev.to/botsford32/threshold-signatures-for-pooled-bridge-assets-268l</link>
      <guid>https://dev.to/botsford32/threshold-signatures-for-pooled-bridge-assets-268l</guid>
      <description>&lt;p&gt;Threshold signatures secure pooled bridge assets by requiring a quorum to produce one valid chain signature while no signer holds the complete private key.&lt;/p&gt;

&lt;p&gt;Imagine a bridge holding pooled USDC on Ethereum Mainnet. A user deposits on one chain, and the destination chain must decide whether to release or mint the matching amount. The dangerous question is not merely where the user found liquidity. Whether the route uses ParaSwap, Kyber Network liquidity, or a Uniswap V3 pool, the bridge still needs a reliable answer to one question: who is allowed to authorize that release?&lt;/p&gt;

&lt;p&gt;At that choice point, &lt;a href="https://cryptoweb3.justblogged.com/paraswap-liquidity-behind-cross-chain-swap" rel="noopener noreferrer"&gt;the route a user takes into the bridge&lt;/a&gt; is separate from the authority that can release pooled funds.&lt;/p&gt;

&lt;h2&gt;
  
  
  Two ways to enforce the quorum
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Threshold signing
&lt;/h3&gt;

&lt;p&gt;A threshold signature scheme creates one public key but distributes its private-key power among several operators. During distributed key generation, no complete private key is assembled. Later, a qualifying group runs a multi-party signing protocol and produces an ordinary ECDSA or Schnorr signature.&lt;/p&gt;

&lt;p&gt;On-chain, the bridge sees one signature from one address. It does not see which operators participated or count their approvals. That makes threshold signing cheap and compatible with existing token vaults: the pooled asset can sit behind a normal account or a contract that verifies one signature. It also hides the quorum structure from the chain, so the bridge must make the signer set, threshold, rotation process, and signing policy auditable elsewhere.&lt;/p&gt;

&lt;h3&gt;
  
  
  Contract multisignature
&lt;/h3&gt;

&lt;p&gt;A contract multisignature keeps the quorum visible on-chain. The bridge contract stores validator addresses and a threshold, then checks several individual signatures before releasing funds or accepting a mint instruction. Safe uses this model for shared accounts: the contract knows its owners, verifies their confirmations, and executes only after the configured threshold is met.&lt;/p&gt;

&lt;p&gt;This costs more calldata and verification gas, but it gives users a directly inspectable policy. Changing the owners or threshold is itself an on-chain governance action. The trade-off is operational rather than magical: a multisig can still fail if its signers collude, its contract contains a bug, or its members approve a malicious message.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where the line falls
&lt;/h2&gt;

&lt;p&gt;The dividing line is where the quorum is checked. If the destination verifies one signature under one group public key, it is threshold signing. If the destination verifies several named signers and counts them, it is multisignature. “MPC wallet” describes how key shares may be managed; it does not by itself tell you which of these verification models the bridge uses.&lt;/p&gt;

&lt;p&gt;In either design, a safe bridge binds the approval to the complete message, not just an amount. The useful sequence is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Observe the source deposit and wait for the bridge’s finality rule.&lt;/li&gt;
&lt;li&gt;Construct a message containing source and destination chain IDs, token, amount, recipient, nonce, and expiry.&lt;/li&gt;
&lt;li&gt;Apply limits and policy checks before any signer approves it.&lt;/li&gt;
&lt;li&gt;Generate either one threshold signature or a bundle of multisignatures.&lt;/li&gt;
&lt;li&gt;Verify the authorization and consume the nonce before releasing or minting.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  What changes in 2026
&lt;/h2&gt;

&lt;p&gt;The current shift is toward cryptographic agility. NIST finalized its first call for multi-party threshold schemes in January 2026, while new research is separating threshold authorization from the particular signature algorithm used underneath. Neither makes existing bridges post-quantum overnight. It does make share refresh, signer replacement, policy binding, and migration without moving pooled assets practical review requirements.&lt;/p&gt;

&lt;p&gt;For a new bridge, choose threshold signatures when one compact, chain-compatible signature and strong off-chain operations matter most. Choose an on-chain multisig when visible membership, inspectable approvals, and contract-enforced policy matter more. In both cases, judge the quorum by who controls it, what it signs, and what the destination contract actually verifies.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
