on-boarding new racketeers

136 views
Skip to first unread message

Stephen De Gabrielle

unread,
Aug 12, 2019, 10:52:37 AM8/12/19
to Racket Users
Hi,

I've been thinking about small things that can be done to lower the barriers to entry to the racket community, and I've come up with some ideas! 

1. Adopts the standard GitHub set of issue labels* for all active repositories, only deviating where necessary. 
Benefit - This would allow potential contributors to easily identify issues by their labels or the GitHub 'contribute link: 
Downside - needs to be done manually through the labels page  https://github.com/[owner]/[repository]/labels 

2. Adopt standard issue templates for 'good first issue', 'documentation' & 'enhancement'
e.g. I've created some examples at but they are not ready for use in that the are incomplete and/or wrong: https://github.com/standard-fish/summer-competititon-2019/tree/master/.github/ISSUE_TEMPLATE/  
Benefits:
  a) would allow the quick logging of issues with the correct labels
  b) would guide contributors to log issues with relevant issues so the respective owners can triage them quickly
NB as these are files that are easy to add via a pull request - no 'owner only' ui like (1).

3. if you are a repository owner please apply labels to existing issues (especially 'good first issue') - even if the descriptions are not great. 

4. if you have a 'good first issue', but don't have time to action it - just log it and leave it. that was it is not forgotten and someone can find it.

5. Put the location of the scribble source file at the beginning of every scribble file because it is really hard to find the location of scribble source; 
'Quick: An Introduction to Racket with Pictures' is in the slideshow repo: https://github.com/racket/slideshow/blob/master/slideshow-doc/scribblings/quick/quick.scrbl  it is worse when one scribble file inlines  another.

I think this are small steps will make it easier for new racketeers to get started and existing contributors not to get fatigued.

Please let me know what you think

Kind regards, 
Stephen


---

* standard GitHub set of issue labels: 
-   bug - Something isn't working
-   documentation - Improvements or additions to documentation
-   duplicate - This issue or pull request already exists
-   enhancement - New feature or request
-   good first issue - Good for newcomers
-   help wanted - Extra attention is needed
-   invalid - This doesn't seem right
-   question - Further information is requested
-   wontfix - This will not be worked on

Stephen Foster

unread,
Aug 13, 2019, 12:23:44 PM8/13/19
to Racket Users
+1

Thanks for thinking about this.  I'll start moving some of my repos in this direction.

Neil Van Dyke

unread,
Aug 13, 2019, 1:28:29 PM8/13/19
to Racket Users
I know this particular one is a minor thing, but they add up, over time...

Please consider approaches that are open, rather than owned, and try not
to increase lock-in by big-business plays.

It's pragmatic to keep using GitHub in limited ways right now, *but*
part of that is being judicious about creeping lock-in, which is a
pattern we've seen for decades (and the current owner of GitHub has been
one of the most epic abusers).

To use GitHub as an example, though this is not specific to them: They
are not your friend.  They used to seem like your friend, but that
friendship was worth fewer than 7.5 billion dollars.

When you effectively partner with such a company, approach it as an
temporary alliance, limit their power over you, and keep trying to
increase your options/freedom.

Also, consider what you're promoting, especially to impressionable
students around Racket.  Every use is effectively you endorsing
something questionable.

Maybe it's time to poke the Conservancy.  It should be on their radar by
now, and some of the solution applies to all projects.

(I suggested wait&see on moving the repos from GitHub, partly since it's
unclear which competitors will sell out next for GitHub/Slack/etc.-type
lock-in billions.  And I don't have time to see which non-profit ones
are just an old PC under someone's dorm bed, and will disappear as soon
as that person gets a job.  The Conservancy is in a better position to
investigate, and to audit/fund to make sure whatever project has
sustainable funding. In the meantime, that doesn't mean we have to keep
increasing our non-repo feature dependence, and make it harder to move
once we have a chance.)

Alexis King

