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

Integrate content from "Julia for ML" #4

Open
gdalle opened this issue Jun 28, 2023 · 11 comments
Open

Integrate content from "Julia for ML" #4

gdalle opened this issue Jun 28, 2023 · 11 comments

Comments

@gdalle
Copy link
Collaborator

gdalle commented Jun 28, 2023

@adrhill nicely offered to contribute some of the content he's written for his ML class

https://github.com/adrhill/julia-ml-course

Let's try and see if the structures are compatible!

There are two main lectures of interest:

@jacobusmmsmit
Copy link
Collaborator

I like the debugging part! I think we shouldn't base our section too heavily on it as they weren't written for the same audience. For example, I would want ours to be slightly longer text-wise and also include "Tim's global ref trick" from the discourse post.

@jacobusmmsmit
Copy link
Collaborator

Oh, and we should definitely talk about semver.

@adrhill
Copy link
Collaborator

adrhill commented Jun 28, 2023

I like the debugging part!

The section on debugging is heavily based on @Wikunia s awesome blog post "Debugging in Julia - Two different ways"!

I would be glad to contribute!

@gdalle
Copy link
Collaborator Author

gdalle commented Jun 28, 2023

I like the debugging part!

And logging too!

Oh, and we should definitely talk about semver.

Yup, especially the quirks like how Julia handles v0.x.y differently than standard semver

@gdalle
Copy link
Collaborator Author

gdalle commented Jun 28, 2023

On the more practical aspect, I would like it if our blog posts were maintainable with minimum effort as Julia and package versions go by. This is made easy by Franklin's code running utilities, but it gets more tedious the more screenshots and schematics we add. What do you think?

@adrhill adrhill mentioned this issue Jun 30, 2023
@adrhill
Copy link
Collaborator

adrhill commented Jun 30, 2023

I generally agree, but for some interactive tools, screenshots will be hard to avoid (see e.g. the Cthulhu readme).
This depends on whether the goal of this guide is to demonstrate workflows or to point out useful tools.

@gdalle
Copy link
Collaborator Author

gdalle commented Jul 1, 2023

I wonder if there is a way to pre-specify the answers to an interactive REPL multiple-choice form like Cthulhu's

@jacobusmmsmit
Copy link
Collaborator

@adrhill Do you want to officially take the "debugging" section from me from the Projects tab or would you prefer if I wrote it at first?

@adrhill
Copy link
Collaborator

adrhill commented Jul 3, 2023

I would be happy to try my hand at it!

Maybe we can find a shorter example to demonstrate the debugger on?

@jacobusmmsmit
Copy link
Collaborator

In my head, the debugging section follows the natural progression of sophistication of debugging techniques, where related, but more difficult problems to debug are presented and solved using the next technique in the progression, with the most widely recommendable technique explored in slightly more detail to show how the other problems could be solved using it.

An abstract example is:
We have problem A, which we can solve naively with technique 1.

code or screenshot

But often, we run into related problem B, which technique 1 cannot solve effectively due to XYZ, so instead we use can use technique 2.

code or screenshot

Finally, in a more complex case, may have related problem C, which you can use technique 3 to solve:

example showing how to use technique 3

However, you may not know if you have problem A, B or even problem C, and so a sophisticated technique, technique 3, can be used to better understand the problem in question and identify the solution as such:

example showing how technique 3 fits into the Standard Julia Workflow™ with a relatively complex example

As a println/@show enjoyer, nothing immediately comes to mind about what the examples should be, but I haven't really thought about it yet. Maybe some come to you :)

@gdalle
Copy link
Collaborator Author

gdalle commented Jul 6, 2023

See #14

This was referenced Aug 11, 2023
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

3 participants