mirror of
https://github.com/ditatompel/insights.git
synced 2025-01-08 03:12:06 +07:00
Merge pull request #51 from ditatompel/ditatompels/newarticle
Adding new article: Rewriting ditatompel.com Site to Svelte, Tailwind and Go
This commit is contained in:
commit
a587555750
7 changed files with 128 additions and 0 deletions
Binary file not shown.
After Width: | Height: | Size: 89 KiB |
|
@ -0,0 +1,64 @@
|
|||
---
|
||||
title: "Menulis ulang situs ditatompel.com ke Svelte, Tailwind, dan Go"
|
||||
description: "Rencana untuk menulis ulang situs pribadi saya dari bahasa pemrograman PHP ke Go. Ada beberapa 'breaking changes' yang akan terjadi selama dan setelah proses transisi."
|
||||
date: 2024-01-25T18:17:34+07:00
|
||||
lastmod:
|
||||
draft: false
|
||||
noindex: false
|
||||
featured: false
|
||||
pinned: false
|
||||
# comments: false
|
||||
series:
|
||||
# -
|
||||
categories:
|
||||
- Pengumuman
|
||||
tags:
|
||||
- Go
|
||||
- Svelte
|
||||
- Tailwind CSS
|
||||
images:
|
||||
# -
|
||||
# menu:
|
||||
# main:
|
||||
# weight: 100
|
||||
# params:
|
||||
# icon:
|
||||
# vendor: bs
|
||||
# name: book
|
||||
# color: '#e24d0e'
|
||||
authors:
|
||||
- ditatompel
|
||||
---
|
||||
|
||||
Saya berencana untuk "menulis ulang" situs pribadi saya dari bahasa pemrograman PHP ke Go. Ada beberapa "breaking changes" yang akan terjadi selama dan setelah proses transisi.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
Untuk memperluas pengetahuan dan pengalaman saya di bidang _web development_, saya berencana untuk menulis ulang secara keseluruhan situs pribadi saya: [ditatompel.com](https://www.ditatompel.com) yang semula menggunakan bahasa pemrograman [PHP](https://www.php.net/) (_backend_) ke bahasa pemrograman [Go](https://go.dev/). Untuk _frontend_, saya akan mencoba beralih dari [Bootstrap](https://getbootstrap.com/) `v4.6` ke [Svelte](https://svelte.dev/) dan [Tailwind CSS](https://tailwindcss.com/).
|
||||
|
||||
Boleh dibilang, keputusan ini saya ambil secara sembrono karena saya __baru mempelajari bahasa pemrograman Go__ selama kurang lebih 6 bulan dan saya __tidak pernah__ menggunakan _framework_ __Svelte__ sebelumnya. Jadi, ini akan menjadi website pertama saya yang menggunakan __Svelte__ sebagai _frontend_ dan __Go__ sebagai _backend_.
|
||||
|
||||
## Proses Transisi
|
||||
|
||||
Proyek ini akan saya kerjakan di waktu senggang saya, sehingga kemungkinan akan memakan waktu cukup lama. Selama proses transisi, saya akan mulai menghilangkan fitur _"offline caching"_ pada _service worker_ yang berjalan di _browser_ Anda. Hal ini penting dilakukan supaya ketika __UI__ baru yang nantinya diluncurkan tidak berbenturan dengan _"offline cache"_ dari **UI** yang lama.
|
||||
|
||||
> _Karena "offline cache" pada browser dihilangkan, maka Anda akan merasakan performa yang lebih lambat saat mengakses situs saya._
|
||||
|
||||
## _Breaking Changes_
|
||||
|
||||
Untuk menerima yang baru, kadang kita harus mengucapkan selamat tinggal pada beberapa fitur lama dan memperkenalkan beberapa perubahan penting. Meskipun ini mungkin berarti mengucapkan selamat tinggal pada masa lalu, itu juga berarti menyambut masa depan yang penuh dengan kemungkinan tak terbatas (_wedjian!_ 👏👏👏).
|
||||
|
||||
Beberapa perubahan yang nantinya akan terjadi adalah:
|
||||
- Sementara dihilangkannya koneksi _websocket_ pada halaman `/monero` sehingga tidak akan muncul notifikasi _popup_ secara _realtime_.
|
||||
- Informasi tanggal _"Google Trends ™"_ tidak tidak mengacu pada zona waktu browser Anda, melainkan akan mengacu pada zona waktu **UTC**.
|
||||
- Perubahan _public API endpoint_: yang semula berlokasi di `https://www.ditatompel.com/api` akan berubah menjadi `https://api.ditatompel.com`.
|
||||
- Perubahan struktur data _json response_ pada beberapa API _endpoint_ yang akan saya informasikan lebih detail di kesempatan lain.
|
||||
|
||||
## _What Could Possibly Go Wrong?_
|
||||
|
||||
Jika saya gagal mengimplementasikan fitur _service worker_ di versi website terbaru Saya, Anda akan tetap _"stuck"_ pada versi website yang lama. Satu-satunya cara untuk mengatasi masalah ini adalah dengan melakukan _unregister service worker_ yang lama dan melakukan _"Clear Website Data"_ secara manual pada browser Anda. Hal ini terjadi karena situs saya saat ini sangat bergantung pada _cache_, baik itu di sisi server maupun client (browser).
|
||||
|
||||
---
|
||||
|
||||
Saya akan menginformasikan update terbaru mengenai proses transisi di halaman ini. Dengan semua perubahan ini saya berharap adanya peningkatan performa yang signifikan baik dari sisi _frontend_ maupun _backend_.
|
|
@ -0,0 +1,64 @@
|
|||
---
|
||||
title: "Rewriting ditatompel.com Site to Svelte, Tailwind and Go"
|
||||
description: "I plan to rewrite my personal site from the PHP programming language to Go. There are several breaking changes that will occur during and after the transition process."
|
||||
date: 2024-01-25T16:28:11+07:00
|
||||
lastmod:
|
||||
draft: false
|
||||
noindex: false
|
||||
featured: false
|
||||
pinned: false
|
||||
# comments: false
|
||||
series:
|
||||
# -
|
||||
categories:
|
||||
- Announcement
|
||||
tags:
|
||||
- Go
|
||||
- Svelte
|
||||
- Tailwind CSS
|
||||
images:
|
||||
# -
|
||||
# menu:
|
||||
# main:
|
||||
# weight: 100
|
||||
# params:
|
||||
# icon:
|
||||
# vendor: bs
|
||||
# name: book
|
||||
# color: '#e24d0e'
|
||||
authors:
|
||||
- ditatompel
|
||||
---
|
||||
|
||||
I plan to “rewrite” my personal site from the PHP programming language to Go. There are several “breaking changes” that will occur during and after the transition process.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
To improve my knowledge and experience in the field of web development, I decided to rewrite my entire personal site: [ditatompel.com](https://www.ditatompel.com) which originally used the [PHP programming language](https://www.php.net/) (backend) to the [Go programming language](https://go.dev/). For the frontend, I'll try switching from [Bootstrap](https://getbootstrap.com/) `v4.6` to [Svelte](https://svelte.dev/) and [Tailwind CSS](https://tailwindcss.com/).
|
||||
|
||||
It could be said that I took this decision carelessly because I had __only been studying the Go programming language for approximately 6 months__ and I had __never used the Svelte framework before__. So, this will be my first website that uses __Svelte__ as the frontend and __Go__ as the backend.
|
||||
|
||||
## Transition Process
|
||||
|
||||
I will be working on this project in my free time, so it will likely take a while. During the transition process, I will begin to eliminate the _"offline caching"_ feature on the _service worker_ running in your browser. This is important to do so that when the new __UI__ is launched it does not conflict with the _"offline cache"_ of the old **UI**.
|
||||
|
||||
> _Because the "offline cache" in the browser is removed, you will experience slower performance when accessing my site._
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
To accept the new, sometimes we have to say goodbye to some old features and introduce some important changes. While this may mean saying goodbye to the past, it also means welcoming a future full of endless possibilities 👏👏👏.
|
||||
|
||||
Some of the changes that will occur are:
|
||||
- Temporarily removed the __websocket__ connection on the `/monero` page so that popup notifications will not appear in real time.
|
||||
- __"Google Trends ™"__ page information does not refer to your browser's _timezone_, but instead refers to the **UTC timezone**.
|
||||
- Changes to the public API endpoint: which was originally located at `https://www.ditatompel.com/api` will change to `https://api.ditatompel.com`.
|
||||
- Changes to the json response data structure on several API endpoints which I will provide more detailed information on another occasion.
|
||||
|
||||
## What Could Possibly Go Wrong?
|
||||
|
||||
If I fail to implement the _service worker_ feature in my latest website version, you will remain stuck with the old application version. The only way to solve this problem is to unregister the old service worker and manually "Clear Website Data" in your browser. This happens because my site currently relies heavily on cache, both on the server and client (browser) side.
|
||||
|
||||
---
|
||||
|
||||
I will provide the latest updates regarding the transition process on this page. With all these changes, I hope there will be a significant increase in performance both from the frontend and backend.
|
Binary file not shown.
After Width: | Height: | Size: 30 KiB |
Binary file not shown.
After Width: | Height: | Size: 76 KiB |
Binary file not shown.
After Width: | Height: | Size: 18 KiB |
Binary file not shown.
After Width: | Height: | Size: 38 KiB |
Loading…
Reference in a new issue