nodejs/community-committee

Node.js People Everywhere (npe)

DiegoZoracKy opened this issue ยท 35 comments

Node.js People Everywhere (npe)

Initial reasons published at: #186

The goal is to have a place where developers and companies involved with Node.js can register themselves, to show who they are, where they are, and how they are using Node.js. For now I've been calling it as Node.js People Everywhere (npe) but it could be any other name we agree on being more interesting.

Because Node.js is indeed everywhere, sometimes it can be hard to know where it is. In terms of people and technology. For example, a company looking for a Node.js developer, could be looking for someone with a strong expertise on back-end, front-end, micro services, API (REST / HTTP), IoT, Robotics and so on.

By gathering this data the community will start to gain new powers, at a development and business level. For example, it could be a source of information to:

  • Plan a conference or meetup
  • Find companies working with Node.js
  • Find Node.js developers
  • Have a sense of how Node.js is being used by Companies and Developers and thus using that to direct investments

And the greatest power comes with the fact that all of these could be answered by area and by scope. We will have a sense of the pulse of Node.js worldwide and most importantly, locally. A developer could be more confident to invest in Node.js knowing that there are companies and jobs around. The same goes for a startup, by having the answer for: Will be hard to find skilled developers for the chosen technology when the team starts to grow? It makes sense to plan a meetup to take place in my area?

Thinking about the minimal scope needed for us to have this platform and get value out of it:

Data

For both Companies and Developers.

type
Required
Company | Developer

name
Required

location
Required

skills
Required
Branches / scopes

keywords
Any keyword. It could be libraries, frameworks, general interests (e.g. CLI).

description/bio

links
GitHub, LinkedIn, npm, etc.

Features

search

By location
By skills
By keywords

statistics

I won't post right now ideas related to the technical side of the project, nor what I've thought in terms of new features for the project once it gets real life. I think it is better for us to focus right now just on the concept of it, and discuss how it can really be beneficial for the community.

From January onwards I will have some spare time to invest efforts on it, in case we agree on having that.

I like the idea of listing companies using Node! I think a master list would be really cool and useful for the reasons you describe. I remember seeing this tweet go viral: https://twitter.com/fhinkel/status/915603328607727621

I'm less sure of the value of a public list of Node developers. Definitely agree that some interesting data and statistics could be gathered to guide investments, but is that better suited to a survey than a public register? I can see people being hesitant to register themselves because of the risk of the list being exploited by recruiters. I can also see less participation from underrepresented groups who do not want to publicly list themselves, or minorities in tech deciding not to use Node if the list gives an impression of the community as entirely homogenous (as it might do if there is not specific outreach to combat this).

If there's a desire to help developers find each other, perhaps we could pick up this project again, publicising community initiatives: https://github.com/nodejs/evangelism/blob/master/documents/local_initiatives/current-initiatives.md

I think the company list would be an awesome start, and would immediately deliver some value ๐ŸŒŸ Did you have a format in mind? Would it be a page of the Node.js website, a README in a repo, or something else entirely?

Hi @msmichellegar, good to hear that you also agree that a list of companies would be good. Now, let me explain a bit more the idea of the developers list. I think we focused on different values that we can get from that, and this is a good thing!

My initial thought on this idea was to provide answers for the following questions:

Is Node.js worth learning?
Possibly coming from a developer wondering if there will be jobs around. Even knowing about the big names investing on Node.js, are there companies on my location willing to hire developers with this expertise?

Would be good to start a new project based on Node.js?
Possibly asked by someone starting a new business. Will I be able to find Node.js developers, to join my team, when the company starts to grow? Do they have the skills needed to work on the kind of project being built?.

One example about the latter question: I've got the following quote from the post by Mark Hinkel, referenced by Franziska, on the tweet you mentioned: "We know that the the biggest use case for Node.js is back-end development, but users are also developing cross-platform and desktop applications, enabling IoT and even powering security apps.". However, taking a look at job offerings that mentions Node.js in my area, most of them are about front-end.

