diff --git a/_toc.yml b/_toc.yml index ef732d9b..23140192 100644 --- a/_toc.yml +++ b/_toc.yml @@ -20,67 +20,40 @@ format: jb-book root: intro title: Home parts: -- caption: Getting started about the Campus Jupyterhub +- caption: Getting started with DataHub tools chapters: - - file: technology/pedagogy-and-technology - title: Pedagogy and Technology - sections: - - file: technology/pedagogy-and-technology/introduction-to-jupyter - title: Introduction to Jupyter - - file: technology/pedagogy-and-technology/notebook-zero - title: Notebook Zero - - file: technology/r-datahub - title: R DataHub - - file: technology/shiny - title: Shiny - - file: technology/quarto - title: Quarto - - file: faq/jupyterhub-intro - title: Datahub Frequently Asked Questions (FAQ) - - file: faq/onboarding - title: Onboarding new users into the Hub - - file: technology/jupyter/install-packages - title: Using Packages in Jupyter Hub - - file: faq/admin - title: Exploring admin privileges in the Hub - - file: faq/changerequirements - title: Changing existing requirements in the Hub - - file: faq/troubleshoot - title: Troubleshooting issues in the JupyterHub service - - file: technology/jupyter/troubleshoot-nbgitpuller - title: Troubleshooting issues in the nbgitpuller service - - file: technology/jupyter/python-errors - title: Troubleshooting issues in the Python Code - - file: faq/features - title: Requesting new features in the Hub - - file: faq/share - title: Sharing information about the Hub - - file: technology/pedagogy-and-technology/options-launch-rkernel - title: Options to Launch R Kernel - - file: technology/using-ai-llm - title: Using Generative AI in Datahub - - file: technology/jupyter/large-datasets - title: Working with Large Datasets + - file: technology/pedagogy-and-technology/introduction-to-jupyter + title: Introduction to Jupyter + - file: technology/r-datahub + title: R DataHub + - file: technology/shiny + title: Shiny + - file: technology/quarto + title: Quarto + - file: workflow/use-retrolab + title: Launch Jupyter notebooks using RetroLab interface + - file: workflow/use-realtimecollaboration + title: Use Real Time Collaboration (RTC) + - file: workflow/use-realtimefilesharing + title: Use Real Time File Sharing + - file: workflow/launch-vscode.md + title: Launch VSCode Editor + - file: technology/pedagogy-and-technology/options-launch-rkernel + title: Options to Launch R Kernel - caption: Workflow Basics chapters: - file: workflow/creating-notebooks title: Creating Assignments + - file: technology/pedagogy-and-technology/notebook-zero + title: Notebook Zero - file: workflow/accessibility - title: Creating Accessible Notebook Experience + title: Create Accessible Notebook Experience - file: workflow/pushing-to-github - title: Uploading Files to Github + title: Upload Files to Github - file: workflow/distributing-notebooks - title: Distributing Assignments - - file: workflow/use-retrolab - title: Launch Jupyter notebooks using RetroLab interface! + title: Distribute Assignments - file: workflow/collecting-grading-assignments - title: Collecting and Grading Assignments - - file: workflow/use-realtimecollaboration - title: Using Real Time Collaboration (RTC) - - file: workflow/use-realtimefilesharing.md - title: Using Real Time File Sharing - - file: workflow/launch-vscode.md - title: Launch VSCode Editor + title: Collect and Grade Assignments - file: workflow/download_notebook_as_pdf.md title: Download Jupyter Notebook as PDF - file: workflow/download-archive.md @@ -88,10 +61,39 @@ parts: - file: workflow/performance_issue.md title: Best Practices to Avoid Performance Issues - file: workflow/securely-push-github - title: Securely Pushing Changes to Github -# - file: workflow/bestpractices -# title: Instructional Design Best Practices for Creating Jupyter Notebooks - + title: Securely Push Changes to Github + - file: faq/share + title: Sharing information about the Hub + - file: technology/using-ai-llm + title: Use Generative AI in Datahub + - file: technology/jupyter/large-datasets + title: Working with Large Datasets + - file: workflow/bestpractices + title: Instructional Design Best Practices for Creating Jupyter Notebooks +- caption: Datahub Frequently Asked Questions (FAQ) + chapters: + - file: faq/onboarding + title: Onboarding new users into the Hub + - file: technology/jupyter/install-packages + title: Using Packages in Jupyter Hub + - file: faq/admin + title: Explore elevated privileges in DataHub + - file: faq/changerequirements + title: Changing existing requirements in the Hub + - file: faq/troubleshoot + title: Troubleshooting issues in the JupyterHub service + - file: technology/jupyter/troubleshoot-nbgitpuller + title: Troubleshooting issues in the nbgitpuller service + - file: technology/jupyter/python-errors + title: Troubleshooting issues in the Python Code + - file: faq/features + title: Requesting new features in the Hub +- caption: Resources for Students + chapters: + - file: technology/resources + title: Resources for Students + - file: technology/troubleshooting_tips_students + title: Troubleshooting Tips for Students - caption: Getting Started with Modules and Connectors chapters: - file: connector/general/what-is-a-connector @@ -123,12 +125,6 @@ parts: title: Developing the Module - file: module/instructor/deploy-help title: Requesting Deployment Help -- caption: Additional Resources for Students - chapters: - - file: technology/resources - title: Resources for Students - - file: technology/troubleshooting_tips_students - title: Troubleshooting Tips for Students - caption: Workshop Resources chapters: - file: technology/instructor-activity diff --git a/faq/onboarding.md b/faq/onboarding.md index f91252b3..5511e478 100644 --- a/faq/onboarding.md +++ b/faq/onboarding.md @@ -1,48 +1,43 @@ -# Onboarding new users to the Hub +# Get yourself onboarded to DataHub -```{note} -New to Datahub? Interested to learn more about the services offered by the hub? If yes, refer below! ``` -**I am instructor planning to teach using Datahub. How do I onboard myself?** - -Dear Instructor, Sharing few logistical information which would make onboarding easy for you. - -- Github Issues: The best way to request help with the Datahub is handled through filing an issue on the github page for the datahub deployment: https://github.com/berkeley-dsep-infra/datahub/issues -- Slack Channel: For urgent troubleshooting, you or your course staff can also use uctech.slack.com (anyone with a berkeley.edu account can get in) and join the #ucb-datahubs channel to touch base with the infra team. -- Documentation: You can also refer to the FAQ section of this support documentation (Curriculum Guide), where we regularly update solutions to some of the reported issues. - -- Packages: Check whether all the needed Python/R packages and their required versions are installed in your respective hub. If not, please use the following [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=felder%2Cbalajialg&labels=package-request&template=package_request.yml&title=Request+python+package+X+for+class+Y) to raise a request to the infra team. -- Admin Access: You can use this [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=balajialg&labels=support&template=admin_request.yml) to add course staff instructors as [admins](https://ds-modules.github.io/curriculum-guide/faq/admin.html?highlight=admin) for the requested hub. Your requests should get completed within two to three working days. -- Big Assignments / High Use times: You can share the important date(s)/time(s) for workshops/exams/assignments etc. when you expect the compute requirement to be larger than usual during this semester. We will review your request and get back to you directly about the feasibility of increasing the compute resources during the mentioned timeframe. You can provide us with all the relevant information using this [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=felder%2Cbalajialg&labels=support&template=resourcescheduler.yml&title=Increase+compute+resources+for+Course+XXX+between+specific+date%28s%29%2Ftime%28s%29). +**I am instructor planning to teach using Datahub. What should I know prior to the start of the semester?** +Dear Instructor, Datahub team is available to support you through this process. Sharing few onboarding tips that would make it easy for you to get familiar with Datahub and interact with the support team. -- Newsletter: Are you interested to learn about some of the latest infrastructure changes, case studies of faculty doing interesting work, and scheduled workshops related to Datahub and other tools part of Berkeley Data Science Teaching Stack? If yes, Check our [newsletter](https://ucberkeleydatahub.substack.com/p/january-edition-of-berkeley-datahub) and subscribe to it if you think the information shared is useful! Some new things to know about are, -- Nbgitpuller Plugin: There is a [plugin in the Google Chrome store](https://chrome.google.com/webstore/detail/nbgitpuller-link-generato/hpdbdpklpmppnoibabdkkhnfhkkehgnc) that makes nbgitpuller links from within Github pages! +- **Github Issues:** The best way to request help with the Datahub is handled through filing an issue on the github page for the datahub deployment: https://github.com/berkeley-dsep-infra/datahub/issues +- **Slack Channel:** For urgent troubleshooting, you or your course staff can also use uctech.slack.com (anyone with a berkeley.edu account can get in) and join the #ucb-datahubs channel to touch base with the infra team. +- **Documentation:** You can also refer to the FAQ section of this support documentation where we regularly update solutions to some of the reported issues. + - **Packages:** Check whether all the needed Python/R packages along with their required versions are installed in the instructional hubs you use for teaching. If certain packages are not present, please use the following [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=felder%2Cbalajialg&labels=package-request&template=package_request.yml&title=Request+python+package+X+for+class+Y) to make a request to the support team. +- **Elevated Privileges:** Do you want your instructional staff to troubleshoot student servers when they have issues. You can get elevated privileges which allows for viewing and accessing student servers in DataHub. If you need to access student servers, You can use this [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=balajialg&labels=support&template=admin_request.yml) to make the request for the requested hub. +- **Big Assignments / High Usage times:** You can share the important date(s)/time(s) for workshops/exams/assignments etc. in your course the compute requirement is greater than regular usage during this semester. You can provide us with the required information using this [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=felder%2Cbalajialg&labels=support&template=resourcescheduler.yml&title=Increase+compute+resources+for+Course+XXX+between+specific+date%28s%29%2Ftime%28s%29). +- **Newsletter:** Are you interested to learn about some of the latest infrastructure changes, case studies of faculty doing interesting work, and scheduled workshops related to Datahub and other tools part of Berkeley Data Science Teaching Stack? If yes, Check our [newsletter](https://ucberkeleydatahub.substack.com/p/january-edition-of-berkeley-datahub) and subscribe to it if you think the information shared is useful! Some new things to know about are, +- **Datahub Link Generator Plugin:** There is a [plugin in the Google Chrome store](https://chromewebstore.google.com/detail/datahub-link-generator/ijbgangngghdanhcnaliiobbiffocahf?hl=en) which helps with generating distributable links from Github. Finally, provide us with any [feedback](https://github.com/berkeley-dsep-infra/datahub/issues/new) that will help us improve our hub operations. We want to ensure that you have a smooth experience teaching this semester. **How can I learn more about Datahub to onboard myself?** -- If you are new to Datahub and want to know more, refer [here](https://datahub.berkeley.edu/hub/login?next=%2Fhub%2F). +- If you are new to Datahub and want to know more, checkout [here](https://datahub.berkeley.edu/hub/login?next=%2Fhub%2F). -- If you are interested in learning more about the configuration of various Berkeley hubs, you can refer to [UC Berkeley's JupyterHubs documentation](https://docs.datahub.berkeley.edu/en/latest/). +- If you are interested in learning more about the configuration of various Berkeley hubs, you can checkout [UC Berkeley's JupyterHubs documentation](https://docs.datahub.berkeley.edu/en/latest/). - If you want to set up a hub infrastructure at your end and are interested in learning more about the technical details, use this [Zero to JupyterHub with Kubernetes documentation](https://zero-to-jupyterhub.readthedocs.io/en/latest/). **What languages are supported by the hub?** -Datahub primarily supports three languages - **Python, R and, Julia**. However, We can also support other languages on a case-to-case basis. If you have a unique requirement for using a different programming language as part of your hub, Share your exact requirement over an email to [Eric Van Dusen](mailto:ericvd@berkeley.edu)/[Balaji Alwar](mailto:balajialwar@berkeley.edu) or raise a Github [issue](https://github.com/berkeley-dsep-infra/datahub/issues/new/choose). +Datahub primarily supports three languages - **Python, R and, Julia**. However, We also support other languages on a case-to-case basis. If you have a unique requirement for using a different programming language as part of your hub, Share your exact requirement over an email to [Eric Van Dusen](mailto:ericvd@berkeley.edu)/[Balaji Alwar](mailto:balajialwar@berkeley.edu) or raise a Github [issue](https://github.com/berkeley-dsep-infra/datahub/issues/new/choose). **How many hubs across the campus exist? Which courses use them extensively?** -We have 15+ hubs that cater to the diverse needs of the campus audience. We have the main Datahub, which serves multiple departments/courses across the campus. In addition, We have separate hubs for courses such as Data 8, Data 100, Public health, etc., serving the teaching team's and enrolled students needs. You can learn more about some of the hubs deployed through this [link](https://docs.datahub.berkeley.edu/en/latest/users/hubs.html). +We have 15+ hubs which cater to the diverse needs of the campus audience. We have the [vanilla DataHub](https://datahub.berkeley.edu/), which serves multiple departments/courses across the campus. We also have separate hubs for courses such as Data 8, Data 100, Public health, etc., serving the instructional needs. You can learn more about some of the hubs deployed through this [link](https://docs.datahub.berkeley.edu/en/latest/users/hubs.html). **What is the default Memory/CPU requirement for every hub?** -Datahub has a memory limit of 1 GB of RAM, which should meet the teaching/research needs of most of our users. If you are interested to know more about the memory consumption in your instance, Please use the following steps, +[DataHub](https://datahub.berkeley.edu/) has a memory of 1 GB, which should meet the teaching/research needs of most of our users. If you are interested to know more about the memory consumption in your instance, Please follow the steps below, -- Look at the top right corner of your Python/R notebook for the term memory. It will highlight the amount of memory you had consumed by the amount of memory provided to your instance. -- If your consumed memory is greater than the available memory for your instance, You may require an increase in RAM, +- Look at the top right corner of your Python/R notebook for the term memory. It will highlight the amount of memory you had consumed against the total memory available for your server. +- If your consumed memory is greater than the available memory for your instance then your server will crash resulting in you either optimizing your workflow to be less compute intensive or requesting additional RAM, ```{figure} ../images/memory.png :width: 500px @@ -60,7 +55,7 @@ We offer UI for Classic Jupyter Notebook, RStudio and JupyterLab across differen **What is the process to raise Github issues? How can I track the raised issues?** -If you want to raise a bug, you can use this [link](https://github.com/berkeley-dsep-infra/datahub/issues/new/choose) to submit your issues. You can also use post messages to our [Piazza channel](https://piazza.com/class/ksqmnrrhvcl11f) if you require real time troubleshooting! +If you want to raise a bug, you can use this [link](https://github.com/berkeley-dsep-infra/datahub/issues/new/choose) to submit your issues. **When do I receive a response when an issue gets raised?** @@ -79,7 +74,7 @@ We have categorized common requests we get from our users into templates that yo **Raise Bugs:** If you found a bug in the workflow, Please use this [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=&labels=bug&template=bug_report.yml) to raise an issue. -**Share a New Enhancement:** If you envision a new feature/documentation that would help your existing workflow, please use this [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=&labels=type%3A+enhancement&template=featurerequest.md) to submit a request. +**Share New Enhancement:** If you envision a new feature/documentation that would help your existing workflow, please use this [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=&labels=type%3A+enhancement&template=featurerequest.md) to submit a request. **Request Package Addition/Change:** If you want to install new packages in R/Python/Julia as part of your hub, please raise a request using this [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=&labels=support&template=datahub-package-addition---change-request.md&title=Request+python+package+X+for+class+Y). @@ -87,7 +82,7 @@ We have categorized common requests we get from our users into templates that yo **Request Admin Access:** If you want members of your teaching team to have admin access then please use this [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=&labels=support&template=admin_request.yml) to make this request. -**Request to recover hub data:** If you want to request data stored as part of your hub instance, then please do use this [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=&labels=support&template=data_archival_request.yml) to raise a request +**Retrieve User Data:** If you want to request data stored as part of your hub instance, then please do use this [template](https://github.com/berkeley-dsep-infra/datahub/issues/new?assignees=&labels=support&template=data_archival_request.yml) to raise a request ```{note} If these templates are not exhaustive enough to cover the type of issue you are raising, you can use this [generic template](https://github.com/berkeley-dsep-infra/datahub/issues/new) to raise your issue. @@ -98,7 +93,7 @@ If these templates are not exhaustive enough to cover the type of issue you are Honestly, nothing! You are free to use the Datahub starting today. ```{note} -We expect that all course members log in using their UC Berkeley email id. We also expect that you are using [nbgitpuller service](https://jupyterhub.github.io/nbgitpuller/link) to distribute materials to your class. We can help you set up the links so that you can distribute through your course website. +We expect that all course members log in using their UC Berkeley email id. We also expect that you are using [Datahub Link Generator](https://chromewebstore.google.com/detail/datahub-link-a/ijbgangngghdanhcnaliiobbiffocahf?hl=en) to distribute materials to your class. We can also help with setting up the links. ``` **What instructions should I share with students at the start of the semester** @@ -112,12 +107,12 @@ Please ask your students, We can’t allow non UC Berkeley users as our authentication system only allows users with UC Berkeley email id. For such users, there are couple of options we recommend below, - Use the [Calnet Sponsored Guests](https://calnetweb.berkeley.edu/calnet-departments/calnet-sponsored-guests) option to get temporary access to bcourses which will allow you to access the Datahub service. -- Use [Binder service](https://mybinder.org/) to solve for the immediate needs. +- Use [Binder](https://mybinder.org/) or [Jupyterlite](https://jupyterlite.readthedocs.io/en/stable/) services to solve for the immediate needs. **How do my students download their submissions as a PDF?** We recommend that you use the following options, -- **For Jupyter Notebooks:** Select File -> Download as -> PDF via HTML(.pdf) to get the PDF version of your notebook. +- **For Jupyter Notebooks:** Select File -> Download as -> WebPDF to download the PDF version of your notebook. ```{figure} ../images/downloadhtml.PNG :width: 500px :align: center @@ -138,6 +133,6 @@ Here is where you can find the option to download the R file! Here is where you can find the option to specify the download format as PDF! ``` -** How do I get access to elevated privileges if I am not able to publish the bcourses site? ** +**How do I get access to elevated privileges if I am not able to publish the bcourses site?** -As a policy, we provide elevated privileges to users **only** through their bcourses affiliation. It makes it easy for us to ensure that the right stakeholders have the elevated privileges for a particular course. If you are not using bcourses site for your course and worry that it might be confusing for your students,please create a banner in your bcourses site highlighing that you are not using bcourses for your course work. If you need more input, please contact the infrastructure team. +As a policy, we provide elevated privileges to users **only** through their bcourses affiliation. It makes it easy for us to ensure that the right stakeholders have the elevated privileges for a particular course. If you are not using bcourses site for your course and worry that it might be confusing for your students,please create a banner in your bcourses site highlighing that you are not using bcourses for your course work. If you need more input, please contact the support team. diff --git a/general/contact.md b/general/contact.md index cda8ddec..1b0d66f0 100644 --- a/general/contact.md +++ b/general/contact.md @@ -1,3 +1,3 @@ # Contact -You can reach out to us either over [Slack](uctech.slack.com) or [Piazza](https://piazza.com/class/ksqmnrrhvcl11f) +You can email balajialwar@berkeley.edu or reach out via [Slack](uctech.slack.com) \ No newline at end of file diff --git a/technology/troubleshooting_tips_students.md b/technology/troubleshooting_tips_students.md index 84066804..63ffa22e 100644 --- a/technology/troubleshooting_tips_students.md +++ b/technology/troubleshooting_tips_students.md @@ -2,7 +2,7 @@ ## About the UC Berkeley DataHub: -The DataHub is UC Berkeley’s implementation of Jupyterhub and is a free service made available to UC Berkeley students to provide a small amount of computing and storage on a virtual machine running in the cloud. This guide provides an overview of the tasks you will need to complete before the semester begins, during the semester, and at the end of the semester. This high-level information will help you navigate your coursework effectively using the UC Berkeley DataHub. +DataHub is UC Berkeley’s implementation of Jupyterhub and is a free service made available to UC Berkeley students to provide a small amount of computing and storage on a virtual machine running in the cloud. This guide provides an overview of the tasks you will need to complete before the semester begins, during the semester, and at the end of the semester. This high-level information will help you navigate your coursework effectively using the UC Berkeley DataHub. #### Before the Semester Begins @@ -33,13 +33,18 @@ The DataHub is UC Berkeley’s implementation of Jupyterhub and is a free servic **To manage files in JupyterHub:** To upload a file, click the "Upload" button in the JupyterHub interface and select the file from your local machine.To download a file, right-click on the file in the JupyterHub interface and select the "Download" option. ##### 2. Completing Assignments -Regular Use: Regularly log in to DataHub to complete assignments, run analyses, and work on projects. -Save Work: Save your progress frequently. It's good practice to manually save your work as well. -Check Storage Space: Delete unnecessary files and constantly check the storage size of the home directory. You can do this by opening a Terminal, and executing du -sh -Don’t Duplicate Shared Directory Content: If your course work requires shared directories where instructors are storing large datasets, don’t create a copy of the files in your home directory. Always, read data from the shared directory. -Do Your Work in Sub Directories: Create a sub directory for each assignment and do your work there. Avoid working on assignments from the root directory as they may lead to data issues if done wrongly. +**Regular Use:** Regularly log in to DataHub to complete assignments, run analyses, and work on projects. + +**Save Work:** Save your progress frequently. It's good practice to manually save your work as well. + +**Check Storage Space:** Delete unnecessary files and constantly check the storage size of the home directory. You can do this by opening a Terminal, and executing `du -sh` + +**Don’t Duplicate Shared Directory Content:** If your course work requires shared directories where instructors are storing large datasets, don’t create a copy of the files in your home directory. Always, read data from the shared directory. + +**Do Your Work in Sub Directories:** Create a sub directory for each assignment and do your work there. Avoid working on assignments from the root directory as they may lead to data issues if done wrongly. ##### 3. Collaboration and Sharing + ```{note} Datahub doesn’t have collaboration tools at this time as we are continuously testing the latest updates. ```