spiffytech / random_bibleizer

Randomly chooses a book and chapter from the Bible to read
MIT License
14 stars 5 forks source link

Optimize randomisation #2

Closed micheldejoode closed 4 years ago

micheldejoode commented 4 years ago

I really like your idea of choosing a random bible chapter. I'm using your idea on a website, but found out the randomisation is not optimal because the code first chooses a random bible book, and then a random chapter. Because some books are longer and other books shorter not all chapters are picked even. I've made a testpage which shows this problem. The solution is to create an index of all books/chapters (1189) and random pick a number of this index. In an other test page with this index you can see all chapters are picked even. Maybe you can add this fix to your randomisation engine.

spiffytech commented 4 years ago

Hi! Thanks for the feedback. I've gotten this request from a couple of people, but have declined to make the change in the past as philosophically I'd prefer to sample the Bible evenly by book, rather than giving Psalms the same weight as the Minor Prophets and the Pauline Epistles combined.

However, I'm probably going to circle around to this codebase again in the near future, and at that time I'll add an option to do precisely what you requested.

micheldejoode commented 4 years ago

Thanks for your reply! Yes, there are good arguments for both ways. Both ways are interesting to explore the Bible! Good luck with everything. Greetings, Michel

Outlook voor Android downloadenhttps://aka.ms/ghei36


From: spiffytech notifications@github.com Sent: Saturday, January 25, 2020 1:14:27 AM To: spiffytech/random_bibleizer random_bibleizer@noreply.github.com Cc: Michel de Joode micheldejoode@gmail.com; Author author@noreply.github.com Subject: Re: [spiffytech/random_bibleizer] Optimize randomisation (#2)

Hi! Thanks for the feedback. I've gotten this request from a couple of people, but have declined to make the change in the past as philosophically I'd prefer to sample the Bible evenly by book, rather than giving Psalms the same weight as the Minor Prophets and the Pauline Epistles combined.

However, I'm probably going to circle around to this codebase again in the near future, and at that time I'll add an option to do precisely what you requested.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/spiffytech/random_bibleizer/issues/2?email_source=notifications&email_token=ABJLPJZHHMLZMN6FFZ5ENZDQ7N76HA5CNFSM4KIETKRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEJ4O7TI#issuecomment-578351053, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABJLPJ34FCBDE57JMOP3F5DQ7N76HANCNFSM4KIETKRA.

micheldejoode commented 4 years ago

By the way, here is my version, based on your code, it's in Dutch language: https://micheldejoode.github.io/WillekeurigBijbelHoofdstuk/

Outlook voor Android downloadenhttps://aka.ms/ghei36


From: Michel de Joode micheldejoode@gmail.com Sent: Saturday, January 25, 2020 11:32:07 AM To: spiffytech/random_bibleizer reply@reply.github.com; spiffytech/random_bibleizer random_bibleizer@noreply.github.com Cc: Author author@noreply.github.com Subject: Re: [spiffytech/random_bibleizer] Optimize randomisation (#2)

Thanks for your reply! Yes, there are good arguments for both ways. Both ways are interesting to explore the Bible! Good luck with everything. Greetings, Michel

Outlook voor Android downloadenhttps://aka.ms/ghei36


From: spiffytech notifications@github.com Sent: Saturday, January 25, 2020 1:14:27 AM To: spiffytech/random_bibleizer random_bibleizer@noreply.github.com Cc: Michel de Joode micheldejoode@gmail.com; Author author@noreply.github.com Subject: Re: [spiffytech/random_bibleizer] Optimize randomisation (#2)

Hi! Thanks for the feedback. I've gotten this request from a couple of people, but have declined to make the change in the past as philosophically I'd prefer to sample the Bible evenly by book, rather than giving Psalms the same weight as the Minor Prophets and the Pauline Epistles combined.

However, I'm probably going to circle around to this codebase again in the near future, and at that time I'll add an option to do precisely what you requested.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/spiffytech/random_bibleizer/issues/2?email_source=notifications&email_token=ABJLPJZHHMLZMN6FFZ5ENZDQ7N76HA5CNFSM4KIETKRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEJ4O7TI#issuecomment-578351053, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABJLPJ34FCBDE57JMOP3F5DQ7N76HANCNFSM4KIETKRA.

spiffytech commented 4 years ago

Very nice!

I spent the evening and morning doing a rewrite with modern libraries, which includes an option for choosing the randomization engine. It also includes the oft-requested feature of remembering the translation you last used.

micheldejoode commented 4 years ago

Great man, thanks! I will look at the code soon.

Outlook voor Android downloadenhttps://aka.ms/ghei36


From: spiffytech notifications@github.com Sent: Saturday, January 25, 2020 5:02:53 PM To: spiffytech/random_bibleizer random_bibleizer@noreply.github.com Cc: Michel de Joode micheldejoode@gmail.com; Author author@noreply.github.com Subject: Re: [spiffytech/random_bibleizer] Optimize randomisation (#2)

Very nice!

I spent the evening and morning doing a rewrite with modern libraries, which includes an option for choosing the randomization engine. It also includes the oft-requested feature of remembering the translation you last used.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/spiffytech/random_bibleizer/issues/2?email_source=notifications&email_token=ABJLPJ32Z7F2ZH4MJH34FE3Q7RPC3A5CNFSM4KIETKRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEJ47MKQ#issuecomment-578418218, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABJLPJ4572XU333NCJ232JLQ7RPC3ANCNFSM4KIETKRA.