Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added media/env-mgmt.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
96 changes: 92 additions & 4 deletions mtg_notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,18 +72,106 @@ here are some short post with some comments on why we should avoid using regex w
+ This group may have a future session to demonstrate PySimpleGUI
+ Tomasz asked if folks knew about Python tools for “transliteration” of Non-Latin text
+ A graph-based transliteration tool: https://github.com/seanpue/graphtransliterator
+ We went back to talking about tools for local development
+ Here is an image that I found through my local (Boston) Python meet up, of all the tools that can be used for setting up your code...
+ for virtual environments, for creating packages, for multiple python versions, etc. https://cdn.fosstodon.org/media_attachments/files/110/741/748/598/833/261/small/13d5e21803357140.png
+ It is a bit overwhelming
+ Here is a presentation where this image was taken from uploaded this summer covering a lot of the possible tools that can be used… https://youtu.be/MsJjzVIVs6M

### October 3rd, 2023
...
+ Guest Speakers:
+ Simply E (python project ereader app) (Mike with NYPL, Tomasz to contact)
+ Alma and Archivespace sync utility (Aspace and Alma APIs) Bruce Orcutt in Group (Dave to email/slack)
+ Pysimple GUI (John Dewees) (Dave to email/slack)
+ Citation generator at U of Miami (Eddy and Charles) Citation Style Language
+ https://pypi.org/project/citeproc-py/
+ https://pypi.org/project/citeproc-py-styles/
+ https://github.com/brechtm/citeproc-py
+ https://citationstyles.org/
+ Though some libraries aren’t actively maintained.
+ Side note, Charles works on an open source LibGuides alternative.
+ Some general chat about the nature of open source projects - great grassroots! Though it can be fragile/risky.
+ Some code generated by chat GPT for the basic LMS on the list of exercises Charles provided
+ Think small and tailor the items to the library discipline. Build upon one thing to the next?
+ GUI? Connect to WorldCat?
+ Carpentries lessons, link to git space? https://carpentries.org/community-lessons/
+ John Pillbeam mentioned the incubator for finding concepts that may not be included in main lesson plans yet.

