#RedHatAccelerator, RHCA II, CK{A|D|S}, maintaining curated CK{A|S} repos bit.ly/k8s-cks. My opinions are my own.

Joined April 2009
1,219 Photos and videos
Wal retweeted
Docker Container Registries
2
8
81
3,022
Wal retweeted
How OAuth 2.0 works (clearly explained in under 2 mins): OAuth can be thought of as a digital handshake between the app, service, and user, with everyone agreeing on what is shared. It's an authorization framework that enables applications to access a userโ€™s data on another service (like Facebook or GitHub) ๐˜„๐—ถ๐˜๐—ต๐—ผ๐˜‚๐˜ ๐˜€๐—ต๐—ฎ๐—ฟ๐—ถ๐—ป๐—ด ๐˜๐—ต๐—ฒ ๐˜‚๐˜€๐—ฒ๐—ฟโ€™๐˜€ ๐—ฝ๐—ฎ๐˜€๐˜€๐˜„๐—ผ๐—ฟ๐—ฑ. How it works: ๐—ง๐—ต๐—ฒ ๐—ฝ๐—ฟ๐—ผ๐—ฐ๐—ฒ๐˜€๐˜€ ๐—ด๐—ฒ๐—ป๐—ฒ๐—ฟ๐—ฎ๐—น๐—น๐˜† ๐—ณ๐—ผ๐—น๐—น๐—ผ๐˜„๐˜€ ๐Ÿฒ ๐˜€๐˜๐—ฒ๐—ฝ๐˜€ ๐˜„๐—ถ๐˜๐—ต ๐Ÿฐ ๐—ฐ๐—ผ๐—บ๐—ฝ๐—ผ๐—ป๐—ฒ๐—ป๐˜๐˜€ ๐˜๐˜†๐—ฝ๐—ถ๐—ฐ๐—ฎ๐—น๐—น๐˜† ๐—ถ๐—ป๐˜ƒ๐—ผ๐—น๐˜ƒ๐—ฒ๐—ฑ: โ€ข Client (app wanting access) โ€ข Resource owner (user) โ€ข Authorization server โ€ข Resource server ๐—ง๐—ผ ๐˜‚๐—ป๐—ฑ๐—ฒ๐—ฟ๐˜€๐˜๐—ฎ๐—ป๐—ฑ ๐˜๐—ต๐—ฒ ๐—ฝ๐—ฟ๐—ผ๐—ฐ๐—ฒ๐˜€๐˜€, ๐—น๐—ฒ๐˜โ€™๐˜€ ๐˜๐—ฎ๐—ธ๐—ฒ ๐—ฎ ๐—น๐—ผ๐—ผ๐—ธ ๐—ฎ๐˜ ๐—ต๐—ผ๐˜„ ๐—ฎ ๐—ด๐—ฎ๐—บ๐—ฒ ๐˜„๐—ผ๐˜‚๐—น๐—ฑ ๐—ฐ๐—ผ๐—ป๐—ป๐—ฒ๐—ฐ๐˜ ๐˜๐—ผ ๐—ฎ ๐—ฝ๐—น๐—ฎ๐˜†๐—ฒ๐—ฟโ€™๐˜€ ๐—™๐—ฎ๐—ฐ๐—ฒ๐—ฏ๐—ผ๐—ผ๐—ธ ๐—ฎ๐—ฐ๐—ฐ๐—ผ๐˜‚๐—ป๐˜. ๐Ÿญ) ๐—ฅ๐—ฒ๐—พ๐˜‚๐—ฒ๐˜€๐˜ ๐—ฎ๐—ฐ๐—ฐ๐—ฒ๐˜€๐˜€ Within the game (client), the player (user) clicks on a โ€œconnect with Facebookโ€ button to link their profile and find friends. ๐Ÿฎ) ๐—ฅ๐—ฒ๐—ฑ๐—ถ๐—ฟ๐—ฒ๐—ฐ๐˜ ๐˜๐—ผ ๐˜€๐—ฒ๐—ฟ๐˜ƒ๐—ถ๐—ฐ๐—ฒ The game redirects the player to Facebookโ€™s (serviceโ€™s) login page. ๐Ÿฏ) ๐—ฃ๐—ฒ๐—ฟ๐—บ๐—ถ๐˜€๐˜€๐—ถ๐—ผ๐—ป ๐—ฟ๐—ฒ๐—พ๐˜‚๐—ฒ๐˜€๐˜ After logging in, the data that the game is requesting access to will be shown to the player which they can either allow or deny. ๐Ÿฐ) ๐—”๐˜‚๐˜๐—ต๐—ผ๐—ฟ๐—ถ๐˜‡๐—ฎ๐˜๐—ถ๐—ผ๐—ป ๐—ฐ๐—ผ๐—ฑ๐—ฒ If the player gives their approval, Facebook redirects the player back to the game with an authorization code (from authorization server). The code is a temporary credential that proves the playerโ€™s consent. ๐Ÿฑ) ๐—˜๐˜…๐—ฐ๐—ต๐—ฎ๐—ป๐—ด๐—ฒ ๐—ฐ๐—ผ๐—ฑ๐—ฒ ๐—ณ๐—ผ๐—ฟ ๐˜๐—ผ๐—ธ๐—ฒ๐—ป The game now sends the authorization code along with its own identification to Facebookโ€™s server in the background. Facebook identifies the authorization code and the gameโ€™s identity and returns an access token. ๐Ÿฒ) ๐—จ๐˜€๐—ฒ ๐˜๐—ต๐—ฒ ๐˜๐—ผ๐—ธ๐—ฒ๐—ป The game can now use the access token to request the agreed-upon data from Facebook (from the resource server), like the player's friends list. In this process, the playerโ€™s Facebook credentials were never shared, but the game was able to access the agreed-upon player data from Facebook. This is what OAuth 2.0 facilitates; allowing third-party applications to access data from services in a secure manner without sharing credentials. What else would you add? โ™ป๏ธ Repost to help others learn system design. โž• Follow me ( Nikki Siapno ) turn on notifications.
OAuth 2.0 clearly explained. Full breakdown (with visuals) here: lucode.co/oauth-lil1nlsm
6
45
215
13,319
Wal retweeted
KARPATHY JUST HANDED EVERY DEVELOPER THE EXACT FILE CLAUDE CODE NEEDED FROM DAY ONE. 65 lines. 110K stars. the cheat code for every broken workflow you've been blaming on the model. if I had this a year ago, I would've shipped twice as fast. make sure to bookmark it before it gets lost in your feed. I was losing 2 hours a day to Claude rewriting code I didn't ask it to touch. then I found CLAUDE. md. 90 seconds to set up. changed everything. Karpathy identified 4 failure patterns Claude Code repeats constantly, in his own words: โ†’ silent assumptions: Claude makes decisions without checking with you โ†’ code bloat: 1000 lines written when 100 would do โ†’ collateral damage: Claude edits code unrelated to the task โ†’ no success criteria: Claude loops with no finish line these aren't model failures. they're missing instructions. CLAUDE. md gives Claude the 4 rules it needed from day one: โ†’ think before coding, state assumptions. ask before assuming. โ†’ simplicity first, minimum code. nothing speculative. โ†’ surgical changes, touch only what is required. nothing adjacent. โ†’ goal-driven execution, define success before starting. loop until verified. 65 lines. no build step. no framework. no dependencies. just the 4 principles every developer already knew, but needed Karpathy to write down. (Link to the REPO in the comment below) the guide on how to build a second brain with CLAUDE is in the article below.
35
208
1,373
253,116
Wal retweeted
How OpenAI Built Its Data Agent Most teams building data agents stack routers, fine-tunes, and complex retrieval pipelines on top of multiple LLMs. OpenAI didn't. Their data agent runs on a single model and only 13 tools, across 1.5 exabytes and 90,000 tables. It's "pretty vanilla" by design. We spoke with Emma Tang, Head of Data Platform Engineering at OpenAI, to better understand the architecture and the engineering decisions behind it. The article covers: - The architecture behind the data agent - The six layers of context that make a single LLM reliable across 90,000 tables - How OpenAI Uses Codex Internally: 3 Use Cases - Five practical lessons for any team building a domain agent - Where OpenAI's data platform is headed next
15
110
587
44,560
Wal retweeted
6
50
249
6,282
Wal retweeted
Wake up babe THE Claude Code guy dropped a free masterclass on harness engineering
27
299
3,667
712,276
Wal retweeted
Claude Code is (actually) easy. The 12-step roadmap in plain English: If you're totally new to Claude Code: Beginner: lnkd.in/emwZS5yS Intermediate: lnkd.in/eG2-Fj6S Advanced: lnkd.in/ebC7NbUK PHASE 1: Context (what Claude knows about you) Step 0: Install the CLI One terminal command gets it running: "npm install -g @anthropic-ai/claude-code" Step 1: Projects - Give Claude its own folder. - Everything you build stays tied to it. "I'm creating a new folder for my [project]. Create it for me and set it up so I can start working in it." Step 2: claude .md - Claude reads this before every chat. - Role, voice, defaults. Set once, it sticks. "Help me build my CLAUDE.md from scratch. Use Boris Cherny's CLAUDE.md as a starting template. Ask me about my business, voice, banned words, output defaults, and how I want you to work. Save the final file to ~/CLAUDE.md." Step 3: Memory - Every correction becomes a saved lesson. - Same mistake never lands twice. "From now on, whenever I correct you, save it as its own .md file at ~/.claude/projects/{project}/memory/, prefixed feedback_, user_, project_, or reference_. Index everything in MEMORY.md." PHASE 2: Fire (how you trigger work) Step 4: Skills - Wrap a workflow in one keyword. - Fire it from any chat, any folder, any time. "Turn this workflow into a skill called /[name]. Set it up so I can fire it from any chat." Step 5: /commands Type the name and Claude fires the workflow. "Save this prompt as a /[name] command. Set it up so I can run it any time." Step 6: /plan - Type /plan before starting any task. - Claude lays out the steps. You approve it. "/plan I want to [your task in plain English]." PHASE 3: Extend (wire it to your stack) Step 7: Hooks - Auto-run something the moment an event fires. - You never have to trigger it manually. "Set up a hook that runs [thing you want] every time I [event]. Wire it up for me." Step 8: MCP - Plug Claude into Slack, Notion, Gmail, etc. - You get live data from the tools you use. "Connect Claude to [tool]. Set it up for me and walk me through it." Step 9: Plugins Install skills, agents, and MCPs in one command. "/plugin install [plugin-name]" PHASE 4: Scale (delegate and autopilot) Step 10: Subagents - Send out parallel workers. - Get three jobs done at once. "Use subagents to handle [task A], [task B] and [task C] in parallel." Step 11: Agent Teams - A pipeline of specialist AI agents. - Each owns one job, hands off to the next. "Build me an agent team for [process]. Step 12: Routines - Schedule your agent team on the cloud. - You set it once, walk away forever. "/schedule [agent or skill] every [schedule]." That's Claude Code from zero to autopilot. 12 steps with no coding background needed. Repost โ™ป๏ธ to help someone in your network. Cc : Charlie
31
53
144
3,167
Wal retweeted
Claude Code is now free. Hereโ€™s the stack: โ†’ Free Claude Code โ†’ Free models โ†’ 1M context window โ†’ Agent OS โ†’ Obsidian memory So instead of paying for the full stack, you can build a free AI coding system that gets smarter over time.
6
5
23
4,825
Wal retweeted
If you're making technical decisions that shape a system, you're already doing software architecture. The difference is whether you're doing it intentionally. In Grokking Software Architecture, @codeliftsleep gives developers the vocabulary, frameworks, and thinking process needed to make better long-term technical decisions. Watch the First Chapter Summary: hubs.la/Q04jPcBm0
3
58
506
19,491
๐Ÿšจ THIS IS INSANE!!! ๐Ÿคฏ Converts PDFs, images, videos, and documents into clean structured JSON for LLMs. No more messy parsing or broken formatting. Just feed it your data and get AI-ready output instantly. Built for developers who want better RAG pipelines, agents, and document understanding. ๐Ÿ”— github.com/adithya-s-k/omnipโ€ฆ
2
30
171
6,566
Wal retweeted
Basic web scrapers often break as soon as they hit CAPTCHAs, IP bans, or 403 errors. In this course, Gavin teaches you how to build production-ready web scrapers that work on modern websites. You'll use Playwright, Cheerio, residential proxies, and a MERN dashboard to scrape and visualize live data. freecodecamp.org/news/build-โ€ฆ
6
45
328
15,807
Wal retweeted
Fundamentals of a ๐—ฉ๐—ฒ๐—ฐ๐˜๐—ผ๐—ฟ ๐——๐—ฎ๐˜๐—ฎ๐—ฏ๐—ฎ๐˜€๐—ฒ. With the rise of GenAI, Vector Databases skyrocketed in popularity. The truth - Vector Databases are also useful outside of a Large Language Model context. When it comes to Machine Learning, we often deal with Vector Embeddings. Vector Databases were created to perform specifically well when working with them: โžก๏ธ Storing. โžก๏ธ Updating. โžก๏ธ Retrieving. When we talk about retrieval, we refer to retrieving set of vectors that are most similar to a query in a form of a vector that is embedded in the same Latent space. This retrieval procedure is called Approximate Nearest Neighbour (ANN) search. A query here could be in a form of an object like an image for which we would like to find similar images. Or it could be a question for which we want to retrieve relevant context that could later be transformed into an answer via a LLM. Letโ€™s look into how one would interact with a Vector Database: ๐—ช๐—ฟ๐—ถ๐˜๐—ถ๐—ป๐—ด/๐—จ๐—ฝ๐—ฑ๐—ฎ๐˜๐—ถ๐—ป๐—ด ๐——๐—ฎ๐˜๐—ฎ. 1. Choose a ML model to be used to generate Vector Embeddings. 2. Embed any type of information: text, images, audio, tabular. Choice of ML model used for embedding will depend on the type of data. 3. Get a Vector representation of your data by running it through the Embedding Model. 4. Store additional metadata together with the Vector Embedding. This data would later be used to pre-filter or post-filter ANN search results. 5. Vector DB indexes Vector Embedding and metadata separately. There are multiple methods that can be used for creating vector indexes, some of them: Random Projection, Product Quantization, Locality-sensitive Hashing. 6. Vector data is stored together with indexes for Vector Embeddings and metadata connected to the Embedded objects. Learn all you need to know about vector databases in my End-to-End AI Engineering Bootcamp. Just this week 25% off: maven.com/swirl-ai/end-to-enโ€ฆ ๐—ฅ๐—ฒ๐—ฎ๐—ฑ๐—ถ๐—ป๐—ด ๐——๐—ฎ๐˜๐—ฎ. 7. A query to be executed against a Vector Database will usually consist of two parts: โžก๏ธ Data that will be used for ANN search. e.g. an image for which you want to find similar ones. โžก๏ธ Metadata query to exclude Vectors that hold specific qualities known beforehand. E.g. given that you are looking for similar images of apartments - exclude apartments in a specific location. 8. You execute Metadata Query against the metadata index. It could be done before or after the ANN search procedure. 9. You embed the data into the Latent space with the same model that was used for writing the data to the Vector DB. 10. ANN search procedure is applied and a set of Vector embeddings are retrieved. Popular similarity measures for ANN search include: Cosine Similarity, Euclidean Distance, Dot Product. How are you using Vector DBs? Let me know in the comment section!
8
65
317
11,656
Wal retweeted
May 28
I think youโ€™ll really like Opus 4.8 Itโ€™s as smart as its benchmarks show but expresses and utilizes that intelligence in a warm and collaborative way. Workflows are a great way to utilize it- Iโ€™m hooked. Article on that soon.
May 28
Introducing Claude Opus 4.8: it builds on Opus 4.7 with sharper judgment, more honesty about its own progress, and the ability to work independently for longer than its predecessors. Available today at the same price.
281
87
2,622
199,755
Wal retweeted
Someone open-sourced a PDF parser that converts 100 pages per second to Markdown. 100% free. on a CPU. no GPU. no cloud. no API key. โ†’ 100 pages per second. โ†’ handles tables, nested layouts, complex docs. โ†’ built-in OCR for 80 languages via hybrid mode. โ†’ official LangChain integration. It's called OpenDataLoader and it just took the #1 spot in every PDF-to-Markdown benchmark. The wildest part is that docling scores 0.86 and is 15x slower. marker needs a GPU and is 1,000x slower. Pymupdf4llm is fast but scores 0.40 on tables. This thing beats every one of them. on a CPU. Built with the PDF Association and the veraPDF team the people who literally write the PDF standards. 8.6k stars. Apache 2.0. zero proprietary dependencies.
10
177
1,216
86,669
Wal retweeted
NotebookLM just got an update nobody is talking about. And it fixed the biggest problem with AI. Before today, your AI was always reading old files. You had to delete old notes and upload new ones every single week. It was a massive waste of time. Now, NotebookLM connects right to Google Drive. You type in your Google Doc, and your AI learns it instantly. It builds a living brain for your business that never gets old. You can turn your boring guides into podcast chats or smart mind maps. Link your business guides to it right now. Let the AI do the heavy work for you.
1
7
21
2,039
Wal retweeted
from prompt to context to harness engineering. three terms keep coming up in AI engineering, and they get conflated all the time. here is the cleanest way to understand what each one is and how they fit together. ๐—ฝ๐—ฟ๐—ผ๐—บ๐—ฝ๐˜ ๐—ฒ๐—ป๐—ด๐—ถ๐—ป๐—ฒ๐—ฒ๐—ฟ๐—ถ๐—ป๐—ด ๐—ถ๐˜€ ๐˜๐—ต๐—ฒ ๐—บ๐—ฒ๐˜€๐˜€๐—ฎ๐—ด๐—ฒ. the model has no memory of anything before this single call, so the prompt has to carry the full universe of what it needs to know. that means a role, some background, the instructions, a few examples, and a format. these get assembled into one input and sent to the model. when the output falls short, the skill is figuring out which ingredient is actually letting you down, not rewriting the instructions every time. the unit of work is one input. ๐—ฐ๐—ผ๐—ป๐˜๐—ฒ๐˜…๐˜ ๐—ฒ๐—ป๐—ด๐—ถ๐—ป๐—ฒ๐—ฒ๐—ฟ๐—ถ๐—ป๐—ด ๐—ถ๐˜€ ๐˜๐—ต๐—ฒ ๐—บ๐—ฒ๐—บ๐—ผ๐—ฟ๐˜†. across multiple steps, the window is finite and the information available is not, which forces a curation step. without it, important details get buried under stale tool outputs and old turns, and the model's attention degrades on the things that actually matter. a curator selects what stays, compresses what is useful but bulky, and drops the rest. each step's output then feeds into the next step, where good curation is more about knowing what to throw away than packing more in. the unit of work is what stays in the window, step by step. ๐—ต๐—ฎ๐—ฟ๐—ป๐—ฒ๐˜€๐˜€ ๐—ฒ๐—ป๐—ด๐—ถ๐—ป๐—ฒ๐—ฒ๐—ฟ๐—ถ๐—ป๐—ด ๐—ถ๐˜€ ๐˜๐—ต๐—ฒ ๐—บ๐—ฎ๐—ฐ๐—ต๐—ถ๐—ป๐—ฒ. on its own, a model just generates text. the harness is what turns it into something that can take actions, check its own work, and recover when a step goes wrong. the full loop has three phases: - ๐—ด๐—ฎ๐˜๐—ต๐—ฒ๐—ฟ pulls together everything the model needs - ๐—ฎ๐—ฐ๐˜ runs the model and calls tools or sub-agents - and ๐˜ƒ๐—ฒ๐—ฟ๐—ถ๐—ณ๐˜† checks the output with tests or a judge on failure, the whole loop retries with updated context, which is the entire difference between calling an API and running an agent. the unit of work is the machine itself. here is the part that ties it together. prompt engineering and context engineering both live inside ๐—ด๐—ฎ๐˜๐—ต๐—ฒ๐—ฟ. the harness is the outer container, context is what it curates, and the prompt is what it finally hands to the model. zoom out and the unit of work gets bigger. zoom in and you are back at the prompt. i also published this deep dive (article) on agent harness engineering, covering the orchestration loop, tools, memory, context management, and everything else that transforms a stateless LLM into a capable agent. the article is quoted below.
33
170
852
83,011
Wal retweeted
Many devs are using Retrieval Augmented Generation - or RAG - to improve their LLM's capabilities. And in this course, you'll learn RAG fundamentals, along with key model context protocol concepts. The course uses the Python SDK and covers chunking strategies, working with AI agents, and lots more. freecodecamp.org/news/learn-โ€ฆ
7
90
514
18,568
Wal retweeted
ๆญฃๅผๅผ€ๆบ open claude design ๐Ÿš€ ่ถ… 95% ไปฅไธŠ็š„่ฟ˜ๅŽŸๅบฆ๏ผ ๆต“็ผฉๅ’Œ้€†ๅ‘ๆ‰€ๆœ‰ claude design ๆœ€ๅ…ˆ่ฟ›็š„่ฎพ่ฎก๏ผŒๆœ€ๅฅฝ็œ‹็š„ๆจกๆฟ๐Ÿ’ฅ ๅކๆ—ถ 72 ๅฐๆ—ถ๏ผŒ18700 ่กŒไปฃ็ ๏ผŒ30 ่ฎพ่ฎก Skills๏ผŒๆ”ฏๆŒ่ถ…่ฟ‡ 71 ๅฅ— ่ฎพ่ฎก็ณป็ปŸ๏ผŒๆ”ฏๆŒๆ‰€ๆœ‰็š„ code agent๏ผŒๅŒ…ๆ‹ฌ claude codeใ€codexใ€openclaw ็ญ‰ ๐Ÿ”ฅ
125
368
2,471
964,740