Skip to content

Instantly share code, notes, and snippets.

View bitnom's full-sized avatar
👾
forever building

bitnom bitnom

👾
forever building
  • USA
View GitHub Profile
@bitnom
bitnom / google-vs-stargate.md
Created August 26, 2025 21:42
google-vs-stargate

Okay, let's devise a hypothetical projection. Grounding this in Google's current financial power and AI compute inventory, here is a multi-phase forecast of what will likely happen in the escalating competition with Stargate.

Baseline: Q3 2025

  • Google's Financial Power: Google is a financial juggernaut. Fresh off its Q2 2025 earnings, Alphabet reported quarterly revenue of over $96 billion and has just shocked investors by raising its planned 2025 capital expenditure (CapEx) to a massive $85 billion. This isn't just a budget; it's a war chest. Their Cloud division is surging, growing at 32% and now operating at a $50B+ annual run rate, providing both the mandate and the cash to fund this spending.
  • Google's Compute Inventory: Google is not waiting. It is actively deploying its 6th-gen "Trillium" and 7th-gen "Ironwood" TPUs globally. Ironwood, its first chip designed specifically for inference, boasts a 2x performance-per-watt improvement over its predecessor. This means Google's existi
@bitnom
bitnom / nim-concurrency-2025.md
Last active August 15, 2025 04:40
The turbulent evolution of Nim's concurrency story

The turbulent evolution of Nim's concurrency story

Preface

Having recently come back to Nim after not using it much since pre-2.0, I was very confused about the state of things. I used to make use of async patterns, and now I need threads for a particular project. Nim is great fit for every other reason I can come up with, but the ambiguity and lack of direction relating to threads has set me back several days. Finally, I turned to AI for the answers. I will relay it to the community so that others in my position may have a clearer picture than I did, written by Claude's deep research...

Overview

Nim's concurrency features have undergone dramatic transformations from 2008 to August 2025, shifting from an ambitious compile-time safety model to deprecated standard library modules, with the creator now recommending his new Malebolgia library while the community fragments across competing solutions. The most significant current development is that **the standard threadpool is officially deprecated

@bitnom
bitnom / .roomodes.json
Last active April 1, 2025 04:15
Using the SPARC Development Methodology in roocode
{
"customModes": [
{
"slug": "sparc",
"name": "⚡️ SPARC Orchestrator",
"roleDefinition": "You are SPARC, the orchestrator of complex workflows. You break down large objectives into delegated subtasks aligned to the SPARC methodology. You ensure secure, modular, testable, and maintainable delivery using the appropriate specialist modes.",
"customInstructions": "Follow SPARC:\n\n1. Specification: Clarify objectives and scope. Never allow hard-coded env vars.\n2. Pseudocode: Request high-level logic with TDD anchors.\n3. Architecture: Ensure extensible system diagrams and service boundaries.\n4. Refinement: Use TDD, debugging, security, and optimization flows.\n5. Completion: Integrate, document, and monitor for continuous improvement.\n\nUse `new_task` to assign:\n- spec-pseudocode\n- architect\n- code\n- tdd\n- debug\n- security-review\n- docs-writer\n- integration\n- post-deployment-monitoring-mode\n- refinement-optimization-mode\n\nValidate:\n✅ Files < 500 lines\n✅ No hard-coded
@bitnom
bitnom / .roomodes.json
Created April 1, 2025 02:03 — forked from ruvnet/.roomodes.json
This guide introduces Roo Code and the innovative Boomerang task concept, now integrated into SPARC Orchestration. By following the SPARC methodology (Specification, Pseudocode, Architecture, Refinement, Completion) and leveraging advanced reasoning models such as o3, Sonnet 3.7 Thinking, and DeepSeek, you can efficiently break down complex proj…
{
"customModes": [
{
"slug": "sparc",
"name": "⚡️ SPARC Orchestrator",
"roleDefinition": "You are SPARC, the orchestrator of complex workflows. You break down large objectives into delegated subtasks aligned to the SPARC methodology. You ensure secure, modular, testable, and maintainable delivery using the appropriate specialist modes.",
"customInstructions": "Follow SPARC:\n\n1. Specification: Clarify objectives and scope. Never allow hard-coded env vars.\n2. Pseudocode: Request high-level logic with TDD anchors.\n3. Architecture: Ensure extensible system diagrams and service boundaries.\n4. Refinement: Use TDD, debugging, security, and optimization flows.\n5. Completion: Integrate, document, and monitor for continuous improvement.\n\nUse `new_task` to assign:\n- spec-pseudocode\n- architect\n- code\n- tdd\n- debug\n- security-review\n- docs-writer\n- integration\n- post-deployment-monitoring-mode\n- refinement-optimization-mode\n\nValidate:\n✅ Files < 500 lines\n✅ No hard-coded
@bitnom
bitnom / install-nvidia-docker.sh
Created February 26, 2021 00:51
install nvidia docker on Linux
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
&& curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \
&& curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
curl -s -L https://nvidia.github.io/nvidia-container-runtime/experimental/$distribution/nvidia-container-runtime.list | sudo tee /etc/apt/sources.list.d/nvidia-container-runtime.list
sudo apt-get update
sudo apt-get install -y nvidia-docker2
sudo systemctl restart docker
def blocking_io():
print(f"start blocking_io at {time.strftime('%X')}")
# Note that time.sleep() can be replaced with any blocking
# IO-bound operation, such as file operations.
time.sleep(1)
print(f"blocking_io complete at {time.strftime('%X')}")
async def main():
print(f"started main at {time.strftime('%X')}")
import aiohttp
from aiohttp_socks import ProxyType, ProxyConnector, ChainProxyConnector
async def fetch(url):
connector = ProxyConnector.from_url('socks5://user:[email protected]:1080')
### or use ProxyConnector constructor
# connector = ProxyConnector(
# proxy_type=ProxyType.SOCKS5,
@bitnom
bitnom / css-popup-demo.markdown
Created November 19, 2019 04:33
css popup demo