3 ms·
..and a link to the source code. After the long rant about software complexity, I wanted to see their code to see if they walk the walk.
by titzer 6y ago
..and a link to the source code.
After the long rant about software complexity, I wanted to see their code to see if they walk the walk.
- titzer 6y ago..which I googled for and found on GitHub. > We believe in building software that lasts. (emphasis theirs). So, I had a look. Their GitHub has dozens of repos, and the desktop one depends on the web one? Wait, the whole thing is written in typescript? I have absolutely nothing against typescript, but I honestly would have expected a boring language, with a simple repo, not with git submodules....and definitely not something that depends on web tech, of any kind.
- buzzert 6y agoI don’t know much about TS/Yarn, but is this really all the dependencies they have? https://github.com/standardnotes/desktop/blob/develop/yarn.lock https://github.com/standardnotes/desktop/blob/develop/yarn.l... That’s pretty insane if so. Especially for a “simple” note taking app.
- ncallaway 6y agoThat's the transitive closure of their dependencies, yes. This file contains their list of direct dependencies (which is a lot smaller, but that just tells you how much of a dependency explosion you get when you use `npm` packages): https://github.com/standardnotes/desktop/blob/develop/package.json https://github.com/standardnotes/desktop/blob/develop/packag... One thing to note is the yarn.lock is probably the transitive closure of the compile-time dependencies (`devDependencies`) and run-time dependencies (`dependencies`), so it's possible that the dependencies that actually ship with the application are quite a bit smaller. For example, `webpack` is in the devDependencies, which is the build tool. So the `yarn.lock` is listing all of the dependencies both for the runtime libraries that get used, but also the dependencies for all the build tooling as well.
- buzzert 6y agoThanks! I definitely learned a thing or two from your comment.
- akst 6y agoIs it really that surprising they’re using web tech? Putting whether it’s an appropriate use of web technology or not aside, I’m not quite sure how they would be able to build a cross platform application [2] with a small team [1] without largely relying on code reuse of some kind. For better or worse, web tech has been the status quo for some time. Ironically making this the boring route for making these apps. As much as I hate how resource intensive these apps are, it’s also not really that surprising they’re built this way, knowing the current alternatives and their barriers to entry. Maybe one day we’ll have lighter weight alternatives, that are just as easy to use. or maybe they exist and they’re just not that well known ¯\_(ツ)_/¯ But yeah their “building something that lasts” just sounds like marketing speak [1] I’m assuming it’s a small company (since I’ve never heard of this before) [2] the app appears to support iOS, Android, Linux, macOS, windows & the web
- ironmagma 6y agoThe web has lasted a long time with near 100% backwards compatibility. It will likely continue to last.