all writing

Mình dùng Claude để viết lại cái blog này

· AI· Claude· Next.js· Tiptap

Tại sao nên đọc bài này?

  • Xem coi giao cả cái blog cho AI viết lại thì được cái gì?

  • Vì sao mình bỏ Notion, tự viết editor rồi publish luôn lên npm

  • Ba ngày làm lại cả cái blog, và một cảm giác tưởng mất lâu rồi

Chuyện bắt đầu từ một cái lỗi 502.

Nghỉ lễ xong, mình quay lại với một mớ thứ dang dở muốn bắt đầu lại. Tháng trước đó mình đi chụp ảnh nhiều, up lên Instagram cũng nhiều. Rồi một hôm ngồi rảnh, tự bấm vào cái link trong bio của chính mình - huydang.me.

502 Bad Gateway.

Không phải trang trắng, không phải 404. Là 502 - kiểu server vẫn còn thở, nhưng thứ đứng sau nó thì chết queo từ đời nào rồi skull emoji. Mà buồn cười nhất là mình còn chả biết nó chết từ bao giờ nữa.

Cái blog cũ nằm im hơn một năm

Blog cũ của mình chạy bằng Notion. Hồi đó nghe hợp lý lắm: viết trên Notion, có sẵn app mobile, khỏi lo chỗ gõ, khỏi lo chỗ lưu, khỏi lo gì hết.

Rồi một năm trôi qua, mình viết được đúng… 1 bài.

Vấn đề thật ra không nằm ở Notion. Vấn đề là mỗi lần mở blog lên, mình lại thấy nó không phải của mình. Layout thì chịu, ảnh thì load chậm, muốn đổi một chi tiết nhỏ xíu cũng phải đi vòng qua nhà người ta.

Mà cái gì mình không kiểm soát được thì mình cũng lười động vào. Lười thì không viết. Không viết thì blog chết thôi melting_face emoji

Cái 502 kia thật ra chỉ là tờ giấy báo tử tới muộn.

Hơn một năm nay mình không "code"

Mà nói cái blog nằm im một năm thì cũng hơi oan cho nó. Vì nhìn lại, mình cũng nằm im y chang vậy.

Nói cho đúng thì mình vẫn đi làm, vẫn review, vẫn quyết định, vẫn bị hỏi "cái này bao giờ xong". Chỉ là mình không còn ngồi gõ nữa. Mình xài Claude hai năm nay rồi. Nó gõ, mình duyệt - riết rồi quen, quen tới mức quên mất là hồi xưa mình từng thích chính cái phần gõ đó. Cái cảm giác tự tay làm ra một thứ rồi thấy nó chạy hơn một năm nay mình không có. Mình cũng không biết là mình nhớ nó.

Việc nào phải ép mình mới làm thì kiểu gì cũng bỏ dở giữa chừng. Còn thứ mà cứ rảnh là tự động mở lên, thì mình biết là mình đang thích thật.

Cú hích tới sớm hơn mình tưởng. Mình tả đại khái cái blog mình muốn trông như thế nào, rồi đi làm việc khác. Lúc quay lại, Claude đã dựng xong một giao diện hoàn toàn mới.

Nó làm được thì mình biết thừa. Cái khác của lần này là thứ đang hiện trên màn hình không phải ticket của ai, không phải yêu cầu của ai. Nó là của mình.

Với lại nó không giống cái mình vẽ trong đầu - mà thứ có thật thì mới chê được, mới sửa được, mới thích được. Chứ cái blog trong đầu mình thì đẹp lắm, đẹp suốt một năm nay mà chả ai xem được upside_down_face emoji.

Từ lúc đó là hứng luôn. Ba ngày sau thì cái bạn đang đọc nó ra đời.

camera_flash emoji Bên trái là 1 năm không viết gì. Bên phải là bài đầu tiên.

Trước khi làm blog, mình đi làm cái editor

Nghe hơi ngược đời: trong ba ngày đó, thứ đầu tiên mình bắt tay vào lại không phải cái blog.

Chuyện là bỏ Notion rồi thì mình phải có chỗ để gõ. Mà mình thì khó tính với cái chỗ để gõ lắm sweat_smile emoji. Muốn gõ dấu / là hiện ra menu, muốn kéo tấm ảnh thả vào là nó tự up, muốn cầm nguyên đoạn văn kéo đi chỗ khác. Nói chung là muốn y như Notion, chỉ khác đúng một chỗ: nó phải là của mình.