unread,
Aug 13, 2019, 2:58:47 PM8/13/19
to Neil Van Dyke, Racket Users
Oh, come on. “Adding labels to repositories” and “adding issue templates” isn’t “increasing lock-in.” There’s no slippery slope here. I think the time and energy Stephen has dedicated to the community should be thanked and appreciated, not discouraged. I’m frustrated by the number of words you spend on this list suggesting other people do or not do certain things while volunteering zero of your time yourself.

Yes, every platform has potential costs, some more than others. But GitHub in particular has provided the open source community[1] immeasurable value with few meaningful costs, and that does not currently seem likely to change under Microsoft. I don’t think taking advantage of their exceptionally useful service is the same as thinking they are “our friend,” nor does allowing themselves to be purchased by someone with sufficient capital to continue providing those services for free instantly make them our enemy. There is no evidence that Microsoft is embracing open source software only to extend and exterminate it. Please preach elsewhere.

Alexis

[1]: Perhaps not the free software community, but Racket isn’t free software, so that’s hardly on topic.

Neil Van Dyke

unread,
Aug 13, 2019, 5:12:41 PM8/13/19
to Racket Users
Alexis, I appreciate the recent enthusiasm and efforts.

I helped build the current small Racket community (really starting when
I moved to it exclusively, after developing portable open source for all
the Schemes).  My name is still up there with yours on
"https://www.racket-lang.org/team.html".  I recently proposed on
racket-dev that a lot of additional people's contributions to building
the Racket community should also be noted there (and I suppose that
might wait for the Web site redesign work).

Lately, I haven't been able to justify investing more in writing new
Scheme/Racket code that I can share, but I try to otherwise be helpful,
to say things that I think should be said, and to preserve/further the
investment I've already made in Racket.  I oops in what I say
frequently, but that seems to be unavoidable in practice, and
racket-users doesn't pay me enough to hire an editor/spokesperson.

As for industry and open source dynamics, probably we both know things
about this topic that the other doesn't.  I'm sorry I can't get into
extended discussion of this here, so I can only say I'd appreciate it if
people consider my suggestions, in the context of their own experience
and knowledge.

As for whether Racket is Free Software, I don't know, and it's
low-priority distinction to me, but I suppose that the Software Freedom
Conservancy might like it to be Free-as-in-FSF, and Racket did just
choose to marry the Conservancy.  BTW, I've spoken with RMS on multiple
occasions about how Racket covered bases he laid out in his early GNU
roadmaps (including something like `#lang`).  Though recently Guile has
seen new energy and movement towards its originally planned roles, and
I'm happy to see that advance (and they can get another boost by
borrowing a couple key features of Racket).

Amusingly enough, there's a connection to the current thread that might
not be obvious: Guile (and, therefore, Scheme and Racket) was arguably
sidelined years ago because GNU and various open source desktop energy
consolidated behind Gnome (other than KDE), as it turned into a startup,
by a couple very smart and very charismatic people, which startup then
pushed the nascent MS C# and CLR for GNU desktop work, over Guile from
the roadmap, which MS push many savvy industry people weren't buying,
because fool-me-once, but then MS was able to point to an open source
alternative, the development of which got funded, and which let MS
suggest it therefore wasn't just an attempt to reestablish a ruthless
monopoly stranglehold after the Web/Linux/Java/etc. disruption, and
then, eventually, the startup united with MS, and then the co-founder
was named head of the newly-acquired GitHub, which was a perfectly good
call based on his understanding of open source and developer dynamics,
and now we're back to where this thread started.

That's all public information that you might already know, and nothing
necessarily wrong about it -- it's just an apropos example of the
connectedness we often encounter, as we're understanding and reasoning
about new situations in this business-y space, or trying to distill
lessons and patterns from old ones.

I'd prefer to just build software systems, but software systems exist in
a larger human system, affect it, and are affected by it. Hence, for
example, why more people aren't using Scheme/Racket already, even when
they want to, which is one reason why even we, in some narrow little
niche, sometimes need to care about dynamics external to software.

