From 75c0880a58aab45de94587a77cf4bcdc6d44aa97 Mon Sep 17 00:00:00 2001 From: logananglin98 Date: Thu, 15 May 2025 10:46:31 -0400 Subject: [PATCH 1/7] Copied front matter from the open source book. As of now, the front matter information itself is incorrect. --- pretext/main.ptx | 1 + pretext/meta_frontmatter.ptx | 197 +++++++++++++++++++++++++++++++++++ 2 files changed, 198 insertions(+) create mode 100644 pretext/meta_frontmatter.ptx diff --git a/pretext/main.ptx b/pretext/main.ptx index eb0377d..aecf749 100644 --- a/pretext/main.ptx +++ b/pretext/main.ptx @@ -5,6 +5,7 @@ C++ for Python Programmers The PreTeXt Edition + diff --git a/pretext/meta_frontmatter.ptx b/pretext/meta_frontmatter.ptx new file mode 100644 index 0000000..1c8065c --- /dev/null +++ b/pretext/meta_frontmatter.ptx @@ -0,0 +1,197 @@ + + + + + + + + Dr. Jan Pearce + Computer Science + Berea College + + + + + + + 20222023 + Dr. Jan Pearce + + + + CC BY-SA 4.0 + +

+

+ + This work is licensed under the open source Creative Commons Attribution-ShareAlike 4.0 International License. To view a copy of this license, visit + + CC BY-SA 4.0 + + For a human readable summary see CC-BY-SA 4.0 Summary. +
+
+
+ + + + + + + Open Source Licensing + + + + + +

+ For everyone who wants to learn to contribute to open source projects. +

+
+ + +

+ I would like to thank Berea College for sabbatical leave support that gave me time and made this work possible. + I am also grateful to the software innovation lab Tweag for financial support and the time, recommendations, and patience of my open source mentors, Michael Gale and Georgios Karachalias whose perspectives, backgrounds, and suggestions have served to significantly improve this work. +

+

+ The Berea College students Eren Gul, Nega Demeke, Thao Pham, and Nelson Xunic + served as the first student readers of this work and helped to make this work more understandable. I am grateful for all of their time and efforts. +

+

+ I am grateful to Heidi Ellis for her support for this project and her help in locating resources such as Teaching Open Source. + + Several parts of this textbook including the , and numerous portions of , , and are modified from Karsten Wade's site Teaching Open Source. Many thanks to the authors Greg DeKoenigsberg, Chris Tyler, Karsten Wade, Max Spevack, Mel Chua, and Jeff Sheltren for releasing this work under the open source license Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA") which is listed as compatible with CC-BY-SA 4.0. See Creative Commons Compatible Licenses where it states, "your contributions to adaptations of BY-SA 3.0 materials may only be licensed under: BY-SA 3.0, or a later version of the BY-SA license." (Emphasis added for clarity.) +

+

+ With the exception of which is original, nearly all of is modified from Choose a License, which is curated by GitHub. Many thanks to GitHub for all that they do for the open source community and for releasing this work under the Creative Commons Attribution 3.0 Unported License, which, as noted in the previous paragraph, is compatible with the licensing of this text. +

+

+ Although is entirely original, I am indebted to Michael Gale and Georgios Karachalias both for the idea of the chapter as well as for their many substantive suggestions for improvements. +

+ +

+ Nearly all of is abridged and modified from the Second edition of Pro Git which is licensed under the Creative Commons Attribution Non Commercial Share Alike 3.0 license. Many thanks to the authors, Scott Chacon and Ben Straub for making such a tremendous resource available to the open source community. +

+ +

+ I would like to thank Rob Beezer for the creation of PreTeXt which is the authoring platform of this text and for his amazing level of responsiveness in the PreTeXt support channel. I would also like to thank David Farmer for his help in the PreText support channels. Additionally, I am very grateful for Oscar Levin's work in the creation of PreText converter for Pandoc which made adaption of other open source materials much less time consuming. +

+ +

+ Brad Miller deserves a hearty thanks for his work in creating Runestone Academy where this book is hosted, and for his collaborative work with the PreTeXt authoring group. +

