Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mai 2019 #79

Closed
Florob opened this issue Apr 4, 2019 · 14 comments

Comments

Projects
None yet
6 participants
@Florob
Copy link
Collaborator

commented Apr 4, 2019

ToDo

  • Settle for a date and location: Wednesday 2019-05-01, 19:15 CET at C4 (default: first Wednesday each month)
  • Send "Save the Date" info (with link to this ticket)
  • Basic Agenda (default: Open Space)
  • Final invitation (deadline 2019-04-17)

Invitation draft

Title: Parallel Programming

Dear Rustaceans,

we're happy to announce that our next meetup will be on **Wednesday, May 1, 2019** at **19:15**!

This time around we'll look into Rust's capabilities surrounding parallel and concurrent programming.
The evening will start of with a talk describing these capabilities and the practical application thereof.
After that we have prepared some beginner to intermediate exercises in parallel programming, that can be solved
alone or in small groups. Help with working these out will be available. We also expect more experienced participants
to support those new to the language.

We are looking forward to seeing you. :-)

Yours,
Florian

- - -

The meetup will likely be held in English, we will however reevaluate this at the beginning of the evening and may switch to German if desired.

Talks:
# rabite0 - Fearless Concurrency and Trivial Parallelism — Theory and Practice
In this talk we're going to take a look at the building blocks Rust provides
to make concurrent/parallel programs easier and safer to write.
We will take a look at the interactions between its ownership system and the Send/Sync traits,
how it prevents data races at compile-time and how things can be built on top of those primitives.

Rust News

@Florob Florob pinned this issue Apr 4, 2019

@mre

This comment has been minimized.

Copy link
Contributor

commented Apr 4, 2019

Idea: maybe we could ask around on Reddit/Twitter for topics already. We could motivate people to give talks. If that doesn't work, we could go round and each participant quickly talks about their current status, what they are working on or where they got stuck at the moment. Of course, people are free to skip their turn and just listen.

@rabite0

This comment has been minimized.

Copy link

commented Apr 15, 2019

Hi, I'm the author of hunter (https://github.com/rabite0/hunter). A friend invited me to join the upcoming Rust meeting.

Maybe I could do a short talk about hunters design choices, difficulties I had implementing, etc.

EDIT: Nice, mre already knows about hunter. I kind of knew I had seen that face before. What a coincidence ;)

@mre

This comment has been minimized.

Copy link
Contributor

commented Apr 15, 2019

From my side, that would be awesome! Sure would make for a nice talk and an interesting discussion. I like the project, so I might be biased. 😆 Let's see what @Florob has to say. Apart from that it would also be nice to meet you in person.

@rabite0

This comment has been minimized.

Copy link

commented Apr 15, 2019

Yes, that would be great. What a coincidence, hunter is so new and niche and now I'm going to meet someone who helped me getting it to work on macOS.

I just need to know in the next few days, so that I can prepare the talk.
Also, it doesn't have to be focused strictly on hunter and its architecture. I could also talk about how Rust is great for concurrent programs in general. If it's a go, I have a few more questions, but I'm not sure if this is the right place. But if it's ok, I will ask once it's decided.

@Florob

This comment has been minimized.

Copy link
Collaborator Author

commented Apr 16, 2019

@rabite0 Hi, thank you for the offer. I had actually also seen hunter already, too. It seems like an interesting project. I'd be happy to have you at our next meetup. My understanding is that hunter is quite concurrent, so that would play into discussing the design/architecture anyway, right? I'd leave it up to you how general you want to get in your talk. Do you have a sense on how long your talk would be? I'd like to get a sense of what other program points could be paired with it time-wise.

Some preemptive answers and questions:

  • The audience is usually composed mostly of people relatively new to Rust, many are complete beginners, some have done small hobby projects, 2-3 people are actually writing Rust professionally.
  • We generally try to record and publish talks for the larger Rust community under a CC-BY license. Feel free to opt-out of this though.
  • It would be good if you could write up a short abstract so we can use it in the announcement.
  • Feel free to ask any other questions you may have here.

@uwearzt Since I haven't heard from you, I suppose you are not opposed to putting of embedded til after May? Or could it end up as a second talk for the evening?

