<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Byron Wade</title>
    <description>The latest articles on DEV Community by Byron Wade (@byronwade).</description>
    <link>https://dev.to/byronwade</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F350006%2F7edc6fb2-587e-4df2-8c7d-54380400fb86.png</url>
      <title>DEV Community: Byron Wade</title>
      <link>https://dev.to/byronwade</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/byronwade"/>
    <language>en</language>
    <item>
      <title>DITS: Rebuilding “Git” for Video, Game Assets, and the Stuff That Breaks Git</title>
      <dc:creator>Byron Wade</dc:creator>
      <pubDate>Sun, 14 Dec 2025 19:12:55 +0000</pubDate>
      <link>https://dev.to/byronwade/dits-rebuilding-git-for-video-game-assets-and-the-stuff-that-breaks-git-329o</link>
      <guid>https://dev.to/byronwade/dits-rebuilding-git-for-video-game-assets-and-the-stuff-that-breaks-git-329o</guid>
      <description>&lt;p&gt;If you’ve ever tried to version a &lt;strong&gt;10GB video&lt;/strong&gt;, a &lt;strong&gt;folder of Unreal assets&lt;/strong&gt;, or a &lt;strong&gt;dataset that mutates daily&lt;/strong&gt;, you’ve probably had the same experience:&lt;/p&gt;

&lt;p&gt;Git is incredible… right up until it isn’t.&lt;/p&gt;

&lt;p&gt;And then the workflow becomes some combination of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;“Just upload it to Drive”&lt;/li&gt;
&lt;li&gt;“Zip it and put it in Slack”&lt;/li&gt;
&lt;li&gt;“Name it &lt;code&gt;final_final_v12_really_final.zip&lt;/code&gt;”&lt;/li&gt;
&lt;li&gt;“Please don’t touch that folder, it’s fragile”&lt;/li&gt;
&lt;li&gt;“We’ll figure out versioning later” (Narrator: they never do)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;DITS&lt;/strong&gt; is my attempt to attack that problem at the root.&lt;/p&gt;

&lt;p&gt;Repo: &lt;a href="https://github.com/byronwade/dits" rel="noopener noreferrer"&gt;https://github.com/byronwade/dits&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Concept site: &lt;a href="https://dits.byronwade.com" rel="noopener noreferrer"&gt;https://dits.byronwade.com&lt;/a&gt;  &lt;/p&gt;

&lt;p&gt;This post is long because the problem is not “a feature missing.”&lt;br&gt;&lt;br&gt;
It’s a &lt;em&gt;primitive missing&lt;/em&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why I Started Thinking About This
&lt;/h2&gt;

&lt;p&gt;Git changed the world because it gave us a new &lt;em&gt;way to think&lt;/em&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;history is a first-class citizen&lt;/li&gt;
&lt;li&gt;collaboration is distributed&lt;/li&gt;
&lt;li&gt;storage is optimized around changes, not copies&lt;/li&gt;
&lt;li&gt;identity is based on content, not filenames&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But Git assumes the thing you’re versioning is &lt;strong&gt;text-like&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;line-based diffs&lt;/li&gt;
&lt;li&gt;merge-friendly changes&lt;/li&gt;
&lt;li&gt;small-ish files&lt;/li&gt;
&lt;li&gt;frequent small commits&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That’s not how video or game assets behave.&lt;/p&gt;

&lt;p&gt;A one-second trim in a video editor can rewrite massive spans of bytes.&lt;br&gt;&lt;br&gt;
A small change in a 3D scene can reshuffle asset metadata.&lt;br&gt;&lt;br&gt;
A “minor” export can produce a completely different binary layout.&lt;/p&gt;

&lt;p&gt;So when people say “just use Git LFS,” it’s usually because they’ve never tried to scale a workflow where the &lt;em&gt;primary&lt;/em&gt; artifacts are large binaries.&lt;/p&gt;