### September 19th, 2023
...
+ Ben asked how to tell others that say they want to use Python with AI, specifically with the chatGPT API
+ We spoke how there is some ability to run some API calls for free for version 3.5, though there is a cost for running API calls for the 4.x version
+ It was mentioned about the pricing for Hugging Face https://huggingface.co/pricing as an alternative
+ From David: Hugging Face also has a variety of tags around different areas of AI. So there’s the Natural Language Processing stuff, but ChatGPT is the big player there. But things like object detection and audio tools are there.
+ Yamil suggested running tutorials of the https://scikit-learn.org/stable/
+ Simple and efficient tools for predictive data analysis
+ Accessible to everybody, and reusable in various contexts
+ Built on NumPy, SciPy, and matplotlib
+ Open source, commercially usable - BSD license
+ Recent post from Simon Willison on Python and OpenAI tools: https://simonwillison.net/2023/Sep/12/llm-clip-and-chat/
+ We talked about concerns on the AI hype and over reliance of AI.
+ We very briefly spoke about NLP - Natural Language Processing., and how that is just a small part of the “engine” that is a platform like chatGPT
+ to try to learn NLP I ran some tutorials using the python module https://spacy.io/
+ spaCy is a free, open-source library for advanced Natural Language Processing(NLP) in Python.
+ If you’re working with a lot of text, you’ll eventually want to know more about it. For example, what’s it about? What do the words mean in context? ”
+ We spoke about Charle’s new repository with exercises to learn python skills
+ https://github.com/UMiamiLibraries/python4lib-python-exercises/blob/main/README.md
+ Charles is looking for collaborators
+ Tomasz talked about about issues with being a organizational customer of Naxos, which is a streaming audio/video content
+ For example, how to make sure the catalog is serving the correct sets of valid MARC files with also valid 856 tags that lead to the content
+ Here is a presentation on the pitfalls of keeping your holdings in sync with vendors
+ [Everything is Broken, but by How Much Exactly (video)?](https://phette.net/prez/everything-is-broken) [(slides)](https://phette23.github.io/everything-is-broken/#/)
+ Tomasz would like to see if he can use Python to automate the process of keeping the holdings in sync. Meaning that MAC records for content that is no longer available via Naxos is deleted from the catalog in a timely manner
+ For example, doing some analysis with Pandas
+ Kate wrote:
+ Once we migrate to our new ILS (Symphony), we will eventually (hopefully!) start using their eResource Central system for all our eContent and be able to do away with MARC records for eContent. But for now we use a combination of extracting batches of records in order to use MarcEdit’s link checker or other link checkers, or just periodically wiping out all our MARC records for a particular vendor and loading a new batch from the vendor for all our holdings
+ We’re about to do that now with Axis 360 since they’ve switched to “Boundless”. We have over 30,000 MARC records for Axis 360, so just too much to handle
+ Mentioned the issues of trying to fix issues, in the large vendor MARC records that need to be added to our catalogs. For example, like misspellings or bad records
+ We spoke about about the limitations of licensing content from Naxos (or similar vendors) versus actually storing that content locally
+ Briefly mentioned the ongoing “Internet Archive lawsuit”
+ Here is an article about the lawsuit it that is a few weeks old
This is an [article from the New York Times](https://www.nytimes.com/2023/08/13/business/media/internet-archive-emergency-lending-library.html?unlocked_article_code=wcOmLYkdU__rOiiM6CNfze5OdE8Y4h41_rWZGFXrGdG-380Ng1Dkw0URPeZyTdFWmVYedUOlhz1hQFujukvNfw6un9L-aR5-AXLvbT4yWNv_tPLhfkj0Ou344H0i50355VZDbp5Uv9U6xLKJrJGh7WRZ-Vi6WbWosiHTpN7j-qR60P1SUSZn9nweYhFky5gIPNubaGpsUrRt3V1ZbzqG_aQMpfqbQSjFZamJkm84kzV_bqbbDB1q370gK6OkBDZbrBifM0fTKnqQaVItqvokBYaeEExJsRMugQQlJiKInxc7V44Cg5xK0piv3Q6ulQj1V1i2QYsbQGgSQwjv_bzTmknPkPRHMkfI9Uf2jdYqM5GHRn9zwqk9tvqXTw&smid=url-share) that is several weeks old about the lawsuit
a key quote from the article that we talked about
“Libraries came before publishers,” the 62-year-old librarian said in a recent interview in the former Christian Science church in western San Francisco that houses the archive. “We came before copyright. But publishers now think of libraries as customer service departments for their database products.”

### September 5th, 2023
...
+ Charles showed some code that batch creates APA & AMA citations
+ Carlos wanted feedback on how to add small improvements to their code that creates citations
+ for example, when then there is no volume number for a citation, how to elegantly not add a volume number
+ someone suggested to to use Python 3.10's “case” functionality that is formally called: “Structural Pattern Matching”
+ this feature was added Python 3.10 in PEP636 https://peps.python.org/pep-0636/
+ we briefly talked about how PEP stands for “Python Enhancement Request”
+ Here is a site with a brief explanation on how to use “Structural Pattern Matching” in Python 3.10
https://realpython.com/python310-new-features/#structural-pattern-matching
+ Eduardo, who works with Charles, mentioned that they are trying to figure out how to encode that some parts of the citation have to be in italic when using Pandas to batch create citations
+ Tom has this suggestion for dealing with citation data
+ If you want to play with bibtex files to manage your citations instead of excel, you could possibly use this https://github.com/caltechlibrary/pybtex-apa7-style
+ https://github.com/cproctor/pybtex-apa7-style/blob/master/formatting/apa.py
+ Yamil talked about using “unittest” for a pre-existing python code base, but mentioned that you can keep older tests as unittest style and just add new tests that use pytest
+ [Info on Python built-in unittest module](https://docs.python.org/3/library/unittest.html)
+ versus the non-built in [pytest module](https://docs.pytest.org/en/7.4.x/) also for “unit tests”
+ we talked about “Library Carpentry” classes and how helpful they have been. They can cover various topics, including Python
+ https://librarycarpentry.org/index.html
+ “Library Carpentry focuses on building software and data skills within library and information-related communities. Our goal is to empower people in these roles to use software and data in their own work and to become advocates for and train others in efficient, effective and reproducible data and software practices. Our workshops are based on our lessons. ”
+ The [umbrella organization for Library Carpentry](https://carpentries.org/index.html)includes: Data Carpentry and Software Carpentry
+ Yamil was asked to briefly speak about a session at the Open Library Foundation’s (OLF) conference (WOLFCon) that covered the FOLIO ILS and the use of Python for post migration clean up by folks at Wellesley
+ https://github.com/wellesleyfolio/WOLFcon_2023
+ here are more links for Python FOLIO tools/modules
+ https://github.com/FOLIO-FSE/folioclient
+ https://github.com/folio-org/folio-tools
+ this site was suggested for improving your Python skills, but other programming languages are supported
+ https://exercism.org/
+ we spoke about Python community’s preferred writing style versus Ruby’s
+ We spoke about PEP8, which is the main Python style guide
+ [PEP 8 – Style Guide for Python Code](https://peps.python.org/pep-0008/)
+ Here is a Python module to check if your code follows PEP8 without making changes
https://pycodestyle.pycqa.org/en/latest/
+ spoke about [Black](https://black.readthedocs.io/en/stable/), which can be used to change your code to match PEP8
+ “Black: The uncompromising code formatter”
+ We spoke about how the Pycharm Python editor is great about reminding you to follow PEP8 when you write your code and to also give the option to automatically reformat individual code snippets to follow PEP8, instead of just reformatting all of your code
+ Yamil also mentioned how I have opened up existing Python codebases in Pycharm, and the Pycharm indexer has found many hidden bugs in code that had never run or code that had logic flaws

### August 22, 2023
...
... missing ... :sob:

### August 8, 2023
Our meet focused on [Pydantic](https://docs.pydantic.dev/latest/). Matt Lincoln from JSTOR Labs gave a brief intorduction into the tool and its uses.
Expand Down