markhenderson
[1] https://jonsarkin.com [2] https://archive.jonsarkin.com [3] https://instagram.com/jonsarkin
At AllSpice, we're building the future of hardware development and collaboration, applying modern software design principles to the hardware industry with revision control, design review, and automated test (think GitHub/Bitbucket for hardware). AllSpice is unlocking the next generation of smart vehicles, IOT devices, rockets, medical devices, robotics, and much more.
https://techcrunch.com/2022/01/31/allspice-thinks-hardware-d...
We have a highly-capable, tight-knit, remote-first team with a flex office in Somerville, MA and competitive benefits. We strongly value continuous communication and personal development. See more on our careers page [https://allspice.notion.site/AllSpice-Careers-3173d0cd518b42...]
We're hiring primarily for:
Senior / Principle Infrastructure Engineer - Join our incredible engineering team by helping coordinate our infrastructure team and supporting enterprise clients. You'll work on automating our deployments, scaling infrastructure, and testing/planning architecture to support new feature development. More info here: https://allspice.notion.site/Sr-Principal-Infrastructure-Eng...
Tech Stack: Docker, Terraform, GoLang, Rust, Python, Vue
Apply by emailing us at jobs@allspice[dot]io with [HN] in the title and a link to your GitHub/GitLab profile and/or resume.
At AllSpice, we're building the future of hardware development and collaboration, applying modern software design principles to the hardware industry with revision control, design review, and automated test (think GitHub/Bitbucket for hardware). AllSpice is unlocking the next generation of smart vehicles, IOT devices, rockets, medical devices, robotics, and much more.
https://techcrunch.com/2022/01/31/allspice-thinks-hardware-d...
We have a highly-capable, tight-knit, remote-first team with a flex office in Somerville, MA and competitive benefits. We strongly value continuous communication and personal development. See more on our careers page [https://allspice.notion.site/AllSpice-Careers-3173d0cd518b42...]
We're hiring primarily for:
Senior / Principle Infrastructure Engineer - Join our incredible engineering team by helping coordinate our infrastructure team and supporting enterprise clients. You'll work on automating our deployments, scaling infrastructure, and testing/planning architecture to support new feature development. More info here: https://allspice.notion.site/Sr-Principal-Infrastructure-Eng...
Tech Stack: Docker, Terraform, GoLang, Rust, Python, Vue
Apply by emailing us at jobs@allspice[dot]io with [HN] in the title and a link to your GitHub/GitLab profile and/or resume.
Expressive E Osmose
Through the Eyes of Jon Sarkin [video]
https://equilibrium.co is a venture studio and services company that develops Web3 infrastructure for the likes of The Ethereum Foundation, Dapper Labs, Zcash, Forte, and Protocol Labs.
We are currently hiring for a whole bunch of positions:
- Backend systems engineer (web3)
- QA Specialist
- DevOps Practitioner
- Elixir/Erlang Developers (or Ruby devs who want to move to Elixir)
- Mid-level and Senior Go Developers
- TypeScript Developer
- C++ Developer
- Senior Rust Developer
- Smart Contract Developer (Solidity but also other SC languages)
See https://equilibrium.jobilla.com for information about all the positions listed above, and more
https://equilibrium.co is a venture studio and services company that develops Web3 infrastructure for the likes of The Ethereum Foundation, Dapper Labs, Zcash, Forte, and Protocol Labs.
We are currently hiring for a whole bunch of positions:
- Backend systems engineer (web3)
- QA Specialist
- DevOps Practitioner
- Elixir/Erlang Developers (or Ruby devs who want to move to Elixir)
- Mid-level and Senior Go Developers
- TypeScript Developer
- C++ Developer
- Senior Rust Developer
- Smart Contract Developer (Solidity but also other SC languages)
See https://equilibrium.jobilla.com for information about all the positions listed above
Sudden savant artist Jon Sarkin selling his art as NFTs
Can Webassembly read IndexedDB yet?
Source: I'm one of the core maintainers
Equilibrium is a worldwide distributed team dedicated to building and maintaining the distributed web.
We're hiring for a number of roles:
+ Open Source Community Manager: https://www.notion.so/Hiring-OSS-Community-Manager-28be57e3d...
+ Smart Contract Developer: https://www.notion.so/Hiring-Smart-Contract-Developer-235f2e...
+ Technical Writer: https://www.notion.so/Hiring-Technical-Writer-bc6a543f6bea40...
+ Rust Engineer: https://www.notion.so/Hiring-Rust-Engineer-882281f5248e45579...
+ Senior Rust Engineer: https://www.notion.so/Hiring-Senior-Rust-Engineer-e6c94ccc26...
Please apply using the instructions on each posting! We look forward to hearing from you.
Show HN: offchain::ipfs, an IPFS node embedded in the Substrate offchain worker
1. https://www.notion.so/Hiring-Rust-Engineer-882281f5248e45579... 2. https://www.notion.so/Hiring-Senior-Rust-Engineer-e6c94ccc26...
You're not wrong about the memory usage. We decided early on that the tradeoff would be more RAM than to take the performance hit with the I/O (either to and from IPFS or to and from the filesystem in the case of SnapDB).
That being said, I have been experimenting with removing indexes like the ones you pointed out in favor of generators that emit the values as they are traversed. There are two main efforts here, one is feasible and the other is more difficult.
1. The `entryIndex` inside of ipfs-log can probably go, and the ipfs-log#traverse function can be made into an async generator function that passes the oplog values up to the store 2. The indexes you linked to that hold the calculated STATE are harder to get rid of - they could be persisted to IPFS or the file system as well
Open to ideas on #2. SnapDB might work for all I know, as I haven't attempted it yet.
I can't speak to Electron, React, Redux, Iced, etc, but my guess is there are optimizations one can do there as well.
What I meant, since LWW is nomenclature for an alternative to CRDTs, is that the last writer by _logical clock_ in a CRDT, not by _wall clock_ time, will "win" the key.
CRDTs usually work as last-write-wins, meaning that if you have a key-value store, the last update to update a key 'wins' the value via the way oplog reduction works.
If you reverse that to a FIRST-write-wins log, you can grant permissions and ownership on a first-come, first-serve basis. Revocation, then, becomes the issue. What do you do with the records they already have? Questions like that are plentiful.
The approach most people take is to find workarounds or "good enough" solutions here, either by using encryption and allowing the encrypted data to be public, or by using some sort of other OrbitDB store as their ACL and management, and only giving select keys access to write to said ACL store in the first place.
Adding encryption into the mix though, particularly multi-writer, becomes exponentially harder.
I wasn't there at the beginning but I believe the project came out of trying to achieve said mutable state within IPFS (which, for other readers is content-addressed and therefore append-only)
http://orbitdb.org lists all of our current users, the biggest one is Metamask by way of https://3box.io. https://tallylab.com is building with it for remote encrypted backup and shared tallies. https://github.com/dappkit/aviondb is a MongoDB-like interface for it.
(which also seems to be putting https://ipfs.io under strain. Sorry, ipfs.io!
HOWEVER! Our latest release, 0.23.0, mitigated this by using a power-of-2 skiplist to load things in parallel, which gave us a nice 4-5x boost there.
Identity providers work by cross-signing an external keypair with the generated OrbitDB key-pairs, and access controllers generally work by exposing a `canAppend` function that facilitates any kind of auth you want to perform. There's support for Metamask for example. OrbitDB is also used _in_ Metamask under the hood by our good friends at 3box.[2]
TallyLab, my application project, uses these in its IAM system and you can see the repos here.[3]
1. https://github.com/orbitdb/orbit-db-access-controllers 2. https://3box.io/ 3. https://github.com/tallylab