&lt;p&gt;Git LFS can help with storage location.&lt;br&gt;&lt;br&gt;
But it doesn’t solve the deeper issues:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the network cost of change&lt;/li&gt;
&lt;li&gt;the lack of meaningful diffs&lt;/li&gt;
&lt;li&gt;the inefficiency of re-uploading big blobs&lt;/li&gt;
&lt;li&gt;the inability to treat big assets as collaborative, composable history&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I wanted something that preserves Git’s &lt;em&gt;spirit&lt;/em&gt; while being honest about binary reality.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Core Question
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;What is Git’s real magic?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most people think it’s version history or branches.&lt;/p&gt;

&lt;p&gt;I think Git’s core magic is this:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;You don’t store files.&lt;br&gt;&lt;br&gt;
You store &lt;em&gt;content&lt;/em&gt;, and you store it in a way that makes “change” cheap.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A commit in Git is essentially:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a snapshot pointer to a tree of objects&lt;/li&gt;
&lt;li&gt;built from content-addressed data&lt;/li&gt;
&lt;li&gt;where unchanged content is reused automatically&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That model is &lt;em&gt;insanely powerful&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;So the real question became:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Can we build that same model for large binary assets — where change is cheap — even if the file itself is hostile to diffing?&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  What “Cheap Change” Means for Binary Media
&lt;/h2&gt;

&lt;p&gt;For text:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a few lines change → store a small diff → ship a small diff&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For video / binaries:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a small edit can cause huge byte-level changes → naive diff becomes meaningless&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So we need a different strategy.&lt;/p&gt;

&lt;p&gt;The strategy I’m exploring with DITS is:&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Content-defined chunking&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Instead of treating a file as one giant blob, you split it into chunks.&lt;br&gt;&lt;br&gt;
But importantly: not fixed-size chunks.&lt;/p&gt;

&lt;p&gt;Fixed-size chunking is fragile: insert data at the front and everything shifts → every chunk changes → dedupe fails.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Content-defined chunking&lt;/strong&gt; (like FastCDC and related approaches) anchors chunk boundaries based on the content stream itself, so edits tend to affect &lt;em&gt;local regions&lt;/em&gt; rather than shifting the whole file.&lt;/p&gt;

&lt;p&gt;That gives you two huge wins:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Dedup across versions&lt;/strong&gt; (reuse unchanged chunks)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dedup across projects&lt;/strong&gt; (identical chunks used in different files become shared)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you’ve ever wondered why Git feels “magical” even when you branch like a raccoon on espresso… this is basically why: reuse.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Mental Model of DITS
&lt;/h2&gt;

&lt;p&gt;Here’s the version I keep in my head:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A “file” is a &lt;strong&gt;manifest&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;The manifest points to &lt;strong&gt;chunks&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Chunks are content-addressed (hash-identified)&lt;/li&gt;
&lt;li&gt;A “version” is a manifest + metadata + parent pointer(s)&lt;/li&gt;
&lt;li&gt;Syncing is: “do you already have these chunks? no? here are the missing ones.”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So rather than uploading a 20GB file every time, you’re uploading:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;some metadata&lt;/li&gt;
&lt;li&gt;and the subset of chunks that are actually new&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is the &lt;em&gt;first principle&lt;/em&gt; I care about:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Bandwidth cost should scale with the &lt;em&gt;edit&lt;/em&gt;, not the &lt;em&gt;file size&lt;/em&gt;.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Why This Is Bigger Than “Another Tool”
&lt;/h2&gt;

&lt;p&gt;This isn’t just about “file storage.”&lt;/p&gt;

&lt;p&gt;This is about building a system where you can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;collaborate on large media assets&lt;/li&gt;
&lt;li&gt;branch and merge workflows&lt;/li&gt;
&lt;li&gt;maintain history with integrity&lt;/li&gt;
&lt;li&gt;cache and reuse data efficiently&lt;/li&gt;
&lt;li&gt;synchronize across machines without redundancy&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If it works, it affects:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;indie game development&lt;/li&gt;
&lt;li&gt;film &amp;amp; editing pipelines&lt;/li&gt;
&lt;li&gt;ML datasets&lt;/li&gt;
&lt;li&gt;CAD and 3D assets&lt;/li&gt;
&lt;li&gt;and frankly… cloud providers who pay the tax for redundant upload/download&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A lot of modern workflows are basically:&lt;br&gt;
“just re-upload the world because versioning is annoying.”&lt;/p&gt;

