{"id":2033,"date":"2019-04-15T10:03:27","date_gmt":"2019-04-15T10:03:27","guid":{"rendered":"http:\/\/dlang.org\/blog\/?p=2033"},"modified":"2024-03-25T07:55:39","modified_gmt":"2024-03-25T07:55:39","slug":"manpower-in-the-d-ecosystem-or-resources-resources-resources","status":"publish","type":"post","link":"https:\/\/dlang.org\/blog\/2019\/04\/15\/manpower-in-the-d-ecosystem-or-resources-resources-resources\/","title":{"rendered":"Human Resources in the D Ecosystem (or Resources, Resources, Resources)"},"content":{"rendered":"<p><img loading=\"lazy\" class=\"alignleft size-full wp-image-180\" src=\"http:\/\/dlang.org\/blog\/wp-content\/uploads\/2016\/08\/d3.png\" alt=\"\" width=\"160\" height=\"301\" srcset=\"https:\/\/dlang.org\/blog\/wp-content\/uploads\/2016\/08\/d3.png 160w, https:\/\/dlang.org\/blog\/wp-content\/uploads\/2016\/08\/d3-159x300.png 159w\" sizes=\"(max-width: 160px) 100vw, 160px\" \/><\/p>\n<p>In November of last year, I announced here that we were <a href=\"https:\/\/dlang.org\/blog\/2018\/11\/10\/the-new-fundraising-campaign\/\">launching a Pull Request Manager campaign<\/a>. We wanted to raise $3000 in three months as compensation for Nicholas Wilson to make a dent in the pull request queues of the core D projects. The community answered the call and Nicholas got to work. It was a successful run, so we decided to go another round.<\/p>\n<p>About a month remains in the second round campaign, but donations have come in at a slower pace. Still, we\u2019re confident the community will once again <a href=\"https:\/\/www.flipcause.com\/secure\/cause_pdetails\/NDUwNTY=\">help us reach the finish line<\/a> so we can compensate Nicholas for his time. We intend to launch a third round at some point in the not-too-distant future, but before we do that we\u2019ve got some different fish to fry.<\/p>\n<h3 id=\"themanpowershare\">The Human Resource Share<\/h3>\n<p>In December 2018, the first Quarterly D Language Foundation meeting was held online. It came together at the prodding of the aforementioned Nicholas Wilson. Some well-known D shops\u2014Dunhumby (Sociomantic), Funkwerk, WekaIO, and Symmetry Investments\u2014were invited to send representatives to join Walter, Andrei, Ali \u00c7ehreli, Nicholas, and myself in a Skype call. Given that it was the inaugural meeting, the agenda was light. We primarily wanted to hear what the companies&#8217; biggest D issues were at the time so that we could prioritize them in the work pipeline. However, we did raise one idea that we wanted the companies to consider for our benefit.<\/p>\n<p>A persistent problem in the D ecosystem is a lack of available human resources to work on the issues that don\u2019t fall into the realm of personal or corporate interests. By that I mean that volunteers tend to contribute where they have a personal interest and contributions from the companies tend to be aimed almost exclusively at areas that have a direct benefit to their projects. The result is that a large number of issues that do not fit into either category fall by the wayside. This is only to be expected and we aren\u2019t complaining. What we are doing is trying to determine how to direct energy toward those neglected issues without the need for raising money.<\/p>\n<p>So we asked the companies to consider a form of \u201chuman resource sharing\u201d, the idea being that each company would periodically designate one employee to spend a day on the company dime working on D ecosystem tasks that don\u2019t necessarily have a direct impact on the company\u2019s interests. The representatives promised to take it back to their bosses and give us an answer at the next meeting.<\/p>\n<p>In the interim, I wrote up <a href=\"https:\/\/gist.github.com\/mdparker\/7e2894bef3e44daa1d1fac934a2c1aad\">a more concrete proposal<\/a> that outlined two options for approaching it: a monthly rotation where each company takes turns doing the work, and a quarterly system where each company commits to completing at least one item on the task list per quarter. I asked the companies to provide us with their preference at our second quarterly meeting in March.<\/p>\n<p>At the March meeting, we invited a few more companies to join us. Given that these are either in the startup phase or aren\u2019t using D exclusively, I\u2019ll play it safe and keep quiet about who they are for now. Overall, the response to the Human Resource Share was positive. Unfortunately, most of the companies are already short on human resources as it is and cannot commit to our quarterly scheme. However, one company did commit to starting immediately and another committed to providing work as they can. All of them committed to helping in other ways, which includes the provision of funds (see below), and hope to have the human resources to spare in the future.<\/p>\n<p>To that end, we\u2019ve set up <a href=\"https:\/\/github.com\/dlang\/ecotasks\">the ecotasks repository<\/a> to house our Ecosystem Task List. The list was initially envisioned as a collection of specific tasks, e.g. specific Bugzilla issues, but that makes it more difficult for each tasked worker to decide what to do. Instead, we\u2019ve cobbled together a set of task groups. For now, that consists primarily of links to the GitHub Issues page for different projects and a request to \u201cclose as many issues as possible\u201d. The idea is that workers can go to an issues page and work on solving those they can squeeze into their allotted time.<\/p>\n<p>We\u2019ve put this on GitHub not just as a means of transparency, but also because we would like to invite the entire community to participate. The list is loosely sorted by priority in that items higher on the list are considered higher priority than those lower on the list, but there\u2019s no relative priority between specific tasks. The ordering is sure to change over time.<\/p>\n<p>We ask that anyone working through the list to, at the start of the work session, open an issue and leave a comment indicating which item is being worked on. For example:<\/p>\n<blockquote><p>I\u2019m working on the dub registry issues right now. Specifically, I plan to tackle issues #I, #J, and #K.<\/p><\/blockquote>\n<p>Then, at the end of the work session, close the issue with a note indicating what was accomplished.<\/p>\n<p>If you have a little time to spare one weekend, please consider visiting the ecotasks repository and taking on one or two issues. Even better, challenge yourself to go through it once a month and see what you can accomplish. D depends on volunteer effort to thrive. We have a lot of it already, but we always need more. This is one of many ways to make an impact even if it isn\u2019t an enjoyable or very visible one.<\/p>\n<h3 id=\"themanpowerfund\">The Human Resource Fund<\/h3>\n<p>There are some tasks in the D ecosystem that no amount of cajoling and begging will get done because they\u2019re too complex, too time consuming, require a specific skill set to properly complete, or all of the above. When the companies offered to throw money at us in place of human resources, that led us to a new idea.<\/p>\n<p>We are now running a permanent fundraising campaign specifically aimed at solving the bigger issues. <a href=\"https:\/\/www.flipcause.com\/secure\/cause_pdetails\/NTUxOTc=\">The Human Resource Fund for D Ecosystem Tasks<\/a> is intended to grow and grow and grow. We\u2019re currently in talks with some of the companies about how often and how much they can contribute toward it and in what amounts. We also invite the community at large to donate to it now and again.<\/p>\n<p>Recently, Andrei mentioned in the forums that we need to put together a qualified team to complete the spec and implementation of <code>shared<\/code>. That\u2019s an example of the sort of big issue we want to use this fund to solve. Donations small and large are equally welcome. The sooner we can get a nice pile built up, the sooner we can start prioritizing issues and finding the people to solve them.<\/p>\n<p>For now, we want to focus on beefing this fund up a bit so we&#8217;re going to hold off temporarily on the next Pull Request Manager campaign, but we&#8217;ll definitely come back to that again before too long. Anyway, the current campaign is still <a href=\"https:\/\/www.flipcause.com\/secure\/cause_pdetails\/NDUwNTY=\">in need of your attention<\/a>!<\/p>\n<h3 id=\"affectingchange\">Effecting Change<\/h3>\n<p>Every D user has different priorities and goals, different needs and desires. A full-featured IDE is important to one person but not even worth mentioning for another. One programmer expects to see a native D GUI, another is happy with bindings to an existing C or C++ library, and yet another has no need of a GUI at all. One person contributes to a certain D project, but never to any others, while another person has a different set they contribute to, or starts their own. Somewhere in the middle are the issues that are too boring or too complex, the issues that never rise to anyone\u2019s attention or are considered undoable for whatever reason.<\/p>\n<p>In the time I\u2019ve been following and involved with D, I\u2019ve seen the leadership try a number of different ways to drive energy toward some of these unsolved issues. What every approach they\u2019ve tried has had in common is that <em>they depend on the community<\/em>. When you don\u2019t have the human resources to do the job, you need the money to hire the human resources. When you don\u2019t have the money, you need to ask for and rely upon the charity and goodwill of others. And if there&#8217;s no one with the bandwidth to continuously push the issue, fewer people step up. When the community doesn\u2019t step up, then either someone on the core team has to (at the expense of time taken from their normal workload) or the issue languishes.<\/p>\n<p>The two initiatives I\u2019ve described above, the Human Resource Share and the Human Resource Fund, are the latest attempts to make things happen. Again, all contributions are welcome and appreciated! I don\u2019t want this to come off as a complaint, because that\u2019s not what is intended at all.<\/p>\n<p>This is a call to arms! We\u2019re asking members of the community to roll up their sleeves and do the dirty work they normally wouldn\u2019t think to do, or even would prefer not to do. We\u2019re asking for crowdsourced effort in solving problems that will make the D ecosystem better for all of us. A few dozen people spending an hour here or a weekend there will mean more issues closed and more members of the core team can stay focused more often on the work in their purview, which is another big win.<\/p>\n<p>If you can\u2019t help us out with your time, help us out with your money! <a href=\"https:\/\/www.flipcause.com\/secure\/cause_pdetails\/NTUxOTc=\">The Human Resource fund<\/a> will always need boosting. So, too, <a href=\"https:\/\/www.flipcause.com\/secure\/cause_pdetails\/NDMzMzE=\">the General Fund<\/a>, the current <a href=\"https:\/\/www.flipcause.com\/secure\/cause_pdetails\/NDUwNTY=\">PR Manager campaign<\/a>, and any other campaigns we launch in the future. You can also support us when you shop at Amazon by doing so via <a href=\"https:\/\/smile.amazon.com\/gp\/chpf\/about\/ref=smi_se_rspo_laas_aas\">smile.amazon.com<\/a> and selecting \u201cD Language Foundation\u201d as your supported charity. When you buy products marked \u201cEligible for AmazonSmile donation\u201d through <a href=\"https:\/\/smile.amazon.com\/\">smile.amazon.com<\/a>, the foundation will receive 0.5% of the purchase price. Finally, you\u2019ll soon be able to support D through the DLang Swag Emporium, where you\u2019ll be able to purchase D-themed t-shirts, coffee mugs, and more.<\/p>\n<p>We\u2019re always open to ideas on how to get more things done. If you have anything you\u2019d like to suggest, bring it to the forums for community discussion or email me directly at <a href=\"mailto:aldacron@gmail.com\">aldacron@gmail.com<\/a>.<\/p>\n<p>Now, let\u2019s make things happen!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>There&#8217;s lots of work in the D ecosystem waiting for someone to complete it. This blog post introduces two initiatives, the Human Resource Share and the Human Resource Fund, aimed at making that happen!<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[15,6,36],"tags":[],"_links":{"self":[{"href":"https:\/\/dlang.org\/blog\/wp-json\/wp\/v2\/posts\/2033"}],"collection":[{"href":"https:\/\/dlang.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dlang.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dlang.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dlang.org\/blog\/wp-json\/wp\/v2\/comments?post=2033"}],"version-history":[{"count":18,"href":"https:\/\/dlang.org\/blog\/wp-json\/wp\/v2\/posts\/2033\/revisions"}],"predecessor-version":[{"id":2051,"href":"https:\/\/dlang.org\/blog\/wp-json\/wp\/v2\/posts\/2033\/revisions\/2051"}],"wp:attachment":[{"href":"https:\/\/dlang.org\/blog\/wp-json\/wp\/v2\/media?parent=2033"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dlang.org\/blog\/wp-json\/wp\/v2\/categories?post=2033"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dlang.org\/blog\/wp-json\/wp\/v2\/tags?post=2033"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}