Bruno Pedro


October, 2024

Permalink: 20241010161954

Found at “Tenno” on 2024-10-10 16:19:54 +02:00.

You can think of Tenno as a mix of Word and Excel with a touch of Obsidian, Markdown and Javascript.

Permalink: 20241009160929

Found at “Potluck: Dynamic documents as personal software” on 2024-10-09 16:09:29 +02:00.

it’s critical that the system can provide immediate feedback as a user types and help them develop consistent expectations for how the system will interpret their text.

Permalink: 20241008222032

I’ve been using the first prototype of my API Assistant for a couple of weeks, and it feels like magic. The prototype automatically creates an API server based on the content of an OpenAPI document. I don’t need to write any code or generate any “server stubs” to have my API running. It just updates itself every time I change the OpenAPI document.

Permalink: 20241006153042

Found at “Prototyping APIs with OpenAPI - by Bruno Pedro” on 2024-10-06 15:30:42 +02:00.

I built a personal system for interpreting OpenAPI documents and using them as the only thing needed to run an API

September, 2024

Permalink: 20240929180145

Found at “Alan Kay On Messaging” on 2024-09-29 18:01:45 +02:00.

The key in making great and growable systems is much more to design how its modules communicate rather than what their internal properties and behaviors should be.—Alan Kay

Permalink: 20240927112717

Found at “[1802.07068] Talent vs Luck: the role of randomness in success and failure” on 2024-09-27 11:27:17 +02:00.

if it is true that some degree of talent is necessary to be successful in life, almost never the most talented people reach the highest peaks of success, being overtaken by mediocre but sensibly luckier individuals

Permalink: 20240923221223

Found at “The Intelligence Age” on 2024-09-23 22:12:23 +02:00.

(…) humanity discovered an algorithm that could really, truly learn any distribution of data. To a shocking degree of precision, the more compute and data available, the better it gets at helping people solve hard problems.—Sam Altman

Permalink: 20240919163401

Found at “Paper Programs” on 2024-09-19 16:34:01 +02:00.

I liked how you could physically hold a program in your hands, and then put on any surface in the building, where it would start executing, as if by magic.

Permalink: 20240918153643

Found at “howard rheingold’s | tools for thought” on 2024-09-18 15:36:43 +02:00.

A few of the pioneers of personal computing who still work in the computer industry can remember the birth and the dream

Permalink: 20240912192817

Found at “Learning to Reason with LLMs | OpenAI” on 2024-09-12 19:28:17 +02:00.

We are introducing OpenAI o1, a new large language model trained with reinforcement learning to perform complex reasoning.

Permalink: 20240912141406

Found at “Tidy data” on 2024-09-12 14:14:06 +02:00.

Tidy datasets are easy to manipulate, model and visualize, and have a specific structure: each variable is a column, each observation is a row, and each type of observational unit is a table.

Permalink: 20240911114014

A new omniauth-saml RubyGem version has been released. It mostly fixes security issues related to SAML signatures.

Permalink: 20240910095600

Found at “Why GitHub Actually Won” on 2024-09-10 09:56:00 +02:00.

We cared about the developer experience and had the creativity to throw away assumptions about what it was supposed to be and build how we wanted to work. Everyone else tried to build what they thought they could sell to advertisers or CTOs.

Permalink: 20240908154603

Extensive use of glass in architecture. (…) the extensive use of glass makes the walls appear to be so light that they seem to negate the conventional laws of tectonics.—Sigel, Gilbert Lupfer & Paul. Gropius. Germany: TASCHEN, 2017. Image

Permalink: 20240908145842

Found at “API Complexity Is a Lie - by Bruno Pedro” on 2024-09-08 14:58:42 +02:00.

Anyone telling you that working with APIs is hard isn’t telling the truth. What is hard isn’t the API. It’s all the tools, processes, and technical language surrounding it.

Permalink: 20240908142926

(…) design should not dominate things, it should not dominate people. It should help people.—Dieter Rams

