Hey guys

hey guys I am ashish sharma a computer science sophomore do let me know how i can get more involved in the community :grinning_face_with_smiling_eyes: also where should the contribution should start from thanks in advance

First, read the entire language guide. I recommend that to everyone, it’s extremely useful even if it isn’t required to write Swift.

Second, follow this: Swift.org - Contributing.

Also, please try to use more helpful topic names in the future.

7 Likes

Hey Ashish! We’re very happy to have you be part of our community, and take part in this epic project of ours, if you can call it that.

My advice would be to observe the forum for a couple weeks / month or two. Understand the style of conversing, how people approach problems, how they agree and disagree, and how they do constructive criticism. You can look at the new threads, but also at the old threads - anything under “Evolution” should be interesting.

If you’re really short on time, I’d advise searching for “Chris Lattner” in the Evolution section - not only is @Chris_Lattner3 the creator of Swift, but for me he’s the perfect example of detailed, balanced feedback which is essential to the healthy evolution of the language. He always falls back on the first principles which constitute the foundation of the language, and which are also essential to understand. Some examples of these foundational first principles are progressive disclosure of complexity, safety, etc. The more you read and observe the threads, the more you’ll come to understand these principles.

Afterwards, once you’ve become really familiar with the community and the forum, and feel confident enough to provide constructive feedback, then you can comment on all the different proposals / pitches which come up every day as much as you wish!

Then after that, once you understand what the community expects from proposals, you can start making your own! Don’t worry if it takes time to get here though, I myself haven’t even made one yet!

I hope you enjoy being part of this community as much as I do!

Nikita

P.S: This is just my opinion, I’m sure there’s many other paths towards contributing, this is just the one that I’m most familiar with.

3 Likes

Welcome to the Swift forums!

I think it’s important to note that contributing to the community doesn’t just mean participating in the “Evolution” category — it can be all sorts of things! You could help people with their code in the “Using Swift” category or make your own project and post it in the “Community Showcase” or “Related Projects” category. These are very valuable ways to contribute to the community.

If you already have some experience in writing Swift code, I second @Saklad5’s recommendation that you read the entire The Swift Programming Language reference book. It’s very detailed without being hard to understand, it details parts of Swift’s philosophy, and you may learn a few things that you weren’t taught (or that you forgot) in another programming course.

I also second @Saklad5’s recommendation that you read Swift’s “Contributing” page, and maybe even the entire “Community” section of the sidebar. The linked page details the process for contributing to the project.

I agree with @nikitamounier that it can be useful to read other forum threads to see how the community typically interacts.

If you choose to contribute to Swift’s language evolution process, keep these things in mind:

  • Don’t just make proposals because you think it would be cool to have an impact on a large project like Swift. Instead, make a proposal when you think a change to the project could make Swift a better language to work with. Think critically about proposals and their possible edge cases.
  • Make sure to read the Swift Evolution Process and Commonly Rejected Proposals documents.
  • Use the Documentation Index to see rationales for why things in Swift work the way they currently do. Make sure your proposal makes sense within the context of the Swift programming language.
  • Remember that most evolution proposals don’t end up making it into the language, and if they do, they may be heavily modified from the original proposal. This is intentional — many seemingly-good ideas have some flaw in them or they may not be useful enough to warrant a change. It’s important that new features aren’t just added on a whim, as we want to minimize the number of features we later regret adding.

One last note: I realize that this is a lot of reading. In fact, I think it’s pretty likely that many people who contribute on these forums haven’t read all of these documents. However, I still recommend reading them in order to make yourself more knowledgeable about the Swift project so that you can improve your own code and be more helpful. Also, if you have any questions about something you’re reading, feel free to ask them on these forums — there may be people interested in helping you understand them.

6 Likes

thanks !! surely i will follow this :cool:

Hi @nikitamounier ,
I'm Shubham and I'm also new to swift. This thread has given me a nice roadmap on how to learn swift in the best way possible and has motivated me a lot. Thank you very much for your guidance, I would definitely follow that.
Looking forward to interact with you in future.:slightly_smiling_face:

2 Likes

Well I'm very happy to hear that Shubham. If you have anything, and I mean anything, you need help with, make sure to create a post in the Using Swift section and me and other people will be happy to help. Remember, there are no wrong questions! Also, don't forget that hackingwithswift.com is your best friend.

2 Likes

Thanks! I'll definitely do this

Sir, can you please help out with swift contributions for GSOC 2022. I any. Where do we start it?

This was answered here: Gsoc 2022 - #10 by ktoso