Skip to content

Commit db80677

Browse files
committed
feat: auto bio
1 parent 8a4f841 commit db80677

21 files changed

+21
-42
lines changed

config.toml

+9
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,17 @@ youtube = "GeekLaunch"
1616
contact = "https://docs.google.com/forms/d/e/1FAIpQLSfL9-JbBMUk2m4D31KouzAHntMtMOb9LOi7uQNiXYX6XEQhiQ/viewform?usp=sf_link"
1717

1818
[params.author]
19+
# Site author
1920
name = "Jacob Lindahl"
2021

22+
# Specific article authors
23+
[params.author."Jacob Lindahl"]
24+
bio = """
25+
Jacob Lindahl is a graduate student at the [Tokyo Institute of Technology](https://www.titech.ac.jp/).
26+
27+
Connect with Jacob on [Twitter](https://twitter.com/sudo_build), [Mastodon](https://infosec.exchange/@hatchet), and [Farcaster](https://warpcast.com/hatchet).
28+
"""
29+
2130
[params.plausible]
2231
host = "plausible.c0d3r.dev"
2332
domain = "geeklaunch.io"

content/blog/dumping-databases-for-faster-furigana.md

-2
Original file line numberDiff line numberDiff line change
@@ -87,5 +87,3 @@ sys 0m0.000s
8787
```
8888

8989
Much better! The test document is 100,845 bytes, so this is a processing speed of about 280,905 bytes/second. For reference, the SQLite version took over 1m53s to annotate the same document (889 bytes/second). That's a 315x speed-up!
90-
91-
{{%bio%}}

content/blog/fathomable-rust-macros.md

-2
Original file line numberDiff line numberDiff line change
@@ -375,5 +375,3 @@ This derive macro creates an implementation of `Display` on the targeted enum. I
375375
- [The Little Book of Rust Macros](https://veykril.github.io/tlborm/)
376376
- [dtolnay's procedural macros workshop](https://github.com/dtolnay/proc-macro-workshop)
377377
- [Rust AST Explorer](https://carlkcarlk.github.io/rust-ast-explorer/) (credit: [matklad](https://matklad.github.io/))
378-
379-
{{% bio %}}

content/blog/grammatical-automatic-furigana-with-sqlite-and-rust.md

-2
Original file line numberDiff line numberDiff line change
@@ -374,5 +374,3 @@ This is also a highly-parallelizable task—so long as we split up the text
374374
Until then, this was a really fun project, and I'm planning to continue working on it in my spare time going forward.
375375

376376
If you haven't already, I'd appreciate it if you'd [check out the project](https://github.com/encody/autoruby), maybe try it out, and give it a star?
377-
378-
{{% bio %}}

content/blog/how-to-speed-up-your-code-using-graphs.md

-2
Original file line numberDiff line numberDiff line change
@@ -135,5 +135,3 @@ Try it for yourself:
135135
- [Modeling graphs in Rust using vector indices](https://smallcultfollowing.com/babysteps/blog/2015/04/06/modeling-graphs-in-rust-using-vector-indices/)
136136
- [Creating an Iterator in Rust](https://aloso.github.io/2021/03/09/creating-an-iterator)
137137
- [Five Clique](https://gitlab.com/bpaassen/five_clique/-/tree/main/)
138-
139-
{{% bio %}}

content/blog/how-to-verify-domain-name-on-github-with-namecheap.md

-2
Original file line numberDiff line numberDiff line change
@@ -69,5 +69,3 @@ You should be greeted with the following success screen:
6969
![Successfully verified domain on GitHub](./08-github-domain-verified.png)
7070

7171
Congratulations! Your organization's domain is now verified on GitHub.
72-
73-
{{% bio %}}

content/blog/introducing-compulang-podcast.md

-2
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,3 @@ This will also be a fun venture for me into finally getting around to learning t
2424
All of this to say, I'm starting a podcast and I'd love for you to give it a listen.
2525

2626
Cheers!
27-
28-
{{% bio %}}

content/blog/make-invalid-states-unrepresentable.md

-2
Original file line numberDiff line numberDiff line change
@@ -386,5 +386,3 @@ I would be remiss if I failed to mention the body of work preceding me on this t
386386
- [CppCon 2016: Ben Deane “Using Types Effectively" (CppCon on youtube.com)](https://www.youtube.com/watch?v=ojZbFIQSdl8)
387387

388388
[^minsky]: The author, Yaron Minsky, actually [coined the phrase "make illegal states unrepresentable."](https://twitter.com/yminsky/status/1034947939364425731) Thanks to [u/dist1ll on Reddit](https://www.reddit.com/r/rust/comments/155b6qc/comment/jsup7ju/?utm_source=share&utm_medium=web2x&context=3) for pointing this out.
389-
390-
{{% bio %}}

content/blog/modern-dearth-of-intelligent-crypto.md

-2
Original file line numberDiff line numberDiff line change
@@ -175,5 +175,3 @@ Solidity contracts absolutely. There are quite a few respectable auditing firms
175175
This is a lot, and one of the longer blogs I've written, but with good reason: security is ever-increasing in its importance in this industry, and it's all-too-often ignored. I've barely scratched the surface here, but I hope it was a good jumping-off point.
176176

177177
Don't be the next multi-billion dollar victim.
178-
179-
{{% bio %}}

content/blog/nothing-in-rust.md

-2
Original file line numberDiff line numberDiff line change
@@ -185,5 +185,3 @@ impl FailureLogProvider for Partner {
185185
```
186186

187187
The function implementation in the example always succeeds, but the trait allows for implementations to fail. To indicate this, the associated `Error` type is the never type.
188-
189-
{{%bio%}}

content/blog/rust-pro-tips-collection.md

