Skip to content

Commit

Permalink
differences for PR #424
Browse files Browse the repository at this point in the history
  • Loading branch information
actions-user committed Jan 30, 2025
1 parent 78988c4 commit 42acbe9
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 34 deletions.
8 changes: 2 additions & 6 deletions 12-virtual-environments.md
Original file line number Diff line number Diff line change
Expand Up @@ -588,13 +588,9 @@ It looks like the script expects a list of input files to process,
so this is expected behaviour since we do not supply any.
We will fix this error in a moment.

## Optional exercises

Checkout [this optional exercise](17-section1-optional-exercises.md)
to try out different virtual environment managers.
Or, [this exercise](17-section1-optional-exercises.md)
to customize the command line.
## Optional Exercises

Have a look at [some optional exercises](17-section1-optional-exercises.md).


:::::::::::::::::::::::::::::::::::::::: keypoints
Expand Down
53 changes: 27 additions & 26 deletions 17-section1-optional-exercises.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: 1.7 Optional Exercises for Section 1
title: 1.7 Optional Exercises
start: no
teaching: 0
exercises: 45
Expand All @@ -13,23 +13,25 @@ exercises: 45

:::::::::::::::::::::::::::::::::::::::: questions

- How can I further finetune my coding environment?
- How can I further fine-tune my coding environment?

::::::::::::::::::::::::::::::::::::::::::::::::::

This episode holds some optional exercises for section 1.
This episode has some optional exercises for Section 1.
The exercises have an explorative nature, so feel free to go off in any direction that interests you.
You will be looking at some tools that either complement or are alternatives to those already introduced.
Even if you find something that you really like,
we still recommend sticking with the tools that were introduced prior to this episode when you move onto other sections of the course.
for the sake of following through with the course, we still recommend sticking with the tools that we introduced prior to this episode
and then switching to something else afterwards.

::::::::::::::::::::::::::::::::::::::: challenge
::::::::::::::::::::::::::::::::::::::: discussion

## Exercise: Apply to your own project(s)

Apply what you learned in this section to your own project(s).
This is the time to ask any questions to your instructors or helpers.
Everyone has different preferences for tooling, so getting the input of experienced developers is a great opportunity.
This is the time to ask any questions of your instructors, helpers or fellow learners.
Everyone has different preferences for tooling, so getting input from experienced developers is a great opportunity to learn new things
or different perspectives.

::::::::::::::::::::::::::::::::::::::::::::::::::

Expand All @@ -40,17 +42,17 @@ Everyone has different preferences for tooling, so getting the input of experien
Install different Integrated Development Environments (IDEs) and test them out.
Which one do you like the most and why?

You can try:
Some suggestions to try:

