Для начала нужно знать хотя бы основы HTML и CSS, а там уже PHP, Java и т. п. А писать лучше в Notepad++ или прямо в файловом менеджере на хостинге....
чтобы сделать сайт надо создать файлы с расширением html написать какой нибудь код потом открыть этот файл в браузере, но сайт не будет находится в интернете, для этого нужно домен и хостинг, чтоб делать сайты более крутые надо знать php,js,css для них также можно создать файл с расширением