28 คะแนน โดย GN⁺ 2025-09-16 | 6 ความคิดเห็น | แชร์ทาง WhatsApp
  • โปรเจกต์เชิงทดลองที่นำไมโครคอนโทรลเลอร์ ARM Cortex-M0+ สมรรถนะต่ำซึ่งฝังอยู่ในบุหรี่ไฟฟ้าแบบใช้แล้วทิ้งมารันเว็บเซิร์ฟเวอร์
  • วิเคราะห์ชิป PY32F002B ของ PUYA ที่มี แฟลช 24KiB และ RAM 3KiB พร้อมสร้างการเชื่อมต่อเครือข่ายด้วยวิธี SLIP
  • ใช้ Semihosting, โปรโตคอล SLIP และสแตก uIP TCP/IP เพื่อพอร์ตการสื่อสาร TCP/IP และความสามารถของ HTTP server ผ่าน virtual tty
  • เดิมทีช้ามาก แต่หลังจาก ปรับแต่งบัฟเฟอร์ และปรับปรุงการประมวลผลข้อมูล ก็ทำให้การตอบสนองและความเร็วในการโหลดหน้าเพิ่มขึ้นอย่างมาก
  • ทำให้สามารถรันโค้ดเซิร์ฟเวอร์แบบไดนามิกและให้บริการ API endpoint ได้ แม้อยู่ในสภาพแวดล้อมที่มีหน่วยความจำต่ำ
  • มีการเผยแพร่โค้ดแล้ว และแม้จะโฮสต์ใช้งานจริงได้ แต่ก็ยังมีข้อจำกัดด้านทรัพยากรอย่างหน่วยความจำ

บทนำ

  • ขอชี้แจงก่อนว่าบทความนี้ไม่ได้ให้บริการผ่านเว็บเซิร์ฟเวอร์ที่รันอยู่บนบุหรี่ไฟฟ้าแบบใช้แล้วทิ้งโดยตรง แต่ให้บริการเนื้อหาเดียวกันผ่านเซิร์ฟเวอร์แยกต่างหาก
  • สามารถดูตัวอย่างการทำงานจริงได้ที่ http://ewaste.fka.wtf/

ที่มา

  • ตลอดหลายปีที่ผ่านมา ผู้เขียนได้รวบรวมบุหรี่ไฟฟ้าแบบใช้แล้วทิ้งจากคนรู้จักเพื่อนำ แบตเตอรี่ มาใช้ซ้ำ
  • ช่วงหลังเริ่มสนใจที่อุปกรณ์บุหรี่ไฟฟ้าแบบใช้แล้วทิ้งมีความก้าวหน้ามากขึ้นเรื่อย ๆ และเริ่มมาพร้อม USB-C และแบตเตอรี่แบบชาร์จซ้ำได้
  • ระหว่างการแยกชิ้นส่วนได้พบไมโครคอนโทรลเลอร์ ARM Cortex-M0+ ที่มีแฟลชในตัว ชื่อ PUYA ซึ่งเป็นชิปที่รู้จักกันดีในฐานะไมโครคอนโทรลเลอร์ราคาประหยัด
  • ผู้เขียนเก็บไมโครคอนโทรลเลอร์เหล่านี้มาจากหลายรุ่น และพบว่ามีการติดป้ายกำกับขาดีบักไว้ ทำให้ง่ายต่อการวิเคราะห์

ฮาร์ดแวร์ที่ใช้

  • บนชิปมีสกรีนว่า PUYA C642F15 แต่คาดว่าแท้จริงแล้วอยู่ในตระกูล PY32F002B
  • สเปกหลัก:
    • คอร์ 24MHz Cortex-M0+
    • แฟลช 24KiB
    • RAM 3KiB
    • มีอุปกรณ์ต่อพ่วงหลายอย่าง แต่ไม่ได้ใช้งานในโปรเจกต์นี้
    โฆษณา
  • แม้ประสิทธิภาพจะต่ำเมื่อเทียบกับสมาร์ตโฟนทั่วไป แต่ในสภาพแวดล้อมแบบฝังตัวก็ยังสร้างเว็บเซิร์ฟเวอร์แบบง่าย ๆ ได้เพียงพอ