None of us can know All The Things (I'll probably never know even 1% of
what Matthias does about type theory, for one of many examples), but we
try to combine what we know, and collaborate effectively, as we have
time and interest.

I'm sorry I couldn't meet you and others at RacketCon this year, to help
personalize more of these people who care about our shared community,
but maybe next year.

Hadi Moshayedi

unread,
Aug 13, 2019, 6:14:09 PM8/13/19
to Stephen De Gabrielle, Racket Users
Thanks Stephen!

On Mon, Aug 12, 2019 at 7:52 AM Stephen De Gabrielle <spdega...@gmail.com> wrote:
5. Put the location of the scribble source file at the beginning of every scribble file because it is really hard to find the location of scribble source; 
'Quick: An Introduction to Racket with Pictures' is in the slideshow repo: https://github.com/racket/slideshow/blob/master/slideshow-doc/scribblings/quick/quick.scrbl  it is worse when one scribble file inlines  another.

I am not sure if I get this. I am new to Racket and Scribble. It is really hard to find the location of scribble source from where?

-- Hadi

Stephen De Gabrielle

unread,
Aug 14, 2019, 1:25:55 AM8/14/19
to Hadi Moshayedi, Racket Users
I’m travelling so haven’t been able to properly read the discussion :(

I do want to add:

A) Keep local git repos (backups) on storage you control- this is important as you never know when you will lose access to a data centre (github, gitlab, Amazon, azure, iCloud , Dropbox , etc.)

B) I know similar tagging etc can be done on gitlab and other git-services - if anyone can provide the relevant advice that would be appreciated.  (though I think gitlab and github are the most likely alternative entry points  for new racketeers - I *think* the  major ones are the Racket web site and Wikipedia)



It’s diabolical. The ‘quick intro to Racket with pictures’ is in racket/slideshow ! Who could have guessed?


-- Hadi

--
----

Hendrik Boom

unread,
Aug 14, 2019, 8:45:07 AM8/14/19
to Racket Users
On Wed, Aug 14, 2019 at 02:25:40PM +0900, Stephen De Gabrielle wrote:
> I’m travelling so haven’t been able to properly read the discussion :(
>
> I do want to add:
>
> A) Keep local git repos (backups) on storage you control- this is important
> as you never know when you will lose access to a data centre (github,
> gitlab, Amazon, azure, iCloud , Dropbox , etc.)
>
> B) I know similar tagging etc can be done on gitlab and other git-services
> - if anyone can provide the relevant advice that would be appreciated.
> (though I think gitlab and github are the most likely alternative entry
> points for new racketeers - I *think* the major ones are the Racket web
> site and Wikipedia)

Git manages the source repository. And every source-code user
has a copy of that; it's how git works. So there's no
problem keeping that safe from a github lock-in.

Annoyingly, if you're working on two different issues, you end up
having to have two local copies of the repository. Monotone did
that better, but everyone is using git instead. Much the way
people are still using inferior rogramming languages.

But there's also the issue tracking. How easy is it to export that
from github and install it on another system?

And there is an MIT-licenced alternative to github showing up
soon: gitea. They let you use your own machines instead of
theirs. https://gitea.io/en-us/ or https://docs.gitea.io/en-us/

-- hendrik

Stephen De Gabrielle

unread,
Aug 14, 2019, 9:08:23 AM8/14/19
to Hendrik Boom, Racket Users
Hi, 

On Wed, Aug 14, 2019 at 9:45 PM Hendrik Boom <hen...@topoi.pooq.com> wrote:

But there's also the issue tracking.  How easy is it to export that
from github and install it on another system?

there is an API :)
could be easily scripted in racket...or you can also just use a link


And there is an MIT-licenced alternative to github showing up
soon:  gitea.  They let you use your own machines instead of
theirs.  https://gitea.io/en-us/ or https://docs.gitea.io/en-us/

Nice. Thanks for the tip!

