GithubHelp home page GithubHelp logo

rstadata's People

Contributors

aswansyahputra avatar

Stargazers

 avatar

Watchers

 avatar

rstadata's Issues

Alur kerja

Untuk "ngumpulin tugas" apakah perlu kita bikin branch khusus (misalnya devel, colab, dll.) di repository utama? Supaya kalau pull request tidak langsung ke branch main. Mohon masukkan untuk alur kerja yang sesuai dan aman.

Penamaan fungsi

Berdasarkan gaya penulisan nama fungsi yang dipakai oleh package-package modern (terutama gaya tidyverse), saya ingin mengusulkan untuk menamai fungsi-fungsi utama (fitur) dari package rstadata ini dengan prefix bps_ ketika berinteraksi dengan API BPS, seperti halnya:

  • str_* pada stringr untuk manipulasi data tipe string
  • geom_* pada ggplot2 untuk berinteraksi dengan bentuk atau jenis plot
  • st_* pada sf untuk berinteraksi dengan metode manipulasi data spasial
  • dan lain-lain.

Maksudnya tentu untuk memudahkan pengguna dalam mengingat dan mengakses fungsi melalui fitur autocompletion pada IDE masing-masing hanya melalui ketikan.

Jika mereplikasi fitur dari modul Python stadata, terdapat kategori/kelompok fitur:

  • list: untuk memperoleh daftar parameter yang diperlukan untuk mengakses data
  • view: untuk berinteraksi dengan atau memperoleh data yang diinginkan

dengan objeknya:

  • domain (hanya untuk kategori list)
  • static table
  • dynamic table
  • press release
  • publication

Sehingga, penamaannya boleh jadi menjadi seperti:

  • keluarga bps_get_* untuk mereplikasi fitur daftar (list), contoh: bps_get_domain(), bps_get_table(), bps_get_publication(), dsb. (hanya contoh)
  • keluarga bps_view_* untuk mereplikasi fitur penarikan Data of Interest (view), contoh: bps_view_publication(), dsb.

Adapun fitur API yang lebih lengkap dan kompleks perlu dipetakan/diekstraksi dari dokumentasi resmi BPS.

Pertanyaan lain adalah: apakah penamaan argumen (parameter fungsi) lebih baik diseragamkan dengan library versi Python, atau dibuat dengan kaidah sendiri? Ini mungkin akan berguna untuk pengguna yang biasa berpindah antara R dan Python, tapi pastinya bukan keharusan karena untuk penyeragaman bisa jadi akan menemui kesulitan tersendiri.

Edit: saya menemukan bahwa penamaan argumen/parameter fungsi dan metode yang dipakai library Python stadata mengikuti yang sudah ada di dokumentasi BPS. Jadi mungkin ini bisa dipakai.

Saya tidak tahu apakah cara penamaan ini tepat atau tidak, tapi mungkin bisa jadi pemantik awal untuk dapat kesepakatan cara penamaan yang lebih baik. Mohon komentar, masukkan, dan koreksi dari rekan-rekan sekalian.

Terima kasih.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.