# 22.00.0081: What’s wrong with this data structure?

**URL:** <https://forum.johnnydecimal.com/t/22-00-0081-what-s-wrong-with-this-data-structure/1855>\
**Category:** 22 Blog\
**Created:** [September 30, 2024, 6:27am UTC](https://forum.johnnydecimal.com/t/22-00-0081-what-s-wrong-with-this-data-structure/1855 "2024-09-30T06:27:05Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![johnnydecimal](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/johnnydecimal/32/1759_2.png) [@johnnydecimal](https://forum.johnnydecimal.com/u/johnnydecimal)\
**Post date:** [September 30, 2024, 6:27am UTC](https://forum.johnnydecimal.com/t/22-00-0081-what-s-wrong-with-this-data-structure/1855/1 "2024-09-30T06:27:05Z")

</div>

> Note: this is behind-the-scenes stuff. If you’re not a data nerd, you probably won’t care.

### Context

The current ‘[life admin](https://johnnydecimal.com/14.11/)’ pack is, essentially, a .zip file full of files in folders: completely static files-on-disk. It’s [a real pain in the ass](https://forum.johnnydecimal.com/t/quick-start-life-admin-support-topic/1660/104) to keep updated.

The upcoming _Quick Start: ‘Small business’_ pack\[1\] will not be a static thing. It will be something that is built, from data. So when you want to create your file system _over there_, you’ll tell my utility app to do that.

This way, it can look however you want without me having to manage dozens of permutations. Want Markdown files without tags in folders? Just generate that. Want an empty folder structure? Do that. Plain text files? Whatever. Push a button, it’ll be generated.

### I am a liar

I previously said that [my software would be Apple-only](https://johnnydecimal.com/22.00.0063/). Well, I’m building this in Electron. Because I don’t consider this _the Johnny.Decimal software_. At this stage, it’s just a utility app.

So just FYI. I am not to be trusted.

(And yeah I know Electron is a waste and JavaScript and _I know_. I need to get something up fast, and I already know JS. Don’t tell me to learn Rust.)

# Break my data structure (please)

So I’ve been thinking about a JSON data structure, and I’d like your wisdom. Because I don’t live in this. Some of you do. What terrible mistakes am I making? What obvious pitfalls am I overlooking?

### What does it need to do?

Ideally, I’d like to design something really future-proof. If I’m going to design a JSON/TypeScript schema, it might as well be right for the long-term.

I don’t have a list of requirements, but if you know JD you can imagine. It should be able to serve as the data store for any system/JDex. Text/Markdown only; it doesn’t need to store data. That’s what your file system is for.

### It’ll be public

This will be the officially endorsed schema so that any compatible app can communicate.

### Hmm also

I do want the ‘small business’ pack to come with more than just JDex entries. I have in mind that it will serve as your [ops manual](https://en.wikipedia.org/wiki/Operations_manual); so that’s extra documentation linked to each ID. Think multi-page PDFs.

Perhaps that should just be a separate thing. Keep this core idea simple/pure? Probably.

## Feedback how?

I’ll be ~~hacking around~~ working away on this for the next few days. Any feedback would be very welcome.

- GitHub: there’s a file [here](https://github.com/johnnydecimal/index-spec/blob/main/schema.ts) and a discussion [here](https://github.com/johnnydecimal/index-spec/issues/4).

- Forum: there’s a post [here](https://forum.johnnydecimal.com/t/22-00-0081-what-s-wrong-with-this-data-structure/1855).

- Discord: there’s a thread [here](https://discord.com/channels/822215537589354566/1290198529989414944).

🙏 Thank you!

* * *

1. Working title. We have a better name up our sleeves…

---

<div class="post-metadata">

**Author:** ![johnnydecimal](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/johnnydecimal/32/1759_2.png) [@johnnydecimal](https://forum.johnnydecimal.com/u/johnnydecimal)\
**Post date:** [September 30, 2024, 6:38am UTC](https://forum.johnnydecimal.com/t/22-00-0081-what-s-wrong-with-this-data-structure/1855/2 "2024-09-30T06:38:14Z")

</div>



---

<div class="post-metadata">

**Author:** ![\_FJ](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/_fj/32/420_2.png) [@\_FJ](https://forum.johnnydecimal.com/u/_FJ)\
**Post date:** [September 30, 2024, 7:01am UTC](https://forum.johnnydecimal.com/t/22-00-0081-what-s-wrong-with-this-data-structure/1855/3 "2024-09-30T07:01:20Z")

</div>

My knowledge does not reach here in the slightest. But can I just say I like your Github profile pic 🤣

---

<div class="post-metadata">

**Author:** ![johnnydecimal](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/johnnydecimal/32/1759_2.png) [@johnnydecimal](https://forum.johnnydecimal.com/u/johnnydecimal)\
**Post date:** [September 30, 2024, 7:05am UTC](https://forum.johnnydecimal.com/t/22-00-0081-what-s-wrong-with-this-data-structure/1855/4 "2024-09-30T07:05:01Z")

</div>

Taken by the river in Antwerp! Way back in the day, maybe 2005.