+

+ Finally, I would like to thank my husband, Bob Fairchild, for his patience and for his cooking as I endeavored to create this book. +

+
+ + + + +

+ This textbook is designed for instructors, formal students, and self-learners. It explains what open source software is and teaches the basic skills of open source development incrementally, through real involvement in meaningful projects. +

+
+ + + + Forward + + + Why is This Book Necessary? +

+ Note that other than making minor corrections, this Forward is unchanged from the original forward for Teaching Open Source by Greg DeKoenigsberg, Chris Tyler, Karsten Wade, Max Spevack, Mel Chua, and Jeff Sheltren. These authors have not been involved in the creation of this text, but the stated purpose is exactly the same. +

+

+ +

+

+ In March 2006, David A. Patterson wrote an article entitled “Computer science education in the 21st century.” David A. Patterson was, at the time, the president of the Association for Computer Machinery, the world’s largest educational and scientific computing society. In this article — which, sadly, you cannot read unless you are an ACM member — he advocated for fundamental changes to how computer science is taught. One of the changes to the standard undergraduate computer science curriculum that he advocated for was the inclusion of courses in open source software development. +

+

+ One might think that such a clarion call, made by someone of such obvious influence, would generate a groundswell of enthusiasm. When the president of the ACM proclaims that it is “time to teach open source development,” the world of academia must certainly follow, yes? +

+

+ It's a little more complicated than that. +

+

+ We've spent a lot of time over the past few years talking to computer science professors. Mostly we’ve asked lots of questions — actually, the same ones over and over. +

+

+ Do you use open source software in your classes? (Increasingly.) + Are your students interested in open source? (Increasingly.) + Do you or your students participate in open source software? (Rarely.) + Do you teach open source development practices? (Almost never.) + For these last two, the follow-up question is, invariably, “why not?” +

+

+ And the answer is, invariably, “because it’s hard.” +

+

+ There are good reasons why professors don’t teach the practice of open source. It’s easy for open source advocates to explain away these reasons. At a certain point, though, one must accept the idea that most professors are well-intentioned, but bound by circumstances that make it frustratingly difficult to introduce students to open source development. +

+

+ So why bother? +

+

+ The answer is simple: the skills required to succeed in an open source software project are the exact same skills required to succeed in any large software project. The biggest difference is that, with just a bit of guidance, anyone can build their software skills in the open source world. +

+

+ We hope that this textbook helps provide that guidance to a whole generation of students. +

+
+ + + Why Traditional Student Projects Are Ineffective +

+

+

+ Almost every modern computer science degree program requires students to complete a big project. Sometimes it’s the “Senior Project,” and sometimes it’s the “Capstone Project.” Whatever it’s called, the purpose of this big project is to expose students to “real” software engineering practices. +

+

+ In other words, this typically translates to “coding with other people.” Unfortunately, up until this point in a student’s education, this has usually been discouraged as “cheating.” +

+

+ The problem is that these big projects actually tend to focus on extremely bounded problems. Most of the time, a small team of students works on a small project for a semester, and the result is, quite naturally, a small project. While good learning can take place in a small project, it actually does very little to prepare students to work on really big projects. +

+

+ To find really big projects, one must venture out into the world, where there are really big problems. The real world is full of gigantic applications that require build systems and revision control and defect tracking and prioritization of work. They are written in languages that one may or may not know, by people one may or may not ever meet. And in order to successfully navigate through these really big projects, the novice developer must possess one skill above all others: the ability, in the words of our colleague David Humphrey, to be “productively lost.” +

+

+ The great advantage of open source, for the learner, is that the really big projects of the open source world provide unparalleled opportunities to be productively lost. Complex code bases are immediately accessible by anyone who wants to participate. This accessibility is crucial to the learner, as participating in an activity is by far the most effective way to learn that activity. +

+

+ Sooner or later, the coder aspirant must work at scale, with teammates. Open source provides that opportunity in a way that nothing else can. +

+ +
+ + + Using This Book to Get Started +

+

+

