HI

i want to learn to build a website from scratch what do i have to learn to build websites,do i need any programs