Pinned Tweet
My programming philosophy
Short Functions
Duck Typing/Null Object Pattern
Tell Don't Ask
S & O of SOLID
Separation of Concerns
OO Decomposition
Loose Coupling
Static Types
Lazy Evalutaion
Targeted Test Coverage
Architect/Red/Green/Refactor
CTDD
Peer Review
Pair Programming
YAGNI xitter.cf/ryconoclast/status/980…
SQRL for Ruby just shipped. Steve Gibson’s password-less login (per-site Ed25519 keys, nothing to phish, nothing to leak from your database) is now one gem and one line away for Rails, Devise, OmniAuth, Sinatra, Roda or plain Rack. Thread: 1/6
github.com/danielpclark/sqrl…
sqrl-client is the client library for bots, scripts and test suites: SQRL logins without a browser (from a login page or a sqrl:// URL), a Capybara helper for the same-device handoff, and a 23-case conformance suite: sqrl-client conformance example.com/login. 5/6
Six gems, one version, MIT. 480+ specs, six example apps driven end to end by the bot and a headless browser, interop-tested against the Rust reference server. Stores for ActiveRecord, Redis and ActiveSupport::Cache. PRs welcome. 6/6
github.com/danielpclark/sqrl… #Ruby #SQRL
Coming soon to a browser near you: “SQRL Login” 🐿️ An open-source browser extension for @SGgrc's SQRL, with a #Rust/#WebAssembly core. github.com/danielpclark/SQRL…
#SQRL #security
Built a desktop dashboard for live Claude Code sessions: every session on your machine, other machines on your LAN/Tailscale, and claude.ai cloud sessions — all on one screen.
#Ruby + a small #Rust (egui) window. #AI #BotOps #BotOperations
github.com/danielpclark/bot-…
If anyone wants to write games in Ruby I wrote my own rbgame, inspired by pygame, and it's on top of a SDL rewrite in Rust. #Ruby #Rust #Python #GameDev #gamedesign
github.com/danielpclark/rbga…
Includes a Gorillas clone game as an example.
Have a WIP of a Bot Ops center. This kind of thing takes more work than I anticipated. But now that I've got the groundwork laid this thing will only get nicer.
2/ Two dialects, freely mixed 🎭
on("Just (x:xs)") { |x, xs| ... } # quoted Haskell
on(Just([x, *xs])) { |x, xs| ... } # plain Ruby, no quotes
Forget a case? You get GHC's "Patterns not matched: Nothing" at definition time, not a crash in production. 🛡️
3/ Or just write Haskell
HaskellMatch.haskell <<~HS
primes = sieve [2..]
where sieve (p:xs) = p : sieve [x | x <- xs, x `mod` p /= 0]
HS
Nums.primes.take(10)
Operators, fixities, records, pattern guards, imports between .hs files. Lambdas cross the border as plain Procs.
🧩 New Ruby gem: haskell_match
Haskell's pattern matching in Ruby
Every path accounted for: missing or redundant clauses fail at definition, GHC-style
Recursion past the VM stack
Lazy & infinite lists
λ Write Haskell inline
github.com/danielpclark/hask…
🚀 faster_path 0.4.0 is out: Ruby's Pathname, reimplemented in Rust 💎🦀
✅ Ruby 2.5–2.7
🪟 Windows path rules
🛡️ Memory-safe extension
⚡ Faster basename
Most Pathname methods run 70–95% faster than stdlib 📈
gem install faster_path
github.com/danielpclark/fast… #ruby #rustlang
vue_live 0.1.1 is out 🎉
Serve Vue 3 single-file components straight from Ruby, in production, with no build step. Pure Ruby compiler, zero runtime deps. Works with Rails, Sinatra, Roda or plain Rack.
github.com/danielpclark/vue_…
#Ruby #Rails #VueJS
Daniel P Clark retweeted
Replying to @6ftdan
ruby 4.0 support already is wild, this crate's come a long way
🦀💎 Rutie 0.10.2 → 0.14.0 is out!
🧩 Ruby 2.5 → 4.0
🪟🍎🐧 Windows, Mac & Linux
📚 The entire Ruby ecosystem, fully implemented & available to Rust
🔁 Rust in Ruby, or Ruby in Rust
⭐ github.com/danielpclark/ruti…
#rustlang #ruby #opensource #FFI





