7 ms·
Podcast host here. I left this comment in a different submission but will repost here since front page and all. Andrew shared the backstory behind why he creat
by agbell 5y ago
Podcast host here. I left this comment in a different submission but will repost here since front page and all.
Andrew shared the backstory behind why he created Zig, why he decided to leave his job to work on it full time and why he is confident he can build THE language to replace C.
Let me know what you think of the episode.
- wyldfire 5y agoI listened to this the other day. I usually don't listen to podcasts like this and when I do occasionally click on one I rarely follow through and finish the episode. I enjoyed this one and finished it -- though, I was already interested in the subject matter. The topic of funding Zig came up during the podcast. So, Andrew, if you come across this post: can you have zig foundation accept cryptocoin donations? Not sure how hard that is to do but if you toss up an bitcoin/monero/etc address I will donate some. Also, Andrew - you should consider giving a talk at an upcoming US or Euro LLVM conference. Even if it's just a lightning talk, it would be valuable for the community to hear about a non-clang compiler (or a super-clang compiler). I think US Bay Area will have one in ~October 2021?
- hawkesnest 5y agoI've been listening through the podcast's episodes and find it very interesting! It hits all the right marks for me. It's well structured, the audio quality is good (better in more recent episodes), length is appropriate, solid pacing. In fact, I just became a "Junior Engineer" supporter on Patreon. Keep up the great work. Hopefully one day I'll have done something worth talking about on your show.
- agbell 5y agoThanks for listening and thanks for supporting me! Yeah, the further you go back into the back catalog the more you are listening to my learning-to-podcast phase. Hopefully they aren't too bad... I am a slow but persistent learner.
- losvedir 5y agoThanks for the transcript! I'm not usually a fan of audio/video so I love that I can just read the interview. How is it generated? Speech recognition? Much in the way of hand editing necessary?
- agbell 5y agoI tried machine translation but it just isn't there for technical content. I use rev.com, which is a human transcription service. I supply them with a thesaurus of terms used and then proof read it and correct it myself after. The headings and jump points I add manually.
- VyseofArcadia 5y agoI have some feedback about the transcription. There are some places where you are transcribing a conversation with Andrew, and you're labeled as Adam. There are some other places where you are not having a conversation with Andrew, but are instead acting as a narrator to insert context or clarification. These are also labeled as Adam. It becomes clear which are which from context after a couple sentences, but it's a little jarring. It would be nice if the second kind were labeled Narration or Voiceover or something.
- agbell 5y agoThanks for reading. Interesting idea! I did have this thought myself at some point and went and checked on some other narrated podcasts and found they kept it all under one label, but I can see how that could be confusing. Maybe I'll try that for the next one.
- bluejekyll 5y ago> THE language to replace C. One thing I think people keep getting hung up on is this idea of there being a pure replacement for C. Consider the fact that C has already been displaced in many areas. Consider C++ as the first big one, it didn’t add memory safety over C, but for many it was more ergonomic and easier to reuse code across different systems (the STL is a big advancement here). That took a huge number of users away from C. Then you have Java that added memory safety and that pulled away even more folks. What’s been left is a particular niche for C that is being being targeted by new features in C++, Rust, and possibly Zig. The question really becomes what niches will each of these languages carve out from the existing C usage? Why would users adopt one over the other? There’s plenty of space for all of these languages to thrive, what I don’t think we’ll ever see is “the one true C replacement”, first because C itself will continue for a long time, but also because each of the existing C replacement languages are already are doing well. Will Zig capture the last C uses? I doubt it, but that’s nothing against Zig, it’s just the plain truth about how the computing world works. See the continued devotion to FORTRAN as an example.
- jolux 5y agoI respect the hell out of Andrew and what he’s accomplished with Zig, but to an extent I think it’s counterproductive to be creating new languages that aren’t memory safe. What niche does Zig fit? As far as I can tell, it seems to be people who find Rust cumbersome, and don’t think it’s worth the benefits in memory safety. I don’t personally understand why I would choose Zig over Rust. I think it’s long past time we closed the book on unsafe languages as a profession.
- ifreund 5y agoThis comment is a perfect example of what Andrew was talking about here: > Andrew: It’s funny how it just kind of changes course as the language gets taken more and more seriously. And now, all the comments are even starting to shift to kind of like the philosophy of memory safety and whether Zig is immoral. I'd suggest you go listen to the podcast or at least read the "Zig Is Immoral and Unsafe" section of the transcript as well as the following one.
- tasogare 5y agoI'm reading a page about Zig from the official documentation and it says: > For C/C++ projects, having dependencies can be fatal, especially on Windows, where there is no package manager. Which is doubly wrong. First there is an official package manager for Windows (winget), but there is also vcpkg, a package manager for C and C++ libraries, also developed by Microsoft. Otherwise the language seems to have good design, so it's bit regretful to use strawman argument about package managers. PS: the doc page is https://ziglang.org/learn/why_zig_rust_d_cpp/ https://ziglang.org/learn/why_zig_rust_d_cpp/
- geodel 5y ago> First there is an official package manager for Windows (winget Just calling half finished product "official" doesn't really mean much. On my linux server from operating system to thousands of utilities are packaged in native format and available via package manager like yum. On Windows forget dependency management etc not even basic installation of one percent of ecosystem is covered by package manger.
- AndyKelley 5y agoI just want to mention that it was delightful working with you. I would definitely recommend anyone invited to come on your show to accept the offer. I've become a sponsor of the podcast and I invite others to join me :)
- ncmncm 5y agoMy only question is why nobody can seem to keep track of whether your name is Kelly or Kelley. Even in the podcast transcript it is both. Actually that's not true, I have another question. The single greatest strength of both C++ and Rust is the destructor: it makes them viable. Its lack is all that keeps me from thinking Zig is something I might want to use. Why doesn't Zig have an analog of the destructor / Drop trait?
- jdright 5y agoBecause there is people that think defer is a good solution (which it isn't).
- nusaru 5y agoComing from C, it's a bit better than nothing at all.
- ndesaulniers 5y agoHey hey hey, GNU C has __attribute__((cleanup(fn)))!
- ncmncm 5y agoCompile with a C++ compiler, and suddenly you have a great deal more than nothing. For free.
- flumpcakes 5y agoSome people who use C don't want a destructor like feature for performance reasons. They would prefer everything is cleaned up in some global context rather than each object in a chain of stack frames having to clean themselves up when an error somewhere buried deep in code. I don't have any benchmarks because I don't work on low level code all day, but apparently it can be slow enough that it puts people off using destructors. This isn't a joke. In fact, some people will not use new/delete. Some people will also go further and not even use malloc but prefer to use the syscalls for getting a block of memory directly from the operating system and managing it completely themselves. These are usually the people who don't use the standard library/libc.
- nusaru 5y agoHi, thank you for your podcast. I've been enjoying this episode so far, and I'm at the point where the transcript says "[inaudible 00:37:20]". I think Andrew says "Kris Tate", short for Kristopher Tate.
- agbell 5y agoThanks!