Applied Metaphors: Learning TRIZ, Complexity, Data/Stats/ML using Metaphors
  1. Teaching
  2. Data Analytics for Managers and Creators
  3. Workflow
  4. I Publish, therefore I Am
  • Teaching
    • Data Analytics for Managers and Creators
      • Tools
        • Introduction to R and RStudio
        • Introduction to Radiant
        • Introduction to Orange
      • Descriptive Analytics
        • Data
        • Summaries
        • Counts
        • Quantities
        • Groups
        • Densities
        • Groups and Densities
        • Change
        • Proportions
        • Parts of a Whole
        • Evolution and Flow
        • Ratings and Rankings
        • Surveys
        • Time
        • Space
        • Networks
        • Experiments
        • Miscellaneous Graphing Tools, and References
      • Statistical Inference
        • 🧭 Basics of Statistical Inference
        • 🎲 Samples, Populations, Statistics and Inference
        • Basics of Randomization Tests
        • 🃏 Inference for a Single Mean
        • 🃏 Inference for Two Independent Means
        • 🃏 Inference for Comparing Two Paired Means
        • Comparing Multiple Means with ANOVA
        • Inference for Correlation
        • 🃏 Testing a Single Proportion
        • 🃏 Inference Test for Two Proportions
      • Inferential Modelling
        • Modelling with Linear Regression
        • Modelling with Logistic Regression
        • 🕔 Modelling and Predicting Time Series
      • Predictive Modelling
        • 🐉 Intro to Orange
        • ML - Regression
        • ML - Classification
        • ML - Clustering
      • Prescriptive Modelling
        • 📐 Intro to Linear Programming
        • 💭 The Simplex Method - Intuitively
        • 📅 The Simplex Method - In Excel
      • Workflow
        • Facing the Abyss
        • I Publish, therefore I Am
      • Case Studies
        • Demo:Product Packaging and Elderly People
        • Ikea Furniture
        • Movie Profits
        • Gender at the Work Place
        • Heptathlon
        • School Scores
        • Children’s Games
        • Valentine’s Day Spending
        • Women Live Longer?
        • Hearing Loss in Children
        • California Transit Payments
        • Seaweed Nutrients
        • Coffee Flavours
        • Legionnaire’s Disease in the USA
        • Antarctic Sea ice
        • William Farr’s Observations on Cholera in London
    • R for Artists and Managers
      • 🕶 Lab-1: Science, Human Experience, Experiments, and Data
      • Lab-2: Down the R-abbit Hole…
      • Lab-3: Drink Me!
      • Lab-4: I say what I mean and I mean what I say
      • Lab-5: Twas brillig, and the slithy toves…
      • Lab-6: These Roses have been Painted !!
      • Lab-7: The Lobster Quadrille
      • Lab-8: Did you ever see such a thing as a drawing of a muchness?
      • Lab-9: If you please sir…which way to the Secret Garden?
      • Lab-10: An Invitation from the Queen…to play Croquet
      • Lab-11: The Queen of Hearts, She Made some Tarts
      • Lab-12: Time is a Him!!
      • Iteration: Learning to purrr
      • Lab-13: Old Tortoise Taught Us
      • Lab-14: You’re are Nothing but a Pack of Cards!!
    • ML for Artists and Managers
      • 🐉 Intro to Orange
      • ML - Regression
      • ML - Classification
      • ML - Clustering
      • 🕔 Modelling Time Series
    • TRIZ for Problem Solvers
      • I am Water
      • I am What I yam
      • Birds of Different Feathers
      • I Connect therefore I am
      • I Think, Therefore I am
      • The Art of Parallel Thinking
      • A Year of Metaphoric Thinking
      • TRIZ - Problems and Contradictions
      • TRIZ - The Unreasonable Effectiveness of Available Resources
      • TRIZ - The Ideal Final Result
      • TRIZ - A Contradictory Language
      • TRIZ - The Contradiction Matrix Workflow
      • TRIZ - The Laws of Evolution
      • TRIZ - Substance Field Analysis, and ARIZ
    • Math Models for Creative Coders
      • Maths Basics
        • Vectors
        • Matrix Algebra Whirlwind Tour
        • content/courses/MathModelsDesign/Modules/05-Maths/70-MultiDimensionGeometry/index.qmd
      • Tech
        • Tools and Installation
        • Adding Libraries to p5.js
        • Using Constructor Objects in p5.js
      • Geometry
        • Circles
        • Complex Numbers
        • Fractals
        • Affine Transformation Fractals
        • L-Systems
        • Kolams and Lusona
      • Media
        • Fourier Series
        • Additive Sound Synthesis
        • Making Noise Predictably
        • The Karplus-Strong Guitar Algorithm
      • AI
        • Working with Neural Nets
        • The Perceptron
        • The Multilayer Perceptron
        • MLPs and Backpropagation
        • Gradient Descent
      • Projects
        • Projects
    • Data Science with No Code
      • Data
      • Orange
      • Summaries
      • Counts
      • Quantity
      • 🕶 Happy Data are all Alike
      • Groups
      • Change
      • Rhythm
      • Proportions
      • Flow
      • Structure
      • Ranking
      • Space
      • Time
      • Networks
      • Surveys
      • Experiments
    • Tech for Creative Education
      • 🧭 Using Idyll
      • 🧭 Using Apparatus
      • 🧭 Using g9.js
    • Literary Jukebox: In Short, the World
      • Italy - Dino Buzzati
      • France - Guy de Maupassant
      • Japan - Hisaye Yamamoto
      • Peru - Ventura Garcia Calderon
      • Russia - Maxim Gorky
      • Egypt - Alifa Rifaat
      • Brazil - Clarice Lispector
      • England - V S Pritchett
      • Russia - Ivan Bunin
      • Czechia - Milan Kundera
      • Sweden - Lars Gustaffsson
      • Canada - John Cheever
      • Ireland - William Trevor
      • USA - Raymond Carver
      • Italy - Primo Levi
      • India - Ruth Prawer Jhabvala
      • USA - Carson McCullers
      • Zimbabwe - Petina Gappah
      • India - Bharati Mukherjee
      • USA - Lucia Berlin
      • USA - Grace Paley
      • England - Angela Carter
      • USA - Kurt Vonnegut
      • Spain-Merce Rodoreda
      • Israel - Ruth Calderon
      • Israel - Etgar Keret
  • Posts
  • Blogs and Talks