Permalink: 20240904141932

Found at “11 · Universal comments” on 2024-09-04 14:19:32 +02:00.

When building this system, we aimed to find a minimal API that expresses only the app-specific parts of commenting.

August, 2024

Permalink: 20240830163323

Helping people understand the complexity of navigating enterprise CI/CD tools is under-appreciated. With APIs, it’s not easy to go from having just an idea and go through the whole lifecycle to something that’s running and deployed in production. Whoever understands how that’s done—and can do it—has an advantage over those who specialize in just one or a few steps of the process.

Permalink: 20240828152850

Found at “HTTP Mocking | Prism” on 2024-08-28 15:28:50 +02:00.

If a response has an example, it will be used for that response. If there are multiple examples, then they can be selected by name.

Permalink: 20240823163521

It’s taken me years to come to the conclusion or to the belief that probably the only thing one can really learn is the capacity to be able to change.—Philip Guston

Permalink: 20240822132014

Found at “Semantic Versioning 2.0.0 | Semantic Versioning” on 2024-08-22 13:20:14 +02:00.

Should you increase the API version when deprecating one or more operations?

Deprecating existing functionality is a normal part of software development and is often required to make forward progress. When you deprecate part of your public API, you should do two things: (1) update your documentation to let users know about the change, (2) issue a new minor release with the deprecation in place. Before you completely remove the functionality in a new major release there should be at least one minor release that contains the deprecation so that users can smoothly transition to the new API.

Permalink: 20240820155851

Found at “Seth’s Blog” on 2024-08-20 15:58:51 +02:00.

If the writing you’re doing doesn’t need to be in an idiosyncratic voice, take your memo, paste it into claude.ai and say, “please rewrite this to make it clear, cogent, positive and concise.”

Permalink: 20240820091836

So naive…

Found at “GitHub - wasi-master13ft: My own custom 12ft.io replacement” on 2024-08-20 09:18:36 +02:00.

It pretends to be GoogleBot (Google’s web crawler) and gets the same content that google will get. Google gets the whole page so that the content of the article can be indexed properly and this takes advantage of that.

Permalink: 20240819154100

I’ve been out walking

I don’t do too much talking these days

These days

These days I seem to think a lot

About the things that I forgot to do

And all the times I had

A chance to

—Nico

Permalink: 20240814162057

Found at “Things I learned from teaching” on 2024-08-14 16:20:57 +02:00.

Getting people to code in person is actually quite difficult, and if there’s only one of me, I can’t keep up with every student at once.

Permalink: 20240814092115

Found at “Using OpenAPI to Document the API Operations You Consume” on 2024-08-14 09:21:15 +02:00.

You could use the OpenAPI document as a source of truth for all the APIs you consume. Instead of having to update all the code that consumes third-party APIs you could simply make it read the OpenAPI document and grab the details of the operation you need.

Permalink: 20240807143422

Found at “API Governance Delivers Quality - by Bruno Pedro” on 2024-08-07 14:34:22 +02:00.

How do you unpack the notion of governance that Seth Godin shares? If governance antagonizes with politics, then what are the forces driving it? Is the role of governance to give an excuse to who’s leading to enforce their opinions? I don’t think so. I wrote about it before and I think governance is what drives quality. In the world of products that’s the quality consumers perceive. In the world of politics that’s the quality of life of a country or an administrative region.

Permalink: 20240807123028

Found at “Politics vs. governance | Seth’s Blog” on 2024-08-07 12:30:28 +02:00.

Governance is the serious business of taking responsibility for leadership.

Permalink: 20240807093218

Lately, I’ve been feeling the internet speed at home is slower than it could be.

I’ve recently moved and, while before I had a 10Mbps connection in the room where I usually type from, now I have everything wired to reach the maximum available speed. So, I was surprised to get ~100Mbps and not more than that. I finally found what the problem was. I was using a CAT5 Ethernet cable. I quickly replaced it with a CAT5e and the problem was solved. I’m now getting speeds of over 500Mbps, which feels fast.

