Nhảy tới nội dung

2024-08-03

Chúng tôi đã hết cột

  • Jimmy Miller's "Chúng tôi hết cột" mô tả công việc phần mềm đầu tiên của anh ấy với mã nguồn hỗn loạn nhưng hấp dẫn, nhấn mạnh một bảng cơ sở dữ liệu có tên là Merchants đã hết cột, dẫn đến việc tạo ra Merchants2.
  • Codebase là sự kết hợp của VB, C#, các framework JavaScript khác nhau và nhiều dịch vụ SOAP, với những vấn đề đáng chú ý như việc một lập trình viên không kiểm tra mã, gây ra các lỗi khó truy vết.
  • Mặc dù có sự lộn xộn, mã nguồn cho phép giải quyết vấn đề một cách sáng tạo, với các nhà phát triển tự tạo ra các giải pháp của riêng mình, dẫn đến một hệ thống tách rời và một kết nối độc đáo, trực tiếp với người dùng.

phản ứng

  • Nhà phát triển đã chia sẻ kinh nghiệm của họ với một mã nguồn không có tổ chức tại công ty đầu tiên của họ, nơi thiếu kiểm soát phiên bản và có nhiều biến toàn cục.
  • Bugs đã được sửa bằng cách cài đặt Visual Studio tại các trang khách hàng và chạy ứng dụng ở chế độ gỡ lỗi, dẫn đến nhiều phiên bản có tên không nhất quán được lưu trữ trên một đĩa chia sẻ.
  • Cuối cùng, nhà phát triển đã giới thiệu các thực hành hiện đại như git, Linux và Tích hợp Liên tục (CI) cho các dự án mới, nhưng dự án cũ vẫn không thay đổi, làm nổi bật những thách thức trong việc cải thiện các mã nguồn không hiệu quả.

p5.js

  • Thư viện p5.js cung cấp một loạt các ví dụ và bản phác thảo từ cộng đồng để giúp người dùng học hỏi và khám phá các khả năng của nó.
  • Những dự án đáng chú ý bao gồm Geodata Weaving, Slime Molds, Generative Succulents, Padrão Geométrico, Zen Pots, và Glitch animation, thể hiện tính đa dạng của thư viện.
  • Người dùng có thể hỗ trợ thư viện p5.js thông qua việc quyên góp hoặc tải xuống để sử dụng cho mục đích cá nhân.

phản ứng

  • p5.js đã nhận được khoản tài trợ €450k từ Quỹ Công nghệ Chủ quyền vào năm 2023 để cải thiện tài liệu và khả năng truy cập của nó, dẫn đến một trang web mới, thân thiện với người dùng.
  • Người dùng đánh giá cao p5.js vì tính thân thiện với người mới bắt đầu nhưng lưu ý rằng hiệu suất của nó có hạn chế so với các thư viện như d3 hoặc three.js.
  • Trang web mới đã được đón nhận tích cực, mặc dù một số người dùng nhớ đến nguồn gốc của p5.js từ dự án Processing, dự án này đã phải đối mặt với sự chỉ trích về phân bổ ngân sách.

Tauri 2.0 Ứng viên phát hành

  • Phiên bản Tauri 2.0 Release Candidate đã được công bố, với phiên bản ổn định dự kiến sẽ ra mắt vào cuối tháng 8, tập trung vào việc hoàn thiện tài liệu và sửa các lỗi nghiêm trọng.
  • Tauri 2.0 giới thiệu hỗ trợ nền tảng cho phát triển di động, mặc dù chưa đạt được sự tương đồng về tính năng với phiên bản trên máy tính để bàn, và bao gồm các thay đổi phá vỡ như một không gian tên cố định cho các plugin cốt lõi và một cải tổ API Rust.
  • Cuộc kiểm toán bảo mật bên ngoài đã được hoàn thành với tất cả các vấn đề đã được khắc phục, và báo cáo đầy đủ sẽ được công bố sớm; cộng đồng được khuyến khích đóng góp vào việc tài liệu hóa và giải quyết vấn đề.

phản ứng

  • Tauri 2.0 Release Candidate đã được công bố, gây ra nhiều cuộc thảo luận đáng kể giữa người dùng về các tính năng và những cải tiến tiềm năng của nó.
  • Tauri là một khung làm việc để tạo ra các tệp nhị phân nhỏ, nhanh cho các nền tảng chính sử dụng các khung giao diện người dùng biên dịch thành HTML, JavaScript và CSS, với logic backend bằng các ngôn ngữ như Rust, Swift và Kotlin.
  • Người dùng so sánh Tauri với Electron, lưu ý rằng Tauri có dấu chân nhẹ hơn và tích hợp gốc, đồng thời thảo luận về trọng tâm bảo mật, giao diện người dùng đa nền tảng và các thách thức như vấn đề thành phần web trên Linux và nhu cầu cải thiện tài liệu.