&lt;p&gt;That’s insane.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Hard Parts (And Why They’re Interesting)
&lt;/h2&gt;

&lt;p&gt;This is where the project gets real.&lt;/p&gt;

&lt;h3&gt;
  
  
  1) Chunking is not “just split it”
&lt;/h3&gt;

&lt;p&gt;Chunking affects everything:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;dedup ratio&lt;/li&gt;
&lt;li&gt;reconstruction speed&lt;/li&gt;
&lt;li&gt;memory usage&lt;/li&gt;
&lt;li&gt;integrity verification&lt;/li&gt;
&lt;li&gt;parallelization&lt;/li&gt;
&lt;li&gt;latency&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;DITS needs chunking that is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;stable across small edits&lt;/li&gt;
&lt;li&gt;fast enough to run on normal machines&lt;/li&gt;
&lt;li&gt;tunable for different file types&lt;/li&gt;
&lt;li&gt;safe against pathological cases&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2) Delta compression vs chunk reuse
&lt;/h3&gt;

&lt;p&gt;Chunk reuse gets you far — but not always.&lt;/p&gt;

&lt;p&gt;Sometimes you have chunks that are &lt;em&gt;similar&lt;/em&gt; but not identical.&lt;br&gt;&lt;br&gt;
Delta compression can reduce storage further, but then reconstruction gets heavier and you introduce new complexity:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;delta chains&lt;/li&gt;
&lt;li&gt;dependency graphs&lt;/li&gt;
&lt;li&gt;worst-case rebuild time&lt;/li&gt;
&lt;li&gt;corruption blast radius&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A big part of the thought process is:&lt;br&gt;
&lt;strong&gt;where to be aggressive vs where to stay simple.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  3) Reconstruction speed matters as much as storage
&lt;/h3&gt;

&lt;p&gt;If you store a file in a thousand chunks, you have to rebuild it.&lt;/p&gt;

&lt;p&gt;That rebuild must be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;fast&lt;/li&gt;
&lt;li&gt;parallelizable&lt;/li&gt;
&lt;li&gt;streamable&lt;/li&gt;
&lt;li&gt;resilient&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A system that saves bandwidth but makes checkout take 5 minutes is just a new kind of pain.&lt;/p&gt;

&lt;h3&gt;
  
  
  4) Metadata is the real “Git layer”
&lt;/h3&gt;

&lt;p&gt;Git isn’t “files.” Git is metadata about files.&lt;/p&gt;

&lt;p&gt;Same here.&lt;/p&gt;

&lt;p&gt;DITS needs a robust model for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;manifests&lt;/li&gt;
&lt;li&gt;versions&lt;/li&gt;
&lt;li&gt;history&lt;/li&gt;
&lt;li&gt;references&lt;/li&gt;
&lt;li&gt;integrity verification&lt;/li&gt;
&lt;li&gt;partial fetch (“give me only what I need to preview”)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is where the system becomes a platform.&lt;/p&gt;




&lt;h2&gt;
  
  
  A Concrete Example (The “One-Second Edit” Problem)
&lt;/h2&gt;

&lt;p&gt;Imagine a 5GB video file.&lt;/p&gt;

&lt;p&gt;You open it, trim 1 second, export again.&lt;/p&gt;

&lt;p&gt;Most systems treat this as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Old file: 5GB&lt;/li&gt;
&lt;li&gt;New file: 5GB&lt;/li&gt;
&lt;li&gt;Upload: 5GB again&lt;/li&gt;
&lt;li&gt;Storage: 10GB&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But conceptually, the edit is tiny.&lt;/p&gt;

&lt;p&gt;With chunk-based versioning:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;many chunks remain identical&lt;/li&gt;
&lt;li&gt;some chunks near the edit region change&lt;/li&gt;
&lt;li&gt;some metadata changes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Best-case outcome:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;you store and transmit a fraction of the file&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Even if video codecs cause changes beyond the trimmed region, you still often get meaningful reuse depending on format and chunking strategy.&lt;/p&gt;

