Blogccasion
フィード

Playing with AI inference in Firefox Web extensions
Blogccasion
Recently, in a blog post titledRunning inference in web extensions,Mozilla announced a pretty interesting experiment on their blog:We've recently shipped a newcomponentinside of Firefox that leveragesTransformers.js […] andthe underlying ONNX runtime engine. This componentlets you run any machine learning model that is compatible withTransformers.js in the browser, with no server-side calls beyond the initialdownload of the models. This means Firefox can run everything on your deviceand avoid sending your data to third parties.They expose this component to Web extensions under the browser.trial.mlnamespace. Where it gets really juicy is at the detail how models are stored(emphasis mine):Model files are stored using IndexedDB and shared across originsTypically when you develop an app with Transformers.js, the model needs to becached for eachorigin separately,so if two apps on different origins end up using the same model, the model needsto be downloaded and stored redundantly. (Together
11日前

Testing browser-use, a scriptable AI browser agent
1

Blogccasion
I'm not a big LinkedIn user, but the other day, my Google colleague FranziskaHinkelmannposted somethingabout a project calledbrowser-use that caught my eye:Got low stakes repetitive tasks in the browser? Playwright + LLMs (Gemini 2.0)to the rescue! Super easy to make somebody else cough agents cough do thework for you, especially if you have to repeat a task for many rows in aGoogle Sheet.After seeing her demo, I went and tried it out myself. Here are the steps thatworked for me on macOS:Install uv following theirinstallation instructions.(The usual caveat of first checking the source code before pasting anythingin the Terminal applies.)curl -LsSf https://astral.sh/uv/install.sh | lessCreate a new Python environment and activate it. This is from browser-use'squickstart instructions.uv venv --python 3.11source .venv/bin/activateInstall the dependencies and Playwright.uv pip install browser-useplaywright installCreate a .env file and add your OpenAI API key in the formOPENAI_API_KEY=abc1
13日前

Eleventy (11ty) year, year-month, and year-month-day indexes
Blogccasion
I love hackable URLs. A hackable URL is a URL that makes sense to a humanreader, and where the human reader can guess what to change to get to anotherpage. For example, if you look at the URL of this very blog post,https://blog.tomayac.com/2024/11/02/eleventy-11ty-year-year-month-and-year-month-day-indexes/,what would you expect happens if you hack the URL to any of the followingvalues?https://blog.tomayac.com/2024/11/02/ lists all posts thatwere published on November 2, 2024.https://blog.tomayac.com/2024/11/ lists all posts that werepublished in November, 2024.https://blog.tomayac.com/2024/ lists all posts that were publishedin 2024.https://blog.tomayac.com/ leads to this blog's home..eleventy.js 🔗If you have a URL structure that's similar to mine, feel free to copy therelevant excerpts quoted in the following snippet frommy .eleventy.jsand add them to your .eleventy.js. The _.chain() function is from thelodash library.// Year collectioneleventyConfig.addCollection('postsByYear', (co...
4ヶ月前

My response to the UK Competition and Markets Authority
Blogccasion
The Open Web Advocacy (OWA) initiative intheir recent blog postApple adopts 6 of OWA's Choice Architecture Recommendationshighlighted the six recommendations that Apple has adopted from the group'srecommendations to comply with the EU's Digital Markets Act in relation tobrowser defaults and choice screens.In parallel, the UK Competition and Markets Authority (CMA) launched a MarketInvestigation Reference into mobile browsers and cloud gaming and have recentlypublished their list of remedies. While a great step in the right direction, theOWA aren't completely happy with the list.As a Web developer who addresses people across all platforms and regions,including iOS/macOS users in the UK, I followed theOWA's requestand sent the following email to the CMA. I am sharing it here for transparencyand encourage you to contact them, too, if you're concerned about the future ofthe Web.Dear CMA,First, a disclosure: I work for Google's Chrome team ([email protected]), but inthis email, I fully speak
6ヶ月前

The Web Conf 2024, Singapore: Trip report
Blogccasion
Background 🔗The Web Conference (formerly known asWWW) is an international conference focused onexploring the current state and the evolution of the Web through the lens ofdifferent scientific disciplines, including computing science, social science,economics, and political sciences. It's organized by the Association forComputing Machinery (ACM) Special Interest Group on theWeb (SIGWEB) and is held annually in a differentlocation around the world. The 2024 conference took place in Singapore from May13 to 17. It's attended by 70% academia and 30% industry.Google was a Gold sponsor,together with TikTok.Conference 🔗Day 1 🔗Online trust day 🔗Keynote I: Factuality Challenges in the Era of Large Language ModelsSpeaker:Dr. Preslav Nakov,Professor and Department Chair of NLP, MBZUAIFact-checking the output of LLMs: Decompose the output of an LLM into itsindividual claims, decide which are check-worthy, check one-by-one:Factcheck-Bench: Fine-Grained Evaluation Benchmark for Automatic Fact-che...
9ヶ月前

