IT/Security. Building a trading bot. Posting what I learn and what interests me.

Joined August 2008
41 Photos and videos
Jun 15
Kalshi is a prediction market. You buy a contract on something that might happen in the real world (will inflation rise, will a bill pass), pay under a dollar, and collect a dollar if you're right. A yes-or-no bet with a fixed payout. I've traded it for months. One rule held up: the only contracts worth my money are economic data outcomes where I can pull a decade-plus of history. Take 'will monthly inflation come in above negative 1%?' I've got 120 months of data and it happened 99% of the time. If the market prices that at 90 cents, I'm collecting a 9% return on a near-certainty. Now take 'will BTC be above $60K Friday?' I have no edge there. The market knows everything I know about price and then some. Every directional price bet I made lost money. I have no forecasting edge. The edge is the gap between a long, stable base rate and what the market is charging. A coin flip on next week's price doesn't have one.
32
Jun 14
On May 13, TeamPCP published the Shai-Hulud worm source code on GitHub. MIT license. Full documentation. The worm that hit 323 npm packages, forged security certificates, and stole credentials from build pipelines is now a public repository anyone can fork. Since then: BreachForums (an underground cybercrime marketplace) started running a bounty challenge. Post proof of a successful supply chain attack using the code, earn reputation and status. Four independent copycat attacks confirmed within two weeks. Each one tweaked the payload but used the same propagation method. Steal an npm token, enumerate the victim’s packages, publish infected versions of all of them. Releasing attack tool source code isn’t new. Metasploit and every red team framework followed the same path. The difference: those target networks. This targets the software supply chain. The blast radius is every project that installs the compromised package, and every project downstream of that. The worm is public. The question is whether the defenses catch up before the copycats get creative.
1
1
113
Jun 14
A friend in IT security showed me how he uses AI to draft security questionnaire responses: He feeds it the asset inventory, compliance framework, and last year’s responses as context. Pastes the new questionnaire. First draft comes back in 90 seconds. Then he marks everything that’s technically true but misleadingly vague, tells it to rewrite those answers to be defensible under audit, and does a final pass verifying every factual claim against current state. Total time: 45 minutes for a questionnaire with 60 questions that used to take a full day. Most of the saved time is just not starting from a blank page.
2
81
Jun 14
His biggest lesson: the first draft always overstates. ‘We maintain thorough logging across all systems.’ Technically true if you squint, but an auditor will ask ‘which systems? what’s the retention?’ He prompts with ‘answer as if the reviewer will ask for evidence of every claim.’ That one instruction cut his editing time in half. Worth stealing for anyone doing compliance work with AI.
6
Jun 12
Every institutional client questionnaire asks if you do regular penetration testing. (Pentesting = paying someone to break into your systems like a real attacker, then report what they found.) A friend who handles these for a financial firm told me the checkbox is meaningless. Everyone checks yes. What separates the real programs from the pretenders is how much they volunteer. The fakers check the box and move on. Their last 'pentest' was an automated scan some IT vendor ran two years ago. The real ones can't help themselves: scope, methodology, when they patched what, all unprompted. The optional sentences are the part worth reading.
16
Jun 12
How I built my 2026 dynasty rookie draft board, and the one place I overrode it. The model weights four things: draft capital and landing spot together at 40% (where a player got picked and the offense he landed in), college production at 30% (targets, air yards, broken tackles), athletic profile at 20%, and film consensus at 10%. It spat out Jeremiyah Love at 1.01 by a wide margin. Carnell Tate and Jordyn Tyson basically tied at 1.02 and 1.03. Then a tier cliff. At 1.04 I went off-script. Took Makai Lemon over the model's pick because I trusted his route running on film more than the numbers did. I'm logging it as a deviation no matter how it turns out. If he hits, the model needs to weight film heavier. If he busts, the model was right and I wasn't. Either way, I know.
1
118
Jun 12
This class is being called one of the weakest since 2012 after Love and the top 3 WRs. My response: weak classes are where you trade back. I traded my 1.05 for a future 2027 first and a current starter. The market overvalues having a pick in a weak class. That’s the same mispricing I exploit in grid trading: paying for an asset’s potential when the expected value doesn’t justify the price.
19
Jun 10
npm finally shipped the thing everyone was asking for. Every package publish now goes through a staging queue. A human has to approve it with two factor authentication before it goes live. Shipped May 22, 2026. After 14 attacks in three months. Other changes since the attacks started: GitHub now offers OIDC token binding for build pipelines (your build system can prove its identity cryptographically instead of passing around secret tokens). pnpm v11 defaults to not running install scripts automatically (those scripts are how Shai-Hulud executed its payload). Sigstore is working on verification improvements after TeamPCP proved you could forge the certificates. What hasn’t changed: PyPI still has no staged publishing. npm’s staged publishing only covers new publishes, not updates to existing packages (which is how the Axios attack worked). And no registry scans for expired maintainer email domains. The registries moved. Just not fast enough.
1
53
Jun 10
The Sigstore gap matters most. SLSA Build Level 3 (a framework for proving where and how software was built) is what many companies require for supply chain security. TeamPCP proved the certificates could be forged. Until that’s patched, the attestation model has a credibility problem that no amount of staged publishing fixes. Sigstore analysis: vectra.ai/blog/shai-hulud-pa…

