เรื่องราวการพัฒนา PowerShell กับ Jeffrey Snover
(corecursive.com)การกำเนิดของ 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 ความคิดเห็น
ความเห็นจาก Hacker News
Jeffrey Snover ผู้สร้าง PowerShell เผชิญกับการคัดค้านอย่างหนักภายใน Microsoft และท้ายที่สุดก็ถูกลดตำแหน่ง
ตอนเขียน PowerShell นั้นไม่เข้าใจว่าทำไมเมื่ออาร์เรย์มีความยาว 1 ระบบจึงตัดความเป็นอาร์เรย์ออกและเปลี่ยนเป็นชนิดข้อมูลที่อยู่ข้างใน
ในฐานะนักพัฒนา Bash เคยตื่นเต้นมากตอนที่ PowerShell เปิดตัว แต่จนถึงตอนนี้ก็ยังใช้ Bash อยู่
กำลังรับผิดชอบดูแลโค้ดเบสของ SQL Server stored procedure ที่มีอายุ 20 ปี
ไม่เข้าใจว่าทำไมถึงจะไม่ใช้ Python ยกเว้นตอนที่ต้องโต้ตอบกับระบบย่อยของ Windows
เป็นเรื่องแปลกที่ Microsoft มองไม่เห็นคุณค่าของวิธีเชิงโปรแกรมในการตั้งค่า Windows และแอปพลิเคชันองค์กรสำคัญต่างๆ
PowerShell คือผลผลิตของความมั่นใจแบบผูกขาดของ Microsoft
ตอนดูแลระบบ Windows นั้น PowerShell ใช้งานได้ดี
ไม่ใช่ผู้ใช้ Windows แต่คิดว่า PowerShell นั้นดี
PowerShell ยอดเยี่ยมในหลายด้าน แต่ไม่สามารถดึงดูดผู้ใช้ในวงกว้างได้