❌

Normal view

The Android dark mode power-pack: 5 secrets for a smarter screen setup

24 June 2026 at 10:45

Few things are as delightfully divisive as Android’s dark mode.

Some phones now ship with Android’s darker-style interface activated by default. Most reasonably recent devices offer it as a swift ‘n’ simple toggle. And most people, in my experience, have amusingly strong preferences about which approach they prefer — the standard Android “light” mode, in which screens tend to be bright and with shades of white as a foundation, and the dark mode (a.k.a. “dark theme”), where black and dark gray dominate and everything is much more muted and muddy.

It really is a night and day difference, so to speak — but no matter where you fall on the light vs. dark preference spectrum, it’s well worth your while to noddle over two pertinent points:

  1. Android’s dark mode doesn’t have to be an all-or-nothing decision. With the right setup, you can use it as a dynamically activated sometimes switch that enables itself automatically based on different variables and gives you a darker, less glary motif when conditions call for it while leaving you with the lighter, brighter look the rest of the time.
  2. Regardless of how often you’re using dark mode, a few easy adjustments will make it meaningfully more complete and effective as an end-to-end interface style for whatever you’re doing on your device.

It occurred to me recently that we’ve gone over several smart Android dark mode enhancements over the past weeks and months — and that, put together into a single power-pack bundle, these small-seeming items can add up to create a pretty dramatic difference in your Android-using experience, whether you’re a full-fledged dark mode convert or a more light-preferring vampire skeptic.

Here, specifically, are five easy ways to make Android’s dark mode meaningfully better for you.

[Keep the nerdy knowledge coming with my free Android Intelligence newsletter — something new and useful in your inbox every Friday!]

Android dark mode power-up #1: The app expansion

Up first is a feature that arose as part of our Android 17 discussion and sparked the entire idea for this collection — and that’s the one-tap switch in the latest Android version that forces every app on your phone to follow your dark mode preference, whether the program technically supports such a setting or not.

In Android 17, finding and flipping that switch will make every app turn dark whenever the system-wide dark mode is active. It eliminates the irksome exceptions that’ve traditionally stayed stubbornly light (due to developer laziness) even when your dark theme is on.

If you’ve got Android 17 on your phone already, it couldn’t be much easier to make it happen. Just look in the Display section of your system settings, tap the words “Dark theme,” then change the setting that shows up next from “Standard” to “Expanded.”

Android 17 dark theme expanded
Android’s new “Expanded” option lets you force apps into dark mode compliance, even if they aren’t designed to do it on their own.

JR Raphael, Foundry

No Android 17? No problem: On devices with reasonably recent pre-Android-17 system software, you can actually find a switch buried deep in some developer settings that’ll let you enable the exact same option without any waiting.

Follow these instructions and enjoy your new universally consistent darkened dynamic.

Android dark mode power-up #2: A darkened web

That first trick fixes the issue of certain apps not following your dark mode preference — but what about the web? Most of us spend a fair amount of time in our browsers these days, and most websites won’t follow a dark mode setting and adjust their interfaces accordingly.

They absotively can, though. With the flip of a single switch buried within your browser’s bowels, you can force every website into a darkened motif whenever your system-level dark mode is up and running.

See?

Android dark mode - Chrome web
Viewing a website in Chrome normally, at left, and with dark-mode-associated web darkening, at right.

JR Raphael, Foundry

Here’s the secret:

  • Open up Chrome on whatever Android device you’re using. (And note that this will also work with any Chromium-based Chrome alternative, like Brave, Edge, or Vivaldi.)
  • Type chrome:flags into the address bar.
  • Type darken into the search box at the top of the screen that comes up next.
  • See the line labeled “Darken websites checkbox in themes setting”? Tap the “Default” box beneath it, and change its setting to “Enabled.”
  • Tap the blue “Relaunch” button at the bottom of the screen.

Now, when Chrome comes back a second or so later…

  • Tap the three-dot menu icon in its upper-right corner.
  • Tap “Settings” in the next menu.
  • Scroll down until you see “Appearance.” Tap it, then tap “Theme.”
  • Make sure the newly added box for “Apply dark theme to sites, when possible” — which we just magically made appear via our last little modification — is checked and active.
Android dark mode - Chrome web setting
Chrome’s web-darkening option appears only after you’ve enabled an out-of-the-way flag.

JR Raphael, Foundry

And that’s it: From that moment onward, whenever your Android device is switched into its dark mode, any website you’re viewing within Chrome will automatically follow suit. Nothing more to it, and no further thought or action ever required on your part.

Not bad, eh?!

Android dark mode power-up #3: A dark mode schedule

Even as someone who isn’t into dark mode as a 24/7 sort of thing, I can definitely appreciate the presence of a dimmer, less glary look on my device in certain specific scenarios.

It’s incredibly easy to overlook or forget, but Google’s actually got a way to handle that for you. In fact, it’s been built into Android itself since 2020’s Android 11 release.

Just look in the Display section of your system settings and tap the line for either “Dark theme” or “Dark mode settings.” If you see a toggle alongside that line, make sure you’re tapping the actual words next to it — not the toggle itself.

Then look for the option to create a schedule.

Android dark mode schedule
An Android dark mode schedule, as seen in Google’s standard Android interface (at left) and in Samsung’s Android style (right).

JR Raphael, Foundry

You can create a time-based rule for when your device’s dark mode turns on and back off again, or — more intelligent yet — you can set it to automatically activate at sunset, wherever you are at any given moment, and then turn itself back off and switch you back over to light mode at sunrise.

You can also integrate dark mode into Android’s rarely noticed Bedtime Mode so that the screen getting dimmer is part of your pre-sleep winddown routine, if you really wanna get wild.

Or — ahem…

Android dark mode power-up #4: Contextual dark mode

A dark mode schedule is pretty forkin’ sensible. But the reality is that even with a time-based setup or a sunset-driven activation approach, you’ll still be using your phone in bright rooms with dark mode active and vice-versa.

And if you want Android’s dark theme present only when you’re actually in a dark room — as makes the most sense in my mind — there’s an even more intelligent option.

It comes our way via a handy little free app called Adaptive Theme. That app does one thing and only thing only: It automatically adjusts your device’s dark mode setting based on the actual ambient light around you, using your phone’s sensors rather than an arbitrary time or a not-always-relevant sunset status as a guide. It makes so much sense, you’ll find yourself wondering why your phone didn’t just work that way from the get-go.

The app does unavoidably have a slightly complex one-time setup, which I outline step-by-step here. It’s perfectly safe to do, though, and it shouldn’t take you more than a couple minutes to pull off.

And once you’ve done that, your Android dark mode will just work for you — flipping on when the lighting around you is dim (to your exact specifications) and flipping back off when you’re in brighter surroundings.

Android dark mode: Adaptive Theme settings
Adaptive Theme lets you take total control of how and when Android’s dark mode activates based on your environment.

JR Raphael, Foundry

Yes, please — and thank you. Last but not least…

Android dark mode power-up #5: The wallpaper wizard

Superficial as it may seem, the one piece of the puzzle we haven’t yet addressed — that isn’t ordinarily affected by Android’s dark mode setting — is your home screen wallpaper.

By default, whatever wallpaper you set at the system level stays the same even as your interface moves between its dark and light states — and when you’re anglin’ for a dimmer, less glary look in dark environments, that can be pretty darn jarring.

An app called, rather aptly, Dark/Light Wallpaper Scheduler is the answer you never knew you needed. It’s pretty self-explanatory — you tell it which wallpaper you want when your phone is in dark mode and light mode, then it automatically switches ’em out for you based on that status — but I wrote about it in detail here, if you’re interested in reading more about how exactly it works and how you can make the most of it.

And with that, my fellow Android-appreciating animal, your dark mode power-pack is complete. Now, would someone please turn off the lights? I don’t know about you, but all this talk of darkness has me hankering for a nap.

Wake up to even more useful Android wisdom every Friday with my free Android Intelligence newsletter — one practical new trick to try each week, straight from me to ye.

Using Visual Studio Code’s ‘air-gapped’ AI model mode

24 June 2026 at 10:00

Microsoft has been pushing hard to make Visual Studio Code a major way to consume its AI services, mostly in the form of GitHub Copilot. GitHub Copilot’s deep integration with VS Code brings many conveniences — inline autocomplete, for instance — but it’s frustrating for those, like me, who would rather use another model provider, or even a locally hosted LLM, for those functions.

Visual Studio Code 1.122 introduced a new feature, “Use BYOK [Bring Your Own Key] without a GitHub sign-in,” that allows you to “use chat, tools, and MCP servers in air-gapped or restricted environments where GitHub sign-in isn’t possible.” More importantly, it “enables fully offline workflows with local models like Ollama.”

In other words, you can now use locally hosted LLMs for chat, tools, and Model Context Protocol servers inside Visual Studio Code. The one thing you still can’t do is use a local LLM for inline and next-edit suggestions — at least, not without additional tooling.

Choosing a model for BYOK mode

If you want to use a local LLM with VS Code’s bring-your-own-model system, the first thing you need is a way to host the model. VS Code lacks a model-hosting mechanism of its own, although it’s conceivable that a VS Code extension may offer something like that in the future. That said, hosting models is complicated enough that a dedicated app is really needed for the job.

One easy way to host models is via a product like LM Studio, a convenient GUI for standing up, serving, and managing LLMs on one’s own hardware. The model host does not have to be the same system you run VS Code on, either. It can be on a server box you control, or on a cloud instance.

The choice of model is also important. Many models are powerful but won’t run well on commodity hardware because they’re simply too big. A good rule of thumb is to choose a model that fits into existing VRAM, along with the memory needed for a sizable token context (the more, the better). Also, the model should be suited to coding and development work. Some models in this vein that fit comfortably into 8GB VRAM include:

Setting up BYOK mode in VS Code

Once you have a model up and running, you can integrate it with Visual Studio Code. If you’ve disabled VS Code’s AI features, you will need to turn them on. Make sure the setting chat.disableAIFeatures is turned off. You can find it in Settings | Chat | Miscellaneous.

Third-party language models are managed through Visual Studio Code’s language model list. Press Ctrl-Shift-P and type Manage Language Models to open the list of existing language models.

Managing VS Code's AI language model list

Managing VS Code’s AI language model list. The models available by default are only models available as external APIs, not models that run locally.

Foundry

First you will see a list of the built-in models, which are all externally hosted. To add a new model, select Add Models at the top right and select Custom Endpoint.

You’ll then get a series of prompts:

  • Group Name: This is “Custom Endpoint” by default, but you can choose any name you want. The name is strictly for organizing the model list and doesn’t affect things like model recognition or connectivity.
  • API Key: If you’ve configured LM Studio to use an API key for serving models, provide it here. If you’re hosting the model locally and you haven’t explicitly set up API keys, you can leave this blank.
  • API Type: The options here are Chat Completions, Responses, and Messages. Most of the time you’ll want to use Responses, as it’s the most general-purpose option of the three.

Once you finish providing those answers, you’ll be dropped into a modal editor for a JSON file that holds the details about the endpoint you’re configuring.

A newly created custom endpoint for a locally hosted model

A newly created custom endpoint for a locally hosted model. The ID, name, and URL still need to be defined for this model to be useful.

Foundry

You’ll need to provide a few more details by typing them into the labeled fields:

  • id: A text field that uniquely identifies this particular entry. The choice of ID is pretty much arbitrary; if you’re using only a single model, the ID could be the model name.
  • name: The name of the model that is used to identify it on the model server. In LM Studio, you can get this name by clicking on My Models in the main interface, then selecting the three-dot icon for the model in question and clicking Copy Default Identifier. For Qwen 2.5, for instance, name might be something like qwen2.5-coder-7b-instruct.
  • url: The URL to the server’s endpoint. On LM Studio, this defaults to something like http://127.0.0.1:1234/v1. The /v1 at the end is important because that endpoint is used for autodiscovery of models and their capabilities.

The other fields generally don’t need editing. Most models have tool calling functionality. If you know for a fact that the model you’re using doesn’t have vision support, then set vision to false.

Once you have these fields filled in, you can close the modal editor to save the changes. If you reload the Manage Language Models page, you’ll now see your new endpoint:

A newly created local endpoint

A newly created local endpoint. The choice of name and group is arbitrary. “Custom Endpoint” is the default name for a newly created group of endpoints.

Foundry

You should now be able to launch the chat window and use the defined model for conversation and utilities:

Conversing with the local model using VS Code's chat window

Conversing with the local model using VS Code’s chat window. Note the selected code block in the left pane that is being used as the context for the conversation.

Foundry

One current, and major, limitation of Visual Studio Code’s BYOK functionality is that it only works for chat and utility tasks. It doesn’t allow you to use a local model for inline suggestions or code completions. The only way to take advantage of local models for expanded functionality with VS Code is to use a third-party tool like Continue.

It isn’t clear if Microsoft will eventually lift this restriction. GitHub Copilot integration in VS Code is a large part of how Copilot as a service reaches its target audience. For the time being, you can certainly use third-party and local models for a significant part of your AI-assisted development work in VS Code, and you can close the functionality gap with additional tooling.

How to use Excel formulas and functions

19 June 2026 at 12:00

One of the most commonly used Microsoft programs, Excel is highly useful for data collecting, processing, and analysis. To fully harness Excel’s powers, though, you need to make use of formulas.

Excel formulas allow you to perform calculations, analyze data, and return results quickly and accurately. The usefulness of formulas is even greater once you start dealing with large data sets. With the correct formula, Excel can process vast amounts of information in a matter of seconds.

In this article we’ll look at five useful types of formulas and functions that will get you started performing data analysis in Excel. Along the way, you’ll learn several different ways to enter formulas and functions in Excel.

We’ll demonstrate using Excel for Windows under a Microsoft 365 subscription. If you’re using a different version of Excel, you might not have exactly the same interface and options, but the formulas and functions work the same.

If you have the right kind of M365 subscription, you can have Microsoft’s generative AI assistant, Copilot, create formulas for you. This requires an M365 Personal, Family, or Premium plan for individuals or an M365 business or enterprise plan with a paid Copilot add-on subscription — which means not everybody has access to Copilot in Excel. Even if you do, it’s helpful to know what formulas can do and how to work with them so you can write better prompts for Copilot. We’ll cover using Copilot to create Excel formulas later in this story, but first we’ll give you a solid understanding of how to work with formulas and functions.

In this article:

What is a formula in Excel?

A formula is an expression that operates on values in a range of cells in Excel. Using formulas, you can perform calculations and data analysis on the contents of the cells. Formulas can be as simple as adding a column of numbers together or as complex as returning the kurtosis of a data set. They can be incredibly useful when you want to turn spreadsheet data into meaningful information for driving business decisions.

What is a function in Excel?

A function is a built-in formula in Excel — basically, a shortcut for performing a calculation or other operation on cell data. There are around 500 Excel functions, and the list continues to grow every year. Fortunately, most of the actions that a typical business user would want to perform can be done with just a handful of functions.

1. Basic mathematical formulas and functions

We’re going to group these formulas together since they are very simple and have similar syntax. All formulas in Excel start with the equal sign (=) and build from there.

Adding, subtracting, multiplying, and dividing

To add the numbers in two cells together, first click the on the target cell where you want the total to appear. Then type = in the cell to start the formula.

loading="lazy" width="400px">

Starting a formula in Excel.

Shimon Brathwaite / Foundry

Next, click on the cell that contains the first number you want to add, and its cell reference (such as A2) will appear next to the equal sign in the formula.

loading="lazy" width="400px">

When you select a cell when building a formula, its cell reference appears in the formula.

Shimon Brathwaite / Foundry

Type + next to the first cell reference. Then click the cell that contains the second number you want to add, and its cell reference (such as A3) will appear next to the + sign. The full syntax for the formula to add the values in cells A2 and A3 is:

=A2+A3

loading="lazy" width="400px">

The complete addition formula appears in both the target cell and the formula bar above.

Shimon Brathwaite / Foundry

Note that in addition to appearing in the target cell, the formula also appears in the formula bar directly above the worksheet. Once you’ve inserted the initial = sign in the target cell, you can type your formula in the formula bar. It’s sometimes easier to see the whole formula and work with it in the formula bar than down in the worksheet page.

If you wanted to add additional numbers to your total, you’d type another + sign, select another cell, and so on. Once your formula is complete, press Enter, and the result appears in the target cell.

loading="lazy" width="400px">

Press Enter, and the result appears in the target cell.

Shimon Brathwaite / Foundry

Subtraction, multiplication, and division calculations work the same way. You simply change the operator — the symbol that tells Excel what math operation you want to perform — from the + sign to the – sign for subtraction, the * sign for multiplication, or the / sign for division.

loading="lazy" width="400px">

Subtraction, multiplication, and division actions. The formula for each is shown in the formulas bar and the result in the target cell.

Shimon Brathwaite / Foundry

Adding numbers with the SUM function

There’s a quicker way to add together a group of numbers. This is where Excel’s built-in SUM function comes in.

