เว็บเบราว์เซอร์ทดลองที่เหมาะสำหรับการสำรวจแบบลงโพรงกระต่าย
(szymonkaliski.com)- Cartographist เป็นเบราว์เซอร์ทดลองที่ออกแบบมาเพื่อการไล่ตามลิงก์ลงลึกระหว่างการค้นคว้า โดยแสดงบริบทการสำรวจเป็นพาเนลที่ต่อกันในแนวนอนแทนการเปิดหน้าต่างใหม่
- ไม่ได้เก็บประวัติการเข้าชมไว้เป็นเพียงรายการเรียงตามเวลา แต่แสดงเป็น ภาพรวมโครงสร้างแบบทรี ทำให้ผู้ใช้เข้าใจได้ง่ายว่าไปถึงหน้านั้นผ่านเส้นทางใด
- สามารถบันทึกและโหลดสถานะเซสชันกลับมาเป็น trails ได้ จึงสานต่อการค้นคว้าหัวข้อที่กินเวลานานจากจุดที่หยุดไว้ได้
- เริ่มต้นจากการทดลองเบราว์เซอร์สำหรับงานวิจัยในช่วงฤดูร้อนปี 2020 และได้รับอิทธิพลจากเลย์เอาต์เว็บไซต์ของ Andy Matuschak, การทดลองสแต็กวิวเบราว์เซอร์มือถือของ Nate Parrot, Miller columns และเบราว์เซอร์คลาสของ Smalltalk
- ในงานวิจัยจริง กระบวนการสังเคราะห์ ที่รวบรวมและจัดเรียงข้อมูลบางส่วนใหม่สำคัญกว่าการเก็บประวัติทั้งหมด และการบันทึกตำแหน่งสกรอลล์/ส่วนที่เลือก หรือประวัติที่แก้ไขได้ อาจใช้งานได้จริงกว่า
วิธีการสำรวจของ Cartographist
- Cartographist เป็นเว็บเบราว์เซอร์ทดลองที่มุ่งเน้น การสำรวจแบบลงโพรงกระต่าย
- แทนที่จะเปิดหน้าต่างใหม่ด้วย
cmd-click ทุกครั้งที่เปิดลิงก์จะสร้าง พาเนลแบบสกรอลล์แนวนอน - ไม่ใช่วิธีค้นหาหน้าเว็บจากประวัติการเข้าชมเชิงเส้น แต่แสดงกระแสการสำรวจเป็น ภาพรวมโครงสร้างแบบทรี
- สามารถบันทึกและโหลดเซสชันในสถานะตรงกับตอนที่ออกจากเซสชันไว้เป็น trails ได้ โดยไม่ต้องเริ่มใหม่ทุกครั้ง
- เหมาะกับรูปแบบการใช้งานที่ค้นคว้าหัวข้อหนึ่งเป็นเวลานาน
- โค้ดเปิดเผยไว้ที่ szymonkaliski/Cartographist
ที่มาและข้อจำกัดของการทดลอง
- โปรเจกต์เริ่มขึ้นในช่วงฤดูร้อนปี 2020 ระหว่างทดลองไอเดียเว็บเบราว์เซอร์ที่เน้นงานวิจัย
- แนวคิดพื้นฐานคือการแยก
browsingเป็นกิจกรรมแบบเปิดและแตกแขนง กับsearchingเป็นการค้นหาข้อมูล - หลังจากแชร์ตัวอย่างล่วงหน้าบน Twitter ก็ยังมีคำขอให้แชร์ต่อเนื่อง จึงเปิดเผยโปรเจกต์นี้
- แนวคิดพื้นฐานคือการแยก
- การท่องเว็บแบบใช้พาเนลได้รับอิทธิพลจากอินเทอร์เฟซหลายแบบ
- เลย์เอาต์เว็บไซต์ของ Andy Matuschak
- การทดลองของ Nate Parrot ที่วางสแต็กวิวเว็บเบราว์เซอร์มือถือเรียงเคียงกัน
- Miller columns
- เบราว์เซอร์คลาส Smalltalk ดั้งเดิม
- วิธีสำรวจแบบพาเนลลักษณะเดียวกันยังใช้สำหรับการสำรวจโค้ดใน Vim ด้วย
- เป็นวิธีเปิดนิยามฟังก์ชันในพาเนลใหม่ด้วยคีย์ลัดเดียว
- Glamorous Toolkit มองได้ว่าเป็นตัวอย่างที่ขยายไอเดียการท่องแบบพาเนลออกไปมากขึ้น
- ประวัติที่บันทึกลงดิสก์มีเสน่ห์ในเชิงทฤษฎี เพราะช่วยให้กลับไปยังเซสชันการท่องเว็บในภายหลัง และเลือกได้อย่างมีสติว่าตัวเองอยู่ใน “topic” ใด
- ในทางปฏิบัติ ประโยชน์ของ ประวัติทั้งหมด เองมีข้อจำกัด
- การรู้ว่าไปถึงที่ไหนและอย่างไรอาจช่วยได้ในบางครั้ง แต่งานที่สำคัญกว่าในงานวิจัยคือ การสังเคราะห์: ดึงบางส่วนจากภาพรวมขนาดใหญ่ จัดเรียงและประกอบใหม่ พร้อมคิดไปกับข้อมูล
- การปรับปรุงที่เล็กกว่านั้นอาจเป็นการบันทึกตำแหน่งสกรอลล์หรือส่วนที่เลือก และ ประวัติที่แก้ไขได้ ซึ่งสามารถลบทางตันและเพิ่มโน้ตได้
- ยังมีความเป็นไปได้ว่าต้องแก้ปัญหานี้ในระดับอื่น
- ตัวจัดการหน้าต่างที่ดีอาจแทนที่ Cartographist ได้แทบทั้งหมด
- มีการทดลองเลย์เอาต์แบบคอลัมน์ใน HHTWM แต่เนื่องจากไม่มีการสกรอลล์แนวนอน สุดท้ายจึงไม่ได้มีประโยชน์มากนัก
1 ความคิดเห็น
ความคิดเห็นบน Hacker News
ขอพูดนอกเรื่องนิดหน่อย แต่ผมสนใจส่วนในบทความที่บอกว่าเวลาไล่ดูโค้ดด้วย Vim สามารถ “เปิดนิยามของฟังก์ชันในพาเนลใหม่ด้วยคีย์ลัดเดียว” เลยไปค้นค่าตั้ง
.vimของผู้เขียนใน GitHubวิธีคือ
nnoremap gF vgF: https://github.com/szymonkaliski/dotfiles/blob/357fc7c76ca86...และ
nnoremap gD :call CocActionAsync('jumpDefinition', 'vsplit'): https://github.com/szymonkaliski/dotfiles/blob/357fc7c76ca86...สุดท้ายใน Lua ของ nvim ผมลงตัวที่
buf_set_keymap('n', 'gds', 'vlua vim.lsp.buf.definition()', opts)และตั้งเป็นแมปปิงคนละตัวกับgdที่ใช้ประจำ เพื่อเลือกได้ว่าจะเปิดหน้าต่างแบ่งใหม่หรือไม่ เช่น ถ้าตัวแปรถูกนิยามไว้แค่สูงขึ้นไป 20 บรรทัด ผมก็ไม่อยากได้หน้าต่างแบ่งใหม่gdsทำให้เกิดดีเลย์เล็กน้อยตอนจะใช้gdจึงเปลี่ยนเป็นgvvim.api.nvim_buf_set_keymapหรือไม่ก็แค่vim.keymap.setเจ๋งมาก ขอแนะนำอย่างยิ่งให้ลองติดต่อ Kay Xu ที่ทำวิจัยเรื่อง sensemaking และ berrypicking
ดูเหมือนเขากำลังทำเวอร์ชันใหม่ที่ดีกว่า โดยอิงกับส่วนขยายเบราว์เซอร์แทนที่จะเป็นเรนเดอเรอร์แยกต่างหาก และถ้าร่วมมือกันก็น่าจะเป็นประโยชน์ต่อทั้งสองฝ่าย
https://vis4sense.github.io/sensemap/paper.pdf
https://vis4sense.github.io/sensemap/
https://web.archive.org/web/20080112091521/http://www.gseis....
ผมเคยทำอะไรคล้าย ๆ กันเมื่อกว่า 20 ปีก่อน มันทำ ค้นหาข้อความทั้งชุด ในเนื้อหาหน้าเว็บได้ และทำงานเหมือนประวัติเบราว์เซอร์ด้วย จึงใช้มันอยู่หลายปี
ผมเห็นวิธีแก้ปัญหาจริง ๆ จากคนคนหนึ่งที่ดื้อรั้นมากและมีความบกพร่องทางการเรียนรู้ ในห้องที่ตู้ใต้ดินอัดแน่นไปด้วยกระดาษห่อเนื้อ เขาพยายามทำความเข้าใจตำราเรียนโดยจัดเรียงเนื้อหาใหม่บนม้วนกระดาษขนาดยักษ์ และสร้างไวยากรณ์ของตัวเองขึ้นมา ผลลัพธ์ออกมาคล้ายการผสมระหว่างมายด์แมปกับ ZUI
ไอเดีย “การลิงก์” ของเขาใกล้เคียงกับระบบดัชนี เขาจะดึงม้วนกระดาษอีกม้วนที่ติดป้ายไว้จากตู้ กางออกไปจนถึงบริเวณที่ “เชื่อมโยง” กัน แล้วพับวางบนโต๊ะให้ม้วนทั้งสองอยู่เคียงกัน
ผมเห็นความใช้ได้แบบทั่วไปของมันในทันที และเมื่อกว่า 10 ปีก่อนก็เคยลงมือทำอยู่หลายเดือนเพื่อให้เป็นวิธีใหม่ในการสำรวจเว็บ แต่ไม่ได้ทำต่อ ผมยังคิดอยู่เรื่อย ๆ ว่าควรทำต่อ แต่ความวิตกกังวลกับภาวะซึมเศร้านี่หนักจริง ๆ ตอนนี้ยังสามารถใช้ LLM ทำ การติดป้ายออนโทโลยี แบบฉลาด ๆ ได้ด้วย ชิ้นส่วนต่าง ๆ อยู่ตรงนั้นแล้ว แค่ต้องหยิบมันขึ้นมาเท่านั้น
ผมชอบท่อนที่ว่า “พอแชร์ตัวอย่างพรีวิวบน Twitter ก็ได้รับกระแสตอบรับมหาศาลเกินคาด แต่ดันไปวอกแวกกับเรื่องอื่น จนไม่ได้กลับมาทำโปรเจกต์ต่อ”
ทำเบราว์เซอร์สำหรับสำรวจโพรงกระต่ายแล้วตัวเองกลับเสียสมาธิซะเอง
ล้อเล่นน่ะ คำอธิบายฟีเจอร์ของ Vim ทำให้นึกถึงเบราว์เซอร์ Whisper ของ Squeak มันมีอะไรคล้าย SmalltalkBrowser แบบเน้นความลึก เพื่อเลี่ยงการเพิ่มจำนวนหน้าต่างอย่างหลีกเลี่ยงไม่ได้ระหว่างทำงานทั่วไป น่าสนใจเหมือนกันที่ใน Vim ฟีเจอร์ที่ต้องใช้เพื่อจัดระเบียบการสำรวจซอร์สโค้ดใหม่แบบนั้นคือการตั้งค่าแค่ราวสองบรรทัด แน่นอนว่าเบราว์เซอร์ Whisper ไม่ได้มีแค่การไล่ดูไปด้านข้าง แต่ยังมีการซ้อนและ UI ใหม่ด้วย
เจ๋งดี ตอนทำ Chrome มีบางคน—เอาจริง ๆ ก็คงมีผมคนเดียว—ที่ติดใจเบราว์เซอร์แบบ IE shell ชื่อ iRider มันมีแท็บแบบ tree-style และฟีเจอร์ปักหมุด เลยมีประโยชน์ในลักษณะคล้ายกันมาก
เท่าที่จำได้ ในนี้มีฟีเจอร์หนึ่งที่อาจเข้ากับสิ่งนี้ได้ดี คือการลากข้ามแท็บเพื่อควบคุมเป็นชุด หลังจากคลิกปุ่มปิดหรือปักหมุด แล้วลากแนวตั้งทับแท็บอื่น ๆ การกระทำเดียวกันก็จะถูกนำไปใช้ ทำให้จัดการกองแท็บที่เพิ่มขึ้นไม่รู้จบได้ง่ายมาก
สำหรับผู้ใช้ ADHD ดูเหมือนจะเป็นของที่เป็นทั้งความฝันและฝันร้ายในเวลาเดียวกัน
มีแค่ผมหรือเปล่าที่มักจบเซสชันการท่องเว็บด้วยแท็บ 300 แท็บ? ฟีเจอร์นี้น่าจะถูกใช้หนักเกินไป และคงทำให้ชีวิตแย่ลงไปอีกมาก
ใช้เวลาอยู่พักหนึ่ง แต่ตอนนี้เวลาเห็นของรก ๆ อย่างแท็บหรือภาพหน้าจอ ผมจะคิดมากกว่าว่าถ้าไม่มีของรกเหล่านี้จะทำอะไรได้มากขึ้นแค่ไหน แทนที่จะคิดว่าจะเก็บอะไรไว้หรือเสียอะไรไป จากนั้นมันเริ่มดูเหมือนเป็นการได้มา ไม่ใช่การสูญเสีย และช่วยได้ ไม่ได้ใช้ได้ผลเสมอไป แต่วันที่ได้ผลนี่น่าทึ่งจริง ๆ
ถ้าติดแท็กได้ง่ายระหว่างสำรวจ และภายหลังค้นหาแท็กกับเนื้อหาหน้าเว็บที่เคยดูได้อย่างรวดเร็ว ก็น่าจะช่วยได้อีก ความมั่นใจว่าจะหาเจออีกทำให้ปิดแท็บได้ง่ายขึ้น
ในฐานะคนที่มี ADHD เหมือนกัน ช่วงนี้ผมจัดการปิดแท็บเป็นระยะ ๆ ปกติจะผูกกับเหตุการณ์ที่เกี่ยวข้อง เช่นตอนเริ่มหรือจบงานของวัน หรือเริ่มหรือจบงานชิ้นหนึ่ง พยายามให้มีหน้าต่างหนึ่งต่อหนึ่งงานที่กำลังทำอยู่ และย้ายแท็บอื่นไปไว้ที่อื่น เช่น ถ้าเป็นแท็บที่เกี่ยวกับงานที่ต้องทำก็ใส่ไว้ในบอร์ดคัมบัง ถ้าเป็นของที่จะอ่านก็ส่งไป Instapaper ถ้าน่าสนใจและอยากกลับมาดูภายหลัง ก็ทิ้งไว้หนึ่งบรรทัดใน LogSeq journal พร้อมคำอธิบายสั้น ๆ หลักการคือ ถ้าไม่ได้แค่กองสะสมไว้เฉย ๆ ก็ย่อมมีเหตุผลที่ต้องบันทึกแท็บไว้ จึงทำเหตุผลนั้นให้ชัดเจน แล้ววางไว้ในที่ที่จะกลับมาหาได้ในเวลาที่เหมาะสม
เพิ่มบุ๊กมาร์กหรือฟีด RSS เป็นต้น แล้วรัน
offpunk --syncจากนั้นรันoffpunkสุดท้ายพิมพ์tourหรือtที่พรอมป์ แล้วกดtต่อไปเรื่อย ๆ จนกว่าจะดูบล็อกหรือเว็บข่าวทั้งหมดครบอ่านเว็บด้วยสเปซบาร์ และถ้าอยากอ่านอีกครั้งให้พิมพ์
lessก็จะเข้าถึงด้วยหมายเลขลิงก์ได้ ถ้าจะย้อนกลับให้กดbเนื้อหาทั้งหมดถูกเก็บออฟไลน์ไว้สำหรับใช้งานภายหลังURL https://sr.ht/~lioploum/offpunk/
ในทางกลับกัน ความสามารถในการกลับไปยังจุดแยกที่หลุดออกจากเส้นทางเดิมที่ควรตามได้อย่างรวดเร็วนั้นมีค่ามากจริง ๆ
แม้แต่ใน Vim ผมก็ยังรับฟีเจอร์ undo branches ได้ไม่จริงจัง เข้าใจนะ แต่ใช้งานจริงไม่สำเร็จ ดูเหมือนสมอง ADHD ของผมจัดการประวัติแบบเส้นตรงได้ดีกว่าแบบแตกกิ่ง
น่าสนใจ มีส่วนที่ทับซ้อนกับส่วนเสริม Firefox ต่อไปนี้
Tree Style Tabs: https://addons.mozilla.org/en-US/firefox/addon/tree-style-ta... — เรียบง่ายกว่า และไม่มีฟีเจอร์บันทึกเซสชัน
Tree Tabs: https://addons.mozilla.org/en-US/firefox/addon/tree-tabs — ซับซ้อนกว่าและบันทึกเซสชันได้ด้วย แต่ไม่เข้ากันกับส่วนเสริมบางตัว และยังไม่ได้รับการประเมินความปลอดภัยจาก Mozilla
ทั้งคู่ไม่ได้จัดเรียงแท็บใหม่ภายในหน้าต่าง แต่ให้แค่ รายการแบบต้นไม้ ทางเลือกของแท็บที่เปิดอยู่
ทุกคนกำลังพูดถึงความเสี่ยงเชิงอัตถิภาวะที่ AI จะนำมา แต่คนนี้กลับปล่อยเครื่องมือแบบนี้ออกสู่โลกโดยไม่มีมาตรการป้องกันใด ๆ น่ากังวลจริง ๆ
ถ้าพูดจริงจังขึ้นอีกนิด การมี กราฟแท็บ ArXiv แทนรายการแท็บแบบเส้นตรงน่าจะมีประโยชน์มากเวลาขุดลึกเข้าไปในวรรณกรรมวิทยาศาสตร์
ถ้าเป็นการท่องเว็บแบบต้นไม้ ก็จะเปิดหรือดู B สองครั้ง และยังมองไม่เห็นง่าย ๆ ด้วยว่ามาถึง B จากทั้ง A และ C
ต้องนำ ไฮเปอร์เท็กซ์ ที่แท้จริงกลับมา
เบราว์เซอร์ควรทำงานเหมือนการสำรวจเอกสาร ไปหน้าไปหลังได้ และแต่ละ “วิว” ควรถูกแคชและบันทึกได้ ไม่ใช่กลายเป็นขยะ SPA ที่บรรทุก
main.min.jsขนาด 20MBประโยคที่ดีที่สุดจากบทความของคนที่สร้างเบราว์เซอร์ที่ปรับให้เหมาะกับการสำรวจโพรงกระต่าย: “พอแชร์พรีวิวบน Twitter ก็ได้รับกระแสตอบรับมหาศาลแบบไม่คาดคิด แต่ดันไปเสียสมาธิกับเรื่องอื่นจนไม่ได้กลับมาทำโปรเจกต์ต่อ”