+ This book exists because professors asked for it, but this book’s fundamental approach — teaching the basic skills of open source development incrementally, through real involvement in meaningful projects — should make it suitable for self-learners as well. Regardless of whether you are using this text as part of a course or working with it on your own, you should work through it while adhering to the principles of contributing, calling for help, and being bold. +

+

+ First, always be contributing. The majority of exercises in this book are designed to lead to direct and useful contributions to a project, no matter how small. Even a simple act, such as adding comments to a part of the code you don’t understand, can add real value to a project; that’s the great thing about community developed software. Contribution matters, and legitimate contributions, no matter how small, are welcome in many projects. +

+

+ Second, ask for help when you’re stuck. If you have trouble with an exercise — and at some point you will — look to your fellow contributors for help. Your chosen project likely has mechanisms for getting in touch with the more advanced developers: mailing lists, IRC channels, Slack channels, Discord channels, forums, or more than one of the above. Communicating with those around you is not only “not cheating,” it’s key to establishing greater understanding. Keep this in mind, though: in the real world, people are most likely to help those who are trying to help themselves. Before you ask someone a question of more senior developers, ask the same question of Google. A good rule of thumb: if you can’t figure something out in 15 minutes of searching the Internet, it’s reasonable to ask for a bit of help. +

+

+ And third, be bold. Try things. Break stuff. Don’t be afraid to play around with your own copy of the code; it’s only code, after all, and if you break something, you can always revert to the previous version. If you reach a point at which you think you’re ready to make a contribution of some kind, then offer to help on the project's preferred communication channel. The answer will usually be “go ahead, thanks!” Sometimes the offer will be “no thanks, and here’s why,” and you’ll learn something. Occasionally the answer will be “no, go away,” which is also useful, since it tells you to invest your energies into another project. Sometimes the answer may be silence; don’t be afraid to keep asking until you get an answer, or even plunge ahead without one. Learn the rules of the project and follow them; if the rules of the project are vague or confusing, you can help to make them clearer. This alone can be a critical contribution, as it clearly helps those who come along after you. +

+

+ In most educational contexts, you have likely been “trained” to wait for permission before doing anything not previously specified, but you must avoid letting that get in the way of your progress when engaging with an open source project. When the rules are unclear, don’t sit on your hands. Do your best to help the project. It’s better to do something wrong, and learn from it, than to do nothing at all. +

+
+ +
+
From ae5d9c2e66507231aaaaf50fb2855a83a518fc65 Mon Sep 17 00:00:00 2001 From: logananglin98 Date: Thu, 15 May 2025 11:21:32 -0400 Subject: [PATCH 2/7] Updated preface with text from the first section of the README. --- pretext/meta_frontmatter.ptx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pretext/meta_frontmatter.ptx b/pretext/meta_frontmatter.ptx index 1c8065c..5e32020 100644 --- a/pretext/meta_frontmatter.ptx +++ b/pretext/meta_frontmatter.ptx @@ -95,7 +95,13 @@

- This textbook is designed for instructors, formal students, and self-learners. It explains what open source software is and teaches the basic skills of open source development incrementally, through real involvement in meaningful projects. + This short ebook is intended to make it easy for anyone with at least some background in Python to transition to programming in C++. +

+

+ Portions of this book began as Java for Python Programmers by Brad Miller. These sections were translated to C++ by Jan Pearce and a team of excellent Berea College students in 2018 and early 2019. Other portions of this book began as web pages written by Jan Pearce as support for a Berea College C++ programming class. Still other sections were newly written by Jan Pearce for this ebook. +

+

+ Special acknowledgement is due to Jesse Walker-Schadler who while just a student in the Berea College Data Structures course had a vision of making graphics in C++ as easy as they are in Python both in terms of both syntax and installations. Over the course of two summers, he realized this vision with the creation in the open source CTurtle library which provides all of the C++ interactive graphics in this textbook.

