3 คะแนน โดย GN⁺ 2023-11-16 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

เหตุผลที่ใช้ VBA คืออะไร?

เบื้องหลังการใช้งาน VBA

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

ความหลากหลายของการใช้ VBA

  • ในแผนกวิศวกรรมของบริษัทที่ทำงานอยู่ในปัจจุบัน สามารถเข้าถึงเทคโนโลยีที่หลากหลายได้ (แพลตฟอร์มระบบอัตโนมัติ)
  • มีการใช้ทั้ง PowerShell, Excel (VBA, OfficeJS, OfficeScripts, PowerQuery), PowerBI Desktop, SAP Analysis for Office, Power Platform, ArcGIS, MapInfo, InfoWorks ICM และเทคโนโลยีทั้งแบบ on-premises และคลาวด์อีกหลายอย่าง
  • มีฐานข้อมูลหลากหลายที่ IT เป็นผู้ดูแล ซึ่งรวมถึงข้อมูลปัญหาลูกค้า ข้อมูลสินทรัพย์ ข้อมูล telemetry ข้อมูลความเสี่ยง และข้อมูลการเงิน

การรับประกันการบำรุงรักษาของ VBA

  • ในช่วงทศวรรษ 2000 มีหลายระบบที่สร้างขึ้นบนฐานข้อมูล IBM Lotus Notes
  • ในปี 2019 Lotus Notes ถูกซื้อกิจการโดย HCL ทำให้ความมั่นคงระยะยาวของการสนับสนุนเริ่มสั่นคลอน
  • ทีมเทคโนโลยีพยายามย้ายระบบไปยังเทคโนโลยีใหม่ แต่โซลูชัน IBM BPM กลับไม่ได้รับการดูแลรักษาอย่างดี และยังมีฟังก์ชันไม่เพียงพอ
  • เมื่อ SME (ผู้เชี่ยวชาญเฉพาะด้าน) ใช้ VBA ก็สามารถควบคุมและบำรุงรักษาระบบได้ตามความต้องการ

การควบคุมด้วย VBA

  • ในโครงการสร้างระบบ IT ใหม่ ทีมเทคโนโลยีจำกัดการเข้าถึงโค้ด และบังคับให้ใช้ Microsoft PowerApps กับ Azure Pipelines
  • แม้ว่าผู้จัดการ/SME จะมีความรู้ด้านการพัฒนามากกว่า แต่ข้อกำหนดของทีมเทคโนโลยีก็เป็นสิ่งที่ยอมรับได้ยาก
  • SME สามารถปรับปรุงและดูแลระบบเดิมต่อไปได้ และมีความรู้ที่ยอดเยี่ยมเกี่ยวกับการทำงานร่วมกันระหว่างระบบต่าง ๆ

UX ของ VBA

  • วิศวกรส่วนใหญ่ใช้สเปรดชีตในการทำงาน และ VBA ก็ฝังอยู่ในสเปรดชีตเหล่านี้ ทำให้สามารถปรับปรุง UX ได้

บทสรุป

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

