Posts

  • Compass & SCSS »

    Things learned today:

    • Word of the day: Emulsion- A mixture of two liquids that are normally unmixable. An emulsifier stabilizes the emulsion and the liquids remain mixed.
    • There is a theme park in Italy made mostly by one man.
    • Mintty seems to be the current best terminal emulator for Cygwin.
    • Normalize.css helps to make different browsers render content more consistently.
    • Three.js is a library for making cool 3D stuff in browser with WebGL.
    • Visualizing your git repository.
    • Managing multiple deploy environments using Github Pages, useful for maintaining dev and prod.
      • For personal site, in prod: git remote add dev ../dev
      • To update prod: git pull dev master
    • An organizational structure for your Sass files called SMACSS.
    • When using Sass, you can have it watch:
      • A specific file- sass --watch input.scss:output.css
      • A directory- sass --watch dev/scss:dev/stylesheets
    • Started using Compass today.
      • Start project- compass create, watch project- compass watch &
    • Bourbon is a popular but slightly different alternative to Compass. One primary goal of both is to provide a consistent experience across browsers.
    • Example portfolio sites using Bootstrap for inspiration. The resume section has less competition than portfolios, although total purchases and average prices are lower. Examining in order of number of total sales.
      • Articulate- Call to action and ways to connect immediately visible. Subtle gradient change between sections, with contact section very different. Translucent hovering top bar.
      • MStone- Better font, no carousel at top. Name in top bar.
      • 3ColorResume- Use of color, timeline for education. Different style that is not well represented on WrapBootstrap.
      • Transition- Unique 4-panel layout. Subtle visual hover effect on quadrant.
      • CVilized- The header is pretty nice. The side widget is neat (although not part of the site).
      • SeventyFour- Arrow pointing down from header image. Middle section cutout.
      • Conclusions: In the top bar, include place on page and contact button. Try using cutouts to divide the page.
  • Learning Git »

    Things learned today:

    • Word of the day: Pecuniary - Relating to money. From the Latin word for money, pecunia, which itself is from cattle.
    • Gestalt psychology is used in logo creation sometimes to create positive associations with the brand.
    • The phone and mimeograph both rose in popularity at the same time. Maybe this was not a coincidence, as communication typically leads to a need for more rather than less.
    • Treat strangers like friends, remain organized, make your bed.
    • Git from the inside out - an exploration of how git works.
      • Excerpts: Generally, there are few content changes from commit to commit. This means that Git can store large commit histories in a small amount of space.
      • The current branch is stored in the HEAD file at .git/HEAD via ref. Checking out a commit sets HEAD to the hash of that commit.
    • Useful git aliases to speed up workflow.
    • Documentary on the Barkley 100.
    • Learning the Web tutorials on the MDN.
    • A look at why the Doom 3 source code (written in C++) is an example of great code.
    • A clean design is one that supports visual thinking so people can meet their informational needs with a minimum of conscious effort.
    • JS learning resource: Eloquent Javascript and the new annotated version.
    • Cloud66 is an alternative to Heroku that allows you to plug into Digital Ocean, AWS, Linode, Google Cloud, where Heroku locks you into their platform.
    • Recovering sound from high speed video.
    • Interviews with founders of major startups in 2010.
    • From the origins of the white collar worker:
      And so unlike “solidarity,” the key word of the European industrial labor movement that had made its way to England and America, the ethic that began to take hold among clerks was that of “self-improvement.” Clerical workers were uprooted from the close-knit world of families and farms, where knowledge was passed down from father to son. Other clerks were merely their competition; they had no one to rely on but themselves. “The man who does not at least propose to himself to be better this year than he was last must be very good or bad indeed,” wrote the merchant’s clerk Edward Tailer in his diary entry on New Year’s Day 1850. There is, he continued, “no such thing as a stationary point in human endeavors; he who is not worse to day than he was yesterday is better; and he who is not better is worse.”
  • CSS Positioning »

    Things learned today:

    • Word of the day: Sprezzatura - A certain nonchalance, so as to conceal all art and make whatever one does or says appear to be without effort and almost without any thought about it.
    • Some tips on CSS positioning from Youtube.
      • By default, elements will have position: static and all directions set to auto. You can check on this by looking at the Computed tab of dev tools.
      • Relatively positioned elements will create a gap by default, as the flow of statically positioned elements will not move.
      • An absolutely positioned element will be relative to the next parent element that is not static.
      • Setting both the left and right directional properties stretches the element across the screen.
      • Fixed positioning is good for headers or shopping carts since it will always remain on screen.
      • Floating elements (left usually) is important for responsive design, and typically requires a clear either by adding clear:both to a final div or via this clearfix hack on the container.
      • There are a few ways to center elements with CSS.
        • text-align: center on container and display: inline-block on element
        • margin: auto on element
        • left: 50% and margin-left: -X px on element
        • With flexbox, justify-content: center
      • According to DevTips, SASS > SCSS and LESS. It is less verbose, but requires learning new syntax. This opinion is contested.
      • Jade is a templating language for HTML, and can help make markup a lot easier to read and write.
        • No more carets needed, and divs can be replaced with just the class or id.
  • Javascript Ch. 2 »

    Things learned today:

    • Word of the day: Paraprosdokian - A figure of speech in which the latter part of a phrase is surprising in a way that causes the listener to reinterpret the first part.
    • Graph the ratings of any TV show on IMDB.
    • React seems pretty simple to use- you basically just stick all of your HTML into React components. It is a more modular way of developing, which means that it makes a website more maintainable long term. However, it could be unnecessary for simple pages where you don’t want to invest in a server.
    • Efficient approach to reservoir sampling (Taking a random sample from a large number of records).
    • Deep links are links to specific pieces of content rather than homepages.
    • GitLab is an alternative to GitHub if you want to self-host your content.
    • Original call site is what matters for this binding in JS.
    • Hard binding is a form of explicit binding that allows you to force a function call to use a particular object for this binding. It’s a built in utility as of ES5. Summary of this binding rules here.
    • Currying is when you break down a function that takes multiple arguments into a series of functions that take part of the arguments. It enables higher order functions to be used much more effectively and concisely. If you plan to do this in Javascript, the safe way is to create a null object to use to avoid any problems with this.
    • It’s a common mis-statement that “everything in JavaScript is an object”. The simple primitives (string, boolean, number, null, and undefined) are not themselves objects. There are also constructed object versions of these, but using the literal form (primitive) is preferred. The engine will turn these into constructed objects for property/method access.
  • Intro to R »

    Things learned today:

    • Emacs tutorial: M-x help-with-tutorial
    • Learning about R today to look at crude oil data over the past year. I wanted to see if there was an opportunity to invest in airlines after crude prices had started to fall.
    • File extensions aren’t necessary to run scripts (Python, R, etc.), they are a convention.
    • REPLs are useful for exploratory programming because of their quick feedback.
    • R Cheatsheet:
      • q() - Quit REPL
      • list.files() - ls
      • source(“filename”) - Run program
      • install.packages(“packagename”), update.packages()
      • Assign variables via <-
      • c() - Create a new vector (array). Vector indices start at 1.
      • Rscript - Run program without entering REPL.
      • Graphs generated in the REPL appear immediately in Quartz, and from rscript are saved as PDFs.
      • RStudio seems like the best R-specific IDE right now. Ggplot2 is a good way to create visualizations.
subscribe via RSS