From d994dbca33fc6eccbcc044c695b2dc8b7f4afbca Mon Sep 17 00:00:00 2001 From: logananglin98 Date: Thu, 15 May 2025 11:35:18 -0400 Subject: [PATCH 3/7] Updated the dedication from the copied section from the open soure book. This was my own writing, so any changes are welcome. --- pretext/meta_frontmatter.ptx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pretext/meta_frontmatter.ptx b/pretext/meta_frontmatter.ptx index 5e32020..7e98929 100644 --- a/pretext/meta_frontmatter.ptx +++ b/pretext/meta_frontmatter.ptx @@ -5,7 +5,7 @@ - Dr. Jan Pearce + Dr. Brad Miller and Dr. Jan Pearce Computer Science Berea College @@ -50,7 +50,7 @@

- For everyone who wants to learn to contribute to open source projects. + For Python programmers willing to dedicate time to learning C+

From 965e602e650589d85a1c04454185ce0c9ed0490f Mon Sep 17 00:00:00 2001 From: logananglin98 Date: Thu, 15 May 2025 11:41:29 -0400 Subject: [PATCH 4/7] Moved special acknowledgement of Jesse Walker-Schadler from preface to acknowledgement section. All other paragraphs aside from the one acknowledging Jesse are still copied from the open source book and should be changed. Leaving them in as a reference for any desired changes. --- pretext/meta_frontmatter.ptx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pretext/meta_frontmatter.ptx b/pretext/meta_frontmatter.ptx index 7e98929..061fa13 100644 --- a/pretext/meta_frontmatter.ptx +++ b/pretext/meta_frontmatter.ptx @@ -55,6 +55,9 @@ +

+ Special acknowledgement is due to Jesse Walker-Schadler who while just a student in the Berea College Data Structures course had a vision of making graphics in C++ as easy as they are in Python both in terms of both syntax and installations. Over the course of two summers, he realized this vision with the creation in the open source CTurtle library which provides all of the C++ interactive graphics in this textbook. +

I would like to thank Berea College for sabbatical leave support that gave me time and made this work possible. I am also grateful to the software innovation lab Tweag for financial support and the time, recommendations, and patience of my open source mentors, Michael Gale and Georgios Karachalias whose perspectives, backgrounds, and suggestions have served to significantly improve this work. @@ -100,9 +103,6 @@

Portions of this book began as Java for Python Programmers by Brad Miller. These sections were translated to C++ by Jan Pearce and a team of excellent Berea College students in 2018 and early 2019. Other portions of this book began as web pages written by Jan Pearce as support for a Berea College C++ programming class. Still other sections were newly written by Jan Pearce for this ebook.

-

- Special acknowledgement is due to Jesse Walker-Schadler who while just a student in the Berea College Data Structures course had a vision of making graphics in C++ as easy as they are in Python both in terms of both syntax and installations. Over the course of two summers, he realized this vision with the creation in the open source CTurtle library which provides all of the C++ interactive graphics in this textbook. -

From cc88af33eebfe50ac7af7b5c4c721995c44ce60a Mon Sep 17 00:00:00 2001 From: logananglin98 Date: Thu, 15 May 2025 11:43:55 -0400 Subject: [PATCH 5/7] Corrected a typo in the dedication section. --- pretext/meta_frontmatter.ptx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pretext/meta_frontmatter.ptx b/pretext/meta_frontmatter.ptx index 061fa13..4be67c3 100644 --- a/pretext/meta_frontmatter.ptx +++ b/pretext/meta_frontmatter.ptx @@ -50,7 +50,7 @@

- For Python programmers willing to dedicate time to learning C+ + For Python programmers willing to dedicate time to learning C++.

From ca4b3773a178e807b451dd275ecbeb72c1c2b309 Mon Sep 17 00:00:00 2001 From: logananglin98 Date: Thu, 15 May 2025 13:17:02 -0400 Subject: [PATCH 6/7] Deleted all information from the open source textbook. Acknowledgements now only consists of the Jesse Walker-Schadler acknowledgement. The Forward section is now empty. The only other changes that need to be dealt with other than potentially adding content to the Forward section and Acknowledgements section is getting a creative commons image for the licensing section. --- pretext/meta_frontmatter.ptx | 124 +---------------------------------- 1 file changed, 2 insertions(+), 122 deletions(-) diff --git a/pretext/meta_frontmatter.ptx b/pretext/meta_frontmatter.ptx index 4be67c3..36e877d 100644 --- a/pretext/meta_frontmatter.ptx +++ b/pretext/meta_frontmatter.ptx @@ -58,40 +58,6 @@