&lt;p&gt;And even if you &lt;em&gt;don’t&lt;/em&gt; get perfect reuse, the system gives you a framework to improve:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;file-type aware chunking&lt;/li&gt;
&lt;li&gt;codec-aware strategies&lt;/li&gt;
&lt;li&gt;optional delta layers&lt;/li&gt;
&lt;li&gt;smarter previews&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Speculative Uploads (Because Humans Don’t Wait)
&lt;/h2&gt;

&lt;p&gt;One idea I keep coming back to is &lt;strong&gt;speculative transport&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;When someone is editing a file, we already know something:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;there will be a “next version”&lt;/li&gt;
&lt;li&gt;much of the content stream can be chunked as it’s being produced&lt;/li&gt;
&lt;li&gt;we can start uploading chunks before the final render completes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is the same kind of thinking that makes modern web apps feel instant:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;pipeline the work&lt;/li&gt;
&lt;li&gt;overlap compute and network&lt;/li&gt;
&lt;li&gt;reduce perceived latency&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For large media pipelines, “upload time” is part of the workflow tax.&lt;/p&gt;

&lt;p&gt;If DITS can shrink that tax by shipping incrementally, it changes how collaboration feels.&lt;/p&gt;




&lt;h2&gt;
  
  
  What DITS Is &lt;em&gt;Not&lt;/em&gt; Trying to Be (Yet)
&lt;/h2&gt;

&lt;p&gt;This part matters because it’s easy to assume too much.&lt;/p&gt;

&lt;p&gt;DITS is not (right now):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a polished UI&lt;/li&gt;
&lt;li&gt;a full asset manager&lt;/li&gt;
&lt;li&gt;a replacement for every DAM / MAM&lt;/li&gt;
&lt;li&gt;a Dropbox competitor&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s closer to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a content-addressed engine&lt;/li&gt;
&lt;li&gt;a history graph&lt;/li&gt;
&lt;li&gt;a transport + dedup primitive&lt;/li&gt;
&lt;li&gt;a “Git-like substrate” for binary assets&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The UI layer can come later.&lt;/p&gt;

&lt;p&gt;The primitive must be right first.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Shape of the Tooling (What I Imagine Using)
&lt;/h2&gt;

&lt;p&gt;The end-user experience I want is boring in the best way:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;dits init&lt;/code&gt; — initialize a workspace&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;dits add &amp;lt;path&amp;gt;&lt;/code&gt; — chunk, hash, and track assets&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;dits commit -m "trim intro"&lt;/code&gt; — create a version snapshot&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;dits push&lt;/code&gt; — sync missing chunks + metadata&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;dits pull&lt;/code&gt; — fetch what you don’t have&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;dits checkout &amp;lt;version&amp;gt;&lt;/code&gt; — reconstruct the assets&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Under the hood it’s complicated.&lt;br&gt;&lt;br&gt;
On the surface it should feel &lt;strong&gt;as natural as Git&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Because that’s how you know you’ve built a good abstraction:&lt;br&gt;&lt;br&gt;
the complexity is there, but the workflow is simple.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Goal: Make “History” Normal for Binary Work
&lt;/h2&gt;

&lt;p&gt;The biggest cultural shift Git gave developers was:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;history isn’t optional&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Binary workflows still live in a world where history is either:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;manual (“v7_final”)&lt;/li&gt;
&lt;li&gt;expensive (duplicating huge files)&lt;/li&gt;
&lt;li&gt;fragile (ad hoc scripts)&lt;/li&gt;
&lt;li&gt;centralized (vendor lock-in)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If DITS can make “binary history” normal — cheap, verifiable, collaborative — it becomes a missing piece in modern production pipelines.&lt;/p&gt;




&lt;h2&gt;
  
  
  Where This Goes Next
&lt;/h2&gt;

