41554 blogs · [ { "id": "01a0d467-6aa1-71cc-b5d8-9732fb933209", "title": "Rhodomyrtus tomentosa (rose myrtle)", "url": "https://www.thespatula.io/flora_and_fauna/rhodomyrtus_tomentosa/", "published_at": "2026-08-13T00:00:00+00:00" }, { "id": "01a0d467-6aa1-71cc-b5d8-9732fbe36285", "title": "The genus Episomus (a Taiwan weevil)", "url": "https://www.thespatula.io/flora_and_fauna/episomus/", "published_at": "2026-07-17T00:00:00+00:00" }, { "id": "01a087ee-70a9-7233-9202-55ea3e6cbb6a", "title": "Under the Sun", "url": "https://www.thespatula.io/bible/ecclesiastes/", "published_at": "2026-05-29T00:00:00+00:00" }, { "id": "01a087ee-70a9-7233-9202-55ea3ec062f9", "title": "PDF from EPUB", "url": "https://www.thespatula.io/projects/misc-ai/pdf_to_epub/", "published_at": "2026-04-11T00:00:00+00:00" }, { "id": "01a087ee-70a9-7233-9202-55ea3fbcef9e", "title": "Filling a learning gap", "url": "https://www.thespatula.io/projects/chinese_language_podcasts/", "published_at": "2026-03-14T00:00:00+00:00" }, { "id": "01a087ee-70a9-7233-9202-55ea4082791d", "title": "Exploring Arabidopsis Thaliana: Part 1", "url": "https://www.thespatula.io/projects/arabidopsis_thalania/", "published_at": "2026-02-10T00:00:00+00:00" }, { "id": "01a087ee-70a9-7233-9202-55ea40c612b5", "title": "2026 books", "url": "https://www.thespatula.io/books/2026/", "published_at": "2026-01-01T00:00:00+00:00" }, { "id": "01a087ee-70a9-7233-9202-55ea416408f7", "title": "Katydid (Tettigoniidae) - Taiwan", "url": "https://www.thespatula.io/flora_and_fauna/katydid/", "published_at": "2025-10-04T00:00:00+00:00" }, { "id": "01a087ee-70a9-7233-9202-55ea419e65cd", "title": "2025 books", "url": "https://www.thespatula.io/books/2025/", "published_at": "2025-07-31T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f0de08777", "title": "Pilgrim at Tinker Creek", "url": "https://www.thespatula.io/books/tinker/", "published_at": "2025-05-12T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f0dff96d3", "title": "Leaving no stone unturned", "url": "https://www.thespatula.io/life/mystery/", "published_at": "2025-02-08T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f0ec761fb", "title": "Rust - A low-level echo server using io_uring", "url": "https://www.thespatula.io/rust/rust_io_uring_echo_server/", "published_at": "2024-08-25T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f0ed16974", "title": "Rust - Using io_uring through your own bindings", "url": "https://www.thespatula.io/rust/rust_io_uring_bindings/", "published_at": "2024-08-09T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f0f039464", "title": "[CSA]: Static site with AWS", "url": "https://www.thespatula.io/tech/aws/basic_static_website/", "published_at": "2024-08-03T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f0fdd84ef", "title": "Taipei", "url": "https://www.thespatula.io/life/taipei/", "published_at": "2024-07-26T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f100471d7", "title": "[CSA]: Adding groups and users in AWS", "url": "https://www.thespatula.io/tech/aws/add_group_and_user/", "published_at": "2024-07-22T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f109dc5ed", "title": "Rust - Implementing WebSockets", "url": "https://www.thespatula.io/rust/rust_websocket/", "published_at": "2024-07-12T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f116c0f3a", "title": "Rust - Base64 encoding and decoding", "url": "https://www.thespatula.io/rust/rust_base64/", "published_at": "2024-06-25T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1254722f", "title": "Rust - Implementing SHA-1", "url": "https://www.thespatula.io/rust/rust_sha1/", "published_at": "2024-06-15T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f128920e7", "title": "SvelteKit (Svelte 5) and Supabase", "url": "https://www.thespatula.io/svelte/sveltekit_supabase/", "published_at": "2024-06-15T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1305896b", "title": "Rust - Option and Result", "url": "https://www.thespatula.io/rust/rust_option_result/", "published_at": "2024-04-19T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f137f979f", "title": "SvelteKit and Stripe demo", "url": "https://www.thespatula.io/projects/sveltekit-stripe-demo/demo/", "published_at": "2024-04-04T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f13b20c70", "title": "Clickbait detector", "url": "https://www.thespatula.io/projects/clickbait_detector/clickbait_detector/", "published_at": "2024-04-03T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f14186c45", "title": "Growing up", "url": "https://www.thespatula.io/life/growing_up/", "published_at": "2024-03-27T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f14b3ff0a", "title": "Notes on Rust's borrow system", "url": "https://www.thespatula.io/rust/rust_lifetimes/", "published_at": "2024-03-23T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f159fafec", "title": "AI FAQ: Word2Vec - Skipgram", "url": "https://www.thespatula.io/tech/ai/word_2_vec_skipgram/", "published_at": "2024-03-18T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f16960df1", "title": "AI FAQ: Token", "url": "https://www.thespatula.io/tech/ai/token/", "published_at": "2024-03-17T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f17415b62", "title": "AI FAQ: Embeddings", "url": "https://www.thespatula.io/tech/ai/embeddings/", "published_at": "2024-03-15T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f17c6a7c1", "title": "Question builder", "url": "https://www.thespatula.io/projects/question_builder/question_builder/", "published_at": "2024-03-11T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1856a6ba", "title": "AI FAQ: One-hot encoding", "url": "https://www.thespatula.io/tech/ai/one_hot_encoding/", "published_at": "2024-03-03T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f18c9f788", "title": "AI FAQ: Word vectors", "url": "https://www.thespatula.io/tech/ai/word_vectors/", "published_at": "2024-03-02T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1931576f", "title": "AI FAQ", "url": "https://www.thespatula.io/tech/ai/faq_index/", "published_at": "2024-03-01T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f19f81fc1", "title": "Taking away", "url": "https://www.thespatula.io/life/taking_away/", "published_at": "2024-02-11T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1aea7945", "title": "Microsoft learn's AI course", "url": "https://www.thespatula.io/tech/ms-learn/ai-fundamentals/", "published_at": "2024-02-03T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1b666622", "title": "Async rationality", "url": "https://www.thespatula.io/life/rationality/", "published_at": "2024-01-30T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1c3ba593", "title": "Wababi, why?", "url": "https://www.thespatula.io/tech/misc/wasabi-what/", "published_at": "2024-01-01T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1cb7eef8", "title": "Unsocial media: The world is born", "url": "https://www.thespatula.io/projects/nimp/part_3/", "published_at": "2023-12-25T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1d38596b", "title": "Chinese Banyan", "url": "https://www.thespatula.io/flora_and_fauna/ficus_microcarpa/", "published_at": "2023-12-12T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1d4b068c", "title": "Twoleaf nightshade", "url": "https://www.thespatula.io/flora_and_fauna/solanum_diphyllum/", "published_at": "2023-12-11T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1d8c04d2", "title": "Cassia javanica", "url": "https://www.thespatula.io/flora_and_fauna/cassia_javanica/", "published_at": "2023-12-05T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1e8667d4", "title": "GPTease: In the abstract", "url": "https://www.thespatula.io/tech/chatgpt/abstract_experiment_2/", "published_at": "2023-12-03T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f1f46fae3", "title": "Fourplay: A multiplayer word game", "url": "https://www.thespatula.io/projects/fourplay/fourplay/", "published_at": "2023-11-29T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f20057c48", "title": "GPTease: Stacks on stacks", "url": "https://www.thespatula.io/tech/chatgpt/stacks_experiment_1/", "published_at": "2023-11-27T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f20acbde4", "title": "Unsocial media: The Data", "url": "https://www.thespatula.io/projects/nimp/part_2/", "published_at": "2023-11-10T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f20f28d4c", "title": "Kids", "url": "https://www.thespatula.io/life/kids/", "published_at": "2023-10-20T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f218f7ea4", "title": "NIMP: Getting started", "url": "https://www.thespatula.io/projects/nimp/nimp_1/", "published_at": "2023-10-12T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f221512db", "title": "API endpoints in SvelteKit", "url": "https://www.thespatula.io/svelte/svelte_api_endpoints/", "published_at": "2023-09-25T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f231086e6", "title": "Tailored materials for education", "url": "https://www.thespatula.io/education/p5js/", "published_at": "2023-06-12T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f2361060e", "title": "SvelteKit's load", "url": "https://www.thespatula.io/svelte/svelte_load/", "published_at": "2023-01-03T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f2398685d", "title": "About", "url": "https://www.thespatula.io/about/", "published_at": "2023-01-01T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f23ddc199", "title": "Instructional Design", "url": "https://www.thespatula.io/portfolio/instructional_design/", "published_at": "2023-01-01T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f24a84420", "title": "Projects", "url": "https://www.thespatula.io/project-list/", "published_at": "2023-01-01T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f24e38498", "title": "Secure APIs: Part 5", "url": "https://www.thespatula.io/tech/securing-apis/jwts/", "published_at": "2022-12-20T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f25de9455", "title": "Serverless", "url": "https://www.thespatula.io/tech/misc/serverless/", "published_at": "2022-12-15T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f26ab0844", "title": "Secure APIs: Part 4 - TLS", "url": "https://www.thespatula.io/tech/securing-apis/tls/", "published_at": "2022-12-05T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f275d19a7", "title": "Securing APIs: Part 3 - CORS", "url": "https://www.thespatula.io/tech/securing-apis/cors/", "published_at": "2022-12-05T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f282933f0", "title": "Securing APIs: Part 2 - Simple API", "url": "https://www.thespatula.io/tech/securing-apis/simple-api/", "published_at": "2022-12-03T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f2891e583", "title": "Using images for network analysis", "url": "https://www.thespatula.io/tech/network-analysis/network_analysis/", "published_at": "2022-12-02T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f28f8f365", "title": "Securing APIs: Part 1 - Setup", "url": "https://www.thespatula.io/tech/securing-apis/setup/", "published_at": "2022-12-01T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f29d300fb", "title": "The future of experience", "url": "https://www.thespatula.io/life/experience/", "published_at": "2022-11-09T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f2a5c496c", "title": "Iterators in Rust", "url": "https://www.thespatula.io/rust/rust_iterators/", "published_at": "2022-10-11T00:00:00+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f2b49dddf", "title": "SvelteKit and Mathjax", "url": "https://www.thespatula.io/svelte/mathjax_svelte/", "published_at": "2022-02-21T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f2bf15707", "title": "Reading bytes in Rust", "url": "https://www.thespatula.io/rust/rust_in_bytes/", "published_at": "2022-02-17T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f2c0d9d13", "title": "SvelteKit issue", "url": "https://www.thespatula.io/svelte/sveltekit_autoadapter_bug/", "published_at": "2022-02-17T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f2c38d320", "title": "Actix web tutorial with Diesel", "url": "https://www.thespatula.io/rust/rust_actix_and_diesel/", "published_at": "2021-02-17T05:34:33+00:00" }, { "id": "01a087ee-70aa-73ae-a659-4b1f2ca13710", "title": null, "url": "https://www.thespatula.io/tech/ai/word_2_vec_cbow/", "published_at": null }, { "id": "01a087ee-70aa-73ae-a659-4b1f2d6a513f", "title": "the spatula", "url": "https://www.thespatula.io/sidebar/", "published_at": null } ] posts Claim your blog
Back to thespatula.io
Blog · corpus.blog/blogs/thespatula.io/posts

thespatula.io

thespatula.io

2026

2025

2024

2023

20 Oct 2023

2022

2021

Undated