Special acknowledgement is due to Jesse Walker-Schadler who while just a student in the Berea College Data Structures course had a vision of making graphics in C++ as easy as they are in Python both in terms of both syntax and installations. Over the course of two summers, he realized this vision with the creation in the open source CTurtle library which provides all of the C++ interactive graphics in this textbook.

-

- I would like to thank Berea College for sabbatical leave support that gave me time and made this work possible. - I am also grateful to the software innovation lab Tweag for financial support and the time, recommendations, and patience of my open source mentors, Michael Gale and Georgios Karachalias whose perspectives, backgrounds, and suggestions have served to significantly improve this work. -

-

- The Berea College students Eren Gul, Nega Demeke, Thao Pham, and Nelson Xunic - served as the first student readers of this work and helped to make this work more understandable. I am grateful for all of their time and efforts. -

-

- I am grateful to Heidi Ellis for her support for this project and her help in locating resources such as Teaching Open Source. - - Several parts of this textbook including the , and numerous portions of , , and are modified from Karsten Wade's site Teaching Open Source. Many thanks to the authors Greg DeKoenigsberg, Chris Tyler, Karsten Wade, Max Spevack, Mel Chua, and Jeff Sheltren for releasing this work under the open source license Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA") which is listed as compatible with CC-BY-SA 4.0. See Creative Commons Compatible Licenses where it states, "your contributions to adaptations of BY-SA 3.0 materials may only be licensed under: BY-SA 3.0, or a later version of the BY-SA license." (Emphasis added for clarity.) -

-

- With the exception of which is original, nearly all of is modified from Choose a License, which is curated by GitHub. Many thanks to GitHub for all that they do for the open source community and for releasing this work under the Creative Commons Attribution 3.0 Unported License, which, as noted in the previous paragraph, is compatible with the licensing of this text. -

-

- Although is entirely original, I am indebted to Michael Gale and Georgios Karachalias both for the idea of the chapter as well as for their many substantive suggestions for improvements. -

- -

- Nearly all of is abridged and modified from the Second edition of Pro Git which is licensed under the Creative Commons Attribution Non Commercial Share Alike 3.0 license. Many thanks to the authors, Scott Chacon and Ben Straub for making such a tremendous resource available to the open source community. -

- -

- I would like to thank Rob Beezer for the creation of PreTeXt which is the authoring platform of this text and for his amazing level of responsiveness in the PreTeXt support channel. I would also like to thank David Farmer for his help in the PreText support channels. Additionally, I am very grateful for Oscar Levin's work in the creation of PreText converter for Pandoc which made adaption of other open source materials much less time consuming. -

- -

- Brad Miller deserves a hearty thanks for his work in creating Runestone Academy where this book is hosted, and for his collaborative work with the PreTeXt authoring group. -

-

- Finally, I would like to thank my husband, Bob Fairchild, for his patience and for his cooking as I endeavored to create this book. -

@@ -109,95 +75,9 @@ Forward - - Why is This Book Necessary? -

- Note that other than making minor corrections, this Forward is unchanged from the original forward for Teaching Open Source by Greg DeKoenigsberg, Chris Tyler, Karsten Wade, Max Spevack, Mel Chua, and Jeff Sheltren. These authors have not been involved in the creation of this text, but the stated purpose is exactly the same. -

-

- -

-

- In March 2006, David A. Patterson wrote an article entitled “Computer science education in the 21st century.” David A. Patterson was, at the time, the president of the Association for Computer Machinery, the world’s largest educational and scientific computing society. In this article — which, sadly, you cannot read unless you are an ACM member — he advocated for fundamental changes to how computer science is taught. One of the changes to the standard undergraduate computer science curriculum that he advocated for was the inclusion of courses in open source software development. -

-

