Skip to content

Modernise README #2575

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

Open
wants to merge 8 commits into
base: main
Choose a base branch
from
Open

Modernise README #2575

wants to merge 8 commits into from

Conversation

penelopeysm
Copy link
Member

@penelopeysm penelopeysm commented Jun 3, 2025

Modernise the README. See the Markdown preview @ https://github.com/TuringLang/Turing.jl/blob/py/readme/README.md

Badges are so 2010s--- I honestly don't think anybody really uses them anymore ever since GitHub Actions took over e.g. travis CI. Readded

I skipped CI on this PR because this doesn't touch code.

Let me know if there's anything else I should add. Not sure if the last section ('how does it all fit together') should be part of the main docs.

Copy link
Contributor

github-actions bot commented Jun 3, 2025

Turing.jl documentation for PR #2575 is available at:
https://TuringLang.github.io/Turing.jl/previews/PR2575/

@penelopeysm penelopeysm force-pushed the py/readme branch 9 times, most recently from b0af4f4 to 7cbd501 Compare June 3, 2025 12:25
@penelopeysm penelopeysm requested a review from mhauru June 3, 2025 12:27
@penelopeysm penelopeysm changed the title Rework README Modernise README Jun 3, 2025
Copy link
Member

@mhauru mhauru left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Greatly improved, thanks! Some discussion points to raise.

README.md Outdated
Comment on lines 29 to 32
### Discussions

This repository also has a [Discussions page](https://github.com/TuringLang/Turing.jl/discussions), where you can create discussions and ask questions about statistical applications and theory.
In practice, we don't monitor this as often: you're more likely to get a response through an issue.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not convinced having the discussions enabled really adds much value, and it splits similar information between two places. Would be a shame to lose the old discussions though.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree that discussions are better opened as issues or Julia discourse.

@mhauru I think there is a GH option to transfer discussions into issues if we want to disable it.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 to what @mhauru has said. Maybe move some of the below lines up. Push more to use slack for what the discussion handles and issues for anything specifically wrong or needing enhanced?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are a few ways:

  1. Leave as is (in which case this text can probably stay)

  2. Move all discussions to issues and disable discussions

  3. Transfer all discussions to a separate repo and disable discussions

Happy to go with whichever one. Personal preference is (2).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm happy with 1. or 2.

@mhauru mhauru requested review from yebai and AoifeHughes June 5, 2025 08:58
@mhauru
Copy link
Member

mhauru commented Jun 5, 2025

I've also requested reviews from @yebai, for obvious reasons, and from @AoifeHughes, because a new comer's eye can be very valuable here.

@yebai
Copy link
Member

yebai commented Jun 5, 2025

I think lots of the text here can go to: https://github.com/TuringLang/.github/edit/main/profile/README.md

We could also keep the pointers for related Turing.jl papers.

README.md Outdated

Turing's home page, with links to everything you'll need to use Turing, is available at:
**https://turinglang.org** contains the documentation for the broader TuringLang ecosystem.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd be tempted to change the wording to be a bit "friendlier" and less passive voice

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggestions are welcome, I don't know how to make "the docs are here" much friendlier.

README.md Outdated
Comment on lines 29 to 32
### Discussions

This repository also has a [Discussions page](https://github.com/TuringLang/Turing.jl/discussions), where you can create discussions and ask questions about statistical applications and theory.
In practice, we don't monitor this as often: you're more likely to get a response through an issue.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 to what @mhauru has said. Maybe move some of the below lines up. Push more to use slack for what the discussion handles and issues for anything specifically wrong or needing enhanced?

@penelopeysm
Copy link
Member Author

penelopeysm commented Jun 16, 2025

I think lots of the text here can go to: https://github.com/TuringLang/.github/edit/main/profile/README.md

Sure, I was going to work on that too. I think it's worth having info in both though (even if potentially duplicated) because some people will go to github.com/TuringLang and some people will go to github.com/TuringLang/Turing.jl (case in point: if you google for Turing.jl you will get the second link).

related Turing.jl papers.

Will add

@coveralls
Copy link

coveralls commented Jun 16, 2025

Pull Request Test Coverage Report for Build 15703075136

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.07%) to 85.636%

Totals Coverage Status
Change from base Build 15604552633: 0.07%
Covered Lines: 1246
Relevant Lines: 1455

💛 - Coveralls

Copy link

codecov bot commented Jun 16, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 85.57%. Comparing base (8be9094) to head (c617662).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2575      +/-   ##
==========================================
+ Coverage   85.50%   85.57%   +0.06%     
==========================================
  Files          22       22              
  Lines        1456     1456              
==========================================
+ Hits         1245     1246       +1     
+ Misses        211      210       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@AoifeHughes
Copy link

Personally, I’d still like to see quick start guides be part of readme. Ie just tell me the bash to install, run tests etc. I think forcing people to go off the page to find documentation increases likelihood someone just stops

@penelopeysm
Copy link
Member Author

just tell me the bash to install, run tests etc

Done, there's a super simple example in the readme now, let me know what you think. I refrained from adding tests because Turing's tests take forever to run and the average user isn't likely to ever run them (you have to clone the repo anyway, which is not what most people do unless they're hacking on the package itself)

See [releases](https://github.com/TuringLang/Turing.jl/releases).
julia> @model function my_first_model(data)
mean ~ Normal(0, 1)
sd ~ Exponential(1)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

HalfCauchy is a better prior than Exponential or InverseGamma. See:

On the Half-Cauchy Prior for a Global Scale Parameter
Nicholas G. Polson, James G. Scott
Bayesian Analysis
link


### Discussions

This repository also has a [Discussions page](https://github.com/TuringLang/Turing.jl/discussions), where you can create discussions and ask questions about statistical applications and theory.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Better to remove Discussions in favour of issues / Slack / Julia Discourse.


- Markov Chain Monte Carlo (both an abstract interface: [AbstractMCMC.jl](https://github.com/TuringLang/AbstractMCMC.jl), and individual samplers, such as [AdvancedMH.jl](https://github.com/TuringLang/AdvancedMH.jl), [AdvancedHMC.jl](https://github.com/TuringLang/AdvancedHMC.jl), and more).
- Variational inference using [AdvancedVI.jl](https://github.com/TuringLang/AdvancedVI.jl).
- Mode estimation techniques, which rely on SciML's [Optimization.jl interface](https://github.com/SciML/Optimization.jl).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Mode estimation techniques, which rely on SciML's [Optimization.jl interface](https://github.com/SciML/Optimization.jl).
- Maximum likelihood and maximum a posteriori estimation, which rely on SciML's [Optimization.jl interface](https://github.com/SciML/Optimization.jl).


There are also often threads on [Julia Discourse](https://discourse.julialang.org) (you can search using, e.g., [the `turing` tag](https://discourse.julialang.org/tag/turing)).

We are most active on GitHub, but we do also keep an eye on both Slack and Discourse.
Copy link
Member

@yebai yebai Jun 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't need this.

Suggested change
We are most active on GitHub, but we do also keep an eye on both Slack and Discourse.

Copy link
Member

@yebai yebai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added a few more comments. The prior on the variance / standard deviation parameter is a bit odd and can be improved. Users tend to pay attention to these examples, so staying with best practices is better.

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

Successfully merging this pull request may close these issues.

5 participants