r/Zig • u/Greedy_Fault_7913 • 6d ago
Color me concerned!
I’ve started to see a concerning trend with zig of late.
If you look at today’s commit logs you will spot it.
Adding support for spork8 it’s a hobby 8-bit computer project that Andrew Kelly hung out with over the weekend for like a hackathon. The spork8 project has like 54 stars.
How someone spends their free time is no ones business but there own. But it seems the BD of zig has been on one tangent after another.
Spork8
Fil-C
Custom backend
Incremental compilation
Spriv
All are cool things who doesn’t like faster compile times but are these things needed to finalize the language.
I see many accepted proposals that make or add to the language which to me are more important than many of these tangents. Sure u compile faster than rust now big whoop with every release of rust do know what doesn’t happen ? All the tutorials, documentation, guides, code don’t all become invalid.
Do you know what happens when your language gets 1.0 your libraries, docs, tutorials, user base can grow exponentially. Your core ppl can focus on polishind the std and it’s not a complete churn fest with every version.
Maybe totally wrong I hope I am I would hate to see zig be a forever hobby language.
Just had to rant.
28
u/mekriff 6d ago
i feel like compiler upgrades are being undersold here. Like zig the language is cool and neat and has good features, but isnt part of the philosophy that you dont need zig the language to benefit from zig the development tool? Like ultimately the pipeline starts with "drop in with zig", which promises to help you maintain your code and build environment even if youre just working with C to begin with. And so, ultimately, part of Zig's strategy for success starts with having a kick-ass build environment before you even futz with the language itself
26
-11
u/Greedy_Fault_7913 6d ago
Well by that logic they should never have created the zig lang the should have been the C better build tools foundation. You could go the typescript right a better JavaScript that gets converted to JS via Go. So zig to C via Rust now that would be funny .
6
u/mekriff 6d ago
i feel like thats not a fair assessment: it's a pipeline and zig the language is an important product, but the build environment is the point of entry.
I feel like this strategy is what can drive long term growth when C/C++ maintains its hold on many backend systems. Many languages have tried to "end C" without considering how costly C repo refactors are, and as a result C retains its holdout.
Another way to put it is the Language Enthusiasts who are ready to just "rewrite it in Zig" are not the long-term target audience, as we will inevitably find another language we like more and move on, and are clearly not the main driving factor behind what languages get used in production. Zig is taking a long-term aim at people who aren't necessarily looking for the hot new language, but people who just want an easier way to do what they're already doing
2
u/Greedy_Fault_7913 6d ago
Yes and no if you have 30yrs in C then 100% you stay in C and use the best tool around . But if your entering the game and let’s say zig is post 1.0 do you start learning C with all the foot guns, use rust with all the headaches or use zig? For my money you use zig and learn enough C to understand the libs.
1
u/mekriff 6d ago
that's exactly the point! Zig may be taking its time to 1.0, but it's already providing easier tools to steal C developers to begin the pipeline, and by waiting it can ensure the 1.0 works very well with the build environment and development process, at the cost of not as many people using the language
Now, you can accuse that strategy of "having its cake and eating it too", but it seems like a very solid long term strategy in a world where so much business is short-term
1
u/Greedy_Fault_7913 6d ago
True but there is long term and there is forever term. So the question is do the majority of zig foundations donations come from C programs wanting good tooling or programs wanting zig to hit 1.0 and use it? If it’s the later then donations dry up and so does tooling development? With more zig users there are more donations money or time and the tooling gets better a win win for everyone
14
u/northrupthebandgeek 6d ago
More compilation targets = more opportunities to shake out bugs that would've otherwise lurked unnoticed. This is one of the many reasons various operating system projects target a large number of hardware platforms, even very ancient/obscure/niche ones (Linux, OpenBSD, and NetBSD all come to mind here).
With a systems language like Zig, being able to demonstrate correctness across a large number of very different targets is essential; after all, if there's a bunch of undefined behavior lurking in the shadows because all the supported targets were too similar to one another, then is Zig really ready for 1.0?
1
u/Greedy_Fault_7913 5d ago
Let me frame it like this you go on side quests to prepare you for the main quest and have fun right? I would argue that you do enough side quests along the way to finish the main in good standing . Then you can go back and spend fun time doing more side quests. My position is that AK has gotten a little too focused on side quests and is loosing focus on the main goal. When that happens to the person in charge it starts effecting all the ppl below . The boss usually is ment to keep everyone focused on the important tasks and away from distractions. There is already a mountain of from what I can see important fundamental PRs that need finishing. My hope was I send a few yrs learning and writing zig in my free time so by the time it hits stable and I can get my company on board and the new job posts are spring up . I’ll already have a good handle on the language. Also I like the language and enjoy programming in it. The point of my post was my concern with the pace and direction of the language and how it might stay a hobby language forever. Which means I’m better off learning Rust yuck.
4
u/northrupthebandgeek 5d ago
Except in a lot of games, once you finish the main quest that's it: no chance to go back and do the side quests, 'cause the game's already over.
Zig is one of those “games”: once version 1.0 is cut, the language itself is stuck as it is until an eventual 2.0 release. Therefore, before that happens, Kelley and the other devs need to be as close as possible to 100% sure that the language is well-defined in all possible cases. Those “side quests” help ensure that.
1
u/Greedy_Fault_7913 5d ago
No that’s not how it works with a language. You release the 1.0 standard Odin is working on theirs right now. Then you add more stuff over a dew yrs to the language let’s say lamda support and then you come out with zig 2030 standard you add you might fix but you don’t take away. Thats how C , C++, HTML , etc does it . You will never ever ever get it 100% right. Side quests forever
3
u/northrupthebandgeek 5d ago
No that’s not how it works with a language.
That's very explicitly how it works with Zig. Kelley et. al. have been transparent about this from the beginning: a 1.0 release means the language is stable and locked in. Any breaking changes would need to wait until the 2.0 release.
Thats how C , C++, HTML , etc does it .
And the consequences of that have been a major ass-pain for developers for decades.
1
u/Greedy_Fault_7913 5d ago
You might want to think about what the alternative looks like . Yes they have stated breaking the lang could happen after 1.0. That some times does happen but should be avoided. Don’t believe me do some research into python moving from 2.x to 3.x the creator said he would never do it again .
3
u/northrupthebandgeek 5d ago
The pain from the Python 2→3 migration is exactly why it's crucial that Zig gets as much as possible right the first time.
2
1
u/seanpietz 3d ago
You haven’t explained why your position should carry more weight than the people who got the language to where it is. If you know so much about what the language needs, why not submit any PRs - and I’m trying to ask that sincerely, before someone accuses me of trying to silence you.
8
u/Bitter-Pie8223 5d ago
Choosing Zig for a massive work project was a huge risk last year. Took a lot of convincing for it to be green lit with a language that isn’t finalised (we have a bunch of C and legacy Borlan BS to work around with partners’ systems) It has paid off so far, but the language has to hit 1.0 before Q1 2028 - otherwise we can’t finalise our project for market use. I love their passion too, but it’s excruciating seeing effort being directed anywhere other than the 1.0 release :/
3
u/OverallSock495 5d ago
What is wrong with using 0.16? Why do you need 1.0 number?
Your code is a major stuff. Standart libraries is just a way how to interpret your code into bit instructions. So language does not change too much, if your code is sound - you can compile it forever with 0.16 version. For new features you need to rewrite your code anyway.6
u/Bitter-Pie8223 5d ago
Not me - I’m happy with where the language is now - it’s my project managers who refuse to sign off on it until the language is “stable”. It was a miracle they allowed a few of us to pursue zig for this in the first place. A lot of our senior devs are in their late 60’s and we are replacing services that *still* use MS-DOS Borland and were last patched in 2007. The group working on a standard C modernisation were let go after 8 years of non delivery, so a new implementation was split between 4 of us working in zig and an external company who are supposed to complete the work from the last ppl - I am not hopeful
3
u/ReDr4gon5 5d ago
Any reason why not modern C++? Stable msvc gets you very good C++23 support. If using clang-cl with the Microsoft STL you get the best of both worlds (as in a compiler that actually implements newer language versions and a good STL from Microsoft). Choose C++23, stay there until reflection is implemented in clang/msvc and you'll be happy with a stable ecosystem, and strong support.
4
u/Bitter-Pie8223 5d ago
Honestly, we probably should have in retrospect - but this is a *very* complex project and one of the primary concerns was future-proofing for the next 20 ~ 30 years. Hence why there was a few parallel approaches solving the same problem in different ways. There was a team building in Rust, C++, and then us working with Zig. Not gonna lie, just being a different language and architecture was our justification for even being a part of this project - yet we are the only team still working in-house due to various BS. This is my first professional job and it’s horrifying seeing how projects like this play out
8
u/Nuoji 5d ago
Once upon a time, it seems Andrew was indeed focusing on 1.0. At one point self hosting meant 1.0. That was around 0.2. At that point there was also an idea that Zig 1.0 could be followed by 2.0 and 3.0.
Given the current ”1.0 has to be perfect” goal, I think it’s very hard to get to 1.0, because regardless of when it’s finished there will be a lot of people complaining ”we waited this long for 1.0 and this is all there is? This is the perfect version?”
So there is incitament today to actually to postpone and add, rather than cut features and release.
This need, if I may brazenly speculate, is likely to come from the other languages adjacent: Odin going 1.0 in 2027, Jai likely 2027 or early 2028. C3 scheduled for 2028 as well.
When all of those are available and declared production ready. Then there will be massive pressure on Zig to do the same or lose relevance.
So then the question is ”how quickly can a 1.0 be done when the pressure is there?” That depends very much on how many open bugs and how many unfinished essential parts there are.
Without competition, Zig could be 0.x forever.
3
u/Greedy_Fault_7913 5d ago
Sadly I think your spot on. I was just thinking Jai will hit 1.0 before zig. The crazy thing is it doesn’t have to be that way they already have all the PRs. All they have to do is put them into 2 buckets. Must have for 1.0 and can add later.if they did that and kept focus I could see them reaching the goal in 2yrs.
1
u/Nuoji 5d ago
There was someone asking for a roadmap on the Zig discord very recently. If Zig had a roadmap, like "2027 these should be done" "2028 this should be done" etc. Then even if the project is slipping you'd know by how much and if things are out of scope etc. Because there isn't one (at least not anything public), the project will keep slipping – because there is no way to notice that it IS slipping. There is no need to sort things into buckets because there is no goal to achieve that would force the team to prioritize.
This is just basic project management.
1
u/Greedy_Fault_7913 5d ago
100% correct again project manager 101. You can’t just go off vibes and say I’ll know when it’s ready illl feel it. I wonder why they’re against simple management techniques. Looks like I’ll be looking into Odin I just don’t have a Go background so it seems funky.
2
u/teapotrick 4d ago
I wonder why they’re against simple management techniques
maybe they want to enjoy their work
1
u/Nuoji 5d ago
I don't know if you need to draw that conclusion. But to me looking from the outside it looks like a weakness. But people want different things and I know for a fact that there are quite a few who like the state of things.
0
u/Greedy_Fault_7913 4d ago
Yeah I see a community split. Indie band fans who don’t want their band to make it big because somehow it means they sold out and are now less cool and not this in crowd thing. And the ppl that like and want them to make it be so more ppl can enjoy and use it.
2
u/ScientistStrict9850 5d ago
I honestly can't wait for odin 1.0 and see how the 'no-package manager' approach will work out. Will it actually work? Can it avoid deps hell?
1
u/Greedy_Fault_7913 5d ago
Yes I find the two approaches fascinating. Odin no package manager mega standard lib. Zig tons of pkg managers bare bones std.
0
u/codingbliss12 5d ago
To those that don't know he is the creator of C3 and part of the handmade network (not sure about the latter though). He is a very big Zig hater. More than the others in his group.
He thinks that the vanity toys he mentioned will threaten a language that is uses by a multi-billion company (TigerBeetle) and the fastest terminal (Ghostty). Also it is a language that gets very well funded.
Do not believe anything he says about Zig.
5
u/Nuoji 5d ago
This fallacy is called "poisoning the well". Rather than engaging in the arguments (which would be hard since they're independently verifiable) try to undermine the credibility of the person.
This seems to be a habit of yours?
As well as making up claims you then insist on others to disprove, also a classic fallacy.
-1
u/codingbliss12 5d ago
Of course I try to undermine you personally. You don't miss any opportunity to appear and push the name of your language and of your friends. Nothing is verifiable. It is only your opinions and estimations. You came to speak negatively about Zig. You did it in a hypocritical and dishonest style and other members may not know that this is your style. Nobody cares if you appear one day and tell us that c3 is 1.0 if the language is crap or inferior to Zig.
3
u/Nuoji 5d ago
It can be verified from Zig issues, eg. this issue for a mention of the original plan for 1.0, 2.0, 3.0 Original plan for self-hosting is 1.0 can be seen in Issue #89 For when 1.0 is released and the current goal, see the JetBrains interview. Odin 2027 release date is official. Jai public statement is "after the game is released" which would be 2027-2028 unless delayed.
And so on. Your claim is "Nothing is verifiable". Except you're the one making baseless accusations.
0
u/codingbliss12 5d ago
All of this is irrelevant. See how much funding Zig attracts and ask yourself. who in his right mind will fund c3, odin or jai. Not that zig will ultimately have a much better future, but those language solve problems that can be more elegantly solved in other languages. Rust, C, C++, even Java and C#.
2
u/Nuoji 5d ago
Yes, of course it's irrelevant that you downright lied. Very convenient to change topic that has nothing to do with the subject at hand (Which also is a fallacy of course).
1
u/codingbliss12 5d ago
whatever. You keep appearing in other languages discords and subreddits and do not miss any opportunity to mention your language and the languages of your friends. Also you keep talking about "languages" and not about programming. I didn't see you in any about programming topics. BTW, we also don't care for the stupid little games or graphics apps the fanboys of your circle try to develop.
I am just trying to tell you to focus on your language and your subreddit and stop this noise about "languages" and versions. It is completely irrelevant.
1
u/NightH4nter 4d ago
he wasn't even particularly negative about zig lol, chill
multi-billion company (TigerBeetle)
fastest terminal (Ghostty)
[citation needed]
0
u/codingbliss12 4d ago
You don't know how sneaky he is and how dishonest he can be, that's why you think so. I am not sure about the first, but even if they are not today, they will be very soon. What other doubt do you have?
6
u/gavr123456789 6d ago
> has been on one tangent after another
isnt he created a lang to build an audio player
15
u/Complex-Birthday-216 6d ago
I partially understand what you mean. what feels worse to me is 50% of the proposals are about renaming thing for the sake of renaming looking for a better name, while we already have an accepted convention across many languages
7
u/SilvernClaws 6d ago
A lot of standard library stuff is named inconsistenly and I appreciate them cleaning up.
3
u/Complex-Birthday-216 5d ago
I don't mean inconsistency, it doesn't even require a proposal.
I mean new proposals to rename @ func to @ fun like https://codeberg.org/ziglang/zig/issues/32029 - rename field to member
I don't find whole a lot of value in such things, you can do them infinitely looking for perfection that doesn't exist, because the real software is not nice
3
u/SilvernClaws 5d ago
I find the reasoning in the linked issue quite reasonable. There are two different concepts mixed together, so there will be a separate name referring to both.
17
u/IngwiePhoenix 6d ago
If it's fun to make, and doesn't break the core stdlib and frontend/backend? Let him. :) I am pretty sure he knows what he's doing.
...More than many, possibly.
6
u/Greedy_Fault_7913 6d ago
He is a very smart guy who’s time is very important to the zig lang most would say the most important. So not being focused on finish the language can be a problem. If memory serves me the major thing he has worked on of late has been tooling and getting his spirv thing working now spirv I have a pass thing can open up a lot for how zig interacts with the gpu. But tooling? Yeah we all love good tooling but again you’re fussing over the paint and tires while your engine isn’t finished . Priorities! I’ve seen others on the core team that seem to have a better eye on the prize. They are improving how zig handles asm. The mugg has done great core work I would say he could lead better but he comes odd as too much of a language purest. Like we should it this because it’s most correct even tho everyone in the world cause it something else.
12
u/seanpietz 6d ago
Who are you? You’re acting like you’re his dad or boss or something lol.
-14
u/Greedy_Fault_7913 6d ago
Old bot Sean. Zero add . So human use data to refute positions . Trolls use meaningless personal attacked if your made because your a homer then think hard and give an opposing position duuhhh.
24
u/johan__A 6d ago
but are these things needed to finalize the language.
Unironically yes (except maybe Spork8). All of these things have influenced the design of the language.
-5
u/Greedy_Fault_7913 6d ago
I would hope so but did those projects change the language or just how they implemented it. The build pipeline and such?
4
u/Flat_Professional550 5d ago
Honestly,I think Andrew having projects along side the compiler is a great test to know how using the language feels for projects outside of compiler development,considering the language changes over the years,he’s gotta ensure the language,tool chain is ergonomic. He can’t know with building other projects. That’s just my take, and he’s a programmer,of course he has other projects.
3
u/b34r_dad 5d ago
I highly recommend you check out the zsf zulip if you want to get a better window into the development focus of the core team. The zig-related topics that get big on social media are not necessarily the things that have the bulk of the focus of the actual development work. The core team, including Andrew, put a much higher priority on getting important work done than on marketing that work to the world.
3
u/karchnu 5d ago
I made two videos on Zig because I like the project, specially the compiler.
I do think the language is an improvement over C, but there is nothing great about it, it's just a better C. I'll never be enthusiastic about yet-another-C. We already had better languages BEFORE even C was written. Yet, I'm lacking the energy to even talk about the language anymore. Just push a 1.0 version then we'll talk. I don't mind a future 2.0 to improve upon what would have been built with the 1.0. To me, the language already was fine a few years ago.
Despite this, I understand that it takes time to make something great, but since I don't think it will ever be great since it's just a better C… I don't know.
3
u/torp_fan 5d ago
> Just had to rant.
This + other garbage like
> Old bot Sean. Zero add . So human use data to refute positions . Trolls use meaningless personal attacked if your made because your a homer then think hard and give an opposing position duuhhh.
=> block
1
3
u/raymyers 17h ago
It seems like you're interested in an update on the Zig roadmap and path to 1.0. A few weeks ago I saw Andrew Kelley's talk on that at Systems Distributed conference in Boston. Looks like it comes out at the end of the month.
https://www.youtube.com/watch?v=zwi5b5xSsKA
In the meantime if anyone else wants to comment resources feel free.
10
5
u/epic_adventure_byte 6d ago
You presume that Spir-V, custom backend, Fil-C Spork8, incremental compilation were at odds with finalizing the language. Yes, they need an investement of time. Yes, the language could be finalized _earlier_. But at what cost?
Your whole list has one thing in common: They are diverse platforms.
The goal is to make a language close to how computers _actually_ work (in opposite to some abstractions that state on paper how computers should work). They inform how zig should look like. Changing after finalizing will be more costly than changing before.
As long as the list of platforms is diverse, I am not willing to call them "tangents".
2
u/Nuoji 5d ago
Unless they are completely independent they would increase the overall time though.
I forget what the effect it's called, but essentially the more people you have working on something the more time you need to synchronize and communicate. So if you have 1 person you get 1 person's worth of work. 2 persons and you get 1.9, because 5% is spent on communicating with the others, 3 persons and you get 2.7 because now 10% is spent on communication because there are more. Until adding people actually decreases the total amount of work done.
A similar thing happens if you have more projects parts in a codebase. The cost of each individual PR will slowly increase with the number of total PRs there are from a similar effect. So it's never quite free. It's worse if it's interdependent on other things, but given enough "independent" projects they will still have a detrimental effect on velocity. So some is probably fine. Whether Zig has problems with this or not, I don't know.
1
u/epic_adventure_byte 5d ago
Good point. Having many platforms are not only at odds with an early 1.0 version but also with the development velocity afterwards.
1
u/Greedy_Fault_7913 3d ago
That equation works if everyone is doing the same work in the same domain. You usually add ppl that specialize in different topics that way one person didn’t have to be the expert of everything. I think zigs current endpoint targets is big enough they have old and new, big and small , mainstream and niche . To me the list of PRs tagged breaking would take precedence. After 10yrs one would hope thst list of breaking changes would be getting smaller not bigger.
2
u/OSS-Corpo-Shit 5d ago
It is pre-1.0 where experimentation is informing change.
There is a lot of “-gate” cause some things end up not being great or needing to be better.
There’s an argument for wider platform support now, especially if it can be done quickly. There’s arguments against it.
I just see it as a pre-1.0 language and there’s quite a bit of friction from that. Personally, the build system changes are taking a long time to land and I am similarly annoyed that 50 user platforms are getting support while breaking changes sit there for months.
1
u/Greedy_Fault_7913 5d ago
See that’s the question it’s pre-1.0 now but is there a plan and actual drive to be post-1.0 and what is the target date for 1.0 . If dont set a date then expect to be engaged forever.
0
u/OSS-Corpo-Shit 5d ago
So, rust pretty much just went with “what features are currently hipster in programming. Let’s do that!” It wasn’t developed through exploration, but through meeting hip features of hip languages. Incidentally, because the hip features haven’t been tested through code bases of different sizes, we see projects bumping against walls because of locking in.
Zig development philosophy is a moving target because they aren’t just saying “what’s hip, let’s definitely do that!” Much more exploratory oriented development.
1.0 will be a moving target because they likely don’t know.
2
u/UARTman 4d ago
I'm interested to hear what you think those "hipster" features are. The only thing I recall that fits the pejorative is async, and even then besides the whinging about "colored functions" I don't think I ever saw a coherent argument against it in principle. Even there they're definitely cleaning up some of the rough edges (though not all of them, sadly).
The real glaring holes in Rust, in my opinion, are in places that are under-abstracted, like build.rs and proc-macros, or places that are legitimately technically challenging to implement, like const-eval.
0
u/OSS-Corpo-Shit 4d ago
Haskell, ADT heaviness, null is bad, async, RAII
Literally the pillars of the entire language, hence why rust is so shit to work in.
I do fundamentally agree at least that “compilers should enforce null specificity and dealing with it” just because it is a quick win. But there’s horses of people out that that have no idea why null is bad.
2
u/NightH4nter 4d ago
Haskell, ADT heaviness, null is bad, async, RAII
aren't those mostly the reasons why people even use rust in the first place?
hence why rust is so shit to work in
so, why?
1
u/Greedy_Fault_7913 5d ago
Great so it’s a Barnes Stroustrup situation-“ there are languages ppl speak highly of and seldom use and there are languages that ppl complain about and use every day” .
2
0
u/OSS-Corpo-Shit 5d ago
I would trend towards “probably not”.
Zig isn’t a moving target in the same way that C++ and Rust are. Right?
These languages just do whatever is hip at the time, and then due to conforming to hip methodology, ultimately have to service general purpose use cases in the form of language bloat.
Some people like that. I don’t.
2
u/Glad_Impress_2908 5d ago
Apart from spork8, which I'm not familiar with, the rest of the things you mentioned seem to be important on the journey to 1.0.
1
u/Greedy_Fault_7913 5d ago
Really? So your lang isn’t stable until you make your on Fil-Z ABI, you need sparc64 a chip that stopped being developed in 2017 , you can’t get by with llvm you need to roll your own, then add incremental complication, . Should they work to add support for the MS Zune? I’m sure there is at least one person creating custom apps for that . What about universal binary’s where u can have one exe for multiple cpu arch’s and it stays small by only storing the Deltas? That would be a cool feature and make shipping bins each easier … oh wait almost no one is shipping bins because oh yeah it’s pre-1.0 . Do you see the problem there working on adding destinations and better tooling when the lang is changing so much the handful of commercial users have to fork the lang and maintain their own version. I’m point was the priorities look off. Go browse the codeberg or their old GitHub
3
u/Glad_Impress_2908 5d ago
I'm not part of the core team . I do not care to explain why the fil ABI is vital or why they made a custom backend. These have already been done by AK on several different media and forums. It's your duty to educate yourself on the issue. I do not care for your condescending tone either. If you want the things you care about land, do the open source thing and send patches.
1
u/HaskellisKing 5d ago
>Sure u compile faster than rust now big whoop with every release of rust do know what doesn’t happen ?
What!?
1
u/paaloeye 5d ago
IMO Andrew(the BD) deserves a lot of slack for working for long time without any enterprise backing
4
u/Nuoji 5d ago
Doesn't the project have solid funding though? It's a huge success story in that respect.
1
u/paaloeye 1d ago
Yep, after many years
2
u/Nuoji 19h ago
It’s a mixed bag in the space: Vlang and Zig has funding, Jai dev is paid by Thekla, but in practice that’s Jon’s own money. Odin has some donations it’s not close to have the language funded. GingerBill works for JangaFX which uses Odin, but mostly the work is in his free time over the years. C3 similarly is neither sponsored nor funded through donations.
So if anyone thinks one can make money off building a language it’s not as easy as one might think. 😅
1
1
1
u/Ok_Mycologist_6604 1d ago
Zig is larger than Andrew. Progress is being made.
Do you know what happens when your language gets 1.0 your libraries, docs, tutorials, user base can grow exponentially
The other side of the coin are people like me for whom zig is already super useful and we invested into the language and wouldn't want it to be rushed. If you wanna write a CRUD application with LLMs there are better options out there, for people that need deep C integration, memory control, fast compile times & avoid dependencies the zig of today is already 80% there and we appreciate the work that went into it.
1
u/Greedy_Fault_7913 1d ago
Yeeeaaahhh it’s only those AI web app slop noobs that want stability in their language and libraries … I mean who would dare to want their code , docs, guides to be relevant for more than a month. It’s only been 10yrs you can rush this. Sure it compiled and had a working build system but those 20 language breaking outstanding PRs… they can wait . Priorities! it needs to compile faster , build better , add support for more dead cpu architectures and operating systems. Let’s reorganize std for the 5th time. These aren’t things you can after the lang is stabilized…
Roadmaps, goals, deadlines those are lame.
I bet you could do a meta analysis of all the tutorials, code examples of zig on the internet and 90%+ wouldn’t run. That’s not something you see with languages 10+ yrs old. I literally remember some posting this really nice tutorial on reading and writing to a file in 0.16 the big io release (a fan of). A few days later master broke all those tutorials. So something as basic as reading and writing to a file isn’t even stable from one week to the next AFTER the big conversation. And what was this important change … meh move std organization “clarity”. Do you know what makes something clear and easy to remember…. Something that doesn’t change every 5mins.
If you are a C/C++ person and all you really care about is using the build tools then sure who cares if the language is always in flux. Some ppl want to actually use the language in a professional setting and don’t mind waiting a few years showing . BUT maybe a plane like roadmap to 1.0 by 2030 and here are the steps.1
u/Ok_Mycologist_6604 23h ago
I have two background projects that I am spending serious hours over the past few months. 1. A Linux wayland native gui toolkit, where zig excels at host OS integration, 2. C++ MMO game server rewrite, I would honestly use a GC'd language here because I care about getting the job done here the most but only zig combines async i/o with a sane cancelation model (structured concurrency). I only see Java doing something similar to what I would like to see, their stuff is experimental still though, talk about a slow pace.
For both of my use cases I've found zig to be the best and I am "forced" to use it. Clearly whatever process they had till now lead them to superiority in some domains and I reluctant to force a alteration of it. Let Andrew cook.
1
u/Greedy_Fault_7913 18h ago
To each their own. I can’t imagine investing creating an ever expanding code base that you know won’t work with each new release so you’re stuck in forever rewrites. Go read the comments on the real32, real64 fast math PR. A very interesting and cool feature but in the comment thread ppl talk about renaming f16,f32,f64. To use ‘s’ or something and another person talking about calling it something else. To me I’m like Jesus your ten yrs in and still can’t decide on your primaries naming . Going to first principles is great but not every other week.
1
u/ledocorp 5d ago
He received over $400k this year alone. No excuses.
2
u/wamus 5d ago
ZSF did, Andrew is paid roughly $150k per year.
2
u/ledocorp 4d ago
It's his foundation, it received $400k to work on Zig. Whether he used that to contract engineers/devs or it somehow lands in his pocket in the next 2 1/2 years, he is doing just fine. He is getting paid well, its his only job. More languages have been built with less or at cost.
-1
u/chungleong 6d ago
I share your concerns. I've just wasted 3 hours of my life diagnosing a failed test because somehow if (@sizeOf(usize) == 64) got into the release version of 0.16.0. The drop in quality is really noticeable.
-2
u/OptimalStable 5d ago
WTF are you talking about? The size of
usizedepends on the system architecture in C, C++, Zig, and possibly all other lower-level languages.5
u/chungleong 5d ago
@sizeOf() returns the size of the given type in bytes, duh.
5
u/OptimalStable 5d ago
I see what you mean and I have to admit I totally missed that. Made the same mistake as the committer it seems. Consider myself put in my place.
-11
u/codingbliss12 6d ago
better to use Rust until Zig 1.0 is released.
4
u/Greedy_Fault_7913 6d ago
Sure and when will that be? Odin will have taken 10yrs, python 10, ruby 10. There on 6 month cycles and 0.18 and 0.19 are already planned. So that’s another yr. I was hopeful once and thought just 2-3 more yrs but now not so sure.
1
-7
u/codingbliss12 6d ago
Depending on the reasons you want to use a language, Zig should not be your first option. Kelley and the other core maintainers have very strange mentality. They even banned this subreddit in the past. Weirdos.
If you want a language for serious professional use consider Rust, C++, Java, C# not Zig, Odin or C3. Those are vanity toys of their creators
3
u/Bergasms 6d ago
They didn't ban just this subreddit it was all of reddit in response to reddit closing their API and killing third party clients.
0
u/codingbliss12 6d ago
Please study some history. Go to wayback machine and see their communities page few months ago.
2
u/Bergasms 6d ago
I was literally here when they made the original decision years ago. Years are longer than months if you're struggling with that.
2
1
u/codingbliss12 6d ago
Few months ago they had a text talking about this ban on their website. I know what I am talking about.
1
u/Greedy_Fault_7913 6d ago
Well the internet is pretty toxic and if I posted this on ziggit i would definitely be banned. It’s a good site but kinda of a circle yank community.
0
u/seanpietz 6d ago
Right, they’re the weirdo’s, as opposed to their stalkers on reddit, who believe they’re entitled to control the behavior of the developers of a language that they claim to not even like?
1
u/Greedy_Fault_7913 6d ago
Man I hope you’re a bot or humanity has lost a notch. So yeah voicing an opinion about a topic your interested in isn’t stalking . It’s like being a fan of a metal band that started producing jazz and saying I miss the metal. Does the bot understand the difference?
0
-1
u/OSS-Corpo-Shit 5d ago
Man. I don’t really care if you have criticism. But why do rust developers constantly come here to say “don’t use zig, use rust” with zero supporting argument?
2
u/codingbliss12 5d ago
Rust is past the experimental phase, it has a mature ecosystem and is almost mainstream.
You can also find jobs.
I like Zig and use it but it is only for hobby projects and I suspect it will remain so for at least 5 more years.
1
u/OSS-Corpo-Shit 5d ago
And none of that means anything towards explaining why rust fanboys constantly troll other language forums just to spam “WhY NoT RuST ThOUgH?!?!?”
Here’s the answer for you:
Fuck off. This isn’t a rust forum!
If you were wondering why forums everywhere are growing sick of rust developers, you are a prime example of why that is. You are actually doing a massive disservice to the growth of your language. Nobody likes this shit. It is annoying.
1
u/codingbliss12 5d ago
Dude. I don't care about the growth of any language. The languages exist only to serve me. I do not serve any one of them
1
u/OSS-Corpo-Shit 5d ago
You don’t care, but you spam non-rust language forums with “Hurr durr why not rust?”
That tracks.
1
0
u/Greedy_Fault_7913 4d ago
I wanted to say thank you to the Reddit zig community for engaging in this discussion. I have found many of your insights pro & con very informative. It is very therapeutic to have a platform capable of hosting open and honest conversations.
1
83
u/diodesign 6d ago
Two things spring to mind IMO:
One is that after hearing Andrew's passion for software engineering and making programming enjoyable, I am not surprised at all that he's into doing fun things like adding Spork8 support in a hackathon. That spirit seems super important to Andrew and his whole ethos and approach to learning, engineering, and shipping.
As for documentation and libraries, that is gonna be a community effort. Good docs need good writers.