Skip to content

Commit acef271

Browse files
committed
fix: titles, descriptions, imgs, headings
1 parent 44725ab commit acef271

15 files changed

+56
-40
lines changed

_config.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
# Site settings
2-
title: Blog by Derek Croote
2+
title: Derek Croote
33
motto: Science, engineering, and data. Sometimes with humor.
44
author:
55
name: Derek Croote
66
twitter: DerekCroote
77
88
baseurl: ""
99
url: "https://www.derekcroote.com"
10-
github_username: dcroote
10+
github_username: dcroote
1111
twitter_username: DerekCroote
1212
twitter:
1313
username: DerekCroote
1414
card: summary_large_image
15-
description: Tutorials and thoughts on science, technology, engineering, and data from Derek Croote.
15+
description: Tutorials and thoughts on science, technology, engineering, and data.
1616

1717
# Build settings
1818
markdown: kramdown

_posts/2019-07-31-high-quality-supplement-supporting-information.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,27 @@
11
---
22
layout: post
3-
title: High quality vector graphics in Microsoft Word for Supplementary / Supporting Information
3+
title: High quality vector graphics in Microsoft Word
44
image: images/vector_vs_raster.svg
55
image-alt: Comparing vector and raster formats
66
last_modified_at: 2020-12-12 10:43:06 -0800
77
comments: false
8+
description: Use Enhanced MetaFile (.emf) format to embed high quality vector graphics in Microsoft Word
89
---
910

1011
## Background
12+
1113
To maintain quality, integrity, and aesthetics, vector graphic formats such as PDF or EPS are generally preferred for artwork and data visualizations over raster (pixel-based) formats such as png, gif, or jpeg. The reason becomes especially apparent at high magnification. As shown in the extreme example below, vector formats maintain smooth curves (left), while raster formats become pixelated (right).
1214

1315
<img class="centered_img" src="/images/vector_vs_raster.svg" alt="[img] Vector graphic compared to raster graphic" />
1416