-2
Original file line numberDiff line numberDiff line change
@@ -1023,5 +1023,3 @@ vs.
10231023
```rust
10241024
my_function(dbg!(&value));
10251025
```
1026-
1027-
{{% bio %}}

content/blog/rust-quickstart-for-javascript-programmers.md

-2
Original file line numberDiff line numberDiff line change
@@ -894,5 +894,3 @@ Note: Lifetimes is a somewhat stubborn topic that can take a little bit of work
894894
- [Rust Playground](https://play.rust-lang.org/) is not actually a source of exercises, but it is a good place to try out some code without having to spin up an editor and new project.
895895
- [Rustlings](https://github.com/rust-lang/rustlings) is a repository of all sorts of exercises to help you get comfortable using Rust.
896896
- [Exercism](https://exercism.org/tracks/rust) provides a variety of online exercises and other resources.
897-
898-
{{% bio %}}

content/blog/seek-the-stretch.md

-2
Original file line numberDiff line numberDiff line change
@@ -60,5 +60,3 @@ He nods. "It's like… I should put myself out there and not be afraid to g
6060
"Exactly! Do hard things. Seek the stretch."
6161

6262
"*Seek the stretch*. I like that."
63-
64-
{{% bio %}}

content/blog/storage-locations-in-ethereum-vs-near.md

-2
Original file line numberDiff line numberDiff line change
@@ -126,5 +126,3 @@ When I first encountered the NEAR ecosystem, I was stunned at how developer-frie
126126
You can find a comprehensive suite of NEAR smart contracts on the [Learn NEAR GitHub organization](https://github.com/Learn-NEAR), as well as a bevy of tutorials and examples on the [NEAR Examples GitHub origanization](https://github.com/near-examples).
127127

128128
Good luck!
129-
130-
{{% bio %}}

content/blog/the-guts-of-two-factor-authentication.md

-2
Original file line numberDiff line numberDiff line change
@@ -100,5 +100,3 @@ This means that as long as the client and the server have their clocks synchroni
100100
## Sample implementation
101101

102102
A simple example implementation of HOTP and TOTP in Rust can be found [here](https://github.com/GeekLaunch/totp/blob/main/src/lib.rs).
103-
104-
{{%bio%}}

content/blog/the-state-of-web3-in-2022.md

-2
Original file line numberDiff line numberDiff line change
@@ -103,5 +103,3 @@ I encountered two interesting projects for the first time over the past week. (N
103103
## Does [insert protocol here] have a chance to take over as the de-facto dapp platform?
104104

105105
Not really.
106-
107-
{{% bio %}}

content/blog/understanding-elliptic-curves-pairings-bls-signatures.md

-2
Original file line numberDiff line numberDiff line change
@@ -209,5 +209,3 @@ Threshold signatures (distribute $n$ keyshares, any $t < n$ of them can generate
209209
- [Pairings for beginners (Craig Costello)](https://static1.squarespace.com/static/5fdbb09f31d71c1227082339/t/5ff394720493bd28278889c6/1609798774687/PairingsForBeginners.pdf) ([archive.org](https://web.archive.org/web/20240119065123/https://static1.squarespace.com/static/5fdbb09f31d71c1227082339/t/5ff394720493bd28278889c6/1609798774687/PairingsForBeginners.pdf))[^thanks-porter]
210210
211211
[^thanks-porter]: Thanks to [Porter Adams](https://www.linkedin.com/feed/update/urn:li:activity:7171725082224963584?commentUrn=urn%3Ali%3Acomment%3A%28activity%3A7171725082224963584%2C7171754572875517952%29&dashCommentUrn=urn%3Ali%3Afsd_comment%3A%287171754572875517952%2Curn%3Ali%3Aactivity%3A7171725082224963584%29) for this suggestion!
212-
213-
{{%bio%}}

content/blog/versioning.md

-2
Original file line numberDiff line numberDiff line change
@@ -47,5 +47,3 @@ It really is just a number.
4747
---
4848

4949
Thanks to [Don Dall](https://github.com/dndll/) for his advice in constructing this rant.
50-
51-
{{% bio %}}

content/blog/what-does-my-rsa-public-key-actually-mean.md

-2
Original file line numberDiff line numberDiff line change
@@ -163,5 +163,3 @@ On top of all the different sites I linked in this post, I'd like to credit the
163163
- [What are x509 certificates? RFC? ASN.1? DER?](https://cryptologie.net/article/262/what-are-x509-certificates-rfc-asn1-der/)
164164
- [How to store/retrieve RSA public/private key](https://stackoverflow.com/questions/1193529/how-to-store-retrieve-rsa-public-private-key/13104466#13104466)
165165
- [node-rsa/src/formats/pkcs8.js](https://github.com/rzcoder/node-rsa/blob/master/src/formats/pkcs8.js)
166-
167-
{{% bio %}}

layouts/_default/single.html

+12-1
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,17 @@ <h1 class="font:40 font:bold">{{ .Title }}</h1>
6262
</aside>
6363
{{ end }}
6464

65-
{{- partial "prose.html" . -}}
65+
{{- $content := .Content -}}
66+
67+
{{- if and
68+
(eq .Kind "page")
69+
(ne (index site.Params.Author .Params.Author) nil)
70+
(isset (index site.Params.Author .Params.Author) "bio")
71+
-}}
72+
{{- $bio := index (index site.Params.Author .Params.Author) "bio" | markdownify -}}
73+
{{- $content = print $content "<hr>" $bio | safeHTML -}}
74+
{{- end -}}
75+
76+
{{- partial "prose.html" (dict "Content" $content) -}}
6677
</article>
6778
{{ end }}

layouts/shortcodes/bio.html

-5
This file was deleted.

0 commit comments

Comments
 (0)