Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions .githooks/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#!/bin/bash
# Pre-commit hook: converts staged JPG/JPEG/PNG images to WebP automatically.
# Install once with: ./scripts/install-hooks.sh

QUALITY_PHOTO=82
QUALITY_SCREENSHOT=88

if ! command -v cwebp &>/dev/null; then
echo "Warning: cwebp not found — skipping image optimization. Install with: brew install webp"
exit 0
fi

STAGED_IMAGES=$(git diff --cached --name-only --diff-filter=A | grep -iE '\.(jpg|jpeg|png)$' || true)

if [ -z "$STAGED_IMAGES" ]; then
exit 0
fi

CONVERTED=0

while IFS= read -r img; do
[ -z "$img" ] && continue
[ -f "$img" ] || continue

webp_path="${img%.*}.webp"

if echo "$img" | tr '[:upper:]' '[:lower:]' | grep -q '\.png$'; then
quality=$QUALITY_SCREENSHOT
else
quality=$QUALITY_PHOTO
fi

cwebp -q "$quality" -quiet "$img" -o "$webp_path"
rm "$img"
git rm --cached "$img" >/dev/null 2>&1
git add "$webp_path"

echo " Optimized: $img → $webp_path"
CONVERTED=$((CONVERTED + 1))
done <<< "$STAGED_IMAGES"

if [ "$CONVERTED" -gt 0 ]; then
echo ""
echo " $CONVERTED image(s) converted to WebP. Reference them with the .webp extension in your posts."
fi
1 change: 1 addition & 0 deletions .vscode/cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
"codeyear",
"curlingscoreboard",
"currentdate",
"cwebp",
"dasow",
"dennisleary",
"difftool",
Expand Down
39 changes: 39 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# tomarra.github.io

Personal blog built with Jekyll, hosted on GitHub Pages.

## Setup

After cloning, install the git hooks so images are automatically optimized on commit:

```bash
./scripts/install-hooks.sh
```

Requires `cwebp` for image optimization: `brew install webp`

## Images

All images live in `images/` (root-level) or `images/posts/` (post images).

**Format:** WebP only. All images must be `.webp` before committing.

**The pre-commit hook handles this automatically:** drop any `.jpg`, `.jpeg`, or `.png` into `images/`, stage it with `git add`, and the hook converts it to `.webp` and swaps the staged file before the commit lands. You never commit non-WebP images.

**Reference images in posts using the `.webp` extension:**

```markdown
![Alt text]({{site.baseurl}}/images/posts/my_photo.webp)
```

