Skip to content

Instantly share code, notes, and snippets.

@JaredRoth
Last active April 20, 2016 20:06
Show Gist options
  • Save JaredRoth/0b4b2731f099c889c6a23367e376b883 to your computer and use it in GitHub Desktop.
Save JaredRoth/0b4b2731f099c889c6a23367e376b883 to your computer and use it in GitHub Desktop.
  • What does it mean to concatenate files? Find an image of an example concatenated file. Why would we want to concatenate files?
  • Collect the contents of multiple files into one file. - So that the browser has to make fewer requests.
  • What does it mean to precompile files? What does this have to do with coffeescript and sass files?
  • I believe it is the process of taking a secondary language and compiling it into a web standard language. CoffeScript and Sass are languages that comile into JS and CSS.
  • What does it mean to minify files? Find an image of an example minified file. Why would we want to minify files?
  • It removes whitespace and other file-size "fluff" - We do this to reduce load times.
  • Start up the server for Catch 'em All (rails s) and navigate to http://localhost:3000/assets/application.js. Then open up the code for application.js in your text editor. Why are these not the same?
  • The file we see online is a concatenated file of all the javascript in the project
  • What is a manifest (in terms of the asset pipeline)? Where can you find two manifests in Catch 'em All?
  • A manifest determines which files get concatenated. app/assets/javascripts/application.js & ...stylesheets/application.css.scss
  • In regular HTML files, we bring in css files with . How is this done in a Rails project? Where do you see this line in Catch 'em All?
  • stylesheet_link_tag in application.html.erb
  • How is a digest/fingerprint used on the assets for caching purposes?
  • Not sure
@Carmer
Copy link

Carmer commented Apr 20, 2016

👍

The fingerprint is generated as a MD5 digest of the content of said file, so if the file changes, the hash will change and the cache will be triggered to invalidate

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment