Skip to main content

Prisma Client Extensions: Use Cases and Pitfalls

· 7 min read
Yiming
Co-founder of ZenStack

Cover image

Although still experimental, Client Extensions are one of the most exciting features introduced in recent Prisma releases. Why? Because it opens a door for developers to inject custom behaviors into PrismaClient with great flexibility. This post shows a few interesting scenarios enabled by this feature, together with thoughts about where we should set the boundary to avoid overusing its power.

Exposing Databases to the Internet: Seriously?

· 6 min read
Yiming
Co-founder of ZenStack

Cover image

One big piece of conventional wisdom for software operation is "never expose internal-facing services to the public", and databases (especially SQL databases) fall into that category. It's good advice because data stored in them are usually highly sensitive and indispensable to most systems' proper running. Investigations with honeypots showed that publicly open databases are discovered within hours after they become active and start getting attacked within a day. What's scarier than this is you often don't even know you ever had a data breach.

What Made Me Pay That $10/Mon For GitHub Copilot

· 6 min read
Yiming
Co-founder of ZenStack

Cover image

I initially tried GitHub Copilot, just briefly, around the beginning of 2022. It raised my attention partly due to its name - I hold a private pilot license and have always been an aviation enthusiast. At that time, I found the idea intriguing, but the product usability was not so satisfactory: both in terms of speed and quality of generation. I started to reuse it about three months ago, and now it has become indispensable to me and worth every penny of that $10/mon that I pay.

What makes me a happy customer? Let's figure it out.

Decoding the Evolving Landscape of Web Development

· 7 min read
Yiming
Co-founder of ZenStack

Cover Image

Web development, especially frontend, is undoubtedly one of the most challenging professions in software development. Its landscape is constantly evolving. Tools and technologies become obsolete and replaced by new ones at an astonishing speed. It has also become a vast field, way beyond HTML, CSS and Javascript. Going back ten years, could you imagine that frontend developers, who use an interpreted language to write code, would need to mess with all kinds of compilation tools in their daily job? Pretty insane, isn't it?

But Rome wasn't built in a day. Let's travel back in time to see how we got here step by step.

How to Add Custom Attributes in Prisma

· 8 min read
Jiasheng
Co-founder of ZenStack

Cover Image

The Prisma schema is intuitive and lets you declare your database tables in a human-readable way. The thing I like most is to be able to use it as the single source of truth for the data models of my application. However, to be able to get that for more cases, there should be a good extension mechanism. Otherwise, Prisma would have to cover all the different cases by itself to achieve that universally.