From 6fcbc80237ab8f06687bb779d5b75a34fcea423a Mon Sep 17 00:00:00 2001 From: sloane <1699281+sloanelybutsurely@users.noreply.github.com> Date: Sat, 9 Mar 2024 09:38:18 -0500 Subject: [PATCH] add /uses --- lib/sloane_sh/front_matter.ex | 2 +- lib/sloane_sh/layouts/helpers.ex | 16 +++++--- lib/sloane_sh/layouts/partials.ex | 3 ++ priv/site/layouts/root.html.eex | 2 +- priv/site/posts/2024-03-09-uses.md | 60 ++++++++++++++++++++++++++++++ 5 files changed, 75 insertions(+), 8 deletions(-) create mode 100644 priv/site/posts/2024-03-09-uses.md diff --git a/lib/sloane_sh/front_matter.ex b/lib/sloane_sh/front_matter.ex index c4bca00..b0f2369 100644 --- a/lib/sloane_sh/front_matter.ex +++ b/lib/sloane_sh/front_matter.ex @@ -4,7 +4,7 @@ defmodule SloaneSH.FrontMatter do """ def parse("+++" <> rest) do - [toml, body] = String.split(rest, ["+++\n", "+++\r\n"], parts: 2) + [toml, body] = String.split(rest, ["+++\n", "+++\r\n"], parts: 2) |> dbg() with {:ok, attrs} <- Toml.decode(toml, keys: :atoms) do {:ok, attrs, body} diff --git a/lib/sloane_sh/layouts/helpers.ex b/lib/sloane_sh/layouts/helpers.ex index 80a11a9..ce8cabe 100644 --- a/lib/sloane_sh/layouts/helpers.ex +++ b/lib/sloane_sh/layouts/helpers.ex @@ -14,14 +14,18 @@ defmodule SloaneSH.Layouts.Helpers do end def sorted_post_attrs(%Context{} = ctx) do - ctx.posts - |> Enum.map(& &1.attrs) - |> Enum.sort_by(& &1[:date], {:desc, Date}) + {drafts, others} = + ctx.posts + |> Enum.map(& &1.attrs) + |> Enum.split_with(&is_nil(&1[:date])) + + others = Enum.sort_by(others, & &1[:date], {:desc, Date}) + + drafts ++ others end - def fmt_date(date) do - Timex.format!(date, "{Mfull} {D}, {YYYY}") - end + def fmt_date(nil), do: "Draft" + def fmt_date(date), do: Timex.format!(date, "{Mfull} {D}, {YYYY}") def picture(ctx, src, alt \\ "", class \\ "") do image = diff --git a/lib/sloane_sh/layouts/partials.ex b/lib/sloane_sh/layouts/partials.ex index 80113ae..2153656 100644 --- a/lib/sloane_sh/layouts/partials.ex +++ b/lib/sloane_sh/layouts/partials.ex @@ -14,6 +14,9 @@ defmodule SloaneSH.Layouts.Partials do <%= if attrs[:title] do %>

<%= attrs[:title] %>

<% end %> + <%= if attrs[:date] do %> + <%= fmt_date(attrs[:date]) %> + <% end %>
diff --git a/priv/site/layouts/root.html.eex b/priv/site/layouts/root.html.eex index d0f3f8c..a9dafd2 100644 --- a/priv/site/layouts/root.html.eex +++ b/priv/site/layouts/root.html.eex @@ -7,7 +7,7 @@ <%= prefix_title("sloane.sh", attrs[:page_title]) %> - + <%= inner_content %> diff --git a/priv/site/posts/2024-03-09-uses.md b/priv/site/posts/2024-03-09-uses.md new file mode 100644 index 0000000..9772874 --- /dev/null +++ b/priv/site/posts/2024-03-09-uses.md @@ -0,0 +1,60 @@ ++++ +title = "\"Uses This\"" +page_title = "uses" +permalink = "/uses" +date = 2024-03-09 ++++ + +> **Have you considered added a `/uses page to your own site, answering the same questions?** +> \- [Daniel](https://wafer.baby/@d) of [usesthis.com](https://usesthis.com/) + +## Who are you, and what do you do? + +I'm a professional software engineer and once engineering manager. I work a day job but I'm also working with a good friend and former boss to bring [screen.garden](https://screen.garden), a real-time collaboration tool for PKMs and the web, to life. + +In my free time I sing with a local queer TTBB chorus, play table-top RPGs, watch Formula 1, and play video games. + +## What hardware do you use? + +I work atop a sit-stand desk I bought when I first started working remotely in 2017. It stays in the "sit" position 99% of the time. For work I use whatever machine my employer provides. Right now that's a 14in M3 MacBook Pro. Personally, I have an M1 MacBook Air which I love. A single thunderbolt cable runs from either of those machines to a [CalDigit TS4](https://www.caldigit.com/thunderbolt-station-4/) which connects it to power, ethernet, a USB hub, and my display. + +I use just the one display, a [GIGABYTE M32U](https://www.gigabyte.com/Monitor/M32U), which is a 32 inch, 4k, 144Hz monitor. Whenever someone is talking about replacing their monitor I always bring up refresh rate. It's one of those things that sounds like you wouldn't notice but it actually makes looking at a screen for most of your day a lot more pleasant. I've sat a no-name-brand monitor light and a Logitech webcam atop it. + +I have a collection of mechanical keyboards ([ErgoDox EZ](https://ergodox-ez.com/), [Keyboardio Atreus](https://shop.keyboard.io/products/keyboardio-atreus), to name a couple) which all live in a drawer while I type away on my [Glorious GMMK Pro](https://www.gloriousgaming.com/products/glorious-gmmk-pro-75-barebone-black) with [Glorious Panda tactile switches](https://www.gloriousgaming.com/products/glorious-panda-mechanical-switches?variant=37691905933487). I think Glorious's branding is a bit "cringe" to say the least but they were the only custom keyboard option I could get same-day at the nearby Micro Center when I needed to replace my [Pok3r](https://drop.com/buy/vortex-poker-iii-compact-keyboard) following a coffee spill incident. + +I talk to my coworkers and friends through a [Blue Yeti mic](https://www.bestbuy.com/site/blue-microphones-blue-yeti-professional-multi-pattern-usb-condenser-microphone/9737441.p?skuId=9737441) that I bought when a former employer gave everyone a couple hundred dollars for work-from-home equipment in early 2020 (despite my having already worked from my home my entire tenure there). + +At the edges of my desk are piles of scrunchies, a couple hair clips, my AirPods Pros, a pair of Sennheiser HD 600s, my iPhone 14 Pro Max (I always go "Max" or "Plus" for the extra battery life), an [Aquaphor lip balm stick](https://www.aquaphorus.com/products/lip-care/lip-repair-stick), some hand lotion, and a nice candle. + +Away from my desk I have a collection of cameras but the one I use the most is my Leica M6 which I usually shoot with a Voigtlander Nokton Classic 35mm f/1.4. I digitize my negatives with a beat-up Sony a6000, a cheap macro lens, and a [Valoi easy35](https://www.valoi.co/easy35). + +I have a couple Apple TV 4ks to stream content from the cloud and also the Plex Media Server running on a Synology NAS. I have a couple TVs in different rooms but the Xbox Series X stays connected to the 65 inch LG C1 OLED (once again which a high refresh rate). + +Finally, currently sitting on my nightstand wrapped in some FiiO IEMs is a 5th iPod Classic (aka an iPod Video) whose hard disk I've [replaced with a 512gb microSD card](https://www.iflash.xyz/). It's really incredible how well it still works. + +## And what software? + +These days I'm macOS all-the-way. I'm fully integrated into the ecosystem and the ergonomics and reliability of development on the platform is unparalleled in my opinion. Obviously I use a ton of software so I'll limit (mostly) to things I keep pinned to my dock (although most of the time I'm launching things from [Alfred](https://www.alfredapp.com/)): + +- [Firefox](https://www.mozilla.org/en-US/firefox/new/) to browse the web +- [Fantastical](https://flexibits.com/fantastical) to manage several calendar accounts. I could just use Calendar.app but there are few features (like travel time and automatic event merging) that keep me renewing my subscription. +- Mail.app for emails... +- [Things 3](https://culturedcode.com/things/) makes sure I get things done. I switched from an Android phone to an iPhone many years ago just so I could use Things while I was away from my computer. +- [Kitty](https://sw.kovidgoyal.net/kitty/) to run all of my command line apps. I always work within a `tmux` session so my terminal emulator doesn't really matter all that much (because I'm never using tabs or splits or whatever) but Kitty is quick and the [alternative icon](https://github.com/DinkDonk/kitty-icon) I use for it is really cute. I'm a vim user (neovim really) and have been since 2015. My neovim setup could be its own post... +- Music - I switch between two libraries: 1. My local library which I sync with my iPod and 2. My iCloud, Apple Music backed library +- [Dash 6](https://kapeli.com/dash) (usually via Alfred) to quickly reference documentation. Elixir / Hex package docs support is incredible +- [Obsidian](https://obsidian.md) for personal, work, and TTRPG notes. I keep my plugins list slip with just Templater, DataView, Tasks, Periodic Notes, and of course screen.garden. +- [Readwise Reader](https://readwise.io/read) as my read-later service + +I have to shout-out Lightroom with [Negative Lab Pro](https://www.negativelabpro.com/) for converting scans/photos of film negatives. + + +## What would be your dream setup? + +I've obviously spoiled myself already so I'd keep most things the same but... + +I'd love a thunderbolt KVM of some kind that would let me swap _quickly_ between machines at the press of a button. I also feel like I'd benefit from a larger desk. + +I think about replacing my webcam with the Sony a6000 and replacing that with a newer, higher resolution mirrorless camera. + +I'm really hoping the ARM desktop / server market continues to become more accessible to the consumer market because the Synology NAS is looking a little worse-for-wear these days. I've thought about replacing it with a custom build x64 machine but the additional power consumption and heat keep me from doing it (I'm spoiled by these Apple ARM machines...).