On this page

  • Setting up Git and GitHub
  • Linking RStudio and GitHub (One Time Only)
  • Creating your Blog Project in RStudio (One Time Only)
  • Making your Blog ready to publish (Now, and every time you have new content)
  • Pushing to GitHub for the First Time
  • Connecting to Netlify
  • Adding Content and Updating
  • Workflow Diagram
  • References
  1. Teaching
  2. Data Analytics for Managers and Creators
  3. Workflow
  4. I Publish, therefore I Am

I Publish, therefore I Am

Quarto
Netlify
Github
Author

Arvind V

Published

June 23, 2024

Modified

Invalid Date

Abstract
Putting it all out there on the web

“No matter what happens in life, be good to people. Being good to people is a wonderful legacy to leave behind.”

— Taylor Swift

Setting up Git and GitHub

  1. Windows: Head off https://gitforwindows.org and download and install the git app.

  2. MacOS: In a terminal type:

  • xcode-select --install

This will also install git.

  1. Head off to https://github.com and register for an account. Make a note of your emailID and the password used.

  2. Setup 2FA Authentication for GitHub based on instructions here: https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa

Linking RStudio and GitHub (One Time Only)

  1. In RStudio, in your console:
  • install.packages(usethis)
  • library(usethis)
  • usethis::use_git_config(user.name = "Your Name", user.email = "Your Email ID used on GitHub")
  1. Generate a Personal Access Token(PAT) (One Time Only, usually)
  • usethis::create_github_token()

In the popup window, give your token a logical name you can remember(e.g. “For my Mac”), and remember why you created it. Check the scopes of the PAT; the defaults are OK. Make sure selecting repo, user, and workflow are checked. Save the PAT in your password manager. Default Expiry is 30days; we can set the PAT to not expire too. (I have.)

  1. Let RStudio have your PAT (One Time Only, usually)
  • gitcreds::gitcreds_set() and paste the PAT when asked.
  1. Check if all is OK using one or more of:
  • usethis::gh_token_help()
  • usethis::git_sitrep()
  • gh::gh_whoami()
  1. Check in RStudio if has automatically detected your Git installation.
  • Tools -> Global Options -> Git/SVN

The Git Executable field should be like:

  • Windows: C:/Program Files/Git/bin/git.exe.
  • MacOS:/usr/bin/git
  1. Let RStudio know which project branch to commit/push to GitHub. ( Default is “main”)
  • usethis::git_default_branch_configure()

Creating your Blog Project in RStudio (One Time Only)

