# Learning to Program All credit to [How to Code a Website: A Step-by-Step Guide](https://bootcamp.cvn.columbia.edu/blog/how-to-code-a-website/#1636662022939-9c521214-7fc2) by To build websites, you can use web developers like WordPress but they'll cost you - so I'll do it myself ## 9 Steps to Building a Website from Scratch 1. Define Your Site - Mission Statment + Inviting Home Page 2. Choose a Server and Domain Name - Be simple and clear (aydencavill.com) - Pick correct domain for purpose of my site - [Better Business Bureau](https://www.bbb.org/) - $2-$20 a year for a domain name 3. Learn Web Development Languages - HTML (Hypertext Machine Language): determines where elements are placed on page - 'hypertext' refers to links that connect pages - 'markup' feature is to explain elements of each page - elements are defined by 'tags' - includes instrucion btwn '<>' punctuation ``` <a>: link <body>: body of a document <div>: section of a document <header>: header of a document <p>: paragraph <title>: document title <img>: image ``` - web pages are built by turning these tags into code - CSS: styles page - including colors, fonts, overall aesthetic - "Properties, rules, and selectors are among the first things you’ll learn in CSS" - Selectors pinpoint HTML element that is being styled - [a sound beginner’s guide](https://developer.mozilla.org/en-US/docs/Learn/CSS) - Java - the most used web programming language for 9 consecutive years - "...brings websites to life, adding interactive elements, animations, photo slideshows, automated survey forms, and much more" but more challenging - some similar terminology as python - [become a front end developer](https://bootcamp.cvn.columbia.edu/blog/become-a-front-end-developer/) - Python - Considered relatively easy to learn, relies on English keywords + recognizable syntax - Google + Youtube employ it - Another developer built large online pharmacy w Python 5. Use [Bootstrap](https://getbootstrap.com/) - "a feature-rich framework that shortens and eases the process of website-building" - Created at Twitter - "contains a collection of prebuilt CSS and JavaScript code that developers can paste directly into their programs" - "Developers also can download prebuilt website themes, dashboards, and a host of other components" 7. Choose Your Design - "Websites should be bright, engaging, and easy to use" - Can start w templates from WordPress, Bootstrap, etc. 9. Create a Sitemap - Every site needs one to list supporting pages and subpages Example: ![](https://i.imgur.com/jYWU6jd.png) 11. Add Content and Images - Add your best, most current content - Don't overload - Update regularly - Users value experience 13. Optimize for SEO (Search Engine Optimization) - Internet ranking system - The better its SEO performance, the higher it'll rank on internet searches - Steps to boost performance 1. Make sure to have relevant key words throughout site 2. "Every page should have a title and description, and images should carry captions" 3. Research terms + phrases users search + apply them to your website - "For instance, if you’re opening a flower shop in New York, make your site relevant to searches for “Best flower shops in New York,” or “New York flower shops with free delivery.” - [SEO Starter Guide](https://developers.google.com/search/docs/beginner/seo-starter-guide) 15. Optimize Your Site for Mobile Use - Over 1/2 web traffic is delivered to mobile devices - Responsive Design: adjusts content to match user's screen size - WordPress + others have templates to retrofit - [Mobile-Friendly Test Tool](https://support.google.com/webmasters/answer/6352293?hl=en)