First click on the target cell where you want the total to appear. Then type =SUM to start the function.  A list of options will come up. Click the first option, SUM. You’ll now see =SUM( in the target cell.

loading="lazy" width="400px">

Starting a SUM function.

Shimon Brathwaite / Foundry

Just underneath the cell with the SUM function is a tooltip showing the SUM syntax:

=SUM(number 1, [number2],…)

To add individual cells together, select a cell, type a comma, select another cell, and so on. (Alternatively, you can type a cell reference, type a comma, type another cell reference, and so on.)

If you want to add consecutive cells (such as in a row or column), select the first cell, then hold down the Shift key and select the final cell in the group. (Or you can type in the cell references for the first and last cells separated by a colon — for instance, A2:A7 selects A2, A7, and all the cells in between.)

loading="lazy" width="400px">

Select the range of cells you want to add together.

Shimon Brathwaite / Foundry

Once all the cells you want to add together are selected, hit Enter.

Now you should see the final result, which is the sum of the numbers you highlighted. If you highlight that target cell again, you’ll see the full formula in the formula bar — in our example, it’s:

=SUM(A2:A7)

loading="lazy" width="400px">

The SUM function is shown in the formulas bar; the result appears in the target cell.

Shimon Brathwaite / Foundry

One important thing to note for all Excel formulas is that they produce relative values. This simply means that if any of the values in the selected cells changes, then the final number will change to reflect that.

loading="lazy" width="400px">

If the value of a cell used in a formula changes, the result also changes.

Shimon Brathwaite / Foundry

If you want to make it an absolute value, a number that will not change even if the cells that were used to calculate it change, then you need to right-click the cell and select Copy from the pop-up menu. Then right-click the cell again and, under Paste Options, select the Values button (the icon of a clipboard with 123).

loading="lazy" width="400px">

Copy and paste the value into the cell to prevent the value from changing if one of the source cell’s values changes.

Shimon Brathwaite / Foundry

Now when you select that cell you’ll just see the plain number, not a formula, in the formula bar.

loading="lazy" width="400px">

The cell now contains an absolute value, not a formula.

Shimon Brathwaite / Foundry

Tip: Excel provides a SUM shortcut in certain circumstances. If you have a series of numbers in a row or a column, Excel assumes you want to add them together. So if you place your cursor in the cell to the right of a row of numbers and click the AutoSum (Σ) button toward the right end of the Ribbon’s Home tab, Excel automatically selects the numbers in the row, then adds them together when you press Enter. Likewise, if you place your cursor in the cell below a column of numbers, click AutoSum, and hit Enter, Excel totals up the numbers in the column.

loading="lazy" width="400px">

AutoSum is a shortcut for adding a row or column of numbers.

Shimon Brathwaite / Foundry

Calculating the average with the AVERAGE function

To calculate the average of a group of numbers, repeat the same steps but using the syntax =AVERAGE and highlighting the cells containing the numbers that you want to use in the calculation.

loading="lazy" width="400px">

To quickly calculate the average of a group of numbers, use the AVERAGE function.

Shimon Brathwaite / Foundry

Tip: As with SUM, there’s a shortcut for using the AVERAGE function if you have a series of numbers in a row or a column. Place your cursor in the cell to the right of a row of numbers or in the cell below a column of numbers. Click the tiny down arrow at the right side of the AutoSum button, select Average from the menu that appears, and hit Enter. Excel calculates the average of the values in that row or column.

loading="lazy" width="400px">

There’s an AutoSum shortcut for the AVERAGE function as well.

Shimon Brathwaite / Foundry

Find more details, examples, and best practices for these functions at Microsoft’s SUM function and AVERAGE function support pages.

2. The IF function

This function helps you automate the decision-making process by applying if-then logic to your data. Using this function, you can have Excel perform a calculation or display a certain value depending on the outcome of a logical test. For example, you can create a test that checks if the value of a cell is greater than or equal to the value of 18 and enter “Yes” or “No” accordingly.

While we’re learning this function, we’ll cover another way to enter functions in Excel: by using the Formulas tab on the Ribbon. Here you’ll find buttons that provide quick access to functions by category: AutoSum, Financial, Logical, Text, Date & Time, and so on. Being able to browse through functions by category can be helpful if you can’t remember the exact name of a function or aren’t sure how to spell it.

To enter the IF function, select the target cell, and on the Formulas tab, click the Logical button, then select IF from the list of functions that appears.

Alternatively, you can click the Insert Function button all the way to the left of the Formulas tab. An “Insert Function” pane appears, showing a list of commonly used functions.

loading="lazy" width="400px">

Instead of typing = to start a function, you can go to the Formulas tab and select Insert Function.

Shimon Brathwaite / Foundry

Select IF from the list and click OK. (If the function you want isn’t in the “Commonly Used” list, select a different category or All to see all available functions.)

The Function Arguments pane appears, and you’ll see =IF() in the target cell.

loading="lazy" width="400px">

You can use the Function Arguments dialog box to build a function.

Shimon Brathwaite / Foundry

The IF function syntax is as follows:

=IF(logical_test,”value_if_true”,”value_if_false”)

You’ll notice that the Function Arguments pane for the IF function has fields for Logical_test, Value_if_true, and Value_if_false. In our “greater than or equal to 18” example, the logical test is whether the number in the selected cell is greater than or equal to 18, the value if true is “Yes,” and the value if false is “No.” So we’d enter the following items in the pane’s fields like so:

Logical_test: B2>=18

Value_if_true: “Yes”

Value_if_false: “No”

or just type the full formula into the target cell:

=IF(B2>=18,”Yes”,”No”)

This tells Excel that if the value of cell B2 is greater than or equal to 18, it should enter “Yes” in the target cell. If the value of cell B2 is less than 18, it should enter “No.”

loading="lazy" width="400px">

The IF function in action.

Shimon Brathwaite / Foundry

Tip: When using functions like this, rather than entering the function repeatedly for each row, you can simply click and drag the tiny square on the bottom right of the cell that contains the function. Doing so will autofill each of the rows with the formula, and Excel will change your cell references to match. For example, when the formula we used in cell C2 that references cell B2 is autofilled into cell C3, it changes to reference cell B3 automatically.

loading="lazy" width="400px">

Autofilling a formula to subsequent rows in the column.

Shimon Brathwaite / Foundry

Find more details at Microsoft’s IF function support page.

3. The SUMIF and COUNTIF functions

SUMIF is a more advanced SUM function that allows you to add up only the values in a range that meet the criteria you specify. To use this function, you must specify the range of cells to apply the criteria to, the criteria for inclusion, and, optionally, the sum range, which is the range of cells to total if that’s different from the initial range. The syntax is as follows:

=SUMIF(range,criteria,[sum_range])

Note that any criteria with text or mathematical or logical symbols must be enclosed in double quotes.

In the sales spreadsheet shown below, for example, suppose you want to total up only the sales that are more than $100. The criteria range is C2 to C9, and the criteria is “greater than 100.” Since you’re adding up the values in that same cell range (C2 to C9), you don’t need to supply a separate sum range. So your formula is:

=SUMIF(C2:C9,”>100″)

loading="lazy" width="400px">

Using the SUMIF function.

Shimon Brathwaite / Foundry

What if instead you want to find the total for all sales in the East region only? To do that you’ll have to specify both the criteria range (cells B2 to B9) and the sum range (cells C2 to C9). This is the formula:

=SUMIF(B2:B9,B2,C2:C9)

Note that you don’t have to type out “East” for the criteria. You can simply type B2 or click the cell B2 to have Excel search for the text it contains.

loading="lazy" width="400px">

Using SUMIF with both a criteria range and a sum range.

Shimon Brathwaite / Foundry

There is a similar function called COUNTIF that lets you create a count of values that meet specified criteria. The syntax is as follows:

=COUNTIF(range,criteria)

So to count the total number of sales in the West region, for instance, you supply the range of cells to apply the criteria to (B2 to B9), followed by the criteria (“West” or cell B3). The formula is:

=COUNTIF(B2:B9,B3)

loading="lazy" width="400px">

The COUNTIF function can instantly count up items that meet your criteria.

Shimon Brathwaite / Foundry

What if you want to apply multiple criteria to your data, such as calculating total sales for books in the East region, or counting the number of sales over $100 in the West region? Excel can do that too, via functions called SUMIFS and COUNTIFS. These functions use more complex syntax than SUMIF and COUNTIF. For more details, use cases, and best practices for all four of these functions, see Microsoft’s SUMIF, SUMIFS, COUNTIF, and COUNTIFS support pages.

4. The CONCAT function

This function is useful for piecing together text from different cells into one complete string. For instance, maybe you have a worksheet with different columns for people’s first and last names, but you want to put first and last names together. Other common use cases are completing an address, reference number, file path, or URL. The syntax is as follows:

=CONCAT(text1,text2,text3,…)

In this example we will use CONCAT to combine a list of first names and last names into a full name with a space in between. To do so we simply place the cursor in cell C2, type =CON and select CONCAT from the list of options that appears. Next, select the cell that contains the first name (A2) and add a comma, a blank space surrounded by quotation marks, and another comma. Then add the last name by selecting the adjacent cell (B2) and hit Enter. Here’s the full formula:

=CONCAT(A2,” “,B2)

Next, click and drag the bottom right of cell C2 to autofill the formula in all the other rows.

loading="lazy" width="400px">

The CONCAT function combined the values from column A with those from column B.

Shimon Brathwaite / Foundry

For more details and examples, see Microsoft’s CONCAT function support page.

5. The VLOOKUP function

This is one of the most commonly used functions in Excel and a valuable data analysis tool. VLOOKUP lets you look up a value in a table and return information from other columns related to that value. It’s very useful for combining data from different lists or comparing two lists to find matching items. To use this function, you need to provide three to four pieces of information:

  1. The value you want to look for. This is known as the lookup value.
  2. The range of cells to look in. This is known as the table array.
  3. The column that contains the information you want to return, called the column index number.
  4. Optionally, the type of lookup you want to perform: TRUE or FALSE. This is known as the range lookup. FALSE means you want an exact match for the lookup value, while picking TRUE returns the best approximate match. If you don’t specify a range lookup, VLOOKUP defaults to TRUE.

The syntax is as follows:

=VLOOKUP(lookup_value,table_array,column_index_number,[range_lookup])

The lookup value must be in the first column of cells you specify in the table array. The leftmost column in the table array has a column index number of 1, with subsequent columns numbered 2, 3, and so on.

In this example, we’ll look up what region our employees work in. To do so, we first need to specify the value that we are going to search for: the employee name Mike (cell A2). Next, we need to highlight the entire cell range (table array) that we want to look in: cells F2:G8.

Then we specify which column holds the information that we want. Rather than picking the column itself, we count from left to right within the table array. Since the column that contains the region is the second from the left, type in 2.

Lastly, we enter the TRUE (best approximate match) or FALSE (exact match) option. TRUE is typically only used with numbers or when you aren’t sure if the value you want is in the table. Since we know the value we want is in the table, we will pick FALSE. Generally, FALSE is the better option, as it returns more accurate results.

This is the full formula:

=VLOOKUP(A2,F2:G8,2,FALSE)

loading="lazy" width="400px">

Use VLOOKUP to find values linked to other values in large data sets.

Shimon Brathwaite / Foundry

This is an oversimplified example using a small data set, but when you need to search through a spreadsheet with thousands (or tens of thousands) of cells, VLOOKUP is a huge time-saver and reduces the possibility of errors. For more details and examples, see Microsoft’s VLOOKUP function support page.

Using Copilot to create Excel formulas

Remembering all these different formulas and functions can be difficult, so another good approach for those who have access to Copilot in Excel (see details at the top of this story) is to use the AI tool to dynamically create formulas that meet your needs. Using Copilot, you can describe what you want the formula to do  and have the AI generate the syntax for you. In this section we’ll demonstrate with two sample data sets.

To access Copilot, click the Copilot icon on your ribbon toolbar or at the bottom right of your screen.

width="979" height="511" sizes="auto, (max-width: 979px) 100vw, 979px">

To invoke Copilot, click its icon, which you might find in the ribbon toolbar up top or floating at the bottom right of your Excel window.

Shimon Brathwaite / Foundry

The Copilot sidebar opens along the right side of your spreadsheet. Type in a prompt describing the formula you want created — in this example, a simple formula that adds up all the sales values in the data set. Be sure to instruct Copilot where to place the formula:

Create a formula in B7 that sums all of the sales

screenshot of excel spreadsheet with sum prompt in copilot sidebar on right

Describe the formula you want Copilot to create.

Shimon Brathwaite / Foundry

Click the submit arrow in the chat window, and Copilot will create and insert the formula to give you the result you want.

screenshot of excel spreadsheet with sum result at bottom of data column

Copilot has inserted the correct Excel formula for the sum operation, with the result appearing in cell B7.

Shimon Brathwaite / Foundry

That was a simple one. Now try a more advanced example working from a more complex data set, as shown in the screenshot below.

screenshot of excel spreadsheet with 6 rows and 6 columns with disparate value types

A more complex data set for our second example.

Shimon Brathwaite / Foundry

Try the following prompt:

Create a formula in G2 that calculates total revenue per unit while accounting for the discount on each purchase. Then fill the formula down for all rows and create a summary table showing total revenue by Region.

Click the submit arrow, and it should create something like this:

screenshot of excel spreadsheet with new column of calculated values and a new summary table added - copilot prompt and explanation are in right sidebar

Copilot creates the requested formula and fills in the results.

Shimon Brathwaite / Foundry

(There’s a lot more you can have Copilot can do in Excel besides creating formulas. See our story “11 cool things Copilot can do in Excel.”)

Tip: It’s not required, but it can be helpful to format your spreadsheet as a table when working with Copilot. This helps define more clearly the exact cells for Copilot to use when it creates formulas or takes other actions on your data.

You’re just getting started

In this story you’ve seen how powerful formulas and functions can be in Excel — and we’ve only the scratched the surface of what they can do. Once you get comfortable using them, you can explore some of the myriad prebuilt functions Excel offers and learn how to build more complex formulas (including nesting functions). That’s all beyond the scope of this article, but a great place to start is Microsoft’s “Overview of formulas in Excel” support page, which includes links to several helpful tutorials.

For those who have access to it in Excel, experimenting with Copilot is another great way to learn. You can review the steps it took and the formulas it created to get a better understanding of how formulas work and what they’re capable of.

This story was originally published in May 2023 and updated in June 2026.

More Excel tips and how-tos:

Q&A: Temporal aims to be the reliability backbone for an agentic AI economy

19 June 2026 at 11:00

As AI shifts from output-generating large language models (LLMs) to armies of agents taking actions on their own, there is a growing threat that failures could affect system reliability.

Temporal, a Bellevue, WA firm founded in 2019, hopes to solve that problem by stabilizing AI and long-running computing processes through “durable execution,” a technology that reliably resurrects failed computing processes on other hosts. If a machine crashes in the middle of agentic AI transactions, the company resurrects the function on a different host so it can continue exactly where it left off. Temporal says its durable execution process comes with a 100% durability guarantee.

The company was solving these kinds of distributed-systems problems long before the generative AI (genAI) rush, and today it powers infrastructure from Coinbase to Airbnb to OpenAI.

For IT decision-makers, Temporal’s offerings promise to bring reliability to AI operations — especially in regulated industries. Co-founder Samar Abbas spoke recently with Computerworld about his company’s technology, AI reliability, execution and what IT leaders need to keep in mind when evaluating and deploying agentic AI.

How did Temporal come to be a backbone powering AI system? “OpenAI recently announced we power many of their products underneath the cover — that’s where Temporal comes in.

“A couple of years ago, as LLMs got smarter, use cases were about generating outputs. Now, the industry is moving into agentic solutions, where AI isn’t just generating outputs, it’s taking actions. The longer these systems run, the more tools they invoke and the more value they create. 

“They’re evolving into a whole army of agents coordinating to get complex tasks done. This starts to look like distributed systems. We become that execution authority, the reliability backbone for those agentic systems to get their tasks done from A to Z.”

What is Temporal doing in the backend to keep them stable? “It’s a new paradigm for building applications, we call that durable execution. If you write a function and a failure happens, you lose all of your state. When a machine crashes, we maintain the state. We seamlessly resurrect that function on a different host and continue executing exactly where it left off, without you as a developer writing a single line of code. 

“It’s not just a cache, it’s an operating system guaranteeing execution in the presence of failure. We provide 100% durability guarantees behind it. People can use it for mission-critical use cases like transcribing doctor conversations, where even losing one [word] has big implications.”

Did this challenge exist before AI? “My co-founder and I have been at it pretty much our entire careers, spanning almost three decades. We’ve been solving this problem of distributed systems, at Amazon, Microsoft and then Uber, before starting Temporal. We are definitely pre-AI. 

“As more workloads move to cloud and become distributed, it introduces this class of failures. This is the fifth time I’m building this system. I built simple workflow, then [a] durable task framework at Azure, then Cadence at Uber, now Temporal. The company is roughly seven years old, but the code base is over 10 years old, because we started at Uber and it’s been running in production ever since.”

And now you tackle that same problem at AI scale? “The funny thing is, especially with AI, that same problem is now at such a massive scale, it’s gone on steroids, with agentic systems coming online and doing real work. We’ve been powering every Coinbase transaction, every Snap story, every Airbnb booking, every Yum Brands order —  KFC, Pizza Hut, Taco Bell.

“A couple of years ago, it looked like we’d over-invested in the scale and reliability of the platform. Then AI showed up in such a big way that now I’m asking the team: how do we scale another 10x, 100x, even 1000x? These agents are hitting the market in a way we couldn’t have imagined.”

Can you give a concrete example of that 100% guarantee? “When you’re moving money — debit or credit — imagine a failure happens after you’ve debited an account. Temporal guarantees execution of the entire function from start to finish, in the presence of all sorts of failures. At the end of the day, we’re in the business of selling reliability. 

“Developers today spend 80% of their time building resiliency into their systems by working with low-level primitives like queues, databases, retry mechanisms and durable timers, and stitching them together. What we provide eliminates that. And that reliability is exactly what’s becoming critical as enterprises move agents into production.”

Why should CIOs and other IT leaders care about AI reliability? “These agents are now real, no longer prototypes or [proofs of concept]. They’re doing meaningful work in those organizations. Reliability and durability weren’t on the radar for CIOs 12 months ago. Now, it’s the blocker. Especially in regulated industries, if a transaction gets left in the middle, it has real regulatory concerns. 

“That’s what’s holding them back from transitioning into the AI stage. It comes up in pretty much every conversation, in the first 10 minutes I’m talking to a CIO.”

CW: Where do the hardest problems sit today? “Security, governance, identity, authorization, authentication. This is where majority of the problems exist, and the ecosystem is so immature. Even things like MCP, I see organizations struggling to implement MCPs to build these agents. This is an area ripe for innovation and a lot of work, including here at Temporal.”

What skills should developers and CIOs build for the AI age? “The biggest skill now is that developers need to be more product focused. Product-minded engineers are the ones who will thrive, because the whole software development flow, writing code by hand, debugging by hand, testing it, is going to look completely different. The job of an engineer is now building the system that builds the system. 

“Two things are happening in this AI world. First, a lot more engineers are coming into the fold, because companies like Replit or Lovable are making software development approachable for people who haven’t been professionally trained. Second, there’s going to be a lot more applications written than ever before. The problem space is shifting toward how we run all those applications safely and reliably, with all the guardrails. That’s where the industry is headed.”

How to bring the best Android 17 features to any Android phone today

19 June 2026 at 10:45

Google’s latest and greatest Android version is officially now out in the world and available — but if you’re using any phone other than a Pixel, that doesn’t mean much for you just yet.

The reason why is simple: Despite Google officially launching Android 17 and starting to send it out to Android phone-owners this week, it’s up to each individual device-maker to process the software and deliver it to its customers. And outside of Google itself, unfortunately, most Android device-makers are exasperatingly unreliable about making that happen — some of ’em to almost comically bad extremes (insert exaggerated sigh here).

Hold the phone, though — ’cause there is some good news here: While we can’t force any Android phone-maker to start treating software support as a priority, we can get creative and find ways to bring interesting new Android features to devices running older Android versions. In fact, all four of the Android 17 features I called out earlier this week can be emulated on any Android phone this instant. All it takes is a teensy pinch of inspiration and a dash of tenacity — and, of course, the right roadmap to make it all come together.

The tenacity’s on you, but if you’re game, I’ve got your roadmap ready. Here’s exactly how to enjoy a similar sort of Android-17-style sorcery on whatever phone you’re using right now — as far as some of the more surface-level highlights, at least — without having the actual Android 17 upgrade in front of you.

[Get fresh Android tips in your inbox with my free Android Intelligence newsletter — one new and useful thing to try every Friday!]

Android 17 feature #1: Bubbles multitasking magic

The most shape-shifting Android 17 of all, without a doubt, is Bubbles — a snazzy new way to turn any app into a floating, collapsible window that’s readily available for on-demand access but also out of your hair when you aren’t actively using it.

Android 17 Bubbles
Android 17’s Bubbles multitasking system in action.

JR Raphael, Foundry

I wrote about Bubbles and ways to achieve similar feats just a few months back. It’s surprisingly easy to accomplish, even without Android 17 in the picture.

Look over this list of crafty Bubbles-bringing workarounds and see which makes the most sense for you. One way or another, you’ll find yourself facing a fantastic new option for multitasking anytime you want it — no waiting or out-of-reach upgrades required.

Android 17 feature #2: Smarter location access

Our next Android 17 addition is a little trickier to emulate without the actual operating system update in the equation. But fear not, for this is Android — and when there’s a will, there’s a way.

The feature of which we speak is an expansion of Android’s framework for how apps can access your location. It’s a two-parter: First, whenever any app is accessing your location, you’ll now see a blue dot appear in the upper-right corner of your screen — and if you swipe down once from the top of your screen to open your notification panel, you can actually tap on the location icon that appears in its place to get detailed info about exactly which app or apps are involved. Second, when an app asks to access your precise location, Android 17 adds in the option to allow such access only temporarily — for that one brief moment and purpose — without giving the app permanent permission for ongoing use.

The second part, unfortunately, is challenging to achieve without Android 17 being present. But the first part is something we can make happen with a sliver of creative zest.

The trick revolves around a classic third-party app called Privacy Dashboard. Privacy Dashboard came about back in the Android 12 era, when Google first introduced a full-fledged privacy dashboard into Android and certain devices were lagging behind and taking too long to adopt it.

With Android 12 now being five years old, the app hasn’t had much need in recent years — until now. Interestingly enough, the ability to see full details about ongoing location access and then tap to adjust the associated app’s settings is something Privacy Dashboard has long offered. And it’s consequently a great way to bring that newfound native ability from Android 17 onto a device running an older Android version.

The catch is that because of the limited need for the app all this time, it’s no longer being actively developed — and as a result, if you hadn’t previously downloaded it, the Play Store will probably give you an error saying it’s made for an older Android version and can’t be installed on your device.

It will still work, though, and it’s perfectly functional and effective.

Provided you’re comfortable and that this won’t violate any of your company-associated policies, you can download the original verified Privacy Dashboard app package from my own personal Drive storage. I saved it using the Google Files file manager and then uploaded it directly to Drive. It’s quite literally the same exact app you’d get from the Play Store, if the Play Store would let you download it — and while I wouldn’t often advise installing apps from unknown sources, I don’t exactly consider myself to be “unknown” (most of the time). So as long as you share that same trust, you can grab the app from me and put it on any device you want.

Once you get the app installed and give it the permissions it needs to operate, open ‘er up and tap the “App Settings” options on its main screen. Tap the line that says “Indicator Customization,” beneath “Privacy Indicators,” then flip the toggle next to “Click action” into the on and active position.

Aaaaand, that’s it: Anytime an app is accessing your location, you’ll see a green location icon appear in the upper-right corner of your screen. And tapping it will take you to the system-level timeline of exactly which apps have accessed your location recently, for added context.

Android 17 Privacy Dashboard location indicator
Privacy Dashboard was ahead of its time with its Android-17-reminiscent location access indicators.

JR Raphael, Foundry

Before you install Privacy Dashboard, you might also want to try just opening an app that you know accesses your location — like Google Maps — and seeing what, if any, indicator appears in the corner of your screen and if you can tap it. While that ability is technically associated with Android 17, it was actually included in an earlier Android quarterly update, and it’s possible your device may already have that piece of the puzzle in place even if it isn’t yet running Android 17.

Android 17 feature #3: More dynamic dark mode

Android’s dark mode is better than ever as of Android 17, with a nifty new way to force each and every app to respect your device-wide dark mode setting and adjust its interface to a less glary look — even if it doesn’t technically support the option.

Android 17 dark theme expanded
Dark mode in Android 17 includes a useful new “Expanded” option.

JR Raphael, Foundry

Well, get this: If your phone’s Android software is reasonably recent, it’s entirely possible you can unlock the very same function by adjusting a few out-of-sight system settings.

Try this:

  • First, you’ll need enable Android’s developer options, if you haven’t done that previously.
    • That’s a special, typically hidden section of Android’s system settings with all sorts of advanced options that aren’t typically intended for average phone-usin’ folk to futz around with.
    • There’s no risk to you or your phone with enabling ’em, and as long as you follow the instructions here exactly and enable only the one single setting we’re about to go over, it’s actually quite easy. (It’s also quite easy to undo, if you ever decide you aren’t into it and want to go back.) But we are pokin’ around in an area of Android that’s meant mostly for developers, and if you veer off-course and mess with the wrong setting, you could make a mess — so follow the steps closely, capisce?
  • The process for enabling Android’s developer options may sound strange, but I swear it works: Head into the “About phone” section of your system settings, tap “Software information,” if needed, then find the line that says “Build number.” Tap your finger on it seven times, then enter your PIN or password, if prompted, and confirm that you want to activate the developer options.
  • Now, go back to your main settings screen and either tap on the “Developer options” that appears within that list or tap “System” and then tap “Developer options” from there.
  • Scroll down through that section until you see an option called “Force Dark mode.” Flip the toggle next to it.
Android 17 dark mode expanded - developer settings
Android’s developer settings holds the secret to Android-17-style “Extended” dark mode, even on older Android versions.

JR Raphael, Foundry

And there ya have it: You should now be able to open any app, even if it doesn’t officially support dark mode, and see it shift into a darkened state whenever you have dark mode enabled at the system level. 

Easy peasy, no?

Android 17 feature #4: A more comfy all-around view

Our final Android 17 feature is a saucy little somethin’ called Comfort View. It applies a softer, pastel-oriented filter to your display with automatic adjustments based on your current viewing environment in order to make your screen easier on the eyes.

If you’re using a Samsung device, you may already have something similar in place even with an older Android version. Look in the Display section of your system settings and see if you see something called “Adaptive color tone,” then try activating it if it’s there — and/or look for “Screen mode” and play around with some of the settings in that area to see vaguely similar sorts of adjustments. It isn’t quite as intelligent or automatic as the new incoming Android-level equivalent, but it’s a start!

In any other scenario — or if you just want more nuance and control, even with a Samsung gizmo — grab an app called Twilight. It’ll let you tweak all sorts of specifics about the appearance of your screen, and while it’s presented mostly for nighttime optimization, you can use those same controls to create your own custom modes for any scenario imaginable.

Android 17 Comfort View - Twilight
Twilight can help you recreate effects similar to Android 17’s Comfort View.

JR Raphael, Foundry

The app doesn’t collect or share any manner of data, and while it does offer a $10 Pro upgrade, the free version is perfectly functional for most purposes.

And with that, give yourself a pat on the back: Your phone is officially now set up to showcase some of Android 17’s finest flavors — even without the software itself being available to you yet.

That, my friend, is quite an accomplishment. Well done.

Don’t stop there: Come check out my free Android Intelligence newsletter to get something new and useful in your inbox every Friday — and get my awesome Android Notification Power-Pack today.

Android versions: A living history from 1.0 to 17

18 June 2026 at 10:45

What a long, strange trip it’s been.

From its inaugural release to today, Android has transformed visually, conceptually and functionally — time and time again. Google’s mobile operating system may have started out scrappy, but holy moly, has it ever evolved.

Here’s a fast-paced tour of Android version highlights from the platform’s birth to present. (Feel free to skip ahead if you just want to see what’s new in the most recent Android 17 update.)

Android versions 1.0 to 1.1: The early days

Android made its official public debut in 2008 with Android 1.0 — a release so ancient it didn’t even have a cute codename.

Things were pretty basic back then, but the software did include a suite of early Google apps like Gmail, Maps, Calendar, and YouTube, all of which were integrated into the operating system — a stark contrast to the more easily updatable standalone-app model employed today.

loading="lazy" width="400px">

The Android 1.0 home screen and its rudimentary web browser (not yet called Chrome).

T-Mobile

Android version 1.5: Cupcake

With early 2009’s Android 1.5 Cupcake release, the tradition of Android version names was born. Cupcake introduced numerous refinements to the Android interface, including the first on-screen keyboard — something that’d be necessary as phones moved away from the once-ubiquitous physical keyboard model.

Cupcake also brought about the framework for third-party app widgets, which would quickly turn into one of Android’s most distinguishing elements, and it provided the platform’s first-ever option for video recording.

loading="lazy" width="400px">

Cupcake was all about the widgets.

Android Police

Android version 1.6: Donut

Android 1.6, Donut, rolled into the world in the fall of 2009. Donut filled in some important holes in Android’s center, including the ability for the OS to operate on a variety of different screen sizes and resolutions — a factor that’d be critical in the years to come. It also added support for CDMA networks like Verizon, which would play a key role in Android’s imminent explosion.

loading="lazy" width="400px">

Android’s universal search box made its first appearance in Android 1.6.

Google

Android versions 2.0 to 2.1: Eclair

Keeping up the breakneck release pace of Android’s early years, Android 2.0, Eclair, emerged just six weeks after Donut; its “point-one” update, also called Eclair, came out a couple months later. Eclair was the first Android release to enter mainstream consciousness thanks to the original Motorola Droid phone and the massive Verizon-led marketing campaign surrounding it.

Verizon’s “iDon’t” ad for the Droid.

The release’s most transformative element was the addition of voice-guided turn-by-turn navigation and real-time traffic info — something previously unheard of (and still essentially unmatched) in the smartphone world. Navigation aside, Eclair brought live wallpapers to Android as well as the platform’s first speech-to-text function. And it made waves for injecting the once-iOS-exclusive pinch-to-zoom capability into Android — a move often seen as the spark that ignited Apple’s long-lasting “thermonuclear war” against Google.

loading="lazy" width="400px">

The first versions of turn-by-turn navigation and speech-to-text, in Eclair.

Google

Android version 2.2: Froyo

Just four months after Android 2.1 arrived, Google served up Android 2.2, Froyo, which revolved largely around under-the-hood performance improvements.

Froyo did deliver some important front-facing features, though, including the addition of the now-standard dock at the bottom of the home screen as well as the first incarnation of Voice Actions, which allowed you to perform basic functions like getting directions and making notes by tapping an icon and then speaking a command.

loading="lazy" width="400px">

Google’s first real attempt at voice control, in Froyo.

Google

Notably, Froyo also brought support for Flash to Android’s web browser — an option that was significant both because of the widespread use of Flash at the time and because of Apple’s adamant stance against supporting it on its own mobile devices. Apple would eventually win, of course, and Flash would become far less common. But back when it was still everywhere, being able to access the full web without any black holes was a genuine advantage only Android could offer.

Android version 2.3: Gingerbread

Android’s first true visual identity started coming into focus with 2010’s Gingerbread release. Bright green had long been the color of Android’s robot mascot, and with Gingerbread, it became an integral part of the operating system’s appearance. Black and green seeped all over the UI as Android started its slow march toward distinctive design.

loading="lazy" width="400px">

It was easy being green back in the Gingerbread days.

JR Raphael / IDG

Android 3.0 to 3.2: Honeycomb

2011’s Honeycomb period was a weird time for Android. Android 3.0 came into the world as a tablet-only release to accompany the launch of the Motorola Xoom, and through the subsequent 3.1 and 3.2 updates, it remained a tablet-exclusive (and closed-source) entity.

Under the guidance of newly arrived design chief Matias Duarte, Honeycomb introduced a dramatically reimagined UI for Android. It had a space-like “holographic” design that traded the platform’s trademark green for blue and placed an emphasis on making the most of a tablet’s screen space.

loading="lazy" width="400px">

Honeycomb: When Android got a case of the holographic blues.

JR Raphael / IDG

While the concept of a tablet-specific interface didn’t last long, many of Honeycomb’s ideas laid the groundwork for the Android we know today. The software was the first to use on-screen buttons for Android’s main navigational commands; it marked the beginning of the end for the permanent overflow-menu button; and it introduced the concept of a card-like UI with its take on the Recent Apps list.

Android version 4.0: Ice Cream Sandwich

With Honeycomb acting as the bridge from old to new, Ice Cream Sandwich — also released in 2011 — served as the platform’s official entry into the era of modern design. The release refined the visual concepts introduced with Honeycomb and reunited tablets and phones with a single, unified UI vision.

ICS dropped much of Honeycomb’s “holographic” appearance but kept its use of blue as a system-wide highlight. And it carried over core system elements like on-screen buttons and a card-like appearance for app-switching.

loading="lazy" width="400px">

The ICS home screen and app-switching interface.

JR Raphael / IDG

Android 4.0 also made swiping a more integral method of getting around the operating system, with the then-revolutionary-feeling ability to swipe away things like notifications and recent apps. And it started the slow process of bringing a standardized design framework — known as “Holo” — all throughout the OS and into Android’s app ecosystem.

Android versions 4.1 to 4.3: Jelly Bean

Spread across three impactful Android versions, 2012 and 2013’s Jelly Bean releases took ICS’s fresh foundation and made meaningful strides in fine-tuning and building upon it. The releases added plenty of poise and polish into the operating system and went a long way in making Android more inviting for the average user.

Visuals aside, Jelly Bean brought about our first taste of Google Now — the spectacular predictive-intelligence utility that’s sadly since devolved into a glorified news feed. It gave us expandable and interactive notifications, an expanded voice search system, and a more advanced system for displaying search results in general, with a focus on card-based results that attempted to answer questions directly.

Multiuser support also came into play, albeit on tablets only at this point, and an early version of Android’s Quick Settings panel made its first appearance. Jelly Bean ushered in a heavily hyped system for placing widgets on your lock screen, too — one that, like so many Android features over the years, quietly disappeared a couple years later.

loading="lazy" width="400px">

Jelly Bean’s Quick Settings panel and short-lived lock screen widget feature.

JR Raphael / IDG

Android version 4.4: KitKat

Late-2013’s KitKat release marked the end of Android’s dark era, as the blacks of Gingerbread and the blues of Honeycomb finally made their way out of the operating system. Lighter backgrounds and more neutral highlights took their places, with a transparent status bar and white icons giving the OS a more contemporary appearance.

Android 4.4 also saw the first version of “OK, Google” support — but in KitKat, the hands-free activation prompt worked only when your screen was already on and you were either at your home screen or inside the Google app.

The release was Google’s first foray into claiming a full panel of the home screen for its services, too — at least, for users of its own Nexus phones and those who chose to download its first-ever standalone launcher.

loading="lazy" width="400px">

The lightened KitKat home screen and its dedicated Google Now panel.

JR Raphael / IDG

Android versions 5.0 and 5.1: Lollipop

Google essentially reinvented Android — again — with its Android 5.0 Lollipop release in the fall of 2014. Lollipop launched the still-present-today Material Design standard, which brought a whole new look that extended across all of Android, its apps and even other Google products.

The card-based concept that had been scattered throughout Android became a core UI pattern — one that would guide the appearance of everything from notifications, which now showed up on the lock screen for at-a-glance access, to the Recent Apps list, which took on an unabashedly card-based appearance.

loading="lazy" width="400px">

Lollipop and the onset of Material Design.

JR Raphael / IDG

Lollipop introduced a slew of new features into Android, including truly hands-free voice control via the “OK, Google” command, support for multiple users on phones and a priority mode for better notification management. It changed so much, unfortunately, that it also introduced a bunch of troubling bugs, many of which wouldn’t be fully ironed out until the following year’s 5.1 release.

Android version 6.0: Marshmallow

In the grand scheme of things, 2015’s Marshmallow was a fairly minor Android release — one that seemed more like a 0.1-level update than anything deserving of a full number bump. But it started the trend of Google releasing one major Android version per year and that version always receiving its own whole number.

Marshmallow’s most attention-grabbing element was a screen-search feature called Now On Tap — something that, as I said at the time, had tons of potential that wasn’t fully tapped. Google never quite perfected the system and ended up quietly retiring its brand and moving it out of the forefront the following year.

loading="lazy" width="400px">

Marshmallow and the almost-brilliance of Google Now on Tap.

JR Raphael / IDG

Android 6.0 did introduce some stuff with lasting impact, though, including more granular app permissions, support for fingerprint readers, and support for USB-C.

Android versions 7.0 and 7.1: Nougat

Google’s 2016 Android Nougat releases provided Android with a native split-screen mode, a new bundled-by-app system for organizing notifications, and a Data Saver feature. Nougat added some smaller but still significant features, too, like an Alt-Tab-like shortcut for snapping between apps.

loading="lazy" width="400px">

Android 7.0 Nougat and its new native split-screen mode.

JR Raphael / IDG

Perhaps most pivotal among Nougat’s enhancements, however, was the launch of the Google Assistant — which came alongside the announcement of Google’s first fully self-made phone, the Pixel, about two months after Nougat’s debut. The Assistant would go on to become a critical component of Android and most other Google products and is arguably the company’s foremost effort today.

Android version 8.0 and 8.1: Oreo

Android Oreo added a variety of niceties to the platform, including a native picture-in-picture mode, a notification snoozing option, and notification channels that offer fine control over how apps can alert you.

loading="lazy" width="400px">

Oreo adds several significant features to the operating system, including a new picture-in-picture mode.

JR Raphael / IDG

The 2017 release also included some noteworthy elements that furthered Google’s goal of aligning Android and Chrome OS and improving the experience of using Android apps on Chromebooks, and it was the first Android version to feature Project Treble — an ambitious effort to create a modular base for Android’s code with the hope of making it easier for device-makers to provide timely software updates.

Android version 9: Pie

The freshly baked scent of Android Pie, a.k.a. Android 9, wafted into the Android ecosystem in August of 2018. Pie’s most transformative change was its hybrid gesture/button navigation system, which traded Android’s traditional Back, Home, and Overview keys for a large, multifunctional Home button and a small Back button that appeared alongside it as needed.

android versions pie

Android 9 introduced a new gesture-driven system for getting around phones, with an elongated Home button and a small Back button that appears as needed.

JR Raphael / IDG

Pie included some noteworthy productivity features, too, such as a universal suggested-reply system for messaging notifications, a new dashboard of Digital Wellbeing controls, and more intelligent systems for power and screen brightness management. And, of course, there was no shortage of smaller but still-significant advancements hidden throughout Pie’s filling, including a smarter way to handle Wi-Fi hotspots, a welcome twist to Android’s Battery Saver mode, and a variety of privacy and security enhancements.

Android version 10

Google released Android 10 — the first Android version to shed its letter and be known simply by a number, with no dessert-themed moniker attached — in September of 2019. Most noticeably, the software brought about a totally reimagined interface for Android gestures, this time doing away with the tappable Back button altogether and relying on a completely swipe-driven approach to system navigation.

Android 10 packed plenty of other quietly important improvements, including an updated permissions system with more granular control over location data along with a new system-wide dark theme, a new distraction-limiting Focus Mode, and a new on-demand live captioning system for any actively playing media.

android versions 10 privacy

Android 10’s new privacy permissions model adds some much-needed nuance into the realm of location data.

JR Raphael / IDG

Android version 11

Android 11, launched at the start of September 2020, was a pretty substantial Android update both under the hood and on the surface. The version’s most significant changes revolve around privacy: The update built upon the expanded permissions system introduced in Android 10 and added in the option to grant apps location, camera, and microphone permissions only on a limited, single-use basis.

Android 11 also made it more difficult for apps to request the ability to detect your location in the background, and it introduced a feature that automatically revokes permissions from any apps you haven’t opened lately. On the interface level, Android 11 included a refined approach to conversation-related notifications along with a new streamlined media player, a new Notification History section, a native screen-recording feature, and a system-level menu of connected-device controls.

android versions android 11 media player connected controls

Android 11’s new media player appears as part of the system Quick Settings panel, while the new connected-device control screen comes up whenever you press and hold your phone’s physical power button.

JR Raphael / IDG

Android version 12

Google officially launched the final version of Android 12 in October 2021, alongside the launch of its Pixel 6 and Pixel 6 Pro phones.

In a twist from the previous several Android versions, the most significant progressions with Android 12 were mostly on the surface. Android 12 featured the biggest reimagining of Android’s interface since 2014’s Android 5.0 (Lollipop) version, with an updated design standard known as Material You — which revolves around the idea of you customizing the appearance of your device with dynamically generated themes based on your current wallpaper colors. Those themes automatically change anytime your wallpaper changes, and they extend throughout the entire operating system interface and even into the interfaces of apps that support the standard.

android versions android 12 material you

Android 12 ushered in a whole new look and feel for the operating system, with an emphasis on simple color customization.

Google

Surface-level elements aside, Android 12 brought a (long overdue) renewed focus to Android’s widget system along with a host of important foundational enhancements in the areas of performance, security, and privacy. The update provided more powerful and accessible controls over how different apps are using your data and how much information you allow apps to access, for instance, and it included a new isolated section of the operating system that allows AI features to operate entirely on a device, without any potential for network access or data exposure.

Android version 13

Android 13, launched in August 2022, was simultaneously one of the most ambitious updates in Android history and one of the most subtle version changes to date.

On tablets and foldable phones, Android 13 introduced a slew of significant interface updates and additions aimed at improving the large-screen Android experience — including an enhanced split-screen mode for multitasking and a ChromeOS-like taskbar for easy app access from anywhere.

Android 13 Multitasking
The new Android-13-introduced taskbar, as seen on a Google Pixel Fold phone.

Google

On regular phones, Android 13 brought about far less noticeable changes — mostly just some enhancements to the system clipboard interface, a new native QR code scanning function within the Android Quick Settings area, and a smattering of under-the-hood improvements.

Android version 14

Following a full eight months of out-in-the-open refinement, Google’s 14th Android version landed at the start of October 2023, in the midst of the company’s Pixel 8 and Pixel 8 Pro launch event.

Like the version before it, Android 14 didn’t look like much on the surface. That’s in part because of the trend of Google moving more and more toward a development cycle that revolves around smaller ongoing updates to individual system-level elements year-round — something that’s actually a significant advantage for Android users, even if it does have an awkward effect on people’s perception of progress.

But despite the subtle nature of its first impression, Android 14 delivered a fair amount of noteworthy new goodies. The software introduced a new system for dragging and dropping text between apps, for instance, as well as a number of new improvements to privacy and security — including a new settings-integrated dashboard for managing health and fitness data and a more info-rich and context-requiring system for seeing exactly why apps want access to your location. And it brought about a new set of native customization options for the Android lock screen.

android versions android 14 lock screen

Android 14 includes options for completely changing the appearance of the lock screen as well as for customizing which shortcuts show up on it.

JR Raphael / IDG

Android version 15

Though Android 15 followed the trend of significant advancements arriving as their own separate rollouts — outside of and even ahead of its arrival, as an official operating system update — 2024’s new Android version was certainly no slouch.

The software introduced a number of noteworthy new features — including a redesigned system volume panel, an option to automatically re-enable a device’s Bluetooth radio a day after it’s been disabled, and a Pixel-specific Adaptive Vibration feature that intelligently adjusts a phone’s vibration intensity based on the environment. It also marked the debut of a system-level Private Space area that lets you keep sensitive apps out of sight and accessible only with authentication.

android 15 private space feature

Once you set up Android 15’s new Private Space feature, certain apps appear in a special protected — and optionally hidden — area of your app drawer.

JR Raphael / IDG

Add in handy touches like a space-saving app archiving option and a predictive back visual that lets you sneak a peek at where you’re headed before you get there, and this small-seeming update shaped up to be a pretty hefty progression.

Android version 16

In a marked change from recent Android upgrade cycles, Google decided to go with two new Android versions per year as of 2025 — starting with Android 16 in the spring and then following that with a smaller release in the fall.

True to that promise, Android 16 catapulted into the world in early June, creating the framework for future-facing systems such as Live Updates — a new type of notification designed to support persistent, ongoing alerts, similar to what Apple does with iOS’s Live Activities — and introducing an Advanced Protection security supermode that provides a simple single-switch way to activate a whole slew of advisable Android security settings in one fell swoop.

Google Android 16 Advanced Protection security

The Android 16 Advanced Security control panel, as seen on a Google Pixel phone.

JR Raphael, Foundry

The update included a sprawling series of other new security strengtheners, too, making protection seem like the true centerpiece of Android 16 — even if other touches, such as a more advanced standard for hearing aid support, helped flesh out the software into a rounded and feature-rich release.

Android version 17

With its relatively low-key arrival in June 2026, Android 17 officially brings the long under-development Bubbles multitasking system to the Android-owning masses — adding an interesting new way to keep any app available on demand in a floating, collapsible window for easy ongoing access.

animated screenshot of pressing bubble to switch between apps

Android 17’s Bubbles offers a whole new way to think about multitasking.

JR Raphael, Foundry

Speaking of bubbliness, Android 17 also includes the creator-aimed option of showing a cutout of your face from a front-facing camera over an active screen recording — because why not, right? — along with such practical touches as a more dynamic and consistent system-wide dark mode and a more nuanced and effective way to track and control app location access.

Android 17 Location Indicator screens with manage access button
Managing app location access is extra easy and powerful in Android 17.

JR Raphael, Foundry

While those features and the inevitable slew of under-the-hood security, performance, and privacy improvements add up to form a compelling final picture, it’s hard not to notice that much of Google’s focus in this era is now on the AI layers surrounding Android as opposed to being on Android itself, as an operating system. The company’s I/O conference in May showcased many such measures, appropriately noting that Android was transitioning from being “an operating system” into being “an intelligence system” (whatever that means).

Most of those “intelligence system” items remain limited in ability or not yet available as of the time of Android 17’s release — like the new and improved speech-to-text system for Gboard, the custom-widget-creating system for Android phones, and the multistep automation system for allowing AI to complete complex tasks on your behalf (assuming that you (a) trust such a system to act on your behalf and (b) don’t find the level of access and resulting manner of assumptions it makes about your life to be overly creepy).

But even at its foundational level and without any AI-laden Halo effect included, Android 17 manages to hold its own — with Bubbles acting as an anchor and bringing some much-appreciated new productivity potential our way.

This article was originally published in November 2017 and most recently updated in June 2026.

Jamf CEO: ‘AI is happening whether organizations know it or not’

17 June 2026 at 17:22

Beth Tschida, who became Jamf CEO in May after serving as CTO and as interim CEO, is the first woman to lead the company in its near 25-year history. I spoke with her this week at the London Jamf Nation event, where the company introduced its new AI Governance solution.

How the transition to CEO is going 

“It’s been a great privilege and an adjustment,” she said. “Jamf has always been a company deeply focused on culture, which is exactly why I love being here. Having the ability to influence and improve that culture from this role is something I feel very supported in doing.”

The last few years have seen a variety of changes at Jamf, which was briefly a public company. “We’ve come through a period of change, not all of it easy,” Tschida said. “But we now have a great partnership with Francisco Partners. We’re private, we’re focused on solving customer problems, and we’re finding ways to lean into what we’re good at.”

Women in tech and mentorship

Tschida is a good choice to lead a software engineering company, as she’s an engineer herself. She originally joined Jamf as vice president for software engineering in 2018, moving up to CTO in 2022. She’s also one of the few women in leadership positions in tech. (To Jamf’s credit, the company also has CIO Linh Lam on its team.)

“I think it’s important for women to stay deep in the tech, build their skills and find their voice confidently,” Tschida said. “You’ll never know all the technology out there. Nobody does. What matters is the ability to keep adapting and evolving.”

Tschida stressed the importance of mentorship. “I feel very honored to have a chance to be a role model for other women,” she said. “I had women who forged a path for me, including a female CIO early in my career who I asked to mentor me and learned an enormous amount from. I’m certainly not the first woman in tech, but I do want to play my part in helping others grow in their careers.

“Ultimately, I want to be respected for what I do, not for my gender. That’s how everyone should be judged.”

AI Governance

Tschida’s product focus means she knows what matters to Jamf. “If you focus on the problems customers have and how your product can help fix them, that’ll take you to where you want to go.”

For many in the enterprise, both in and beyond the Apple space, the next big problem is AI — how to deploy it, how to manage it, and how to regulate it.

AI Governance is a new Jamf solution that has been developed in response to those pain points. Countless surveys, including Jamf’s own data, show that AI is being widely used across every company, but IT lacks visibility into its use. It’s hard to know what data is being shared with AI tools, which services are being used, and how to report on that use effectively — particularly in regulated industries.

AI Governance is designed to make it possible for anyone managing an Apple fleet to get granular insight into AI use across their Mac, iPhone, and iPad devices. It uses telemetrics to shed light on that use, offers governance and management tools to help IT gain better oversight and control over it, and provides highly comprehensive reporting tools suitable for internal or regulatory review.

“AI is happening whether organizations know it or not,” said Tschida. “That’s the problem. You can try to block it, but that’s very hard to do well. It’s far better to build visibility and governance around it.”

The offering makes it possible for companies to enable the AI use they already know is taking place while protecting corporate interests and enabling fast and accurate reporting. You can find out more details here.

Empowering better AI

Jamf’s approach is focused on endpoint management. AI Governance means IT can see what’s running on a device, categorize it, and understand what AI tools and models are in use. “If you know how people are running AI on your fleet, you can open it up safely. Then all of your customers and employees can find their way to figure out how AI is going to optimize their workforce,” she said.

What does that look like in practice? Think of it as an orchestration layer. IT can define different AI configurations for different teams: HR might use one set of models, engineers another. And admins can apply opinionated postures per group: what models are permitted, what cloud services they connect to, what’s visible to IT versus the CISO versus the CFO. “It’s an extension of what Jamf has always done, it just now applies to AI endpoints too.”

What about regulatory complexity across geographies? “A lot of governance controls are shared across regulations; a good base set is a healthy way to run regardless. But each regulation has its own twists. Our mission is to make sure customers operating in different markets can expand on that base and fit the specific models and regulations they need, getting the right configurations to the right devices.”

Managers must prepare for AI cost challenges

There’s a second dimension beyond management — cost. The industry is developing quickly, with new AI models appearing almost every week. Yesterday’s leading LLM is tomorrow’s fading star, even while the cost of AI infrastructure goes through the roof. As that churn slows, investors will want to start seeing returns on their bets, which is why token costs — the price of running AI services, at least in the cloud — are climbing fast.  

As costs become more realistic, that’s going to change the nature of AI deployment from the laissez-faire, anything goes approach to a more strategic management of such use. “Models keep dropping fast, but token costs are only going to go up,” said Tschida.

“Organizations will need to decide: just because you can build something with AI, should you? What’s the right model for what work? We’re helping customers move from, ‘We’ll just block it’ or ‘We’ll turn it on and hope for the best,’ toward a place where they have a real viewpoint and can manage and change that viewpoint over time.”

The ever-changing AI world is also prompting Jamf to make more of its APIs externally available. “We’re used across every industry and every geography, at every scale,” said Tschida. “There’s no way we can build every workflow every customer needs, we’d never get to all of them.”

Embracing openness also helps build future foundations. “Thinking about where we’re heading next — agentic endpoint management — having platform APIs allows our customers to build things they can imagine, that we can learn from, in a way that solves their specific problems.”

Apple, WWDC, and the enterprise

Tschida’s comments come shortly after WWDC 2026, where Apple introduced a raft of AI advances that formed a strong foundation for its future, improvements that matter to Jamf. “When Apple innovates, Jamf celebrates,” she said.

“Apple is doing great things in their AI ecosystem, revamping Siri, expanding their AI capabilities, making Apple the platform people want to run AI on because those machines simply perform better. Our job is to take what Apple builds and bring it into the enterprise in the way that enterprises actually need it.”

Most of the industry recognizes that Apple’s enterprise story has changed dramatically as its products see accelerating use, and momentum is not slowing. Tschida reflected on how just a few years ago, Apple in the enterprise was an option in employee choice programs. “Now it’s becoming the clear choice,” she said. “We expect that trend to continue. And the more Apple invests in AI running natively on device, the stronger that argument gets.”

Where is Jamf going?

AI Governance is a unique answer to an increasingly important set of questions that are now beginning to affect the IT management of Apple’s platforms. (It’s not clear whether anything as sophisticated exists for other platforms at al, but as the need to manage AI grows, demand for such solutions will grow.)

Ultimately, the company’s latest move reflects Jamf’s inherent strategy under its new CEO. “Focus on customers, listen to them, solve their problems, and don’t throw tech at it. Ask: what’s the problem? Can we solve it? That focus is what takes you where you need to go.

“We’re on a good trajectory, customers stay with us, and the culture has always underpinned us. Now we’re finding ways to lean into it even further,” she said.

You can follow me on social media! Join me on BlueSky,  LinkedIn, Mastodon and subscribe to The Core.

Microsoft launches Copilot Cowork with usage-based pricing

17 June 2026 at 12:52

Microsoft has introduced usage-based billing for Copilot Cowork, which is now generally available. 

Microsoft unveiled Copilot Cowork in March, pitching it as an AI agent that’s capable of independently performing long-running, multi-step tasks — even when a user’s computer is off. 

It’s built on the same technology that underpins Anthropic’s Claude Cowork. Unlike Claude Cowork, which can interact directly with files and applications on a user’s computer, Copilot Cowork runs in Microsoft’s cloud environment and acts on documents held in a customer’s Microsoft 365 tenant.

On Tuesday, Microsoft unveiled pricing details for Copilot Cowork, which involves usage-based billing in addition to a Microsoft 365 Copilot license ($30 per user each month for large enterprises before discounts, and $20 for Microsoft 365 Copilot for Business). 

The usage-based pricing is calculated from four components, according to Microsoft: “model use, context retrieval, tool calls, and runtime.” 

In practice, this means more intensive tasks that draw on multiple sources, use “deep reasoning” and generate two or more outputs will lead to higher costs — denoted in Copilot Credits. 

There are two payment options: pay as you go — priced at 1 cent per credit — and P3, where customers commit to usage volume in advance and receive a discount.

Cowork is turned off by default; IT admins can decide when to make it available and which employees get access. Admins can also impose spending limits at the tenant, group, and user level, and receive notifications when spending reaches a certain level.

Users will also be able to see how much each tasks costs in credits (available “soon after” the general availability launch, Microsoft said). 

Copilot Cowork customers can select from multiple AI models, including Anthropic’s Opus 4.8 and Sonnet 4.6, while those enrolled on the Frontier program can access OpenAI’s GPT 5.5 and Microsoft’s own Cowork 1 model.

Microsoft is considering hosting a version of DeepSeek’s open source models. “We are actively exploring a range of options that meet those requirements, and DeepSeek is one of several models under consideration. We’ll share more specifics on the underlying model closer to release,” said a Microsoft spokesperson.

Microsoft also announced new integrations with third-party apps such as Miro and Monday.com, with more — such as Adobe, Box, and Canva — coming soon.

This article was updated on June 19 to add Microsoft’s comment on DeepSeek.

Got a Google Pixel? Find these 4 Android 17 features ASAP

17 June 2026 at 10:45

Well, hey, how ’bout that? Here we are, on a random quiet-seeming week in June, and a new Android version is officially making its way into the wild and onto our favorite Googley gizmos.

Yes, indeed: Google announced the launch of Android 17 this week, and the rollout is getting underway as we speak. As usual, the software will show up for current, still-supported Pixel devices right away, over the next few to several days. (As for everyone else — well, you know the drill by now, right? It’s up to each individual Android device-maker to process and send out its software updates, and outside of Pixels, that support is exasperatingly unreliable. But odds are, if you aren’t palming a Pixel, you’ll be waiting for a while — maybe even a long while, if you have a phone by a certain manufacturer whose name rhymes with Boatorola.)

As always, some of Android 17’s most important elements are the under-the-hood privacy, security, and performance enhancements that you won’t explicitly see but that will make a critical difference in your device’s ability to operate efficiently and advisably. But this latest Android release also packs an impressive punch of interesting surface-level touches that’ll bring an instant boost to your day-to-day productivity and all-around Android-enjoying experience.

As is often the case, many of the most useful elements are things you might not ever even notice or think to tap into if you don’t know where to look.

Here are the four Android 17 features I’ve found most noteworthy so far and how you can start putting ’em to use this second.

[Psst: Don’t let the learning stop here. Check out my free Pixel Academy e-course to discover all sorts of advanced intelligence lurking within whatever Pixel you’re using!]

Android 17 Pixel feature #1: Bubbles multitasking magic

Our first Android 17 addition on its way to Pixel owners this week is something that’s been in the works for many a moon now — and that’s a handy new multitasking mode known as Bubbles.

Bubbles first came into the Android picture way back in 2019, but at that point, it was limited mostly to messaging and never came close to reaching its full promised potential. At long last, now, Bubbles are back, baby, and becoming everything we’d always wanted them to be.

The simplest way to think about Bubbles is as a way to turn any app you’re using into a floating, collapsible window — so you can pull it up on demand when you want it, then minimize it back down into a small icon (a “bubble” — get it?!) to get it out of your hair but keep it nearby for easy ongoing access.

It’s an interesting way to multitask without having to commit to a full-fledged split-screen setup. It can be quite useful for keeping things like lists, documents, emails, chats, or anything else you’re coming back to regularly at your fingertips — so you can pop into it as needed, without any real effort, but also without having it in your face all the time.

Android 17 Bubbles
Android 17’s Bubbles system in action.

JR Raphael, Foundry

In Android 17, Bubbles is easy to launch with any app in front of you. The only catch is that as of now, at least, it can be triggered only from the standard stock Pixel Launcher — not a custom Android launcher like Smart Launcher or Niagara.

Provided you’re using the standard Android home screen setup, though, all you’ve gotta do is:

  • Press and hold any app’s icon on your home screen or in your app drawer.
  • In the menu that pops up, tap the option that says “Bubble.”
  • Then tap the bubbled app icon to expand or minimize the app, or press and hold it to move it around to any position on your screen or dismiss it.
Android 17 Bubbles (2)
You can move a bubble anywhere on your screen or dismiss it easily.

JR Raphael, Foundry

You can also add additional bubbled apps into that same view via the plus icon next to the first app’s icon when a bubble is open. Pretty nifty, wouldn’t ya say?

Android 17 Pixel feature #2: Smarter location access

Allowing apps access to your location inevitably requires a certain amount of compromise when it comes to the ever-prickly subject of privacy — and it demands a certain level of trust that the apps in question won’t abuse the privilege or use it for reasons beyond their intended purposes.

Android 17 makes it meaningfully easier to accept that bargain and rest easy knowing your info isn’t being misused, thanks to a pair of related new privacy protection measures:

  • First, whenever any app is accessing your location, you’ll now see a blue dot appear in the upper-right corner of your screen — and if you swipe down once from the top of your screen to open your notification panel, you can actually tap on the location icon that appears in its place to get detailed info about exactly which app or apps are involved. With another tap from there, you can opt to force-close the app in question, view all of its recent location access attempts, and manage its location access ability, too, in case anything ever seems amiss.
Android 17 Location Indicator
Android 17 offers some welcome added nuance and power around app location access.

JR Raphael, Foundry

  • And second, when an app asks to access your precise location, Android 17 adds in the option to allow such access only temporarily — for that one brief moment and purpose — without giving the app the permanent permission for ongoing use.

Hey, we’ll take it. Just remember to keep tabs on the permissions Google itself is claiming these days, too, as those don’t always come with a prominent pop-up.

Android 17 Pixel feature #3: More dynamic dark mode

Dark mode may be one of the more divisive interface adjustments of our modern mobile moment, but if you’re a fan of the dimmer, less glary view across your Android experience, you’re bound to appreciate the added option Android 17 affords you in that area.

It’s a simple one-tap checkbox that forces apps to adjust and comply with your dark mode preference, when it’s active — even if they don’t natively support such a setting. That means those pesky apps that’d typically maintain the same standard light interface even when you activate dark mode will now turn dark along with the rest of your setup whenever Android’s dark mode is on.

All it takes it quite literally one tap on the freshly added Android 17 option:

  • Head into the Display section of your Pixel system settings.
  • Tap “Dark theme” — the actual words, not the toggle alongside ’em.
  • And change the setting from “Standard” to “Expanded.”
Android 17 dark theme expanded
Android 17’s “expanded” dark mode setting brings the darkness you crave everywhere.

JR Raphael, Foundry

Now, one note: By forcing apps to adapt to dark mode even if they aren’t designed for it, it’s possible some programs may end up lookin’ a little funky. If that ever happens and you aren’t thrilled with an app’s adaptation, go back to that same settings screen we were just starin’ at and tap the gear-shaped icon alongside the “Expanded dark theme” option. That’ll let you create exceptions and select specific apps that don’t get dark mode automatically applied.

Android 17 dark theme expanded exceptions
You can create specific exceptions to Android 17’s expanded dark mode approach.

JR Raphael, Foundry

But everything else will now be in the dark when you want it — just like your dark, brooding heart desires.

Android 17 Pixel feature #4: A more comfy all-around view

Whether you’re a prince/princess/dutchess/middle-manager of darkness or not, Android 17’s new Comfort View may be just the thing for you.

Comfort View is an off-by-default addition to your Pixel that applies a softer, more pastel-oriented filter to the display with automatic adjustments based on your current viewing environment — in other words, how bright it is around you at any given moment. Ooh, ahh, etc.

To try it out, march your way back into those Display settings, and this time, tap the line labeled “Comfort Filters.” Flip the switch next to “Comfort View,” make sure the “Dynamic” checkbox is active, and see how you feel about your newly optimized screen-color view as you move throughout your day.

Android 17 Comfort View
Android 17’s Comfort View — ahh….comforting.

JR Raphael, Foundry

If you find the filtering to be too extreme or not enough to make a difference, you can also try disabling the “Dynamic” option there and then manually adjusting the “Intensity” slider to suit your specific peeper preferences. But I suspect if you give it enough time, you’ll find the automatic adjustments to be one of those things that just works for you and makes your device a little easier on the eyes, relative to each and every viewing environment — without being something you actively think about or pay much mind.

That, if you ask me, is the sign of an effective feature. And it’s a welcome addition to Android and the ever-evolving Pixel experience.

Don’t let yourself miss an ounce of Pixel magic. Come check out my free Pixel Academy e-course to find tons of hidden features and time-saving tricks for your Googley gizmo.

10 tips for getting better R code from your AI coding agent

17 June 2026 at 10:00

Most generative AI tools know less about R than languages like JavaScript and Python, thanks to how much training data is available for each. However, with a little extra setup, you can give a large language model (LLM) the knowledge it needs to improve its R skills.

Here are 10 ways to help generative AI write R code like a pro.

Use a coding agent

AI coding agents have more power, flexibility, and coding-focused tools than general-purpose chatbots.

Anthropic’s Claude Code and OpenAI’s Codex agents have versions that run in a terminal, IDE extensions, desktop and mobile apps, and other integrations.

R users may also be interested in Posit’s Posit Assistant, which is designed for data analysis in both R and Python. It needs less setup for R than general-purpose coding agents, and it has more built-in knowledge about data science, R package development, and Shiny apps. Plus, it can read objects in your R and Python environments by default, which can be useful in some situations (although perhaps not if you’re working with sensitive data). There are versions of Posit Assistant for RStudio, the Positron IDE, and the terminal. Setup info is here.

Note: Posit Assistant is not the same as the older Positron Assistant that was demo’d at last year’s posit::conf(). The older assistant will eventually be superceded by Posit Assistant. Posit Assistant comes pre-installed with RStudio but not pre-activated, so you don’t need to use it unless you want to.

Google’s original entry in this space, Gemini CLI, is being retired in favor of a new “Antigravity CLI” starting June 18.

There are other IDE platforms with built-in agents, including Cursor and Windsurf, and terminal + subscription coding agents such as Warp, which was open-sourced in April. However, I won’t be covering those here.

You may be limited at work by what your employer allows you to use, but you can still experiment on your own with public data — and then lobby for a new agent if a different one better meets your needs. Whatever you choose, though, moving to one of these from a web-based chatbot should produce better code.

“The shift from chatbot to agent is the most important change in how people use AI since ChatGPT launched,” says Ethan Mollick, co-director of the Wharton School’s Generative AI Labs at the University of Pennsylvania.

Set up CLAUDE.md, AGENTS.md, or GEMINI.md knowledge files

All the major coding agents look for knowledge files to load each time you start a session, and you can easily edit those files. The files can include things like your proficiency in various languages and how you like to document projects. For example, I tell my LLMs that I’d like a README.md in every project with info on how to use the project and technical info on how the project was coded.

Most coding tools let you have both an overarching main file that’s loaded into every session, and an additional file per project.

If you’re adding Claude or Codex to an existing code base, the /init slash command will create one of those .md project files after scanning and analyzing the code. You can also ask an LLM to interview you to create or add to one of those files.

Claude Code looks for a user-level main CLAUDE.md file at ~/.claude/CLAUDE.md and then a project-level file at ./CLAUDE.md or ./.claude/CLAUDE.md. The /memory slash command shows where those files are located. Codex uses AGENTS.md files. Antigravity docs say it looks for a main GEMINI.md file plus GEMINI.md and/or AGENTS.md files in your working directory.

Positron Assistant is set up to read AGENT.md, AGENTS.md, POSITRON.md, CLAUDE.md, GEMINI.md, and LLMS.txt in a workspace root directory, according to the docs. See the Positron docs for more on custom instructions.

Use agent skills

Agent skills can turn an LLM with questionable R knowledge into an expert that understand how you want it to write code. You can develop your own skills, work with your LLM to create skills, or download skills written by others. Claude even has a skill to help you build skills. This is one of the best ways to stop having to repeat the same instructions over and over. Instead, the LLM will “remember” what’s in your skills files by loading them when they’re needed.

What’s the difference between the knowledge .md files mentioned above and a skill? I like to think of CLAUDE.md or AGENTS.md files as important background info that’s always available, while skills are more specific instructions that are useful at certain times. Or, as Claude Opus 4.7 put it: “Skills are for triggered workflows (‘when user asks X, do Y’). A standing rule that applies to every project isn’t trigger-based; it’s a directive I should always follow.” Standing rules should go in CLAUDE.md.

“Create a skill when you keep pasting the same instructions, checklist, or multi-step procedure into chat, or when a section of CLAUDE.md has grown into a procedure rather than a fact,” according to Anthropic’s Claude Code docs. “Unlike CLAUDE.md content, a skill’s body loads only when it’s used, so long reference material costs almost nothing until you need it.” Only skill descriptions are loaded at the start of each session, so the LLM knows what skills are available.

Anthropic originally created skills for Claude in October 2025 and then published the concept as an open standard a couple of months later. Most coding agents now use them.

Anthropic has an easy-to-folllow guide to creating custom skills here if you want to try your hand at building your own.

Posit Assistant comes with several R-related skills built in and allows users to add more. You’ll find them here.

If you’re not using Posit Assistant, you can add Posit-developed skills to another coding agent. Posit published a GitHub repository with skills for creating R packages, Shiny apps, and Quarto documents; for creating and resolving GitHub pull requests; for open-source R and Python package releases; for code reviews (R, Python, JavaScript/TypeScript, SQL); and for creating architectural documentation for a codebase. Browse them all here.

Read and edit the skills you download

Skills are just a folder with one or more markdown text files that have a structured YAML header. That folder can include optional resources and scripts, too. Skill instruction files are easy to read and edit, so you can make sure they do what you want. Tweak them as desired.

For example, Claude helped me write my own customized R skill. Claude leans toward tidyverse packages, but there are other packages I like a lot, too, such data.table. I made sure the R skill knows my package preferences, and under what circumstances I prefer each.

If one of your preferred procedures changes, remember to update the associated skills. Or, ask an LLM to update it for you. Keeping skills up to date will make your coding agent more useful.

Keep your CLAUDE.md or AGENTS.md files updated, too. Maybe you started off with a CLAUDE.md file that said you’re an experienced Python programmer who is just learning R. Three months from now, you might want to update your R skill level. Or, perhaps you told an AGENTS.md file that you like thoroughly documented code, but now you’d prefer a lighter touch. You may want to have your coding agent go over those files with you from time to time and ask you about the main points and whether they need updating.

Use the btw R package and its MCP server

It’s frustrating when an LLM writes code based on an ancient R package version in its training data, or when it doesn’t know about a relatively recent package at all. btw solves this problem by letting your coding agent access info about all the R packages installed on your system. That means it can write code based on your specific R environment. Plus, btw lets an LLM access variables in your current R environment via a Model Context Protocol (MCP) server.

MCP servers are a standardized way for LLMs to access external data — in this case, your running R session (external doesn’t have to mean cloud). Like skills, MCP was created by Anthropic as an open standard and has since been adopted by most major AI platforms. The btw R package includes an MCP server, which you can install for Claude Code by running the following code in a terminal window (not R console).

claude mcp add -s "user" r-btw -- Rscript -e "btw::btw_mcp_server()"

btw comes with a lot of tools. It’s not a great idea to overload your LLM with tools it may never use. If you just want to register btw tools for accessing your R session and looking up package documentation, you can run a command like this instead:

claude mcp add -s "user" r-btw -- Rscript -e "btw::btw_mcp_server(tools = btw::btw_tools('btw_tool_run_r', 'docs', 'env'))"

You only need to do this once.

To connect Claude Code to your open R session, you also need to run btw::btw_mcp_session() in every new R session. (I sometimes forget this part until I’m puzzled why Claude can’t read my R variables or even see what packages I have installed.)

You can see a demo of btw in this Posit video that compares Claude Code and Posit Assistant.

test_claude_code_btw

The btw R package lets Claude Code and other agents read objects in your R session.

Foundry

You don’t need to do this setup for Posit Assistant, since tools for accessing your R session and variables are built in.

Use plan mode for your projects

I cannot stress this enough. Just as humans benefit from having a plan before starting to implement a project, LLMs benefit from working through a plan before beginning to generate code. Plus, it can be useful at times to “brainstorm” with an LLM about structures and features, ask it for alternatives, or even have another LLM review a plan before implementing it.

Anthropic advises starting with plan mode. “Letting Claude jump straight to coding can produce code that solves the wrong problem. Use plan mode to separate exploration from execution,” they wrote in a best practices doc.

Claude, Codex, Gemini, and Posit Assistant all have a plan mode in their CLI versions that can be activated with the /plan slash command.

claude_plan1


Foundry

claude_plan2 rev

When in plan mode activated with /plan, Claude will often ask questions before coming up with its plan.

Foundry

Make sure your coding agent learns from its mistakes

This is one of the best tips I read first from Joe Amditis, associate director of operations at the Center for Cooperative Media at Montclair State University: If your coding agent makes a mistake and you work together to fix it, make sure to save that memory so it doesn’t make the same error again.

Your agent may have an auto memory system that’s supposed to do some of this (I’ve used Claude Code’s), but you can instruct any coding agent to keep a separate lessons learned file for each project, too, or ask it what’s the best way to ensure it doesn’t make the same error again. This isn’t a guarantee, any more than you can be assured an LLM will follow all the rules in a CLAUDE.md or AGENTS.md file or all the steps in a skill. But it has definitely cut down on my agents making the same errors over and over.

Have your agent write tests and do code reviews

Tests and code reviews done by a coding agent aren’t a substitute for a human checking that software works. Review an LLM’s results yourself any time a task is important! However, agent-generated tests are still a good way to head off some problems and cut down the time you spend as your LLM’s debugging partner. If you don’t know where to start to help your agent know how to test and review code, see Posit’s testing-r-packages and critical-code-reviewer skills. Your agent may also have built-in code review skills, such as Claude Code’s /code-review slash command.

Code review skills are available from many sources. For example, Sentry has a code review skill in its repository. Aimed specifically at its project’s needs, it can be a useful sample for similar skills. And superpowers is a popular set of general-purpose programming skills that’s billed as “a complete software development methodology for your coding agents, built on top of a set of composable skills and some initial instructions that make sure your agent uses them.” I don’t use superpowers, but a lot of other people clearly do given its more than 227,000 GitHub stars and 20,000 forks.

Another tip: Several experts suggest using a different LLM — maybe even from a different provider — to conduct a code review, since each model has its own strengths and weaknesses.

Don’t forget general prompting good habits

Whatever programming language you’re using, being clear will improve your outputs. Keep your requests targeted, and don’t expect the LLM to read your mind.

“Codex handles complex work better when you break it into smaller, focused steps,” OpenAI says in its developer docs. “Smaller tasks are easier for Codex to test and for you to review. If you’re not sure how to split a task up, ask Codex to propose a plan.”

“Take time to make your prompts as relevant as possible, just as you would when helping a new teammate scope a task,” Google advises in its Five Best Practices for Using AI Coding Assistants. “Consider what details you need to share for a person to succeed, and provide all those details to your AI tool.”

And, don’t load up your context window to the LLM’s published limit. Performance often degrades as you get close to the maximum token limit.

Take advantage of open LLMs, particularly if you have budget and token limits

Open-weight models — especially ones small enough to run on a desktop computer — may never rival frontier LLMs like Claude, GPT, or Gemini. But for a lot of R coding, they don’t need to.

To see how well an LLM can write R code, it should have the same kind of harness that Claude Code, Codex, or Posit Assistant gives larger LLMs. “The harness is the product,” argues Mallory Mejias at Sidecar, an AI education company. “The model is the engine inside it — important, but increasingly interchangeable.” I wouldn’t go that far, since I still find the LLM to be a critical piece of this equation, and models differ. But the same LLM will perform differently depending on the tools and context it has.

Posit recently added Google’s open-source Gemma 4 26B to Assistant’s existing options of larger, closed-source LLMs. “Up until this point, models of this size — small enough to run comfortably on high-end consumer laptops — were on our radar but not yet capable enough to drive an agent harness like Posit Assistant,” Posit senior software engineer Simon Couch wrote on the Posit blog. “This has changed in the last few months with releases like Gemma 4.” However, to use it in Posit Assistant in RStudio, you still need to run it through a Posit AI subscription, not locally. It uses 1/10 the budget that the same session with Claude Sonnet would consume.

Several projects can use Claude Code to run local LLMs. Ollama, open-source software for running LLMs locally, does this with the terminal command ollama launch claude --model , such as:

ollama launch claude --model gemma4:26b

The makers of Unsloth, an open-source framework for running and training models, say running local LLMs inside Claude Code can be very slow due to a cache invalidation issue. They say this can be fixed by adding "CLAUDE_CODE_ATTRIBUTION_HEADER" : "0" to ~/.claude/settings.json under “env”.

Unsloth can also use Claude Code to run local models, but it’s somewhat more involved to install and set up than Ollama. See this Unsloth tutorial.

Open-source coding agent Open Code runs LLMs from OpenAI, Anthropic, Google, Kimi, Alibaba’s Qwen, and others. I haven’t warmed up to it yet compared with commercially backed CLI tools I’ve tried, but it has 174,000 GitHub stars so clearly a lot of fans.

AI consultant Thomas Wiegold, who switched from Claude to Open Code, said “OpenCode covers everything I need for my daily workflow. It’s fast, the provider flexibility is genuinely useful rather than theoretical, and the TUI is better for extended sessions…. That said, I’m not going to pretend it’s all smooth sailing.” He noted some stability issues and a remote code execution vulnerability earlier this year.

Wiegold’s suggestion? “Install both. Try others. Stay flexible.”

In summary

Large language models remain imperfect and unpredictable tools, but they’re improving rapidly — as are the harnesses around them. Even frontier LLMs in commercial coding agents can ignore instructions at times and otherwise behave in unpleasantly surprising ways. However, you’ll vastly improve your chances of generating quality code if you use coding agents, take time to set them up with quality instructions, and remember good prompting techniques. Good luck!

—

Coding agent info

Claude Code – Anthropic’s coding agent is available in the terminal and as an IDE extension, a desktop app, mobile apps, Slack app, and a cloud version that can work directly in your repos on GitHub. Arguably the first breakthrough coding agent, it now includes an elegant remote-control option where you can start a session on your desktop and then continue it on a phone or tablet. While designed for Claude LLMs, you can use it to run local LLMs via tools like Ollama or Unsloth Studio. When using Claude models, it tends to offer less usage than other vendors’ options. Anthropic has posted the terminal version’s code on GitHub, with usage governed by Anthropic’s commercial terms of service. You can use Claude Code via API pay per use or as part of a Claude subscription.

Codex – OpenAI’s answer to Claude Code is available via terminal, app, IDE extension, or cloud, with integrations for GitHub, Slack, and Linear. The CLI tool is open source under an Apache license, available on GitHub, and works via API pay per use or as part of a ChatGPT subscription.

Posit Assistant – The Posit (formerly RStudio) coding agent is designed for data work in R and Python, although Posit senior software engineer Simon Couch told me it would do fine for programming work for other uses and in other languages. It is available for the RStudio IDE (via a Posit AI subscription in RStudio), Positron IDE, and as a stand-alone CLI terminal app, although the CLI tool currently doesn’t feel as full-featured as the IDE integrations (that may change). As of this writing, you can also use API keys from Anthropic, OpenAI, and Snowflake Cortex and a GitHub Copilot account in Positron. Posit Assistant is being updated quite frequenty, Couch told me. If you tested it a month or two ago, it has more capabilities now.

Antigravity CLI – Google’s terminal-based tool will be replacing the Gemini CLI for unpaid and Google One users this month. There’s also an Antigravity IDE, SDK, and platform for orchestrating multiple agents. One advantage of Antigravity: Google offers a free plan with access to Gemini 3.5 Flash, Gemini 3.1 Pro, Gemini 3 Flash, Claude Sonnet 4.6, Claude Opus 4.6, and gpt-oss-120b, and what it describes as “generous” but undefined weekly rate limits based on “the degree we have capacity.”

Code like Hemingway

17 June 2026 at 10:00

I was blessed with a terrific high school English teacher. Ms. Jewel was funny, kind, interesting, and tough on us. I can still spell “ecstasy” on the first try because of her. One of the more memorable lessons she taught was a “Hemingway and Fitzgerald” module. 

I loved the short stories of both, but Hemingway’s work always stuck out for me. It’s cliché to say that Hemingway was terse, but we only say it because it is true. He could pack more into a page than most writers. He didn’t waste a syllable. 

Software developers are soon going to have to take a lesson from Hemingway.

It’s not hard to be concise in code. You have to be, by design. The compiler won’t put up with any throat-clearing and jibber-jabber. You can’t meander. You have to use a very strict set of words and symbols, and you have to use them in a defined way. 

Thanks to agentic development, we don’t write code anymore. But we are writing for the agents. A lot. 

All about the spec

Let me explain. Claude Code, Codex, Copilot, and the rest all love to be “spoken” to in Markdown. We used to define our code with unit tests and specifications written for humans. Now, it’s all about the spec. And the spec needs to be both complete and concise. 

It needs to be complete in the sense that if you leave something out or forget to define something, the agent will very likely fill in the gaps for you. Forget a feature or requirement, and the agent will go off confidently and almost certainly in the wrong direction.

At the same time, you need to be concise. Because if you are too effusive, you may give the agent ideas that you don’t want it to have. If you write like Fitzgerald — lush and expansive —  the agent will be off and running in a direction you can’t be sure about. 

Our compilers will stop cold if we aren’t precise and concise. Our agents? They will proceed with confidence, diligently producing a result that looks great but isn’t what we want.

So we need to learn to write like Hemingway and pack as much meaning into as few words as possible. Or, as Paul Graham said:

paul graham tweet

Foundry

Let’s be clear

For years, we’ve been writing semi-vague Jira tickets and expecting our fellow humans to fill in the gaps and “get the gist” of what we were trying to do. We don’t have that luxury anymore. Developers who aren’t able to move on from “Jira-speak” to “Agent-speak” are going to struggle. If we don’t follow Graham’s advice in writing those specs, who knows what we’ll get.

Maybe someday agents will know the ins and outs of our business well enough to “know what we mean,” but they can’t today. The time we used to spend coding now needs to be spent perfecting our new craft of writing precise specifications for our agents to execute.

Every listicle ever written on “How to be a Great Developer” says you need to be a great communicator — but that was communication with other humans. 

Ms. Jewel always taught us that our writing is only as clear as our thinking. Our compilers forced us to write clearly. Our coding agents won’t do that. I’m sure there are many developers out there now who wish they had listened more closely to their high school English teacher.

Apple 2027 rumors: AirPods with cameras for AI and the second folding iPhone

16 June 2026 at 18:04
AirPods Pro 3 shown with an iPhone and live translation features. | Photo by Amelia Holowaty Krales / The Verge

Now that we're clear of WWDC and all of the new AI-powered features coming to Apple's platforms, Bloomberg reporter Mark Gurman has more details about rumored new hardware, like the camera-equipped AirPods he'd previously written about. He says they are currently on schedule for a late 2027 launch, and that while we're checking out beta releases for this fall's iOS 27 update, the new earbuds are internally being tested with next year's update, iOS 28.

With cameras mounted in their stems and lights to indicate when data is being uploaded to the cloud, they could give the upgraded version of Siri "visual context" about your surroundings, be …

Read the full story at The Verge.

Shipping enterprise-quality code with AI agents

16 June 2026 at 10:00

Developers are caught between the joy — or pressure — of using agents to ship 10x faster today and the dread of how they will maintain that code tomorrow. The gap between “vibe” code and code that can be deployed to millions of users is vast and easy to underestimate. Closing the gap requires care, expertise, and effort, with the payoff coming later. Agents are able to complete increasingly complex programming tasks but without the quality we need. What’s missing, and how can we fill the gap?

agentic coding quality gap - sonar

Sonar

Why agent-generated code degrades: the bloat problem

Enterprise code has to clear three bars: it must be maintainable, reliable, and secure. Out-of-the-box AI agents can miss all three. Let’s focus on the biggest and most visible maintainability issue, which is bloat: redundant validation, defensive checks that cannot fire, near-duplicate functions, dead code that nothing removes. A None check on a parameter typed as dict. A try/except around a call that never throws. Two functions, identical except for the negation in their return statement.

Bloat varies dramatically by model. Sonar’s LLM Leaderboard runs every frontier model through 4,400+ Java tasks and analyses the code generated. To complete the benchmark, GPT-5.4 High generated 1,159,000 lines of code at an 81.05% pass rate, while Claude Opus 4.7 Thinking generated only 336,000 lines of code to return a better than 82.52% pass rate. Different models generate dramatically different code to achieve similar outcomes.

Bloat is not just messy. Carnegie Mellon researchers studied 807 open-source projects that had adopted Cursor, matched against 1,380 controls, measured by SonarQube. A short-term velocity gain disappeared by month three, while static analysis warnings rose 30% and code complexity rose 41% — both persistent. The harder it became to change the codebase and the more bugs it contained, the more the velocity was dragged down. Any experienced developer will know how this goes: quality problems compound until the code feels impossible to change and the only option is the dreaded rewrite.

Three forces produce bloat once a model is in use:

  1. Agents do not feel the maintenance burden. Armin Ronacher, the creator of Flask, made the point on the Pragmatic Engineer podcast in late April. Humans feel the cost of bad code over time, and as Ronacher put it, “if the pain gets too big, you as a human are incentivized to fix the cause of your pain” — so we refactor. Agents do not. They obliviously extend bad structure indefinitely. A senior engineer’s job is to say no to unnecessary abstraction. The agent has no equivalent reflex.
  2. Training rewards apparent completeness. Pretraining corpora are full of explanatory material — Stack Overflow answers, tutorials, README snippets — deliberately self-contained and verbose. Post-training compounds the effect: human raters prefer outputs that look thorough, so models learn that “comprehensive” reads as better. When uncertain which edge case matters, the safe move is to handle all of them. Each guard is locally defensible. The aggregate is bloat.
  3. Iterative generation has no deletion pressure. Agents add but rarely delete. Removing dead code does not make any test go green, so superseded functions accumulate alongside their replacements. SlopCodeBench, a March 2026 benchmark across 11 coding models, found rising structural complexity in 80% of trajectories and rising verbosity in 89.8%. Agents continue to patch bad code, treating every task as if it’s their last.

AC/DC: the loop that compensates

What closes the gap is a loop around each iteration of agent work. The agent does what it is good at — generating code — and our job is to wrap that with three steps the agent cannot reliably do on its own. At Sonar we call this the Agent Centric Development Cycle, or AC/DC: guide, verify, solve.

Guide

Many teams overcorrect on context. They paste the style guide, three years of architectural decisions, and the entire onboarding doc into the agent’s instructions and expect output to improve. ETH Zurich researchers tested this and found the opposite: large context files often reduced task success against no context at all, and added 20% or more to inference cost.

Keep agent-facing context short — under 200 lines is a useful heuristic — and restrict it to fundamentals that can’t easily be inferred from the code: naming conventions, architectural invariants, what has been tried and failed. However, this will only get you so far, so make sure to provide specific context for each task. If you have architectural expectations, don’t expect the agent to guess them. Software architecture tools can be used to provide additional context in the guide phase.

Task shape matters too. Break the work into steps and agree on a plan; ask the agent to provide three solutions and evaluate the impact on quality of each. There is no perfect software architecture, and you understand the trade-offs in your codebase best, so think critically about the changes before they happen. Without this, the agent will confidently pick an option, seemingly at random, and the further it goes the harder it is to “unpick.” If you want to test this, ask three instances of your preferred agent to complete a task that involves some polymorphism and watch each one confidently suggest a different solution.

Verify

The most expensive verification mistake is doing it last. Reviewing 200-line pull requests (PRs) after the agent is done is the dynamic behind the Faros/DORA figures Addy Osmani highlighted: 98% more PRs merged in high-adoption teams, review times up 91%. Verification inside the loop is different. Unit test runs, static analysis, and security scanners produce output the agent can act on. This is where AI-native tooling belongs: purpose-built for the agent to invoke, not just for humans to consult through a UI.

Human reviewers cannot keep up. When agents merge twice as many PRs per week and each one takes nearly twice as long to review, doubling the review staff still leaves you behind. Automated verification is the only response that scales. Fast feedback has always been a fundamental tenet of good software engineering. Feeding it directly back to the agent protects the developer from simple mistakes and leaves them headroom to work on the harder ones.

Solve

If verification happens within the agentic loop, the agent can fix any issues whilst the code is being generated without expensive remediation steps. Static analysis tools can guide the agent on how to resolve the issue quickly. Some cases need human judgment — a None check at a system boundary may document a real precondition. But most of the work is mechanical. Automate the obvious fixes and let engineers spend their attention on the cases that are not.

The investment that compounds

Better models will keep arriving. They may not change the mechanism of bloat or the dynamics of compounding decay. The loop is what does — bounded tasks, sharp context, in-loop verification, and a deliberate “solve” step to clear bloat before it accumulates.

The same logic governs how autonomy should expand. Reduce human interventions only when the agent’s guide, verify, and solve cycle is making them redundant. Our biases can sting us here: an agent’s ability to write code can lead us to agree with it more than we should. Don’t trust blindly; wait for the evidence.

The teams that will be shipping enterprise-quality code with AI agents in 18 months are not the ones running the “best model.” They are the ones treating workflow as the engineering investment, with the seriousness once given to build systems and CI. The model is the tool, the workflow is the discipline. That is where the durable advantage compounds.

—

New Tech Forum provides a venue for technology leaders—including vendors and other outside contributors—to explore and discuss emerging enterprise technology in unprecedented depth and breadth. The selection is subjective, based on our pick of the technologies we believe to be important and of greatest interest to InfoWorld readers. InfoWorld does not accept marketing collateral for publication and reserves the right to edit all contributed content. Send all inquiries to doug_dineley@foundryco.com.

Q&A: A look at forward-deployed engineers, AWS style

16 June 2026 at 08:00

Hot AI companies can’t stop talking about forward-deployed engineers (FDEs), which are now very much in vogue. 

FDEs, in case you haven’t heard, are hired by companies looking (hoping?) to successfully deploy AI tools and services. It’s one of the hotter professions in a world still trying to understand the impact of AI on careers.

So, what exactly are FDEs — are they techy lone rangers like the ones OpenAI, Google and Microsoft are hiring? Turns out it’s not so much about individual engineers who swoop in to design and roll out AI deployments; it’s more about a team of engineers working together at customer sites.

At least, that’s the view at Amazon Web Services (AWS).

In fact, according to Taimur Rashid, managing director of the AWS Generative AI Innovation Center, the FDE concept pre-dates the current generative AI (genAI) gold rush. The same kinds of engineering teams were needed for the earlier machine-learning and cloud eras to help companies with deployments.

AWS's Taimur Rashid

Taimur Rashid, managing director of the AWS Generative AI Innovation Center,

AWS

Rashid recently talked about how AWS sees FDEs as a profession in a conversation with Computerworld. And he weighed in on the desired job skills the company seeks in this increasingly AI-centric era.

What is an FDE? “We view it as a team. It’s a cross-functional team that has engineers, scientists, strategists, and folks that can piece technology and business together. In some cases, we do have to have security engineers in there, too. 

“I see them as anesthesiologists. They have to prep so many things, monitor things throughout. We see ourselves as a frontier deployment team helping customers adopt all forms of AI, whether it’s genAI, agentic AI, even emerging trends like physical AI. We’re helping these companies become frontier themselves.”

How does an FDE engagement begin, and how is it structured? “Where we see the forward deployed model is when customers come in — for example, we have our executive briefing center in Seattle and in Arlington, VA. When customers share what they’re trying to do, very quickly a customer’s like, “What’s the quickest way I can go and build something with you?” 

“We’ll forward deploy our people in, we’ll embed them in your business and we’ll go through these 45-day sprints that we typically design. Through those successive sprints, we’re building stuff together, we’re proving value, and then they can expand that to a much broader engagement.

Where do FDEs actually sit? Client side, internally, or in-between? “It’s mixed, and it largely depends on what the customer’s preference is. We’ve seen models where the customer has been very adamant that, ‘We want your teams with us in our business.’  In those cases, we forward deploy the majority of the teams on site. 

“We have models where customers are fine with you being wherever you’re based, as long as you’re still embedded virtually. And then there’s a hybrid. We deploy anywhere from five to seven people. Sometimes, the baseline is actually three.”

Will cost savings be the job of an FDE, or someone else on the team? “I expect these teams to be able to architect systems that have those cost requirements in mind, whether it’s use a different model for a different use case that doesn’t increase the per-token cost…or think about ways where you can use semantic caching. I personally think you may have a high spend in token consumption, but if you’re generating revenue, as long as the economics work out, then you’re at peace.”

What challenges have you gone through deploying FDEs in the real world? “One of the challenges worth highlighting is when customers get really excited about us forward deploying resources, what they end up realizing is [that] they’re not set up to absorb that right away. They realize they have to go through … process-related things, security access — all those operational things. 

“One very good example is the Commonwealth Bank of Australia. They said: “Prioritization’s a big thing, and if you forward deploy and you’re 100% dedicated, how do we ensure that our teams are also equally 100% dedicated?’ When you’re sitting in your office, you’re distracted by your day-to-day. So they said, ‘Why don’t we create a neutral ground in Seattle? You fly your people, we’ll fly our people. We’ll give them three weeks of dedicated time so they have no distractions.’”

Have you gone into projects where they want AI but have no security or governance ready? “I’ve been through this before, certainly. We do see customers that have security processes and capabilities, but it’s not as tight as it should be in the age of AI. Governance is the biggest area where customers right now have the biggest gap. I’m talking governance around agents. In the past two months, almost 100% of the conversation around agents is not about capability. It’s all about governance. 

“That is a big area right now where forward deploy teams are helping with governance education, and building the scaffolding for that.”

How does software engineering fit into the FDE model? “One of the greatest learnings is that as we forward deploy resources and get customers to take AI and integrate it into their systems, the knowledge of software engineering is so important. Today, a customer can use one of the Claude models and scan their code base and look at vulnerabilities. 

“The tough part is not assessing those vulnerabilities, it’s remediating [them]. Remediating [them] requires software engineering experience, because you have got to merge code, test it, deploy it. We largely see that the frontier software development teams are smaller and they’re managing agents that are doing various tasks across the software development lifecycle.”

AWS has many models at your scale, open source, closed — it’s more complex than what other AI vendors offer.  How do you nail down the talent? “It’s massive, and when you look at not only scale, it’s the complexity of the stack. We take an approach where we fundamentally do three important things: No. 1, we want to ensure people understand concepts; they have to understand pre-training, post-training, reinforcement, fine-tuning. 

“Secondly, we make sure that our teams are well versed in their first-party services. The third thing is that by design, AWS has always been about choice. We say, ‘Let’s do 80-20 here. What is 20% of those specialties that we need to have, which can cover 80% of what most customers are trying to do?’”

What skills should software developers learn to move into FDE work — the top three or four things? “We look at three categories. First category is entirely functional. Are they more engineering specific? Are they science specific? Are they security specific? Our litmus test is not only knowledge of the function, but the actual hands-on work that they can do with it. Secondly is around domain. I focus on what is their domain understanding across the whole AI lifecycle? The third thing is cultural. We are looking for folks that are okay at dealing with ambiguity, being good at stakeholder management, and having that startup mindset. 

“This AI transformation’s not for the faint of heart.”

There’s a rush for FDEs from OpenAI, Google, and others. What’s different about what you look for? “I don’t know entirely what the others are looking for, but I’ll tell you what we have been looking for in the past. When we hired solution architects, it was about systems level understanding. But what I see more and more is hands-on experience, cultural mindset, all these things are very important. If I had to pick one thing that is going to be very important in the talent that we either upskill or future talent that we hire, it has to be the application of AI towards software engineering and system integration tasks.

You’re upskilling AWS talent as well? “We do. You will see some publications coming out in the next couple of weeks around how do we do this across our software teams and how does that translate to customer-facing roles.”

Nextcloud CEO: Open source moves from ‘a nerdy audience’ to the geopolitical stage

15 June 2026 at 08:00

MUNICH — Amid trans-Atlantic political and trade tensions, digital sovereignty — once a relatively niche concern — has jumped to the top of the agenda for European organizations wary of their reliance on US technology suppliers.

For many, including European Union policy makers, increased use of open source software is a key part of the answer, offering an alternative to proprietary platforms from a handful of large US vendors.

That’s the view of Frank Karlitschek, CEO of Nextcloud, the German software vendor that bills itself as an open-source alternative to software suites from the likes of Microsoft and Google. 

Nextcloud CEO Frank Karlitschek

Nextcloud CEO Frank Karlitschek speaking at the German software company’s Nextcloud Summit 2026.

Nextcloud

Karlitschek founded the company in 2016, forking OwnCloud’s open-source file-sharing software. Since then, Nextcloud has expanded its products to include a range of productivity and collaboration tools that organizations can install and run on their own servers or access via cloud providers. 

More recently, Nextcloud helped develop the Euro-Office application suite, which launched last week as an open source alternative to Microsoft Office and others, and continues to build out its Nextcloud Hub with AI assistant and agent features. The company now says revenues are growing at between 50% to 100% year over year.

Computerworld spoke to Karlitschek at Nextcloud Summit about momentum around digital sovereignty, the European Commission’s Tech Sovereignty Package proposals, and how Nextcloud hopes to evolve in the coming years.

The following interview was edited for length and clarity.

When Nextcloud launched, there was a big push in Europe away from on-premise software towards US cloud providers. How have attitudes towards open source and awareness of alternatives providers changed since then? “I’ve been doing open source since the ‘90s; at the time it was mostly for a nerdy audience — a very small group of people who really care about software and being in control. The sovereignty part was always there. It’s the core idea behind open source that you can understand what the software is doing, you can deploy it wherever you want, you can study it and change it, and so on. 

“At the time, it was very niche, and since then it’s really growing and growing. There are certain points in time that really accelerated the growth; something like the Snowden revelations, for example, or the whole discussion about GDPR and certain legislation. And then, of course, the current geopolitical situation.  

“I personally find it interesting that it grew from something that is just interesting for software developers, and now it’s on the geopolitical stage. I have meetings with big politicians who really care about it now, and I personally find it interesting that it’s increasingly understood by — I wouldn’t say the mainstream, but more and more people.

“At the beginning of Nextcloud, we mostly talked with IT managers looking for a solution; they care about how it works, the price and other things. But now we are also talking with the C-level people. It’s part of an overall strategy of a company, to say, ‘Hey, we need to look into the dependencies, we want to have a solution that fits into the strategy of the company.’

“In the past, it was like a commodity – it’s just some software, who cares? Now, it’s really part of the company strategy. That’s really interesting.”

There’s been a lot of interest around digital sovereignty over the past couple of years. To what degree is this translating into action, with organizations migrating away from US cloud providers? “The interest is gigantic. Everybody’s talking about it, we have so many contacts and people coming to us. Not everybody is doing it — a lot of people are just exploring and seeing what the options are. 

“Obviously, we hope that this will translate into actions in a few months. At the moment, it’s a lot of talking and exploring the options. As a company, we are also growing a lot in customer base.  But the interest in this space is even bigger; we see it as the beginning of a funnel.

‘In defense we see a lot of interest, then also everything around education is very important for us, then other regulated markets like the healthcare, for example. Finance is an interesting one.”

A lot of the conversations around digital sovereignty are tied to the current geopolitical situation and even the US administration. Do you see demand for sovereign technology as a structural change or are some organizations holding back to see how the situation improves in the future? “I see it as a long-term trend. If you look at the IT budgets and projects in the ‘90s, it was some something unimportant. It was, of course, important that the printer works and the fax machine works, but it was not definitely not strategic for the company. 

“And then in 2000, the whole cloud trend came up, and there was the big hope that this will save money. It was always the narrative with cloud computing that you can just outsource it and save money and it’s great. 

“Nowadays, people realize that it’s not something that you can just ignore. I wouldn’t say that everything comes back on premise, but people care about it now. They understand it’s not just a commodity, like water, or electricity that comes out of the wall and you don’t care what’s behind it. People realize that it’s something that has an impact on the future of an organization, from a vendor lock-in perspective, from a cost perspective, from an industry espionage perspective, and competitiveness. With open source, you’re more flexible. So, I think the trend that this is all more strategic and important for the future, this will go on.”

The European Commission recently published its Tech Sovereignty Package, including its open source strategy. Are these proposals sufficient to address the concern around digital sovereignty and support the open source ecosystem in Europe?

“It’s great, I really like it. I was actually surprised they listened so well. But now the real challenge is to actually do it; this still needs to happen. The description of the problem and a possible solution, this is all very good. I’m surprised, I’m happy about it, but to put this into actually binding law, this still needs happen.”

Would you like to see any changes to the current proposals before they’re gets passed into legislation? “At the moment, they have these four different risk levels, and the most critical one — No. 4 — is one where they accept only open source and European solutions. This is the highest risk level, but this is only for 1% of the market. I hope that it’s better understood that more than 1% should care about this more.

“If you have something which is completely not critical, maybe doesn’t possess any personal data at all — sure, it’s totally fine [to use non-EU suppliers]. But if you have GDPR requirements, espionage protection, no vendor lock-in, and so on, then there should be more of that [the highest requirement level].”

US firms have attempted to address European customers’ concerns in different ways, with sovereign marketed cloud services and joint ventures with European providers. Microsoft 365 Local is designed to run on premise. Where do you draw the line between what’s actually a sovereign solution and what some call ‘sovereignty washing? “Sovereignty has different dimensions, of course. But if you look at the problem of the CLOUD Act alone, which gives foreign agencies full access to the data here, then the whole idea that it’s enough to have European data centers — that’s not enough. It’s clearly written in the CLOUD Act, that even with [European] data centers, or subsidiaries, it still applies.  

“Microsoft tries to find a solution there with its Delos idea; a company that is owned by SAP — a German company — and Microsoft delivers only the software. But even then, you have this dependency, because software needs updates and software security updates. And if they’re not available, or if someone puts a backdoor into the software, which is possible, then you still have a problem. 

“So, they’re trying really, really hard to find a way around the problem, but it’s not easy for them.”

To look ahead a bit in terms of the product strategy, there were announcements for Nextcloud Hub this week around AI agents, and the program to work with independent software vendors. What do these say about Nextcloud’s future? “The overall product strategy will not change so much; it’s about having state-of-the-art collaboration software — but with a lot more control, security and safety — that’s open source and independent where you host it. So this will always stay, but of course, there’s some additional factors that come into play now, like the AI impact that we see and want to leverage with our agent strategy. 

“We’ve had this for one and a half years already, but we are expanding that. In the future, you might still use an interface in a classic way that you open documents and type in text and so on. But there are also a lot of operations that can be automated in the future with AI. And this is something we really invest a lot into. 

“Another aspect of AI is how easy it is to build custom software around it. The coding models are getting better all the time, which means there will be more and more custom business software. This is what we want to capture with our ISV program. Software development will become easier, but you don’t want to deploy just random software in your company, you want to have something that is tested, certified and secured, and that somebody’s accountable for it. This can be something we can provide at Nextcloud.”

Editor’s note: NextCloud paid for Matthew Finnegan’s travel and hotel costs for NextCloud Summit 2026, but had no editorial role in the creation of this story.

Apollo astronauts trying to sleep on the way to the Moon kept seeing flashes and streaks in the dark, and the cause turned out to be cosmic rays from deep space passing straight through their eyes.

14 June 2026 at 15:55

Apollo astronauts trying to rest on the way to the Moon kept noticing the same thing in the dark. With the cabin lights down and their eyes adjusted, they saw brief flashes and streaks of light, dots and lines that no one else could see and that were not there in any ordinary sense. The cause, worked out over the missions that followed, was cosmic rays from deep space passing through the visual system. The broad cause is now well supported, even if the exact biophysics of how a passing particle turns into a flash of light is still not fully pinned down.

The flashes are an example of a phosphene, a sensation of light produced by something other than light entering the eye.

In this case, the something was radiation.

What the astronauts saw

The reports began on Apollo 11. After a period of dark adaptation, with eyes open or closed, crew members saw flashes they described as pinpoints, thin streaks, or small clouds of light. They were almost always colourless. They came at a rate of roughly one-half to two a minute, often enough to be a distraction when someone was trying to sleep.

This was not confined to one crew or one flight. Flashes were reported across the Apollo missions, and later by astronauts on Skylab, on Mir, and on the International Space Station. The phenomenon even had a kind of forecast. As early as 1952, the biophysicist Cornelius Tobias had suggested that people exposed to cosmic radiation in space might see exactly this sort of thing, and the team that investigated the Apollo reports traced them back to that idea.

How they tied it to cosmic rays

Suspecting a cause and demonstrating it are different tasks. To test whether the flashes really were caused by particles passing through the head, the Apollo 16 and 17 crews carried a device called the Apollo Light Flash Moving Emulsion Detector, worn on the head during the coast to and from the Moon. It used stacked photographic emulsion to record the tracks of charged particles, so that the path of a particle could be matched against the moment an astronaut reported a flash.

The numbers were small but telling. The detector was worn for about an hour on each of the last two Apollo missions. On Apollo 17, seventeen flashes were reported during the session, and two of them were matched to heavy cosmic-ray nuclei passing through an eye. Combined with the geometry of the eye and statistical modelling, that was enough for the investigators to attribute the flashes to cosmic rays. Ground experiments pointed the same way: when volunteers had their dark-adapted eyes exposed to beams of heavy ions, they saw comparable flashes.

What is still uncertain

The confirmed part is that cosmic rays cause the flashes. The unconfirmed part is the step in between, the biophysics of how a single fast particle produces a perceived point of light. Several mechanisms have been proposed, and more than one may contribute.

The leading idea is that the particle ionises tissue directly in the retina, stimulating the light-sensing cells or the neurons behind them as it passes through. This fits the ground experiments, where heavy ions produced flashes at intensities too low for any light to have been generated. A second idea is Cherenkov radiation: a particle moving through the clear jelly of the eye faster than light moves through that medium emits a faint glow, real photons generated inside the eye itself. The trouble is that Cherenkov light should look bluish and diffuse, and most astronauts described sharp white dots and streaks, which do not match. A third possibility is that some flashes come from particles striking the optic nerve or the visual centres of the brain, bypassing the eye altogether.

Decades on, reviews of the phenomenon still describe the specific mechanism as undefined, and note that the effects on the different parts of the visual system have not been fully separated.

The cause is well established; the wiring is not.

Why it still matters

On Earth’s surface, we are mostly shielded from this by the atmosphere and the magnetic field. In low Earth orbit the shielding is reduced but not gone, which is why astronauts on stations such as Mir and the ISS have also reported the effect. The Apollo crews saw the flashes more strongly still because they left that protection behind, travelling beyond the magnetosphere. The flashes were, in effect, the radiation environment of deep space made briefly visible inside a human head.

That is why they are treated as more than a curiosity. They are a perceptible sign that high-energy particles are passing through the body, the brain included, and the same radiation is a serious concern for long missions beyond Earth. On the International Space Station, experiments have used the visual system as a way to study how cosmic radiation affects the central nervous system. For a crew bound for Mars, who would spend months outside the magnetosphere, the dose to the brain over that time is one of the open problems of the trip.

What to watch

The people who travel back to lunar distance under Artemis and later missions will almost certainly see the flashes again. They will also carry better instruments and a sharper reason to use them. Pinning down how the flashes are produced would be a small result. Understanding what months of that radiation does to the brain behind the eye is the one that matters.

The post Apollo astronauts trying to sleep on the way to the Moon kept seeing flashes and streaks in the dark, and the cause turned out to be cosmic rays from deep space passing straight through their eyes. appeared first on Space Daily.

Siri AI is all Apple; it just needed Google to get there

12 June 2026 at 13:49

Apple’s executives have been taking questions, hosting seminars, seemingly working around the clock to stress one very important thing: Apple is not using a white label version of Google Gemini to make Siri AI happen. They just pooled resources to get there. 

The new Siri AI is faster, more accurate, offers powerful contextual capabilities and shows how Apple has leap-frogged into a good peer position in an AI race critics felt it had already lost. Its market scale — even without the EU — is huge. For most consumers, Apple Intelligence and Siri will continue to be their primary/first engagement with artificial intelligence on a device.

Getting there took a lot of work, and Apple needed Google to get it done. Though there is still some confusion about what that means, Apple’s software chief tried to explain it this week. “We use none of the models that Google deploys to their customers, nor do we use the infrastructure and means by which they employ models to their customers,” Craig Federighi said in a presentation at WWDC.

Apple is not even using Google Search as the foundation of its system, he said. “This is the amount of Google Assistant we use,” Federighi said, pointing at an empty chart. “Nothing.”

Apple not Gemini, Siri AI is not Google’s

What makes this hard to understand is that we all know Apple partnered with Google to build Siri AI; back in January, we were told the next generation of Apple Foundation Models would be based on Gemini models and cloud technology. So, how can we have moved from partnership hero to usage zero?

The answer is, we didn’t. What happened is that Apple built its new Apple Frontier Models (AFMs) (the AI inside Siri AI) by training them using proprietary Apple data and reinforcement learning and then refined those models using “outputs from Google’s Gemini Frontier models.”

In other words, Apple used Google Gemini to help improve its own models, which means the models themselves, the AI in Siri AI, are Apple’s — but they were trained with help from Gemini. They are not white label iterations of those Google models. 

Apple also hit a second snag. Its very best model (AFM 3 Cloud Pro) requires more processor power to run than Apple could deliver using its own cloud-hosted Private Cloud Compute servers. Now, we know Apple doesn’t like using other people’s stuff. But it’s a realistic company that understands it sometimes must, and just as it uses AWS to support some of its services, it moved to adopt Google cloud services and Nvidia processors to drive the most demanding requests.

A question of trust

Apple also developed a technological solution that means it can claim the interaction remains just as private as if it were run on your device. Apple has made it possible for independent security experts to confirm this and says it is the only company that can deploy software on those servers, with strong security to ensure your device only interacts with those servers when you want it to. So far, no one has broken this protection. 

I came across an interesting report in which Tekonyx Founder and Chief Research Officer Sid Nag explained the significance of Apple finding a way to expand its Private cloud Compute infrastructure beyond its own data centers.

“Apple is effectively arguing that trust in AI systems should come from cryptographic and architectural guarantees rather than trust in the cloud provider itself,” he told Fierce. Where enterprises have faced a choice between access to powerful AI or privacy, Apple has introduced a new solution he called “portable trust.” This could conceivably become a new IaaS offering from the companies involved over time.

Working together for the benefit of all

So, while Apple’s models were built with Google’s help, and while its most advanced models run with support from Google and Nvidia, the models are Apple’s alone. 

It’s good for Google, of course. Apple is paying for this use, which helps the search giant claw back some of the value of its massive, muti-billion-dollar AI infrastructure investment. It’s not clear how much Apple is paying; earlier this year, the $1 billion figure was bandied around. But Apple’s decision to tie usage to iCloud subscriptions in some hitherto undisclosed way hints that the deal may also see some token-based usage charges on top of the basic Apple fee. I’ve not come across any details, but that’s what I surmise based on the size of Apple’s ecosystem and the growing realization of how quickly users can consume AI capacity.

What AI models is Apple running?

AFM 3 Cloud Pro is one of five Apple Frontier Models driving Siri AI.  Here’s how Apple describes those five models:

On-device models

  • AFM 3 Core, the next generation of Apple’s 3-billion-parameter dense model. You’ll use this for basic text generation, summaries, conversational replies, all the standard uses. It can also handle indexing, search, App Intents, basic dictation and contextual awareness.
  • AFM 3 Core Advanced, the most powerful on-device model. This is what makes Siri’s voice match mood or context, does all the high-accuracy dictation, and can process various data to handle tasks across different apps. It’s the AI driving your more involved Siri conversations. 

AFM Core Advanced is impressive in its own right, because Apple has managed to cram a 20-billion-parameter model onto a smartphone. It has done this by using a sparse architecture, which means it activates just 1 to 4 billion parameters at a time depending on the request. It is, however, only available to Apple’s most powerful systems — iPhone 17 Pro, iPhone 17 Pro Max, iPhone Air, M4 or later iPad, M3 or later Mac with 12GB+ memory.

Server-based models

  • AFM 3 Cloud, which Apple calls its server-side workhorse, optimized for speed, efficiency, and performance.
  • ADM 3 Cloud (Image), for image generation and editing, which unlocks advanced photo-editing tools, the all-new Image Playground, and more.
  • AFM 3 Cloud Pro, the most capable server-based model, which powers the most demanding use cases, like agentic tool use and complex reasoning.

All five were built using the same common foundation, which was then specialized to reflect the proposed use of that model. It’s interesting to look at the human evaluation tests Apple ran to test how well these models performed; they demonstrate impressive improvement on the company’s original models, effectively justifying the decision to work with Gemini.

You can follow me on social media! Join me on BlueSky,  LinkedIn, Mastodon and subscribe to The Core.

Inside the coming war over face cameras

12 June 2026 at 08:00

Several trends are now converging that threaten to pit tech companies against the general public. 

Miniaturization has finally enabled companies to build AI glasses that look and function like normal glasses, but with microphones and cameras. People are increasingly talking to AI, rather than typing. And multimodal input, especially video, is on the rise. 

Put all of these trends together and you get a nascent industry pushing toward all-day, everyday AI glasses with cameras — and a worried public already pushing back at  the idea.

Let’s look at how we got here.

Meta started it with a surprise hit: its second-generation Ray-Ban Meta glasses, which later gained multimodal AI capability. Its Meta Ray-Ban Display glasses add one in-lens screen — but both versions of the glasses have cameras. (The company is working on a third generation that will probably ship next year.)

Google provides the AI and software platform through Android XR and Gemini, partnering with hardware makers to put its AI on other companies’ glasses. At Google I/O last month, Google unveiled frames from Gentle Monster and Warby Parker running Android XR with Gemini AI; they’re scheduled to launch this fall. Google is working on two types of AI glasses, one with screens and one that is audio-focused. Both types have cameras, though. 

Samsung is working to launch AI-powered smart glasses, too, code-named “Jinju.” The company offered up details at Google I/O alongside Google. The glasses feature a 12-megapixel camera with autofocus; run on Android XR with Gemini AI; are co-designed with Gentle Monster and Warby Parker; and are slated to launch in July at the Samsung Unpacked event. 

(As with Meta and Google, Samsung is working on AI glasses with and without screens, but both of its models have cameras.)

Tech giant Apple is also on the glasses train, based on reporting from anonymous insiders. Codenamed N50, the Apple glasses could have two cameras, one for pictures and videos, the other for multimodal AI input and hand-gesture control. (Apple is also working on a pendant and next-gen AirPods, both of which have cameras.) 

There’s Amazon, which is reportedly developing a new line of consumer AI glasses with a camera after its earlier, camera-less Echo Frames and Carrera Smart Glasses lines failed. (My guess is the problem was Alexa, not the lack of cameras.) Although its Echo Frames have been effectively discontinued — displayed as sold out online — the company is already testing AI glasses with cameras for enterprise use on hundreds of US-based Amazon drivers. 

Amazon Smart Delivery Glasses

Amazon Smart Delivery Glasses

Amazon

Huawei in April launched its AI Glasses for the Chinese market — the lightweight glasses sport a dual-engine AI architecture and integration with its HarmonyOS ecosystem. It’s joined there by Xiaomi’s AI Smart Glasses, which are powered by the company’s HyperOS ecosystem and have cameras for photos and videos and for for reading QR codes. 

Beyond those well-known firms, other companies are making daily-wear AI glasses with cameras in them, including XREAL, Rokid, TCL, Solos, and Brilliant Labs.  

A minority of other companies is focused on glasses without cameras, including Even Realities (G1 and G2); MIRA (MIRA glasses); Dymesty (Dymesty AI glasses); Lucyd (Lucyd Lyte); and Huawei (Eyewear 2).

Get the picture?

Clearly, by the end of the year, the market will be flooded with all manner of AI glasses designed for everywhere, everyday wear. They can use prescription lenses or serve as sunglasses — and most of them will have cameras built in for photos, videos and multimodal AI. 

There’s just one problem: The public hates AI glasses with cameras.

Return of the ‘Glassholes’?

As we learned from Google Glass, a lot of people feel uncomfortable with a camera pointed at them while they’re talking to someone. And that backlash is back with the current generation of AI glasses. 

Because Meta is the market leader in the US, its Ray-Ban Meta glasses have borne the brunt of early disaffection. 

Texas Attorney General Ken Paxton recently launched a formal investigation into Meta’s AI glasses, calling them “a privacy nightmare for Texans,” claiming the devices “can easily invade personal privacy by collecting biometric data and recording Texans without their knowledge or consent.” 

Paxton also claimed the LED light on the glasses, which is designed to alert others that the camera is taking pictures or videos, can be easily defeated. In fact, some modders-for-hire charge up to $100 to physically destroy the LED and TikTok videos describe how to disable or cover the light. 

The pushback is happening elsewhere. Philadelphia courts banned smart Meta AI glasses with recording features from city courthouses and a petition is circulating to ban them from New York City bars and restaurants. MSC Cruise Line banned smart glasses in all public areas. And restaurants, gyms, and workplaces have begun banning smart glasses because of the camera. 

Uncertainty drives some of the concern. People don’t know whether they’re being recorded, and if they are, they don’t know who will see the video. It turns out, those  suspicions might be warranted. 

In February, Swedish publications Svenska Dagbladet and Göteborgs-Posten published an investigation that found Meta contractors in Kenya were reviewing footage from Ray-Ban Meta smart glasses — including “bank details, sex and naked people who seem unaware they are being recorded.” 

The New York Times published an internal Meta memo in February describing plans to add facial recognition (“Name Tag”) to Ray-Ban Meta glasses. The memo said the “political tumult in the United States would distract critics from the feature’s release.”

Then earlier this month, WIRED discovered dormant facial-recognition code called “NameTag” hidden inside Meta’s AI companion app. The code would let Ray-Ban Meta glasses identify strangers by face, a feature Meta publicly claimed “does not exist.” Meta quietly erased the code with an update one day after the exposé was published.

A coalition of civil society organizations wrote Congress to demand that Meta abandon its Name Tag facial recognition plans, calling it a “creepy and unacceptable escalation of surveillance.” The letter warned the technology could be adopted by law enforcement to surveil immigrants, people of color, and nonviolent protesters.

Finally, a range of reports involving AI glasses with cameras in them has emerged in recent months involving secret recording, harassment and extortion. 

The coming conflict over face cams

On one hand, all the biggest consumer electronics companies are either shipping AI glasses with cameras in them or planning to do so — and many smaller companies are looking to do the same. The industry expects AI glasses with cameras to go totally mainstream. 

On the other hand, a growing public, legal and legislative backlash has erupted in opposition to AI glasses with cameras in them. 

One possible outcome is that the public disdain for the cameras will fade, overwhelmed by widespread enthusiasm for the benefits they offer. A new social norm might emerge that mirrors the broad acceptance of everybody having cameras in their phones and pointing them in random directions. 

Another possibility is that companies will be forced by consumer disdain and legal action to abandon cameras in glasses and focus instead on AI glasses that can’t take pictures or use video for multimodal AI input. 

Either way, the war is surely coming. 

Welcome to AI’s creepy era

10 June 2026 at 10:45

For the past few days, I’ve been immersed in Google’s latest vision of the future — an AI-infused dashboard that taps into info from all of your Google app activity and then uses that data to cook up a series of daily “stories” designed to “connect you with what matters.”

And — believe me, I don’t say this lightly — the experience of interacting with this system has me longing more than ever for the past.

The app is called Dreambeans. Google launched it as an experiment last Wednesday, and I was offered the opportunity to skip the standard waitlist and get immediate access to explore it.

I won’t beat around the bush: Using the app really has been an eye-opening, enlightening experience for me. Just not in the way that Google had presumably wanted.

[Get level-headed knowledge in your inbox with my free Android Intelligence newsletter. Something new and useful every Friday — from my keyboard to your email.]

Google Dreambeans and the next phase of AI

In many ways, Dreambeans feels like the ultimate example of everything Google’s been gunning for — and AI in general has been building up to — over the past several years.

With your permission, the app accesses your ongoing activity data from Google Workspace (including such services as Gmail, Google Calendar, and Google Drive) along with Google Search, Google Photos, and YouTube to create an evolving profile of your life and interests. That means everything from who you email to what’s on your agenda, what you’re writing or saving files about, and what sorts of subjects you’re searching for, videos you’re watching, and activities you and your friends, family, and other associates are appearing in throughout photos (and even how you all look in those photos) gets constantly analyzed and processed and used as fodder for a personalized feed that updates a few times a day.

On the surface, it sounds a little like Google Now — the excellent and all-too-short-lived proactive intelligence feature Google added into Android for a while back around 2012.

In practice, though, lemme tell ya: It feels dramatically different. Whereas Google Now felt almost magical in its ability to anticipate what you needed before you ever asked for it — with proactive cards on things like flight statuses based on itineraries in your inbox or flight-related searches you’d performed, traffic alerts based on your typical daily routes or appointments in your agenda, and links to maps for businesses you’d been researching — Dreambeans takes those same basic concepts to a whole other level that ends up feeling creepy and invasive, both in the info it’s offering and in the way it’s presenting it.

And, more broadly, it feels indicative of the way AI is heading in general — not just with this one app or with Google but across the industry and in a style that I think most people are increasingly finding off-putting and will only find ever more intrusive in time.

Now, let’s be clear: I’m no technophobe. Far from it: I love clever tech creations and thoughtful new touches that make our lives easier. Heck, I’ve spent much of my life searching for and writing about such feats. And that’s precisely why my reaction to Dreambeans strikes me as so significant: If I’m this put off by this concept, how will average tech users — most of whom are far less tuned into tech trends and intrigued by interesting new options then I am — react?

I’ll tell you more about what I’ve heard so far in a second. First, let me show you exactly what I’ve been seeing, so you can assess this thing for yourself and see how it comes across to your spidey senses.

Here’s a handful of the Dreambeans “story” suggestions that appeared in the app upon its first day working for me, with a few names and personal details blurred for privacy purposes:

Google Dreambeans AI feed (1)
Some of Dreambeans’ custom “stories” throughout my first day with the app.

JR Raphael, Foundry

I’m honestly not even sure where all of these suggestions came from, but what jumped at me right away were the (occasionally flattering) caricatures of me and my wife and the general sense of invasion from all the slightly too personal stuff and too familiar integration of family members’ names and interests integrated into the material.

For the record: I had been looking into speaker stuff at some point in the not-too-distant past; I’ve never once typed, uttered, or even considered the phrase “hand-loomed textiles” until just now; we had been looking at the arts festival it mentioned; I’ve never specifically searched for or expressed any interest in Scary Movie 6; and I am not into the band Genesis — though, to be fair, I can’t dance.

I showed all this same material to my wife as well as to several other friends and family members I’d categorize more as typical tech users — not tech professionals or card-carrying geeks but just regular people who own and use a variety of devices, as we all do, and rely on ’em for both personal and professional purposes with varying levels of dread, excitement, and/or indifference. Without exception and without any prompting or personal opinions presented to sway them, every single one of ’em responded the same basic way: “Oh. That’s creepy.” And: “I do not like that.” Without fail.

It doesn’t get much better from here, either. Most of the app’s subsequent suggestions have continued to veer just a touch too far onto the “ick” side of the spectrum, as well as occasionally being off-base in some pretty perplexing ways. For instance:

Google Dreambeans AI feed (2)
Nice AirPods, Mr. Apple fan!

JR Raphael, Foundry

For the record on this set: I do love the show Seinfeld — SERENITY NOW! more than ever — though it’s been some time since I’ve actively watched it; I somewhat famously am allergic to Apple products and avoid ’em whenever possible (notice the name of this column, anyone?); I don’t live in the same city as my brother but do find it creepy to have him pictured in ghoulish caricature form and brought randomly into a discussion about Plex (something he wouldn’t even remotely be interested in hearing from me about); and my various editorial newsletters are all powered by a service called Kit — not Beehiiv — which is mentioned in plenty of places both on my websites and throughout my emails.

Also, while my hairline may not be what it once was, I’m (ahem) not that bald yet — thankyouverymuch, Dreambeans.

Another example that I won’t show here was an item that pictured me in overalls working on installing some “coated stainless steel wire for [my] gallery canvases” — a reference to a community art gallery (with all sorts of details wrong and in some cases flat-out fabricated) connected to my mother’s recent passing. It casually mentioned her by name, too, alongside that eerie illustration of me performing a skill I definitely don’t have in my nonexistent home workshop. I don’t think I have to elaborate on how unsettling, unappreciated, and — again — invasive it felt to have that pop up in this feed.

More than anything, what I’ve been feeling while seeing all of this is a combination of (a) egad, it knows too much — especially when it casually name-drops and caricature-pics my wife, kids, and other family members — and (b) at the same time, the info it’s giving me isn’t especially helpful or insightful. It’s mostly just flat, generic, and — well, more or less exactly what you’d expect from something AI-generated.

Google Dreambeans AI feed (3)
Seeing caricatures and personal details about my kids is odd — and, at the same time, neither of my kids actually plays or has any interest whatsoever in soccer.

JR Raphael, Foundry

More than anything, in other words, it’s a combination of creepy and not particularly useful.

Google Dreambeans AI feed (4)
Some of what I’ve seen when opening Dreambeans’ personal “stories.” Yay?

JR Raphael, Foundry

And it’s the “creepy” part that really sticks with me the most.

The fine line Google forgot to avoid crossing

Maybe if the info I’m being served up here were exceptionally useful, this could be a tradeoff I’d be at least a little more likely to accept. Maybe. But in this scenario, it just feels odd and a little too invasive — which I’ve come to realize is a common theme surrounding much of what seems to be the next level of our forced-upon-us AI future.

Take Google’s Gemini Spark, for instance — the “agentic” AI assistant announced at Google I/O that’s meant to be a “proactive” helper tackling tasks on your behalf. David Pierce from The Verge got an early look at the tool in action and called it “the most impressive and terrifying AI experience” he’s had to date, also bringing that “creepy” word into the equation:

I can’t shake the deeply creepy feeling I get from the whole thing. What Spark did feels sort of magical, and very invasive. It’s weird that Spark is so casually telling me the names and ages of my children, reminding me that it knows where I live, and finding information I know for a fact I’ve never volunteered to Google. Intellectually, I know that Google knows an incredible amount about me — add up my emails, my calendar, my photos, and my search history, and you’ve pretty much got me pegged. But seeing Spark treat all that data not as something to be protected, but as something to be mined, just feels bad.

And that, I think, mirrors the exact reaction I’ve been experiencing with Dreambeans. We’ve all always known that Google knows a lot about us, but we’ve also — at least intellectually — understood how all of that data is and isn’t being used. And it’s never been rubbed in our faces just how much the company can figure out about us by putting all the various pieces together and creating an awkward sense of robotic intimacy.

I remember years ago, being in a Google press briefing where someone from the company talked about how much more their systems and services could accomplish but how they deliberately held back on going that far and overdoing the personalization — ’cause even though they had all that info and could make all those connections, they knew (at the time) that people wouldn’t respond well to seeing all their personal activity put together in such shocking ways. They knew (at the time) that most of us weren’t looking for an artificial BFF who knew too much about us. They knew (at the time) that giving us that sensation would cross the line into being creepy.

Well, this just in: That line’s officially been decimated. We’re in AI’s creepy era. And seemingly no one is worrying anymore if it’s actually something any of us want or will appreciate.

It kinda feels now like tech companies are actively rubbing in our faces how much they know about us — and even if there’s nothing truly nefarious going on with what they’re doing, it sure doesn’t feel good. It feels creepy. And at a time when trust in tech titans is shockingly low and most folks outside of the Silicon Valley bubble are feeling more and more frustrated with AI and all of the effects it’s foisting upon us, that isn’t a great look to be giving off.

Put those sensations alongside the sigh-inducing explosion of AI “content creators,” the proliferation of lifeless AI-generated “writing” (been on LinkedIn much lately?), and the troublingly blurry line between photorealistic AI-generated images and actual real-world photographs — not to mention the maddening experience of interacting with an AI bot support agent or encountering the ever-expanding array of AI-powered scams and security threats and AI-generated job cuts, just to name a few other problematic consequences this movement is imposing — and it’s hard not to question if all this purported progress is ultimately more helpful or harmful for us, as living, breathing humans in the real world.

A few months ago, at the three-year mark of Gemini’s launch, I posed the question: Did anyone actually ask for this? And, more pressingly: Is this the future we wanted? As we’re moving now into yet another era of AI innovation and seeing how it’s affecting our lives, it gets tougher every day to imagine many folks outside of the tech industry who’d answer with an emphatic yes.

And, unfortunately, you don’t need any fancy-schmancy AI chatbots to tell you that things are only gonna get more extreme — and, yes, more creepy — from here.

Find the tips and tools that’ll *actually* help you with my free Android Intelligence newsletter. No hype, no nonsense — just useful new stuff in your inbox every Friday, from one (alleged) human to another.

Nextcloud adds Euro-Office to Hub workplace suite, expands AI assistant

9 June 2026 at 19:50

MUNICH — Nextcloud has integrated Euro-Office into its workplace application suite, one of several updates to Nextcloud Hub unveiled on Tuesday that include a new compliance app for large organizations and a program to support developers building for its platform.

The announcements came during the company’s Nextcloud Summit 2026 here.

Euro-Office, announced in March, is billed as an open source, sovereign alternative to Microsoft Office for European organizations keen to reduce their reliance on US tech providers. It consists of four browser-based applications: a document editor, spreadsheet program, presentation tool, and a PDF editor — each enabling collaborative editing. Euro-Office documents can also be opened directly from the Nextcloud Files mobile app.

Nextcloud is one of several European companies that support Euro-Office, which is built on the open-source code base of OnlyOffice and distributed under the GNU Affero General Public License v3 (AGPL v3).

The integraton means Nextcloud users can now choose between two options in Nextcloud Office: Euro-Office and the existing Collabora integration. 

“Euro-Office uses a different architectural approach that can result in a better performance in the browser, a different user experience…, so it’s important that this option is available,” Jos Poortvliet, Nextcloud co-founder and vice president of communications, said at the Tuesday event.

Other changes in the Nextcloud Hub 26 Spring release include updates to Nextcloud‘s Talk video and voice meeting app, including AI noise suppression and the ability to start a call from any Nextcloud Hub app – an addition that will make collaborative editing easier, said Poortvliet. 

For Nextcloud Assistant, there are new AI agent capabilities. In addition to existing capabilities such as managing calendars and tasks, AI agents can now create cards in Nextcloud’s Deck task management app and update information in the Forms app.

There are also improvements to the AI assistant’s interface, which can be moved around to avoid blocking other applications and allow users to copy and paste text more easily without opening another tab. To meet EU AI Act requirements, Nextcloud will make it easier to see which  provider supplies the large language model (LLM) the Assistant runs on.

Nextcloud will also integrate the AI assistant directly into its Nextcloud Office suites via a sidebar chat interface, allowing users to address problems such as errors in the spreadsheet app.

NextCloud AI chat assistant

NextCloud’s AI chat assistant is integrated into the company’s Office suites.


NextCloud

There’s also a new Governance app that helps large organizations — particularly governments and highly regulated industries — meet regulatory requirements with compliance tools to manage data held in Nextcloud Hub. It contains several features,  including sensitivity labels to control access rights; data retention and archive capabilities; and a legal hold option that preserves documents for legal purposes such as a court case.

The Governance app includes a Compliance Manager that provides a compliance score based on an organization’s regulatory requirements, and measures progress towards certain targets. Admins can also search and review documents shared by employees and generate audit reports for compliance. The Governance app is available to Nextcloud Enterprise customers.

Nextcloud also launched a program to support independent software providers interested in building apps on its platform. 

With AI making it easier for developers to build software that integrates with its platform, Nextcloud expects a 10-fold increase in the number of available apps — from 600 now to 6,000 over the next 12 months, according to Nextcloud CEO Frank Karlitschek.

Nextcloud promised to promote apps developed by partners in its App Store and sell subscriptions as part of the ISV program, as well as provide documentation and technical help to customers. In return, developers would provide guarantees to customers around security processes and long-term support.

“We can strengthen our ecosystem, the developers also make some money — because obviously we do a revenue share here — and we leverage the dynamics that we expect from AI coming very soon,” said Karlitschek.

Editor’s note: NextCloud paid for Matthew Finnegan’s travel and hotel costs for NextCloud Summit 2026, but had no editorial role in the creation of this story.

❌