การเชื่อมต่อเครือข่าย

  • แม้ไม่ใช่แนวคิดใหม่ทั้งหมด แต่ผู้เขียนเกิดไอเดียในการรันเว็บเซิร์ฟเวอร์ระหว่างทดลองแนวคิด semihosting
  • Semihosting คือวิธีจำลอง syscall บนระบบ ARM แบบฝังตัว
    • เมื่อนำค่า/พอยน์เตอร์ใส่ไว้ในรีจิสเตอร์แล้วเรียก breakpoint ดีบักเกอร์จะตีความและจัดการการทำงานให้
    • โดยทั่วไปใช้เพื่อส่งล็อก แต่ก็สามารถทำการสื่อสารข้อมูลแบบสองทางได้
  • อุปกรณ์ USB serial รองรับโปรโตคอล SLIP(Serial Line Internet Protocol) จึงนำมาใช้เป็นอินเทอร์เฟซเครือข่าย
  • บน Linux (และบางส่วนของ macOS) สามารถสร้างสภาพแวดล้อม เครือข่าย SLIP ผ่าน virtual tty ด้วย slattach และ socat เป็นต้น
    pyocd gdb -S -O semihost_console_type=telnet -T $(PORT) $(PYOCDFLAGS) &  
    socat PTY,link=$(TTY),raw,echo=0 TCP:localhost:$(PORT),nodelay &  
    sudo slattach -L -p slip -s 115200 $(TTY) &  
    sudo ip addr add 192.168.190.1 peer 192.168.190.2/24 dev sl0  
    sudo ip link set mtu 1500 up dev sl0  
    
  • เลือกใช้ uIP เป็นสแตก TCP/IP เพราะมีขนาดเล็กมาก ไม่ต้องใช้ RTOS และพอร์ตได้ง่าย
  • จากตัวอย่างของ uIP ได้นำ HTTP server มาใช้ และพอร์ตโค้ด SLIP ให้เข้ากับวิธี semihosting จนสามารถเปิดใช้งานเว็บเซิร์ฟเวอร์ได้สำเร็จ
  • เนื่องจากสถาปัตยกรรม ARM มีปัญหาเรื่องการจัดแนว 16 บิต จึงได้แก้ไขสคริปต์สร้าง filesystem และแปลงผลด้วย Perl
โฆษณา

การปรับความเร็วให้เหมาะสม

  • ในช่วงแรกมีความเร็วตอบสนองช้ามาก โดย ping 1.5 วินาที, packet loss 50% และโหลดหน้าเว็บนานเกิน 20 วินาที
  • สาเหตุคือโอเวอร์เฮดที่สูงมากของการรับส่งข้อมูลแบบไบต์ต่อไบต์
  • จึงใช้ RAM 3KiB อย่างเต็มที่ เพิ่ม ring buffer และปรับให้ฟังก์ชัน SLIP ป้อนข้อมูลเป็นชุด
  • ฝั่งการเขียนก็แบ่งส่งเป็นแบตช์เช่นกัน เพื่อให้การส่งข้อมูลและการล้างสถานะทำได้รวดเร็ว
  • หลังการปรับแต่งสามารถทำได้ถึง ping 20ms, ไม่สูญหาย, โหลดหน้า 160ms
  • การใช้ RAM และแฟลชทั้งหมด:
    • แฟลช: 5,116B จาก 24KB (20.82%)
    • RAM: 1,380B จาก 3KB (44.92%)
  • มีพื้นที่เพียงพอสำหรับให้บริการคอนเทนต์บล็อกทั้งหมดได้สบาย และยังสามารถรันโค้ด C ฝั่งเซิร์ฟเวอร์ได้อีกด้วย

