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

How to get started? #3

Open
mbbroberg opened this issue Apr 10, 2019 · 8 comments
Open

How to get started? #3

mbbroberg opened this issue Apr 10, 2019 · 8 comments

Comments

@mbbroberg
Copy link
Contributor

mbbroberg commented Apr 10, 2019

Hey all, I'm hoping to get this project up and running and I'm starting from a fresh MacOS environment. I don't yet understand the toolchain necessary to do so.

Notes:

  • I'm running Python 3.7, with python aliased to python3.7 and pip aliased to pip3

I'm specifically:

  1. Beginning by installing Anaconda, which successfully installed
    • verification on the CLI using conda -V shows conda 4.6.11
    • from the GUI of Anaconda-Navigator.app
    • I also installed PyCharm with the Anaconda plugin
  2. Starting from the Todoist downloader, I run pip install todoist-python
    • no errors on installation
  3. I set up my credentials in credentials.json
  4. I then try to view todoist_downloader.ipynb
    • in PyCharm, it only shows a JSON object due to it being the community edition
    • through Anaconda-Navigator, I launch Jupyter Notebook, choose the todoist_downloader.ipynb file, then get stuck.
  5. Jupyter Notebook says ModuleNotFoundError: No module named 'todoist' when I attempt to run it.
    • conda install todoist doesn't work, but I did re-run pip install todoist-python to verify it was installed and used pip list | grep todoist to verify it was there.

What's the best path forward? I'm out of my Python depths 🐍 😄

@markwk
Copy link
Owner

markwk commented Apr 11, 2019

Thanks for the questions @mbbroberg! Will see what we can do to provide a bit clear how to get started for Todoist stuff and in general.

In the meantime, I do have a simple site I built awhile back to get legacy todoist data here: https://todoist-export.herokuapp.com. It only works if you are a premium user. But it will get you your data that you can then plug into the data analysis parts of the code. Unfortunately getting data part is typically the hardest part.

@mbbroberg
Copy link
Contributor Author

@markwk thanks for being so supportive! I'm sure others come to a project like this more experienced with the requirements, and I'm happy to exchange your help for PRs along the way to make this approachable for a new audience. I'm actually headed to PyCon in a few weeks and hoping to spin this up talk to others about it there 😄

Anyway, I'll give the exporter a go, then move on the to analysis phase. Thanks!

@markwk
Copy link
Owner

markwk commented Apr 11, 2019

Ok. I'll work on getting the installer steps clarified and confirmed on my side in the next week or so. Hopefully you can it work and document it for others going forward.

@mbbroberg
Copy link
Contributor Author

Here's my recommendation after getting a bit further along.

  • Under Code / Dependencies:, add an additional one-line for "Here are some tips for getting started for those new to Python and Jupyter"
  • Link it to a markdown file that guides the user to launch Anaconda Navigator, choose Jupyter Notebook, refer to the documentation (this one in particular), then a gif showing shift+center to run a section or two.

That would have been enough for me to get running and I think is a reasonable mvp to move forward on this issue.

@yatashashank
Copy link

I donno whether I missed some where in document but I couldn't find the exact place where to put my initial extracted data. Any help is appreciated

@mbbroberg
Copy link
Contributor Author

Hey @yatashashank, most of the tutorials have a separate notebook to walk through download. See https://github.com/markwk/qs_ledger/blob/master/pocket/pocket_downloader.ipynb for example.

@markwk
Copy link
Owner

markwk commented May 20, 2019

@yatashashank @mbbroberg what would you prefer in terms of getting started documentation? A full write up with pictures? Wiki page? A video? Or something else? I have time again to start working on this and I'm open to making something to help more people get started with using the project!

@mbbroberg
Copy link
Contributor Author

@yatashashank @mbbroberg what would you prefer in terms of getting started documentation? A full write up with pictures? Wiki page? A video? Or something else? I have time again to start working on this and I'm open to making something to help more people get started with using the project!

Hey @markwk, I've been thinking about this quite a lot! I'm more of a reader than watcher type learning, and then I like to talk to others about it.

Hurdle 1 -- setting up the environment

I didn't start out familiar with Anaconda, and I would have found it helpful to link to some other "getting started" article or blog. I used this one: https://opensource.com/article/18/4/getting-started-anaconda-python

It would also be helpful to be opinionated about installation. Something along the lines of "If you're new to Jupyter, use Anaconda and stick to the base (root) namespace for your project. Use the same tool each time. JupyterLab is the newer standard for Jupyter projects."

Hurdle 2 -- Navigation to my goal

I found navigating this project to be difficult because I didn't understand the workflow. I want to do a Todoist + Pocket + Google Calendar mashup to see if there are correlations to when I read the most from my pocket (fewer tasks or meetings or times of year). I got stuck working through each individual folder. Is there a place I should or shouldn't start to get there?

Additional resources/questions/opinions:

  • Is there room for a helper script that asks what tools you want to use, the tokens for them, and then puts them in the right place and tries to pull the data?
  • One of the best tutorials in GitHub I've found is here: https://github.com/slackapi/python-slackclient/tree/master/tutorial
  • Given that this is Jupyter-based, it makes the most sense for this to be in Jupyter as much as possible. Think about building ways for people to do so, even something like a start-here.ipynb that explains the basics.

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