593 karma · joined December 8, 2013
Recommend writing a TLA+ model to catch stuff like this
Baaed on the comments, I feel that people are both under and overestimating this. On the one hand it replaces the manual tasks of searching for a template and then googling errors and this is huge! It completely disrupts search on the internet as we know it. On the other hand it won’t be able to solve problems that you couldn’t just google anyway, since that’s what it basically does under the hood.
Of course if the problem is with the core of your application like the scrolling example in the article, this is not going to help you much.
[0]: https://rust-unofficial.github.io/too-many-lists/index.html
> Before we jump in, I wanted to share some history with you. Back in 2009 when we first built 1PasswordAnywhere, it wasn’t possible to use it with Dropbox. We couldn’t use Dropbox at the time because each file request needed to include a revision number and 1PasswordAnywhere had no way to know which revision numbers to use.
> Roustem and I explained this problem to the Dropbox Founder Arash, and he was kind enough to add a workaround to allow us to load files directly. This was state of the art technology in 2009.
With hindsight, the two technological breakthroughs that proved decentralized databases possible were Bitcoin and Zerocash. Bitcoin showed that state-machine replication (SMR) is solvable in a distributed, permissionless, partially synchronous setting with Byzantine fault tolerance. Zerocash showed that zero knowledge succinct non-interactive arguments of knowledge can be used to ensure the confidentiality of transactions in this SMR setting.
The tech is improving rapidly and it’s pretty easy to see where things are going from here: soon we’ll have general purpose decentralized databases where data is open as open source code is open. In fact, state-of-the-art blockchains can be viewed as special (financial) purpose decentralized databases.
As to why decentralized databases are desirable: imagine if you could fork databases in a completely permission-less manner like you can fork code. This is how web development would look like:
You, the programmer, take a look at a public data schema (eg. a smart contract that implements the ERC-721 interface) and decide to build on top of it. Then, a user, who has already interacted with what you built on, decides that they like what you built and lets your app use their data. You, the programmer, can be sure that the data you built on remains available, and the user can be sure that they'll be able to port the data produced by your app into new apps.
Re open standards and “software that lets you export”: we’ve had this for the past 30 years and see how it turned out.
Re lock in: no, in a decentralized database, the data schema is public which means it’s trivial to write an app that works with another app’s data.
The tech is rapidly improving and it’s pretty easy to see where things are going from here: soon we’ll have general purpose decentralized databases where data is open as open source code is open. In fact, state-of-the-art smart chains can be viewed as special (financial) purpose decentralized databases.
As to why decentralized databases are desirable: imagine if you could fork databases like you can fork code in a completely permission-less manner. This is how web development would look like:
You, the programmer, take a look at a public data schema (eg. a smart contract that implements the ERC-721 interface) and decide to build on top of it. Then, a user, who has already interacted with what you built on, decides that they like what you built and lets your app use their data. You, the programmer, can be sure that the data you built on remains available, and the user can be sure that they'll be able to port the data produced by your app into new apps.
The question that you’re asking nobody else can answer for you unfortunately. A good way to find an answer is to start with asking “What am I”. And you’re amazing! But you have to seek the answer tirelessly to that question before you can see that. Here is a poem that can get you started on that journey:
https://www.poetryfoundation.org/poems/45477/song-of-myself-...
Finding an answer is very difficult and we go through many ups and downs. If you’re feeling really desperate, make sure to reach out to a suicide prevention hotline. They’re run by really nice people who love you. There are some helpful resources here:
https://www.helpguide.org/articles/suicide-prevention/suicid...
Wish you all the best!
https://squidfunk.github.io/mkdocs-material/insiders/
Roughly 10xed their sponsorship revenue in ~1 year.
Then I started a project this year that will be a Rust, Swift, Kotlin, JS codebase (maybe C# too if Rust for Windows isn’t stable enough) and I had a look at Bazel again, but already the official tutorial from last year didn’t work on the latest stable release so I gave up on it again. Anyone had similar experience and pushed through? Is it worth it?
I currently have a bunch of Python scripts and will most likely end up with Gradle which is ok but not great in my experience.
Do you have a source for this?
Eg. my app is performing digital signatures and I'm sure that they take <1ms CPU time, but performing digital signatures in 10ms is acceptable for my application, so when I perform a signature I measure the CPU time elapsed, say 0.5ms and then wait for 9.5ms.