I started teaching myself to program about six months ago — I see I registered for CS50 on March 1st. It's been incredibly rewarding. Part of what I love about it is how endless it is: every question leads to more. So for a few days, I decided to write down my web development questions instead of immediately googling them. In another six months I'll do it again and I'll revisit these, which should be neat.
1. What is a webpack loader doing with css that makes it different from link hrefing?
2. What even is caching?
3. What is treeshaking? How good is it?
4. How do I use service workers?
5. When languages create GUIs, what are they using? My only comparison is how javascript uses the DOM.
6. What's the cut-off point for complexity for when you should start incorporating a JS framework?
7. How do javascript components get reused across different pages?
8. Can we minify html the way we can minify css and js?
9. Can we see the load that css animations put on a computer?
10. Why is inheritance hell a thing? How many levels of class could you need?
11. How do shared rooms for messaging and games even work? At 60fps!
12. If Python can be compiled into C, why is Python known for being slow?
13. How does BaaS work? Do you sacrifice speed?
14. What is an apex domain?
15. What are the other BaaS besides netlify?
16. What is the LAMP stack?
17. What are the exact benefits of using a built website over squarespace or wordpress when you don't need much functionality?
18. What exactly is a CDN? What is the point?
19. What are the common security failure points?
20. Are there disadvantages to garbage collection?
21. Why is the 'maximum wait limit' 3 seconds?
22. Is the main issue with having yr very own local server having it on all the time and the electricity costs?
23. Why do people refer to code as 'ergonomic'?
24. What are interfaces in typeface and why do they matter?
25. What fraction of web development solutions are 'hacky'? Will that fraction change in the future? Is it better than in the past?
26. What are these media query 'levels'?
27. What are the advantages of different object creation patterns?
28. What is gzipping? If we zip stuff, does that mean the client has to do the work of unzipping it before using it? If so, is the idea that it's a cost to their data usage but a save to ours?
29. Does caching mean that if a client accesses a framework-based site, when that framework is used on another site the client doesn't have to redownload it? What if they use different versions of the framework?
30. Does using Babel make for longer and thus longer-to-download code? Does supporting IE slow things down for everybody??
31. People talk about how frustrating it is that features of websites that could be entirely html5 are javascript-dependent. Are they whining, or is that a legitimate concern for poor access?
32. A few years ago phones apparently had to do more work to handle javascript. Is that still a thing?
33. Why would that be a thing?
34. Why are nested child selectors in css less efficient than class or id? Is there a winner between class and id?
35. If you're using a local image (or even a foreign image) again and again, is there a more efficient method than requesting it with src in each element?
36. How does supporting different languages work? Does all your text have to access variables from language files?
37. What the heck is a curry function!
38. What are 'host objects' and 'native objects'?
39. What's up with this CORS thing? Why can I easily scrape with Python, but get blocked when scraping via JS / a browser?
40. Does SEO ever lead to worse user experience?
Now to google…