Hầu hết các ứng dụng đo lường là một công cụ duy nhất kèm theo màn hình: máy đo mức âm thanh, la bàn, máy đo ánh sáng. Bạn mở ứng dụng lên, đọc một con số, rồi đóng lại. Con số đó biến mất ngay khi bạn tắt ứng dụng.
Sentio được xây dựng theo cách ngược lại. Nó giả định rằng con số thu được rất đáng để lưu giữ, rằng nó thuộc về một điều gì đó trong cuộc sống của bạn, và ý nghĩa của nó thường đến từ việc so sánh hơn là từ chính kết quả đọc được. Giả định đó tạo ra ba khái niệm — công cụ, vật thể và hoạt động — và một khi bạn đã nắm rõ ba khái niệm này, toàn bộ ứng dụng sẽ được sáng tỏ.
Công cụ: một đơn vị kết quả đo
Một công cụ là một cách để đặt câu hỏi cho thế giới vật lý bằng phần cứng trong túi của bạn. Gõ vào một quả trái cây và ghi lại quá trình ring-down. Hướng camera lên và đọc màu sắc của một bức tường. Chiếu đèn pin vào một bề mặt và đo lượng ánh sáng phản xạ lại. Phát một âm quét (sweep) qua loa và lắng nghe căn phòng tác động thế nào lên âm thanh đó.
Hiện tại có hai mươi sáu công cụ như vậy, và chúng được chia thành bốn nhóm với mức độ yêu cầu ngày càng cao đối với thế giới xung quanh bạn:
- Công cụ đơn cảm biến. Điện thoại chỉ nghe hoặc chỉ nhìn. Phổ âm thanh từ micrô, kết quả đo ánh sáng từ camera, dấu hiệu rung từ cảm biến gia tốc. Không cần thêm bất kỳ điều kiện nào khác về căn phòng.
- Công cụ hỗn hợp. Hai cảm biến kết hợp thành một kết quả đo — đèn LED chiếu sáng một bề mặt trong khi camera đo lượng ánh sáng phản xạ lại, đây chính là cách hoạt động của phép đo hệ số phản xạ và độ bán trong suốt.
- Công cụ chủ động. Điện thoại ngừng quan sát và bắt đầu kích thích: mô-tơ rung kích hoạt một vật thể trong khi cảm biến gia tốc và micrô ghi lại phản hồi của nó. Điện thoại vừa là búa vừa là tai.
- Công cụ tỷ lệ tham chiếu. Hai lần thu nhận được so sánh với nhau — âm thanh truyền qua tường so với chính âm thanh đó trong phòng, ánh sáng đi qua kính so với chính ánh sáng đó khi không bị cản trở. Những công cụ này cần một vật đóng vai trò là nguồn phát: bất kỳ chiếc loa, màn hình, đèn nào, hoặc một chiếc điện thoại thứ hai.
Yêu cầu cuối cùng đó là một đặc tính cốt lõi của mọi công cụ chứ không phải là một dòng chú thích nhỏ trong hướng dẫn sử dụng, vì vậy tab Công cụ có thể lọc theo yêu cầu này: hiển thị những gì tôi có thể làm ngay bây giờ, một mình, không cần gì ngoài chiếc điện thoại này — hoặc hiển thị mọi thứ, vì tôi có một chiếc điện thoại thứ hai trên bàn.
Một ví dụ thực tế: mặt bàn này có đặc không?
Bạn đang ở trong một cửa hàng, trước một mặt quầy được giới thiệu là làm bằng đá. Hãy mở tính năng kiểm tra gõ đối với vật liệu, giữ điện thoại cách bề mặt khoảng một khoảng bằng chiều rộng bàn tay, và dùng khớp ngón tay gõ mạnh ba lần. Mỗi lần gõ mất khoảng năm mươi mili giây để phát ra âm thanh. Ứng dụng sẽ tìm điểm bắt đầu của từng lần gõ, tách biệt phần quá trình tắt dần âm, và báo cáo hai con số: tần số cộng hưởng trội và tốc độ tắt dần của âm thanh.
Đá đặc phát ra âm vang cao và tắt dần chậm. Tấm laminate phủ trên gỗ dăm phát ra âm trầm hơn và tắt dần nhanh. Tường thạch cao rỗng hầu như không vang. Bạn không hẳn là đọc kết luận từ màn hình mà là đọc sự khác biệt giữa mặt quầy trước mặt bạn và một mặt quầy khác cách đó ba lối đi — việc này chỉ mất thêm hai mươi giây và chính sự so sánh này mới thực sự trả lời cho câu hỏi.
Ví dụ thứ hai: tủ lạnh có đang hoạt động tệ đi không?
Tủ lạnh của bạn bắt đầu phát ra tiếng ồn. Hãy mở công cụ phổ âm thanh, giữ điện thoại cách máy nén khoảng một foot, ghi âm trong năm giây. Bạn sẽ nhận được dấu vân tay tần số: nơi năng lượng tập trung, những bồi âm nào nổi bật, độ lớn của các đỉnh âm so với nền nhiễu.
Bản thân kết quả đó chỉ là một bức ảnh chứ không phải là một chẩn đoán. Giá trị của nó là bạn có thể ghi lại cùng một khoảng thời gian năm giây đó vào tháng sau, tại cùng một vị trí, rồi đặt hai kết quả đè lên nhau. Một đỉnh âm mới xuất hiện ở mức gấp ba lần tần số hoạt động của máy nén mà không hề có vào tháng Tám là một phát hiện thực tế về tủ lạnh của bạn. Còn một con số tuyệt đối tính bằng decibel thì không.
Vật thể: kết quả đo là về cái gì
Đây là phần giúp ví dụ về chiếc tủ lạnh khả thi, và đó là khái niệm mà hầu hết các ứng dụng đo lường đều bỏ qua.
Sentio lưu giữ một danh mục các thứ bạn đo, được phân cấp sâu bốn tầng: một danh mục (Thiết bị gia dụng) chứa một vật thể (tủ lạnh nhà bếp), vật thể này chứa một kịch bản — một trường hợp sử dụng, chẳng hạn như "tiếng ồn máy nén, phía trước bên trái, 30 cm" — kịch bản này lại chứa chính các kết quả đo. Một kịch bản sẽ đi kèm với công cụ mặc định của nó, vì vậy việc thực hiện lại một phép đo sau đó một tháng chỉ cần một lần chạm, và nó sẽ lặp lại chính xác thiết lập cũ chứ không phải là một thiết lập gần đúng.
Bạn không cần phải phân loại bất kỳ thứ gì ngay từ đầu. Một lần thu nhận có thể được lưu dưới dạng chưa phân loại và gắn vào một vật thể sau đó, đây thường là những gì diễn ra trong cửa hàng: đo trước, xác định nó là gì sau.
Mỗi kết quả đo cũng có thể được gắn nhãn thực tế khách quan sau khi thực hiện xong. Bạn đã gõ vào quả dưa vào thứ Ba; bạn bổ nó ra vào thứ Bảy; nhãn sẽ được gắn vào kết quả đo của ngày thứ Ba, giúp biến một bản ghi âm thành một ví dụ huấn luyện từ một quả dưa thật trên một chiếc điện thoại thật. Vòng lặp đó là có chủ ý: các bộ phân loại trở nên tốt hơn vì mọi người đã sử dụng các công cụ, chứ không phải trước đó.
Tại sao danh mục lại là phần trung thực nhất của sản phẩm: điện thoại không thể cho bạn biết một mặt bàn có phải là đá hoa cương hay không, và bất kỳ ứng dụng nào tuyên bố ngược lại đều đang đoán mò và bạn phải chịu thiệt. Điều mà điện thoại thực sự làm tốt là cho bạn biết bề mặt này khác với bề mặt kia, hoặc chiếc máy này khác với chính nó trong quá khứ. Việc so sánh cần một nơi để lưu giữ quá khứ — nơi đó chính là vật thể.
Hoạt động: vài công cụ, một công việc
Một số câu hỏi không thể gói gọn trong một kết quả đo duy nhất. "Bức tường phòng ngủ của tôi có đủ dày để chặn tiếng tivi nhà hàng xóm không?" cần một lần thu nhận tham chiếu và một lần thu nhận truyền qua. "Tôi có nên đi kiểm tra thính lực không?" cần một chuỗi các âm thanh ở các mức độ được kiểm soát, theo đúng thứ tự, và các kết quả được lưu giữ cùng nhau. "Đây là vật liệu gì?" sẽ đáng tin cậy hơn khi cả ba lần gõ đều cho kết quả thống nhất so với khi chỉ có một lần gõ tỏ ra chắc chắn.
Một hoạt động là một quy trình có hướng dẫn liên kết các công cụ với nhau để thực hiện một công việc. Quy trình này dẫn dắt bạn qua các bước, cho bạn biết điều kiện cần đáp ứng trước mỗi lần thu nhận, và — đây là phần đáng nhấn mạnh — từ chối đưa ra câu trả lời khi các lần thu nhận không thống nhất với nhau. Một hoạt động chỉ biết nhún vai rồi lấy trung bình các dữ liệu mâu thuẫn còn tệ hơn là không có hoạt động nào, bởi vì nó biến sự không chắc chắn thành một con số trông có vẻ đáng tin.
Các phiên hoạt động được thiết kế để chỉ tồn tại tạm thời. Bạn thực hiện một phiên, nhận được câu trả lời, và không có gì được ghi vào danh mục cho đến khi bạn nhấn "Lưu vào Vật thể" — tại thời điểm đó, ứng dụng sẽ ghi lại các kết quả đo thông thường, được lưu dưới các vật thể thông thường, không khác gì những kết quả bạn tự đo bằng tay. Không có loại dữ liệu song song thứ hai nào cả.
Hiện tại có bốn hoạt động. Đã từng có bảy: ba trong số đó hóa ra là các giao thức thu nhận hai lần bằng một cảm biến, và một quy trình không liên kết thứ gì thực chất chỉ là một công cụ đang ngụy trang, vì vậy chúng đã được chuyển thành các công cụ. Các khái niệm cần phải chứng minh được giá trị tồn tại của mình.
Một nền tảng, không phải một công cụ cố định
Số lượng công cụ ở đoạn thứ hai của phần này đã bị sai ba lần trong quá trình viết bài viết này, và đó chính là mấu chốt.
Một kết quả đo được lưu trữ dưới dạng một mã định danh công cụ cùng với một phần dữ liệu tính năng khép kín. Việc thêm một công cụ mới chỉ đơn giản là thêm một mục vào sổ đăng ký và phân tích để lấp đầy phần dữ liệu đó — đó không bao giờ là sự thay đổi trong cách lưu trữ kết quả đo, không bao giờ là một cuộc di chuyển dữ liệu, và không bao giờ là lý do khiến lịch sử hiện tại của bạn không thể đọc được nữa. Đó là một quyết định kiến trúc có chủ ý, và đó là điều giúp cho lời hứa "danh sách cảm biến sẽ liên tục mở rộng" là một cam kết thực sự chứ không phải là một chiêu trò tiếp thị.
Vì vậy, mô tả trung thực nhất về ứng dụng không phải là "máy đo ánh sáng và máy đo âm thanh trong cùng một lần tải xuống". Đó là một nền tảng để đo lường các giá trị vật lý bằng các cảm biến bạn đã có sẵn, lưu trữ chúng gắn liền với các vật thể mà chúng mô tả, và theo dõi sự thay đổi của chúng theo thời gian. Các công cụ mới sẽ xuất hiện; các bản ghi âm tủ lạnh của bạn từ năm ngoái vẫn xếp hàng ngay ngắn bên cạnh các bản ghi của năm nay. Thiết bị đo ngày một tốt hơn trong khi lịch sử của bạn vẫn được bảo toàn nguyên vẹn.
Và tất cả đều chạy trực tiếp trên thiết bị. Quá trình phân tích mất chưa đầy một giây, kết nối mạng là không bắt buộc, và không có gì rời khỏi điện thoại trừ khi bạn đăng nhập và nhấn đồng bộ hóa. Một nền tảng kết quả đo ngừng hoạt động trong tầng hầm, nhà kho hoặc trên cánh đồng thì không thể đo lường thế giới thực mà bạn đang sống.
Bắt đầu từ đâu
Nếu bạn muốn biết tổng quan về những gì cảm biến có thể và không thể làm, hãy đọc bài viết điện thoại thực sự có thể đo được những gì, và sau đó là sự so sánh trung thực với các thiết bị chuyên dụng. Nếu bạn chỉ muốn dùng thử ngay, ứng dụng web sẽ ghi lại một phổ âm thanh thực tế ngay trong trình duyệt của bạn mà hoàn toàn không cần tài khoản — chỉ cần hướng nó về phía thứ gì đó đang phát ra tiếng ù.