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

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

ตลาดประหลาด: เศรษฐศาสตร์ของโอเพนซอร์สที่กำลังเปลี่ยนแปลง

  • เราเป็นแฟนของ "The Cathedral and the Bazaar" ของ Eric Raymond แต่เมื่อมีความพยายามทำเชิงพาณิชย์เข้ามา สถานการณ์ก็เปลี่ยนไปอย่างซับซ้อน
  • กรณีอย่าง ElasticSearch vs. OpenSearch หรือ Docker Desktop
  • ในทางกลับกัน Facebook สนับสนุนเงินทุนให้ Presto ในฐานะผลิตภัณฑ์โอเพนซอร์ส ทำให้ผู้ดูแลโครงการยังคงถือครอง IP และเมื่อพวกเขาออกจากบริษัทก็รีแบรนด์เป็น Trino จึงกล่าวได้ว่าเราได้รับประโยชน์จากการลงทุนของ Facebook
  • เมื่อมีโครงสร้างพื้นฐานสำคัญจำนวนมากขึ้นที่บริษัทต่างๆ ไม่ได้ให้ทุนสนับสนุน สถานการณ์ก็ยิ่งสับสนมากขึ้น
  • อย่างที่เห็นจากกรณี Log4j เรามักจะตระหนักได้ก็ต่อเมื่อเกิดบั๊กด้านความปลอดภัยสำคัญ ว่าเราพึ่งพาแรงงานที่ไม่ได้รับค่าจ้างของนักพัฒนาโอเพนซอร์สมากเพียงใด
  • ในบางกรณี การสนับสนุนเงินให้ผู้ดูแลโครงการสมัครเล่นผ่าน GitHub Sponsor หรือ Patreon ก็เป็นรางวัลที่มากพอจะสร้างความแตกต่างได้
  • สำหรับบางคน สิ่งนี้กลับทำให้รู้สึกเหมือนมีภาระความรับผิดชอบเพิ่มเข้ามาในงานประจำวัน จนนำไปสู่ภาวะหมดไฟ
  • เราสนับสนุนซอฟต์แวร์อย่างเต็มที่ แต่ก็รู้ว่าเศรษฐศาสตร์กำลังยิ่งแปลกขึ้นเรื่อยๆ และไม่มีทางออกง่ายๆ ในการหาสมดุลที่ถูกต้อง

นวัตกรรมด้านห่วงโซ่อุปทานซอฟต์แวร์

  • เหตุการณ์อย่างข้อมูลรั่วไหลของ Equifax, การโจมตี SolarWinds และช่องโหว่ Log4J เกิดจากการกำกับดูแลห่วงโซ่อุปทานที่หละหลวม
  • ตอนนี้ทีมต่างๆ เริ่มตระหนักแล้วว่า การตรวจสอบและจัดการ dependency ของโครงการต้องเป็นส่วนหนึ่งของแนวปฏิบัติทางวิศวกรรม
  • Supply chain Levels for Software Artifacts (SLSA)
  • CycloneDX : Bill of Materials สำหรับ Software / SaaS / Operations
  • Syft : เครื่องมือ CLI โอเพนซอร์สสำหรับสร้าง Software Bill of Materials
  • แฮกเกอร์กำลังอาศัยคุณลักษณะความไม่สมมาตรของการโจมตีและการป้องกันในด้านความปลอดภัยมากขึ้นเรื่อยๆ
  • ผู้โจมตีต้องหาช่องโหว่ให้เจอเพียงจุดเดียว แต่ผู้ป้องกันต้องปกป้องพื้นผิวการโจมตีทั้งหมด
  • ความพยายามในการยกระดับความปลอดภัยของซัพพลายเชนจึงมีความสำคัญต่อการปกป้องระบบให้ปลอดภัย

ทำไมนักพัฒนาจึงยังพัฒนา State Management ใน React กันต่อไป?

  • เมื่อเฟรมเวิร์กได้รับความนิยม ก็เป็นเรื่องปกติที่จะมีชุดเครื่องมือออกมาเพื่อแก้ข้อบกพร่อง และต่อมาก็รวมเครื่องมือที่ได้รับความนิยมเข้าด้วยกัน
  • แต่ React State Management ดูเหมือนจะไม่เป็นไปตามแนวโน้มทั่วไปนี้
  • นับตั้งแต่ Redux เปิดตัว ก็ยังมีเครื่องมือและเฟรมเวิร์กที่จัดการ state ในแนวทางที่แตกต่างออกมาอย่างต่อเนื่อง
  • ไม่แน่ใจว่าเหตุผลคืออะไร แต่ลองคาดเดาดูได้ว่า..
  • เป็นเพราะการแตกแขนงตามธรรมชาติที่ ecosystem ของ JavaScript ชื่นชอบหรือไม่?
  • เป็นข้อบกพร่องพื้นฐานของ React หรือไม่?
  • เป็นปัญหาที่สนุกและจัดการได้ง่าย เหมาะกับการทดลองของนักพัฒนาหรือไม่?
  • หรือเป็นเพราะความไม่สอดคล้องเชิงโครงสร้างที่คงอยู่เสมอ ระหว่างรูปแบบการอ่านเอกสาร (เว็บเบราว์เซอร์) กับการสร้าง interaction ของแอปพลิเคชันบนเอกสารเหล่านั้น?
  • แม้จะไม่รู้ว่าทำไมมันถึงยังออกมาเรื่อยๆ แต่เราก็ตั้งตารอความพยายามครั้งถัดไปในการแก้ปัญหาถาวรนี้

