All resources and notes from the The Complete Junior to Senior Web Developer Roadmap
- The Complete Junior to Senior Web Developer Roadmap
Windows:
Use PuTTY: https://mediatemple.net/community/products/dv/204404604/using-ssh-in-putty-
Windows 10: https://www.howtogeek.com/336775/how-to-enable-and-use-windows-10s-built-in-ssh-commands/
Extra:
- https://www.ssh.com/ssh/putty/windows/
- https://www.memset.com/docs/server-security/secure-communication-ssh/using-ssh-windows/
Linux:
You should be able to use the ssh command already, but in case you can't:
https://www.makeuseof.com/tag/beginners-guide-setting-ssh-linux-testing-setup/
More information on apt-get : https://help.ubuntu.com/community/AptGet/Howto
More information on rsync : https://www.tecmint.com/rsync-local-remote-file-synchronization-commands/
https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-16-04
Want to learn more about Asymmetric Encryption? Check out these extra videos :
https://www.youtube.com/watch?v=NmM9HA2MQGI
https://www.youtube.com/watch?v=Yjrfm_oRO0w
https://www.youtube.com/watch?v=vsXMMT2CqqE&t=
https://www.youtube.com/watch?v=NF1pwjL9-DE
Also, if you are on Windows, you may have to use GitBash instead of Powershell. Here are the steps that a fellow student followed:
- Download, install and open Git Bash - the link is provided at the end of the video.
- Type
ssh-agent bash
and press Enter. - Type
ssh-add ~/.ssh/id_rsa_digitalocean
and press Enter. You should get confirmation of Identity added. - Try connecting to your digital ocean account again via SSH. Now it shouldn't ask you for the password!
Recommended ssh-keygen
command:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
Windows:
If you have Git for Windows (which you should), ssh-keygen command should be available: https://gitforwindows.org/
You can read more about this here:
https://stackoverflow.com/questions/11771378/ssh-keygen-is-not-recognized-as-an-internal-or-external-command
Another option is to use https://www.ssh.com/ssh/putty/windows/puttygen
pbcopy
command: https://superuser.com/questions/472598/pbcopy-for-windows/1171448#1171448
Extra Video:
If you want to learn a little bit more about how SSH works internally, watch this excellent video: https://youtu.be/ORcvSkgdA58
Here is a great visual guide created by a fellow student if you are still having problems solving this exercise (especially on Windows):
https://github.com/antonykidis/Setup-ssh-for-github/blob/master/Setup-ssh-on-github.pdf
Frontend:
- Critical Render Path
- Optimized Code
- Progressive Web App
Network:
- Minimize Files
- Minimize Delivery
Backend:
- CDNs
- Caching
- Load Balancing
- DB Scaling
- GZIP
- Minimize Text (JS, CSS, HTML)
- Minimize Images (JPG)
- JPG: Usually used for photos, images with no transparency.
- GIF: Limited number of colors and used for small animations.
- PNG: Limited number of colors, usually used for logos and can add transparency.
- SVG: Vector graphics with small size and greatly scalable.
https://99designs.com/blog/tips/image-file-types/
https://www.sitepoint.com/gif-png-jpg-which-one-to-use/
Additionally, here are some extra resources:
https://css-tricks.com/snippets/css/media-queries-for-standard-devices/
- If you want transparency: use a PNG.
- If you want animations: use a GIF.
- If you want colorful images: use a JPG.
- If you want simple icons, logos and illustrations: use SVG.
- Reduce PNG with TinyPNG.
- Reduce JPG with JPEG-optimizer.
- Try to choose simple illustrations over highly detailed photographs.
- Always lower JPEG image quality (30-60%).
- Resize image based on size it will be displayed.
- Display different sized images for different backgrounds.
- Use CDNs like imigx.
- Remove image metadata
https://stackoverflow.com/questions/985431/max-parallel-http-connections-in-a-browser
https://stackoverflow.com/questions/10808109/script-tag-async-defer