Trong tương lai của kdb+?

  • kdb+ là một công nghệ mạnh mẽ để lưu trữ và phân tích dữ liệu thị trường lịch sử, nhưng các lựa chọn thay thế như Clickhouse, QuestDB, Bigquery và Redshift hiện nay cũng cạnh tranh về tốc độ.
  • Đối với phân tích định lượng địa phương, Python với DuckDB, Polars, hoặc PyKX được ưa chuộng do tính khả dụng và hiệu quả về chi phí.
  • Khả năng phát trực tuyến thời gian thực và tính toán phân tán của kdb+ đang bị sử dụng chưa hết, trong khi các công nghệ như Kafka và Flink đang ngày càng trở nên phổ biến hơn.

phản ứng

  • Cuộc thảo luận xoay quanh tương lai của kdb+, một cơ sở dữ liệu chuỗi thời gian hiệu suất cao, và những người kế nhiệm tiềm năng của nó.
  • Những lựa chọn thay thế như TimeScale (một phần mở rộng của PostgreSQL), DuckDB và ClickHouse được nhấn mạnh về hiệu suất và tính kinh tế.
  • Việc kdb+ có tính độc quyền và chi phí cao là những nhược điểm lớn, khiến một số người cân nhắc các giải pháp mã nguồn mở như Python với DuckDB và Polars cho phân tích chuỗi thời gian.

Hanon Pro – kỹ thuật piano và bài tập cho thời đại kỹ thuật số

  • Hanon Pro là một ứng dụng luyện tập piano hiện đại dành cho iPhone, iPad và Mac, cung cấp các tính năng như theo dõi tiến độ, phản hồi và xây dựng thói quen luyện tập.
  • Chức năng nâng cao bao gồm phân tích hiệu suất, lật trang tự động và các tính năng tương tác khi kết nối với bàn phím MIDI qua Bluetooth hoặc USB.
  • Ứng dụng hỗ trợ đồng bộ iCloud, nhắc nhở luyện tập hàng ngày, và thành tựu, được xây dựng bằng SwiftUI và Core MIDI, tương thích với iOS 17.

phản ứng

  • Hanon Pro là một ứng dụng kỹ thuật piano cung cấp các bài tập và phản hồi, được thiết kế cho thời đại kỹ thuật số.
  • Người dùng đã báo cáo về việc ứng dụng bị sập khi sử dụng bộ điều khiển MIDI và bày tỏ mong muốn có tính năng phát lại MIDI cũng như các tùy chọn luyện tập linh hoạt hơn.
  • Ứng dụng yêu cầu iOS 17+, gây ra sự thất vọng cho người dùng với các thiết bị cũ hơn, và các đề xuất cải thiện bao gồm tương thích tốt hơn với thiết bị và các tính năng bổ sung như theo dõi tiến độ và tải lên điểm số tùy chỉnh.

Lisp với GC trong 436 Byte

  • SectorLISP hiện bao gồm thu gom rác, tích hợp một ngôn ngữ lập trình cấp cao có thu gom rác vào khu vực khởi động 512 byte của đĩa mềm, chỉ sử dụng 436 byte.
  • Điều này làm cho LISP trở thành ngôn ngữ lập trình nhỏ nhất, vượt qua FORTH và BASIC, và nó tương thích với tất cả các mẫu PC từ năm 1981 với ít nhất 64kb RAM.
  • Đề án này thể hiện sự tối ưu hóa đáng kể, giảm thiểu việc triển khai assembly i8086 thêm một trăm byte nữa, và bao gồm một bộ thu gom rác 40 byte, với các tệp nhị phân và mã nguồn có sẵn trên GitHub.

phản ứng

  • Trình thông dịch Lisp với thu gom rác (GC) đã được triển khai chỉ trong 436 byte, thể hiện một kỳ tích ấn tượng về sự tối giản trong lập trình.
  • Đề án, được lưu trữ trên justine.lol, đã thu hút sự chú ý và ngưỡng mộ đáng kể nhờ thiết kế nhỏ gọn và hiệu quả, tham khảo các công trình trước đó và cung cấp những hiểu biết giáo dục.
  • Những cuộc thảo luận làm nổi bật sự cân bằng giữa việc tạo ra một trình thông dịch tối giản và duy trì chức năng của một ngôn ngữ Lisp "thực sự", khơi dậy các cuộc tranh luận về bản chất của các ngôn ngữ lập trình như Brainfuck và các ứng dụng thực tế của chúng.

