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

Ask others to share their experience on learning PureScript #31

Open
JordanMartinez opened this issue Jan 19, 2019 · 6 comments
Open

Ask others to share their experience on learning PureScript #31

JordanMartinez opened this issue Jan 19, 2019 · 6 comments

Comments

@JordanMartinez
Copy link
Contributor

One idea for generating more good data that might help even more than what we currently have: open an issue here that invites others to share how their learning experiences with PS have been and what's been the biggest pain points. Then, we link to this specific issue on PS' Reddit / Discourse / Slack places and non-PS Reddit subreddits / Twitter.

We could have the following snippet be something that people copy and paste into their comment and answer those questions there:


Share your experience on learning PureScript

Copy and paste the questions below and answer them:

> What is your background in programming languages?

> What drew you to PureScript initially?

> What resources did you use to learn it?

> What are the biggest pain points you experienced when learning PureScript?

> If you stuck with it, how long did it take you to solve your problem / feel confident or competent in the language? 

> If you gave up on the language, what made you decide to leave? What would make you reconsider the language again?


Thoughts?
@chexxor
Copy link
Owner

chexxor commented Jan 20, 2019

Yeah, this is a great idea. I think it would be especially useful to post this to other programming language forums. I imagine communities of the following languages would have some people who have tried PureScript.

Ideas for non-PS communities to include as an audience: (Other ideas here: https://github.com/jashkenas/coffeescript/wiki/List-of-languages-that-compile-to-JS)

Elm, ReasonML/BuckleScript, Haskell, TypeScript, Flow, ScalaJs, Fable, ClojureScript

@chexxor
Copy link
Owner

chexxor commented Jan 20, 2019

I think it's important to have the questions be well-considered. I haven't spent time to think of more ideas of questions, but I'd like to do that before the comment template is created. When do you think we should start this survey? I think sooner is better, so I think it can start whenever the questions have been considered by anyone who wishes to.

@JordanMartinez
Copy link
Contributor Author

Well, we don't currently have much time to think through this. So, we should either prioritize this and define those questions or just go with what we have, knowing that it's still better than nothing.

I also don't want to give too many questions that lead to people not completing the survey.

Also, if this is a survey, should we use something like SurveyMonkey? Or just keep with the idea of using a GitHub issue we later grok?

@JordanMartinez
Copy link
Contributor Author

Ideas for non-PS communities to include as an audience: (Other ideas here: https://github.com/jashkenas/coffeescript/wiki/List-of-languages-that-compile-to-JS)

Wow... no wonder people hate web dev... That's a lot of languages.

@chexxor
Copy link
Owner

chexxor commented Jan 20, 2019

Let's prioritize it.

Following is what I think would be good questions.


The intended audience of this survey is people who were new to PureScript and wanted to learn more about it and how to use it.

The results of this survey will be used in a current effort to improve the PureScript introduction and documentation.

What is your background in programming languages?

What drew you to learn PureScript?

In your experience, what is the most effective method of learning a programming language?

What were your expectations of learning PureScript, and what resources did you use when learning?

What were the hardest or most frustrating parts of learning to use PureScript?

If you quit learning or using PureScript, what made you decide to leave?

What programming language on-boarding experience do you wish PureScript would be more like?


A question for you, @JordanMartinez: why ask about how long it took (to solve their problem or feel competent in PS)? I removed that one because I can't figure out how the answers to that one would help our cause.

@JordanMartinez
Copy link
Contributor Author

JordanMartinez commented Jan 21, 2019

The intended audience of this survey is people who were new to PureScript and wanted to learn more about it and how to use it.

The audience is not necessarily only for those who are new / want to learn it. They can answer some but not all of the questions below. If anything, this just shows that we really want to send out 3 separate surveys for each audience: New learners who haven't tried it yet; users who left after trying it; users who are still using it but can reflect back on their learning process

The results of this survey will be used in a current effort to improve the PureScript introduction and documentation.

Edit: I'd like to challenge this statement. See #39

Below is my understanding of the answers we are seeking that such questions might answer if we ask the right audience. I'll start with the question you removed:

How long did it take you to solve your problem / feel confident in PS?

  • How long did it take someone to feel confident in PS? We can use this number to advertise, "It will take you, on average, X many hours / weeks / months to learn PS to a comfortable level," to new learners. Those who are considering the language but expect to become productive in a weekend will have their expectations corrected. They can decide for themselves whether to schedule some block of time in the future for learning the language.
  • How long did it take someone to solve their problem/project in PS? If we also know what kind of project they were doing, we can know how long such a project took a new learner. We can advise to people interested in the language, "Here are a list of projects of various complexities and goals and the average time it took someone to learn enough to build them." This can be useful for businesses considering building some project and the data to give to decision makers about expected timelines and why.
  • All of these can be used as indicators as to whether the language's onboarding process is getting better or worse over time.

What is your background in programming languages?

  • What kind of audiences do we need to address? What % come from some background, such that we know we should target Background X first instead of Background Y? It'll also inform us as to which background does not already have some form of onboarding process in the first place.

What drew you to learn PureScript?

  • With such little marketing of the language, how do others perceive the language?
  • What specific features drew people to the language?
  • What projects / use cases / design goals drew people to the language?

In your experience, what is the most effective method of learning a programming language?

What were your expectations of learning PureScript, and what resources did you use when learning?

  • What were those expectations? Which were realistic and which need to be addressed to improve the learning experience?
  • Which learning resources are people finding and using? Are there others that would be beneficial to them, but which they simply did not know about for lack of marketing/awareness? If they did know of such materials, it might reveal why those materials did not help them

What were the hardest or most frustrating parts of learning to use PureScript?

  • 80% of learning problems can be caused by a understanding some foundational concepts but not understanding another 10% of info

If you quit learning or using PureScript, what made you decide to leave?

  • What was the final straw that made people leave? Could that have been prevented had we done X?
  • How many 'leavings' were legitimate: "I learned that PS was not the best language suited for my particular use case and that Language Y (e.g. Elm, TypeScript, etc.) was better."
  • What kinds of 'leavings' do we want to support? Rather than responding with an elitist mindset of, "You made the wrong decision! You could have done X to fix problem Y!" we can respond in a more reasonable tone of "That sounds like an excellent/wise decision! I would have probably made the same if I was in your position." Let's adhere to the principle of "use the best tool for the job" and realize that PS is not the best tool for every job.

What programming language on-boarding experience do you wish PureScript would be more like?

  • I think this question is a duplicate of 'most effective method of learning a language.' It's answers would likely already be revealed in the above questions we'd ask, some of which we might need to broken down into more questions and rephrased to be clearer in what we are asking.
  • Still, perhaps you are asking this question because you're trying to fulfill the third purpose: look at other languages' ways of onboarding and learn from / copy them?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants