openskills.info
← Blockchain Developer career guide

Software development

Blockchain Developer timeline

How the field of a Blockchain Developer got here: the sourced milestones from every published course of this career, on one axis.

1977 to 2025

167 milestones across 16 courses

  • Core
  • Supporting
  • Specialization

The axis stretches toward recent years, where most milestones fall. Bars count milestones per year; dots are single milestones.

Before 1990

5 milestones

  1. 1977 Jan 15

    DES becomes FIPS 46

    The U.S. standard specified a shared-key encryption algorithm for protecting sensitive computer data and placed implementation in electronic devices.

  2. 1982 Apr 14

    FIPS 140 addresses cryptographic equipment

    The standard defined general security requirements for equipment that implemented DES, extending attention from the algorithm to its operating boundary.

  3. 1983

    FLP establishes the asynchronous termination limit

    Fischer, Lynch, and Paterson showed that deterministic consensus cannot guarantee termination in a completely asynchronous system when one process may crash. Practice separates safety guarantees from the timing assumptions needed for progress.

  4. 1988

    Partial synchrony gives liveness a practical model

    Dwork, Lynch, and Stockmeyer formalized timing models between full synchrony and full asynchrony. Protocols could retain safety while basing eventual progress on bounds that hold only after an unknown stabilization point.

  5. 1989

    Lamport develops the Paxos protocol

    Lamport's Paxos work framed agreement around numbered proposals, promises, and quorum acceptance. It supplied a durable vocabulary for preserving one chosen value across competing rounds.

1990s

4 milestones

  1. 1991

    Linked timestamping is described

    Haber and Stornetta described a method for time-stamping digital documents with hash-linked records. The idea established an auditable ordering of records before cryptocurrency networks existed.

  2. 1994 Jan 11

    FIPS 140-1 defines four module levels

    FIPS 140-1 set security requirements for cryptographic modules across interfaces, roles, physical security, software, key management, and self-tests.

  3. 1998

    The Part-Time Parliament is published

    The published Paxos account made the protocol's safety argument and system model available as a citable primary description. It became a reference point for later multi-instance consensus systems.

  4. 1999

    PBFT demonstrates practical Byzantine replication

    Castro and Liskov presented Practical Byzantine Fault Tolerance for replicated state machines with arbitrary faulty replicas. The work made the fault model an explicit design choice rather than an assumed extension of crash tolerance.

2000s

16 milestones

  1. 2001

    Paxos Made Simple clarifies the core protocol

    Lamport's concise Paxos presentation centered promises, accepted values, and quorum intersection. It gave practitioners a direct path from a single chosen value toward repeated decisions.

  2. 2001 May 25

    FIPS 140-2 updates module requirements

    FIPS 140-2 replaced FIPS 140-1 and retained four qualitative security levels while updating the areas used to assess cryptographic modules.

  3. 2001 Sep

    OWASP community begins

    OWASP began as an informal open community focused on improving software security. It created a public home for application-security guidance and projects.

  4. 2001 Nov 26

    AES becomes FIPS 197

    FIPS 197 standardized AES with 128-bit blocks and three supported key sizes, creating the symmetric cipher foundation used by later key hierarchies.

  5. 2003

    First OWASP Top 10 published

    The first Top 10 organized prominent web application risks into an awareness document for developers and application-security work.

  6. 2004

    Microsoft makes SDL mandatory

    Microsoft made its Security Development Lifecycle part of its software development process, integrating security work across design, development, and testing.

  7. 2005

    PLOVER organizes observed vulnerability examples

    MITRE grouped real CVE examples into common fault and flaw classes. The work supplied a bottom-up basis for a shared weakness taxonomy.

  8. 2005 Aug

    NIST publishes SP 800-57 Part 1

    The first final Part 1 assembled general guidance for cryptographic key types, protection, lifecycle, cryptoperiods, compromise, and recovery.

  9. 2006

    CERT C secure coding standard work begins

    The idea arose at the C Standards Committee meeting in Berlin. The project targeted actionable security guidance for C programmers.

  10. 2006

    CWE receives its first release

    The first Common Weakness Enumeration list established community definitions and classifications for recurring software weaknesses.

  11. 2007 Sep

    Go receives its name

    The initial design discussions led Rob Pike to suggest the name Go. The project then developed compilers and a standard library before public release.

  12. 2008

    Microsoft SDL released publicly

    Microsoft moved its internal lifecycle practices into publicly available guidance and tools for wider secure-development adoption.

  13. 2008 Oct

    Bitcoin white paper is published

    The Bitcoin paper specified a peer-to-peer system that combines signed transactions, proof of work, and a hash-linked chain. It made distributed agreement over an ordered transaction history the central operating model.

  14. 2008 Oct

    First official CERT C standard released

    SEI published the first official CERT C Secure Coding Standard, with rules, insecure examples, and secure alternatives for recurring C coding errors.

  15. 2009 Nov 10

    Go is released as open source

    The Go project launched publicly as an open-source language. This started the ecosystem around packages, tools, and community maintenance.

