1 คะแนน โดย GN⁺ 2024-07-05 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

การกำเนิดของ Jeffrey Snover และ PowerShell

  • การสำรวจองค์กรขนาดใหญ่

    • Jeffrey Snover เป็นสถาปนิกผู้สร้าง PowerShell ของ Microsoft
    • PowerShell เป็นเครื่องมือที่เปลี่ยนโฉมการดูแลระบบ Windows อย่างมาก
    • ในช่วงแรกมันได้รับการตอบรับอย่างกังขา แต่ด้วยความพยายามไม่ลดละของ Snover จึงประสบความสำเร็จ
  • ปัญหา

    • Microsoft ยังไม่เข้าใจตลาดเซิร์ฟเวอร์
    • ผู้บริหารที่คุ้นเคยกับคอมพิวเตอร์ส่วนบุคคลขาดประสบการณ์ในสภาพแวดล้อมองค์กร
    • Snover ถูกจ้างมาเพื่อแก้ปัญหานี้
  • การโน้มน้าวของ Jeffrey

    • Snover เข้าร่วมทีมเซิร์ฟเวอร์ของ Microsoft และพยายามทำให้ Windows สามารถแข่งขันกับ UNIX ได้
    • เป้าหมายคือการมอบความสามารถแบบเดียวกันในต้นทุนที่ต่ำกว่า
  • เอาชนะ UNIX

    • UNIX เป็นระบบปฏิบัติการที่ยึดไฟล์เป็นศูนย์กลาง ขณะที่ Windows เป็นระบบปฏิบัติการที่ยึด API เป็นศูนย์กลาง
    • เครื่องมือของ UNIX ทำงานบน Windows ได้ไม่ดี
    • Snover ตัดสินใจพัฒนาคำสั่งสำหรับการจัดการโดยใช้ WMI (Windows Management Instrumentation)
  • ความท้าทายด้านวัฒนธรรม

    • ทีมของ Microsoft ชื่นชอบ GUI และมีความกังขาต่อแนวคิดเรื่องอินเทอร์เฟซบรรทัดคำสั่งของ Snover
    • Snover ยืนยันว่าในสภาพแวดล้อมระดับองค์กร จำเป็นต้องใช้อินเทอร์เฟซบรรทัดคำสั่ง ไม่ใช่ GUI
  • สถานการณ์ในองค์กร

    • ทีมของ Microsoft ชอบแนวทางสมัยใหม่ที่มอบส่วนติดต่อผู้ใช้สำหรับแต่ละปัญหา
    • Snover สนับสนุนแนวทางแบบกล่องเครื่องมือ
  • Windows ไม่ใช่ UNIX

    • Windows เป็นระบบปฏิบัติการที่ยึด API เป็นศูนย์กลาง ไม่ใช่ยึดไฟล์เป็นศูนย์กลาง
    • จึงมีการตัดสินใจใช้ WMI เพื่อพัฒนาคำสั่งสำหรับการจัดการ
  • ช่วงเวลาเขียนโค้ด

    • Snover ได้รู้ว่าเขามีเวลาเขียนโค้ด 10 สัปดาห์
    • รูปแบบคือเขียนโค้ดใน 10 สัปดาห์ แล้วทำให้มันใช้งานได้ต่อเนื่องไปอีกหลายปี
  • ลิ่มของ .NET

    • Bill Gates ผลักดัน .NET อย่างมาก
    • Snover มองว่าการใช้ .NET จะช่วยให้ครอบคลุมได้มากขึ้น
  • การปรับโครงสร้างองค์กร

    • องค์กรของ Snover ตกอยู่ในความสับสนจากการปรับโครงสร้าง
    • Snover ตัดสินใจเดินหน้าตามแผนของตนต่อไป
  • ทีมเชลล์

    • มีกลุ่มอื่นกำลังพัฒนาเชลล์อยู่
    • Snover เสนอวิธีที่ดีกว่าให้พวกเขา แต่พวกเขาไม่เข้าใจ
    • สุดท้าย Snover จึงพัฒนาโปรโตไทป์ของตัวเอง

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

  • ความสำคัญของ PowerShell

    • PowerShell ได้เปลี่ยนพาราไดม์ของการดูแลระบบ Windows
    • มันทำให้การจัดการเซิร์ฟเวอร์จำนวนมากผ่านอินเทอร์เฟซบรรทัดคำสั่งเป็นไปได้
  • ภาวะผู้นำทางเทคนิค

    • ความพยายามไม่ลดละและวิสัยทัศน์ที่ชัดเจนของ Snover คือกุญแจสู่ความสำเร็จ
    • ภาวะผู้นำทางเทคนิคคือการบรรลุผลลัพธ์สำคัญแม้จะเผชิญแรงคัดค้านอย่างหนัก
  • ผลิตภัณฑ์ที่มีความสามารถคล้ายกัน

    • มันมีความสามารถคล้ายกับ Bash บน Linux
    • PowerShell ทำหน้าที่ในสภาพแวดล้อม Windows คล้ายกับที่ Bash ทำ
  • ข้อพิจารณาเมื่อนำเทคโนโลยีใหม่มาใช้

    • เมื่อนำเทคโนโลยีใหม่มาใช้ ควรคำนึงถึงความเข้ากันได้กับระบบเดิม
    • PowerShell มอบความสามารถใหม่พร้อมคงความเข้ากันได้กับ Windows API เดิม
  • ข้อดีและข้อเสีย

    • ข้อดี: เพิ่มประสิทธิภาพในการจัดการเซิร์ฟเวอร์จำนวนมาก, รองรับการทำงานอัตโนมัติ
    • ข้อเสีย: เส้นโค้งการเรียนรู้ช่วงแรก, การต่อต้านจากผู้ใช้ GUI เดิม

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

 
GN⁺ 2024-07-05
ความเห็นจาก Hacker News
  • Jeffrey Snover ผู้สร้าง PowerShell เผชิญกับการคัดค้านอย่างหนักภายใน Microsoft และท้ายที่สุดก็ถูกลดตำแหน่ง

    • เดิมที Jeffrey ถูกจ้างมาเพื่อช่วยให้ Microsoft สามารถแข่งขันในตลาดดาต้าเซ็นเตอร์ได้
    • PowerShell เกิดขึ้นเพราะ Windows ไม่ได้มีพื้นฐานเป็นระบบที่ยึดไฟล์เป็นศูนย์กลาง
    • การดูแลเซิร์ฟเวอร์ต้องอาศัยการเรียก API ที่หลากหลายและข้อมูลแบบมีโครงสร้าง
  • ตอนเขียน PowerShell นั้นไม่เข้าใจว่าทำไมเมื่ออาร์เรย์มีความยาว 1 ระบบจึงตัดความเป็นอาร์เรย์ออกและเปลี่ยนเป็นชนิดข้อมูลที่อยู่ข้างใน

    • เรื่องนี้ทำให้เกิดบั๊กจำนวนมาก
  • ในฐานะนักพัฒนา Bash เคยตื่นเต้นมากตอนที่ PowerShell เปิดตัว แต่จนถึงตอนนี้ก็ยังใช้ Bash อยู่

    • อยากรู้ประสบการณ์ของนักพัฒนาคนอื่น
    • สงสัยว่า PowerShell ได้กลายเป็นเชลล์ที่มีประสิทธิภาพและทันสมัยกว่าจริงหรือไม่
  • กำลังรับผิดชอบดูแลโค้ดเบสของ SQL Server stored procedure ที่มีอายุ 20 ปี

    • ไม่มีการทำ source control และการปรับแต่งประสิทธิภาพก็ทำได้ไม่ดี
    • PowerShell Core ทำงานร่วมกับ Windows ได้ดีที่สุด
    • การเขียนโค้ดไม่ค่อยสะดวก แต่รันได้เร็ว และเครื่องมือที่โต้ตอบกับผู้ใช้ก็ทำได้ดี
    • ถ้าค้นหาข้อมูลมากพอก็สามารถทำสิ่งที่ต้องการได้
  • ไม่เข้าใจว่าทำไมถึงจะไม่ใช้ Python ยกเว้นตอนที่ต้องโต้ตอบกับระบบย่อยของ Windows

    • PowerShell ทั้งยืดยาวและช้าเกินไป
    • สงสัยว่าทำไม Microsoft ถึงไม่สร้างมันบนพื้นฐานของ Python หรือ Node
  • เป็นเรื่องแปลกที่ Microsoft มองไม่เห็นคุณค่าของวิธีเชิงโปรแกรมในการตั้งค่า Windows และแอปพลิเคชันองค์กรสำคัญต่างๆ

    • การเสนอให้คลิกเมาส์ผ่าน remote desktop เป็นทางเลือกนั้นไร้สาระมาก
  • PowerShell คือผลผลิตของความมั่นใจแบบผูกขาดของ Microsoft

    • ไม่มีความเชื่อมโยงทางไวยากรณ์กับภาษาอื่นเลย
    • ไวยากรณ์ที่ยืดยาวอย่างมากอาจเหมาะกับการพรีเซนต์ แต่ใช้งานจริงไม่สะดวก
    • มีปัญหาเมื่อชื่อไฟล์มีวงเล็บเหลี่ยมอยู่ในนั้น
  • ตอนดูแลระบบ Windows นั้น PowerShell ใช้งานได้ดี

    • Linux ยอดเยี่ยม แต่การใช้ Bash นั้นแย่มาก
    • ดูเหมือนว่าสคริปต์ Bash จะยังคงถูกใช้งานอีกมาก
  • ไม่ใช่ผู้ใช้ Windows แต่คิดว่า PowerShell นั้นดี

  • PowerShell ยอดเยี่ยมในหลายด้าน แต่ไม่สามารถดึงดูดผู้ใช้ในวงกว้างได้

    • PowerShell cmdlet อธิบายตัวเองได้ดีและให้ข้อมูลที่ครบถ้วน
    • มีฟีเจอร์ที่มีประโยชน์ เช่น โหมดจำลองการทำงาน
    • อย่างไรก็ตาม นอกโลก Windows มันไม่ได้รับความนิยม และ Microsoft ก็กำลังละเลย PowerShell เพื่อดึงดูดนักพัฒนา Linux