Permalink: Starting from scratch

Sometimes in life, you’re surprised with a situation that takes you a few steps back. Or, all the way to step zero. The first reaction is to panic. To get into a survival mood. To try to get back what you lost at all costs as quickly as you can.

While the change in the situation itself is a fantastic learning opportunity, starting from scratch is a gift. Starting from scratch gives you the chance to reinvent yourself. Of rethinking who you really are. Answering questions such as “Was I doing what I really wanted to be doing?” Or, “Was I being real to what I believe?” More often than not, the answers aren’t positive.

That’s why I see starting from scratch as a way to be born again. When you have nothing to lose, you’re free to do whatever you want. Embracing change is more powerful than fighting it.

Permalink: 20240802112814

Found at “What are you thinking about? | Seth’s Blog” on 2024-08-02 11:28:14 +02:00.

What are you working on? When will you change your mind? What can you learn, what can you challenge?

July, 2024

Permalink: 20240708220418

Found at “The Right Kind of Stubborn” on 2024-07-08 22:04:18 +02:00.

The persistent are attached to the goal. The obstinate are attached to their ideas about how to reach it.

Permalink: 20240708093811

Found at “It Needs to Scale | API Evangelist” on 2024-07-08 09:38:11 +02:00.

I don’t trust API providers, and I don’t trust API service providers anymore. I don’t trust them to be good stewards of API search indexes.

Perhaps the vision for APIs.io is that it grows by creating a federated network of API consumers.

Permalink: 20240705144952

Found at “Deactivating an API, One Step at a Time” on 2024-07-05 14:49:52 +02:00.

There are times when you have to stop serving an API. It might be that you want to replace it with a new, more capable version, or the features the API was providing no longer make sense. Whatever the reasons, what’s important is that no one depends on the API you’re about to kill. Otherwise, the consequences can be unpredictable.

API deactivation stages. The five stages of API deactivation: consumer limitation, consumer discovery, API deprecation, API sunset, and API deactivation. As you progress through the API deactivation stages the number of consumers decreases. Image

Permalink: 20240703165112

Found at “The Reasons for Using HTTP POST or PUT | API Evangelist” on 2024-07-03 16:51:12 +02:00.

Why Stripe API uses HTTP POST when it could use PUT?

The answer was simple, their customers utilized integration solutions that couldn’t support HTTP PUT

Permalink: 20240701220650

Found at “An Open Letter to the United Nations” on 2024-07-01 22:06:50 +02:00.

The Internet is an unusual technology because it is fundamentally distributed. It is built up from all of the participating networks.

Permalink: 20240701122452

Found at “The simple way to get better at business writing | Seth’s Blog” on 2024-07-01 12:24:52 +02:00.

Don’t do business writing.

Permalink: 20240701093005

Found at “Documentation | Pipes” on 2024-07-01 09:30:05 +02:00.

you can think of Pipes as a visual programing editor specialized on feeds, or a visual shell, or simply as a glorified feed configurator

June, 2024

Permalink: 20240627230846

Found at “(2) Fill the Gaps between API Consumer Lifecycle Stages” on 2024-06-27 23:08:46 +02:00.

API documentation can be so much more than API documentation. [It] can be the thread connecting all the stages of the API consumer lifecycle.

Permalink: 20240627230512

Found at “Making the Kinopio Source Code Public” on 2024-06-27 23:05:12 +02:00.

delivering software is more like delivering a gooey crying baby. It’s alive. Squirming, growing, and changing because the technologies it relies on do too.

Permalink: 20240621234746

Found at “Pluralistic: Against Lore (27 May 2024) – Pluralistic: Daily links from Cory Doctorow” on 2024-06-21 23:47:46 +02:00.

writing is lying. Storytelling is genuinely weird.

Permalink: 20240621234113

The gaps between API consumer lifecycle stages. What can fill the space that exists between different API consumer lifecycle stages? The gaps are where the most friction exists. Making sure that there’s a seamless transition between stages feels crucial. Image