2010s

68 milestones

  1. 2010

    Rust becomes a Mozilla Research project

    The project moved into Mozilla Research and began developing in public. This supplied institutional support before Rust had stable compatibility guarantees.

  2. 2010 Oct 1

    KMIP Version 1.0 becomes an OASIS Standard

    KMIP defined a common client-server protocol and profiles for managing cryptographic objects across products that had used incompatible interfaces.

  3. 2012 Jan

    Rust 0.1 is released

    The first numbered source release established a public pre-stable line. Language and library compatibility could still change between releases.

  4. 2012 Feb 11

    BIP-32 (Hierarchical Deterministic Wallets) created

    The proposal standardized deriving a full tree of keys from one seed, replacing the practice of generating and separately backing up an independent key for every address.

  5. 2012 Mar 28

    Go 1 establishes compatibility

    Go 1 defined a language and core libraries intended as a stable foundation. The compatibility promise made long-lived Go code and documentation a practical expectation.

  6. 2013

    Raft presents a decomposed leader-based design

    Ongaro and Ousterhout introduced Raft with separate leader election, log replication, and safety components. Its explicit leader model made replicated-log behavior easier to inspect and teach.

  7. 2013 Sep 10

    BIP-39 (mnemonic seed phrases) created

    The proposal standardized converting wallet entropy into a checksummed, human-readable word sequence, turning the single backup an HD wallet needs into something a person can write down and read back correctly.

  8. 2013 Nov 27

    Ethereum whitepaper published

    The paper proposed a blockchain with a general programming layer, establishing the basis for application logic deployed as contracts.

  9. 2013 Dec

    Go 1.2 adds the race detector

    Go 1.2 added the race detector to the standard toolchain. Concurrent programs could then be tested for data races with a supported Go command.

  10. 2014

    CWE adds mobile application content

    CWE expanded its weakness classifications with content for mobile applications as software platforms and attack surfaces changed.

  11. 2014

    Raft receives the USENIX Best Paper Award

    The Raft paper received a Best Paper Award at the 2014 USENIX Annual Technical Conference. Its publication and accompanying materials widened access to a leader-based consensus design for systems builders.

  12. 2014 Feb 28

    Mt. Gox files for bankruptcy; 850,000 BTC reported missing

    The exchange's collapse made a single custodian's internal key-management failure concrete at scale, years before "not your keys, not your coins" became common practitioner advice.

  13. 2014 Apr 1

    Ethereum Yellow Paper released

    The formal protocol specification defined the Ethereum state transition and virtual machine that contract compilers target.

  14. 2014 Apr 1

    Yellow Paper released

    Gavin Wood's Yellow Paper gives the EVM a formal definition, including the stack of 256-bit words and the first gas schedule that every later fork amends.

  15. 2014 Apr 24

    BIP-44 (multi-account hierarchy) assigned

    The proposal fixed the derivation path structure almost every HD wallet still uses, letting one seed manage multiple accounts across multiple chains without key collisions.

  16. 2014 Jul 22

    Ethereum Foundation publishes Ethereum and Oracles

    Vitalik Buterin outlines oracle-based execution, external data needs, and combinations with onchain verification. The post frames why contracts that need HTTP-shaped facts require offchain helpers.

  17. 2014 Jul 29

    Trezor One ships as the first dedicated hardware wallet

    SatoshiLabs' device moved private key generation and signing into a dedicated offline unit, establishing hardware-backed self-custody as a distinct, purchasable custody model.

  18. 2014 Nov

    crates.io opens

    crates.io became the central registry for discovering and downloading Rust crates. Cargo gained a shared publication and dependency source ahead of Rust 1.0.

  19. 2015 May 15

    Rust 1.0 is released

    Rust began its stable compatibility commitment while retaining low-level control without a garbage collector. Stable code gained a foundation for long-lived libraries and applications.

  20. 2015 Jul

    Ethereum Frontier launches

    Ethereum launched Frontier as a live implementation for technical users. Smart-contract execution became a general-purpose state-transition model on a public network.

  21. 2015 Jul

    Solidity 0.1.0 tagged

    The first public 0.1.0 release established Solidity as a contract-oriented language targeting the EVM, with a 0.x version line that still signals ongoing breaking change.

  22. 2015 Jul 30

    Frontier launches mainnet

    Ethereum goes live with the EVM and its gas metering. Gas now has a real cost in ether, and the price list becomes a design constraint for every deployed contract.

  23. 2015 Aug 19

    Go 1.5 is self-hosted

    The compiler toolchain moved from C to Go, and the garbage collector was redesigned. The release also made the default GOMAXPROCS value match logical CPU count.

  24. 2015 Nov

    ERC-20 proposed

    ERC-20 defined a common API for balances, transfers, approvals, and delegated transfers. It gave wallets and applications a shared interface for fungible-token integration.

  25. 2015 Dec

    Hyperledger Project is announced

    The Linux Foundation launched Hyperledger as a collaborative effort for enterprise distributed-ledger technology. This formalized a permissioned, organization-focused branch of blockchain practice.

  26. 2016 Mar 14

    Homestead activated

    The first planned production upgrade changed contract creation and added DELEGATECALL, an instruction later central to proxy designs.

  27. 2016 Sep

    Solidity 0.4.0 breaks the 0.3 line

    Version 0.4.0 opened a new breaking series used widely in early token and contract deployments, forcing pragma pins across source files.

  28. 2016 Oct 18

    Tangerine Whistle reprices I/O-heavy opcodes

    After denial-of-service attacks exploited underpriced operations, EIP-150 raises the gas cost of state-reading opcodes and calls and introduces the rule that a call forwards at most all but one sixty-fourth of the remaining gas.

  29. 2016 Nov 22

    Spurious Dragon caps contract size

    The second response to the attacks tunes opcode pricing further, and EIP-170 limits deployed code to 24,576 bytes, a ceiling that still shapes how large contracts are split.

  30. 2017

    SLIP-39 (Shamir Backup) published

    SatoshiLabs published a standard for splitting a seed into a threshold of shares using Shamir's secret sharing, giving self-custody a documented alternative to a single written seed phrase.

  31. 2017 Mar 15

    Solidity 0.4.10 added require, assert, and revert helpers

    Clearer failure primitives gave unit tests stable ways to express input checks and internal assertions in contract code under test.

  32. 2017 Mar 15

    Solidity 0.4.10 added safety primitives

    The release introduced require, assert, transfer, and revert behavior that gave developers clearer tools for input checks, internal invariants, and failed execution.

  33. 2017 May

    ERC-223 proposed receiver-aware transfers

    ERC-223 specified a token-receiver callback for transfers to contracts. It addressed the difference between a token transfer and a recipient contract recognizing that transfer.

  34. 2017 Jun 22

    Vitalik Buterin describes path-independent market makers

    The post "On Path Independence" sets out on-chain market makers that price trades from a reserve formula such as constant product.

  35. 2017 Jul

    Hyperledger Fabric 1.0 is released

    Fabric 1.0 provided a production release for an identified-organization ledger framework. Its architecture separates endorsement, ordering, validation, and commitment instead of using a public proof-of-work path.

  36. 2017 Sep

    Chainlink whitepaper published

    The Chainlink paper describes a decentralized oracle network that aggregates node observations for smart contract inputs, setting the research baseline for later Data Feeds deployments.

  37. 2017 Oct 16

    Byzantium adds REVERT and STATICCALL

    REVERT lets a failing call undo its state changes while returning unused gas and error data, instead of consuming everything, and STATICCALL adds calls that cannot change state.

  38. 2017 Nov

    ERC-777 proposed operators and hooks

    ERC-777 defined operators and send and receive hooks while retaining ERC-20 compatibility. It made callback behavior and operator authority explicit parts of a fungible-token design.

  39. 2017 Nov 6

    Parity multisig library self-destruct freezes roughly 280 million dollars in ether

    A reachable function let a user take ownership of, and then destroy, the shared library contract every affected Parity multisig wallet depended on, making the funds permanently unreachable without any key being stolen.

  40. 2017 Nov 7

    Parity multisignature library failure analyzed

    A public library contract used through delegate calls was initialized and destroyed, freezing wallets that depended on it. Review practice expanded from one wallet to shared implementation and initialization boundaries.

  41. 2018

    Practical threshold-ECDSA signing published (Gennaro and Goldfeder)

    Gennaro and Goldfeder's paper "Fast Multiparty Threshold ECDSA with Fast Trustless Setup" gave multi-party computation custody a signing protocol efficient enough for production wallets, ahead of the first commercial MPC custody providers.

  42. 2018 Jan

    ERC-721 proposed non-fungible ownership

    ERC-721 standardized distinct token identifiers, ownership, transfers, and approvals for non-fungible assets. It separated item identity from the balance model used by fungible tokens.

  43. 2018 Jun

    ERC-1155 proposed multi-token contracts

    ERC-1155 specified one interface for multiple token types and single or batch transfers. It made identifier-specific fungible and non-fungible models available within one contract.

  44. 2018 Aug 24

    Go 1.11 introduces modules

    Go 1.11 introduced experimental modules as an alternative to GOPATH with versioning and package distribution. Dependency requirements became explicit in the project model.

  45. 2018 Oct 19

    Slither framework announced

    Trail of Bits released a Solidity static-analysis framework with detectors and a programmatic intermediate representation, adding repeatable structural analysis to contract review workflows.

  46. 2018 Nov

    Solidity 0.5.0 tightens conversions and visibility

    The 0.5.0 breaking release removed many implicit behaviors and pushed projects toward explicit visibility and stricter type conversions.

  47. 2018 Nov 2

    Uniswap is announced and deployed to Ethereum mainnet

    The first Uniswap contracts put a constant product pool on mainnet. Anyone could supply liquidity or trade against the reserves without an order book.

  48. 2018 Nov 13

    Solidity 0.5.0 required greater explicitness

    The breaking release required explicit visibility and data locations while removing ambiguous constructs. Compiler-enforced clarity reduced several classes of review error.

  49. 2018 Dec 6

    Rust 2018 reaches stable

    Rust 1.31 introduced the first edition after Rust 2015. Crates could opt into new idioms while remaining interoperable with crates from other editions.

  50. 2019 Jan 15

    Constantinople postponed for reentrancy risk

    Ethereum postponed the planned fork after gas-cost changes were found to make some deployed call patterns vulnerable to reentrancy. Contract assumptions about gas behavior became an explicit protocol-upgrade concern.

  51. 2019 Feb 5

    QuadrigaCX files for creditor protection

    The exchange's founder had sole control of customer keys and died without sharing access; a later forensic audit found several of the wallets believed to hold customer funds had already been empty for months.

  52. 2019 Mar 22

    FIPS 140-3 is approved

    FIPS 140-3 updated requirements for cryptographic module design, implementation, operation, sensitive-parameter management, and lifecycle assurance.

  53. 2019 May 30

    Chainlink launches on Ethereum mainnet

    Chainlink announces its Ethereum mainnet release with independent node operators and aggregated inputs for smart contracts, marking production availability of the decentralized network.

  54. 2019 Nov 10

    Curve publishes the StableSwap whitepaper

    The paper introduces an invariant that behaves like constant sum near balance and like constant product when imbalanced. It targets assets expected to trade near one price, such as two dollar stablecoins.

  55. 2019 Nov 18

    Multi-Collateral Dai launches

    Maker governance activated the Multi-Collateral Dai system, which generates Dai against several collateral types in Vaults. The CDP stablecoin pattern moved beyond a single collateral asset.

  56. 2019 Dec

    Solidity 0.6.0 introduces try/catch and virtual override

    Version 0.6.0 formalized inheritance keywords such as virtual and override and added try/catch for external call failure handling.