Đã tạo một phiên bản mở rộng của Vimtutor – Giới thiệu Vimtutor Sequel

  • "Vimtutor Sequel" cung cấp các bài học nâng cao về Vim, bao gồm các lệnh, kỹ thuật, hướng dẫn từng bước và các bài tập tương tác.
  • Việc cài đặt có thể được thực hiện thông qua Homebrew hoặc bằng cách sao chép kho lưu trữ từ GitHub, với hướng dẫn chi tiết được cung cấp cho cả hai phương pháp.
  • Phần mềm này được cấp phép theo Giấy phép MIT, và các đóng góp được hoan nghênh theo hướng dẫn trong tệp CONTRIBUTING.md.

phản ứng

  • Vimtutor Sequel là phiên bản mở rộng của Vimtutor gốc, nhắm đến những người dùng đã quen thuộc với các lệnh cơ bản của Vim và muốn học các tính năng nâng cao.
  • Những tính năng chính bao gồm các hướng dẫn về chia tách, kiểm tra chính tả, tìm kiếm và thay thế nâng cao, macro, lập trình Vim, plugin, phiên làm việc, và các thanh ghi, cùng với cấu hình vimrc tùy chỉnh để mang lại trải nghiệm học tập nhất quán.
  • Đã cung cấp hướng dẫn cài đặt cho Mac, Windows và Linux, và người tạo đang tìm kiếm phản hồi và đóng góp thông qua kho lưu trữ GitHub.

1991 Triển khai WWW-NeXT

  • Kho lưu trữ GitHub này phản ánh ứng dụng WorldWideWeb gốc của Tim Berners-Lee cho NeXT, trưng bày nguyên mẫu đầu tiên của trình duyệt/chỉnh sửa Hypertext.
  • Ứng dụng cho phép truy cập vào các máy chủ Hypertext, tệp tin và tin tức, cung cấp cái nhìn thoáng qua về chức năng của web thời kỳ đầu.
  • Kho lưu trữ bao gồm một nhật ký thay đổi lịch sử, với các ngày cam kết được lùi lại đến ngày sửa đổi cuối cùng cho mỗi tệp, bảo tồn dòng thời gian ban đầu.

phản ứng

  • Phiên bản WWW-NeXT năm 1991 đã được đưa lên GitHub, thu hút sự quan tâm của những người đam mê công nghệ và các nhà khảo cổ học kỹ thuật số.
  • Phiên bản này làm nổi bật tính chất đồ họa ban đầu của web, tương phản với các trình duyệt dựa trên văn bản phổ biến hơn vào thời điểm đó.
  • Đề án này trình bày việc sử dụng Objective-C và NeXTStep, nhấn mạnh khả năng phát triển ứng dụng nhanh chóng, điều đã rất quan trọng đối với trình duyệt/web editor ban đầu của Tim Berners-Lee.

Nhà nghiên cứu phát triển phương pháp điều trị có thể tiêu diệt tế bào glioblastoma trong đường dẫn não

  • Nhà nghiên cứu từ Đại học McMaster và các tổ chức khác đã xác định được một con đường mới trong não được sử dụng bởi các tế bào u nguyên bào thần kinh đệm và phát triển một liệu pháp đầy hứa hẹn để chặn và tiêu diệt các khối u này.
  • Nghiên cứu, được công bố trên tạp chí Nature Medicine vào ngày 2 tháng 8 năm 2024, cho thấy rằng việc nhắm mục tiêu vào con đường này bằng tế bào CAR T và một loại thuốc đã cải thiện đáng kể sự sống sót trong các mô hình tiền lâm sàng.
  • Liệu pháp, tập trung vào protein ROBO1, đã tăng gấp đôi thời gian sống sót trong ba mô hình ung thư và tiêu diệt khối u trong 50% trường hợp đối với hai loại bệnh, mang lại hy vọng cho glioblastoma và các loại ung thư não xâm lấn khác.

