#NoteToSelf Yesteday i learn from #clojure#missionary slack that basically flow of flow is okay as it was like collection of collection.
https://t.co/1OVxmEpatG
Beberapa waktu yang lalu saya pernah menanyakan di sini keinginan untuk membuat versi tulisan video saya di youtube tentang beberapa rumus/fakta matematika yang sering dipakai.
Rencananya ada 52 topik yang berkorespondensi dengan 52 minggu dalam setahun.
Ini adalah beberapa topik di minggu-minggu awal
I managed to successfully call Starlette from Basilisp.
It's essentially Clojure running on the Python VM, which I find very powerful. You can enjoy the niceties of Lisp while staying productive with Python's vast ecosystem of libraries.
I think it's a beautiful and very promising combo!
๐ Excited to share my latest open-source project: A secure TOTP and Password Generator tool!
๐ Try it now: https://t.co/4HymfhT7Dz
This tool helps you generate and manage Time-based One-Time Passwords (TOTP) for two-factor authentication. Built with the assistance of @SourcegraphCody & Claude Sonnet 3.5 for both UI design and functionality.
๐ ๏ธ Tech Stack:
- Nitro Framework (@nitrojsdev) by @unjsio
- Deployed on @Cloudflare Pages & Workers
- Clean & intuitive interface, thanks to @tailwindcss
- Secure & privacy-focused
โจ Features:
Generate TOTP tokens
QR code generation
Multiple hash algorithms
Configurable parameters
๐ Source code available on GitHub: https://t.co/pGO9WzsrTJ
Feel free to try it out, contribute, or share feedback! #OpenSource #Security #2FA #WebDev #CloudflarePages
architecture diagrams before and after migrating the data ingestion pipeline of baselime from aws to cloudflare
I wrote a blog post about how why we migrated, how we did it, how we improved performace, and how much we saved
try to guess how much, you're not ready
@ovstoica Edit: I mean with core async, all async code have to be ensured to not thrown, e.g. we have to try catch manually. With missionary, we just let it throw and the exception will propagated properly.
@borkdude@daslu_ This is the repo we talked about: https://t.co/5eqoWcjhPE Scittle nrepl and vite are used for different purpose. Vite is used for developing html handlebar template, while scittle is used for developing cljs file.
@borkdude@daslu_ Yes, we already use it, it is superb๐. Whats beyond me is how this nrepl could be integrated with vite hmr, e.g. eval some cljs in emacs and then vite will reload only the necessary parts.
@daslu_@borkdude It is totally different i think. My scittle demo is using vite just for serving the dynamic html so it is always full page reload when we modify handlebars template.
Still beyond my imagination how this one could be made to work with scittle instead of squint.
Can someone explain to me what the in-browser WASM SQLite and DuckDB are trying to solve? The in-browser queries and reports look super snappy but isnโt this putting millions of rows stored on the clients machine to calculate some aggregates?
I feel like Iโm missing something.
Just recorded this short update on our open-source-mentoring program. We discuss a bit of what we can learn from it and of the implications for the broader #Clojure story.
https://t.co/bTHqgsQrd9
Signs you're not a strong programmer:
- You think static typing makes software more robust or reduces testing burden
- You treat dependencies like black boxes and struggle to dig into their code to analyze issues
- You think an RDBMS is the best way to manage data, period
- You blindly follow "best practices"
- Social proof is a major consideration for technical decisions
- You think "complex" and "complicated" are synonyms
- You can't distinguish good ideas from bad implementations
- Your first instinct when confronted with a novel programming idea is to dismiss it
Roam but built in Electric Clojure (bulletproof UI, optimistic updates, zero interaction latency, pending/retry affordance on all unsaved edits) and designed specifically for programmers
Saya tebak kalian pernah di situasi di mana kalian tahu betul project apa yang harus dikerjakan, tetapi malah tergoda ngerjain project baru.
Padahal kalau kalian bisa fokus ngerjain satu per satu, hasilnya mungkin lebih impactful.
Ini adalah penyakit orang kreatif, saya sebut dengan istilah kutukan rasa penasaran.
Meskipun sedari kecil kita sering mendengar bahwa anak dengan rasa penasaran tinggi akan tumbuh menjadi anak yang cerdas, tapi seringkali rasa penasaran pada orang dewasa malah menjadi musuh dalam selimut, yang menyabotase keberhasilan seseorang.
Rasa penasaran itu seperti caffeine, pada dosis tertentu berguna bagi kita untuk bisa bekerja secara optimal, tapi mengonsumi terlalu banyak, maka ucapkan selamat datang kecemasan berlebih, jantung berdebar dan bahkan depresi.
Lalu bagaimana? apakah kita harus membuang rasa penasaran kita? kita tidak perlu membuang rasa penasaran kita.
Karena harus diakui penasaran itu adalah bahan bakar orang kreatif, penemuan-penemuan canggih yang kita nikmati sekarang, saya yakin diawali oleh rasa penasaran seseorang.
Kita tidak perlu membuang rasa penasaran, tetapi kita harus bisa mengendalikannya bukan kita yang dikendalikan.
Ketika kita yang dikendalikan, maka rasa penasaran itu bukan lagi menjadi kekuatan tetapi menjadi kelemahan.
Ini adalah tentang bagaimana kita bisa mengendalikan rasa penasaran sehingga tidak menyabotase progres yang kita inginkan.
Intro
Terakhir kali saya mengalamai kutukan rasa penasaran adalah saat mendevelop MindfulDay (https://t.co/70RoKdh3ej)
Awalnya, saya kira mendevelop MindfulDay akan berjalan lancar, dan ternyata dugaan saya benar, semuanya berjalan lancar.
Dari sisi teknis.
Namanya develop aplikasi pasti ada kendala teknis satu dan lain hal, namun semua kendala yang saya temui masih dalam tahap wajar dan tidak sampai menggangu kelancaran development.
Justru kendala terbesar adalah pada diri saya, saya terkena kutukan rasa penasaran.
Konsekuensi
Saya membuat MindfulDay agar hari saya dan users MindfulDay tidak berjalan begitu saja, tanpa perencanaan yang baik, karena tanpa perencanaan harian kita akan mudah sekali terdistraksi.
Selain itu juga MindfulDay saya buat untuk assisting sesi fokus harian dengan teknik Pomodoro.
Karena kerja dengan fokus penuh itu tidak sama dengan kerja tapi meladeni distraksi.
Seperti kata Cal Newport di bukunya Deep Work: Rules for Focused Success in a Distracted World.
"To produce at your peak level you need to work for extended periods with full concentration on single task free from distraction."
Tujuan ini sebenernya sudah tercapai bahkan di MindfulDay versi MVP, ini terbukti dari survey yang saya ajukan ke 70an early users, rating rata-rata nya adalah 4.6 dan rata-rata NPS nya adalah 8.6.
Dengan data tadi seharusnya jelas, saya harus berfokus penuh pada MindfulDay, tapi yang terjadi saya justru terkena kutukan rasa penasaran.
Alih-alih fokus pada MindfulDay, saya malah sering terdistraksi untuk mendevelop app baru.
Ketika koding bukan lagi menjadi halangan, tidak jarang kita merasa ingin membuat semuanya, hanya karena kita bisa.
Saat saya harusnya fokus penuh pada MindfulDay, saya malah mendevelop beberapa app lain:
Zettly
App untuk note taking yang mencoba menyederhanakan proses capture, organize dan retrieval knowledge personal. (Saya pakai internal sampai sekarang)
CV Audit
Tool untuk menganalisa apakah CV seseorang cukup kuat untuk menembus kerja remote internasional menggunakan AI(tidak pernah saya rilis)
Slide Creator
Tool experiment untuk membuat slide hanya dengan prompt text. (experimental)
Video Creator
Karena saya malas merekam video wajah saya, saya buat video creator, tool untuk membuat semacam motion graphic dari teks, jadi saya cuma perlu menulis dan bisa menghasilkan video portrait untuk konten (experimental)
Video Effect
Tool untuk memudahkan saya melakukan editing video tanpa perlu keahlian teknis dan terlalu detail pada "cara". (Ini saya pakai internal sampai sekarang)
Nulis App
Tool untuk membantu saya melakukan penulisan artikel seperti artikel ini, mulai dari proses brainstorming, writing, dan editing.
Tw-icons
Tool untuk mengupgrade tampilan UI web app, hanya dengan mengubah tampilan ikon. (https://t.co/skB71fEYtZ)
Belum lagi saya juga menerima tanggungjawab terhadap beberapa project sebuah perusahaan.
Kutukan Rasa Penasaran membuat fokus saya terpecah, meskipun dari ke hari saya fokus dan produktif, kalau dilihat dari Weekly Activity di MindfulDay (https://t.co/jIek6dQKFw), dalam sepekan saya bisa mencapai 60 - 80 sesi, bahkan terkadang lebih.
Tapi, masalahnya adalah fokus yang saya miliki tidak terkonsentrasi, dan ini adalah penyebab utama kenapa MindfulDay Plus baru bisa dirilis pekan lalu.
Padahal seharusnya MindfulDay Plus bisa dirilis 6 atau 8 bulan lebih awal.
The Solution
Jika selama ini MindfulDay bisa membantu fokus harian.
Maka saya butuh satu fitur baru yang bisa membantu saya berfokus dalam jangka waktu yang lebih panjang. Dalam skala yang lebih besar.
Saya bisa aja menggunakan Trello atau Notion, tapi sepengalaman saya berkali-kali mencoba, tidak pernah berhasil.
Semangat membuat board di Trello atau Notion hanya membara di awal saja, endingnya saya kebingungan sendiri dengan apa yang pernah saya tulis.
Atau saya terdistraksi karena halamannya nya yang terlalu banyak informasi.
Bahkan untuk notion saya malah sibuk nyari template, dan mikirin gimana cara bikin struktur yang "bagus".
Trello atau Notion mungkin cocok untuk sebagian orang, tapi buat saya gak cocok.
Saya mencoba menganalisa, apa alasan Trello atau Notion gak cocok untuk orang yang gampang terdistraksi:
Terlalu banyak informasi di GUI mereka yang malah menjadi distraksi
Tidak jelas kapan saya harus mengeksekusi sebuah board
Terlalu banyak board malah memecah fokus dan bikin bingung mana yang harus didahulukan
Oleh karena itu saya merumuskan solusi yang akan saya buat untuk fitur baru di MindfulDay Plus, waktu itu saya beri nama "Focus Page"
Focus Page adalah satu halaman yang bisa dengan jelas memberi tahu saya, project mana yang sedang saya fokuskan sekarang.
Tampilan yang minimalis sehingga minim distraksi.
Terlihat jelas berapa lama durasi waktunya untuk setiap project. Namun juga harus cukup fleksibel karena eksekusi terkadang tidak semulus kulit bayi.
Focus Page juga harus memberikan peta perjalanan ke tujuan akhir, dalam artian ketika saya melihat focus page saya harus bisa melihat apa task-task yang harus saya selesaikan sehingga project terkait terwujud.
Harus terdapat papan skor, maksudnya statistik terkait progres dari project yang sedang di kerjakan, berapa hari lagi tersisa sampai fokus berakhir, sudah berapa task selesai, seberapa fokus saya dalam mengerjakan project saat ini.
Setelah 3 pekan mengerjakan fitur tersebut, akhirnya selesai, dan karena "Focus Page" terlalu tidak familiar di telinga, saya putuskan untuk mengubah namanya menjadi "Focus Sprint".
Terinspirasi dari istilah "Sprint" pada agile methodology, dan ini cukup tepat,
Karena filosofinya kita harus mengelola hidup kita secara profesional, layaknya project manager yang mengelola sebuah project penting, hidup kita adalah serangkaian project yang harus diselesaikan satu per satu.
Ini kenapa Focus Sprint beda dengan aplikasi task manager lainnya.ย Focus Sprint bisa menjawab pertanyaan-pertanyaan berikut:
1. Di mana posisi kita saat ini?
2. Kemana tujuan kita?
3. Kapan kita mau sampai di tujuan?
4. Bagaimana kita mau ke tujuan kita?
5. Kenapa kita mau ke tujuan kita?
The End
Saya mendevelop Fitur Focus Sprint dengan bantuan fitur tersebut, ketika belum selesai tapi sudah terlihat bentuknya dan bisa saya pakai secara internal, saya pakai untuk mengontrol penyelesaian fitur focus sprint.
Dan selama 3 pekan, akhirnya selesai, lalu sekaligus project berikutnya yaitu Launching fitur MindfulDayPlus, dan berhasil terselesaikan juga.
Setidaknya, untuk saya fitur Focus Sprint terbukti berhasil membantu saya mengkonsentrasikan fokus saya pada hal terpenting yang perlu saya lakukan.
Satu per satu.
Keingininan saya untuk ngulik hal lain jauh berkurang, karena saya tahu betul project apa yang harus saya fokuskan saat ini juga dan sampai kapan saya perlu fokus sebelum bisa pindah ke project selanjutnya.
Saya berharap bagi yang sudah berlangganan Plus dan menggunakan fitur Focus Sprint mendapatkan manfaat seperti yang saya rasakan juga, bahkan lebih.
Kesimpulan
Kalau kamu punya masalah Kutukan Rasa Penasaran atau Shiny Object Syndrome, sering memulai project baru tapi tidak pernah menyelesaikannya dengan baik, maka fitur Focus Sprint worth to try.
Demo bisa kalian lihat di video di halaman ini https://t.co/MXzbqz2E0U
Kamu menyimak sampai bagian ini, artinya kamu betul-betul serius untuk mengelola hidupmu.
Pesan terakhir saya, Focus Sprint bukanlah sekadar fitur, Focus Sprint adalah sebuah sistem untuk mengelola hidupmu layaknya seorang profesional.