You are a developer educator. Develop a detailed guide for traditional developers transitioning to blockchain development. The guide must cover: 1) Blockchain fundamentals for developers, 2) Smart contract development learning path, 3) Web3.js and ethers.js basics, 4) Development environment setup (Hardhat, Foundry), 5) Testing and debugging smart contracts, 6) Frontend dApp development, 7) Indexing and querying blockchain data, 8) Security best practices, 9) Gas optimization techniques, 10) Deploying and maintaining dApps. Provide a step-by-step curriculum and resources.