4 điểm bởi GN⁺ 2023-12-15 | 1 bình luận | Chia sẻ qua WhatsApp

Giành lại web bằng trình đọc cá nhân

  • Sau khi trải qua kiệt sức trong sự nghiệp, tác giả cảm thấy vỡ mộng với ngành công nghiệp phần mềm.
  • Tác giả ngừng làm việc, cải thiện thói quen sinh hoạt và cắt đứt với mạng xã hội.
  • Vượt qua áp lực về năng suất là một thử thách.

Gặp gỡ Mastodon

  • Thông qua Mastodon, tác giả lấy lại quyền kiểm soát feed và tìm thấy những người cũng cảm thấy không thoải mái với ngành công nghiệp phần mềm và web.
  • Tác giả cảm thấy Mastodon không phù hợp để làm một trung tâm thông tin.

Phong trào IndieWeb và social reader

  • Tác giả biết đến phong trào IndieWeb và khái niệm social reader.
  • Điều cần thiết không phải là microblogging, mà là một feed reader có thể tùy chỉnh theo sở thích.

Đặt mục tiêu

  • Với tư cách người dùng, tác giả muốn một trải nghiệm giống feed trang chủ mạng xã hội hơn là hộp thư email.
  • Không quan tâm đến việc triển khai các tính năng xã hội.
  • Với tư cách lập trình viên, tác giả đặt trải nghiệm người dùng lên hàng đầu và coi trọng sự dễ dàng trong vận hành hơn là sự tiện lợi khi phát triển.

Thiết kế

  • Thiết kế UI để có thể truy cập như một ứng dụng web.
  • Sử dụng thư viện server-side rendering để xây dựng web UI đơn giản nhưng năng động.
  • Chọn kiến trúc ứng dụng web nguyên khối và dùng SQLite làm cơ sở dữ liệu.

Ngôn ngữ phát triển và kiểm thử

  • Dù đã cân nhắc Go, tác giả chọn Python để phát triển nguyên mẫu nhanh chóng.
  • Ở giai đoạn đầu, tác giả không viết test.

Quá trình phát triển

  • Tác giả phát triển ứng dụng trong khi tự mình trải nghiệm nó với tư cách người dùng.
  • Sau khi có các chức năng cơ bản, tác giả cải thiện cách sắp xếp feed.
  • Tác giả liên tục sử dụng và cải thiện ứng dụng thông qua một máy chủ Raspberry Pi.

Kết luận

  • Tác giả đã phát triển trình đọc feed cá nhân feedi và thành công kết nối lại với việc phát triển phần mềm.
  • Tác giả dùng feedi như trang đầu tiên của Internet để giành lại quyền kiểm soát việc tiêu thụ thông tin.

Ý kiến của GN⁺

  • Cốt lõi của bài viết này là quá trình bắt đầu từ nhu cầu và sự bất mãn cá nhân để tạo ra giải pháp của riêng mình.
  • Bài viết nổi bật nhờ việc tái khám phá đam mê với phát triển phần mềm và triết lý phát triển đặt trải nghiệm người dùng lên hàng đầu.
  • Bài viết thú vị và hấp dẫn vì truyền tải được giá trị và niềm vui của việc tự tạo ra công cụ cho riêng mình tới các lập trình viên.

