13 คะแนน โดย xguru 2022-10-28 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

จุดเด่นคือการทำภาพและอธิบายเทรนด์ล่าสุดในด้านเทคนิค/เครื่องมือ/แพลตฟอร์ม/ภาษาและเฟรมเวิร์กสำหรับการพัฒนา ด้วย 4 ระดับ ได้แก่ Hold/Assess/Trial/Adopt

การทำให้แมชชีนเลิร์นนิงกลายเป็นกระแสหลัก

  • ML ครั้งหนึ่งเคยเป็นสิ่งที่มีเพียงผู้ที่มีเครื่องมือและทรัพยากรเท่านั้นที่ใช้งานได้ แต่ด้วยความสามารถของอุปกรณ์ที่เพิ่มขึ้นและการเกิดขึ้นของโอเพนซอร์ส ทำให้มันกำลังกลายเป็นกระแสหลัก (mainstreaming)
  • เทคโนโลยีอย่าง Federated ML ทำให้สามารถสร้างโมเดล ML ที่มอบความเป็นส่วนตัวให้กับข้อมูลอ่อนไหวได้
  • TinyML ทำให้โมเดลสามารถรันบนอุปกรณ์ที่มีทรัพยากรจำกัด และย้ายความสามารถในการอนุมานไปยัง Edge เพื่อปรับปรุงความปลอดภัยของข้อมูลอ่อนไหว
  • Feature Store มอบข้อดีคล้ายกับแพตเทิร์นการออกแบบ MVC ในการพัฒนาแอป โดยแยกปัญหาระหว่างการคัดสรรข้อมูล การฝึกโมเดล และการอนุมานออกจากกันอย่างชัดเจน
  • โมเดลแบบเปิดอย่าง Stable Diffusion ชี้ให้เห็นทั้งความสามารถอันน่าทึ่งของ ML และข้อกังวลเกี่ยวกับข้อมูลต้นทางและจริยธรรม
  • คอมโพเนนต์ ML เชื่อมต่อกันได้ง่ายกว่าที่เคย ทำให้สามารถสร้างประสบการณ์และโซลูชัน ML ที่หลากหลายผ่านโมเดลธุรกิจและโมเดลทั่วไปประสิทธิภาพสูงได้

พลังของ "Platform as a Product"

  • คำว่า 'แพลตฟอร์ม' ถูกใช้อย่างแพร่หลายมาก ไม่ว่าจะเป็นแพลตฟอร์มเชิงธุรกิจหรือเชิงโดเมน, โครงสร้างพื้นฐาน, หรือแพลตฟอร์มด้านประสบการณ์นักพัฒนา
  • โดยพื้นฐานแล้ว รากของปัญหาและความผิดหวังจำนวนมากที่องค์กรพบกับแพลตฟอร์ม มาจาก "การไม่ปฏิบัติต่อแพลตฟอร์มให้เหมาะสมในฐานะผลิตภัณฑ์"
    • ตัวอย่างเช่น แพลตฟอร์มสำหรับนักพัฒนามักขาดการวิจัยผู้ใช้หรือการวิเคราะห์บริบทในระดับที่เราคาดหวังจากผลิตภัณฑ์ประเภทอื่น
    • เจ้าของแพลตฟอร์มต้องตรวจสอบสมมติฐานเกี่ยวกับความต้องการของนักพัฒนา และตอบสนองต่อรูปแบบการใช้งานจริง
    • เช่นเดียวกับผลิตภัณฑ์ที่ดีอื่น ๆ แพลตฟอร์มก็ต้องการการสนับสนุนอย่างต่อเนื่อง ต้องพัฒนาและปรับตัวตามความต้องการที่เปลี่ยนแปลงของนักพัฒนา
  • อุปมา "Platform as a Product" จะมีประสิทธิภาพก็ต่อเมื่อถูกยอมรับอย่างเต็มที่ในฐานะการปฏิบัติ ไม่ใช่แค่ถ้อยคำ

ความเป็นเจ้าของข้อมูลย้ายไปที่ Edge

  • การรวมศูนย์ทุกรูปแบบเปิดโอกาสให้เกิดการบีบคั้น (constriction), คอขวด และการเปิดเผยข้อมูลโดยไม่จำเป็น
  • เทคโนโลยีซอฟต์แวร์/แอปพลิเคชันแบบ local-first ที่อิงกับ CRDT ซึ่งทำให้เกิดแอปพลิเคชันข้อมูลได้โดยไม่ต้องมีฐานข้อมูลรวมศูนย์ ทำให้เรากลับมาคิดเรื่องการสร้างข้อมูลแบบ P2P
  • การย้ายความเป็นเจ้าของข้อมูลไปยังเอดจ์ทำให้นักพัฒนาสามารถใช้ความสามารถที่ดีขึ้นบนอุปกรณ์แต่ละเครื่องได้
  • ตัวอย่างเช่น ฟังก์ชันจำนวนมากอย่างการจดจำใบหน้าสามารถประมวลผลบนเอดจ์เท่านั้น ทำให้เก็บข้อมูลไว้บนอุปกรณ์ได้ตลอดไป