&lt;p&gt;Right now DITS is a public build-in-the-open project:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ideas → prototypes → measurements → iteration&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The near-term goals are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;prove chunking + manifests behave as expected&lt;/li&gt;
&lt;li&gt;prove sync efficiency&lt;/li&gt;
&lt;li&gt;prove reconstruction speed&lt;/li&gt;
&lt;li&gt;test on real media workloads (video, 3D assets, etc.)&lt;/li&gt;
&lt;li&gt;validate the graph model for versions and references&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Longer term:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;remote chunk stores&lt;/li&gt;
&lt;li&gt;distributed caching&lt;/li&gt;
&lt;li&gt;integrity + verification tooling&lt;/li&gt;
&lt;li&gt;smarter diff/preview layers&lt;/li&gt;
&lt;li&gt;“DITSHub” style compute services for heavy reconstruction workflows (optional)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But the foundation remains the same:&lt;br&gt;
&lt;strong&gt;make change cheap.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  If You Want to Help (Or Tear It Apart)
&lt;/h2&gt;

&lt;p&gt;I genuinely want:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;skepticism&lt;/li&gt;
&lt;li&gt;edge cases&lt;/li&gt;
&lt;li&gt;“this will fail because X”&lt;/li&gt;
&lt;li&gt;“have you considered Y”&lt;/li&gt;
&lt;li&gt;“here’s a paper to read”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Because this is the kind of idea that only survives if it’s attacked early.&lt;/p&gt;

&lt;p&gt;Repo: &lt;a href="https://github.com/byronwade/dits" rel="noopener noreferrer"&gt;https://github.com/byronwade/dits&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Site: &lt;a href="https://dits.byronwade.com" rel="noopener noreferrer"&gt;https://dits.byronwade.com&lt;/a&gt;  &lt;/p&gt;

&lt;p&gt;If you’ve dealt with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;video pipelines&lt;/li&gt;
&lt;li&gt;game asset workflows&lt;/li&gt;
&lt;li&gt;ML dataset versioning&lt;/li&gt;
&lt;li&gt;distributed storage / dedup systems&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;…tell me what would make this actually useful in your world.&lt;/p&gt;

&lt;p&gt;And if you’re still naming files &lt;code&gt;final_final_v12.zip&lt;/code&gt;, you’re among friends here.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>productivity</category>
      <category>rust</category>
    </item>
    <item>
      <title>Why It's Time to Challenge the Status Quo of CMS Development</title>
      <dc:creator>Byron Wade</dc:creator>
      <pubDate>Tue, 01 Oct 2024 12:34:29 +0000</pubDate>
      <link>https://dev.to/byronwade/why-its-time-to-challenge-the-status-quo-of-cms-development-39on</link>
      <guid>https://dev.to/byronwade/why-its-time-to-challenge-the-status-quo-of-cms-development-39on</guid>
      <description>&lt;p&gt;Hey Developers! 🚀&lt;/p&gt;

