PageSourceSearch

https://eartharoid.me/blog/

html eartharoid.me collected 2026-10-03 20:27:08 UTC 18,368 bytes, 484 lines download raw bytes

1<!DOCTYPE html>
2<html  lang='en-gb' >
3
4<head>
5	
6	<meta charset='utf-8'>
7	<meta name='viewport' content='width=device-width, initial-scale=1'>
8	<meta http-equiv='X-UA-Compatible' content='IE=edge'>
9	<meta name='robots' content='index,follow'><meta name='theme-color' content='#00C3EE'><meta property='og:type' content='website'>
10	<meta property='og:site_name' content='eartharoid'>
11	<meta property='og:title' content='My blog • eartharoid'>
12	<meta property='og:url' content='https://eartharoid.me/blog/'>
13			
14			<meta property='og:image' content='https://ogi.sh/article?title=My blog&amp;eyebrow=January 1, 0001&amp;imageUrl=https://eartharoid.me/cdn-cgi/image/height=1080,format=avif/https://static.eartharoid.me/images/p/earth-sunset-from-space.jpg'>
15			<meta name='image' content='https://ogi.sh/article?title=My blog&amp;eyebrow=January 1, 0001&amp;imageUrl=https://eartharoid.me/cdn-cgi/image/height=1080,format=avif/https://static.eartharoid.me/images/p/earth-sunset-from-space.jpg'>
16			<meta itemprop='image' content='https://ogi.sh/article?title=My blog&amp;eyebrow=January 1, 0001&amp;imageUrl=https://eartharoid.me/cdn-cgi/image/height=1080,format=avif/https://static.eartharoid.me/images/p/earth-sunset-from-space.jpg'>
17			<meta name='twitter:card' content='summary_large_image'>
18			<meta name='twitter:image' content='https://ogi.sh/article?title=My blog&amp;eyebrow=January 1, 0001&amp;imageUrl=https://eartharoid.me/cdn-cgi/image/height=1080,format=avif/https://static.eartharoid.me/images/p/earth-sunset-from-space.jpg'><meta name='twitter:site' content='@eartharoid'>
19		<meta name='twitter:creator' content='@eartharoid'><meta name='twitter:title' content='My blog • eartharoid'><meta name='description' content='I don&#39;t know why I made this'>
20		<meta name='twitter:description' content='I don&#39;t know why I made this'>
21		<meta name='og:description' content='I don&#39;t know why I made this'>
22		<meta name='keywords' content='I don&#39;t know why I made this'><meta name='author' content='eartharoid'>
23
24	<meta name="generator" content="Hugo 0.82.1" />
25
26	<title>My blog • eartharoid</title>
27
28	
29	<link rel='icon' href='/favicon.ico' type='image/icon'>
30	<link rel='stylesheet' href='/css/global.css'>
31	<link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/[email protected]/css/bulma.min.css'>
32	<link rel='stylesheet' id='themeCSS'>
33	
34	<link rel='stylesheet' href='/css/dark_theme.css' media='(prefers-color-scheme: dark)'
35		id='darkThemeCSS'>
36	<link rel='stylesheet' href='/css/light_theme.css'
37		media='(prefers-color-scheme: no-preference), (prefers-color-scheme: light)' id='lightThemeCSS'>
38	
39	<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/devicons/[email protected]/devicon.min.css">
40
41	
42	
42<script defer src='https://use.fontawesome.com/releases/v5.14.0/js/all.js'></script>
42
43	
43<script defer src='/js/global.js'></script>
43
44	
44<script defer src="https://static.eartharoid.me/ustats.js" data-website-id="052207ba-2f8d-4caa-9bee-4586308daa07" data-domains='eartharoid.me'></script>
44
45
46	
47	<style>
48		.hero {
49			background-image: url('https://eartharoid.me/cdn-cgi/image/height=1080,format=avif/https://static.eartharoid.me/images/p/earth-sunset-from-space.jpg');
50			background-image: linear-gradient(rgba(0, 0, 0, 0.5),
51				rgba(0, 0, 0, 0.5)),
52			url('https://eartharoid.me/cdn-cgi/image/height=1080,format=avif/https://static.eartharoid.me/images/p/earth-sunset-from-space.jpg');
53			background-position: center;
54			background-size: cover;
55		}
56	</style>
57</head>
58<body>
59<main><section class='hero is-dark'> 
60	<div class='hero-head'><nav class='navbar is-dark is-transparent' role='navigation'>
61	
62	<div class='container'>
63		<div class='navbar-brand'>
64			<a href='https://eartharoid.me' class='navbar-item'>
65				<img src='https://eartharoid.me/cdn-cgi/image/width=100/https://static.eartharoid.me/eartharoid/logo/c/wordmark.png' alt='eartharoid'>
66			</a>
67			<span class='navbar-burger' data-target='primaryHeroNavbar'>
68				<span></span>
69				<span></span>
70				<span></span>
71			</span>
72		</div>
73		<div id='primaryHeroNavbar' class='navbar-menu'>
74			<div class='navbar-end'>
75				
76				
77				
78				<a href='/' class='navbar-item ' title='Home'>
79					Home
80				</a>
81				
82				
83				
84				<a href='/about/' class='navbar-item ' title='About'>
85					About
86				</a>
87				
88				
89				
90				<a href='/projects/' class='navbar-item ' title='Projects'>
91					Projects
92				</a>
93				
94				
95				
96				<a href='/blog/' class='navbar-item is-active' title='Blog'>
97					Blog
98				</a>
99				
100				
101				
102				<a href='/gallery/' class='navbar-item ' title='Gallery'>
103					Gallery
104				</a>
105				
106				
107				
108				<a href='/contact/' class='navbar-item ' title='Contact'>
109					Contact
110				</a>
111				
112				
113
114				<span class='navbar-item is-clickable' onClick='toggleTheme();' title='Toggle theme'>
115					<i id='themeIcon' class='fas fa-sun'></i>
116				</span>
117			</div>
118		</div>
119	</div>
120</nav></div>
121
122	<div class='hero-body'>
123		<div class='container has-text-centered'>
124			<h1 class='title'>
125				My blog
126			</h1>
127			<h2 class='subtitle'>
128				
129				I don&#39;t know why I made this
130				
131			</h2>
132		</div>
133	</div>
134</section><section id='main' class='section'>
135		<container id='content' class='content container is-fluid'>
136			
137		</container>
138		<container class='container is-fluid'>
139			<div class='columns'>
140				<div class='column is-desktop is-two-thirds'>
141
142					
143					<div class='content box has-text-white' style='background: linear-gradient( rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85) ), url("/cdn-cgi/image/height=1080,quality=75,format=avif/https://static.eartharoid.me/my-photos/misc/IMG_9612.JPG") center/1920px;'>
144						<div class='block'>
145							<p class='title is-size-4'>
146								<a href='https://eartharoid.me/blog/using-google-timeline-for-my-photos/'>Adding location data to photos with Google Maps Timeline</a>
147							</p>
148							<p class='subtitle is-size-6'>
149								29<sup>th</sup> August 2023</p>
150							<p>
151								
152								<div class='tags'>
153									
154									<a href='/tags/photography'
155										class='tag is-primary'>photography</a>
156									
157								</div>
158								
159							</p>
160						</div>
161						<div class='block'>
162							<p>
163								I have over twenty thousand photos, scattered and disorganised - over a thousand printed film photos from pre-2010 which I&rsquo;m (not) looking forward to digitising, hundreds, possibly thousands of digital family photos (hopefully still) on an old PC, and over ten thousand (though probably at least half very similar or low quality) taken on my DSLR since 2018.
164I&rsquo;ve been thinking about it for years and the problem is only getting bigger, but I&rsquo;ve decided to finally:
165							</p>
166						</div>
167						
168						<div class='block'>
169							<a href='https://eartharoid.me/blog/using-google-timeline-for-my-photos/'>
170								<button class='button is-info'>
171									<span>Read more</span>
172									<span class='icon'>
173										<i class='fas fa-chevron-right'></i>
174									</span>
175								</button>
176							</a>
177						</div>
178						
179					</div>
180					
181					<div class='content box has-text-white' style='background: linear-gradient( rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85) ), url("https://images.unsplash.com/photo-1650943574955-ac02c65cfc71?ixlib=rb-1.2.1&amp;auto=format&amp;fit=crop&amp;w=1920&amp;q=80") center/1920px;'>
182						<div class='block'>
183							<p class='title is-size-4'>
184								<a href='https://eartharoid.me/blog/eartharoid-go/'>I made a URL shortener with Cloudflare Workers</a>
185							</p>
186							<p class='subtitle is-size-6'>
187								11<sup>th</sup> May 2022</p>
188							<p>
189								
190								<div class='tags'>
191									
192									<a href='/tags/serverless'
193										class='tag is-primary'>serverless</a>
194									
195								</div>
196								
197							</p>
198						</div>
199						<div class='block'>
200							<p>
201								If you&rsquo;re attentive, you might have noticed I already have a URL shortener at go.eartharoid.me. This was originally a YOURLS instance until I made a custom solution with Vercel and Firebase/Firestore in January 2021.
202^ The landing page of the 2021 version
203I made the Vercel-Firebase URL shortener because I wanted something fast and serverless, but I still wanted the API, admin UI, and analytics that YOURLS had. It worked well, except that Vercel&rsquo;s caching made the management, preview, and stats pages almost useless.
204							</p>
205						</div>
206						
207						<div class='block'>
208							<a href='https://eartharoid.me/blog/eartharoid-go/'>
209								<button class='button is-info'>
210									<span>Read more</span>
211									<span class='icon'>
212										<i class='fas fa-chevron-right'></i>
213									</span>
214								</button>
215							</a>
216						</div>
217						
218					</div>
219					
220					<div class='content box has-text-white' style='background: linear-gradient( rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85) ), url("/cdn-cgi/image/height=1080,quality=75,format=avif/https://static.eartharoid.me/images/p/danist-bviex5lwf3s-unsplash.jpg") center/1920px;'>
221						<div class='block'>
222							<p class='title is-size-4'>
223								<a href='https://eartharoid.me/blog/i-have-a-blog/'>As you can see, I have a blog</a>
224							</p>
225							<p class='subtitle is-size-6'>
226								15<sup>th</sup> August 2021</p>
227							<p>
228								
229							</p>
230						</div>
231						<div class='block'>
232							<p>
233								Hey, you&rsquo;re reading my blog! I thought it would be cool to have a blog as part of my new website, but I didn&rsquo;t have any plans for the content. I thought about it a little, considered holiday diaries etc, and decided that I don&rsquo;t want it to be too personal, which means it will probably be developer-focused content. Maybe I&rsquo;ll write regularly, or maybe I&rsquo;ll forget about it for a while and write an occasional post about how I made something new.
234							</p>
235						</div>
236						
237						<div class='block'>
238							<a href='https://eartharoid.me/blog/i-have-a-blog/'>
239								<button class='button is-info'>
240									<span>Read more</span>
241									<span class='icon'>
242										<i class='fas fa-chevron-right'></i>
243									</span>
244								</button>
245							</a>
246						</div>
247						
248					</div>
249					
250					<div class='content box has-text-white' style='background: linear-gradient( rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85) ), url("https://storage.ko-fi.com/cdn/generated/aac8fzkyo/d462dbfa-6abf-4867-9340-3b413dceffc8.jpg") center/1920px;'>
251						<div class='block'>
252							<p class='title is-size-4'>
253								<a href='https://eartharoid.me/blog/you-can-now-sponsor-me/'>You can now sponsor me</a>
254							</p>
255							<p class='subtitle is-size-6'>
256								8<sup>th</sup> August 2021</p>
257							<p>
258								
259							</p>
260						</div>
261						<div class='block'>
262							<p>
263								You can now sponsor me on GitHub or become a member on Ko-fi.
264The reward tiers are the same for both platforms, but there are some differences:
265 Ko‑fi is in GBP, GitHub Sponsors is in USD Ko‑fi automatically gives you your Discord role, GitHub Sponsors does not Ko‑fi supports PayPal and card, GitHub Sponsors only supports card payments GitHub Sponsors will show your sponsorship on your GitHub profile  Why sponsor me?
266							</p>
267						</div>
268						
269						<div class='block'>
270							<a href='https://eartharoid.me/blog/you-can-now-sponsor-me/'>
271								<button class='button is-info'>
272									<span>Read more</span>
273									<span class='icon'>
274										<i class='fas fa-chevron-right'></i>
275									</span>
276								</button>
277							</a>
278						</div>
279						
280					</div>
281					
282					<div class='content box has-text-white' style='background: linear-gradient( rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85) ), url("https://eartharoid.me/cdn-cgi/image/height=1080,format=avif/https://static.eartharoid.me/images/p/earth-sunset-from-space.jpg") center/1920px;'>
283						<div class='block'>
284							<p class='title is-size-4'>
285								<a href='https://eartharoid.me/blog/my-new-website/'>My new website</a>
286							</p>
287							<p class='subtitle is-size-6'>
288								19<sup>th</sup> January 2021</p>
289							<p>
290								
291								<div class='tags'>
292									
293									<a href='/tags/websites'
294										class='tag is-primary'>websites</a>
295									
296								</div>
297								
298							</p>
299						</div>
300						<div class='block'>
301							<p>
302								Why I made a new website I started messing with basic HTML and CSS in 2016 and I have had a home page since at least 2019, probably 2018, but it was just an HTML5 UP template. Whilst it looked ok-ish, it was slow and had very little information, only some unoptimized photos (uncompressed and 4K) and links to other pages.
303Although I am writing this in August 2021, I started making this website in early January.
304							</p>
305						</div>
306						
307						<div class='block'>
308							<a href='https://eartharoid.me/blog/my-new-website/'>
309								<button class='button is-info'>
310									<span>Read more</span>
311									<span class='icon'>
312										<i class='fas fa-chevron-right'></i>
313									</span>
314								</button>
315							</a>
316						</div>
317						
318					</div>
319					
320				</div>
321				<div class='column'>
322					<div class='content box has-text-centered'>
323						<p class='is-size-5'>Want to get an email when I publish a new blog post?</p>
324						<a href='https://cdn.forms-content.sg-form.com/0122637e-fdcd-11eb-86f2-1a5c682fc748' target="_blank">
325								<button class='button is-primary is-fullwidth'>
326									<span>Join the mail list</span>
327									<span class='icon'>
328										<i class="fas fa-external-link-alt"></i>
329									</span>
330								</button>
331							</a>
332						
333					</div>
334					<div class='content box'> 
335						<h6>Featured</h6>
336						
337						
338						<div class='block'>
339							<p class='title is-size-4'>
340								<a href='https://eartharoid.me/blog/my-new-website/'>My new website</a>
341							</p>
342							<p class='subtitle is-size-6'>19<sup>th</sup> January 2021</p>
343							<p>
344								
345								<div class='tags'>
346									
347									<a href='/tags/websites'
348										class='tag is-primary'>websites</a>
349									
350								</div>
351								
352							</p>
353						</div>
354						<div class='block'>
355							<p>
356								
357								Why I made a new website I started messing with basic HTML and CSS in 2016 and I have had a home page since at least 2019, probably 2018, but it was just an HTML5 UP template. Whilst it looked ok-ish, it was slow and had very little information, only some unoptimized photos (uncompressed and 4K) and links to other pages.
358Although I am writing this in August 2021, I started making this website in...
359								
360							</p>
361						</div>
362						<div class='block'>
363							<a href='https://eartharoid.me/blog/my-new-website/'>
364								<button class='button is-info'>
365									<span>Read more</span>
366									<span class='icon'>
367										<i class='fas fa-chevron-right'></i>
368									</span>
369								</button>
370							</a>
371						</div>
372						
373						
374					</div>
375					
376					<div class='content box'>
377						<h6>Tags</h6>
378						<p>
379							<div class='tags'>
380								
381								<a href='/tags/discord/' class='tag is-primary'>discord</a>
382								
383								<a href='/tags/java/' class='tag is-primary'>java</a>
384								
385								<a href='/tags/node.js/' class='tag is-primary'>node.js</a>
386								
387								<a href='/tags/photography/' class='tag is-primary'>photography</a>
388								
389								<a href='/tags/react/' class='tag is-primary'>react</a>
390								
391								<a href='/tags/serverless/' class='tag is-primary'>serverless</a>
392								
393								<a href='/tags/vue/' class='tag is-primary'>vue</a>
394								
395								<a href='/tags/websites/' class='tag is-primary'>websites</a>
396								
397							</div>
398						</p>
399					</div>
400					
401				</div>
402			</div>
403		</container>
404	</section>
405</main>
406<section class='section has-text-centered'>
407	
408	<p class='block'>
409		Last Modified: <a href='https://github.com/eartharoid/eartharoid.me/commit/88553ddde57d29cb621d8fa30a9dff0db878b3a8' target='_blank'>7<sup>th</sup> February 2026</a>
410	</p>
411	
412</section>
413<footer class='footer mb-0 pb-6'>
414	<div class='has-text-centered'>
415		<p class='block'>
416			
417			
418			<a href='https://github.com/eartharoid' title='GitHub' rel='noreferrer' target='_blank'>
419				<span class='icon is-large'>
420					<i class='fa-lg fab fa-github'></i>
421				</span>
422			</a>
423			
424			<a href='https://lnk.earth/discord' title='Discord server' rel='noreferrer' target='_blank'>
425				<span class='icon is-large'>
426					<i class='fa-lg fab fa-discord'></i>
427				</span>
428			</a>
429			
430			<a href='https://instagram.com/eartharoid' title='Instagram' rel='noreferrer' target='_blank'>
431				<span class='icon is-large'>
432					<i class='fa-lg fab fa-instagram'></i>
433				</span>
434			</a>
435			
436			<a href='https://twitter.com/eartharoid' title='Twitter' rel='noreferrer' target='_blank'>
437				<span class='icon is-large'>
438					<i class='fa-lg fab fa-twitter'></i>
439				</span>
440			</a>
441			
442			<a href='https://ko-fi.com/eartharoid' title='Ko-fi' rel='noreferrer' target='_blank'>
443				<span class='icon is-large'>
444					<i class='fa-lg fas fa-coffee'></i>
445				</span>
446			</a>
447			
448			
449		</p>
450		<p class='block'>
451			&copy; 2022 Isaac Saunders
452			
453
454			
455			<p>Created with <a href="https://gohugo.io/">Hugo</a> by Isaac.</p>
456<p>This website is <a href="https://github.com/eartharoid/eartharoid.me">open-source</a>.</p>
457
458			
459		</p>
460		<p class='block mt-4'>
461			<a href='https://bulma.io'>
462				<noscript>
463					<img src='/images/bulma-white.png' alt='Made with Bulma' width='128' height='24'
464						media='(prefers-color-scheme: dark)'>
465					<img src='/images/bulma-black.png' alt='Made with Bulma' width='128' height='24'
466						media='(prefers-color-scheme: no-preference), (prefers-color-scheme: light)'>
467				</noscript>
468				<img alt='Made with Bulma' width='128' height='24' id='madeWithBulma'>
469			</a>
470		</p>
471	</div>
472</footer>
472<script src='https://storage.ko-fi.com/cdn/scripts/overlay-widget.js'></script>
472
473	
473<script>
474		kofiWidgetOverlay.draw('eartharoid', {
475			'type': 'floating-chat',
476			'floating-chat.donateButton.text': 'Support me',
477			'floating-chat.donateButton.background-color': '#00C3EE',
478			'floating-chat.donateButton.text-color': '#FFF'
479		});
480	</script>
vendor: 1 bytes, line 480
480
481<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"884a13443a504151a74f67c32212534c","r":1,"spa":2}' crossorigin="anonymous"></script>
481
482</body>
483
484</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.