The list of companies can be a piece of the answer for the first question, while the data about the developers could help with the latter. Both of them won't be an exact and final answer, but I believe it could be a good start when trying to get a sense about it.

I'm going to write down some thoughts on top of snippets from what you wrote, just for us to exchange more ideas.

but is that better suited to a survey than a public register?

I think a live platform can be more accurate at a time of a search than a survey. Things moves fast, and usually a survey is not meant to happen very often, nor to be easily (fast) fulfilled and updated.

I can see people being hesitant to register themselves because of the risk of the list being exploited by recruiters.

I agree with you that this is a real concern, but, I don't see a difference from GitHub or specially npm. It is easy to collect some data from all the users that are registered on npm, and we are there anyway. I didn't mentioned email on the description about the data that could be asked for, because I thought a bit on the same line as you.

The developers could be found via npe, and then to get in contact with them, one would need to follow to one of the profiles the developers decided to post there (if any, it wouldn't be required). And for a person who are willing to work with Node.js but are not finding a good place, getting a message from a recruiter can ended up being a good thing.

I can also see less participation from underrepresented groups who do not want to publicly list themselves, or minorities in tech deciding not to use Node if the list gives an impression of the community as entirely homogenous (as it might do if there is not specific outreach to combat this).

I see. I really haven't thought about that, but, probably people from that group are not on any public list. Including npm. I'm not seeing yet how a new public list could make this issue worst. In fact, maybe this initiative could have a good public communication in order to make people more comfortable to join it. Making clear and reinforcing that it is an open and an inclusive place, where we would really like to have everybody there. What do you think?

If there's a desire to help developers find each other

Although in the end it could also be a place "to help developers find each other", the main idea at first was to make companies and developers find each other. But I liked to know about that initiative.

Did you have a format in mind? Would it be a page of the Node.js website, a README in a repo, or something else entirely?

I believe that would be really great to have it as a part of the Node.js website. People would take it more seriously and would be more confident to join it. In the way I saw it, features to perform search by location and by skills would be able to provide the value, and the data needed to answer the questions I mentioned before.

Thanks for your feedback.

Hi @msmichellegar, I hope you are doing fine. About the list of companies that you said it could be a good start. Would you like to discuss a bit on how to make it happen? It really can be a good start. A Google Form with some easy and simple questions can be good to manage and to extract data from the answers. I imagine that maybe an easy and first not so formal approach can work in some way, like trying to make some tweets reach the companies.

@DiegoZoracKy your idea sounds great to me. Jus let me know next steps and how I can help.

@ZibbyKeaton this is still being discussed and is not being created yet. Any feedback is welcome.

For us to have it as a reference, I will mention the issue you created and the suggestion I commented there, that ended up on your answer shown in the comment above.

Following the Want to be featured in How I Got Into Node? - nodejs/TSC/issues/440

Hi @ZibbyKeaton, I've got an idea about this. If what I proposed here (Node.js People Everywhere (npe) - /issues/184) can end up moving forward, maybe there could be a section to be answered named "How I Got Into Node?" with the questions you've listed. That could be answered by anyone (developers or companies) joining the platform. Afterward, some of them could be selected or asked to be featured on Medium, as it has being done.

However, even if there is not a proper post, it can be great to have all those answers there for people to know better themselves and also it would be good for the Node.js Foundation / CommComm to have all these data to know more about the community. What do you think?*

I don't want to pollute this thread just to get your opinion about that, however I can't mention on you on the issue I'm pointing here. Try to answer me there, and then I can delete this comment from here.

If we end up creating this platform, or something alike, will be good to have your contribution around that. Thanks!

Adding a reference to a great idea regarding Certified Partners suggested by @SarahKConway:

/nodejs/community-committee/issues/186#issuecomment-351540590

SarahKConway commented 16 hours ago
Not sure if this is what you have in mind regarding npe, but on the kubernetes.io web site we've helped organize - https://kubernetes.io/partners/.

The Cloud Native Computing Foundation helped create a list of criteria for the different service and technology partners and then worked closely with the community to develop the formal conformance and certification programs.

Perhaps we start by considering the service, technology categories? We documented the criteria for each, created google form applications, and continue to review the applications as they come in and submit PRs once approved to add the partners to the website. Happy to join the meeting as an observer as well. Thanks!

And my answer to her comment:

/nodejs/community-committee/issues/186#issuecomment-351548716

DiegoZoracKy commented 16 hours ago
@SarahKConway I believe your suggestion is very good. The Certified Partners could be one more section on the platform. In the end the platform would be helpful to find Developers, Companies and also Certified Partners. For the latter, a more close strict review to accept the partners, as you mentioned, would apply, but maybe not so much for the Developers and Companies.

For example, on npm we have thousands of users registered, and if a great share of them would decide to join at a short period of time, that workflow would be a burden to manage:

created google form applications, and continue to review the applications as they come in and submit PRs once approved to add the partners to the website.
And for a company or a developer who just want to show up some interest on working with Node.js, maybe this kind of preselection it is not really needed (as it is not on npm).

I went a bit further on the idea around npe on the issue I created for it (#184). Reading there, I believe you will get a sense about why I believe that for Companies and Developers should have no barriers to the entrance. But I really see that a section for Certified Partners can be something great to have. Thanks;

Summary of the idea and what have been discussed until now (intro to this subject that can be mentioned on the meeting #192):

The initial motivation is to have people more confident on investing on Node.js, by knowing better where, and who, are the people involved with it. As a developer, probably an answer to "Is Node.js worth learning?" can contribute positively if it is possible to be known that companies around his/her location are investing on it, and probably will be hiring people with this expertise. For a company, knowing that there are developers on it area, willing to work with Node.js, can be good to answer "Would be good to start a new project based on Node.js?". To prevent the fear of not finding skilled developers when the team starts to grow. Also, the use of Node.js is very fragmented, and having the possibility to filter by specific skills (REST API? IoT? Front-end Tooling?) will help a lot here.

The idea of npe is to have a place that can provide some of these answers (and possibly more, on the future) in a way that the platform can get real life by itself. Once people start to registering themselves and use the platform, it will be already growing, working, and providing data to help on finding these answers.

@SarahKConway raised a good idea about Certified Partners, on #186, which I believe it can ended up being another section on the platform. I brought to this issue the conversation: /184#issuecomment-351531699

@ZibbyKeaton liked the idea I gave about having the questions found at "How I Got Into Node.js?", as something to be answered by people on npe (not required). This comment has this conversation: /184#issuecomment-351531699

@msmichellegar agreed with the companies listing, plus, gave a good feedback with points to be thought about: /184#issuecomment-349662084

@DiegoZoracKy sounds like there is a lot of interest/support for your suggestions. Looking forward to discussing in the Community committee meeting today.

@mhdawson Great! I will be there as an Observer ๐Ÿ‘

@mhdawson I want to ask some technical questions about what would be the options or limitations (if any) to implement a platform/feature like that. Should we think about having everything static? Is an option to host some kind of DB? If this thread is not the best place to talk about it, let me know.

@DiegoZoracKy just back from vacation. I think the best bet is to get agreement on what data should be captured and how it might be presented before going into the technical side.

@mhdawson I'm also getting back from vacation, at this week. I'm on the same page as you about defining the data scope, and how it can be used, prior to get into technical details. I asked out of curiosity. Knowing this would be good to bring me an idea of what can come next, even not bringing this topic to the conversation for now.

@DiegoZoracKy we have a pretty big infrastructure in terms of machines. The machine concern would be ongoing maintenance. Right now I don't think we have a db for the website so that would be easier, but a DB is not out of the question either.

@bnb I'm already back from my vacations, however, I started this year working at a new company and this initial weeks are being pretty rush and because of that I ended up not being able to move forward with topics regarding to this issue. I listened to the last meeting, and it seems that there is no new discussions going on about this issue, so, as we are waiting for me to push this, maybe it is better to not include it on tomorrow's meeting.

bnb commented

@DiegoZoracKy sounds good - hope your new job is going well!

Please feel free to ping anyone in the CommComm when you'd like help or like to have it re-added. โค๏ธ

This seems a great idea. This can also relate to Nodejs Application Showcase?
I submitted this from last month. I think Nodejs Foundation is still collecting responses but getting this info from all over the world will be very useful for the whole community. ๐Ÿ‘

@WaleedAshraf for sure, they are related. I see it in the same way. I think that would be great if this survey could ask about the developers' location, in order to start collecting "where we are", as who we are and how we are using Node.js are in some way already presented on the survey.

Thanks for mentioning the survey, and feel free to participate and collaborate here on this issue in case you want it.

bnb commented

Has any further progress been made / any other interest in this been generated? Love the idea, so just trying to see where it sits.

@bnb, unfortunately I couldn't find time to get back to this. Do you think the mentorship program can be a good opportunity to move forward some of the projects that are stuck due to lack of people to work on them, while teaching and guiding people on Node.js?

Great Idea with the mentoring program, I think it works well for everyone involved.

@JCMais good to know that more people see the same about that.

@bnb, any thoughts on my last suggestion?

@DiegoZoracKy another suggestion here to is that we conducted our annual Node.js 2018 User Survey. We asked a few questions around how easy it is to learn Node.js, how you are learning Node.js, and questions on where folks are located as well. We are aiming to publish the data soon and once we do we can share with you as it would help answer some goals around the project like where we might want to start a meetup group and how companies are using Node.js.

@ZibbyKeaton I would like to see this data, for sure. Thanks for letting me know about it. As I mentioned, I've been thinking about how could be good to integrate the mentorship program with the projects/issues that are open in a frozen or slow mode due to the lack of people to work on them. I'll open this discussion on the mentorship repo to see if we can do something on this direction.

Is there any news on this?

Yes, data is now available. If you head to this page: https://nodejs.org/en/user-survey-report/ you can find the interactive report, the raw data and also our executive summary. Let me know if this data helps in your efforts. If not, happy to brainstorm some alternative ways that we can gather this information and implement it for this program.

@ZibbyKeaton thanks! Just a note, in case we have people here interested on working with the raw data. As it is a spreadsheet, maybe this lib can be helpful on extracting easily the data: (DiegoZoracKy/convert-excel-to-json)

I've been thinking that I would like to see this issue/project moving forward and how I can make this happen. Currently I'm not having enough spare time to write code for this project, however, I would be able to guide and help people interested in work on it.

My idea is to do an initial breaking down of this project into micro tasks and work with people that can show up interested in bring life to this project. @Bamieh, do you think this strategy can work well on the Node.js Mentorship Program?

@ZibbyKeaton I noticed that on the raw data there is no data representing answers for:

q0005 17 In what city do you reside?  ?????????

Is there a reason for that (privacy concerns maybe) or is it just a mistake?

@DiegoZoracKy yes this because of privacy concerns.

I got in touch with Diego this week and would like to work on this and make it a reality.

Hi @TamalAnwar, this is really great! I will be creating a repo for us to manage it properly as a project. To centralize all the discussions, to plan tasks/todo, roadmap etc. What do you think?

@DiegoZoracKy Yes definitely! Let's start working on it.

Now we have a repo to start working on the technical side of project: https://github.com/DiegoZoracKy/npe

I believe it is good to keep using this thread for more broader and conceptual discussions.

bnb commented

We've not seen progress or forward movement on this in over a year. Going to close for now, but if there's more forward movement we can reopen.

@bnb I'm interested in helping out with this. What can I do to get this reopened and back in the talks?