This week we talk software architecture: YAGNI, 80% ready, bad vibes, and LFI. We have some opinions about GPT, and 3 tools to screenshot and video demo your product.
Together, this list effectively constitutes “user activation”. You’ll note the list of events above is really small. It’s restricted so that certain calls to APIs can only happen as a result of those very distinct end-user actions. This prevents end-users from being accidentally (or deliberately!) spammed with popup windows or other intrusive browser dialogs.
With the new Navigation API, you can now show the native spinner + stop button for any asynchronous operation - all you need is a Promise.
Deno I've not jumped on the Deno train, but I like the idea of using browser methods for CLI tools.
React Email This looks interesting: most of the same features as MJML, a simpler JSX syntax, HTML and plain text rendering, and Tailwind CSS support out of the box.
Apple calls them “Home Screen web apps” … OK … and they will support Push API, Notifications API, Badging API, and Service Workers. Also, allow 3rd party browsers to install them (since the engine is always Safari).
(Speculating that this might be a result of the EU putting pressure on Big Tech)
Shots Style up your screenshots with different mockups, frames, backgrounds, and options to keep things interesting.
ScreenRun What if you want to highlight different parts of the UI?
ScreenRun can take a screenshot and turn it into a short video that pans around and points out each feature.
One of the hardest things in software is accepting that YAGNI was the right decision... even when later it turns out that you are, in fact, going to need it.
I'll be spending a good chunk of today reminding myself that I went YAGNI in at least a dozen places on this project and after a year only one of them has so far turned out to be wrong.
Because a friend found this useful yesterday:
Before tackling a problem, figure out whether it's the sort of problem where when you've solved 80% of the problem, you've solved 80% of the problem, or the kind where solving 80% means you've solved 0% of the problem.
This is especially important in security and privacy because that last 5% might be impossible.
We should replace "technical debt" by "bad vibes", so instead of convincing people to "pay down the technical debt" it would be about "removing the bad vibes" and I'm sure it would be much easier.
Also it would probably be more honest considering how some people decide what is and is not technical debt.
Search UI that adds an AI summary to the search results (mistakes and all).
A chat UI that allows you to have full conversations and … well … read this post and judge for yourself. It's like AITA but with Bing as the main character.
❡ What I think is happening:
GPT has no working memory. To make it chatty, it needs your input along with the history of the conversation.
GPT can read a few thousand words, so long conversations have to be truncated or summarized. The GPT does the summarization.
Because the GPT has to understand your input, the (summarized) conversation history, and also do the summarization, it doesn’t take long before errors pile up, it goes off script, or stuck in a loop.
This was "fixed" last Friday by limiting conversations to 5 messages, which is the equivalent of fixing a memory leak by making the server restart every hour.*
(* Which is not a bad idea. Some memory leaks are hard to fix — eg OS, VM, 3rd party library — easier to build a server that can restart with zero downtime. It's called “resilience”)
It is long though, I read it in three parts. And it doesn't talk about ChatGPT per se, but rather the GPT behind ChatPGT, which feels like a clickbait to remind you Wolfram Alpha exists. Nonetheless, a good read.
the zeroeth law of robotics is that a robot may not decrease shareholder value, or, by inaction, allow shareholder value to decline
Business Side
👏 I think some major changes are going to happen to search and social media in the coming years.
I don't think LLM will measure up to inflated expectations. It will not have quite the immediate world-changing effect on its own.
Rather, it will be a combination of things: big players reaching the point of maximum extraction, lost consumer trust, during major economic changes, and top that with AI.
All these factors together, something is bound to happen.
I actually think western social media platforms are entering somewhat of a death spiral. They're simultaneously losing users to TikTok and revenue to brands sponsoring influencers instead of buying ad space. They're being forced to find ways to get users to pay for the platform, undermining usability in the process. …
Zero-Clicks Study Looks at “zero-click” searches — when you do a search and find the answer in the search results, without clicking on any link:
On desktop, 25.6% of searches are zero click
On mobile, only 17.3% are zero click
10% of the time users move from one search to another
Most often (6.1%) from main search to image search
Very rarely (0.9%) on to the next page of search results
Mobile users are far more likely to engage in multiple
The internet broke it Don’t attribute to malice that which can be attributed to “we lost ad revenue and laid off our reporters”:
And, so, a whole lot of people, especially young people who weren’t around for the chaotic move 15 years ago from a television-led media environment to a deeply flawed digital one — find it very easy to assume there’s some kind of large-scale conspiracy to not cover the literal mushroom cloud of toxic gas hovering over the midwest right now. Because what else could explain why CNN isn’t faster, better, and more interesting than TikTok?
This week we have a cheat sheet for using React, we learn how to use negative prompts, and FaceID-lock our iPhone apps. 😎 Labnotes (by Assaf Arkin) Weekend Reading — 🎈 BRB, went ballooning By Assaf
This week we ask who's responsible for technical decisions, dig into the origins of spaghetti code, discover a new dopamine loop, talk a lot (too much?) about generative AI, and wrap it up with a
This week is loaded with AI. We use it to summarize and de-summarize, help us SQL, spoken words, and handwritten notes. We also settle a semantic debate and cure our Python envy. 😎 Labnotes (by Assaf
This week we load up on SVG, pay back tech debt, fight name complexity, learn how to build ChatGPT, and go in search of SF/Mission super burrito. 😎 Labnotes (by Assaf Arkin) Weekend Reading — 👌 Ctrl-
This week we compare JS component libraries, steer clear of YAML, impressed by text-to-draw tech, and dream of a giant dog bed. 😎 Labnotes (by Assaf Arkin) Weekend Reading — 👋 Shut the front door By
ISSUE #434 24th of November 2024 Hi Kotliners! Next week is the last one to send a paper proposal for the KotlinConf. We hope to see you there next year. Announcements State of Kotlin Scripting 2024
More Time to Write A fully functional clock that ticks backwards, giving you more time to write. Tech Stuff Martijn Faassen (FWIW I don't know how to use any debugger other than console.log) People
Also: Best Outdoor Smart Plugs, and More! How-To Geek Logo November 23, 2024 Did You Know After the "flair" that servers wore—buttons and other adornments—was made the butt of a joke in the
JSK Daily for Nov 23, 2024 View this email in your browser A community curated daily e-mail of JavaScript news React E-Commerce App for Digital Products: Part 4 (Creating the Home Page) This component
What (and who) video-based social media leaves out. Here's a version for your browser. Hunting for the end of the long tail • November 23, 2024 Not Ready For The Camera Why hasn't video
Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Microsoft. You are given an string representing the initial conditions of some dominoes.
These two maps compare the world's tallest countries, and the world's shortest countries, by average height. View Online | Subscribe | Download Our App TIME IS RUNNING OUT There's just 3
November 23, 2024 | Read Online Subscribe | Advertise Good Morning. Welcome to this special edition of The Deep View, brought to you in collaboration with Convergence. Imagine if you had a digital