การผจญภัยที่ไม่สิ้นสุดของมาสเตอร์ดาต้าแคตตาล็อก

  • มีความพยายามอย่างต่อเนื่องในการรวบรวมและจัดหมวดหมู่ข้อมูลภายในองค์กร แต่ก็ทำได้ยากเพราะความซับซ้อน ความซ้ำซ้อน และความกำกวม
  • มีเครื่องมืออัจฉริยะอย่าง Collibra และ Datahub ปรากฏขึ้น
  • เครื่องมือเหล่านี้มอบแนวทางที่สอดคล้องกันสำหรับ data lineage และ metadata โดยรวม และสามารถขยายไปสู่ governance/management/publishing ได้
  • ขณะเดียวกันก็มีความเคลื่อนไหวที่มุ่งออกจากแนวทางรวมศูนย์นี้ ไปสู่การกำกับดูแลและการค้นหาแบบ federated บนสถาปัตยกรรม data mesh

[ Techniques ]

Adopt

  1. Four key metrics
  2. Single team remote wall

Trial

  1. Data mesh
  2. Definition of production readiness
  3. Documentation quadrants
  4. Rethinking remote standups
  5. Server-driven UI
  6. Software Bill of Materials
  7. Tactical forking
  8. Team cognitive load
  9. Transitional architecture

Assess

  1. CUPID
  2. Inclusive design
  3. Operator pattern for nonclustered resources
  4. Service mesh without sidecar
  5. SLSA
  6. The streaming data warehouse
  7. TinyML

Hold

  1. Azure Data Factory for orchestration
  2. Miscellaneous platform teams
  3. Production data in test environments
  4. SPA by default

[ Platforms ]

Trial

  1. Azure DevOps
  2. Azure Pipeline templates
  3. CircleCI
  4. Couchbase
  5. eBPF
  6. GitHub Actions
  7. GitLab CI/CD
  8. Google BigQuery ML
  9. Google Cloud Dataflow
  10. Reusable workflows in Github Actions
  11. Sealed Secrets
  12. VerneMQ

Assess

  1. actions-runner-controller
  2. Apache Iceberg
  3. Blueboat
  4. Cloudflare Pages
  5. Colima
  6. Collibra
  7. CycloneDX
  8. Embeddinghub
  9. Temporal

[ Tools ]

Adopt

  1. tfsec

Trial

  1. AKHQ
  2. cert-manager
  3. Cloud Carbon Footprint
  4. Conftest
  5. kube-score
  6. Lighthouse
  7. Metaflow
  8. Micrometer
  9. NUKE
  10. Pactflow
  11. Podman
  12. Sourcegraph
  13. Syft
  14. Volta
  15. Web Test Runner

Assess

  1. CDKTF
  2. Chrome Recorder panel
  3. Excalidraw
  4. GitHub Codespaces
  5. GoReleaser
  6. Grype
  7. Infracost
  8. jc
  9. skopeo
  10. SQLFluff
  11. Terraform Validator
  12. Typesense

[ Languages & Frameworks ]

Adopt

  1. SwiftUI
  2. Testcontainers

Trial

  1. Bob
  2. Flutter-Unity widget
  3. Kotest
  4. Swift Package Manager
  5. Vowpal Wabbit

Assess

  1. Android Gradle plugin - Kotlin DSL
  2. Azure Bicep
  3. Capacitor
  4. Java 17
  5. Jetpack Glance
  6. Jetpack Media3
  7. MistQL
  8. npm workspaces
  9. Remix
  10. ShedLock
  11. SpiceDB
  12. sqlc
  13. The Composable Architecture
  14. WebAssembly
  15. Zig

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

 
dodok8 2022-04-04

ผมสงสัยว่า <성당과 시장> คืออะไรเลยลองค้นดู ปรากฏว่าฉบับแปลแบบอีบุ๊กก็เปิดให้อ่านฟรีด้วยนะครับ เมื่อไม่นานมานี้ก็มีกรณีของ faker.js กับ color.js เหมือนกัน ดังนั้นประเด็นว่าโอเพนซอร์สจะหารายได้อย่างไร (และจะยั่งยืนได้อย่างไร) กำลังกลายเป็นเรื่องสำคัญมากขึ้นเรื่อย ๆ ในยุคนี้ที่พวกเราพึ่งพาระบบนิเวศโอเพนซอร์สกันอย่างมากแล้ว