**To bulk-convert images manually** (e.g. if hooks aren't installed):

```bash
./scripts/optimize-images.sh
```

## Running locally

```bash
bundle exec jekyll serve
```
6 changes: 3 additions & 3 deletions _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#-------------------------------
# General Site Settings
title: Tom Arra
logo: # You can add own logo. For example '/images/logo.png'.
logo: # You can add own logo. For example '/images/logo.webp'.
description: Thoughts, stories and ideas. Mostly.
baseurl: "" # the subpath of your site, e.g. /blog
url: "https://tomarra.com" # the base hostname & protocol for your site, e.g. http://example.com
Expand All @@ -11,7 +11,7 @@ url: "https://tomarra.com" # the base hostname & protocol for your site, e.g. ht
# Author Settings
author:
name: Tom Arra
avatar: "/images/headshot.jpg"
avatar: "/images/headshot.webp"

social:
- { icon: "fa-twitter", label: Twitter, link: "https://twitter.com/tom_arra" }
Expand Down Expand Up @@ -53,7 +53,7 @@ social:
hero:
hero__title: Hey, I’m Tom! Product Leader & Engineer.
hero__description: I'm a product leader & engineer who loves to work with global teams and products. I help organize the corporate chaos to make the best solutions for customers. Here I post about not just tech but a few hobbies as well.
hero__image: "/images/headshot.jpg"
hero__image: "/images/headshot.webp"

#-------------------------------
# Build Settings
Expand Down
2 changes: 1 addition & 1 deletion _pages/about.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: page
title: About
permalink: /about/
image: "/images/curling_slide.jpeg"
image: "/images/curling_slide.webp"
---

**Tom Arra** has over ten years of experience in the software engineering world but has been interested in technology a few years before that. While attending school he started as an intern focused on product testing and hasn’t looked back since. Tom has experience as a software engineer, team lead, and product owner across many different types of products and frameworks.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tags: web google

Looks like Google is going to try it’s hand again at some kind of social network. The landing page for [Google+](http://plus.google.com/) has just surfaced and with that it seems as though Google is rolling out some possible rebranding.

![Black Google Top Bar]({{ site.baseurl }}/images/posts/Google_Top_Black_Bar.png)
![Black Google Top Bar]({{ site.baseurl }}/images/posts/Google_Top_Black_Bar.webp)

Really Google? A black top bar? Doesn’t that go against your entire web UI?

Expand Down
2 changes: 1 addition & 1 deletion _posts/2011-07-06-Inverted-Scrolling.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@ I upgraded my MacBook Pro to the Golden Master release of Lion this morning and

To get scrolling back to the trusty way it has been since…forever just plug in a USB mouse or connect a Bluetooth mouse. Then in System Preferences go to Mouse and uncheck the checkbox at the top.

![Scrolling Setting]({{ site.baseurl }}/images/posts/Scrolling_Setting.png)
![Scrolling Setting]({{ site.baseurl }}/images/posts/Scrolling_Setting.webp)

The setting will apply to the external mouse but it will also carry over to the trackpad.
2 changes: 1 addition & 1 deletion _posts/2011-07-07-The-Icons-Shape-the-Platform.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@ tags: mobile software

Mobile platforms. Just saying the phrase makes some people cringe due to the number of ecosystems out there. But with each ecosystem/platform comes a new UI. [WPCentral](http://www.wpcentral.com/smartphone-os-shapes) has an interesting article how how close each platform’s icon size/shape really is.

![Icon Shapes]({{ site.baseurl }}/images/posts/Icon_Shapes.jpg)
![Icon Shapes]({{ site.baseurl }}/images/posts/Icon_Shapes.webp)

It’s something you don’t really see until you line them all up. Also notice the absence of BlackBerry OS and Android. Both platforms have no standard/bounding shape for developers to use. While some people might hate the restrictions on icon shape and size I think it’s good to have when you want to really give the consumer the best UI possible.
2 changes: 1 addition & 1 deletion _posts/2011-07-11-The-Last-Shuttle.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@ date: 2011-07-11
tags: space nasa
---

![The Last Shuttle]({{ site.baseurl }}/images/posts/The_Last_Shuttle.jpg)
![The Last Shuttle]({{ site.baseurl }}/images/posts/The_Last_Shuttle.webp)

The last shuttle mission launched last Friday and what a shot this was. Photo taken from [Robert Scobel’s Flickr Stream](http://www.flickr.com/photos/scobleizer/5915301679/in/photostream)
2 changes: 1 addition & 1 deletion _posts/2011-08-09-We-Stopped-Dreaming.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ tags: politics space

Not much else to add to this video except the fact that Neil deGrasse Tyson is the man. We need to get other people to think the same way so we can rejuvenate not only this country but the whole world.

[![We Stopped Dreaming](http://img.youtube.com/vi/3_F3pw5F_Pc/0.jpg)](http://www.youtube.com/watch?v=3_F3pw5F_Pc "We Stopped Dreaming")
[![We Stopped Dreaming](http://img.youtube.com/vi/3_F3pw5F_Pc/0.webp)](http://www.youtube.com/watch?v=3_F3pw5F_Pc "We Stopped Dreaming")
2 changes: 1 addition & 1 deletion _posts/2011-09-13-Test-All-The-Things.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@ date: 2011-09-13
tags: software testing
---

![Icon Shapes]({{ site.baseurl }}/images/posts/Test_All_The_Things.png)
![Icon Shapes]({{ site.baseurl }}/images/posts/Test_All_The_Things.webp)

Made this a while ago and forgot to post it.
2 changes: 1 addition & 1 deletion _posts/2012-01-08-Learn-to-code-in-2012.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Learn to Code in 2012"
date: 2012-01-09
image: Learn_To_Code.jpg
image: Learn_To_Code.webp
tags: software
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2013-03-19-Diff-Tools.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "The difference between diff.tool and diff.guitool"
date: 2013-03-19
image: Git_Logo.png
image: Git_Logo.webp
tags: software
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2013-03-23-Android-Stock-UI.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Most Android users don't even know about the stock UI"
date: 2013-03-23
image: Stock_Android_Experience.png
image: Stock_Android_Experience.webp
tags: software android
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-05-18-New-Look-New-Host.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "New Look, New Host, New Content (hopefully)"
date: 2014-05-18
image: Wordpress_Azure.png
image: Wordpress_Azure.webp
tags: website
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-05-19-Masters-of-Doom.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Masters of Doom - Book Review"
date: 2014-05-19
image: Doom_Book_Review.jpg
image: Doom_Book_Review.webp
tags: books review
---

Expand Down
4 changes: 2 additions & 2 deletions _posts/2014-05-28-Lenovo-Wins-Business-Laptops.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Lenovo Wins Business Laptops Once Again"
date: 2014-05-28
image: ThinkPad_Laptop.jpg
image: ThinkPad_Laptop.webp
tags: hardware review
---

Expand All @@ -22,7 +22,7 @@ One other thing they chose to include on the T440s that other (smaller) Lenovo l

The battery setup of the T440s is a little unique. When you flip the device over you only see a small 3 cell battery that is user removable. At first this scared me thinking that battery life was going to be abysmal but upon booting up to the desktop for the first time I was surprised to find a battery life estimate of almost 7 hours. This is achieved by having a separate, non-removable 3 cell battery inside the laptop. This shows as a second battery (seen below) and gives you the benefit of hot swap-able batteries as long as you have some juice left.

![T440s Battery Panel]({{ site.baseurl }}/images/posts/Lenovo_T440s_Battery.png)
![T440s Battery Panel]({{ site.baseurl }}/images/posts/Lenovo_T440s_Battery.webp)

On top of that the new power supply is incredibly small 65W power brick that is very easy to carry around and uses the new Lenovo flat connector for interchangeability with other Lenovo laptops.

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-05-30-CLI-vs-GUI.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "CLI vs. GUI"
date: 2014-05-30
image: CLI_GUI.png
image: CLI_GUI.webp
tags: software
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-08-11-Photo-Backups.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Photo backup's are no longer just for techies"
date: 2014-08-11
image: Cloud_Backup.png
image: Cloud_Backup.webp
tags: software photos
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-08-15-What-I-Use-Mac-Software.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "What I Use - Mac Software"
date: 2014-08-15
image: Mac_Apps.jpg
image: Mac_Apps.webp
tags: software mac
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-08-19-Outlook-2011-Notification-Center.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Outlook 2011 for Mac and Notification Center"
date: 2014-08-19
image: Outlook_Notifications.png
image: Outlook_Notifications.webp
tags: software
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-09-18-Google-Hangouts-on-a-MacBook-Air.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Google Hangouts on a MacBook Air"
date: 2014-09-18
image: Hangouts_On_Air.png
image: Hangouts_On_Air.webp
tags: software
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-09-19-Looking-Back-at-NovKiaSoft.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Looking Back at NovKiaSoft"
date: 2014-09-19
image: NovKiaSoft.png
image: NovKiaSoft.webp
tags: work
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-09-22-The-Martian-Book-Review.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "The Martian - Book Review"
date: 2014-09-22
image: The_Martian.png
image: The_Martian.webp
tags: books
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-09-24-My-iPhone6-Buying-Experience.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "My iPhone 6 Buying Experience"
date: 2014-09-24
image: iPhone6_Buying.png
image: iPhone6_Buying.webp
tags: hardware apple
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-09-24-Pebble-2.5.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Pebble v2.5 is Huge for Smartwatches"
date: 2014-09-24
image: Pebble2.5.png
image: Pebble2.5.webp
tags: hardware pebble
---

Expand Down
4 changes: 2 additions & 2 deletions _posts/2014-09-25-Nokia-Portable-Wireless-Speker-Review.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Nokia Portable Wireless Speaker (MD-12) Review"
date: 2014-09-25
image: Nokia_Bluetooth_Speaker.jpg
image: Nokia_Bluetooth_Speaker.webp
tags: hardware nokia
---

Expand All @@ -26,7 +26,7 @@ The overall sound that comes from the speaker is good, but a lot of it depends o

I have found a few different places in the house that make the speaker sound better then others. Funny enough attached to the freezer door in the basement is actually one of them. And because the base is so close magnet for the speaker it sticks to anything metal surprisingly well.

![Speaker on Freezer]({{ site.baseurl }}/images/posts/Speaker_On_Freezer.jpg)
![Speaker on Freezer]({{ site.baseurl }}/images/posts/Speaker_On_Freezer.webp)

There are other surfaces, like my kitchen table, that just doesn’t reverb the same way. It makes the sound feel flat and the listening experience is worse for it.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Apple is Quietly Killing iPad only Applications"
date: 2014-09-26
image: Universal_Apps.png
image: Universal_Apps.webp
tags: software apple
---

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Unspoken Understanding - Tacit App Review"
date: 2014-09-29
image: Tacit.png
image: Tacit.webp
tags: software review
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-09-30-Podcasts-Changed-My-Routine.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Podcasts Changed My Routine"
date: 2014-09-30
image: Podcasts.png
image: Podcasts.webp
tags: podcasts
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-10-01-Microsoft-Hardware.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "You use Microsoft Hardware on your Mac?"
date: 2014-10-01
image: Microsoft_Hardware.png
image: Microsoft_Hardware.webp
tags: hardware
---

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "iOS Notifications are a Toxic Hellstew"
date: 2014-10-02
image: iOS_Notifications.png
image: iOS_Notifications.webp
tags: software
---

Expand Down
2 changes: 1 addition & 1 deletion _posts/2014-10-03-Remote-Workers-Just-Dont-Work.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
layout: post
title: "Remote Workers Just Don't Work"
date: 2014-10-03
image: Remote_Workers.png
image: Remote_Workers.webp
tags: remote work
---

Expand Down
Loading