@rabite0

This comment has been minimized.

Copy link

commented Apr 16, 2019

Great, thank you.

Yes, I mean since that's the code I've actually written and know best it would only make sense for me to take parts of it to show the audience how Rust's strengths can be used in practice.

I was thinking about around 20 minutes, maybe a bit more, depending on the amount of questions, so I think having two talks would be fine. I don't know how those meetings usually work, though. Recording it is fine.

Short abstract:
In this talk we're going to take a look at the building blocks Rust provides to make concurrent/parallel programs easier and safer to write. We will take a look at the interactions between its ownership system and the Send/Sync traits, how it prevents data races at compile-time and how things can be built on top of those primitives.

EDIT: Slight correction/clarification.

Does that work?

@Florob

This comment has been minimized.

Copy link
Collaborator Author

commented Apr 22, 2019

@rabite0 That's absolutely fine. I'd still need to know a title for the talk (with that abstract I assume it's not going to be just "hunter") and what name you'd want to be announced as (rabite0/nickname is fine if that's your preference).

Since it doesn't look like we'll have another talk, I'm thinking about preparing a couple of concurrent/parallel programming exercises in the spirit of rustlings that we can do after the talk. Doing programming tasks in smaller groups/alone with assistance available is something people have asked for in the past, but we haven't done yet.

@rabite0

This comment has been minimized.

Copy link

commented Apr 23, 2019

Since you said there are a lot of people relatively new to Rust it probably makes sense to cover the foundations first. Depending on how bored the audience is I can accelerate or slow down, of course.

Also, when I thought about it, the only things I use in hunter are rayon's thread pools and my own Future-like Async-type on top of that, so there wouldn't actually be too much to talk about.

Well rayon is pretty awesome in itself, so that's going to get mentioned a bit ;). I guess the Async-type is somewhat interesting too, in that it shows how simple it is to implement something like it and be confident that it doesn't blow up.

What about "Fearless Concurrency and Trivial Parallelism - Theory and Practice" for the title?

Programming exercises sound pretty cool. Can't really help with preparation, but I wouln't mind helping out to the best of my abilities on site.

Edit: I don't want to spell out my real name here. Will introduce myself properly at the meeting. I guess it will be recorded anyway, but still..

Should I do the talk in English or German? I could switch on the fly, but it would be best if the slides match the language. I guess I could also default to English in the slides and then talk in either.

@Florob

This comment has been minimized.

Copy link
Collaborator Author

commented Apr 24, 2019

@rabite0 I think that will work fine as a title. Feel free to remain as pseudonymous as you like, even during the meetup, or at least the recorded part. I just need to know your preference for announcements and recording metadata. English is usually the preferred language for talks at our meetups. There are often 1-2 participants that don't speak German very well. It also makes recordings accessible to more people.

I have initial announcement text up on the website and meetup.com (both linked from the issue description). I think I even got the date right this time around. Feedback welcome. I'll do the proper announcement (letting Meetup send out mails, twitter, etc.) sometime this afternoon.

@uwearzt

This comment has been minimized.

Copy link
Collaborator

commented Apr 28, 2019

@Florob Back from vacation.

May 1st is a public holiday in Germany, i will not be able to attend, sorry. I started to prepare my talk, so we can plan it for June.

@fyl2xp1

This comment has been minimized.

Copy link

commented Apr 29, 2019

I cannot attend for the same reason :(

@FichteFoll

This comment has been minimized.

Copy link

commented Apr 30, 2019

Regarding Futures, async and await stuff, this brand-new comment and the article draft it references may be of relevance. Though it doesn't include an actual decision to report.

@rabite0

This comment has been minimized.

Copy link

commented Apr 30, 2019

Confirming my attendance.

@Florob Florob unpinned this issue May 2, 2019

@Florob

This comment has been minimized.

Copy link
Collaborator Author

commented May 2, 2019

We had a fairly successful meetup, feedback on the threading exercises was generally positive and people seemed to have learned one thing or the other from them. They are still available at https://github.com/florob/threadlings.

@rabite0 I'm rather confused you didn't show up after explicitly reaffirming your attendance. Hope you're all right.

@Florob Florob closed this May 2, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.