Brought to you by Michael and Brian - take a Talk Python course or get Brian's pytest book

Episode #284: Spicy git for Engineers

Published Wed, May 18, 2022, recorded Mon, May 16, 2022.


Watch the live stream:


About the show

Sponsored by us! Support our work through:

Brian #1:distinctipy

  • distinctipy is a lightweight python package providing functions to generate colours that are visually distinct from one another.”
  • Small, focused tool, but really cool.
  • Say you need to plot a dynamic number of lines.
  • Why not let distinctipy pick colors for you that will be distinct?
  • Also can display the color swatches.
  • Some example palettes here: https://github.com/alan-turing-institute/distinctipy/tree/main/examples
    from distinctipy import distinctipy
    
    # number of colours to generate
    N = 36
    
    # generate N visually distinct colours
    colors = distinctipy.get_colors(N)
    
    # display the colours
    distinctipy.color_swatch(colors)
    

Michael #2: Soda SQL

  • Soda SQL is a free, open-source command-line tool.
  • It utilizes user-defined input to prepare SQL queries that run tests on dataset in a data source to find invalid, missing, or unexpected data.
  • Looks good for data pipelines and other CI/CD work!

Daniel #3: Python in Nature

  • There’s a review article from Sept 2020 on array programming with NumPy in the research journal Nature.
  • For reference, in grad school we had a fancy paper on quantum entanglement that got rejected from Nature Communications, a sub-journal to Nature. Nature is hard to get into.
  • List of authors includes Travis Oliphant who started NumPy. Covers NumPy as the foundation, building up to specialized libraries like QuTiP for quantum computing.
  • If you search “Python” on their site, many papers come up. Interesting to see their take on publishing software work.

Brian #4: Supercharging GitHub Actions with Job Summaries

  • From a tweet by Simon Willison

  • Also, Ned Batchelder is using it for Coverage reports

  • “You can now output and group custom Markdown content on the Actions run summary page.”

  • “Custom Markdown content can be used for a variety of creative purposes, such as:

    • Aggregating and displaying test results
    • Generating reports
    • Custom output independent of logs”
  • Coverage.py example:

    - name: "Create summary"
    run: |
    echo '### Total coverage: ${{ env.total }}%' >> $GITHUB_STEP_SUMMARY
    echo '[${{ env.url }}](${{ env.url }})' >> $GITHUB_STEP_SUMMARY
    

Michael #5:Language Summit is write up out

Daniel #6:AllSpice is Git for EEs

  • Software engineers have Git/SVN/Mercurial/etc
  • None of the other engineering disciplines (mechanical, electrical, optical, etc), have it nearly as good. Altium has their Vault and “365,” but there’s nothing with a Git-like UX.
  • Supports version history, diffs, all the things you expect. Even self-hosting and a Gov Cloud version.
  • “Bring your workflow to the 21st century, finally.”

Extras

Brian:

Michael:

Daniel:

Joke:

A little awkward


Want to go deeper? Check our projects