18 điểm bởi bingo992000 2021-09-11 | 8 bình luận | Chia sẻ qua WhatsApp

Đây là một trang web tổng hợp những cuốn sách có điểm đánh giá cao nhất trên goodreads.com (+ bao gồm cả những cuốn chắc chắn bạn mới nghe lần đầu).

Hiện tôi đang điều hành một startup nhỏ, và vì quá thích đọc sách nên tiêu chí chọn sách của tôi cũng trở nên khá khắt khe. Cách tôi thích nhất là xem điểm Goodreads trước, và ở đây những cuốn chỉ nhận mức 3.x sao thường có nội dung khá hời hợt. Vì vậy đây là một trang rất hữu ích với tôi. Tuy nhiên, trong quá trình sử dụng trang này vẫn có những bất tiện chưa được giải quyết, nên tôi quyết định tự mình xử lý. Những vấn đề tôi cảm thấy như sau:

Problem

  1. Goodreads có hàng chục triệu lượt đánh giá sách (có lẽ vậy), nhưng UI/UX được thiết kế theo cách khiến việc tìm sách hay một cách dễ dàng trở nên khó khăn

  2. Gần đây Public API cũng đã bị đóng, nên việc tìm sách có điểm đánh giá cao càng trở nên khó hơn

    Quảng cáo
  3. Dù tìm kiếm các website giải quyết vấn đề này thì cũng không dễ thấy kết quả phù hợp

Tech Stack

  1. Crawling: Python

  2. Hosting: Netlify

  3. Web: ReactJS/Javascript

    Quảng cáo
  4. Trình biên tập: vim


Hiện tại, tôi đang triển khai mà không có backend/DB, thay vào đó đưa trực tiếp json vào frontend bundle để phát hành, vì thế tôi vẫn đang tự cập nhật dữ liệu theo định kỳ.

Hiện số lượng khách truy cập hằng ngày khoảng 20 người, và có lẽ phải vượt quá 1.000 người thì mới đáng để tự động hóa :)

May mắn thay (?), những cuốn sách hay thường có số lượng đánh giá rất lớn nên điểm trung bình không thay đổi nhiều lắm~

8 bình luận

 
spilist2 2021-09-13

Tôi rất đồng cảm với ý rằng tuy thích đọc sách nhưng lại không có nhiều thời gian nên muốn chọn những cuốn sách hay. Chúc mừng ra mắt.

(Tôi đã thử nhập địa chỉ email để đăng ký theo dõi, nhưng ô nhập lại tự xóa mất giá trị mà không có popup hay bất kỳ thông báo nào nên tôi hơi bối rối. Tôi báo lại phòng trường hợp đó là lỗi. Tôi dùng Chrome trên iOS 14.7.1.)

 
bingo992000 2021-09-14

Đã chỉnh sửa đơn giản để hiện cảnh báo khi nhập email :)

 
bingo992000 2021-09-13

Hôm qua nhận được phản hồi của xguru nên tôi phải vội sửa gấp, vì vậy vẫn chưa kịp làm phần cung cấp reaction sau khi nhập email hu hu. Hôm nay tan làm tôi sẽ thử làm nhé! Cảm ơn bạn đã góp ý, mong rằng bạn sẽ tìm được thật nhiều cuốn sách hay trên website~! :)

 
xguru 2021-09-13

Wow, dù vậy việc thay đổi ngay lập tức vẫn rất tuyệt. (Mình cũng thích thiết kế ô nhập email gọn gàng! Năng lực đáng ghen tị thật.. )

 
nicewook 2021-09-12

Theo ý kiến của xguru, có lẽ đây sẽ trở thành một trang hấp dẫn hơn.

Ý bạn nói editor vim là gì vậy? Là editor bạn dùng khi phát triển à?

 
bingo992000 2021-09-12

À đúng rồi, là editor đó haha. So với framework hay ngôn ngữ thì editor đúng là thông tin kém quan trọng hơn, nhưng đôi khi cũng có những trường hợp theo ngôn ngữ đang dùng mà gần như không thể dùng vim được. Có vẻ là một khi đã quen với vim rồi thì cũng phát sinh tác dụng phụ là không còn muốn phát triển bằng những ngôn ngữ khó viết trong vim nữa haha.

Ví dụ khi làm ứng dụng iOS bằng Swift thì dùng vim khá bất tiện, nên mình cũng ít dùng Swift. Mình ghi lại vì nghĩ đây có thể là thông tin thú vị với một số Geek :)


Theo ý kiến của xguru, mình đã nhanh chóng xóa toàn bộ nội dung mang tính cá nhân khỏi NavBar và thêm địa chỉ email, khi có thời gian thì mình cũng định thử thêm nút dẫn sang link amazon nữa! :)

 
xguru 2021-09-12

Chúc mừng ra mắt! Trang web trông gọn gàng đấy.

Hiện tại nhấp vào là đi thẳng tới GoodReads, nhưng có lẽ sẽ hay hơn nếu khi hover vào sách cũng đặt kèm liên kết mua trên Amazon để tạo doanh thu Affiliate!

Dù đây là trang dành cho người dùng tiếng Anh, nhưng nếu lấy các sách được GoodRead gợi ý rồi lập thêm DB cho những cuốn đã có bản tiếng Hàn để cung cấp cùng nhau thì cũng sẽ hữu ích với người dùng Hàn Quốc, và nếu liên kết sang Yes24 thì có vẻ cũng có thể làm affiliate marketing thông qua LinkPrice.

Ở phía trên, các liên kết tới Personal Blog và Facebook của nhà phát triển hiển thị quá nổi bật, nên trang này có cảm giác giống như một website cá nhân. Có lẽ sẽ tạo được sự tin cậy hơn nếu trông như một dịch vụ do công ty vận hành. Ngoài ra, Any Word? cũng dẫn thẳng tới email mailto: nên những người xem trên web có thể sẽ bối rối vì ứng dụng mail client bật lên ngay.

Việc nhận địa chỉ email của khách truy cập để thông báo khi có sách mới xuất hiện hoặc có thay đổi thì sao?

 
bingo992000 2021-09-12

Cảm ơn bạn!

Có lẽ mình phải nhanh chóng sửa lại những phần bạn đã nhắc tới thôi :)