phản ứng

  • Những nhà nghiên cứu đã phát triển một phương pháp điều trị mới có thể tiêu diệt các tế bào u nguyên bào thần kinh đệm, một loại ung thư não rất hung hãn với tỷ lệ sống sót thấp trong lịch sử.
  • Tiến sĩ Richard Scolyer, người đang tự điều trị bệnh glioblastoma của mình, đã cho thấy kết quả đầy hứa hẹn với việc không tái phát trong hơn một năm, nhấn mạnh tiềm năng của phương pháp mới này.
  • Cuộc thảo luận nhấn mạnh sự phức tạp và thách thức trong việc điều trị ung thư, lưu ý rằng mặc dù liệu pháp miễn dịch hiệu quả đối với một số loại ung thư, nhưng không phải tất cả các khối u đều đáp ứng, và các phương pháp điều trị thay thế như liệu pháp ketogenic vẫn còn đang được tranh luận.

Những Nhiệm Vụ I/O Thông Thường Trong Java Hiện Đại

  • Trong bài viết của Cay Horstmann, tác giả thảo luận về các tác vụ I/O phổ biến trong Java, đặc biệt là cho các ứng dụng web, như đọc/ghi tệp văn bản, xử lý JSON và làm việc với tệp ZIP.
  • Điều này nêu bật các cải tiến API kể từ Java 8, bao gồm UTF-8 là mã hóa mặc định từ Java 18 và các cải tiến cho các lớp java.nio.file.Filesjava.io.InputStream.
  • Bài viết cung cấp các ví dụ mã thực tế về việc đọc và ghi tệp văn bản, xử lý luồng đầu vào, và làm việc với thư mục và tệp ZIP, nhấn mạnh việc sử dụng các phương thức hiện đại của Files thay vì lớp File cũ.

phản ứng

  • Thảo luận tập trung vào những điểm kỳ quặc và vấn đề với các lớp URLURI của Java, đặc biệt là xung quanh việc kiểm tra tính bình đẳng và phân giải DNS.
  • Nhấn mạnh sự phát triển của Java I/O từ java.io.File đến java.nio.file.Path, nhấn mạnh I/O không chặn và sự trừu tượng hóa tốt hơn.
  • Đề cập đến lời khuyên thực tế và những cạm bẫy phổ biến khi sử dụng các API I/O của Java, chẳng hạn như xử lý ngoại lệ trong các luồng và việc sử dụng var.

Thẩm phán đình chỉ quy tắc khôi phục tính trung lập mạng của FCC

phản ứng

  • Thẩm phán đã đình chỉ quy tắc khôi phục tính trung lập mạng của FCC, làm leo thang các xung đột pháp lý xung quanh tính trung lập mạng.
  • Việc đình chỉ này diễn ra sau một quyết định của Tòa án Tối cao làm giảm quyền lực quản lý liên bang, dẫn đến một môi trường quản lý biến động.
  • Những người chỉ trích cho rằng sự bất ổn mang lại lợi ích cho các công ty đã thành lập và làm phức tạp hoạt động cho những người mới tham gia thị trường, đề xuất rằng Quốc hội nên giải quyết những vấn đề này thay vì để tòa án xử lý.

Thang máy không gian sử dụng lực từ để nâng lên quỹ đạo thấp của Trái Đất (2001) [pdf]

phản ứng

  • Hacker News đang thảo luận về một bài báo năm 2001 về thang máy không gian sử dụng từ trường để nâng lên quỹ đạo thấp của Trái Đất, gợi nhớ về những khái niệm tương tự trong tạp chí Popular Science.
  • Cuộc tranh luận bao gồm các thách thức kỹ thuật, bao gồm nhu cầu về các vật liệu tiên tiến như ống nano carbon và siêu dẫn nhiệt độ cao, cũng như rủi ro của việc đứt dây cáp.
  • Những lựa chọn thay thế như súng điện từ và vòng phóng được đề xuất, cùng với các cuộc thảo luận về tính khả thi kinh tế và thực tiễn của thang máy không gian, song song với những tiến bộ trong vật liệu siêu dẫn.

Một năm lệnh cấm tin tức của Meta ở Canada

  • Việc Meta cấm tin tức ở Canada, để đáp lại Dự luật C-18, đã dẫn đến sự sụt giảm 85% tương tác cho các hãng tin tức Canada trên Facebook và Instagram, dẫn đến sự giảm tổng thể 43% tương tác.
  • Khoảng 30% các cơ quan tin tức địa phương đã ngừng hoạt động trên mạng xã hội, và chỉ có 22% người Canada biết về lệnh cấm này.
  • Mặc dù có lệnh cấm, 36% người dùng vẫn tiếp cận nội dung tin tức thông qua các biện pháp lách luật, nhưng người Canada đang thấy ít hơn 11 triệu lượt xem tin tức mỗi ngày trên các nền tảng này, tiêu thụ ít tin tức hơn tổng thể và qua một lăng kính thiên vị hơn.

