ES EN

June 1 to 15 (#11 of 2024)

2024-06-21

Let's go over what happened in the last fortnight, from June 1 to 15. This issue is very focused on Apple and its developer conference.

Thank you very much for reading.

News

1. In the previous issue of the newsletter, I mentioned that Apple's WWDC24 was about to begin.

WWDC24 arrived.

On June 10, Apple held the conference keynote and introduced the new versions of its operating systems: iOS 18 (preview and press release), iPadOS (preview and press release), macOS Sequoia (preview and press release), watchOS 11 (preview and press release), visionOS 2 (press release), and tvOS 18 (press release). These operating systems are already available as betas and will be released in the autumn, presumably alongside the new iPhone lineup.

As always, the most interesting part of the conference is the developer material. From Monday the 10th to Friday the 14th, Apple released dozens of videos, guides, and documentation that now need to be reviewed if we want to build apps for any of its platforms. I am noting the links here so I have them handy:

  • Sessions: more than 120 videos, between 10 and 30 minutes each, explaining the new features introduced across platforms and technologies: Swift, Design, Spatial Computing, Graphics, and more.

  • Selected sessions: a curated Apple list of around 60 sessions, grouped by technology.

  • What's new for developers: a page summarizing new features across platforms and technologies.

  • Documentation: the documentation section with all the details on new APIs and capabilities.

  • Guides: a hub page with guides to the new features of different platforms and technologies.

  • Pathways: a page that gathers step-by-step introductions for getting started with Apple's various platforms and technologies.

Personally, what I value most about WWDC is that it showcases the work done by hundreds of Apple engineers over the course of a year. That may be an occupational bias from being a software engineer, or perhaps the perspective of a father with daughters in their twenties who are just starting their careers, but when I see all these materials I mostly think about the young people who built them, and about their effort and their hopes.

2. One of the announcements I was most curious about was Apple's stance on AI. In the previous issue I also listed the questions I expected the conference to answer.

The answers arrived, and so did a certain amount of confusion. Of all the announcements, the one that had the biggest impact was the one Apple least wanted to emphasize: the deal with OpenAI. Apple wanted the focus to be on its own work and its own features, but the agreement with Sam Altman's company immediately captured media attention and somewhat overshadowed the main message.

However, in the days that followed, as specialized media paid more attention to the features Apple had presented, the company's real idea started to sink in. The marketing team's masterstroke worked very well: the wordplay of turning AI, Artificial Intelligence, into Apple Intelligence.

Here are a few links.

In Spanish:

In English:

And links from Apple itself:

Of all the explanations I have seen, the one I liked most is Apple's own video, "Apple Intelligence in 5 minutes":

One of the core ideas behind Apple Intelligence is to provide concrete features powered by generative models built by Apple itself, both text models, LLMs, and image models. Apple is deliberately stepping away from the OpenAI and Microsoft idea of a "general-purpose" agent that does everything and requires the user to define its behavior with a prompt.

When Apple uses the phrase "AI for the rest of us" on its site and in its ads, it is reviving the original campaign from forty years ago that introduced the Macintosh.

"The rest of us" are the people who do not want complications, people who want to use AI for specific things without configuring anything or writing advanced prompts. All the features are based on generative models, but the whole job of crafting the prompt and communicating with the model is hidden away or reduced to a minimum. We only have to choose a few options in an intuitive way, just as we do when using any app that is not explicitly an AI app. And in those cases where a prompt is needed, such as to generate an image, it is kept to the bare minimum.

This is a key part of Apple's approach: finding concrete things that a generative model can do and that are useful to ordinary users, "the rest of us".

The other key part of Apple's approach is to exploit the fact that it has access to all our information and apps on our phones in order to take the first steps toward turning Siri into a personal assistant that can look at our calendar, our emails and messages, and interact with our apps on our behalf. For now they have not gone very far and have shown a very simple example: finding out what time your mother's flight arrives. It is a good place to start, and as apps expose more options we will see more advanced examples, provided the on-device LLM that supports Siri is able to manage them correctly.

I will finish this section by listing the specific features Apple presents in the video, using the names created by its marketing team:

  • Writing Tools

  • Genmoji

  • Image Playground

  • Image Wand

  • Siri - Natural Language

  • Personal Content

  • Priority Notifications

  • Memory Movie

There are a few more features that do not appear in the video, such as those related to Photos and photo editing. And Apple will keep improving these capabilities and adding new ones over the coming years. We will look at them little by little and discuss some technical details.

If this WWDC made one thing clear, it is that Apple does not plan to stay behind the rest of the industry when it comes to AI. Even if, for Apple, it is "Apple Intelligence" rather than "Artificial Intelligence".

3. On June 11, François Chollet (fchollet.com), the well-known machine learning researcher and author of the excellent book Deep Learning with Python, introduced the ARC Prize (arcprize.org and X), organized together with Mike Knoop (mikeknoop.com). It is a competition with a one-million-dollar prize for solving a problem that LLMs have so far failed to crack. The Dwarkesh podcast interview where Chollet and Knoop present the prize is very much worth watching.

The original ARC problem, Abstraction and Reasoning Corpus, was proposed by Chollet himself in a 2019 paper (On the Measure of Intelligence - arxiv.org) as a way of measuring general intelligence. The challenge is to find patterns in pairs of figures so that you can infer what the next figure should be.

The following illustration shows an example of the figures used in the test. They are drawn on a grid, and there is a pattern that relates the input figure to the output figure. The task is to identify that pattern so that we can determine what the output should be.

Example figures from the ARC test. Can you identify the pattern and guess what the next figure should be?

Can you spot the pattern in the three examples? What would the resulting figure be?

It is not difficult for humans, who can easily solve 85% of the tasks. The best AI systems, however, do not get past 34%.

In this case, the solutions are the following:

  • In the pairs on the left, the pattern is: "fill the gap inside the purple squares with a yellow cell". The solution would be four purple squares with yellow cells in the corresponding corners.

  • In the middle pairs, the pattern could be expressed as: "move the light-blue cells that sit above the dark-blue ones down to the bottom line". The solution would be a figure with a bottom row of dark-blue cells, except that cell 3 and the last one would be light blue. Above each of them there would be a dark-blue cell.

  • In the pairs on the right, the pattern could be described as: "rotate the figure 180 degrees". The solution would be a figure with a first row gray-gray-blue, a second row blue-gray-gray, and a last row blue-blue-blue.

The competition is hosted on Kaggle (ARC Prize 2024 - kaggle.org), and the prize will go to whichever team manages to build an AI system that matches human performance and reaches 85% accuracy. The submission deadline is November 11. There are already almost 150 teams submitting algorithms (Leaderboard - kaggle.com), and for now the best team is at 38%.

Will someone solve it this year? Will the prize remain unclaimed? Will we be closer to AGI by the end of the year? We will know in a few months.

4. Swift is my favorite programming language. It is modern, safe, multiparadigm, expressive, and efficient. Now, in June 2024, it has just turned 10 years old and version 6 has been announced. A lot has happened since Chris Lattner, its main creator, introduced it on June 2, 2014 at WWDC14.

The following year, toward the end of 2015, we decided to include Swift in our second-year Computer Engineering course, Programming Languages and Paradigms, replacing Scala, which we had been using to explain what a modern language looks like when it integrates the functional programming paradigm with the object-oriented one. Swift had been designed from the beginning with exactly that idea in mind, integrating concepts from functional languages such as Haskell and object-oriented languages such as C# or Objective-C. We also confirmed that Apple had kept Lattner's promise that the language would be open, and that there was a Linux compiler that worked perfectly, so there would be no problem in using it for course assignments.

Within just a few years Swift evolved through several versions (Swift History - wikipedia.org). Starting with version 4, in 2017, the language stabilized and its basic syntax stopped changing very much. In recent years there have been continuous improvements through the Swift Evolution process. Every change starts as a proposal published on a public forum, gets discussed and modified, and is eventually accepted or rejected. Accepted proposals are added to the list of approved proposals (swift-evolution - github.com) and then implemented in the compiler (swift - github.com) so they are ready for the next release.

Version 5 of the language was released in 2019 and since then there have been many changes in minor releases. With the regularity of a clock, Apple has shipped two minor versions per year: 5.0 and 5.1 in 2019, 5.2 and 5.3 in 2020, 5.4 and 5.5 in 2021, 5.6 and 5.7 in 2022, 5.8 and 5.9 in 2023. This year version 5.10 has been released, and at WWDC Apple presented Swift 6 (WWDC24: What's new in Swift - apple.com), which will ship in September.

On June 12, the ATP podcast released a very interesting special episode interviewing two Apple engineers responsible for the language and its evolution: Holly Borla and Ben Cohen.

Today Swift is a very broad and complex language, capable of everything from concurrent programming using actors to programming very low-level microcontrollers. But it is also a language that supports gradual learning. It is very easy to start with, and it could perfectly well serve as the first language in an introductory programming course. All the necessary documentation is in The Swift Programming Language, starting with the tutorial A Swift Tour.

My two weeks

I already own the domain domingogallardo.com, but there is nothing there yet, just an nginx server. I promise I will start building the website in September.

Films

As soon as it premiered on Netflix, we watched Godzilla Minus One (letterboxd) on our Friday film night.

Great poster for Godzilla Minus One.

My expectations were very high, and it disappointed me a little. I was expecting a somewhat deeper film, with more serious themes. I had read that it explored the parallel between Godzilla and the atomic bombs dropped on Japan, but I did not really see much of that; it felt to me like another Godzilla movie, a bit militaristic and not aiming for much beyond that. That said, the postwar Japan atmosphere is very well done and the special effects are excellent.

I still liked it a lot and it left me wanting to see the next one. It seems the director, Takashi Yamazaki, wants to continue the saga.

TV

Two series stood out for us this fortnight: Muertos S.L. (filmaffinity) on Movistar+, and season 3 of The Morning Show (filmaffinity) on Apple TV+.

I must be one of the few Spaniards who had never watched anything by the Caballero brothers. I had not seen Aqui no hay quien viva, La que se avecina, or Machos alfa. But we tried this one and had a great time. They go a bit too far with black humor now and then, but most of the time it made us laugh out loud.

Excellent cast, with hilarious characters you recognize instantly. Everyone is great, and together with very entertaining scripts they make it the comedy that has made me laugh the most lately.

I also really liked the latest season, season 3, of The Morning Show. I thought it was the best season so far, and it keeps getting better episode by episode until the final fireworks.

The acting is excellent across the board. I love Billy Crudup, who takes Cory Ellison to remarkable places, and also Greta Lee, who brings great nuance to Stella Bak.

Books

I finished The Dark Forest, from Liu Cixin's trilogy. I had already read it a few years ago and reread it because of the Netflix series. I liked it a lot again, especially its scientific ideas and speculations. That said, the characters and their relationships are stereotyped and dated; it feels like a book written in the 1950s. But the scientific side and the suspense make up for that. It has extremely original ideas and scenes that will be amazing to see on television. I cannot wait to see "the droplet".

DALL-E drawing of "the droplet" from The Dark Forest.

For now I have paused the trilogy. I will return to it when the next season of the Netflix series gets closer. I still have the last book left, which I also read a long time ago and which was the one I liked most (I gave it 5 stars on Goodreads).

The book I have just started is the continuation of Dune, Dune Messiah, by Frank Herbert. Twelve years have passed since the end of Dune and Paul Atreides has consolidated his power as Emperor and spread his jihad across the galaxy.

I am only a couple of chapters in and it is going very well. Let's see if by the next issue I have finished it.


See you in the next fortnight.