15 Punkte von xguru 2024-05-08 | 1 Kommentare | Auf WhatsApp teilen
  • Ziel ist es, die pythonischste Tabellenkalkulation zu sein
  • Verwendet Python-Ausdrücke in Rasterzellen
    • Jede Zelle gibt ein Python-Objekt zurück, auf das von anderen Zellen aus zugegriffen werden kann; das Objekt kann alles darstellen, einschließlich Listen oder Matrizen
    • Text, Markup, Bilder, Datumsangaben, Diagramme usw. können angezeigt werden
  • Zugriff auf Python-Module wie NumPy innerhalb von Zellen
  • Import von CSV und SVG sowie Export nach CSV, SVG und PDF
  • Matplotlib- und R-Diagramme. Plotnine sowie die R-Pakete graphics, lattice und ggplot2 werden über einen Dialog unterstützt
  • Inklusive Rechtschreibprüfung
  • Git-fähiges pysu-Speicherdateiformat
  • Blake2b-basiertes Speicherdatei-Signaturverfahren, das die Ausführung externen Codes verhindert

Zielnutzergruppe

  • Die direkte Verwendung von Python-Code im Raster ist die Kernfunktion von pyspread
    • Die Zielgruppe sind Menschen, die Erfahrung mit der Programmiersprache Python haben oder sie lernen möchten
  • Forschungsingenieurin Clara:
    • Vergleicht systematisch die Ergebnisse verschiedener Parametersätze
    • Ist mit Python vertraut und hat es für wissenschaftliche Analysen verwendet
    • Zeigt Ergebnisse in pyspread-Zellen an, um schnell zu erkennen, wie sich Parameteränderungen auf die Resultate auswirken
  • Geschäftsmann Peter:
    • Bereitet geschäftliche Entscheidungen mit einer Tabellenkalkulation vor
    • Speichert Daten in CSV-Dateien und greift in pyspread darauf zu
    • Importiert den Money-Datentyp aus py-moneyed im Makro-Panel, um Fließkommafehler zu vermeiden
    • Implementiert Analysetools und Unit-Tests in einem separaten Python-Modul, um die Sorge vor schlechten Geschäftsentscheidungen durch falsche Ergebnisse zu verringern
  • Nutzer, für die pyspread nicht gedacht ist:
    • Donna: Sucht einen kostenlosen Excel-Ersatz, kennt aber keine Programmiersprache und hat auch keine Zeit, eine zu lernen
    • Jack: Führt rechenintensive Datenanalysen durch und sucht eine Tabellenkalkulation, die Berechnungen über Cluster- oder Cloud-Lösungen parallelisieren kann
      • Er könnte enttäuscht sein, da lang laufende Aufgaben manuell behandelt werden müssen, damit pyspread nicht blockiert

1 Kommentare

 
xguru 2024-05-08

Hacker-News-Diskussion

Zusammenfassung der Hacker-News-Kommentare zu Pyspread

1. Positive Reaktionen auf die klare Benennung der Zielgruppe

  • Gelobt wurde, dass im Abschnitt „Zielgruppe“ auf der Homepage nicht nur steht, für wen die App gedacht ist, sondern auch, für wen sie nicht gedacht ist.
  • Solche Informationen sind sehr wichtig, um zu entscheiden, ob man eine App nutzen oder weiterempfehlen möchte.
  • Zwar wünschen sich Entwickler oft, dass möglichst alle ihre App nutzen, oder möchten keine Zeit darauf verwenden zu erklären, für wen sie nicht gedacht ist, doch Entwickler, die solche Informationen bereitstellen, wurden ausdrücklich gelobt.

2. Wunsch nach einer Distribution mit alternativer Software

  • Es wäre wünschenswert, eine Distribution mit den besten alternativen Programmen zu haben, etwa Pyspread (Tabellenkalkulation), LyX (Textverarbeitung), OpenSCAD (3D-Modellierung) und TkzEdt/ipe (2D-Zeichnung).
  • Besonders Interesse besteht an Vorschlägen für ähnliche Software für Präsentationen und Datenbankarbeit.

3. Links zu früheren Hacker-News-Beiträgen über Pyspread

  • Es wird auf frühere Beiträge zu Pyspread aus Februar 2022, April 2014, November 2010 und August 2008 verwiesen.

4. Vorteile von Pyspread

  • Spalten und Zeilen können numerisch angegeben und wie eine 2D-Matrix indiziert werden.
  • Das alphabetische Spaltensystem von Excel ist unpraktisch, weil es ab mehr als 26 Spalten kaum noch sinnvoll wirkt.

5. Einschränkungen von Pyspread

  • Es scheint keine Abhängigkeitsverfolgung zu geben; nach Änderungen wird offenbar alles neu berechnet.
  • Für beliebigen Python-Code ist Abhängigkeitsverfolgung nicht einfach.
  • Ohne auf magische statische Analyse zu setzen, könnte man vermutlich Zugriffe auf S[] verfolgen, um Abhängigkeiten zu erkennen.

6. Verwandtes Thema: Python in Excel

  • Es wurde ein Link zu Microsofts Dokumentation geteilt, die erklärt, wie man mit Python in Excel beginnt.

7. Zusammenhang zwischen Resolver One, Project Dirigible und Python Anywhere

  • Giles Thomas entwickelte ursprünglich eine Pythonic-Tabellenkalkulation namens Resolver One und entwickelte sie später zur webbasierten Version Project Dirigible weiter.
  • Project Dirigible wurde eher für allgemeine Python-Entwicklung als als Tabellenkalkulation genutzt und später als Python Anywhere ausgegliedert.
  • Dazu wurden eine interessante Erklärung und ein Link zu einem Dirigible-Demovideo geteilt.
  • Project Dirigible wurde schließlich als Open Source veröffentlicht.

8. Vorschlag zur WASM-Kompilierung von Pyspread

  • Es wurde vorgeschlagen, Pyspread mit Pyodide oder Ähnlichem nach WASM zu kompilieren, um eine vollständige Version im Browser bereitzustellen.

9. Vorstellung des Tabellenkalkulationsdienstes RowZero

  • Vorgestellt wurde der Tabellenkalkulationsdienst RowZero, der große Datensätze mit Hunderten Millionen Zeilen verarbeiten kann.
  • Man kann Python-Funktionen definieren und sie in Tabellenzellen als Formeln aufrufen.
  • Pandas-DataFrames lassen sich nahtlos zwischen Python und der Tabellenkalkulation umwandeln.
  • Der Dienst wird wie Google Sheets gehostet und unterstützt Echtzeit-Kollaboration.
  • Die Excel-Formelsprache wurde nachimplementiert, und es bestehen direkte Verbindungen zu verschiedenen DBs.
  • Die erste Arbeitsmappe ist kostenlos.

10. Bedauern über die GPL3-Lizenz

  • Es wurde angemerkt, dass die GPL3-Lizenz eine Aufnahme in FreeCAD erschweren dürfte.
  • Zugleich wurde die Einschätzung geäußert, dass es wohl eine Verbesserung gegenüber der aktuellen Tabellenkalkulations-Workbench von FreeCAD wäre.