phản ứng

  • Việc cấm tin tức của Meta ở Canada, bị ảnh hưởng bởi các nhà vận động hành lang báo chí và các chính trị gia, yêu cầu các nền tảng phải trả tiền cho nội dung tin tức, dẫn đến việc Meta chặn các liên kết tin tức.
  • Những người chỉ trích cho rằng lệnh cấm gây hại cho các tổ chức tin tức bằng cách loại bỏ các liên kết mạng xã hội miễn phí có lợi, mặc dù nội dung tin tức vẫn xuất hiện thông qua các biện pháp lách luật như chụp màn hình.
  • Cuộc tranh luận đang diễn ra đặt câu hỏi liệu Meta có nên trả tiền cho nội dung tin tức hay không, với những lo ngại về việc giảm tiêu thụ tin tức, gia tăng thông tin thiên lệch và tác động đến doanh thu và sự tồn tại của các tổ chức tin tức.

Tiến tới việc chuyển đổi POSIX sang không gian người dùng – phần I: xử lý tín hiệu và IO

  • Redox OS đã nhận được khoản tài trợ NGI Zero để triển khai xử lý tín hiệu POSIX và quản lý tiến trình trong không gian người dùng, cho phép tập trung cải thiện kernel và các thành phần trong suốt một năm.
  • Những cải tiến trong định dạng gói của sơ đồ và các syscall mới (SYS_PREAD2 và SYS_PWRITE2) đã tăng hiệu suất sao chép của RedoxFS lên 63%, tương tự như hiệu quả của io_uring.
  • Đề án nhằm chuyển nhiều logic POSIX hơn sang không gian người dùng, với các cải tiến trong xử lý tín hiệu và kế hoạch tương lai để phát triển một trình quản lý tiến trình không gian người dùng và các cải tiến hạt nhân tiếp theo.

phản ứng

  • POSIX cho phép các mô tả tệp (FDs) được chia sẻ bởi nhiều tiến trình, điều này rất quan trọng đối với các hệ thống giống Unix và bảo mật định hướng khả năng, nhưng việc chia sẻ này có thể được chuyển sang không gian người dùng.
  • Con trỏ toàn cục trong FDs làm phức tạp việc truy cập đồng thời, đòi hỏi sự đồng bộ hóa, và trong khi API std::fs::File của Rust giải quyết điều này với các yêu cầu về tính biến đổi, các ngôn ngữ khác có thể gặp lỗi hoặc cần các API phức tạp.
  • Ứng dụng và lập trình hệ thống hiện đại đang phát triển để cân bằng thiết kế lịch sử của POSIX với nhu cầu về các giao diện mô-đun và an toàn hơn, sử dụng các công cụ như D-Bus và các không gian tên plan9 của Linux để cải thiện sự cô lập và bảo mật.

Chức Năng Đệ Quy Nguyên Thủy cho Một Lập Trình Viên Làm Việc

  • Đoạn văn nhấn mạnh tầm quan trọng của việc hiểu về tính đầy đủ Turing và các hàm đệ quy nguyên thủy, thường bị bỏ qua trong giáo dục khoa học máy tính.
  • Điều này nhấn mạnh rằng nhiều vấn đề thực tiễn có thể được triển khai trong các ngôn ngữ không hoàn chỉnh Turing, mang lại những lợi ích như tính xác định và bảo mật.
  • Cuộc thảo luận bao gồm sự khác biệt giữa Máy Trạng Thái Hữu Hạn, Máy Turing và Hàm Đệ Quy Nguyên Thủy, lưu ý rằng các Hàm Đệ Quy Nguyên Thủy luôn kết thúc và có thể tính toán nhiều hàm thực tiễn.

phản ứng

  • Đoạn bài viết khám phá các hàm đệ quy nguyên thủy và tầm quan trọng của chúng trong việc đảm bảo kết thúc mã, phù hợp với các nguyên tắc lập trình có cấu trúc.
  • Thảo luận về những hạn chế của tính hoàn chỉnh Turing và lợi ích của các ngôn ngữ như CUE và Dhall có thể đảm bảo sự kết thúc.
  • Cuộc trò chuyện đề cập đến những thách thức thực tế của việc chứng minh sự kết thúc của hàm và những tác động đối với các ngôn ngữ cấu hình, cân bằng giữa sức mạnh tính toán và an toàn.