มือถือก็ควรเป็นแบบ Modular เช่นกัน

  • เมื่อแอปมือถือเติบโตเต็มที่ ขนาดก็ใหญ่ขึ้นและมีบริการมากขึ้น จนเติบโตเป็นสิ่งที่เรียกกันว่า super app ซึ่งสามารถมองได้ว่าเป็นแพลตฟอร์มในตัวเอง
  • แม้แอปจะไม่ได้ใหญ่มาก แต่ถ้าเพิ่มฟีเจอร์ตลอดหลายปี ก็สามารถแยกย่อยเป็นโมดูลได้ และบริษัทต่าง ๆ ก็พบว่าแอปมือถือเองก็ได้รับประโยชน์จากการทำโมดูลาร์เช่นกัน
  • แอปที่แยกเป็นโมดูลสามารถพัฒนาโดยหลายทีมได้ จึงมีข้อดีมากมาย
  • อย่างไรก็ตาม ความซับซ้อนคือมันต้องถูกแจกจ่ายผ่าน app store ต้องรองรับทั้ง native iOS/Android และเวอร์ชันเว็บ และจำเป็นต้องมีการปรับเปลี่ยนรายละเอียดเล็กน้อยเพื่อรองรับแต่ละแบบ
  • แม้จะมีข้อดีเหล่านี้ การนำแนวทางแบบโมดูลาร์มาใช้ในการพัฒนามือถือยังคงมีความยากอยู่ แต่เราจะได้เห็นเฟรมเวิร์กที่ดีขึ้นเรื่อย ๆ

[ Techniques ]

Adopt

  1. Path-to-production mapping
  2. Team cognitive load
  3. Threat modeling

Trial

  1. BERT
  2. Component visual regression testing
  3. Design tokens
  4. Fake SMTP server to test mail-sending
  5. Federated machine learning
  6. Incremental developer platform
  7. Micro frontends for mobile
  8. Observability for CI/CD pipelines
  9. SLSA
  10. Software Bill of Materials

Assess

  1. Carbon efficiency as an architectural characteristic
  2. CUPID
  3. GitHub push protection
  4. Local-first application
  5. Metrics store
  6. Server-driven UI
  7. SLIs and SLOs as code
  8. Synthetic data for testing models
  9. TinyML
  10. Verifiable credentials

Hold

  1. Satellite workers without “remote native”
  2. SPA by default
  3. Superficial cloud native

[ Platforms ]

Adopt

  1. Backstage
  2. Delta Lake

Trial

  1. AWS Database Migration Service
  2. Colima
  3. Databricks Photon
  4. DataHub
  5. DataOps.live
  6. eBPF
  7. Feast
  8. Monte Carlo
  9. Retool
  10. Seldon Core
  11. Teleport
  12. VictoriaMetrics

Assess

  1. Bun
  2. Databricks Unity Catalog
  3. Dragonfly
  4. Edge Impulse
  5. GCP Vertex AI
  6. Gradient
  7. IAM Roles Anywhere
  8. Keptn
  9. OpenMetadata
  10. OrioleDB

[ Tools ]

Adopt

  1. Great Expectations
  2. k6

Trial

  1. Apache Superset
  2. AWS Backup Vault Lock
  3. AWS Control Tower
  4. Clumio Protect
  5. Cruft
  6. Excalidraw
  7. Hadolint
  8. Kaniko
  9. Kusto Query Language
  10. Spectral
  11. Styra Declarative Authorization Service
  12. xbar for build monitoring

Assess

  1. Clasp
  2. Databricks Overwatch
  3. dbtvault
  4. git-together
  5. Harness Cloud Cost Management
  6. Infracost
  7. Karpenter
  8. Mizu
  9. Soda Core
  10. Teller
  11. Xcode Cloud
    ##Hold
  12. Online services for formatting or parsing code

[ Languages and Frameworks ]

Adopt

  1. io-ts
  2. Kotest
  3. NestJS
  4. React Query
  5. Swift Package Manager
  6. Yjs

Trial

  1. Azure Bicep
  2. Camunda
  3. Gradle Kotlin DSL
  4. Jetpack Media3
  5. Ladle
  6. Moshi
  7. Svelte

Assess

  1. Aleph.js
  2. Astro
  3. BentoML
  4. Carbon Aware SDK
  5. Cloudscape
  6. Connect
  7. Cross device SDK
  8. Cypress Component Testing
  9. JobRunr
  10. Million
  11. Soketi
  12. Stable Diffusion
  13. Synthetic Data Vault

Hold

  1. Carbon

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

 
xguru 2022-10-28

Thoughtworks Radar ฉบับ 26
ThoughtWorks Radar ฉบับ 24
ตั้งแต่ฉบับ 24 เป็นต้นมา ตั้งใจว่าจะคัดแปลธีมหลักมาลงด้วย แต่ดันข้ามฉบับ 25 ไปซะแล้ว.. แง