Specialized search for programming

Curated, developer-focused results

4Programming is a search engine built for programmers. It prioritizes technical relevance by combining multiple indexes, code-aware ranking, and AI systems. Use it to find code examples, documentation, libraries, tools, tutorials, and services — faster and with fewer irrelevant results than general-purpose search engines. Part of the 4SEARCH network of topic specific search engines.

Google wants your ID to ship Android apps

In August 2025 Google announced that, starting in 2027, every Android app developer has to register centrally with Google before their software can be installed on a certified Android device. Registration means paying a fee ($25), accepting Google's terms, handing over a government-issued ID, providing evidence of your private app-signing key, and listing every application identifier you ship now and intend to ship later. The requirement does not stop at the Play Store. It covers apps distributed through F-Droid, apps passed directly between people, and builds that a hobbyist makes for personal use. A developer who does not register has their apps blocked on Android devices worldwide. The keepandroidopen.org campaign organizing the opposition is counting down to the first enforcement, which it puts roughly 70 days out. What the check actually verifies Google is verifying the developer…

1,277 words2 outlets

My AI Coding Workflow, v3

My AI coding workflow changes every few months, so I give it version numbers. New tools ship, models get better, and steps that needed hand-holding last spring now run on their own. v1 was plan mode and a hand-written SPEC.md. v2…

780 words2 outlets
More in Developers and Community

Opera's Bet on Bespoke Browsers Could Actually Pay Off

Opera Neon is the company’s testbed for an agentic web, but it’s just one piece of a broader strategy. After speaking with the company about its multi-browser approach, I’m intrigued by where this could go. "We don't have all the answers." That's how Jan Standal, Opera’s senior vice president of marketing and communications, replied to a question I asked about the future of the web during a recent conversation. But rather than inject its mainline browser with a hodgepodge of ideas that might never be relevant, Opera says it's building several experimental browsers for targeted audiences. Read on for how Opera is building browsers in volatile times, along with details about its approach to Neon. I still don’t find Neon all that useful after testing it, but I do think Opera has the right idea about making products for specific types of users. He further explains that because Opera is more…

656 words

OpenCode Go

Use your OpenCode Go or Go Plus subscription through LiteLLM with the opencode_go/ model prefix. LiteLLM selects the upstream API format for each supported model and records usage under the OpenCode Go provider. OpenCode Go is…

505 words

John Backus - the Father of Fortran

Creating the first compiler went hand-in-hand with the task to creating the first high-level computer language. You can argue that this was Fortran or some other language, but the fact of the matter is that Fortran was the…

474 words
More in Products and Releases

Next.js `headers()` and `cookies()` in 2026: Dynamic APIs, Opt-Out Semantics, and the Static Rendering Traps Teams Hit

This article was written with the assistance of AI, under human supervision and review. The fix requires explicit opt-out: isolate dynamic reads behind Suspense boundaries, adopt Partial Prerendering (PPR) to separate static shells from dynamic slots, or configure route segments with force-dynamic and force-static directives. Each approach trades convenience for control. Boundaries add markup. PPR demands architectural planning. Route configs scatter intent across files. The decision happens automatically. Developers write components that read cookies for authentication or headers for locale detection. The compiler detects these API calls and marks the containing segment dynamic. No configuration file declares the intent. No build output highlights the change. The route shifts from prerendered static to request-time dynamic without ceremony. This component reads a theme cookie and the…

797 words
More in Frameworks and Web Development

In Và Xuất Dữ Liệu Trong Java (Print and Export Data)

Trong lập trình Java, bạn có thể sử dụng các lệnh và phương thức để xuất giá trị và in văn bản ra console. Dưới đây là một số cách phổ biến: Chức năng: In ra một chuỗi văn bản hoặc một biểu thức có giá trị mà không xuống hàng sau khi in. Chức năng: In ra một chuỗi được định dạng theo một mẫu cụ thể. Kết quả của chương trình là: Phương thức System.out.printf trong Java cho phép bạn định dạng chuỗi đầu ra theo nhiều cách khác nhau bằng cách sử dụng các chỉ thị định dạng (format specifiers). Dưới đây là các chỉ thị định dạng phổ biến: Định dạng số nguyên (int) System.out.printf("Số nguyên: %d", 123); // In ra: Số nguyên: 123 Định dạng số thực (float, double) System.out.printf("Số thực: %.2f", 123.456); // In ra: Số thực: 123.46 Định dạng chuỗi (String) System.out.printf("Chuỗi: %s", "Hello"); // In ra: Chuỗi: Hello Định dạng ký tự (char) System.out.printf("Ký tự: %c", 'A'); // In ra: Ký…

582 words
More in How-To and Tutorials