&lt;p&gt;Are you tired of being boxed in by bloated, outdated, and clunky CMS systems like WordPress? Frustrated by the limitations of "headless" CMS solutions that still require you to glue everything together with endless services and integrations? Well, I felt the same way, and that's why I'm launching &lt;strong&gt;Thorbis&lt;/strong&gt; – a new, open-source CMS built on &lt;strong&gt;Next.js 13+&lt;/strong&gt; that aims to disrupt the entire industry. But I need your help to make it happen.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;The Problem with Traditional CMS Platforms&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Let’s be honest – WordPress has had a great run, but it's showing its age. As developers, we want &lt;strong&gt;speed, flexibility, and control&lt;/strong&gt; over our websites, not to be shackled by old PHP code and endless plugin conflicts. And while the rise of headless CMS systems sounded like a dream, they come with their own set of issues:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Too Many Moving Parts&lt;/strong&gt;: You’re paying for a headless CMS service, hosting, a database, and maybe even some third-party integrations – all to get a simple website up and running.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Complex Deployment&lt;/strong&gt;: Deploying and maintaining a headless CMS requires more than just basic knowledge – it’s a nightmare for non-developers and even a hassle for us pros.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Costs Add Up Quickly&lt;/strong&gt;: When you factor in all the different services you need to make a headless CMS function, you’re often spending way more than you anticipated.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;What Makes Thorbis Different?&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Thorbis is here to solve these problems by combining the best of both worlds: the &lt;strong&gt;ease of WordPress&lt;/strong&gt; with the &lt;strong&gt;modern, serverless power&lt;/strong&gt; of a Next.js app. And here’s the kicker – we’re introducing &lt;strong&gt;Blueprints&lt;/strong&gt;, a new concept that’s designed to make developers excited about building themes and layouts again.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Blueprints Explained:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Blueprints aren’t just themes. They are &lt;strong&gt;dynamic page structures&lt;/strong&gt;, allowing you to define layouts, reusable components, and styling with React – giving you complete control over your design.&lt;/li&gt;
&lt;li&gt;They provide a seamless experience for both developers and non-developers, meaning your clients can manage their website without destroying your beautiful code.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The Full Package:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Serverless &amp;amp; Scalable&lt;/strong&gt;: Deploy your entire website on a serverless platform like Vercel or Netlify without worrying about scalability or performance.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Built-In NextAuth&lt;/strong&gt;: Forget about spending days setting up authentication – Thorbis integrates with multiple providers (Google, GitHub, email, etc.) out of the box.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prisma-Powered Database&lt;/strong&gt;: Start with SQLite for local development, scale to PostgreSQL when you need to – all managed seamlessly via Prisma.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Why Should You Join This Project?&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;I'm not a developer guru – I’m a novice who knows just enough to be dangerous, but what I lack in technical expertise, I make up for in &lt;strong&gt;marketing, business acumen, and passion&lt;/strong&gt;. That’s why I’m reaching out to the developer community. I believe Thorbis has the potential to &lt;strong&gt;shake up the CMS world&lt;/strong&gt;, but I need the expertise of those who understand code better than I do to make it happen.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Who This Is For&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Developers&lt;/strong&gt; who are tired of WordPress but want an alternative that gives them the &lt;strong&gt;freedom to code&lt;/strong&gt; while still providing an easy-to-use interface for clients.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Agencies&lt;/strong&gt; looking to cut costs, speed up deployment times, and offer their clients a solution that’s tailored to modern web development.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Freelancers&lt;/strong&gt; who want to build websites that are fun to create, easy to maintain, and don't require endless plugin updates.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Thorbis’s Goals&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Make Development Fun Again&lt;/strong&gt;: Build dynamic layouts, integrate custom APIs, and create interactive websites with React components, all without the hassle of a traditional CMS.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Free the Hosting Game&lt;/strong&gt;: Host your site wherever you want – start on a free tier with Vercel or Netlify, then scale up using any database or storage solution you prefer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Empower Non-Developers&lt;/strong&gt;: Give clients an intuitive admin panel that makes editing pages and posts a breeze, without breaking the carefully crafted code you’ve written.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;What the Developer Community Gets Wrong&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Developers are often &lt;strong&gt;skeptical of new CMS platforms&lt;/strong&gt;, and I get it – we’ve all been burned by platforms that promise the moon but fail to deliver. But here's why Thorbis is different:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;It's Open Source&lt;/strong&gt;: No vendor lock-in. You have full access to the code, and the community will shape how Thorbis grows.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Next.js at Its Core&lt;/strong&gt;: By building directly on top of Next.js, you get all the benefits of React’s ecosystem, serverless deployment, and modern development practices.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Developer-Led Approach&lt;/strong&gt;: You aren’t forced to use pre-built modules – you can customize, extend, and adapt Thorbis to your heart’s content.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;How You Can Get Involved&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;If you’re tired of CMS platforms that don't give you the control and freedom you deserve, now’s the time to jump in:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Join the Conversation&lt;/strong&gt;: Be part of our &lt;strong&gt;Discord community&lt;/strong&gt; where we’re actively building Thorbis and shaping its future. &lt;a href="https://discord.gg/5Na8CUUajP" rel="noopener noreferrer"&gt;Join Our Discord&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Check Out the GitHub Repo&lt;/strong&gt;: We’re 100% open-source, and I’d love to see your pull requests, issues, and ideas. &lt;a href="https://github.com/byronwade/thorbis" rel="noopener noreferrer"&gt;Thorbis&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mentor Me&lt;/strong&gt;: I’m a decent marketer and business person but need your technical know-how to bring Thorbis to life. Help guide me as we build something amazing together.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Final Thoughts&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;The web development world needs a shake-up, and I believe Thorbis can be that catalyst. Whether you’re an experienced dev looking for your next open-source project, or just curious about what’s possible with modern web technologies, I want you on this journey.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The CMS market is ripe for disruption.&lt;/strong&gt; Let’s build a system that developers love, clients find intuitive, and one that doesn’t force us into outdated, bloated architectures.&lt;/p&gt;

