Today we are releasing the public beta of the @stripe extension for @code, which brings Stripe inside your editor. Let me give you some background on why we built this extension, what it does, and where we are going with our developer tools.

https://t.co/FyyHVNQtWA

A thread 🧵

By bringing Stripe inside code editors, we move Stripe-specific information inside the context where developers already are when they build. We believe this will reduce context switching, reduce friction, and make it faster to integrate, build, and test with Stripe.
We decided to start with VS Code, one of the most popular code editors, and build an extension that would bring in a range of common workflows through a new Stripe panel in the activity bar and a set of custom commands.

Let me walk you through the features:
🛠 Webhooks can be burdensome to work with, so we made it easy to forward webhooks events to your local box. You can trigger events to test - this is integrated with the VS Code debugger so you can easily set breakpoints and step through your code.
📑 Sometimes when you’re integrating events, it's hard to know what the payloads will look like. You can now see the most recent events, and we’ll fetch the full event payload as JSON if you click on it, so you can easily see the properties — all without leaving the editor! 🔥
🗝 Managing API keys can be challenging, and sometimes we forget to remove our hardcoded secrets, which can have dramatic consequences.

So we'll now analyze and lint your code and show you warnings if you leave a hardcoded API key behind by mistake. ✨
📡 Sometimes things go wrong and you need to access the most recent logs to debug things. To make it easier we are bringing you log-streaming directly inside the editor. Simply run the command and get the logs streamed to your editor.
👩‍💻 When integrating Stripe, sometimes you need to look up code examples in our documentation.

Code snippets brings code examples from our docs into the editor, so you have less code to write and everything in one place.
📚 API References are essential to learning about APIs, so we brought you integrated API ref links directly inside the editor. Hover over a method when using our SDKs, and VS Code will link to the method in our API ref.
🖥 Sometimes you need to access the Stripe Dashboard, so we added commands to quickly open the Dashboard's most commonly used sections. Bam!
We are just starting to scratch the surface of what it means to bring Stripe closer to your source code and inside your editor.

What would you like to see in your favorite developer tool? What would improve your developer experience with Stripe?

More from Tech

A brief analysis and comparison of the CSS for Twitter's PWA vs Twitter's legacy desktop website. The difference is dramatic and I'll touch on some reasons why.

Legacy site *downloads* ~630 KB CSS per theme and writing direction.

6,769 rules
9,252 selectors
16.7k declarations
3,370 unique declarations
44 media queries
36 unique colors
50 unique background colors
46 unique font sizes
39 unique z-indices

https://t.co/qyl4Bt1i5x


PWA *incrementally generates* ~30 KB CSS that handles all themes and writing directions.

735 rules
740 selectors
757 declarations
730 unique declarations
0 media queries
11 unique colors
32 unique background colors
15 unique font sizes
7 unique z-indices

https://t.co/w7oNG5KUkJ


The legacy site's CSS is what happens when hundreds of people directly write CSS over many years. Specificity wars, redundancy, a house of cards that can't be fixed. The result is extremely inefficient and error-prone styling that punishes users and developers.

The PWA's CSS is generated on-demand by a JS framework that manages styles and outputs "atomic CSS". The framework can enforce strict constraints and perform optimisations, which is why the CSS is so much smaller and safer. Style conflicts and unbounded CSS growth are avoided.
So we had to develop technologies like this to barely manage control over limited areas in Iraq's few urban centers. Only ~8 in 100 Iraqi adults owns a personal vehicle. That rate is > 1 car/adult in America yet I have never seen any doctrine paper or work of fiction address this


We've seen and struggled in civil conflicts with instant, local, universal, distributed communications (cell phone era, basically every conflict since 2000). We've seen and struggled in conflicts with instant, global, universal distributed communications (everything since 2011).

The world's most overfunded military and glow in the dark agencies struggle and largely fail to contain conflicts where fhe vast, vast majority of people are locked into a ~5mi radius of their home.

How can they possibly contain a conflict in a nation with universal car ownership and the most developed road network in the world? The average car can travel over 400 miles on one tank of gas, how can you contain the potential of that kind of mobility?

I think that's partially why the system was so freaked out by 1/6. Yes, most of it is histrionics but you don't decide to indefinitely turn your capital into the Baghdad Green Zone with fortifications and 25k troops over histrionics alone.
One of the best decisions I made during a very turbulent 2020 was to leave conventional coding behind and embrace the #nocode movement. @bubble made this a reality. Although my own journey thus far is premature, I’ve learned a lot so here’s a power thread on....


‘How I created @buildcamp sales funnel landing page in under 2hours’.

Preview here 👇

https://t.co/s9P5JodSHe

Power thread here 👇

1. Started with a vanilla bubble app ensuring that all styles and UI elements were removed. Created a new page called funnel and set the page size to 960px as this allows the page to render proportionately on both web and mobile when hitting responsive breakpoints.


2. Began dropping elements onto the page to ‘find the style’. These had to be closely aligned to our @buildcamp branding so included text, buttons and groups - nothing too heavy. Played around with a few fonts, colors and gradients and thus pinned down the following style guide.


3. Started to map out sections using groups as my ‘containers’ to hold the relevant information and imagery needed to pad out the sales pitch. At this point, they were merely blocks of color #ff6600 with reduced opacity set to 5% to ease page flair.

You May Also Like