Projekt Julia Language

Ta strona zawiera szczegółowe informacje o projekcie polegającym na pisaniu tekstów technicznych, który został zaakceptowany w ramach Google Season of Docs.

Podsumowanie projektu

Organizacja open source
Język Julia
Specjalista ds. technicznych:
Shuo Liu
Nazwa projektu:
LightGraphs Docs 2.0 i przyjazne dla użytkownika samouczki JuliaGraphs
Długość projektu:
Długotrwałe (5 miesięcy)

Opis projektu

W ramach tego długotrwałego projektu będę ulepszać stronę internetową i dokumentację modułów w JuliaGraphs. W szczególności moje treści będą obejmować (ale nie tylko) te treści:

LightGraphs Docs 2.0 – 10 tygodni

  • Omówienie: LightGraphs.jl to lekki, zoptymalizowany pakiet grafów dla Julia, który stanowi podstawę ekosystemu JuliaGraphs. Nadchodząca wersja LightGraphs 2.0 wprowadza fundamentalną zmianę w interfejsie LightGraphs API. Zadbam o to, aby dokumentacja odzwierciedlała najnowsze i najlepsze funkcje LightGraphs.
  • Wymagania: sprawdzę i zweryfikuję istniejące dokumenty API, aby sprawdzić, które elementy dokumentacji mogą pozostać bez zmian, i przeanalizuję zmiany wprowadzone w wersji 2.0, aby mieć pewność, że są one odpowiednio udokumentowane i zawierają przykłady. W trakcie tego procesu będę publikować posty, w których będę informować o najważniejszych zmianach w wersji 2.0. Aby pomóc początkującym użytkownikom w lepszym zrozumieniu Grafu światła, utworzę przewodniki dla początkujących dla osób, które stawiają pierwsze kroki w świecie korzystania z wykresów w Julii.
  • Uwagi: w tym projekcie do tworzenia dokumentów LightGraphs używany jest plik Documenter.jl. Oprócz odwołań do interfejsu API w przypadku modułów takich jak Coloring.jl potrzebuję ich też w przypadku podmodułów takich jak greedy_color.jl. Spróbuję dodać je do nowej dokumentacji LightGraphs. Poza tym teoria grafów to dość techniczna dziedzina matematyki, niezrozumiała dla osób bez wykształcenia matematycznego. Zajmuję się badaniami naukowymi od około 2 lat i opublikowałem wiele postów na blogu na mojej stronie internetowej. Dzięki temu mogę wyjaśnić istotę różnych algorytmów i podać wskazówki, których algorytmów używać w różnych sytuacjach podczas tworzenia przewodników dla początkujących.

Samouczki JuliaGraphs – 10 tygodni

  • Omówienie: wiele dokumentacji pakietów JuliaGraphs jest przeznaczonych dla programistów. Dodam kilka prostych przykładów i przedstawię sposób korzystania z każdej funkcji, aby ułatwić użytkownikom korzystanie z tej funkcji.
  • Wymagania: sprawdzę istniejące samouczki LightGraphs, aby sprawdzić, jakie materiały należy dodać, oraz zademonstruję wykorzystanie i uzasadnienie każdej funkcji. Następnie będę tworzyć samouczki JuliaGraphs w stylu JuliaGraphsTutorials, w tym przewodnik dla początkujących w ekosystemie LightGraphs.
  • Uwagi: obecnie treść JuliaGraphsTutorials nie jest wystarczająco obszerna, a wyniki wymienione powyżej dotyczą głównie pakietu LightGraphs. Jeśli pozwoli na to czas, dodam też samouczki do innych modułów w JuliaGraphs, takich jak GraphPlot.jl, MetaGraphs.jlSimpleWeightedGraphs.jl.

JuliaGraphs Central Website – 4 weeks

  • Omówienie: w głównej witrynie JuliaGraphs można znaleźć przegląd pakietów z tego ekosystemu. Nadal jednak jest to głównie opis i można go udoskonalić, aby stał się pierwszym źródłem informacji dla osób rozpoczynających pracę z wykorzystaniem funkcji graficznych w języku Julia. Szukam intuicyjnego sposobu wizualizacji, który pozwoli mi wyróżnić funkcje różnych pakietów JuliaGraphs.
  • Wyniki: przedstawię przypadki użycia i przykłady, aby podkreślić funkcje pakietów JuliaGraphs, oraz przeprowadzę kontrolę, aby upewnić się, że są one nadal aktualne i obsługiwane. Utworzę sekcję, w której będę wyróżniać różne zastosowania różnych pakietów w różnych domenach (zdrowie, edukacja itp.). Jeśli pozwoli na to czas, poszukam wizualnych wyjaśnień algorytmów używanych w Graphs.
  • Uwagi: wiele pakietów JuliaGraphs było szeroko stosowanych w różnych domenach. Oprócz rozszerzeń do tworzenia wykresów, takich jak DiGraph for NetworkViz, w ramach tego projektu będę używać też innych aplikacji do konkretnych tematów, np. MetaGraph for BioStructures w biologii, DijkstraState w planowaniu miejskim, DiGraph for TreeView w edukacji itd.