&lt;p&gt;Let’s make this happen – &lt;strong&gt;Thorbis is just the start.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>serverless</category>
      <category>wordpress</category>
      <category>nextjs</category>
    </item>
    <item>
      <title>Join the Movement: Collaborate with Us to Launch Emailmework.com</title>
      <dc:creator>Byron Wade</dc:creator>
      <pubDate>Wed, 08 Feb 2023 08:00:57 +0000</pubDate>
      <link>https://dev.to/byronwade/join-the-movement-collaborate-with-us-to-launch-emailmeworkcom-10p</link>
      <guid>https://dev.to/byronwade/join-the-movement-collaborate-with-us-to-launch-emailmeworkcom-10p</guid>
      <description>&lt;p&gt;Are you tired of the inefficiencies of traditional job boards and the frustration of irrelevant job postings? I am and that's why I am launching Emailmework.com, a platform that revolutionizes the job search process by connecting companies and customers in the most efficient and fair way.&lt;/p&gt;

&lt;p&gt;At Emailmework.com, my aim is to provide in-depth company profiles and a sophisticated algorithm that rates both companies and customers based on factors such as customer behavior, frequency of reviews, and response time. This ensures a seamless and effective match between the right company and customer.&lt;/p&gt;

&lt;p&gt;I am committed to fostering a respectful and collaborative community between companies and customers. Say goodbye to irrelevant job postings and hello to a job search process that actually works.&lt;/p&gt;

&lt;p&gt;I am a decent web designer with a background in programming development. However, I am currently a one-man team and am in search of like-minded individuals who are passionate about innovation and revolutionizing the job search process. If you have programming skills or expertise in a particular industry and a drive to make a difference, I would love for you to join me on this exciting journey.&lt;/p&gt;

&lt;p&gt;To learn more about this opportunity, email me at &lt;a href="mailto:bcw1995@gmail.com"&gt;bcw1995@gmail.com&lt;/a&gt;. Let's change the job search game together.&lt;/p&gt;

&lt;p&gt;Here is the repo with more information (I have only just now started this repo):&lt;br&gt;
&lt;a href="https://github.com/byronwade/emailmework.com" rel="noopener noreferrer"&gt;https://github.com/byronwade/emailmework.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As the CEO of Wade's Inc, which owns Wade's Plumbing &amp;amp; Septic and Clog Monsters Septic Pumping, I have a passion for innovation and a desire to revolutionize the job search process. That's why I have taken the time to create Emailmework.com, a cutting-edge platform that connects companies and customers in the most efficient and fair way.&lt;/p&gt;

&lt;p&gt;I have a background in programming and web design, having attended Cherokee High School in Georgia and currently pursuing a degree in Computer Science and Civil Engineering at Cabrillo College in Santa Cruz. My expertise in plumbing and sanitation systems, combined with my passion for programming, makes me the ideal person to bring my vision for Emailmework.com to life.&lt;/p&gt;

&lt;p&gt;I am eager to collaborate with others who share my passion for making a difference in the job matching process. If you're a professional with expertise in a particular industry or have programming skills and a drive to innovate, I would love to hear from you. Let's work together to change the job search game and make finding the right job or customer easier than ever.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
