Latest entries
-
[Web dev for beginners] CSS layout: flexbox, grid, media queries and container queries
CSS provides a variety of services for web content: In the previous chapter, we used it to format content: to change colors, typefaces, etc. In this chapter, we will use it to lay out content: to place HTML elements on a page.
Axel Rauschmayer — Published
-
Unseeable prompt injections in screenshots: more vulnerabilities in Comet and other AI browsers
Unseeable prompt injections in screenshots: more vulnerabilities in Comet and other AI browsers The Brave security team wrote about prompt injection against browser agents a few months ago (here are my notes on that). Here's their follow-up: What we’ve found confirms our initial concerns: indirect prompt…
Simon Willison — Published
-
FDA slows down on drug reviews, approvals amid Trump admin chaos
The ongoing shutdown also means no new drug submissions are being accepted.
Ars Technica — Published
-
It’s troll vs. troll in Netflix’s Troll 2 trailer
Norwegian director Roar Uthaug's sequel to his 2022 film Troll knows to not take itself too seriously.
Ars Technica — Published
-
Elon Musk just declared war on NASA’s acting administrator, apparently
"Sean said that NASA might benefit from being part of the Cabinet."
Ars Technica — Published
-
Inside the Synthient Threat Data
Where is your data on the internet? I mean, outside the places you've consciously provided it, where has it now flowed to and is being used and abused in ways you've never expected? The truth is that once the bad guys have your data, it often
Troy Hunt — Published
-
Upcoming iOS and macOS 26.1 update will let you fog up your Liquid Glass
Apple backs down from some aspects of Liquid Glass, but not others.
Ars Technica — Published
-
OpenAI looks for its “Google Chrome” moment with new Atlas web browser
MacOS version launches today, includes Agent Mode preview to "use the Internet for you."
Ars Technica — Published
-
YouTube’s likeness detection has arrived to help stop AI doppelgängers
Likeness detection will flag possible AI fakes, but Google doesn't guarantee removal.
Ars Technica — Published
-
Introducing ChatGPT Atlas
Introducing ChatGPT Atlas Last year OpenAI hired Chrome engineer Darin Fisher, which sparked speculation they might have their own browser in the pipeline. Today it arrived. ChatGPT Atlas is a Mac-only web browser with a variety of ChatGPT-enabled features. You can bring up a chat panel next to a web…
Simon Willison — Published
-
Satellite operators will soon join airlines in using Starlink in-flight Wi-Fi
"This starts to enable a whole new category of capabilities."
Ars Technica — Published
-
“Butt breathing” might soon be a real medical treatment
Ig Nobel-winning research could one day be used to treat people with blocked airways or clogged lungs.
Ars Technica — Published
-
Cards Against Humanity lawsuit forced SpaceX to vacate land on US/Mexico border
CAH: Trespassing lawsuit forced SpaceX to "pack up the space garbage" and leave.
Ars Technica — Published
-
M5 iPad Pro tested: Stop me if you’ve heard this one before
It's a gorgeous tablet, but what does an iPad need with more processing power?
Ars Technica — Published
-
HBO Max prices increase by up to $20 today
HBO Max subscription fees have risen every year for the past three years.
Ars Technica — Published
-
MacBook Pro review: Apple’s most awkward laptop is the first to show off Apple M5
Apple M5 trades blows with Pro and Max chips from older generations.
Ars Technica — Published
-
Google Fi is getting enhanced web calls and messaging, AI bill summaries
Google's MVNO gets better web support, clearer audio, and yes, more AI.
Ars Technica — Published
-
Amazon’s DNS problem knocked out half the web, likely costing billions
Amazon’s outage is over. But backlash over billions in losses has just started.
Ars Technica — Published
-
Even with protections, wolves still fear humans
European wolves flee human conversation faster than dogs' barking.
Ars Technica — Published
-
Big Tech may fall short of green energy targets due to proposed rule changes
Goal is to create a "credible link" between companies and power they invest in.
Ars Technica — Published
-
It wasn’t space debris that struck a United Airlines plane—it was a weather balloon
WindBorne says its balloons are compliant with all applicable airspace regulations.
Ars Technica — Published
-
Quoting Phil Gyford
Since getting a modem at the start of the month, and hooking up to the Internet, I’ve spent about an hour every evening actually online (which I guess is costing me about £1 a night), and much of the days and early evenings fiddling about with things. It’s so complicated. All the hype never mentioned…
Simon Willison — Published
-
Quoting Bruce Schneier and Barath Raghavan
Prompt injection might be unsolvable in today’s LLMs. LLMs process token sequences, but no mechanism exists to mark token privileges. Every solution proposed introduces new injection vectors: Delimiter? Attackers include delimiters. Instruction hierarchy? Attackers claim priority. Separate models? Double…
Simon Willison — Published
-
How to Fix Any Bug
The joys of vibecoding.
Dan Abramov — Published
-
NSO permanently barred from targeting WhatsApp users with Pegasus spyware
Ruling holds that defeating end-to-end encryption in WhatsApp harms Meta's business.
Ars Technica — Published
-
Why did NASA’s chief just shake up the agency’s plans to land on the Moon?
"The president wants to make sure we beat the Chinese."
Ars Technica — Published
-
Claude Code gets a web version—but it’s the new sandboxing that really matters
Sandboxing lessens hassle, but fire-and-forget agentic tools still pose risks.
Ars Technica — Published
-
Claude Code for web - a new asynchronous coding agent from Anthropic
Anthropic launched Claude Code for web this morning. It's an asynchronous coding agent - their answer to OpenAI's Codex Cloud and Google's Jules, and has a very similar shape. I had preview access over the weekend and I've already seen some very promising results from it. It's available online at claude.ai…
Simon Willison — Published
-
Follow Your Energy
I was finally able to execute a piece I’ve had in my head for who knows how long. “Follow your energy” is advice that I give freely and strive to follow in my own life. Listen closely to your energy; […]
Brad Frost — Published
-
The Crazy Shotguns In Boomer Shooters
Emberheart’s recent Wizordum rekindled my interest in retro-inspired First Person Shooters (FPS) also known as boomer shooters. Some are offended by the term, but I quite like it: it not only denotes the DOOM clones of the early nineties as the boomer generation of FPS gaming but also perfectly defines…
Wouter Groeneveld — Published
-
Getting DeepSeek-OCR working on an NVIDIA Spark via brute force using Claude Code
DeepSeek released a new model yesterday: DeepSeek-OCR, a 6.6GB model fine-tuned specifically for OCR. They released it as model weights that run using PyTorch and CUDA. I got it running on the NVIDIA Spark by having Claude Code effectively brute force the challenge of getting it working on that particular…
Simon Willison — Published
-
In the economy of user effort, be a bargain, not a scam
Alan Kay [source] One of my favorite product design principles is Alan Kay’s “Simple things should be simple, complex things should be possible”. [1] I had been saying it almost verbatim long before I encountered Kay’s quote. Kay’s maxim is deceptively simple, but its implications run deep. It isn’t…
Lea Verou — Published
-
Weekly Update 474
You're not going to believe this - the criminals that took the Qantas data ignored the injunction 😮 I know, I know, we're all a bit stunned that making crime illegal hasn't appeared to stop it, but here we are. Just before the time
Troy Hunt — Published
-
URLPattern is now Baseline Newly available
URLPattern became Baseline Newly available as of September 15, 2025.
web.dev — Published
-
Last of the summer shine
Attempting to avoid tourist treadmills in France and Spain.
Paul Robert Lloyd — Published
-
Write Code That Runs in the Browser, or Write Code the Browser Runs
I’ve been thinking about a note from Alex Russell where he says: any time you're running JS on the main thread, you're at risk of being left behind by progress. The zen of web development is to spend a little time in your own code, and instead to glue the big C++/Rust subsystems together, then get out…
Jim Nielsen — Published
-
My Glamorous Life: Entertaining Uncle George
Fam and I are visiting my 96-year-old Uncle George tonight. We love him. His complicated and somewhat meandering stories have been music to my daughter’s ears since she fell asleep in a cab at age six listening to him lament his wife’s death. George is my late mother’s only sibling, and the only survivor…
Jeffrey Zeldman — Published
-
The two sides of commitment
Essay on the distinction between doing something in earnest versus being content only with particular outcomes.
Protesilaos Stavrou — Published
-
Untitled
Enjoyed drinks and a curry in Birmingham this evening alongside 6 familiar faces to celebrate an astonishing anniversary; 20 years ago this month, 4 web developers met in Walsall, and the Multipack was born.
Paul Robert Lloyd — Published
-
TIL: Exploring OpenAI's deep research API model o4-mini-deep-research
TIL: Exploring OpenAI's deep research API model o4-mini-deep-research I landed a PR by Manuel Solorzano adding pricing information to llm-prices.com for OpenAI's o4-mini-deep-research and o3-deep-research models, which they released in June and document here. I realized I'd never tried these before,…
Simon Willison — Published
-
My Glamorous Life: Bots, Books, and Betrayal
My father was an engineer who designed robots. When I first learned what he did, I imagined the Robot from “Lost in Space,” and asked him to make me one. When I turned 13, I realized that the pick-and-place robots he designed replaced assembly-line workers, and asked how he, who’d been a socialist in…
Jeffrey Zeldman — Published
-
I am sorry, but everyone is getting syntax highlighting wrong
Applying human ergonomics and design principles to syntax highlighting
Nikita Prokopov — Published — Updated
-
We shouldn’t have needed lockfiles
Lockfiles are an absolutely unnecessary concept that complicates things without a good reason. Dependency managers can and are working without it just the same.
Nikita Prokopov — Published — Updated
-
Gaslight-driven development
Computers are starting to have opinions on how our APIs should look like
Nikita Prokopov — Published — Updated
-
The AI water issue is fake
The AI water issue is fake Andy Masley (previously): All U.S. data centers (which mostly support the internet, not AI) used 200--250 million gallons of freshwater daily in 2023. The U.S. consumes approximately 132 billion gallons of freshwater daily. The U.S. circulates a lot more water day to day, but…
Simon Willison — Published
-
Andrej Karpathy — AGI is still a decade away
Andrej Karpathy — AGI is still a decade away Extremely high signal 2 hour 25 minute (!) conversation between Andrej Karpathy and Dwarkesh Patel. It starts with Andrej's claim that "the year of agents" is actually more likely to take a decade. Seeing as I accepted 2025 as the year of agents just yesterday…
Simon Willison — Published
-
Solving NYT's Pips Puzzle
A solver for The New York's Times' daily Pips puzzle.
Andrew Healey — Published
-
Where to start with mechanical keyboards
My opinion on what you need to know to get started with mechanical keyboards.
Protesilaos Stavrou — Published
-
Quoting Alexander Fridriksson and Jay Miller
Using UUIDv7 is generally discouraged for security when the primary key is exposed to end users in external-facing applications or APIs. The main issue is that UUIDv7 incorporates a 48-bit Unix timestamp as its most significant part, meaning the identifier itself leaks the record's creation time. This…
Simon Willison — Published
-
Should form labels be wrapped or separate?
Should form labels be wrapped or separate? James Edwards notes that wrapping a form input in a label event like this has a significant downside: Name It turns out both Dragon Naturally Speaking for Windows and Voice Control for macOS and iOS fail to understand this relationship! You need to use the explicit…
Simon Willison — Published
-
Untitled
The concourse at Euston station is now a festival of Rail Alphabet 2. Yet move beyond that and… well, God knows what font has been chosen for the gantries above the approaches to platforms (which themselves still use NR Brunel). One day there might be some visual coherence on the railway, but today is…
Paul Robert Lloyd — Published
-
Talkin’ Tables at A11yTO Conf
Abstract for my session Talkin’ Tables, which I presented in place of another speaker who had to back out the day before: This session will walk through the basics of how to construct an HTML table. More than basic structure, it will talk about support and how it is exposed…
Adrian Roselli — Published
-
Email Bombs Exploit Lax Authentication in Zendesk
Cybercriminals are abusing a widespread lack of authentication in the customer service platform Zendesk to flood targeted email inboxes with menacing messages that come from hundreds of Zendesk corporate customers simultaneously.
Brian Krebs — Published
-
Reading List 348
This reading list is courtesy of Vivaldi browser, who pay me decent money to fight for a better web and don’t moan at me for reading all this stuff. If you prefer to keep browsing human, without planet-burning plagiarism-fulled Generative AI inserting itself between you and the Web, Vivaldi has you covered…
Bruce Lawson — Published
-
Emacs: Denote version 4.1.0
Information about the latest version of my Denote package for GNU Emacs.
Protesilaos Stavrou — Published
-
Quoting Barry Zhang
Skills actually came out of a prototype I built demonstrating that Claude Code is a general-purpose agent :-) It was a natural conclusion once we realized that bash + filesystem were all we needed — Barry Zhang, Anthropic Tags: skills, claude-code, ai-agents, generative-ai, ai, llms
Simon Willison — Published
-
Claude Skills are awesome, maybe a bigger deal than MCP
Anthropic this morning introduced Claude Skills, a new pattern for making new abilities available to their models: Claude can now use Skills to improve how it performs specific tasks. Skills are folders that include instructions, scripts, and resources that Claude can load when needed. Claude will only…
Simon Willison — Published
-
Speculations on arenas and non-trivial destructors
As I continue to reflect on arenas and lifetimes in C++, I realized that dealing with destructors is not so onerous. In fact, it does not even impact my established arena usage! That is, implicit RAII-style deallocation at scope termination, which works even in plain old C. With a small change we can…
Chris Wellons — Published
-
I Owe Warez For Properly Discovering CRPGs
One of the very first games my father actually bought were the DOS games Raptor and Hocus Pocus. It involved going to an exchange centre to convert Belgian francs to American dollars and sending those bills overseas to Apogee HQ, praying that nothing happened with the envelope. If you were lucky, a month…
Wouter Groeneveld — Published
-
Same-document view transitions have become Baseline Newly available
Same-document view transitions (and more view transitions-related features) are Baseline Newly available as of October 14, 2025.
web.dev — Published
-
NVIDIA DGX Spark + Apple Mac Studio = 4x Faster LLM Inference with EXO 1.0
NVIDIA DGX Spark + Apple Mac Studio = 4x Faster LLM Inference with EXO 1.0 EXO Labs wired a 256GB M3 Ultra Mac Studio up to an NVIDIA DGX Spark and got a 2.8x performance boost serving Llama-3.1 8B (FP16) with an 8,192 token prompt. Their detailed explanation taught me a lot about LLM performance. There…
Simon Willison — Published
-
Quoting Riana Pfefferkorn
Pro se litigants [people representing themselves in court without a lawyer] account for the majority of the cases in the United States where a party submitted a court filing containing AI hallucinations. In a country where legal representation is unaffordable for most people, it is no wonder that pro…
Simon Willison — Published
-
Coding without typing the code
Last year the most useful exercise for getting a feel for how good LLMs were at writing code was vibe coding (before that name had even been coined) - seeing if you could create a useful small application through prompting alone. Today I think there's a new, more ambitious and significantly more intimidating…
Simon Willison — Published
-
The werewolf moment
An account of what made me change my way of thinking to be more practical, focused, and decisive.
Protesilaos Stavrou — Published
-
Quoting Catherine Wu
While Sonnet 4.5 remains the default [in Claude Code], Haiku 4.5 now powers the Explore subagent which can rapidly gather context on your codebase to build apps even faster. You can select Haiku 4.5 to be your default model in /model. When selected, you’ll automatically use Sonnet 4.5 in Plan mode and…
Simon Willison — Published
-
Introducing Claude Haiku 4.5
Introducing Claude Haiku 4.5 Anthropic released Claude Haiku 4.5 today, the cheapest member of the Claude 4.5 family that started with Sonnet 4.5 a couple of weeks ago. It's priced at $1/million input tokens and $5/million output tokens, slightly more expensive than Haiku 3.5 ($0.80/$4) and a lot more…
Simon Willison — Published
-
Quoting Claude Haiku 4.5 System Card
Previous system cards have reported results on an expanded version of our earlier agentic misalignment evaluation suite: three families of exotic scenarios meant to elicit the model to commit blackmail, attempt a murder, and frame someone for financial crimes. We choose not to report full results here…
Simon Willison — Published
-
Design for Amiability: Lessons from Vienna
Today’s web is not always an amiable place. Sites greet you with a popover that demands assent to their cookie policy, and leave you with Taboola ads promising “One Weird Trick!” to cure your ailments. Social media sites are tuned for engagement, and few things are more engaging than a fight. Today it…
A List Apart — Published
-
Smashing NYC with the BCA
Last week, I went to New York, to attend Smashing Conference. I’ll be honest and admit that I was very nervous because of recent cases of USA incarcerating British, Irish, German and Canadian tourists, and my passport shows I was born in what is now Yemen. (Aden was a British Crown Colony when I was…
Bruce Lawson — Published
-
A modern approach to preventing CSRF in Go
A modern approach to preventing CSRF in Go Alex Edwards writes about the new http.CrossOriginProtection middleware that was added to the Go standard library in version 1.25 in August and asks: Have we finally reached the point where CSRF attacks can be prevented without relying on a token-based check…
Simon Willison — Published
-
The present and potential future of progressive image rendering
Exploring progressive image rendering across JPEG, PNG, WebP, AVIF, and JPEG XL.
Jake Archibald — Published
-
Prot Asks: Ovi about Clojure development and business, Emacs, and AI
I talk with Ovidiu 'Ovi' Stoica about Clojure programming and business, Emacs, and various topics related to AI.
Protesilaos Stavrou — Published
-
NVIDIA DGX Spark: great hardware, early days for the ecosystem
NVIDIA sent me a preview unit of their new DGX Spark desktop "AI supercomputer". I've never had hardware to review before! You can consider this my first ever sponsored post if you like, but they did not pay me any cash and aside from an embargo date they did not request (nor would I grant) any editorial…
Simon Willison — Published
-
Patch Tuesday, October 2025 ‘End of 10’ Edition
Microsoft today released software updates to plug a whopping 172 security holes in its Windows operating systems, including at least three vulnerabilities that are already being actively exploited. October's Patch Tuesday also marks the final month that Microsoft will ship security updates for Windows…
Brian Krebs — Published
-
Just Talk To It - the no-bs Way of Agentic Engineering
Just Talk To It - the no-bs Way of Agentic Engineering Peter Steinberger's long, detailed description of his current process for using Codex CLI and GPT-5 Codex. This is information dense and full of actionable tips, plus plenty of strong opinions about the differences between Claude 4.5 an GPT-5: While…
Simon Willison — Published
-
Goodbye Windows 10, Hello Zorin OS
Today is Windows 10 Apocalypse Day in many countries; Microsoft will no longer provide security updates, meaning that the legendarily secure operating system will become increasingly vulnerable to hacks. For some reason, Microsoft would like the owners of the 400 million PCs currently running Windows…
Bruce Lawson — Published
-
CVE-2025-49844 - The Redis CVSS 10.0 vulnerability and how we responded
We're very public and open about our infrastructure at Report URI, having written many blog posts about how we process billions of telemetry events every single week. As a result, it's no secret that we use Redis quite heavily across our infrastructure, and some have asked
Scott Helme — Published
-
Field Guide to TSL and WebGPU
A comprehensive guide to building 3D web experiences with TSL and WebGPU, covering shader development, compute shader applications, and practical examples for particle systems and post-processing effects.
Maxime Heckel — Published
-
The cinch
When generating code with an LLM, sometimes a task is so laborious to specify that you may as well do it manually. But, sometimes, you can find just the right information to cinch together to enable the model to do the work. Here’s an example. At Notion, I had built some UI for a new feature. Ken, my…
Mary Rose Cook — Published
-
Making the unknown known
Cosmos, the book by Carl Sagan, does something remarkable. It starts in a distant part of the universe. It does a slow zoom, through desolate space, through groups of galaxies, through the Milky Way, through a remote arm of the Milky Way, through the solar system, past the most distant plants, finally…
Mary Rose Cook — Published
-
Joining Wealthsimple
I'm excited to announce that today is my first day working at Wealthsimple! I'll be working as a staff developer on their mobile app. In a previous blog post, I teased that this role was a perfect fit for me. Today, I'm excited to share some details. But...
Ash Furrow — Published
-
nanochat
nanochat Really interesting new project from Andrej Karpathy, described at length in this discussion post. It provides a full ChatGPT-style LLM, including training, inference and a web Ui, that can be trained for as little as $100: This repo is a full-stack implementation of an LLM like ChatGPT in a…
Simon Willison — Published
-
Poem: To whom I could not meet
Just read the poem. No further comment.
Protesilaos Stavrou — Published
-
My (Retro) Desk Setup in 2025
A lot has happened since the desk setup post from March 2024—that being I got kicked out of my usual cosy home office upstairs as it was being rebranded into our son’s bedroom. We’ve been trying to fit the office space into the rest of the house by exploring different alternatives: clear a corner of…
Wouter Groeneveld — Published
-
Quoting Slashdot
Slashdot: What's the reason OneDrive tells users this setting can only be turned off 3 times a year? (And are those any three times — or does that mean three specific days, like Christmas, New Year's Day, etc.) [Microsoft's publicist chose not to answer this question.] — Slashdot, asking the obvious…
Simon Willison — Published
-
Weekly Update 473
This week's video was recorded on Friday morning Aussie time, and as promised, hackers dumped data the following day. Listening back to parts of the video as I write this on a Sunday morning, pretty much what was predicted happened: data was dumped, it included Qantas, and the
Troy Hunt — Published
-
Claude Code sub-agents
Claude Code includes the ability to run sub-agents, where a separate agent loop with a fresh token context is dispatched to achieve a goal and report back when it's done. I wrote a bit about how these work in June when I traced Claude Code's activity by intercepting its API calls. I recently learned…
Simon Willison — Published
-
Research Alt
Jeremy imagines a scenario where you’re trying to understand how someone cut themselves with a blade. It’d be hard to know how they cut themselves just by looking at the wound. But if you talk to the person, not only will you find out the reason, you’ll also understand their pain. But what if, hear me…
Jim Nielsen — Published
-
Vibing a Non-Trivial Ghostty Feature
Vibing a Non-Trivial Ghostty Feature Mitchell Hashimoto provides a comprehensive answer to the frequent demand for a detailed description of shipping a non-trivial production feature to an existing project using AI-assistance. In this case it's a slick unobtrusive auto-update UI for his Ghostty terminal…
Simon Willison — Published
-
Note on 11th October 2025
I'm beginning to suspect that a key skill in working effectively with coding agents is developing an intuition for when you don't need to closely review every line of code they produce. This feels deeply uncomfortable! Tags: vibe-coding, coding-agents, ai-assisted-programming, generative-ai, ai, llms
Simon Willison — Published
-
Geoblocking Multiple Localities With Nginx
A few months back I wound up concluding, based on conversations with Ofcom, that aphyr.com might be illegal in the UK due to the UK Online Safety Act. I wrote a short tutorial on geoblocking a single country using Nginx on Debian. Now Mississippi’s 2024 HB 1126 has made it illegal for essentially any…
Kyle Kingsbury — Published
-
An MVCC-like columnar table on S3 with constant-time deletes
An MVCC-like columnar table on S3 with constant-time deletes s3's support for conditional writes (previously) makes it an interesting, scalable and often inexpensive platform for all kinds of database patterns. Shayon Mukherjee presents an ingenious design for a Parquet-backed database in S3 which accepts…
Simon Willison — Published
-
Poem: Rose
Just read the poem. No further comment.
Protesilaos Stavrou — Published
-
The App Store Was Always Authoritarian
Eric Prouzet And now we see it clear, like a Cupertino sunrise bathing Mt. Bielawski in amber: Apple will censor its App Store at the behest of the Trump administration without putting up a fight. It will twist words into their antipodes to serve the powerful at the expense of the weak. To better serve…
Alex Russell — Published
-
Transition to the Other Side with Container Query Units
Managing the position of an element as it travels across the length of its parent container can be tricky. Assuming they both have dynamic, responsive dimensions, we might rely on JS to check the width and/or height of each element and do some calculations for a proper end result. The classic FLIP technique…
Ryan Mulligan — Published
-
simonw/claude-skills
simonw/claude-skills One of the tips I picked up from Jesse Vincent's Claude Code Superpowers post (previously) was this: Skills are what give your agents Superpowers. The first time they really popped up on my radar was a few weeks ago when Anthropic rolled out improved Office document creation. When…
Simon Willison — Published
-
Superpowers: How I'm using coding agents in October 2025
Superpowers: How I'm using coding agents in October 2025 A follow-up to Jesse Vincent's post about September, but this is a really significant piece in its own right. Jesse is one of the most creative users of coding agents (Claude Code in particular) that I know. He's put a great amount of work into…
Simon Willison — Published
-
DDoS Botnet Aisuru Blankets US ISPs in Record DDoS
The world's largest and most disruptive botnet is now drawing a majority of its firepower from compromised Internet-of-Things (IoT) devices hosted on U.S. Internet providers like AT&T, Comcast and Verizon, new evidence suggests. Experts say the heavy concentration of infected devices at U.S. providers…
Brian Krebs — Published
-
Notes on switching to Helix from vim
Hello! Earlier this summer I was talking to a friend about how much I love using fish, and how I love that I don’t have to configure it. They said that they feel the same way about the helix text editor, and so I decided to give it a try. I’ve been using it for 3 months now and here are a few notes.…
Julia Evans — Published
-
[Web dev for beginners] CSS: Learn the essentials quickly
In the previous chapter, we used HTML to create unformatted content. In this chapter, we use CSS to configure the style of that content: We can change the color of the background, use various fonts, add vertical spacing, etc. This chapter covers a lot of ground relatively quickly: It’ll be fun to explore…
Axel Rauschmayer — Published