Zig Day Portland #3: May 9th

We just announced the next Zig Day in Portland, Oregon; it’ll be on May 9th at the McMenamin’s on Broadway near the Lloyd Center. Come join us!

3 Likes

I’m in town looking at apartments this weekend, but I’ll be moving here in April so hopefully I can catch the next one!

1 Like

We’re meeting tomorrow!

1 Like

See you there!

2 Likes

Dang. Wish I lived slightly closer. I’ll have to travel-plan next time it’s in Portland. Looks like a good turnout. Hope y’all have fun.

I’m in town now! Looking forward to meeting you all. I just got a membership at Kiln (coworking space). They sounded amenable to hosting meetups in the future, but I didn’t give them any specifics.

1 Like

Awesome, see you there!

Would it be helpful to bring an extra power strip or two? I live within walking distance but I’ve never been here before.

Wouldn’t hurt! Only two outlets. I’m bringing a couple

Thanks for coming everyone, this was a fun one!

1 Like

Thanks for hosting this event! I thought I’d be in over my head and wasn’t sure about attending, but I had a lot of fun. Thanks to everyone who explained beginner concepts to me so clearly and succinctly. Studying the ArrayList toOwnedSliceSentinel as a way to learn Zig was fascinating. I’m really looking forward to the next zig day, maybe I’ll be able to build something simple by then. Summer gets kind of busy with activities, so do you know when the next one will be, so I can reserve it on my calendar?

7 Likes

thanks, Sam. it meant a lot to me how much you enjoyed the day, truly.

in about 6-8 weeks; no hard date right now. sign up here Zig Day and you’ll get an email when it is announced :slight_smile:

1 Like

I’ve signed up, thanks!

I know editor setups are pretty idiosyncratic so this question might be too open ended. I saw folks zooming around code very quickly, and wondered, since everyone was gravitating towards Nix, whether everyone’s also gravitated towards the same kind of ide setup that works best for learning zig and systems programming? Particularly navigating between editing, running commands, looking up documentation, and jumping into libraries to learn more.

I’m just using vscode on a macbook with an unmodified neovim plugin, and ghostty for shell.

My setup looks like this:

  • Terminal: Ghostty, so I can easily set up two panes side by side, one for an editor, one for a shell.
  • Editor: Helix, has built in support for language servers (which give you autocomplete, go to definition, etc).
  • ZLS (language server)
  • Browser: Language reference and std docs open in separate tabs

ZLS is a bit limited compared language servers that have been around longer, so I typically have a zig build —watch -fincremental running in the second pane of my terminal to find all of the errors (ZLS can’t find all of them).

I’m usually flipping between the std docs in the browser, the language reference in the browser, and using go to definition to see the actual source.

On macOS my setup is a little different for other languages. I use Dash for browsing docs offline, and I have it integrated with Alfred. This lets me do Cmd+Space to get a search bar, type rust PathBuf, and immediately be taken to the documentation page for std::path::PathBuf in Dash. Super convenient. Zeal is the Linux alternative to Dash, but it’s just not anywhere near as good.

Pretty much this; editor doesn’t matter so much as long as you’re using ZLS if you’re used to that level of editor integration.

With regard to the stuff ZLS doesn’t catch, you can setup a “check” step in your project’s build.zig.zon: Build-On-Save - zigtools

This will put the compiler errors in your editor