1517
There are many reasons to want high quality graphics embedded in a document; my issue was that unlike the main article of a peer-reviewed scientific publication, the Supplementary / Supporting Information is often not edited for style or typeset by the journal. This leaves the author responsible for incorporating supplementary figures as high quality graphics.
18+
1619
## Challenge
20+
1721
Microsoft Word does not allow PDF or ([as of April 11, 2017](https://support.office.com/en-us/article/support-for-eps-images-has-been-turned-off-in-office-a069d664-4bcf-415e-a1b5-cbb0c334a840)) EPS files to be embedded in a document.
1822

1923
## Solutions
24+
2025
The most appealing solution for users of Microsoft Word: Export graphics in the Enhanced MetaFile `.emf` format using Adobe Illustrator or Inkscape and `Insert` them as Pictures in Word. When the Word document is then saved as a PDF, the graphics are rendered appropriately in a high-quality, vector format.
2126

2227
Alternatively, LaTeX can be used to generate a PDF that contains the supplementary text, figures, and captions. For an idea of how this can be done, see my GitHub [Stanford LaTeX thesis template](https://github.com/dcroote/stanford-thesis-example) repository. Understandably, however, this may be too much effort and may not be compatible with an iterative revision process with coauthors unfamiliar with LaTeX.
23-

_posts/2019-08-31-cleaning-a-garlic-press.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ I have a cheap garlic press, which means that after each use garlic is stuck in
1717

1818
## CAD model
1919

20-
This is a simple design consisting of an extruded base and an array of posts (extruded circles). There are 7 rows of 9 posts, with alternating rows offset from one another. The full model is [available on Onshape](https://cad.onshape.com/documents/cb2f7780bde13603780e855c/w/8bb77d57f5a67c7b4d3e95ad/e/037f1c0159a5ebba17e23b8f), which is a free online service if you don't mind your designs being public.
20+
This is a simple design consisting of an extruded base and an array of posts (extruded circles). There are 7 rows of 9 posts, with alternating rows offset from one another. The full model is [available on Onshape](https://cad.onshape.com/documents/cb2f7780bde13603780e855c/w/8bb77d57f5a67c7b4d3e95ad/e/037f1c0159a5ebba17e23b8f), which is a free online service if you don't mind your designs being public.
2121

2222
[![CAD sketch and rendering](/images/garlic_press/cad_combined.png "Click for a larger version")](/images/garlic_press/cad_combined.png)
2323

_posts/2020-05-09-cold-brew.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ Yes, I caved and bought an actual chemistry stir plate. The cold brew coffee had
3737
Finally, on to the cold brew coffee itself. There are an enormous number of variables at play here, including the bean varietal, country of origin, roast, grind size, coffee to water ratio, and brew time. While Design of Experiments techniques could have lent statistical rigor to the evaluation of input variability, my global optimization approach better resembled explore and exploit,<sup>2</sup> where the former took precedence initially as I sampled somewhat randomly (finely ground light roast not advised!) and the latter takes precedence today now that I've reached somewhere near a local optimum. I suggest medium to dark roast Arabica beans, 12 hours of brewing, a coarse grind with a burr grinder, and a ratio of 15:1 water to beans. Filter and enjoy on ice!
3838

3939
### Footnotes
40+
4041
<ol style="font-size: 0.9em">
4142
<li>Moroney, K. M., Lee, W. T., Suijver, F., & Marra, J. (2015). Modelling of coffee extraction during brewing using multiscale methods: An experimentally validated model. Chemical Engineering Science, 137, 216-234. doi: 10.1016/j.ces.2015.06.003</li>
4243
<li>Explore / exploit is highlighted in the fascinating read Algorithms to Live By, which, amusingly, also provides 'caching' as justification for not throwing laundry in the laundry basket.</li>

_posts/2020-09-06-github-actions-from-travis.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,29 +12,35 @@ GitHub Actions should simplify continuous integration (CI) for public repositori
1212
<img src="/images/github_actions/travis_to_github_actions.png" alt="Migrate to GitHub Actions from Travis CI" class="centered_img" width="606" height="303" />
1313

1414
## The test repository
15+
1516
After writing my PhD thesis in LaTeX, I published a thesis template designed to help others save time. In this [Stanford LaTeX Thesis Example repository](https://github.com/dcroote/stanford-thesis-example), I use CI to compile a PDF and upload it as a Release asset so that the PDF available for download from the README always corresponds to the latest Release version.
1617

1718
## Previous implementation
19+
1820
[Previously](https://github.com/dcroote/stanford-thesis-example/blob/aa4d62bb17849f89c460a47ce88b5c5f05586054/.travis.yml), I used Travis CI to pull a Docker image and compile a PDF from LaTeX source files. For tagged commits, a distinct GitHub account with write privileges to the repository (a [Machine user](https://developer.github.com/v3/guides/managing-deploy-keys/#machine-users)) then uploaded the compiled PDF as a Release asset. Using Docker within Travis CI to compile the PDF worked well, but having to create a new GitHub account for the sole purpose of deploying to GitHub Releases, as is [recommended for security purposes](https://docs.travis-ci.com/user/deployment-v2/providers/releases/#authenticating-with-an-oauth-token), was not ideal and further required the [Travis gem to encrypt a personal access token](https://docs.travis-ci.com/user/environment-variables#defining-encrypted-variables-in-travisyml).
1921

2022
## Current implementation (2020/09/06)
23+
2124
You can view the [full workflow on GitHub](https://github.com/dcroote/stanford-thesis-example/blob/2f89058fbc73e9887c659ed1197b73fce7d9333a/.github/workflows/build.yml) (note that this URL points to the current commit as of this writing and not the master branch). Currently, two sequential jobs within a single GitHub Actions workflow mirror the two steps in the previous implementation: compilation and Release asset upload. Using two jobs within one workflow rather than two distinct workflows avoids performing the compilation step twice; however, an `if` conditional within the second job is necessary to limit its execution to only when the workflow is triggered by a tagged commit (rather than, for example, a PR). The two jobs consist of the following steps:
2225

2326
**(1)** Triggered by a push or pull request (PR), the first workflow job compiles the PDF from source and uploads it as a build artifact. The job's four steps are:
27+
2428
1. Checkout source code using the [Checkout](https://github.com/marketplace/actions/checkout) GitHub Action.
25-
2. Compile the LaTeX PDF file using the Marketplace Action: [GitHub Action for LaTeX](https://github.com/marketplace/actions/github-action-for-latex) by `xu-cheng`.
29+
2. Compile the LaTeX PDF file using the Marketplace Action: [GitHub Action for LaTeX](https://github.com/marketplace/actions/github-action-for-latex) by `xu-cheng`.
2630
3. Rename the compiled PDF using a bash shell. Note that this isn't strictly necessary, but retaining the PDF filename allowed me to maintain backwards compatibility.
2731
4. Upload the PDF as an artifact using the [Upload a Build Artifact](https://github.com/marketplace/actions/upload-a-build-artifact) GitHub Action. This Action allows data to persist beyond the lifetime of the job and in my case allows the PDF to be inspected, for example to evaluate changes from a PR.
2832

2933
**(2)** For a PR or an untagged commit, the GitHub Actions workflow ends here with success or failure. If instead the commit is tagged and the tag starts with `v` (i.e. uses semantic versioning of the form `v#.#.#`), then this job downloads the previously uploaded artifact, creates a draft Release, and uploads the PDF as a Release asset. The three steps are:
34+
3035
1. Download the artifact from the previous job using the [Download a Build Artifact](https://github.com/marketplace/actions/download-a-build-artifact) GitHub Action.
3136
2. Create a draft Release using the [Create a Release](https://github.com/marketplace/actions/create-a-release) GitHub Action. The benefit of GitHub Actions over Travis CI is particularly apparent in this step as the Action automatically provides the appropriate GitHub Token for authentication.
3237
3. Upload the PDF as a Release asset. After this succeeds I can add a changelog to the draft Release and publish. The repository's README will then automatically point to this new PDF because the URL uses `latest`: [https://github.com/dcroote/stanford-thesis-example/releases/latest/download/thesis-example.pdf](https://github.com/dcroote/stanford-thesis-example/releases/latest/download/thesis-example.pdf).
3338

3439
If you have suggestions for improving the workflow, let me know!
3540

3641
## Helpful resources:
42+
3743
- GitHub Docs on: [Workflow syntax reference for GitHub Actions](https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions), especially the job [if conditional](https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idif)
3844
- GitHub Docs on: [Persisting workflow data using artifacts](https://docs.github.com/en/actions/configuring-and-managing-workflows/persisting-workflow-data-using-artifacts)
3945
- GitHub Docs on: [Context and expression syntax for GitHub Actions](https://docs.github.com/en/actions/reference/context-and-expression-syntax-for-github-actions)
40-
- Stack Overflow: [github actions: how to check if current push has new tag (is new release)?](https://stackoverflow.com/a/58478262)
46+
- Stack Overflow: [github actions: how to check if current push has new tag (is new release)?](https://stackoverflow.com/a/58478262)

_posts/2021-12-24-github-pages-custom-domain.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
layout: post
3-
title: Quickly configure a custom Namecheap domain for GitHub Pages
3+
title: Quickly configure a Namecheap domain for GitHub Pages
44
image: images/custom-domain/derekcroote-domain.png
55
image-alt: www.derekcroote.com
66
description: "I recently transitioned my site from GitHub's freely hosted github.io domain to https://www.derekcroote.com after seeing how quick and inexpensive it was for my sister to create a beautiful portfolio website. This short post walks through the process."

_posts/2023-02-25-redwoods.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ title: Redwoods
44
image: images/redwoods/redwoods-small.jpg
55
image-alt: Redwood trees
66
comments: false
7-
excerpt: <p>A poem.</p>
7+
description: "A short poem conceived among the redwoods."
88
---
99

1010
<br />

_posts/2023-08-18-website-cheaply.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@ title: Build and Host a Custom Domain Static Website for Free
44
image: /images/quick_website/hugo_profile_theme_screenshot.png
55
image-alt: Hugo Profile theme screenshot
66
comments: false
7+
description: Build and host a custom domain website for free using Hugo, GitHub, and Render. This step-by-step guide walks through creating a professional static website with zero hosting costs.
78
---
89

9-
Free hosting of custom domain websites? Many companies advertise free website hosting and it can be frustrating to finally find, buried in a FAQ, that custom domain hosting is an additional charge.
10+
Free hosting of custom domain websites? Many companies advertise "free website hosting" and it can be frustrating to finally find, buried in a FAQ, that custom domain hosting is an additional charge.
1011

1112
This abbreviated tutorial describes the set of tools and services that allows you to build and host a custom domain website for free (beyond the cost of the domain name itself).
1213
I applied this flow to quickly launch a website for my wife, but note that it does assume some familiarity with `git`, `docker`, and web development owing to use of the following services:

_posts/2023-12-10-childrens-book.md

Lines changed: 25 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,37 +5,39 @@ image: /images/childrens_book/FroggyChildrensBook.webp
55
image-alt: First two pages of the children's book Froggy's Grand Adventure by Derek Croote.
66
comments: false
77
---
8+
89
<script src="/scripts/page-flip.browser.js"></script>
10+
911
A father's way of connecting with his daughter, wrapped in a story of a frog's unexpected adventure.
1012

1113
I hope she can one day appreciate it as a story that is uniquely hers.
1214

1315
You can flip through the book (best viewed in landscape mode if on mobile) by clicking your mouse or swiping with your finger:
1416

1517
<div id="book" style="margin: 10px 0 40px 0">
16-
<div class="page" data-density="hard"><img src="/images/childrens_book/0.webp"></div>
17-
<div class="page" data-density="hard"><img src="/images/childrens_book/cover.webp"></div>
18-
<div class="page" data-density="hard"><img src="/images/childrens_book/1.webp"></div>
19-
<div class="page" data-density="hard"><img src="/images/childrens_book/2.webp"></div>
20-
<div class="page" data-density="hard"><img src="/images/childrens_book/3.webp"></div>
21-
<div class="page" data-density="hard"><img src="/images/childrens_book/4.webp"></div>
22-
<div class="page" data-density="hard"><img src="/images/childrens_book/5.webp"></div>
23-
<div class="page" data-density="hard"><img src="/images/childrens_book/6.webp"></div>
24-
<div class="page" data-density="hard"><img src="/images/childrens_book/7.webp"></div>
25-
<div class="page" data-density="hard"><img src="/images/childrens_book/8.webp"></div>
26-
<div class="page" data-density="hard"><img src="/images/childrens_book/9.webp"></div>
27-
<div class="page" data-density="hard"><img src="/images/childrens_book/10.webp"></div>
28-
<div class="page" data-density="hard"><img src="/images/childrens_book/11.webp"></div>
29-
<div class="page" data-density="hard"><img src="/images/childrens_book/12.webp"></div>
30-
<div class="page" data-density="hard"><img src="/images/childrens_book/13.webp"></div>
31-
<div class="page" data-density="hard"><img src="/images/childrens_book/14.webp"></div>
32-
<div class="page" data-density="hard"><img src="/images/childrens_book/15.webp"></div>
33-
<div class="page" data-density="hard"><img src="/images/childrens_book/16.webp"></div>
34-
<div class="page" data-density="hard"><img src="/images/childrens_book/17.webp"></div>
35-
<div class="page" data-density="hard"><img src="/images/childrens_book/18.webp"></div>
36-
<div class="page" data-density="hard"><img src="/images/childrens_book/19.webp"></div>
37-
<div class="page" data-density="hard"><img src="/images/childrens_book/20.webp"></div>
38-
<div class="page" data-density="hard"><img src="/images/childrens_book/back.webp"></div>
18+
<div class="page" data-density="hard"><img src="/images/childrens_book/0.webp" alt="Blank page opposite cover"></div>
19+
<div class="page" data-density="hard"><img src="/images/childrens_book/cover.webp" alt="Cover page"></div>
20+
<div class="page" data-density="hard"><img src="/images/childrens_book/1.webp" alt="Book page 1"></div>
21+
<div class="page" data-density="hard"><img src="/images/childrens_book/2.webp" alt="Book page 2"></div>
22+
<div class="page" data-density="hard"><img src="/images/childrens_book/3.webp" alt="Book page 3"></div>
23+
<div class="page" data-density="hard"><img src="/images/childrens_book/4.webp" alt="Book page 4"></div>
24+
<div class="page" data-density="hard"><img src="/images/childrens_book/5.webp" alt="Book page 5"></div>
25+
<div class="page" data-density="hard"><img src="/images/childrens_book/6.webp" alt="Book page 6"></div>
26+
<div class="page" data-density="hard"><img src="/images/childrens_book/7.webp" alt="Book page 7"></div>
27+
<div class="page" data-density="hard"><img src="/images/childrens_book/8.webp" alt="Book page 8"></div>
28+
<div class="page" data-density="hard"><img src="/images/childrens_book/9.webp" alt="Book page 9"></div>
29+
<div class="page" data-density="hard"><img src="/images/childrens_book/10.webp" alt="Book page 10"></div>
30+
<div class="page" data-density="hard"><img src="/images/childrens_book/11.webp" alt="Book page 11"></div>
31+
<div class="page" data-density="hard"><img src="/images/childrens_book/12.webp" alt="Book page 12"></div>
32+
<div class="page" data-density="hard"><img src="/images/childrens_book/13.webp" alt="Book page 13"></div>
33+
<div class="page" data-density="hard"><img src="/images/childrens_book/14.webp" alt="Book page 14"></div>
34+
<div class="page" data-density="hard"><img src="/images/childrens_book/15.webp" alt="Book page 15"></div>
35+
<div class="page" data-density="hard"><img src="/images/childrens_book/16.webp" alt="Book page 16"></div>
36+
<div class="page" data-density="hard"><img src="/images/childrens_book/17.webp" alt="Book page 17"></div>
37+
<div class="page" data-density="hard"><img src="/images/childrens_book/18.webp" alt="Book page 18"></div>
38+
<div class="page" data-density="hard"><img src="/images/childrens_book/19.webp" alt="Book page 19"></div>
39+
<div class="page" data-density="hard"><img src="/images/childrens_book/20.webp" alt="Book page 20"></div>
40+
<div class="page" data-density="hard"><img src="/images/childrens_book/back.webp" alt="Book back cover"></div>
3941
</div>
4042

4143
### Behind the scenes

_posts/2024-04-07-credit-cards.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ image: images/credit_cards/cc-graphic.svg
55
image-alt: Vector illustration of the outline of two credit cards
66
last_modified_at: 2024-04-25 22:12:00 -0700
77
comments: false
8+
description: A practical guide to maximizing credit card rewards with just two cards. Learn how prioritizing simplicity and profitability can optimize your cashback without the complexity of points systems.
89
---
910

1011
The allure of quantitative analysis almost led me into a career in finance instead of biotech, and while I don't regret that road not taken, I still enjoy the occasional foray.

0 commit comments

Comments
 (0)