- stephen

 
-- hendrik

--
You received this message because you are subscribed to the Google Groups "Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to racket-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/20190814124458.dfrxhzsod74bjofi%40topoi.pooq.com.

Stephen De Gabrielle

unread,
Aug 14, 2019, 10:08:39 AM8/14/19
to Neil Van Dyke, Racket Users
Thanks for this Neil. 

On Wed, Aug 14, 2019 at 2:28 AM Neil Van Dyke <ne...@neilvandyke.org> wrote:
I know this particular one is a minor thing, but they add up, over time...

Please consider approaches that are open, rather than owned, and try not
to increase lock-in by big-business plays.

It's pragmatic to keep using GitHub in limited ways right now, *but*
part of that is being judicious about creeping lock-in, which is a
pattern we've seen for decades (and the current owner of GitHub has been
one of the most epic abusers).

To use GitHub as an example, though this is not specific to them: They
are not your friend.  They used to seem like your friend, but that
friendship was worth fewer than 7.5 billion dollars.

When you effectively partner with such a company, approach it as an
temporary alliance, limit their power over you, and keep trying to
increase your options/freedom.

Also, consider what you're promoting, especially to impressionable
students around Racket.  Every use is effectively you endorsing
something questionable.

This is an appropriate reminder that there is a range of different costs to these 'free' services. I understand SE in higher education does try to include 'software and society', but I suspect this is something that is missed - and many developers don't enter the profession via a SE higher-ed pathways.

I hope my response was appropriate. I do appreciate your advice and guidance. Keep it coming.

Maybe it's time to poke the Conservancy.  It should be on their radar by
now, and some of the solution applies to all projects.

While SFC provides many great services listed at https://sfconservancy.org/projects/services/, technical solutions are not in their remit, so it falls to us. 

With that in mind, I tried specifying a version 'alternate' in https://pkgd.racket-lang.org a way of mitigating this risk, but sadly it failed with an error. (logged as https://github.com/racket/pkg-index/issues/21 )

Kind regards,

Stephen

Stephen De Gabrielle

unread,
Aug 14, 2019, 12:03:40 PM8/14/19
to Alexis King, Neil Van Dyke, Racket Users
Hi Alexis,

On Wed, Aug 14, 2019 at 3:58 AM Alexis King <lexi....@gmail.com> wrote:
I think the time and energy Stephen has dedicated to the community should be thanked and appreciated,
 
Thank you. I can't express how much this means to me. 

I'd like to personally thank you for your efforts. Your 'outreach' efforts including efforts stack overflow and your blog posts*, are an important part of on-boarding new racketeers. 

I believe 'Deploying racket applications on Heroku'[1]  is a gem that should be added to the racket docs, as a template for similar documentation for other platforms; azure, aws, gcp, etc. - and related container-based services like glitch.com [2]

[2] https://glitch.com/~rantstack (running racket on glitch)

Thanks again, 

Stephen

Paulo Matos

unread,
Aug 14, 2019, 12:27:11 PM8/14/19
to Hendrik Boom, Racket Users


On 14/08/2019 14:44, Hendrik Boom wrote:
> But there's also the issue tracking. How easy is it to export that
> from github and install it on another system?
>
> And there is an MIT-licenced alternative to github showing up
> soon: gitea. They let you use your own machines instead of
> theirs. https://gitea.io/en-us/ or https://docs.gitea.io/en-us/
>

I should quickly mention gitlab as well then, since it wasn't mentioned
already. You can use the hosted version in Gitlab for free (even for
private repos) - or pay for versions with more project management features.

Alternatively you can also self-host. Migration from github to gitlab is
pretty trivial.

I however, still really like GitHub and although I would take into
consideration Neil's comments earlier there's no reason to panic. There
are a multitude of services out there to move to if need be. My opinion
is to keep using the great service github offers for now to the fullest
and worry about migration if necessary.

--
Paulo Matos
Reply all
Reply to author
Forward
0 new messages