So, what exactly did Apple break in the EU?
Blogccasion
Disclaimer, just in case… 🔗I work for Google on the Chrome Developer Relations team. But for this post, Iwant to make it super duper clear that I'm speaking not on behalf of myemployer and that all views and opinions expressed in this blog post are purelymy own: Thomas Steiner's, the guy commonly known for his avatar with a greenhat, but today in my pajamas having my second morning coffee. Oh, thanks forasking, the two cats are Lluna (yes, with double 'l', it means moon in Catalan)Norris, looking at the camera, and Skinny Norris, looking out of the window.How I noticed 🔗With this out of the way, it's time to dive in and answer the question of whatexactly did Apple break in the EU? I'm physically located in the European Unionand my iPhone has a German SIM card. On January 30, 2024, I sent the followingtoot with attached screenshot(cropped here):Hope this is a bug in the beta, but opening previously installed Home ScreenWeb apps on iOS 17.4 (21E5184i) results in a prompt:Open "Example ...
1年前

Lenovo ThinkVision P27h-20 screen randomly turns off when connected to MacBook Pro
Blogccasion
TheLenovo ThinkVision P27h-20screen I get from work is a decent 27 inch screen. Coming from the Retina screenof my laptop thatI worked on for a long time,I was initially (and still am) not impressed by the resolution of 2560×1440. Ittook some time to get used to the low resolution on such a big screen, but itgets the job done…My biggest gripe with the screen was that it just randomly turned off whenconnected to my MacBook Pro in clamshell mode. I finally found the culprit aftercombing through theConsole system logs forany trace for the longest time. I found out that the MacBook Pro thought thepower was changing from grid to battery and vice versa (all while beingconstantly on-power), and whenever it did that, the screen would turn off.The solution was to disable the "Smart Power" option in the screen's settings.According to themanual,the "Smart Power" option does the following:Smart Power intelligently distributes power to connected USB and USB Type-Cdevices, maximizing power supply ef
1年前

Wasm meetup Munich: A Wasm New Year! trip report
Blogccasion
Background 🔗The WebAssembly meetup in Munich has a history thatreaches back to 2018.After a long Covid-related hiatus and a lack of organizers to pick up the ballagain, A Wasm New Year! was the first event under the new organizing team.Google always had a strong presence at the events, so to continue the traditionI happily agreed to offer a talk at the first post-Covid meetup.Talks 🔗Compiling to and Optimizing Wasm with Binaryen 🔗Speaker: Thomas SteinerIn the first half of the talk, I showed at the example of a toy programminglanguage that I called ExampleScript how to write a compiler with Binaryen thatcompiles the toy programming language to WebAssembly. In the second half, I thendemonstrated various optimization techniques in Binaryen and ways to use themfrom JavaScript with Binaryen.js and from the command line with tools likewasm-opt and wasm-merge.Resources:Compiling to and optimizing Wasm with BinaryenLLM inference with WebAssembly 🔗Speaker: Sven PfennigIn this talk, Sven sh...
1年前

W3C TPAC 2023 Trip Report
Blogccasion
Background 🔗The 2023 edition of the World Wide Web Consortium (W3C) Technical Plenary andAdvisory Committee (TPAC) meeting took place from September 11 to 15 in theMeliã hotel in Seville,Spain. The hotel is located right next to thePlaza de España,a major Spanish tourist destination. The setup of the meeting was hybrid, and onsite, strict Covid precautions were enforced, even though the pandemic wasdeclared to be "over". Despite these methods, several people caught it. This ismy personal report as a representative of the Chrome DevRel team at Google.Monday, Tuesday 🔗Web Applications Working Group 🔗I attended theWeb Applications Working Group meetings onMonday and Tuesday. After a quick rundown of all the APIs in scope for theworking group, the first topic was theScreen Orientation API,which was mostly driven by questions and improvement proposals the WebKit folkshad after implementing it.Next, the group discussed the Badging API, which is only available afterinstallation, and browse...
1年前

Web Apps on macOS Sonoma 14 Beta
Blogccasion
Executive summary 🔗With macOS Sonoma, Apple goes all-in on the concept of installable web apps.They're highly integrated in the overall macOS experience and don't give awaytheir web roots by not showing any Safari UI at all.Testing environment 🔗Tested on macOS Sonoma 14.0 Beta (23A5257q) with Safari version 17.0(19616.1.14.11.11). It probably doesn't matter, but the testing device was a13-inch, M1, 2020 MacBook Pro.Install experience 🔗On macOS Sonoma, you can add a website—any website, not just apps with amanifest—to your Dock. Go to the Share icon and click Add to Dock, oruse the menu item File > Add to Dock.Adding an app via the Share icon.Adding an app via the File menu.You can adjust the name and icon if desired. The URL is the URL you're on forpages without a manifest, or the start_url for pages with a manifest. It can'tbe changed. For pages without an icon, Safari will create a fallback icon basedon the first letter of the page's title.👀 Observation: Unlike on iOS/iPadOS, you...
2年前