ฟีเจอร์อื่น ๆ และบทสรุป

  • ผู้เขียนได้สร้าง API endpoint เอง เพื่อส่งคืนจำนวนครั้งที่มีการร้องขอหน้าแรกและ unique ID ของไมโครคอนโทรลเลอร์
  • นี่เป็นการทดลองที่สร้างได้ถึงเว็บเซิร์ฟเวอร์แบบไดนามิกและ API บนฮาร์ดแวร์สเปกต่ำสุดขั้วและหน่วยความจำระดับน้อยมาก

อ้างอิง

6 ความคิดเห็น

 
thinkpad 2025-09-16

ผมสนุกกับทั้งโปรเจกต์และบทความมาก อ่านเพลินมากครับ แต่พอรู้ว่ามีสิ่งที่เรียกว่าบุหรี่ไฟฟ้าแบบใช้แล้วทิ้งอยู่ด้วยก็รู้สึกตกใจมาก และคิดว่านี่มันไม่โอเคเลยนะ..

 
slowmo 2025-09-22

ฉันเองก็ไม่สูบบุหรี่เลยไม่รู้มาก่อน แต่ไม่นานมานี้พอเห็นว่าคาเฟ่อัตโนมัติที่เพิ่งเปิดแถวบ้านมีตู้ขายบุหรี่ไฟฟ้าแบบใช้แล้วทิ้งอยู่ด้วยก็เลยได้รู้ ด้านล่างนี้คอมเมนต์ใน Hacker News ครึ่งหนึ่งก็คงเป็นเรื่องการสิ้นเปลืองทรัพยากรอย่างน่าเหลือเชื่อเหมือนกันนะ 555

 
slowmo 2025-09-22

พอคอมเมนต์ไปแล้วก็ทำให้นึกสงสัยขึ้นมาว่า ถ้าเป็นตู้ขายของอัตโนมัติในคาเฟ่ไร้พนักงาน เขาตรวจสอบอายุผู้ซื้อกันยังไงนะ สงสัยว่าที่ตู้มีฟังก์ชันสแกนบัตรประชาชนด้วยหรือเปล่า..

 
preserde 2025-09-22

ฉันไม่ได้สูบบุหรี่เลยนึกไม่ออกว่าเขาพูดถึงอะไร ที่แท้กำลังบอกว่าแม้จะเป็นของใช้แล้วทิ้ง แต่กลับใช้ทรัพยากรมากเกินไปนี่เอง

 
unknowncyder 2025-09-16