Permalink: 20240618180220

Found at “Software Friction” on 2024-06-18 18:02:20 +02:00.

Friction compounds with itself: two setbacks are more than twice as bad as one setback.

Related to API Friction.

Permalink: Teaching is learning

I’ve just been invited to be one of the teachers on an upcoming product-related training initiative. At first, I felt reluctant because I thought that it would distract me from my lifelong path of learning. But then, slowly, I realized that teaching would be a way for me to learn more. I would learn about the students’ experiences, I would learn how to adapt my teaching to their needs, I would learn what other teachers have to show, and I would learn how to teach better. I accepted the invitation and I’m preparing a session on the topic of “API Product.”

Permalink: 20240612160705

Found at “Tolerant Reader” on 2024-06-12 16:07:05 +02:00.

be as tolerant as possible when reading data from a service. If you’re consuming an XML file, then only take the elements you need, ignore anything you don’t. Furthermore make the minimum assumptions about the structure of the XML you’re consuming.

Permalink: 20240612152109

Found at “Did we give up before AI arrived? | Seth’s Blog” on 2024-06-12 15:21:09 +02:00.

The system that pushed us to turn our writing into oatmeal and our art into paint by numbers was here long before OpenAi showed up.

Permalink: 20240612151719

Lately, I’ve been feeling I’m not getting enough juice from the social media feeds I follow. I don’t know if it’s the algorithms, the people I’m following, or just my change of appetite.

So, I’m investing more time into subscribing to and aggregating content directly from blogs. I hope that, by consuming directly from the source, I’ll be able to get better quality content.

Permalink: 20240611113913

Found at “How our brains cope with speaking more than one language” on 2024-06-11 11:39:13 +02:00.

the ability of bilingual and multilingual speakers to separate the languages they have learned is remarkable. How they do this is commonly explained through the concept of inhibition – a suppression of the non-relevant languages.

I’ve been experiencing this almost all my life since I’ve always interacted with several languages on a daily basis.

Speaking a second or even a third language can bring obvious advantages, but occasionally the words, grammar, and even accents can get mixed up.

Totally, and this is something native speakers often don’t understand and think we, multilingual people, are just being lazy because we don’t want to learn how to speak properly.

Permalink: 20240610152531

There’s some mysterious process at work here which I don’t even want to understand.—Philip Guston

Permalink: 20240610094404

Found at “PostgREST Tutorial: APIs made easy” on 2024-06-10 09:44:04 +02:00.

PostgREST is the quiet workhorse of API development, letting you tap into the power of PostgreSQL without getting bogged down in boilerplate code.

Permalink: 20240610093943

Found at “Building AI products — Benedict Evans” on 2024-06-10 09:39:43 +02:00.

the user never sees the prompt or the output, or knows that this is generative AI at all, and both the input and the output are abstracted away as functions inside some other thing

This is exactly how I see AI—and any other technology—unfold. It follows what I call “The Illusion of Immediacy.”

with any new technology, we begin by trying to make it fit the problems we already have, while the incumbents try to make it a feature (hence Google and Microsoft spraying LLMs all over their products in the last year). Then startups use it to unbundle the incumbents (to unbundle search, Oracle or Email), but meanwhile, other startups try to work out what we could build that would be truly native to the new technology.

Permalink: 20240606092306

Found at “Documenting API Workflows with Arazzo” on 2024-06-06 09:23:06 +02:00.

Arazzo is a major step forward in providing a standardized approach to documenting API workflows.

Permalink: 20240604101634

Found at “Silicon Valley’s Gold Rush Roots—Asterisk” on 2024-06-04 10:16:34 +02:00.

In 1855 miners in Grass Valley began a discussion club to exchange the latest ideas, and (…) the California Mining Journal, began publication there the following year.

California Mining Journal Volume 49, Number 6. A copy of the California Mining Journal Volume 49, Number 6, from February 1980. Highlights include the decrease in available public lands and price controls. Image