In the upper right corner of RStudio, click on:

Project -> New Project -> New Directory -> Quarto Blog

Name your Blog, browse to where you want the Blog Project Folder (default is fine). Check the Create a git repository. Click Create Project.

RStudio will restart with a new Blog Project. The Files pane should like this:

The posts folder contains dummy blog posts, which you can retain for now and delete once your own content has matured.

Making your Blog ready to publish (Now, and every time you have new content)

In your Terminal:

  • quarto render This will render all posts and prepare _site and _freeze folders in your Files tab. Check these.
  • quarto preview This will pop up your browser and show you a preview of your Blog website. Check the look and feel, the typos.

Pushing to GitHub for the First Time

In your Console:

  • usethis::use_git(): This will throw up a funky set of messages asking if you are ready to commit all files to push to Github. Choose the appropriate reply and enter.
  • usethis::use_github(): This will create your new repository on Github and push all the committed files there. Your browser will open in Github and show you the contents of your new Blog repository.

Connecting to Netlify

  1. Head off to https://www.netlify.com. Log in there with Github.

  2. Click Add new site -> Import from existing project

  1. Choose Github, then point to your Blog Github repo.

  2. Give your Blog site a name: something-idiotic.netlify.app. Check Availability. (Note: netlify.app at the end is not removable, if you want free web-hosting at netlify)

  3. Ensure that the branch says main, and that the Publish directory says _site.

  4. Hit Deploy. Netlify will ta ke a few minutes and then say the site is deployed. Click on the URL.

  5. There!

Adding Content and Updating

  1. Create a new folder inside your posts folder. Name it something like new-post-todays-date. Hyphens only, no underscores.

  2. Create a new Quarto Document:

  • File -> New-File -> New Quarto Document. Save it as index.qmd inside your just-created new-post-todays-date folder.
  1. Edit / Write up your Post. Add pictures, videos, code, visualizations, explanations. Use https://quarto.org to find other Markdown constructs ( tabs , asides, marginal content…) and complete your post.

  2. In your Terminal, run quarto renderto update your _site and _freeze folders.

  3. In your Terminal run quarto preview to check if your new post previews properly.

  4. Instead of using the Terminal, or the Git pane in Rstudio, there is a better way. This is a GUI, and one can see the files, the history of commits/pushes, the commit messages, revert back to a point in history, make brances…all that visually, without some tough-looking git commands:

  • So, install a git client, such as Gitkraken.
  • It offers a ready prompt to log in with Github, accept that, filling in ID and password.
  • Open File ->New tab -> Browse for Repo and browse to your Blog project folder (which is what you open in RStudio)
  • You will a list of previous commits, and a bunch of new edited / changed files which are default labelled WIP. (Work in Progress, peasants)

  • Click on Stage All and type in a memorable commit message in the box below at right.
  • The WIP will be replaced by your commit message.
  • Once staging is done, hit the Push button on the main tool bar.
  • After Gitkraken is done, a brief popup will show stating push was successful.
  • Your website should be updated in a few minutes.

Yeah, peasants, you’re welcome.

Workflow Diagram

References

  1. https://jcoliver.github.io/learn-r/010-github.html

  2. https://info5940.infosci.cornell.edu/setup/git/git-configure/

  3. https://posit-conf-2024.github.io/quarto-websites/

  4. Alice Bartlett. Git for Humans https://speakerdeck.com/alicebartlett/git-for-humans

Back to top

Citation

BibTeX citation:
@online{v2024,
  author = {V, Arvind},
  title = {\textless Iconify-Icon Icon=“entypo:publish” Width=“1.2rem”
    Height=“1.2rem”\textgreater\textless/Iconify-Icon\textgreater{} {I}
    {Publish,} Therefore {I} {Am}},
  date = {2024-06-23},
  url = {https://av-quarto.netlify.app/content/courses/Analytics/Workflow/Modules/30-BlogSite/},
  langid = {en},
  abstract = {Putting it all out there on the web}
}
For attribution, please cite this work as:
V, Arvind. 2024. “<Iconify-Icon Icon=‘entypo:publish’ Width=‘1.2rem’ Height=‘1.2rem’></Iconify-Icon> I Publish, Therefore I Am.” June 23, 2024. https://av-quarto.netlify.app/content/courses/Analytics/Workflow/Modules/30-BlogSite/.
Facing the Abyss
Case Studies

License: CC BY-SA 2.0

Website made with ❤️ and Quarto, by Arvind V.

Hosted by Netlify .