- One might think that such a clarion call, made by someone of such obvious influence, would generate a groundswell of enthusiasm. When the president of the ACM proclaims that it is “time to teach open source development,” the world of academia must certainly follow, yes? -

-

- It's a little more complicated than that. -

-

- We've spent a lot of time over the past few years talking to computer science professors. Mostly we’ve asked lots of questions — actually, the same ones over and over. -

-

- Do you use open source software in your classes? (Increasingly.) - Are your students interested in open source? (Increasingly.) - Do you or your students participate in open source software? (Rarely.) - Do you teach open source development practices? (Almost never.) - For these last two, the follow-up question is, invariably, “why not?” -

-

- And the answer is, invariably, “because it’s hard.” -

-

- There are good reasons why professors don’t teach the practice of open source. It’s easy for open source advocates to explain away these reasons. At a certain point, though, one must accept the idea that most professors are well-intentioned, but bound by circumstances that make it frustratingly difficult to introduce students to open source development. -

-

- So why bother? -

-

- The answer is simple: the skills required to succeed in an open source software project are the exact same skills required to succeed in any large software project. The biggest difference is that, with just a bit of guidance, anyone can build their software skills in the open source world. -

-

- We hope that this textbook helps provide that guidance to a whole generation of students. -

-
- - - Why Traditional Student Projects Are Ineffective -

-

-

- Almost every modern computer science degree program requires students to complete a big project. Sometimes it’s the “Senior Project,” and sometimes it’s the “Capstone Project.” Whatever it’s called, the purpose of this big project is to expose students to “real” software engineering practices. -

-

- In other words, this typically translates to “coding with other people.” Unfortunately, up until this point in a student’s education, this has usually been discouraged as “cheating.” -

-

- The problem is that these big projects actually tend to focus on extremely bounded problems. Most of the time, a small team of students works on a small project for a semester, and the result is, quite naturally, a small project. While good learning can take place in a small project, it actually does very little to prepare students to work on really big projects. -

-

- To find really big projects, one must venture out into the world, where there are really big problems. The real world is full of gigantic applications that require build systems and revision control and defect tracking and prioritization of work. They are written in languages that one may or may not know, by people one may or may not ever meet. And in order to successfully navigate through these really big projects, the novice developer must possess one skill above all others: the ability, in the words of our colleague David Humphrey, to be “productively lost.” -

-

- The great advantage of open source, for the learner, is that the really big projects of the open source world provide unparalleled opportunities to be productively lost. Complex code bases are immediately accessible by anyone who wants to participate. This accessibility is crucial to the learner, as participating in an activity is by far the most effective way to learn that activity. -

-

- Sooner or later, the coder aspirant must work at scale, with teammates. Open source provides that opportunity in a way that nothing else can. -

- -
+ - - Using This Book to Get Started -

-

-

- This book exists because professors asked for it, but this book’s fundamental approach — teaching the basic skills of open source development incrementally, through real involvement in meaningful projects — should make it suitable for self-learners as well. Regardless of whether you are using this text as part of a course or working with it on your own, you should work through it while adhering to the principles of contributing, calling for help, and being bold. -

-

- First, always be contributing. The majority of exercises in this book are designed to lead to direct and useful contributions to a project, no matter how small. Even a simple act, such as adding comments to a part of the code you don’t understand, can add real value to a project; that’s the great thing about community developed software. Contribution matters, and legitimate contributions, no matter how small, are welcome in many projects. -

-

- Second, ask for help when you’re stuck. If you have trouble with an exercise — and at some point you will — look to your fellow contributors for help. Your chosen project likely has mechanisms for getting in touch with the more advanced developers: mailing lists, IRC channels, Slack channels, Discord channels, forums, or more than one of the above. Communicating with those around you is not only “not cheating,” it’s key to establishing greater understanding. Keep this in mind, though: in the real world, people are most likely to help those who are trying to help themselves. Before you ask someone a question of more senior developers, ask the same question of Google. A good rule of thumb: if you can’t figure something out in 15 minutes of searching the Internet, it’s reasonable to ask for a bit of help. -

-