2020s

74 milestones

  1. 2020

    CWE adds hardware weaknesses

    CWE extended the list beyond software weaknesses to cover recurring hardware security issues and their classifications.

  2. 2020 Jan

    Hyperledger Fabric 2.0 is released

    Fabric 2.0 introduced a revised chaincode lifecycle that makes organizations approve and commit definitions under channel policy. Governance of contract changes became an explicit operational concern.

  3. 2020 Jan 8

    Aave v1 launches on Ethereum mainnet

    The first Aave release introduced pooled lending markets on Ethereum. Suppliers deposited into shared pools that overcollateralized borrowers drew from.

  4. 2020 Feb

    Go 1.14 makes modules production-ready

    Go 1.14 declared module support ready for production use and encouraged migration. Modules became the default mental model for organizing and resolving dependencies.

  5. 2020 Mar 12

    Black Thursday liquidations

    During an ETH price crash and network congestion, one keeper kept winning Maker collateral auctions with zero bids while other keepers stopped bidding. The system went from a surplus of about 500 thousand dollars to a shortfall of about 4 million dollars.

  6. 2020 Mar 23

    Uniswap v2 is announced

    Uniswap v2 added ERC-20 to ERC-20 pairs, a time-weighted price accumulator for oracles, and flash swaps. The accumulator gave protocols an alternative to reading a pool's spot price.

  7. 2020 Apr

    ERC-2612 proposed signed ERC-20 approvals

    ERC-2612 added signed permit approvals to ERC-20. It addressed the two-transaction approve then transferFrom interaction that standard ERC-20 delegated transfers require.

  8. 2020 Apr

    NIST publishes SSDF version 1.0

    NIST published a common set of high-level secure software development practices designed for integration into existing lifecycle models.

  9. 2020 May

    SP 800-57 Part 1 Revision 5 is published

    Revision 5 expanded treatment of key metadata, access control, identity authentication, inventory, certificates, and current cryptographic guidance.

  10. 2020 Aug 18

    An independent foundation is planned

    The Rust Core Team and Mozilla announced plans for a Rust foundation. The plan moved legal, financial, trademark, and infrastructure responsibilities toward an independent organization.

  11. 2020 Sep

    ERC-2981 proposed royalty information

    ERC-2981 standardized a way to retrieve royalty payment information for NFTs. It gave marketplaces an interoperable royalty-information interface without defining payment enforcement.

  12. 2020 Oct 22

    Buidler rebranded as Hardhat 2.0

    Hardhat Network gained mainnet forking and the JS/TS testing stack became the default Node.js-oriented contract suite for many teams.

  13. 2020 Dec

    Ethereum Beacon Chain begins

    The Beacon Chain began operating as a separate proof-of-stake chain. It established the validator and finality layer that later became Ethereum Mainnet consensus.

  14. 2020 Dec

    Solidity 0.8.0 enables checked arithmetic by default

    Arithmetic overflow and underflow began reverting by default, with unchecked blocks for intentional wrapping, and ABI coder v2 became the default encoder.

  15. 2020 Dec 16

    Solidity 0.8.0 makes checked arithmetic the default

    Arithmetic reverts on overflow unless it sits in an unchecked block, which turns removing provably unnecessary checks into a deliberate, reviewable optimization.

  16. 2021

    OpenZeppelin Contracts formal-verification program published

    OpenZeppelin described applying Certora specifications to reusable contract components, showing how property proofs could accompany audits and testing in a library release process.

  17. 2021 Feb 8

    The Rust Foundation is established

    The Rust Foundation began as an independent nonprofit supporting the Rust language and ecosystem. Project governance remained with the Rust Project.

  18. 2021 Feb 24

    Chainlink Off-Chain Reporting live on mainnet

    OCR moves observation agreement offchain and posts a single aggregate transaction, cutting update cost for decentralized price feeds.

  19. 2021 Mar 23

    Uniswap v3 is announced with concentrated liquidity

    Liquidity providers could place capital in chosen price ranges, and positions became non-fungible. The announcement targeted an Ethereum mainnet launch on May 5, 2021.

  20. 2021 Apr

    Solidity 0.8.4 custom errors land

    Custom errors provided cheaper, typed revert data compared with long require strings, shaping how interfaces document failure modes.

  21. 2021 Apr 15

    Berlin activated

    Gas repricing for state access changed execution-cost assumptions and reinforced the need to test contracts against the intended EVM rules.

  22. 2021 May 12

    US cybersecurity order directs secure software guidance

    Executive Order 14028 directed NIST to issue guidance for practices that enhance software supply-chain security and secure development environments.

  23. 2021 Jul

    Echidna Parade multicore fuzzing published at ISSTA

    Follow-on research on diverse multicore campaigns reinforced long property fuzz runs as part of serious contract test practice.

  24. 2021 Jul

    Graph Explorer and Subgraph Studio launch

    Subgraph developers gained a staging interface and a route to publish on the network, while Curators gained an interface for signaling.

  25. 2021 Aug 5

    London activated

    EIP-1559 changed transaction fee fields and reduced gas refunds, affecting transaction submission and some gas-optimization assumptions.

  26. 2021 Oct 21

    Rust 2021 reaches stable

    Rust 1.56 stabilized the 2021 edition. Edition migration remained opt-in per crate, preserving interoperability across editions.

  27. 2021 Dec

    ERC-4626 proposed tokenized vault shares

    ERC-4626 extended ERC-20 with a standard API for vault shares over one underlying asset. It reduced the need for integrators to build protocol-specific adapters for deposits, withdrawals, and share accounting.

  28. 2021 Dec 22

    ERC-4626 tokenized vault standard is proposed

    The proposal defines a common deposit, withdraw, and share conversion interface for yield-bearing vaults, including rounding rules in the vault's favor.

  29. 2022 Feb

    NIST publishes SSDF version 1.1

    NIST SP 800-218 formalized the updated framework and its common vocabulary for secure software development and acquisition.

  30. 2022 Mar

    Go 1.18 adds type parameters and fuzzing

    Go 1.18 added type parameters, built-in fuzzing support, and workspace mode. The release expanded both reusable type design and the standard testing workflow.

  31. 2022 Mar

    Solidity 0.8.13 improves via-IR / compiler pathways

    The 0.8.13 release continued maturation of the Yul IR compilation pipeline used by teams that need different optimization tradeoffs than the legacy code generator alone.

  32. 2022 Mar 16

    Aave v3 launches with isolation and efficiency modes

    Aave v3 first deployed on several networks other than Ethereum, adding isolation mode, efficiency mode, and supply and borrow caps. It reached the Ethereum Core market on January 27, 2023.

  33. 2022 Mar 23

    Ronin bridge validator keys compromised for roughly 625 million dollars

    Spear-phishing against a Sky Mavis employee, combined with a validator-signing allowlist grant that was never revoked, gave attackers enough validator signatures to forge withdrawals without touching any smart contract.

  34. 2022 Mar 29

    Foundry v0.2.0 advanced Solidity-native testing

    Paradigm's Foundry release highlighted faster Forge runs, cheatcodes, and fuzz improvements that made Solidity-first unit and property tests a mainstream daily loop.

  35. 2022 Apr 17

    Beanstalk loses user assets to a flash-loan governance attack

    An attacker used a flash loan to exploit Beanstalk's governance process, taking about 77 million dollars in non-Beanstalk user assets. Beanstalk shut off governance and paused the protocol in response.

  36. 2022 Aug 1

    Pythnet appchain launches

    Pyth launches Pythnet to aggregate first-party prices at high frequency and deliver them to other chains, reinforcing pull-oriented cross-chain distribution.

  37. 2022 Sep

    Ethereum completes The Merge

    Ethereum Mainnet merged with the Beacon Chain and replaced proof-of-work with proof-of-stake consensus. Execution-layer transactions continued while validator-based block production and finality became the consensus path.

  38. 2022 Sep 15

    Ethereum moves to proof of stake

    After the Merge, block proposers are known ahead of time. Uniswap Labs later analyzed how this changes the cost of manipulating TWAP oracles across several consecutive blocks.

  39. 2022 Sep 15

    The Merge completed

    Ethereum execution moved under proof-of-stake consensus and the DIFFICULTY opcode became PREVRANDAO, changing an environment value contracts could observe.

  40. 2023

    OWASP Smart Contract Top 10 published

    OWASP organized recurring contract risks into a shared awareness list covering reentrancy, arithmetic, time dependence, access control, ordering, denial of service, logic, randomness, gas, and external calls.

  41. 2023

    Weak-entropy wallet vulnerability disclosed (CVE-2023-39910, "Milk Sad")

    Wallets generated with Libbitcoin Explorer's bx seed command turned out to use a Mersenne Twister pseudorandom generator seeded with only 32 bits of system time, shrinking the practical key space enough for attackers to find and drain affected wallets.

  42. 2023 Feb

    Solidity 0.8.18 brings Paris EVM defaults and more

    Compiler defaults tracked post-Merge EVM changes, keeping language releases aligned with network opcode availability practitioners target in pragmas and settings.

  43. 2023 Mar 1

    ERC-4337 account abstraction deployed on Ethereum mainnet

    The EntryPoint contract and bundler infrastructure went live, letting smart contract wallets implement programmable validation such as social recovery and session keys without any change to Ethereum's protocol layer.

  44. 2023 May

    Solidity 0.8.20 raises default EVM target

    Default EVM version targeting moved forward again, so older opcode assumptions in pinned toolchains needed explicit review.

  45. 2023 May 10

    Solidity 0.8.20 targets Shanghai by default

    The compiler starts emitting PUSH0, and its release notes warn that deployment fails on chains that do not support the opcode yet, which makes the EVM target a deployment decision.

  46. 2023 May 16

    Ledger announces Ledger Recover, drawing custody-model backlash

    The optional seed-backup service split an encrypted copy of a user's key material across three custodians; critics argued this contradicted the hardware-wallet premise that a key never leaves the device, and Ledger postponed the launch a week later.

  47. 2023 Aug

    Go 1.21 adds profile-guided optimization

    Go 1.21 added profile-guided optimization support and improved compiler build speed using PGO. Performance work could use production profile data in the standard toolchain.

  48. 2023 Aug 18

    Liquity publishes The oracle conundrum

    A production DeFi team documents push, pull, and TWAP tradeoffs, front-running mitigations, and fallback design constraints for an immutable protocol.

  49. 2023 Sep

    Consensys announced Truffle Suite sunset

    The long-running Truffle and Ganache stack entered sunset, accelerating migrations toward Hardhat and other active frameworks for day-to-day testing.

  50. 2023 Dec 14

    Ledger Connect Kit compromised in a supply-chain attack

    A phished former employee's credentials let attackers publish malicious versions of a widely used wallet-connector npm package, injecting fund-draining code into dozens of applications before Ledger pulled the versions roughly five hours later.

  51. 2024 May

    Solidity 0.8.26 continues the 0.8 stable line

    The 0.8.26 release kept the long-lived 0.8 series current with compiler fixes and features while projects remained on checked arithmetic defaults introduced in 0.8.0.

  52. 2025 Jan 31

    Uniswap v4 launches with hooks

    Uniswap v4 keeps the constant product model and adds hooks, plug-in contracts that run custom logic around pools, swaps, fees, and positions.

  53. 2025 Feb 20

    Rust 2024 reaches stable

    Rust 1.85 stabilized the 2024 edition with coordinated language, standard-library, Cargo, rustdoc, and rustfmt changes. Existing crates retained their selected editions until migration.

  54. 2025 Feb 21

    Bybit loses roughly 1.4 billion dollars through a disguised Safe transaction

    Attackers used a compromised Safe developer's machine to disguise a malicious transaction; Bybit's own account describes signers seeing a masked interface showing the correct address while the actual request changed control of the cold wallet, with no flaw found in the Safe contracts or frontend source code.