1 komentar

 
GN⁺ 2024-03-02
Komentar Hacker News
  • Sudah banyak alat yang mengklaim bisa memilihkan “hal-hal yang layak mendapat perhatian saya”, tetapi belum pernah ada yang benar-benar cocok untuk saya atau tim saya. Jadi saya penasaran apa yang membuat Struct berbeda
    Pertanyaan yang saya catat saat menonton video landing page Struct: channel tampak seperti titik awal thread/feed, jadi saya penasaran apakah itu sekadar konsep untuk mengelompokkan pengguna, dan apakah chat juga bisa dilakukan di dalam channel. Jika strukturnya membuat pengguna hanya melihat thread yang muncul di feed real-time, saya juga penasaran bagaimana mereka menangani masalah thread yang aktivitasnya tinggi tetapi sinyalnya rendah sehingga memakan ruang dan menyingkirkan thread penting yang aktivitasnya lebih sedikit. Tag penting untuk filtering, tetapi seperti tag JIRA, mudah menjadi berantakan karena kumpulan teks yang mirip tetapi berbeda; saya juga ingin tahu apakah ada cara untuk mengelolanya. Saya juga penasaran bagaimana menangani thread yang dibuat secara terpisah oleh pengguna berbeda untuk topik yang sama, dan percakapan privat 1:1 juga hanya muncul singkat di video jadi saya ingin tahu lebih banyak. Alatnya sendiri jelas terlihat punya potensi

    • Di Struct, channel hanyalah kelompok orang, dan izin akses ke thread ditentukan dengan menyebut channel seperti saat menyapa pengguna
      Strukturnya bukan masuk ke channel lalu mengobrol di sana. Di feed, tinggi tiap thread tetap, jadi thread yang sangat aktif tidak akan memakan ruang tanpa batas, dan ada rencana menambahkan fitur untuk mengarsipkan atau membisukan thread selama jangka waktu tertentu. Tag dibatasi jumlahnya per thread dan dipakai untuk menambah konteks serta membuat feed kustom; tag juga digunakan untuk melacak prioritas tugas sehingga dipakai seperti sistem manajemen kerja ringan. Tag yang mirip akan bisa digabung, dan kontrol seperti hanya mengizinkan moderator membuat tag baru juga dimungkinkan. Thread yang mirip bisa digabung, dan sedang disiapkan juga fitur untuk memilih sebagian chat dalam sebuah thread lalu mem-fork-nya menjadi thread baru, sambil tetap mempertahankan tautan antar-thread. Untuk percakapan privat, cukup sebut pengguna yang diinginkan; jika menyebut @struct maka akan menjadi DM dengan bot, dan jika menyebut diri sendiri maka akan dibuat “DM ke diri sendiri” untuk TODO atau catatan. Di pasar yang penuh platform chat, Struct bisa terasa seperti “satu lagi aplikasi chat”, tetapi karena platform lain tidak melakukan hal-hal yang menurut saya seharusnya sudah jelas dilakukan bahkan setelah menunggu bertahun-tahun, akhirnya saya membuatnya sendiri
    • Masalahnya adalah semua orang ingin panggilan untuk dirinya tidak difilter, sambil berharap panggilan orang lain yang difilter
      Jika seseorang menginginkan perhatian saya, mereka akan terus mencari cara untuk merebut perhatian itu, misalnya dengan membuat thread baru
  • Ini salah satu pesaing Slack pertama yang benar-benar menarik perhatian saya, dan arahnya tampak tepat. Kesan saya setelah menonton videonya secara umum positif, tetapi entah kenapa alat ini terlihat seperti alat yang kurang personal
    Ruang Slack terasa seperti “ruangan” digital, sedangkan Struct memberi kesan seperti papan pengumuman kantor. Kesan pertama saya, jika saya masuk sebagai pegawai baru di perusahaan yang sepenuhnya memakai Struct, mungkin akan lebih sulit membangun koneksi pribadi dengan rekan kerja. Saya tidak tahu persis alasannya, tetapi itulah yang saya rasakan saat melihat demo. Mengingat kekacauan komunikasi yang dulu saya alami saat menjadi engineering leader di Silicon Valley, saya merasa akan sangat berguna jika alat seperti ini ada di perusahaan terakhir saya

    • Sebagai founder, saya dan Jason banyak memikirkan bagian ini. Sulit menyeimbangkan apakah panel kiri harus dipenuhi nama semua orang hingga terasa ramai, atau justru memberi nuansa sedang berada di ruangan yang sama
      Platform berbasis feed cenderung sangat asinkron dan mudah terasa hampir seperti forum. Karena itu, desain feed real-time Struct dibuat untuk menekankan rasa bahwa “orang-orang ini sedang ada di ruangan ini sekarang dan sedang langsung berbicara”. Saat thread baru muncul atau chat baru tampil di feed, rasanya cukup seru dan menarik. Menampilkan daftar orang yang sedang online bisa memunculkan dorongan untuk memulai percakapan, dan bahkan sekadar memperlihatkan orang lain sedang berpartisipasi juga bisa membantu. Jelas masih ada ruang untuk mengoptimalkan agar percakapan lebih mudah dimulai
    • Sepertinya ini bisa dipakai untuk membuat thread-thread berguna yang selalu siap untuk onboarding pegawai baru
      Meski begitu, membuat pegawai baru merasa disambut dengan hangat tetap penting bagi semua organisasi, terlebih lagi untuk organisasi dengan porsi kerja jarak jauh yang besar. Bisa dibuat ruang seperti @random, @club-channels, @annoucements untuk berbagi tautan menarik atau materi pengumuman dan menjadi tempat saling mengenal rekan kerja. Di internal @struct, suasananya cukup berfokus pada pekerjaan dan suka membuat sesuatu, tetapi kami juga harus membawa unsur kesenangan
  • Sangat bagus. Saya suka ide mempertahankan channel sambil menggunakan thread yang terfokus, dan desainnya juga bagus
    Namun saya penasaran dengan rencana jangka panjangnya. Sebelum memasukkan banyak data ke layanan seperti ini, saya ingin tahu bahwa ini bukan model dibesarkan dengan dana modal ventura lalu dijual dan ditinggalkan

    • Struct memang ingin terus dijalankan. Timnya kecil, tiga orang: backend, desainer, dan frontend, jadi ini juga bukan produk yang sangat padat modal
      Roadmap yang kami nantikan mencakup panggilan suara/video dan webinar, kontrol spam untuk komunitas, peningkatan bot AI dan fitur recall sekaligus penurunan biaya, serta jawaban AI yang mengindeks dokumen yang dibagikan di Struct sambil tetap menjaga kontrol akses. Hal yang membuat Struct menarik adalah karena ia menggantikan team chat dan community chat, sistem manajemen kerja, ChatGPT, daftar TODO pribadi, dan knowledge base publik yang bisa diindeks, semuanya sekaligus. Sangat mengejutkan melihat apa yang mungkin ketika Anda bisa percaya bahwa sistem tidak akan melupakan sesuatu
  • Terlihat menjanjikan. Namun saya harap tampilan harga bisa diperbaiki lagi
    Terlalu rumit untuk dihitung sendiri, dan saya khawatir diskusi tiba-tiba meledak lalu biayanya ikut meledak. Akan lebih baik jika ada contoh dan ditampilkan dalam bentuk tabel. Jangan buat pengguna harus berpikir terlalu keras. Saya juga heran kenapa nama Struct punya batas minimum 6 huruf. Rasanya mulai 4 huruf saja sudah cukup, dan saya rasa sudah tidak ada lagi standar internasional yang lebih dari 3 huruf. Selain itu, ikon aplikasi macOS-nya juga akan lebih baik jika dibuat monokrom seperti aplikasi lain

    • Kami punya data dari organisasi yang benar-benar sudah memakainya. Singkatnya, Struct jauh lebih murah daripada Slack
      Biaya dasar bulanan adalah US$9,97, dan penagihan tidak berdasarkan jumlah pengguna, jumlah thread, atau jumlah chat, melainkan hanya berdasarkan pemakaian AI. Harga dasar itu sudah termasuk 200 ribu token, dan itu cukup untuk organisasi kecil yang hanya memakainya untuk membuat judul dan ringkasan thread. Di antara pengguna nyata, pemakaian rata-rata Typesense ada di kisaran itu, sedangkan Apache Druid memakai sekitar 400 ribu token per bulan. 1.000 token seharga 3 sen, jadi 200 ribu token hanya menambah sekitar US$6 di atas biaya dasar. Keduanya memakai Struct sebagai knowledge base. Saat kami mulai menerapkan penagihan secara penuh, kami akan memungkinkan pengguna menetapkan batas pengeluaran bulanan agar tidak ada tagihan tak terduga, dan biaya setelah tarif dasar juga bisa dijaga serendah yang diinginkan
  • Selamat atas produknya. Saya sudah cukup tua untuk mengingat masa-masa forum dulu, dan sejujurnya ini terlihat seperti menemukan kembali forum.
    Maksud saya struktur thread yang naik ke atas saat ada pembaruan. Perbedaan besarnya hanya UI-nya terasa lebih seperti chat/Facebook, dan kalau forum biasanya disusun statis oleh admin, di Struct saya tidak begitu melihat penataan thread seperti folder yang dibutuhkan organisasi besar dengan banyak topik berjalan bersamaan. Sementara itu, email sampai batas tertentu bisa dikelompokkan sebagai “percakapan” dan juga disusun dengan folder pribadi. Fakta bahwa ada embel-embel “AI” juga terasa melelahkan belakangan ini. Ringkasan dinamis untuk thread memang punya nilai, tetapi kalau thread-nya sesederhana chat, ringkasan terasa tidak perlu, dan kalau sepanjang email/forum, saya tidak yakin seberapa baik itu benar-benar bekerja. Jadi saya tidak tahu apakah ini aplikasi pemasaran bergaya chat yang ditempeli jargon AI, atau saya melewatkan sesuatu yang secara mendasar berbeda dari thread forum atau percakapan email

    • Struct mengambil cukup banyak inspirasi dari Discourse, dan merupakan campuran unik antara forum dan aplikasi chat.
      Semua forum, termasuk email, memiliki thread dan feed, tetapi forum bersifat asinkron dan tidak dirancang berpusat pada chat real-time. Tantangan saat menerapkan konsep thread dan feed ke platform chat adalah semuanya harus dibuat real-time, dan itulah tepatnya yang coba dipecahkan Struct. Saya agak kurang setuju dengan pernyataan “kalau chat tidak perlu ringkasan”. Saya sudah cukup sering ikut percakapan yang terus berjalan tanpa henti, dan bahkan di tim kecil ada thread dengan ratusan pesan. Ringkasan benar-benar sangat membantu, dan setidaknya hanya dengan judul saja feed jadi jauh lebih mudah dipahami. Thread bisa distrukturkan dengan tag dan feed dapat dibuat berpusat pada tag tersebut, dan itulah padanannya dengan folder. Ini mengingatkan saya pada saat Gmail muncul dan orang-orang harus memahami label sebagai padanan folder SMTP. Perbedaan antara thread Struct dan thread Discourse adalah Struct menekankan komunikasi bolak-balik yang pendek dan real-time, sedangkan Discourse menekankan posting tunggal yang panjang dan dipikirkan matang-matang. Yang pertama adalah chat, yang kedua adalah forum. Alasan desain Struct sulit juga karena keseimbangan antara struktur, pengetahuan, dan real-time
    • Fitur ringkasan AI yang sempat ada di Discord itu cukup lucu.
      Selalu benar-benar meleset dari inti pembahasan dan menghasilkan ringkasan konyol, jadi ada bahan tertawa berjam-jam
  • Kalimat “Buat feed dari thread CEO agar tetap selaras dengan visi dan target terbaru perusahaan. Ikut masuk ke percakapan dengan jawaban yang tepat dan dapatkan promosi yang layak” membuat saya tersenyum pahit.
    Pada akhirnya ini mengingatkan lagi bahwa yang penting bukan apa yang kamu kerjakan, melainkan siapa yang melihatnya

    • Sebagai engineer yang belajar manajemen sambil membangun startup, saya akan bilang: kerjakan pekerjaanmu, tapi pastikan pekerjaan itu juga terlihat.
      Di pekerjaan pertama saya di Google, saya terus saja membangun sesuatu, dan kesulitan menyampaikan kenapa apa yang saya buat itu penting. Manajer pertama saya mempromosikan seluruh tim kecuali saya, dan itu masih terasa menyakitkan. Setelah saya pindah tim dan manajer, saya diberi tahu bahwa saya dinilai 2 level lebih rendah dari level yang seharusnya. Kesimpulannya: masuklah ke percakapan seperti itu. Tidak perlu bersikap berlebihan, tetapi kehadiranmu perlu diketahui
    • Bukankah mengikuti perkembangan apa yang dikerjakan bawahan juga merupakan tugas manajer?
      Mendorong karyawan menghabiskan waktu untuk memasarkan diri ke atasan juga tidak menguntungkan perusahaan. Saya sering melihat ini, tetapi tampaknya itu tanda bahwa kebanyakan manajer memang tidak melakukan bagian pekerjaan ini dengan baik
  • runForThread.executeReq.Get.messages: executeReq.client.Do: Get "[https://api.openai.com/v1/threads/thread_*******/messages?li...](<https://api.openai.com/v1/threads/…;)": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
    Semoga suatu saat produk-produk baru bisa hadir tanpa ketergantungan pada OpenAI

    • Sepertinya saya perlu merapikan pesan error itu. Bukan mau menyembunyikan OpenAI, hanya perlu dibuat lebih enak dilihat.
      Saya suka OpenAI. GPT-4 bekerja sangat baik. Saya juga sudah mencoba model lain yang lebih murah, tetapi kualitasnya tidak sebagus itu
    • Kadang saya berpikir untuk memblokir domain .ai di router sampai tren ini kembali normal.
      Ngomong-ngomong serius, produk ini terlihat sangat menarik sampai saya melihat frasa “…dan AI”. Mungkin saya memang bukan pelanggan targetnya
  • Ringkasan adalah salah satu tugas yang sangat dikuasai AI, jadi menurut saya produk ini bagus.
    Saya penasaran teknologi apa yang dipakai. Apakah ada dgraph atau badger di dalamnya, hosting-nya di tiga besar atau tempat lain, apakah pakai Kubernetes, apakah pakai Elastic Search. Dan saya juga penasaran apakah Struct itu alat untuk menarik Slack/Discord secara online, atau sekarang/ke depan ingin menjadi aplikasi chat mandiri

    • Tech stack-nya adalah Go, Postgres, OpenAI, React/Next.JS, Loops.so, Imgproxy, embedding Microsoft E5, pencarian Typesense, Figma, Framer, dan server Hetzner.
      Biaya terbesar berasal dari OpenAI, dan untuk embedding kami memakai Microsoft E5, bukan OpenAI. Typesense dipakai untuk pencarian dan juga merupakan pengguna Struct. Menggunakan Badger sebagai pengganti Postgres tidak cocok, tetapi kami mempertimbangkan Badger untuk kegunaan lain. Secara internal kami banyak memakai ristretto dan roaring bitmaps. Struct punya integrasi Slack yang cukup baik sehingga bisa dipakai seperti antarmuka Slack. Rekan kerja saya memakai Slack, dan saya membalas dari Struct, rasanya seperti Superhuman untuk Gmail. Integrasi Discord juga bagus, dan keduanya dipakai perusahaan open-source untuk membuat basis pengetahuan publik dari percakapan Slack/Discord. [1]: https://github.com/struct-chat/embedding
  • Saya kadang berpikir jangan-jangan kita mencoba mengoptimalkan produktivitas dengan cara yang keliru. Dibandingkan alat untuk mengelola kebisingan dalam komunikasi, bisa jadi manfaat yang lebih besar datang dari mengurangi komunikasi sejak awal sambil tetap menyelesaikan pekerjaan yang perlu dilakukan dengan baik
    Misalnya, walaupun ada puluhan rapat, saya tidak ingin mengoptimalkan cara melacak notulen rapat. Saya ingin rapat yang lebih sedikit tetapi lebih efektif

    • Sangat setuju. Industri terjebak dalam paradigma “tombol ajaib”, dan AI baru melakukan hal keren kalau tombol itu ditekan
      Kalau AI bisa membuat ringkasan otomatis dari transkrip rapat, tidak ada alasan kenapa AI tidak bisa menindaklanjuti sampai ke langkah berikutnya atau item aksi. Jika langkah berikutnya adalah Janine menjadwalkan rapat dengan Carlos, bukankah AI bisa membantu menghubungi Carlos dan mengatur jadwalnya? Saat ini cara berpikir kita masih terlalu sempit
    • Mengurangi jumlah rapat memang masuk akal. Saya juga melihat platform chat atau alat seperti Loom pada akhirnya bertujuan untuk mengurangi jumlah rapat yang diperlukan
      Namun, hukum Metcalfe juga tidak bisa dihindari. Sebagian besar pekerjaan modern terjadi dalam tim, dan jika ukuran tim adalah N, maka ada biaya komunikasi O(N^2) yang harus ditanggung. Rasanya total komunikasi tidak akan berkurang; yang dibutuhkan adalah alat yang tepat untuk menanganinya dengan lebih efektif
  • Bagus sekali. Discord adalah yang terburuk untuk mencari informasi dan mengikuti thread
    Rasanya seperti terus menjawab pertanyaan yang sama berulang-ulang

    • Discord pada akhirnya juga akan menambahkan pencarian berbasis model bahasa besar seperti yang diumumkan Slack AI, dan kalau itu terjadi masalah tersebut akan hilang
    • Produk ini tampaknya lebih menyasar Slack atau Teams daripada Discord