- [Visual Studio Code](https://code.visualstudio.com/), with setup instructions [in the Extras of this course](../learners/vscode.md)
- [Atom](https://atom-editor.cc/)
- [Sublime Text](https://www.sublimetext.com/)
- [RStudio](https://posit.co/download/rstudio-desktop/)

Technically, compared to PyCharm, the 'IDEs' listed above are source code editors capable of functioning as an IDE
(with RStudio as an example).
To function as an IDE, you have to manually install plugins for more powerful features
When compared to PyCharm, the IDEs listed above are advanced source code editors capable of functioning as IDEs.
To function as an IDE, you have to manually install plugins for these tools to obtain more advanced features -
such as support for a specific programming language or unit testing.

What do you prefer, a lot of tooling out of the box or a lightweight editor with optional extensions?

If you want an even more lightweight setup you can try out these configurable source code editors:
Expand All @@ -62,28 +64,27 @@ If you want an even more lightweight setup you can try out these configurable so

::::::::::::::::::::::::::::::::::::::: challenge

## Exercise: Customize the command line
## Exercise: Customise the command line tool

You can customize the command line or use alternatives to `bash` to make yourself more productive.
You can customise the command line tool or use alternatives to `bash`, such as:

- Try out [Bash Prompt Generator](https://bash-prompt-generator.org/), it lets you try out different prompts,
- [Bash Prompt Generator](https://bash-prompt-generator.org/) - it lets you try out different prompts,
depending on the information you want displayed.
- Try out [z, a simple tool to more quickly move around directories](https://github.com/rupa/z).
- Try out [Z shell (zsh)](https://zsh.sourceforge.io/), a shell designed for interactive use.
- Try out [Oh My ZSH](https://ohmyz.sh/), which is a theming and package manager of the `zsh` terminal.
- Try out [fish](https://fishshell.com/), a smart and user-friendly command line shell.
- [z, a simple tool to more quickly move around directories](https://github.com/rupa/z).
- [Z shell (zsh)](https://zsh.sourceforge.io/), a shell designed for interactive use.
- [Oh My ZSH](https://ohmyz.sh/), which is a theming and package manager of the `zsh` terminal.
- [fish](https://fishshell.com/), a smart and user-friendly command line shell.

::::::::::::::::::::::::::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::: challenge

## Exercise: Try out different virtual environment managers

So far we used `venv`, but there are other virtual environment managers for Python:
So far we have used `venv`, but there are other virtual environment managers for Python:

- [Poetry](https://python-poetry.org/), which we will explore using in
[Section 4](43-software-release.md).
- conda, which is part of [Anaconda Distribution)](https://www.anaconda.com/download).
- [Poetry](https://python-poetry.org/), which we will explore using in [Section 4](43-software-release.md).
- `conda`, which is part of [Anaconda Distribution](https://www.anaconda.com/download).

Anaconda is widely used in academia, but the current license does not allow use for research in most circumstances.
An open-source alternative is [mini-forge](https://github.com/conda-forge/miniforge).
Expand All @@ -92,11 +93,11 @@ An open-source alternative is [mini-forge](https://github.com/conda-forge/minifo

::::::::::::::::::::::::::::::::::::::: challenge

## Exercise: Customize `pylint`
## Exercise: Customise `pylint`

Tell `pylint` to accept the maximum line length of 100 characters instead of the default 80.

You decide to change the max line length of your project to 100 instead of the default 80.
Find out how you can configure pylint. You can first try to use the pylint command line interface,
but also play with adding a configuration file that pylint reads in.
Hint: find out different ways in which you can configure `pylint` (e.g. via `pylint` command line interface or its configuration file).

::::::::::::::: solution

Expand Down
4 changes: 2 additions & 2 deletions md5sum.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@
"episodes/00-setting-the-scene.md" "134311748519aaa07caa19a7989357ff" "site/built/00-setting-the-scene.md" "2024-12-06"
"episodes/10-section1-intro.md" "5a9130373443cadeb19aa1a46dd3c1b2" "site/built/10-section1-intro.md" "2024-12-06"
"episodes/11-software-project.md" "f5e403d2b25781407eaed7534dfff9ec" "site/built/11-software-project.md" "2024-12-06"
"episodes/12-virtual-environments.md" "f49837c733584f7bca96cef405b2dcc0" "site/built/12-virtual-environments.md" "2024-12-06"
"episodes/12-virtual-environments.md" "6c67c01c6a584172f870082126eefda1" "site/built/12-virtual-environments.md" "2025-01-30"
"episodes/13-ides.md" "1ae19b798bc07c88f241ec792ff41ef3" "site/built/13-ides.md" "2024-12-06"
"episodes/14-collaboration-using-git.md" "065fefef86c0202023975a04120da090" "site/built/14-collaboration-using-git.md" "2024-12-06"
"episodes/15-coding-conventions.md" "930ee3f977bcde70f4919a8e11ba3e02" "site/built/15-coding-conventions.md" "2024-12-16"
"episodes/16-verifying-code-style-linters.md" "d790a49e61e0c28fc2eb153ec1a00d82" "site/built/16-verifying-code-style-linters.md" "2024-12-06"
"episodes/17-section1-optional-exercises.md" "c7a9b304ba70d7d15ea5334fd211248b" "site/built/17-section1-optional-exercises.md" "2024-12-06"
"episodes/17-section1-optional-exercises.md" "37fab492a43d4c668499a93a71862501" "site/built/17-section1-optional-exercises.md" "2025-01-30"
"episodes/20-section2-intro.md" "de5af08b90601de19c724a0c9d7c3082" "site/built/20-section2-intro.md" "2024-12-06"
"episodes/21-automatically-testing-software.md" "fefa4876a74e1ae8c7e0927912ca876c" "site/built/21-automatically-testing-software.md" "2024-12-06"
"episodes/22-scaling-up-unit-testing.md" "73bcee5ed247ef0092b202af9cc810de" "site/built/22-scaling-up-unit-testing.md" "2024-12-06"
Expand Down

0 comments on commit 42acbe9

Please sign in to comment.