# What prevents you from using Zig?

**URL:** <https://ziggit.dev/t/what-prevents-you-from-using-zig/9796>\
**Category:** Brainstorming\
**Created:** [April 25, 2025, 5:15am UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796 "2025-04-25T05:15:44Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![jeffective](https://ziggit.dev/user_avatar/ziggit.dev/jeffective/32/3116_2.png) [@jeffective](https://ziggit.dev/u/jeffective)\
**Post date:** [April 25, 2025, 5:15am UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/1 "2025-04-25T05:15:44Z")

</div>

I don’t intend for this to be an inflammatory or otherwise negative post. I’m honestly curious what others think about this:

_Poll ([view on site](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/1))_

_Poll ([view on site](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/1))_

Personally, it would have been difficult for me to deploy it a year ago due to my own inexperience. The projects I work on (industrial controls), often have shifting requirements that require me to quickly develop solutions to low-level problems. Things like “oops! this sensor uses the Modbus protocol! figure it out!”. So being able to just import a library that has already been developed for the majority of my tasks really accelerates development, even if it may not be the most long-term sustainable solution. Diving deep and re-implementing everything is sometimes just too slow. This is why the majority of my applications are Python. One counter argument for this is c-interoperability. Though honestly C is just hard.

Now with more experience under my belt, I am confident that Zig would be a good solution for a well-understood, limited-scope problem.

---

<div class="post-metadata">

**Author:** ![pfech](https://ziggit.dev/user_avatar/ziggit.dev/pfech/32/461_2.png) [@pfech](https://ziggit.dev/u/pfech)\
**Post date:** [April 25, 2025, 6:27am UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/2 "2025-04-25T06:27:18Z")

</div>

I’m just too slow to use zig at my workplace. I think it’s a combination of skill issues and limited libraries.

---

<div class="post-metadata">

**Author:** ![ericlang](https://ziggit.dev/user_avatar/ziggit.dev/ericlang/32/8515_2.png) [@ericlang](https://ziggit.dev/u/ericlang)\
**Post date:** [April 25, 2025, 10:34am UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/3 "2025-04-25T10:34:42Z")

</div>

Government stuff???

---

<div class="post-metadata">

**Author:** ![tsdtas](https://ziggit.dev/user_avatar/ziggit.dev/tsdtas/32/3512_2.png) [@tsdtas](https://ziggit.dev/u/tsdtas)\
**Post date:** [April 25, 2025, 11:13am UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/4 "2025-04-25T11:13:57Z")

</div>

“We are” is missing. 😉

---

<div class="post-metadata">

**Author:** ![neurocyte](https://ziggit.dev/user_avatar/ziggit.dev/neurocyte/32/3804_2.png) [@neurocyte](https://ziggit.dev/u/neurocyte)\
**Post date:** [April 25, 2025, 11:39am UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/5 "2025-04-25T11:39:50Z")

</div>

I use zig plenty in personal and oss projects (around 45kloc written so far). But for professional projects it has to have some sort of language stability guarantees. So basically that means waiting for a 1.0 release.

---

<div class="post-metadata">

**Author:** ![sbrow](https://ziggit.dev/user_avatar/ziggit.dev/sbrow/32/4970_2.png) [@sbrow](https://ziggit.dev/u/sbrow)\
**Post date:** [April 25, 2025, 12:32pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/6 "2025-04-25T12:32:35Z")

</div>

I’ve tried for many years to find a “fun” language to use at work, but it’s so hard to beat the velocity of PHP for “just throw together some forms and we’ll probably never touch them again”.

Though I have picked one project to attempt to port to Zig.

---

<div class="post-metadata">

**Author:** ![breadtom](https://ziggit.dev/letter_avatar_proxy/v4/letter/b/43a26b/32.png) [@breadtom](https://ziggit.dev/u/breadtom)\
**Post date:** [April 25, 2025, 2:27pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/7 "2025-04-25T14:27:25Z")

</div>

Full Zig needs [C++ to compile zig](https://ziggit.dev/t/building-self-hosted-from-the-original-c-implementation/6607), LLVM and [compile itself 45+ times to get to current version](https://jakstys.lt/2024/zig-reproduced-without-binaries/) from a trusting bootstraping perspective. If a completed second implementation exists that can bootstrap Zig without any blobs from [live bootstrap](https://github.com/fosslinux/live-bootstrap), I would use Zig much more.

---

<div class="post-metadata">

**Author:** ![Southporter](https://ziggit.dev/user_avatar/ziggit.dev/southporter/32/2500_2.png) [@Southporter](https://ziggit.dev/u/Southporter)\
**Post date:** [April 25, 2025, 2:29pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/8 "2025-04-25T14:29:16Z")

</div>

For me the issue is the segment of the industry. I work as a consultant for cloud computing. So until Zig gets into the industry far enough that companies ask us to work with Zig, I won’t see it.  
But as of right now, I have no concern using it for side projects.

---

<div class="post-metadata">

**Author:** ![jeffective](https://ziggit.dev/user_avatar/ziggit.dev/jeffective/32/3116_2.png) [@jeffective](https://ziggit.dev/u/jeffective)\
**Post date:** [April 25, 2025, 2:49pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/9 "2025-04-25T14:49:25Z")

</div>

Some projects require the use of certified compilers or other regulatory hurdles, like medical devices or military projects.

---

<div class="post-metadata">

**Author:** ![ericlang](https://ziggit.dev/user_avatar/ziggit.dev/ericlang/32/8515_2.png) [@ericlang](https://ziggit.dev/u/ericlang)\
**Post date:** [April 25, 2025, 2:51pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/10 "2025-04-25T14:51:20Z")

</div>

strange world 🙂

---

<div class="post-metadata">

**Author:** ![jeffective](https://ziggit.dev/user_avatar/ziggit.dev/jeffective/32/3116_2.png) [@jeffective](https://ziggit.dev/u/jeffective)\
**Post date:** [April 25, 2025, 2:58pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/11 "2025-04-25T14:58:10Z")

</div>

Could one of the static analysis people elaborate? Zig is already statically typed, what are you missing? Are you waiting for additional static memory safety guarantees? Like stack overflow / unbounded recursion being prevented?

In my experience, zig being a compiled language already provides better guarantees than python + mypy for example.

Also, are your use cases not already requiring extensive test coverage?

---

<div class="post-metadata">

**Author:** ![sbrow](https://ziggit.dev/user_avatar/ziggit.dev/sbrow/32/4970_2.png) [@sbrow](https://ziggit.dev/u/sbrow)\
**Post date:** [April 25, 2025, 3:13pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/12 "2025-04-25T15:13:45Z")

</div>

I wouldn’t say strange. I’m a big fan of new stuff like Zig and go, but when it comes to dangerous things like this, you want them using the dusty old crap that is reliable to the core.

---

<div class="post-metadata">

**Author:** ![mnemnion](https://ziggit.dev/user_avatar/ziggit.dev/mnemnion/32/2478_2.png) [@mnemnion](https://ziggit.dev/u/mnemnion)\
**Post date:** [April 25, 2025, 5:12pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/13 "2025-04-25T17:12:12Z")

</div>

You forgot to include the null hypothesis.

That’s a problem, because there’s nothing to choose which lets us _see_ the poll unless the hypothesis holds.

So no one working for Bun or TigerBeetle can see the results. For example.

---

<div class="post-metadata">

**Author:** ![jeffective](https://ziggit.dev/user_avatar/ziggit.dev/jeffective/32/3116_2.png) [@jeffective](https://ziggit.dev/u/jeffective)\
**Post date:** [April 25, 2025, 6:30pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/14 "2025-04-25T18:30:30Z")

</div>

You can click view results

 ![Screenshot from 2025-04-25 11-29-40](https://ziggit.dev/uploads/default/original/2X/1/1e5111f988b762dc9ff95872dc723ff236ac4829.png)

Unfortunately it wont let me edit the poll after making it to include a “I use zig in production” option!

---

<div class="post-metadata">

**Author:** ![jeffective](https://ziggit.dev/user_avatar/ziggit.dev/jeffective/32/3116_2.png) [@jeffective](https://ziggit.dev/u/jeffective)\
**Post date:** [April 25, 2025, 6:32pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/15 "2025-04-25T18:32:01Z")

</div>

I added a second poll under it to allow people to say they use it in production

---

<div class="post-metadata">

**Author:** ![mnemnion](https://ziggit.dev/user_avatar/ziggit.dev/mnemnion/32/2478_2.png) [@mnemnion](https://ziggit.dev/u/mnemnion)\
**Post date:** [April 25, 2025, 6:35pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/16 "2025-04-25T18:35:32Z")

</div>

> [@jeffective](#):
>
> You can click view results

Oh. Well that’s just me being unobservant then, sorry. Too used to Twitter I guess.

---

<div class="post-metadata">

**Author:** ![alexrp](https://ziggit.dev/user_avatar/ziggit.dev/alexrp/32/2793_2.png) [@alexrp](https://ziggit.dev/u/alexrp)\
**Post date:** [April 25, 2025, 8:06pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/17 "2025-04-25T20:06:07Z")

</div>

> Target not supported

Please comment with more details if you picked this option. I’m not making any promises, but it could help inform my efforts.

---

<div class="post-metadata">

**Author:** ![vulpesx](https://ziggit.dev/user_avatar/ziggit.dev/vulpesx/32/3989_2.png) [@vulpesx](https://ziggit.dev/u/vulpesx)\
**Post date:** [April 25, 2025, 9:52pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/18 "2025-04-25T21:52:21Z")

</div>

zig is my goto language, atm.  
I don’t work in a programming related field, so I can’t comment on that :p.

Also, it’s very funny that Andrew is the only one using zig in production _according to the poll rn_

---

<div class="post-metadata">

**Author:** ![plaukiu](https://ziggit.dev/user_avatar/ziggit.dev/plaukiu/32/723_2.png) [@plaukiu](https://ziggit.dev/u/plaukiu)\
**Post date:** [April 26, 2025, 9:56am UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/19 "2025-04-26T09:56:11Z")

</div>

I just can’t reach the perfection that I feel zig expects of me.

---

<div class="post-metadata">

**Author:** ![jeffective](https://ziggit.dev/user_avatar/ziggit.dev/jeffective/32/3116_2.png) [@jeffective](https://ziggit.dev/u/jeffective)\
**Post date:** [April 26, 2025, 4:49pm UTC](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796/20 "2025-04-26T16:49:31Z")

</div>

I received my first ever GitHub sponsor for a zig project so I guess I get to mark production now 🙂

[Next page](https://ziggit.dev/t/what-prevents-you-from-using-zig/9796.md?page=2)
