x19 Profile Banner
x19 Profile
x19

@0xNineteen

1,189
Followers
1,072
Following
144
Media
1,045
Statuses

chief protocol engineer @syndica_io | peace and code

mars
Joined January 2022
Don't wanna be here? Send us removal request.
@0xNineteen
x19
9 months
solanas accounts database (also known as accounts-db/cloudbreak) is built to scale for reading/writing billions of accounts in this thread, ill go over some key high-level details of accounts-db's impl that any dev can learn from in a few minutes👇 1/N
15
32
168
@0xNineteen
x19
1 year
new post explaining how blocks are built, propagated, and replayed in the solana-labs client - enjoy!
Tweet media one
8
22
111
@0xNineteen
x19
5 months
sig progress update 🚢🚢 - gossip: done - accounts-db: done (blog post soon™️) - repair stage: receiving shreds/blocks - svm: researching
Tweet media one
7
4
92
@0xNineteen
x19
1 year
excited to announce im joining the @Syndica_io team to help build a new Solana validator client written in Zig! keep an eye on the project here:
10
9
87
@0xNineteen
x19
2 years
if youve ever wanted to build a funding-rate arb bot checkout this repo and arb between drift's perp and spot markets for $$ (written in rust; by yours truly)
0
8
87
@0xNineteen
x19
6 months
solana accounts-db code is now live on the main branch in Sig check it out! deep-dive blog post and benchmarks coming out soon ☕️
4
13
85
@0xNineteen
x19
1 year
Sig optimizing RPS Firedancer optimizing TPS this collab will make the fastest mf solana node the world has ever seen and will prepare sol for 69billion+ users
Tweet media one
4
13
78
@0xNineteen
x19
2 years
hyped to open source my solana arbitrage bot to the community - searches across 5 different dexs (serum, orca, ...) - includes mainnet-forking to test quotes - contains a bunch of pool metadata and more! check it out and happy searching :)
Tweet media one
8
7
77
@0xNineteen
x19
2 years
solana dev alpha 🚨 you can optimize your rpc communication by sending multiple requests in a single batched-request combine this with the get_multiple_accounts request you can get thousands of accounts in a single request!
Tweet media one
3
6
64
@0xNineteen
x19
1 year
lil outline on how solanas validator generates blocks/banks (ie the banking-stage)
Tweet media one
4
14
57
@0xNineteen
x19
1 year
this years breakpoint was the best yet chatting with people from labs to protocols to firedancer to twitter friends - everyone was incredibly based sol community is unmatched and we only growing stronger - till next year frens 🫡
5
15
61
@0xNineteen
x19
1 year
hyped to announce im going to be speaking at breakpoint with @1ultd about solanas 3rd validator client: Sig! if you want infra/rpc alpha - make sure to come out to the talk or come say hi at the @Syndica_io booth after :)
Tweet media one
4
8
55
@0xNineteen
x19
1 year
a lil update on Sig - the gossip protocol is basically done (last step is speed testing) - next, were working on deserializing snapshots and representing account state (accountsDb, bank, blockstore, ...) tldr; were cookin and solanas 3rd validator is in the oven
4
10
51
@0xNineteen
x19
8 months
tldr; there was a bug in v1.17 that lead to an infinite loop when processing a block a leader on v1.16 (which didnt have the bug) processed a block with the v1.17 bug and propagated it to the rest of the cluster (where 95% was running v1.17) which lead to no voting and a stall
@SolanaStatus
Solana Status
8 months
The Solana Mainnet Beta outage report for February 6, 2024, is now available. This report was complied by the engineering team at @anza_xyz
112
57
184
6
6
49
@0xNineteen
x19
6 months
seeing a ton of AI engineers pivoting into to crypto recently my advice: learn rust - its everywhere in this industry - theres only so much you can do with python - start with rust smart contracts (svm) - then move to rust L1s (solana/reth/aptos/sui/...)
4
2
48
@0xNineteen
x19
4 months
sig loading, indexing, and validating a testnet snapshot (180k account files) in 155seconds on a macbook m1 🤖⚡️
Tweet media one
10
4
48
@0xNineteen
x19
4 months
recently started sponsoring @ziglang - was an easy decision support projects/people you want to see succeed - every little bit counts
2
2
47
@0xNineteen
x19
2 years
interested in ZK proofs but have ZK on the subject? just dropped a new post on the simplest ZK proof in the book: proving you own a private key without revealing it (python code included)
Tweet media one
1
6
40
@0xNineteen
x19
4 months
rocksdb-zig repo is opensource! build and use rocks-db all in zig will be used in sig's repair stage to store shreds (ie blockstore) 🤖⚡️
3
8
38
@0xNineteen
x19
1 year
MORE SOLANA INTERNALS
Tweet media one
3
3
36
@0xNineteen
x19
1 year
diagram v2 of solanas block production code flow
Tweet media one
0
9
34
@0xNineteen
x19
7 months
a lot of great core content coming out describing solanas transaction scheduler: @apfitzge deep-dive blogpost: @jacobvcreech video walkthrough: @harsh4786 explainer post:
0
9
34
@0xNineteen
x19
5 months
new fee economics SIMD is going on right now on solana - the SIMD wants to remove a 50% burn on priority fees heres the summary: when priority fees were first being introduced, their success/adoption wasn't known, so the simplest/safest impl was to add them directly into the
@TimGarcia0
Tim Garcia
5 months
Validators! Go vote! SIMD-96 voting is happening now. Instructions on how to vote:
1
4
16
7
7
31
@0xNineteen
x19
1 year
big alpha alert - solana's light client SIMD (from the @tinydancerio team) is live!
4
8
32
@0xNineteen
x19
1 year
rn solana rpc clients assume all data is equal, but this isnt always true - eg, protocols only care about the state of their protocol’s accounts with Sig, one of our goals is to allow a user to define what RPC data they care about and optim for those read/writes specifically
3
2
29
@0xNineteen
x19
2 years
even adams hyped for v2
Tweet media one
3
2
29
@0xNineteen
x19
1 year
short post explaining how solanas transaction-validating unit (TVU) works! while the TPU produces blocks when the node is a leader - the TVU verifies, processes, and votes on new blocks when its not a leader
Tweet media one
1
4
27
@0xNineteen
x19
2 years
one of the most interesting but less well-known features in drift v2 is the DAMM JIT - gonna do a quick thread on how the feature works and why its interesting ↓
Tweet media one
2
11
26
@0xNineteen
x19
7 months
the main culprits of slow code is 1) syscalls (usually for memory allocations) and 2) inefficient thread management whats the solution? - preallocate memory wherever you can - and follow a thread-per-core arch (+pin them!) its not easy but its worth it
Tweet media one
7
5
24
@0xNineteen
x19
3 months
code coverage for tests and fuzzing added to sig ⚡️🤖 checkout `docs/fuzzing.md` for more info on how to run it
3
2
28
@0xNineteen
x19
1 year
new post on how sending txs on solana works - including validator code! also talks two new RPC projects that can improve your tx sending process :: @extrnode 's load-balancer and @mangomarkets lite-rpc
Tweet media one
1
10
27
@0xNineteen
x19
8 months
was awesome seeing everyone at mtndao🏔️ the teamwork across clients to understand the current bottlenecks and simplify and improve the code is evolving solana to support the next trillion users the triple threat of anza fd and sig will be unstoppable
4
2
26
@0xNineteen
x19
2 years
automatically parse @anchorlang idls into python dataclasses for de/serialization makes it crazy easy to keep python sdks up-to-date with program changes
3
3
26
@0xNineteen
x19
8 months
the more validator clients we have, the less likely bugs like this will exist across all clients and the more stable the network will become rn we only have 1 client but 3 new clients are in the works (sig fs and agave) solana will bounce back from this, stronger than ever 💪
@matthew_sigel
matthew sigel, recovering CFA
9 months
Solana outage, what happened? BPF loader, the “Berkley Packet Filter,” which is the mechanism to deploy upgrade and execute programs on Solana, failed. This seems to relate to a previous SMID (Solana Improvement Proposal) that altered some of the features including the adding a
43
179
485
1
2
24
@0xNineteen
x19
2 years
| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄| | IM BULLISH | | DRIFT V2 | |_________| (\__/) || (•ㅅ•) || /   づ
2
2
26
@0xNineteen
x19
11 months
what if we released a tool that dumps every account on solana at a certain slot (using snapshot data) into a nice lil csv for the data enjoyors
7
0
26
@0xNineteen
x19
1 year
new technical deep dive on how solanas gossip protocol works is in the oven and cooking frfr
0
0
25
@0xNineteen
x19
4 months
new sig blogpost on accounts-db is out! benchmarks show 2x - 3x speedup in both reads and writes 🤖⚡️
@Syndica_io
Syndica ⛅️
4 months
We're excited to release Part 3 of Sig Engineering's blog post series, outlining our implementation of @Solana 's AccountsDB: 🧵
5
14
40
4
5
24
@0xNineteen
x19
1 year
lil outline on how solanas TVU (tx-validator-unit) is built: - receiving shreds - storing them in the blockstore - reconstructing banks - and sending votes
Tweet media one
1
2
23
@0xNineteen
x19
7 months
awesome overview of the solana runtime (with code refs 🔥) core documentation like this will open our ecosystem up to a new wave of contributors that will strengthen our network to new levels
@realbuffalojoe
Joe C 🌵
7 months
Here's a paper on how Agave's runtime works. It's by no means exhaustive, but it uses real code permalinks and snippets to do its very best to explain what's happening in all of that source. Enjoy. 👽 🌵
63
44
162
1
0
23
@0xNineteen
x19
9 months
the sig and @Syndica_io team will be at the mtn during the second week of feb 🫡 talking about all things rpc, sig, and zig come say hello
@mtndao
mtndao 🗻
10 months
The announcement you've all been waiting for: mtndao applications are NOW OPEN 🏔️ apply down below 👇
Tweet media one
18
167
200
1
3
20
@0xNineteen
x19
2 years
if youve ever dreamed of streaming account updates directly from a validator or are interested in solanas geyser plugin you can checkout this repo that prints account updates straight from a validator in ~40 lines of code using geyser
Tweet media one
1
0
23
@0xNineteen
x19
9 months
were hiring across the board @Syndica_io including: - developer relations - rust/c/zig engineers - network engineers and more join our awesome team and help improve solana by solving some of the biggest infra challenges at scale 🙂
@MariaIsHere1207
Maria Estrada
9 months
Throwback to #Solana #Breakpoint in Amsterdam! (Take me back!) You could join us this year as a DevRel. I'm looking for an exceptional writer to join the team. ✨🚀 You can apply here or send the link to a friend. 🙂
Tweet media one
0
3
5
2
5
22
@0xNineteen
x19
1 year
early project vibes
Tweet media one
1
0
21
@0xNineteen
x19
5 months
light clients are live on solana trustless verification is a massive feature - congrats to the td team 🔥
@tinydancerio
Tinydancer 🤏💃
5 months
Excited to announce that our Simplified Payment Verification (SPV) client is live on @solana Testnet! 💃🤏 Here’s our incredible journey after 5 iterations, challenges and demo 🧵
41
89
335
3
3
20
@0xNineteen
x19
1 year
super excited to see this come to life! @bigz_Pubkey and I were working on perp LPs for a long time the team built a smart af on-chain AMM and now anyone can leverage up and enjoy the risk/reward as the DAMM congrats @DriftProtocol team!!
@DriftProtocol
BET on Drift
1 year
1/ Introducing Drift Liquidity Provider (DLP)
28
59
253
1
1
20
@0xNineteen
x19
1 year
in the arena reading, building, shipping this is just the beginning, anon - were building the entire mf validator and will give solana the technical spec it deserves
@Syndica_io
Syndica ⛅️
1 year
We’re thrilled to announce Part 1 of the Sig Engineering’s blog post series outlining Gossip Protocol: 1/🧵
2
14
51
2
1
20
@0xNineteen
x19
1 year
fyi were hiring to bring more talented devs on the Sig team! looking for: - zig/rust/c experience - passionate about distributed systems - bullish af on solana were building the future anon - join us:
@Syndica_io
Syndica ⛅️
1 year
Introducing Sig - a new @Solana validator client written in Zig, focusing on RPS-optimization, client diversity, and accessibility. 1/🧵
20
95
339
1
4
17
@0xNineteen
x19
3 months
from small saplings to massive trees - this is what 900 years of growth looks like plant the seeds today for the future and for the next generation
Tweet media one
0
0
18
@0xNineteen
x19
11 months
theres such a delicate balance between researching and shipping research too much and u ship nothing - dont research enough and ur ship suffers in the longterm
2
0
19
@0xNineteen
x19
6 months
awesome performance profiling talk from a solana core dev 🔥
@alessandrod
Alessandro Decina
6 months
A couple of months ago I gave a lightning talk at a RustAU meetup about eBPF, profiling and... tar. The video is now up
5
7
34
0
0
18
@0xNineteen
x19
1 year
zk on Solana: Private Solana Programs - by @cryptopapi997 and @swen_sjn and Jito StakeNet: A Protocol for Timless LSTs - by @buffalu__ and @segfaultdoctor will be good ones to watch imo - zk+mev-lst will massive
@DanJablonski_
Dan Jablonski
1 year
What talk are you the most excited for at Breakpoint @SolanaConf and why? I'll go first: 1. Hold Me Closer @Jump_Firedancer by @DanPaul000 - we are all chomping at the bits awaiting any new updates on Firedancer.
1
2
15
1
0
18
@0xNineteen
x19
1 year
going through and mapping out the accountsdb code rn (solanas custom accounts database) and boy this thing is a mammoth
2
0
17
@0xNineteen
x19
4 months
write extremely simple code by enforcing a subset of a languages features on your project - eg never use rust macros - "because you can doesn't mean you should"
2
0
17
@0xNineteen
x19
5 months
"what is spent on the design will be dwarfed by the implementation and testing, and then again by the costs of operation and maintenance" - @TigerBeetleDB 💯
1
2
16
@0xNineteen
x19
11 months
a technical spec for solana is inevitable, prepare yourself anon
1
1
16
@0xNineteen
x19
11 months
pre-allocating all ur memory upfront can be spooky bc it makes oom errors very real but memory limits always exist - most code just pretends they dont face ur fears - pre-alloc ur memory - write good code - go fast
2
0
16
@0xNineteen
x19
3 months
massive congrats to the fd team on the first testnet block! one of the hardest working teams in the ecosystem and across the entire stack 🔥💃
@CantelopePeel
CANTELOPEPEEL
3 months
Full Firedancer client built its first accepted block on Solana testnet.
Tweet media one
75
260
1K
0
0
16
@0xNineteen
x19
1 year
the dev red pill is learning to skip the docs and just read the source code
1
1
16
@0xNineteen
x19
1 year
gm
Tweet media one
4
1
16
@0xNineteen
x19
2 years
interested in what the future of MEV might look like? 🤖 new post on how *protocols* can extract value that can lead to increased dao/treasury profit or more value going back to its users
Tweet media one
2
5
16
@0xNineteen
x19
9 months
another solana client in the works higher
@anza_xyz
Anza
9 months
1/ We're thrilled to announce Anza — a next-gen, @Solana focused dev shop. Founded by execs & engineers from @SolanaLabs , Anza will build a forked validator client called Agave & contribute to major Solana protocols.
69
172
675
0
0
16
@0xNineteen
x19
6 months
measure twice, cut once think twice, talk once review twice, merge once
1
0
16
@0xNineteen
x19
11 months
gm bulls sol to 5k by eoy lets get it
6
0
14
@0xNineteen
x19
2 years
new drift-v2 technical post on how we implemented ✨ passive LPs ✨ for a perps AMM p excited about this one bc it allows anyone to leverage the full power of the DAMM (an absolute tank of a MM)
Tweet media one
3
4
13
@0xNineteen
x19
9 months
right now some interesting problems with accounts-db include: 1) differentiating between hot and cold accounts and the corresponding economics of loading/storing compressed accounts 2) rn every account is re-written at the end of the epoch to collect rent which is pretty
3
0
14
@0xNineteen
x19
7 months
sig will have one of the most comprehensive metric dashboards in the world validator operators - what kind of metrics are you interested in tracking?
@0xNineteen
x19
7 months
high-quality metric dashboards are invaluable to understand how a program operates in realtime but also they just look so nice u can just stare at em all day
0
0
6
0
0
14
@0xNineteen
x19
1 year
gm frens - were looking for a rust/backend-engineer to join our team and help build infrastructure for the next billion users if u like rust, solana, and want to work with an amazing team on the toughest infra problems - apply!
2
4
15
@0xNineteen
x19
9 months
and lastly, if you want more resources to learn about core/accounts-db stuff checkout: - @Syndica_io deep-dive into solana's gossip protocol: - my blog including other core details: - and @fd_ripatel more in-depth gist on
0
0
14
@0xNineteen
x19
9 months
if any of this excites you, were hiring! come help us build a new solana validator in zig! or even checkout the Sig github repo:
@0xNineteen
x19
9 months
were hiring across the board @Syndica_io including: - developer relations - rust/c/zig engineers - network engineers and more join our awesome team and help improve solana by solving some of the biggest infra challenges at scale 🙂
2
5
22
1
0
14
@0xNineteen
x19
10 months
gonna start posting some high-level digestible solana core content as threads ideally, it'll complement the more beefy syndica deep dives will start with how accounts-db works - lmk if you got any questions you want answered
1
0
13
@0xNineteen
x19
2 years
> merge first PR to master > feelsgood > master tests break > master is rolled back pre-PR > no code on master > feelsbad
1
0
14
@0xNineteen
x19
4 months
fuzz testing with assert statements throughout the code is one of the best ways to find bugs in zig, you can use assertions that only run in debug mode - this lets you assert while fuzzing - and not affect prod performance
Tweet media one
2
0
14
@0xNineteen
x19
4 months
one of the most interesting things from the recent kb interview was how he says that systems should be designed around testing/debugging since most of dev time is spent on it
1
0
14
@0xNineteen
x19
1 year
you all need to prepare yourselves for the new Syndica Sig post thats gonna drop soon - the team put together a masterpiece
1
0
14
@0xNineteen
x19
5 months
going to crossroads this weekend to give a talk on sig come say hello if youre there too~~
1
0
13
@0xNineteen
x19
9 months
to understand accounts-db, you first need to understand solana's snapshots when starting up, nodes download snapshots from trusted peers to bootstrap building the state of the network (instead of building from genesis) a typical snapshot look like the image below, containing 1)
Tweet media one
Tweet media two
1
0
13
@0xNineteen
x19
7 months
90% of the value in code comes at the last 10% writing the first implementation is relatively easy robust unit testing, CI testing, fuzzing, metric collection, bottleneck analysis, memleak detection, documentation, etc. is where you polish code into something special
0
1
13
@0xNineteen
x19
1 year
zig fast af networking - recvmmsg and sendmmsg syscalls example for packet digestion (these are used in the solana client too) lets you read/write multiple messages in 1 syscall
3
0
13
@0xNineteen
x19
6 months
in the next version of Sig 🤖 well support downloading snapshots with minimum download speed requirements and trusted peers thread for how it works under-the-hood /N ↓
Tweet media one
2
1
13
@0xNineteen
x19
1 year
we are so back
@Syndica_io
Syndica ⛅️
1 year
Introducing Sig - a new @Solana validator client written in Zig, focusing on RPS-optimization, client diversity, and accessibility. 1/🧵
20
95
339
1
1
13
@0xNineteen
x19
5 months
one of the most important slides solve problems early or the pain will grow
Tweet media one
@0xNineteen
x19
6 months
excellent talk on fuzzing distributed systems by @AntithesisHQ / @TigerBeetleDB drawing parallels between mario and distributed systems was surprisingly intuitive
4
1
8
1
1
13
@0xNineteen
x19
9 months
zig is a natural fit for writing solana programs if youre interested in solana+zig you should def check this out
@aeyakovenko
toly 🇺🇸
9 months
this is starting to look really good who is gonna build the anchor for @ziglang
14
4
81
1
1
12
@0xNineteen
x19
1 year
Yo someone tell @brian_armstrong ?
@7LayerMagik
7Layer | Overclock Validator
1 year
Yo someone tell @brian_armstrong ?
0
3
21
0
0
12
@0xNineteen
x19
5 months
@jacobdotsol loading accounts to process is more expensive than the compute used to modify the data - yet we charge for cu and dont charge for account loads
4
1
13
@0xNineteen
x19
9 months
across most L1s some accounts are included in a block more often than others (hot/cold accounts) with state growing fast, compressing cold state makes sense - the next interesting q will be: whats the best economic model for charging access (ie, decompress gas)
@notnotstorm
storm
9 months
some detailed data on ethereum read/write patterns for balances/codes/nonces/slots details in thread
Tweet media one
Tweet media two
Tweet media three
4
39
160
0
1
13
@0xNineteen
x19
4 months
got a sneak peak of syndica v2 safe to say it will reshape the fabric of society
1
0
12
@0xNineteen
x19
11 months
my condo security guard is shilling me avalanche - is this the top?
5
0
12
@0xNineteen
x19
6 months
value is created through constant iteration if your iteration cycle is slow - ngmi especially in code and hiring - how fast can you go from idea to merged on main - how fast can you go from intro call to hired
3
1
12
@0xNineteen
x19
11 months
gm manlets beautiful week ahead of us lets get it
1
0
12
@0xNineteen
x19
5 months
fd cooking up vm fuzz testing for any svm impl the future of solana validator clients is bright
Tweet media one
1
0
11
@0xNineteen
x19
2 years
i like the sheeps @FeebleLabs
Tweet media one
1
1
11
@0xNineteen
x19
3 months
new job postings at @Syndica_io are up: - Senior Blockchain Data Researcher - Operations Manager - UI/UX Engineer - Technical Writer if you want to solve important problems with great people - apply! 🙂
0
5
11
@0xNineteen
x19
1 year
the more i use zig the more i realize how powerful its comptime features are
2
0
10
@0xNineteen
x19
9 months
simplify simplify simplify the simpler we can make the solana spec, the more clients, core contributors, and researchers we can attract and the stronger the protocol will get
0
0
11
@0xNineteen
x19
9 months
thats basically how accounts-db works for storing data: accounts are stored in mmap’d files and an index which maps from a pubkey to an accounts location (backed by either ram or disk memory) solana uses a lot of other performance tricks like caching, sharding, cleaning up dead
1
0
10
@0xNineteen
x19
9 months
after downloading a snapshot and extracting the account data, we need to build a mapping from a pubkey to the where the corresponding account data lives. this is called an index. since account data lives in a file, we need to build a mapping from pubkey -> (file, offset) (ie,
Tweet media one
1
0
10
@0xNineteen
x19
8 months
one of my favourite things with Zig is that the language is so simple you can read the stdlib source code and understand how everything works fairly easily never felt like that with other languages
3
0
11