Ban đầu mình làm cách nhanh nhất - bê nguyên một cái template có sẵn về, quăng vào repo. Chạy được ngay. Nhưng cái thư mục đó phình lên gần 89 file, nằm chình ình giữa cái blog cá nhân của mình.

Mình đã có kinh nghiệm làm với text editor này khá nhiều, bắt đầu với theinfluencer.vn làm với 1 người em, chúng mình đổi qua nhiều thư viện, nhưng cuối cùng dừng lại ở tiptap để có thể custom được sâu nhất. Vậy là mình lấy 1 phần editor trong dự án chúng mình từng làm, tách nó ra, viết lại tử tế, rồi publish luôn lên npm. Blog gọn lại, còn cái editor thì có nhà riêng của nó.

Viết lại thì lâu hơn copy nhiều. Nhưng đổi lại thì bài bạn đang đọc được gõ bằng đúng cái editor đó - từ chỗ gõ chữ cho tới chỗ chữ hiện ra trên màn hình bạn. Mình thích cảm giác đó hơn hẳn cảm giác "làm xong nhanh". Cỡ như tự nấu một tô bún ở nhà á - dở hơn quán, nhưng ăn thấy đã hơn nhiều ramen emoji.

Claude là thực tập sinh, hay đồng nghiệp?

Xài Claude lâu rồi thì mình để ý nó nhảy qua nhảy lại giữa đúng hai vai. Ba ngày vừa rồi chỉ làm cái ranh giới đó rõ hơn thôi.

Thực tập sinh là lúc mình giao việc. Mình nói làm cái này, nó làm, mình đọc lại, sửa. Nhanh kinh khủng - nhưng với điều kiện mình phải biết trước mình muốn gì. Giao việc mà đầu mình còn mơ hồ thì nó bịa ra một cái mơ hồ khác, xong hai đứa cùng mơ hồ upside_down_face emoji.

Đồng nghiệp là lúc mình ngồi cãi nhau với nó. Mình bảo nên làm A, nó bảo B hợp lý hơn vì abc, mình bảo không, vì xyz. Có lúc mình đúng. Có lúc đọc xong thì… ừ, mày nói cũng có lý.

Vế thứ hai mới là chỗ mình thấy khác biệt thật sự. Vì ngồi làm một mình cái blog cá nhân thì lấy đâu ra người để mà cãi relieved emoji.

magic_wand emoji Nó là thực tập sinh khi mình giao việc. Nó thành đồng nghiệp khi mình chịu ngồi cãi.

Rồi vài năm nữa mình làm gì?

Đây là đoạn mình nghĩ đi nghĩ lại cả năm nay rồi, chứ không phải mới ba hôm.

Đồng nghiệp hay nói mình làm nhanh. Mình cũng tin vậy thật, tin suốt mấy năm luôn sunglasses emoji. Rồi tới lúc ngày nào cũng ngồi cạnh một thứ làm nhanh hơn mình, cái niềm tin đó nó… hơi lung lay.

Nhưng nghĩ kỹ lại thì mình thấy đỡ hơn. Vì thứ mình thích chưa bao giờ là gõ code cả.

Mình thích làm ra một cái product có người dùng, giải quyết được một nhu cầu có thật trong đời sống. Chứ không phải làm ra một thứ cao siêu để mang đi flex.

Mà nếu vậy thì thứ Claude lấy mất của mình chỉ là phần gõ thôi. Phần biết nên làm cái gì, cho ai, và bỏ bớt cái gì đi - nó ít nhất là chưa.

Thứ mình thích là làm ra đồ có người xài, chứ không phải cái động tác gõ ra nó.

Blog này sắp có gì

Trước giờ mình cứ mặc định blog của dev thì phải viết về code. Nên mỗi lần định viết cái gì khác là thấy sai sai, rồi thôi.

Mà thật ra với mình, mỗi ngày là một cảm xúc riêng biệt. Đi chụp một buổi, xem một bộ phim, đi một chuyến, ngồi cà phê với mấy đứa bạn hay với đồng nghiệp - ngày nào cũng có cái để kể. Chỉ là chả có chỗ nào để log lại.


Cái blog này giờ là của mình thật: editor của mình, database của mình, giao diện của mình. Editor mình gõ bài này là @blakaa/kinkin-editor, có trên npm. Welcome to contribute nhé.