20
A grid bot places buy and sell orders at fixed intervals. It profits when price chops sideways and gets destroyed when price trends hard in one direction. That makes BTC a bad grid asset. It trends too hard. A 15 to 20% run one way and the grid just keeps buying the whole way down. I run BTC anyway, and not for the grid profit. Bitcoin is the regime signal for everything else. A strong BTC trend means alts follow harder. Sideways chop means they range. A crash drags it all down together. Reading Bitcoin is how the rest of the system decides whether to lean in or sit on its hands. The most useful position I hold isn't the one that's supposed to make money. It's the one that tells me what kind of market I'm in.
1
60
My trading bot classifies the market in under a millisecond. People assume that means some giant AI. It doesn't. It's XGBoost, a lightweight model built on decision trees. Three inputs: trend strength, momentum, volatility. One output: is this a good market for grid trading or not? (Grid trading makes money when price bounces in a range, loses when it trends hard one direction.) When the model says no, the bot stops gridding and chases the trend instead. That's the whole thing. And knowing when NOT to grid has done more for the system than any flashy feature I've built. Boring model. Big difference.
1
42
The node-ipc attack used a vector most developers have never thought about: an expired domain. node-ipc is a popular npm package for communication between processes. The maintainer’s email domain expired. An attacker bought it for $12, used it to request a password reset on the npm account, and took full control of the package. From there they pushed a malicious version that exfiltrated environment variables (where developers store API keys and database passwords) via DNS TXT records. DNS exfiltration is almost invisible because DNS traffic rarely gets inspected by security tools. It looks identical to normal domain lookups. $12. One expired domain. Full control of a package installed by thousands of projects. The scary part: there is no centralized check for whether a package maintainer’s email domain is still active. Right now there could be hundreds of npm packages controlled by accounts with expired email domains. Nobody is scanning for this.
1
22
This attack vector was documented by Illustria in late 2025. They found over 2,000 npm packages with maintainer emails pointing to expired or purchasable domains. The node-ipc case was the first confirmed weaponization. The fix isn’t technical. It’s institutional. Registries need to monitor maintainer email domain health and flag accounts when domains lapse.
15
A buddy who manages infrastructure told me this one: His backup job ran nightly and reported success every time. It was backing up 14 of 15 servers. The 15th was right there in the config file. Nobody noticed for two years, because the success report said '14 servers' and nobody remembered it should say 15. The cause: a semicolon instead of a comma on line 47. The parser read everything after it as a comment. Here's what stuck with me. 'Job succeeded' and 'job did what you think it did' are not the same sentence. His monitoring confirmed the backup ran. It never confirmed the backup was complete. Two years of green checkmarks hiding one missing server. Check completeness, not just health. The blind spots don't raise their hand.
1
9
I asked him what he did after. He audited every automated job that reports pass or fail. Found two more with incomplete coverage. The pattern: monitoring that measures ‘did it run’ when it should measure ‘did it cover all targets.’ Worth checking your own systems. I’d bet most environments have at least one job like this.
3
The Axios npm compromise in April wasn’t TeamPCP. It was North Korea. Axios is one of the most downloaded JavaScript libraries in the world. 70 million installs per week from npm (the JavaScript package registry). It handles HTTP requests in almost every Node.js application. Microsoft attributed the attack to Sapphire Sleet, a North Korean state group. They compromised a maintainer account, pushed a backdoor version, and 600,000 developers installed it within three hours before npm pulled it. The payload was a full remote access tool. Credential harvesting, keylogging, screen capture, persistent access across reboots. Not a crypto miner. A complete surveillance package backed by a nation state. This is what supply chain attacks look like in 2026. They don’t hack your network. They poison the code you voluntarily install.
1
125
Microsoft Threat Intelligence published the Sapphire Sleet attribution in May 2026. Google’s Threat Analysis Group confirmed under the UNC1069 tracking name. The 600K install count comes from npm download telemetry during the exposure window. North Korea has been running npm attacks since at least 2024. This one landed the biggest target yet.
14
Fantasy football and trading are the same problem wearing different clothes: finding an edge. Dynasty leagues mean you keep players year to year, building a roster across seasons. Portfolio management with athletes. Most managers draft players they like. Most traders buy assets they like. Both lose to the same thing: mistaking what you prefer for what's actually mispriced. An edge means being right about something the consensus has wrong, which means you first have to know what the consensus believes. The managers who win over five or more years run every trade through one question: am I getting more expected future points than I'm giving up? The ones who lose bench their best player after a bad week. Same instinct as selling the bottom.
27
Fourteen supply chain attacks on package registries since March. Three different threat actors. Two ecosystems. Over 500 poisoned packages. Package registries are where developers download the code libraries that power applications. npm handles JavaScript (2.1 million packages), PyPI handles Python (600K ). One poisoned package can compromise every project that installs it. The actors: TeamPCP built a worm called Shai-Hulud that forges security certificates to look legitimate. North Korea’s Sapphire Sleet group hijacked the Axios library (70 million weekly downloads) and backdoored 600K machines in three hours. Copycats are now recycling both playbooks on smaller targets. The tooling is public, the registries are still catching up, and npm only shipped mandatory human review for new publishes three weeks ago.
2
296
Sources on the campaign waves I posted about earlier this month: Socket Research on AntV (socket.dev/blog/antv-package…), StepSecurity on the Sigstore certificate forgery (stepsecurity.io/blog/shai-hu…), Palo Alto Unit 42 on the 500 package count across both registries. socket.dev/blog/antv-package…
20