ความเห็นของ GN⁺

  • ประเด็นสำคัญที่สุดของบทความนี้คือ VBA ยังคงเป็นเทคโนโลยีจำเป็นในหลายองค์กร
  • ความยืดหยุ่น การรับประกันการบำรุงรักษา และความสามารถในการควบคุมที่ VBA มอบให้ เป็นข้อได้เปรียบที่เทคโนโลยีอื่นทดแทนได้ไม่ง่าย
  • บทความนี้มอบมุมมองที่น่าสนใจเกี่ยวกับความซับซ้อนของการเลือกเทคโนโลยี และการที่เทคโนโลยีถูกใช้งานจริงภายในองค์กร

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

 
GN⁺ 2023-11-16
ความคิดเห็นบน Hacker News
  • จากประสบการณ์ของวิศวกรซอฟต์แวร์คนหนึ่ง เขารู้สึกแปลกใจที่นักพัฒนามืออาชีพจำนวนมากยังใช้ Excel/VBA เป็นเครื่องมือเสริม ตัวอย่างเช่น โมเดล Excel ที่นักวิเคราะห์ข้อมูลของกองทุนเฮดจ์ฟันด์สร้างขึ้นมีโค้ด VBA อยู่ภายใน ซึ่งใช้ดึงข้อมูลจากฐานข้อมูล จัดวางลงในชีต สร้างสูตร และจัดรูปแบบ นักวิเคราะห์คนนั้นชื่นชม Excel และ VBA พร้อมระบุว่าถ้าทำงานด้วย Python เขาคงต้องอธิบายอยู่ตลอด
  • องค์กรต่าง ๆ มีสภาพแวดล้อมการพัฒนาอยู่ภายใน Excel และสามารถใช้งานได้โดยไม่ต้องมีการอนุมัติเป็นพิเศษ สามารถใช้ Excel และ Sharepoint เพื่อสร้างที่เก็บข้อมูลเครือข่ายและเว็บอินเทอร์เฟซได้
  • นักพัฒนาคนหนึ่งเล่าว่าเคยต้องพัฒนาอินเทอร์เฟซ CRUD ภายใน Excel ให้กับนักวิเคราะห์ โดยอธิบายว่าสถานการณ์นั้นทำให้ไม่มีทางเลือกอื่นนอกจากต้องใช้ VBA เนื่องจากข้อจำกัดจากฝ่าย IT
  • มีคำวิจารณ์ว่าฝ่าย IT ไม่ได้มีลักษณะมุ่งให้บริการ เพราะมีกระบวนการที่ซับซ้อนและมีปัญหาของตัวเอง พร้อมยกตัวอย่างว่า REST API ของ IBM BPM แทบไม่มีประโยชน์ต่อทีมเทคนิคและ SME เพื่อชี้ให้เห็นถึงความซับซ้อนของ IT
  • มีความเห็นว่า VBA เป็นทางออกของผู้ใช้ในการเลี่ยงฝ่าย IT ซึ่งแม้จะไม่สมบูรณ์แบบ แต่ก็ยังดีกว่าวิธีอื่น
  • มีประสบการณ์เล่าว่านักวิเคราะห์ข้อมูลเริ่มใช้ VBA หลังจากรู้สึกเบื่อกับงานที่ต้องทำซ้ำทุกวัน และได้ค้นพบปุ่ม "บันทึกมาโคร"
  • นักพัฒนาคนหนึ่งแบ่งปันประสบการณ์ว่าต้องพัฒนาแอปพลิเคชันด้วย VBA สำหรับบุคลากรที่ถูกส่งไปประจำการในอัฟกานิสถาน
  • มีมุมมองว่าสเปรดชีตยังคงมีประสิทธิภาพ แม้จะเป็นเทคโนโลยีเก่าในด้าน reactive functional programming ก็ตาม
  • มีความเห็นว่าจนกระทั่งไม่นานมานี้ ยังไม่มีทางเลือกที่ดีสำหรับ VBA และโมเดล "add-in" แบบใหม่คืออนาคต
  • ซอฟต์แวร์อย่าง Airtable อาจมาแทนที่ Excel VBA ได้ แต่ในสภาพแวดล้อมองค์กร Excel เป็นสิ่งที่จ่ายเงินไว้แล้วและถูกใช้งานอยู่ จึงยากที่จะซื้อซอฟต์แวร์ใหม่และหาเหตุผลมารองรับ
  • มีความกังวลว่าเมื่อต้องเข้าไปแทนที่โซลูชัน VBA ที่ผู้ใช้ฝั่งธุรกิจของลูกค้าสร้างขึ้น โซลูชันใหม่จะมีต้นทุนสูงและอาจให้ความสามารถได้ไม่เท่ากับของเดิม