The Internet Archive discovers and captures web pages through many different web crawls.
At any given time several distinct crawls are running, some for months, and some every day or longer.
View the web archive through the Wayback Machine.
Content crawled via the Wayback Machine Live Proxy mostly by the Save Page Now feature on web.archive.org.
Liveweb proxy is a component of Internet Archive’s wayback machine project. The liveweb proxy captures the content of a web page in real time, archives it into a ARC or WARC file and returns the ARC/WARC record back to the wayback machine to process. The recorded ARC/WARC file becomes part of the wayback machine in due course of time.
# Graphics Programming - Resources for Beginners
All of the information here is sourced from [a tweet thread by Stephanie Hurlburt](https://twitter.com/sehurlburt/status/884470105320468481?s=21), graphics developer and co-founder of [Binomial](http://www.binomial.info/).
This is an introduction to graphics programming, below you will find some suggestions, resources, frameworks, and a list of mentors who can help!
## Pick a Project
- Everyone is different with regards to how they learn. Often though, having a project and goal in mind can be very helpful. For example, "I'm going to build a particle system demo using Vulkan/C++".
- Keep the project simple, especially at first. Focus on learning one technique and keep the rest of the work very easy. Don't try to build a whole game at once. Build a lighting effect or a little fluid/particle sim, or a shader. Keep the scope limited.
- Focus your energy on relevant skills to developing that project or goal and ignore the rest at first. This is good because:
- There's too much to learn all at once
- Focusing on skills you need to build things as opposed to theory is important
- Building demos can help you get jobs more easily than anything else
- As you build a project or demo, post updates and post the source on Github. This can be a great way to meet people and get visibility for your work, get hired, etc. And you'll help teach other beginners as well.
- Scanning the latest SIGGRAPH papers can give you an idea of what kind of work is interesting to graphics researchers.
## Beginning Resources
Here are some great beginner friendly resources:
- [Casual introduction to graphics programming by Stephanie](http://stephaniehurlburt.com/blog/2016/10/28/casual-introduction-to-low-level-graphics-programming)
- [Graphics Programming Workshop](https://www.slideshare.net/StephanieHurlburt/graphics-programming-workshop)
- [Introduction to VR Graphics](https://docs.google.com/presentation/d/1yJSQy4QtcQxcMjr9Wj6kjMd2R1BLNA1mUebDtnaXDL8/edit?usp=sharing)
- [Introduction to C++ Graphics](https://docs.google.com/presentation/d/1d0StEQMEdz4JUEHXfTPbwKIGYex2p5Mko1Rj66e5M80/edit)
- [Blog series, "Graphics in Plain Language"](https://renderdoc.org/blog/Graphics-in-Plain-Language/)
- [Online book is an amazing introduction to shaders](https://t.co/QceyuUglwC)
- [Monster list of graphics resources](http://kesen.realtimerendering.com/)
- [@CasualEffects's Graphics Codex excellent resource](http://graphicscodex.com/)
- [Math for Graphics Programmers](https://www.amazon.com/Foundations-Game-Engine-Development-Mathematics/dp/0985811749/ref=asap_bc?ie=UTF8)
- [GPU Performance for Game Artists by @keithoconor](http://fragmentbuffer.com/gpu-performance-for-game-artists/)
- [@Peter_shirley's Raytracing in One Weekend](https://www.amazon.com/Ray-Tracing-Weekend-Minibooks-Book-ebook/dp/B01B5AODD8)
If you're a graphics coder reading this wondering how you can host a workshop too, [check out this guide](http://stephaniehurlburt.com/blog/2016/11/1/guide-to-running-technology-workshops).
## Graphics Frameworks
Here are a few great frameworks for graphics:
- [Beginner friendly library, Processing](https://processing.org/tutorials/)
- [GLSLSandbox is a beginner-friendly shader library](http://glslsandbox.com/)
- [Cinder Framework](https://libcinder.org/docs/guides/opengl/index.html)
- [BGFX Graphics Framework](https://github.com/bkaradzic/bgfx)
## Find a Mentor!
Stephanie [maintains a mentor list](http://stephaniehurlburt.com/blog/2016/11/14/list-of-engineers-willing-to-mentor-you) with many graphics programmers. They all love helping others, so feel free to reach out to them!
## More Advanced
- ["A trip through the graphics pipeline" by @rygorous](https://fgiesen.wordpress.com/2011/07/09/a-trip-through-the-graphics-pipeline-2011-index/)
- [Resources on advanced GPU optimization and documentation](https://github.com/g-truc/sdk/tree/master/documentation/hardware/amd/Southern%20Islands)
- [Destiny's Multithreaded Rendering Architecture by @mirror2mask](https://www.gdcvault.com/play/1021926/Destiny-s-Multithreaded-Rendering)
## Relation to Math
An important point: The vast majority of graphics coders don't know math very well. Don't be scared away if you aren't a math person.
- The source of this is a [a tweet thread by Stephanie Hurlburt](https://twitter.com/sehurlburt/status/884470105320468481?s=21), graphics developer and co-founder of [Binomial](http://www.binomial.info/).