Bradleycorn
01/07/2025, 9:39 PMkpgalligan
01/08/2025, 6:52 PMI think gitportal in unidirectional mode would also facilitate answersUnidirectional mode is versioned just like binaries, so it would be the same.
kpgalligan
01/08/2025, 6:55 PMBidirectional mode makes the two applications VERY independentOnly if you let them. It's tooling, but process needs to be defined.
kpgalligan
01/08/2025, 6:57 PMkpgalligan
01/08/2025, 6:59 PMkpgalligan
01/08/2025, 7:04 PMkpgalligan
01/08/2025, 7:09 PMkpgalligan
01/08/2025, 7:10 PMkpgalligan
01/08/2025, 7:10 PMkpgalligan
01/08/2025, 7:13 PMkpgalligan
01/08/2025, 7:22 PMBradleycorn
01/08/2025, 8:37 PMBradleycorn
01/08/2025, 8:54 PMkpgalligan
01/09/2025, 4:18 AMOur web teams have been working with the library model for years.I guess my question here would be what code they use a library model for? It's not all-or-nothing on the mobile end either. For a simple mental model, the further from the screen, the easier it is to use a library model. In mobile, things that work well: • Networking code. Changes to the server API are not on the mobile team's timeline, and the API is fixed and defined by somebody else (generally). That very much is "library code" by definition. • Some logic modules. An example would be like a big tax calculation engine. It needs to be correct, so writing it twice is not a great idea. Changes to app screens really don't impact the tax library, except if maybe there's something a screen needs that isn't yet implemented. You probably don't want everybody editing the tax code when they feel like it. • Local db logic. Arguably this is impacted by app feature code. However, changes are less frequent, and in the case of sqlite specifically, and schema-based DB's in general, they are themselves versioned linearly. You can't just "merge" version 47 of the db from one branch and another branch. • Analytics. It's a weird one, but usually analytics is externally defined (this button should send this string), they're easy to get wrong (bad copy/paste from a spreadsheet, wrong case, etc), and I haven't met a dev who loves doing it. A typed library is usually preferred. That is in contrast to, say, view model code, or middle logic that sits right beneath the view model. That can change significantly in different PRs. Having that in versioned libraries is rather difficult. So, what code the web team puts in libraries matters. Say they're using React. If they kept JSX code in one repo, with pretty much no logic, and all JS/TS logic, including code that supports things the JSX needs and that changes with screen changes, well, I mean they could, but I can't imagine why they would. If they have server call logic or similar in libraries, that's the same thing as above.
kpgalligan
01/09/2025, 4:20 AMkpgalligan
01/09/2025, 4:21 AMBradleycorn
01/09/2025, 6:02 PMkpgalligan
01/09/2025, 6:17 PMkpgalligan
01/09/2025, 6:19 PMkpgalligan
01/09/2025, 6:24 PMkpgalligan
01/09/2025, 6:27 PMkpgalligan
01/09/2025, 6:27 PMBradleycorn
01/09/2025, 6:37 PMBradleycorn
01/09/2025, 6:38 PM