เวลาสูบบุหรี่ไฟฟ้าแล้วดันลืมไว้ที่ไหนสักแห่ง หรืออยู่ระหว่างเดินทาง... ก็ไม่ค่อยอยากซื้อเครื่องเพิ่มอีกเครื่องหรือกลับไปสูบบุหรี่มวน แต่ก็ยังอยากเติมนิโคติน สุดท้ายเลยมักจะไปหาที่ร้านสะดวกซื้อ

 
GN⁺ 2025-09-16
ความคิดเห็นจาก Hacker News
  • ถ้ากำลังมองหาฮาร์ดแวร์ที่ทั้งถูกและแรง ก็น่าลองดูดองเกิล UZ801 4G LTE (Qualcomm MSM8916) จากจีน อุปกรณ์นี้ราคาแค่ประมาณ $4~5 แต่ให้ฮาร์ดแวร์น่าประทับใจ เช่น eMMC 4GB, RAM 512MB, โมเด็ม 4G จริง ๆ (บางครั้งรองรับการสลับ 2 SIM) โดยพื้นฐานแล้วมันคือ Android SOC รุ่นเก่า จึงมีทั้ง GPU และ GPS อยู่ด้วย งานรองรับดองเกิลนี้ก็ทำไปมากพอสมควรแล้ว
    ข้อมูลดองเกิล LTE ซีรีส์ Zhihe
    โปรเจกต์ OpenStick
    ถ้ากำลังหาฮาร์ดแวร์แพลตฟอร์มไปใช้กับโปรเจกต์ homelab แปลก ๆ แบบนี้ มันก็น่าจะเหมาะมาก

    • สำหรับมือใหม่ ไกด์นี้ ดูจะดีที่สุด ถ้าจะติดตั้ง Linux ต้องสำรองพาร์ทิชันเฟิร์มแวร์ไว้แล้วแฟลชกลับใหม่เพื่อให้โมเด็ม 4G ทำงานได้ การซื้อฮาร์ดแวร์ได้มากขนาดนี้ในราคาแค่ 5 ดอลลาร์นั้นแทบไม่น่าเชื่อเลย ถ้าเพิ่ม power bank เข้าไป (หรือทำเองจากแบตเตอรี่บุหรี่ไฟฟ้าที่ทิ้งแล้ว) ก็จะได้เครื่อง Linux พร้อม WiFi และ 4G ที่พกไปใช้ได้ทุกที่

    • ถ้าต้องการลิงก์ของ SOC แบบนี้หรือของใกล้เคียง Hackaday มีบทความเฉพาะทางพร้อมลิงก์หลากหลาย
      บทความ Hackaday
      ตัวอย่าง MSM8916 บน AliExpress
      ผมยังเจอดองเกิล MSM8916 ที่มีหน้าจอในตัวด้วย (แต่ไม่มีข้อมูล RAM)

    • ดีใจที่ได้ยินเรื่อง Qualcomm MSM8916 นี่คือ Snapdragon 410 เพื่อนเก่าของผม เคยอยู่ใน Moto G3 รุ่นปี 2015 ด้วย (ทุกวันนี้ยังหยิบมาใช้กับ whatsapp บางครั้ง) บนพื้นฐาน Android (เวอร์ชัน 7) มันทำงานได้มีประสิทธิภาพพอตัวอย่างน่าประหลาดใจ ถ้าไม่ใช่งานหนักเกินไป น่าประทับใจที่ชิปเซ็ตมือถือเก่าแบบนี้ยังมีชีวิตอยู่และยังมีคนซัพพอร์ต
      เกร็ดน่าสนใจคือ ชิปนี้เป็นหนึ่งในตัวแรก ๆ ที่รองรับ Android 64-bit แต่ Motorola พอร์ตไม่ทันก่อนวางขาย เลยรองรับได้แค่ Android 32-bit

    • มันทำให้ผมนึกถึงดองเกิล LTE ที่ Freedom Pop เคยแจก ซึ่งรัน Linux ได้ ถ้าแกะออกมาก็เข้าถึง UART ได้ด้วย

    • ปัญหาใหญ่ที่สุดของผมคือ
      a.) โลกของอุปกรณ์อิเล็กทรอนิกส์พัฒนาเร็วเกินไป
      b.) ผมขาดทั้งทักษะและเวลา เลยไม่มีความสามารถพอจะทำอะไรเท่ ๆ ด้วยของพวกนี้
      เมื่อก่อนผมเคยซื้อ licheerv nano (เช่นเดียวกับ luckfox pico, คล้าย Milk-v duo) มาเพราะอยากทำ iPod nano โอเพนซอร์สที่มีแจ็กเสียง usb-c
      แต่หาหน้าจอสัมผัส 2.4 นิ้ว หรือเล็กกว่า 3 นิ้ว ที่เข้ากับพอร์ต MPI ของ licheerv nano ไม่ได้เลย
      จริง ๆ อาจทำเครื่องเล่นเสียงขนาดเล็กพกพาด้วย LVGL ได้ แต่สำหรับผมมันยากเกินไป

  • การนำอุปกรณ์แบบนี้กลับมาใช้ใหม่เป็นเรื่องที่เจ๋งมาก ถ้าวันหนึ่งทั้งเมืองถูกขับเคลื่อนด้วยการประกอบอุปกรณ์แบบนี้เข้าด้วยกัน ก็คงให้อารมณ์เหมือนฉากในหนังหลังวันสิ้นโลก
    อีกด้านหนึ่ง ทุกวันนี้บุหรี่ไฟฟ้าแบบใช้แล้วทิ้งไม่ได้มีแค่ไมโครคอนโทรลเลอร์ แต่ตามข่าวล่าสุดยังมีทั้งเกมและหน้าจอในตัวด้วย นี่จึงเป็นขยะอิเล็กทรอนิกส์มหาศาล และเป็นความโง่หลายชั้นซ้อนกัน

    • อีกตัวอย่างหนึ่งคือชุดตรวจโควิดแบบใช้แล้วทิ้ง มันมีไมโครคอนโทรลเลอร์กับเซ็นเซอร์เชิงแสง และแสดงผลบนมือถือผ่าน Bluetooth เรื่องนี้เคยมีคุยกันในกระทู้ก่อนหน้า ที่นี่

    • ผมรู้ดีอยู่แล้วเรื่องแบตเตอรี่ลิเทียมที่นำกลับมาใช้ใหม่ได้อย่างสมบูรณ์ในบุหรี่ไฟฟ้าแบบใช้แล้วทิ้ง แค่นี้ก็สิ้นเปลืองมากพอแล้ว
      แต่นี่มันยังมีไมโครคอนโทรลเลอร์และคอนเนกเตอร์ USB-C มาให้อีก! ผมสงสัยว่าคอนเนกเตอร์นั้นเข้าถึงได้จากภายนอกหรือว่าต้องแกะแพ็กเกจถึงจะใช้ได้
      มันเป็นความโง่หลายชั้นจริง ๆ มูลค่าฮาร์ดแวร์ข้างในน่าจะเกินครึ่งของราคาสินค้าจริงด้วยซ้ำ

    • ผมสงสัยว่าบุหรี่ไฟฟ้าแบบใช้แล้วทิ้งเป็นขยะอิเล็กทรอนิกส์ร้ายแรงจริงไหม ของที่เราทิ้งกันอยู่เป็นประจำอย่างมือถือ รถยนต์ หรือโน้ตบุ๊ก ก็มีฮาร์ดแวร์ที่นำกลับมาใช้ใหม่ได้เยอะเหมือนกัน แต่ส่วนใหญ่ก็ไม่ได้ถูกจัดการอย่างเหมาะสมอยู่ดี ถ้าฮาร์ดแวร์ของบุหรี่ไฟฟ้ากลายเป็นมาตรฐานระดับหนึ่งขึ้นมาได้จริง ๆ ผมยังพอนึกภาพว่ามันอาจถูกเอาไปใช้ทำโปรเจกต์โรงเรียนแบบ Arduino ได้ด้วยซ้ำ

    • พอได้ยินเรื่องแบบนี้ผมก็นึกถึง duskOS กับ collapseOS

    • แค่ความจริงที่ว่าสินค้าแบบนี้ยังขายได้ ก็เป็นหลักฐานว่ากฎระเบียบยังอ่อนเกินไป

  • ความไม่สอดคล้องของสเปกเมื่อเทียบกับคอมพิวเตอร์ยุคเก่านั้นน่าสนใจมาก ตัวอย่างเช่น Commodore 64 ใช้ RAM 64KB คู่กับ CPU 8-bit 1MHz แต่ตอนนี้แม้แต่อุปกรณ์ใช้แล้วทิ้งที่มี RAM แค่ครึ่งเดียวของนั้น ก็ยังจับคู่กับ CPU 32-bit 24MHz แล้ว สิ่งที่ยุค 1980 คงจินตนาการไม่ออก กลับมาโผล่ในปี 2025 ในฐานะของใช้แล้วทิ้ง มันน่าประทับใจแบบประหลาด ๆ

    • จริง ๆ แล้ว RAM มีแค่ 3KB และแฟลช 24KB แน่นอนว่าความเร็วของแฟลชอาจใกล้เคียงหน่วยความจำเก่า ๆ บางแบบ แต่เรื่อง latency เทียบกันไม่ได้เลย

    • มี RAM แค่ 3KB เท่านั้น น้อยกว่า VIC-20 เสียอีก

    • CPU ตามมาตรฐานยุค 1980 ก็ไม่ได้สุดยอดอะไรขนาดนั้นนะ ในปี 87 Acorn Archimedes มี ARM 8MHz แล้ว แม้จะแพง แต่ก็ใช้งานกับ RAM อย่างน้อย 512KB
      (ว่าแต่พอคิดว่า 1987 คือเมื่อ 38 ปีก่อนก็ตกใจเหมือนกัน)

  • ผมดีใจที่มีคนแสดงให้เห็นว่าอุปกรณ์แบบนี้มีประโยชน์แค่ไหน การเรียกของพวกนี้ว่า "ใช้แล้วทิ้ง" เป็นความบ้ารูปแบบหนึ่ง ผมเคยเก็บแบตเตอรี่ LiPo จากบุหรี่ไฟฟ้าที่ถูกทิ้งข้างถนนมาใช้ และแบตเหล่านี้เป็นแบตเตอรี่แบบชาร์จซ้ำได้ที่มีวงจรชาร์จในตัวด้วย ไม่ใช่ของพื้น ๆ เลย การออกแบบให้ของแบบนี้ถูกใช้ครั้งเดียวแล้วทิ้งเป็นสิ่งที่ผิดมาก
    นี่แทบจะเป็นจุดสูงสุดของ "ซ่อมไม่ได้" เลยก็ว่าได้ เพราะมันถูกออกแบบมาเพื่อกันไม่ให้มีการนำกลับมาใช้ใหม่หรือชาร์จใหม่ ซึ่งขัดทั้งกับแนวคิดรักษ์โลกและจิตวิญญาณของ maker

    • บุหรี่ไฟฟ้าแบบใช้ซ้ำได้ก็มีอยู่ และร้านที่น่าเชื่อถือก็มักขายแต่แบบนั้น แต่สินค้าพวกนี้แพงกว่าบุหรี่ไฟฟ้าแบบใช้แล้วทิ้งมาก เลยทำให้แบบใช้แล้วทิ้งเป็นที่นิยมในหมู่ผู้ลักลอบขายหรือผู้เยาว์ (เพราะราคาถูกและเสี่ยงโดนยึด)
      ผลคือมันพาให้คนหนุ่มสาวไปข้องเกี่ยวกับองค์กรอาชญากรรม และติดหนี้ทั้งที่ไม่มีเงิน ซึ่งให้ผลลัพธ์ไม่ต่างจากหนี้ค่ายา และอาจถูกใช้เป็นช่องทางดึงไปสู่การก่ออาชญากรรมอื่นเพื่อเอาเงินมาโปะได้อีก

    • ผมเคยดูวิดีโอสุดยอดที่มีคนเอาบุหรี่ไฟฟ้าแบบใช้แล้วทิ้งที่เก็บจากงานเทศกาลดนตรีมาทำเป็นแบตเตอรี่จักรยานไฟฟ้า
      วิดีโอที่เกี่ยวข้อง
      ผมไม่เข้าใจเลยว่าทำไมบุหรี่ไฟฟ้าแบบใช้แล้วทิ้งถึงยังถูกกฎหมายอยู่ ผมเคยหวังว่าคนรุ่นหลัง 386 จะใส่ใจเรื่องการสิ้นเปลืองทรัพยากรมากกว่านี้ แต่ก็ผิดหวัง

  • สักวันหนึ่งต้องมีทนายออกมาอธิบายแน่ว่าทำไมของที่มีทั้ง USB C และแบตเตอรี่แบบชาร์จได้ ถึงยังถูกจัดว่าเป็น "ใช้แล้วทิ้ง"
    ที่จริงเหตุผลที่มันถูกทำมาในรูปแบบนี้ ก็เพื่อให้สามารถอ้างได้ว่าในทางเทคนิคมันใช้ซ้ำได้ จึงยังขายได้ในพื้นที่ที่ห้ามบุหรี่ไฟฟ้าแบบใช้แล้วทิ้ง
    มันคือรูปแบบการขายที่จงใจอาศัยพฤติกรรมของผู้ใช้บางส่วนที่ซื้อซ้ำและทิ้งอยู่เรื่อย ๆ

    • ผมไม่เข้าใจเลยว่าทำไมต้องซื้อแบบใช้แล้วทิ้ง ทั้งที่ก็มีบุหรี่ไฟฟ้าแบบใช้ซ้ำได้เต็มรูปแบบอยู่แล้ว พูดตรง ๆ ผมคิดว่ามันมีประโยชน์แค่ในฐานะเครื่องมือช่วยเลิกบุหรี่เท่านั้น

    • มันก็เหมือนกับกฎควบคุมถุงพลาสติกที่ทำให้มีการขายถุงที่หนาขึ้นในราคา 10 เซ็นต์ เพราะอย่างน้อยก็อ้างได้ว่าเป็นแบบ "ใช้ซ้ำได้"

    • บางรุ่นมีพ็อด/แทงก์ที่เปลี่ยนได้ แต่ส่วนใหญ่ไม่มีชิ้นส่วนใดเลยที่ผู้ใช้จะซ่อมหรือปรับแต่งได้เอง พอน้ำยาลดลงถึงระดับหนึ่ง คอยล์ก็จะเริ่มไหม้ แล้วสุดท้ายก็ต้องทิ้งทั้งชิ้น มีร้านบางแห่งบอกว่ารับคืนของใช้แล้วไปแยกชิ้นส่วนและจัดการอย่างเหมาะสม แต่ผู้ใช้ส่วนใหญ่ก็น่าจะทิ้งลงขยะทั่วไปเฉย ๆ

    • เหตุผลที่มี USB C ก็เพราะแบตเตอรี่ให้ความจุไม่พอกับปริมาณน้ำยาที่บรรจุมา สุดท้ายเลยต้องชาร์จได้ราว 2~3 ครั้งก่อนที่น้ำยาจะหมด

  • บุหรี่ไฟฟ้าแบบใช้แล้วทิ้งเป็นสิ่งที่ผมไม่เข้าใจเลยว่าสังคมทำให้มันกลายเป็นเรื่องปกติได้อย่างไร

    • สังคมมักมีแนวโน้มจะยอมรับสิ่งที่มีงบโฆษณาให้เป็นเรื่องปกติ

    • และยังมีข้อเท็จจริงที่มองข้ามไม่ได้ว่า มันสามารถทำลายปอดของคนได้อย่างหนักในเวลาอันสั้นมาก

  • ของเตรียมรับวันสิ้นโลก: กระสุน อาหารกระป๋อง น้ำดื่ม? ไม่ใช่
    แต่คือ geek bar 1,200 ชิ้นที่เก็บไว้ในกรงฟาราเดย์

  • ขอสดุดีการแฮ็ก! ผมคิดว่านี่แหละคือสิ่งที่ Hacker News มีไว้เพื่อ บทความยอดเยี่ยมและโปรเจกต์สนุกมาก

  • สถานะของเทคโนโลยีทุกวันนี้ช่างประหลาดจริง ๆ AI ไม่ได้มาแทนที่งานของเรา แต่มาวาดรูปให้เรา แล้วตอนนี้เรายังโฮสต์เว็บไซต์บน eCigarette กันอีก คำเดียวที่อธิบายสถานการณ์นี้ได้คือ "ประหลาด"

  • เรียกได้ว่าผู้เขียนได้พบแพลตฟอร์มคอมพิวติ้งขั้นสุดยอดสำหรับรัน "vaporware" ในความหมายที่แท้จริงแล้ว