1 bình luận

 
GN⁺ 2023-12-15
Ý kiến trên Hacker News
  • Sự hài lòng với việc cấu hình URLwatch

    • Việc thiết lập URLwatch rất thú vị.
    • Khi vượt qua Puppeteer và khởi động một phiên bản Chrome để có thể scrape các website có JavaScript, có cảm giác như đang điều khiển web theo kiểu push.
    • Sức mạnh của việc theo dõi website để có thể kiểm tra nhanh vào buổi sáng:
      • Tin tuyển dụng mới của các công ty yêu thích
      • Tin tuyển dụng/đóng tuyển của công ty hiện tại
      • Sản phẩm đang giảm giá hoặc chờ nhập lại hàng, hàng refurbished
      • Thống kê nước thải liên quan đến coronavirus
      • Danh sách căn hộ
      • Các bản phát hành GitHub đang quan tâm
      • Tài liệu pháp lý của các website quan trọng
    • Cá nhân thấy việc thuê một droplet của Digital Ocean với giá $5 rất hữu ích để host RSS reader, bot Telegram cá nhân, v.v., và dựng các website HTTP nhỏ để thử nghiệm.
    • Cũng có thể làm trên laptop, nhưng không nhất thiết phải chạy vào cùng một giờ mỗi ngày.
  • Hình dung về “người phụ trách CNTT của riêng bạn”

    • Có một sự lãng mạn nhất định với khái niệm “người phụ trách CNTT của riêng bạn”.
    • Giống như thợ cắt tóc địa phương, bác sĩ đa khoa, thợ may hay thợ làm bánh, họ phụ trách một phần đời sống số, cung cấp feed được cá nhân hóa và quản lý các vấn đề riêng tư/sức khỏe.
    • Sử dụng một giao diện đơn giản hoặc “giao thức mở” để kết nối phim, bài viết, meme, video vui nhộn, v.v. với feed reader của người dùng.
    • Ý tưởng về việc cung cấp dịch vụ nội dung đơn giản thông qua trung tâm dữ liệu địa phương do cộng đồng vận hành hoặc qua kết nối internet tại nhà.
    • Một người quản tuyển số cá nhân (có thể được AI hỗ trợ) là một phần của thế giới solarpunk ảo lành mạnh, bền vững và coi trọng quyền riêng tư.
    • Đây không phải lần đầu nghe câu chuyện rằng sau khi chuyển sang feedverse thì sức khỏe đã tốt hơn.
    • Đang dùng script và mini app dựa trên Puppeteer để cung cấp tóm tắt và gợi ý; chưa hoàn hảo nhưng định đầu tư thêm công sức vào lĩnh vực này và tìm các dự án mã nguồn mở liên quan.
    • Dự định thử đưa ý tưởng này cho bạn bè và gia đình rồi xem phản ứng của họ, đồng thời đặt tên cho các script này là “không phải trình duyệt”.
  • Mong muốn mở rộng feed cá nhân

    • Muốn mở rộng feed cá nhân thành một feed đơn giản, có giới hạn thời gian và không gây xao nhãng.
    • Tạo một feed bao gồm toàn bộ nội dung dạng bài viết đang theo dõi và chọn ra khoảng 30 phút đọc mỗi ngày.
    • Dùng ChatGPT để lọc ra nội dung “giàu giá trị” nhất hoặc dùng công cụ khác, nhưng ưu tiên nội dung thực sự đáng đọc.
    • Gửi nội dung này tới Kindle hoặc máy tính bảng reMarkable để tránh màu sắc, nhấp nháy và internet tốc độ cao.
    • Bước thứ hai có thể là đăng ký feed của bạn bè và thỉnh thoảng nhận nội dung “khách mời” từ feed của họ.
  • Đồng cảm với quyết định bỏ qua kiểm thử tự động

    • Ban đầu thấy đồng cảm với quyết định không bận tâm đến kiểm thử tự động.
    • Khi xây dựng các dự án đồ chơi cá nhân, thay vì lãng phí thời gian cấu hình hạ tầng kiểm thử và pipeline CI, tập trung vào việc tạo đà ổn định.
    • Khi kiểm thử thực sự bắt đầu trở thành vấn đề thì có thể thêm vào lúc đó.
  • Trải nghiệm tích cực khi xây dựng phần mềm cá nhân hữu ích

    • Việc xây dựng phần mềm cá nhân hữu ích đã giúp tìm lại niềm vui trong công việc.
    • Cũng có lợi thế là được tự do dùng những công nghệ “phi truyền thống”.
    • Trong các kho mã phục vụ nhu cầu cá nhân, có thể khám phá công nghệ mới và các tối ưu hóa rồi áp dụng chúng vào công việc chính.
  • Khuyến nghị về “How to do nothing”

    • Giới thiệu cuốn sách "How to do nothing" của Jenny Odell.
    • Hữu ích cho những ai bắt đầu cảm nhận áp lực “năng suất” giả tạo do nền kinh tế chú ý áp đặt.
  • Ủng hộ tinh thần “feed”

    • Thích tinh thần “feed” hơn là một checklist những thứ cần đọc.
    • Đã thử nhiều RSS reader nhưng không cần thêm một inbox nữa để quản lý.
    • Sẽ thử xem Feedi.
  • Chia sẻ suy nghĩ cá nhân về tương lai

    • Bài viết này cho cảm giác như thể bản thân trong tương lai đã viết nó.
    • Ngạc nhiên vì có quá nhiều điểm chung với tác giả.
    • Những gì tác giả đã làm gần như trùng khớp chính xác với điều mình muốn làm trong thời gian nghỉ.
    • Có sự tương đồng trong mong muốn tham gia vào Open/IndieWeb và các cân nhắc kỹ thuật liên quan.
    • Vừa vui vì có người xác nhận suy nghĩ và cảm xúc của mình, vừa có chút ghen tị vì tác giả đã đi trước trên con đường đó.
  • Suy nghĩ về các tính năng cần có khi ở trên thuyền buồm du ngoạn

    • Một tính năng “đồng bộ ngay bây giờ” khi đi dọc bờ biển và bắt được lúc có LTE.
    • Về cơ bản, toàn bộ nội dung (bao gồm cả hình ảnh) được Readability xử lý và cache cục bộ để có thể đọc offline.
  • Băn khoăn về khả năng truy cập và bảo mật của ứng dụng

    • Tác giả đã thêm xác thực vào ứng dụng để có thể truy cập từ mọi nơi.
    • Đặt câu hỏi liệu có thể dùng VPN để truy cập an toàn vào web app cá nhân hay không.
    • Nhận thức rằng việc hiểu và duy trì cơ chế xác thực là phức tạp.