- And third, be bold. Try things. Break stuff. Don’t be afraid to play around with your own copy of the code; it’s only code, after all, and if you break something, you can always revert to the previous version. If you reach a point at which you think you’re ready to make a contribution of some kind, then offer to help on the project's preferred communication channel. The answer will usually be “go ahead, thanks!” Sometimes the offer will be “no thanks, and here’s why,” and you’ll learn something. Occasionally the answer will be “no, go away,” which is also useful, since it tells you to invest your energies into another project. Sometimes the answer may be silence; don’t be afraid to keep asking until you get an answer, or even plunge ahead without one. Learn the rules of the project and follow them; if the rules of the project are vague or confusing, you can help to make them clearer. This alone can be a critical contribution, as it clearly helps those who come along after you. -

-

- In most educational contexts, you have likely been “trained” to wait for permission before doing anything not previously specified, but you must avoid letting that get in the way of your progress when engaging with an open source project. When the rules are unclear, don’t sit on your hands. Do your best to help the project. It’s better to do something wrong, and learn from it, than to do nothing at all. -

-
+
From bedbba607b9e4f680eab69c0823b27389cff15a8 Mon Sep 17 00:00:00 2001 From: logananglin98 Date: Thu, 15 May 2025 14:13:30 -0400 Subject: [PATCH 7/7] Exchanged the order of the names at the top of the front matter. Deleted the dedication and forward sections. Added hyperlinks to the acknoledgements for Jesse Walker-Schadler's LinkedIn and GitHub pages. Updated the link to Jesse Walker-Shadler's LinkedIn to an up-to-date one as the previous link no longer worked. --- README.rst | 2 +- pretext/meta_frontmatter.ptx | 19 ++----------------- 2 files changed, 3 insertions(+), 18 deletions(-) diff --git a/README.rst b/README.rst index f40c9a1..f41d20d 100644 --- a/README.rst +++ b/README.rst @@ -10,7 +10,7 @@ College students in 2018 and early 2019. Other portions of this book began as web pages written by Jan Pearce as support for a Berea College C++ programming class. Still other sections were newly written by Jan Pearce for this ebook. -Special acknowledgement is due to `Jesse Walker-Schadler `_ who while just a student in the Berea College Data Structures course had a vision of making graphics in C++ as easy as they are in Python both in terms of both syntax and installations. Over the course of two summers, he realized this vision with the creation in `the open source CTurtle library `_ which provides all of the C++ interactive graphics in this textbook. +Special acknowledgement is due to `Jesse Walker-Schadler `_ who while just a student in the Berea College Data Structures course had a vision of making graphics in C++ as easy as they are in Python both in terms of both syntax and installations. Over the course of two summers, he realized this vision with the creation in `the open source CTurtle library `_ which provides all of the C++ interactive graphics in this textbook. How to use and suggest changes to this book =========================================== diff --git a/pretext/meta_frontmatter.ptx b/pretext/meta_frontmatter.ptx index 36e877d..050eb58 100644 --- a/pretext/meta_frontmatter.ptx +++ b/pretext/meta_frontmatter.ptx @@ -5,7 +5,7 @@ - Dr. Brad Miller and Dr. Jan Pearce + Dr. Jan Pearce and Dr. Brad Miller Computer Science Berea College @@ -48,15 +48,9 @@
http://pretextbook.org
--> - -

- For Python programmers willing to dedicate time to learning C++. -

-
-

- Special acknowledgement is due to Jesse Walker-Schadler who while just a student in the Berea College Data Structures course had a vision of making graphics in C++ as easy as they are in Python both in terms of both syntax and installations. Over the course of two summers, he realized this vision with the creation in the open source CTurtle library which provides all of the C++ interactive graphics in this textbook. + Special acknowledgement is due to Jesse Walker-Schadler who while just a student in the Berea College Data Structures course had a vision of making graphics in C++ as easy as they are in Python both in terms of both syntax and installations. Over the course of two summers, he realized this vision with the creation in the open source CTurtle library which provides all of the C++ interactive graphics in this textbook.

@@ -71,13 +65,4 @@

- - - Forward - - - - - -