Microsoft đưa ra sửa đổi cần thiết nhiều cho phát triển OSS của Windows

Thứ sáu - 16/04/2010 16:46

Microsoftoffers much-needed fix for Windows OSS development

By RyanPaul | Last up-dated 5 days ago

Theo:http://arstechnica.com/open-source/news/2010/04/microsoft-offers-much-needed-fix-for-windows-oss-development.ars

Bài được đưa lênInternet ngày: 10/04/2010

Lờingười dịch: Một lập trình viên của Microsoft đang xâydựng một cộng đồng gọi là CoApp nhằm đưa các ứngdụng phần mềm của kho GNU/Linux sang Windows theo nhữngcách thức của thế giới phần mềm tự do nguồn mở vẫnlàm với các ứng dụng của thế giới này một cáchthoải mái và dễ dàng. Hy vọng thế giới của phần mềmtự do nguồn mở sẽ dạy được cho người của Microsoftđược nhiều điều. Nhưng dù thế nào chăng nữa, vềlâu dài, khó mà có thể đồng ý được với phươngchâm: “chỉ cần chạy những phần mềm tự do nguồn mởtrên Windows là được”, vì nó cũng chẳng khác gì phươngchâm: “Chạy phần mềm mở gì cũng được nhưng phảitrong phần mềm đóng” hay “Tự do làm gì cũng đượcnhưng phải trong nhà tù”.

Mặc dù Microsoft đangbắt đầu nhận thức được rằng hệ sinh thái giàu cócủa phần mềm nguồn mở có thể mang lại nhiều giá trịcho những người sử dụng Windows, thì hầu hết các dựán phần mềm nguồn mở phổ biến được phát triển mộtcách rộng rãi trên các nền tảng khác, mà có nghĩa làchúng sẽ không luôn dễ dàng để triển khai trên Windows.Một kho phần mềm cho máy chủ nguồn mở tương đốiphức tạp có thể được triển khai trên Linux với mộtvài cái nháy, nhưng nó có thể mất hàng giờ để cóđược các phần mềm tương tự được cài đặt vàthiết lập cấu hình một cách đúng đắn trên Windows.

Lập trình viênGarrett Serack của Microsoft đã xác định một giải pháplôi cuốn cho vấn đề này. Anh ta đang tung ra một dự ánmới để xây dựng một hệ thống quản trị gói choWindows với mục tiêu đơn giản hóa một cách căn bảntận gốc sự cài đặt của các phần mềm nguồn mở phổbiến trên nền tảng Windows. Anh ta gọi nó là Nền tảngXuất bản Ứng dụng Nguồn Mở Chung (CoApp).

Giống nhiều các hệthống quản lý gói mà là một phần chuẩn của các pháttán Linux, dự án CoApp sẽ cung cấp một nền tảng phânphối cho các thư viện và ứng dụng phần mềm nguồn mởđược đóng gói, với sự hỗ trợ cho giải pháp phụthuộc và cập nhật tự động. Nó có thể là một côngcụ mạnh cho những quản trị viên hệ thống mà họ muốnmột kho WAMP hoặc các lập trình viên mà họ muốn chuyểncác ứng dụng của Linux sang Windows.

Serack muốn sử dụngđịnh dạng MSI của Microsoft cho các gói và mong muốn lợidụng WinSxS để phân phối song song các tệp nhị phân saocho những người sử dụng sẽ có được sự truy cậptới nhiều xây dựng của cùng các thư viện được tạora bởi nhiều trình biên dịch khác nhau. Dự án này cũngsẽ tìm kiếm để thiết lập một số chuẩn cơ bản chohình thức trình bày hệ thống tệp sao cho các tệp đượcđặt trong những nơi ổn định.

Anh ta đang điều phốidự án này với sự ủng hộ của Microsoft, nhưng nỗ lựcphát triển thực sự sẽ là cộng đồng dẫn dắt - mộttiếp cận mà sẽ hy vọng cho phép CoApp tiến hóa theo mộtcách mà phục vụ được tốt nhất những người sửdụng của nó hơn là đang được chỉ đạo bởiMicrosoft.

“Đám người ở đâytại Microsoft đã nhận thức được giá trị trong dự ánnày - và đã đưa ra một cách tử tế để cho tôi làmviệc về nó toàn thời gian. Tôi đang quản lý dự ánnày; Microsoft đang hỗ trợ những nỗ lực của tôi trongviệc này 100%”, anh ta đã viết trong một bài trên blogvề dự án này hôm thứ tư. “Thiết kế là công việchoàn toàn của bản thân tôi và cộng đồng CoApp, tôikhông phải xem lại nó với bất kỳ ai trong hãng”.

AlthoughMicrosoft is beginningto acknowledge that the rich ecosystem of open source softwarecan bring a lot of value to Windows users, the most popular opensource software projects are largely developed on other platforms,which means that they aren't always easy to deploy on Windows. Arelatively complex open source server stack can be rolled out onLinux with a few clicks, but it might take hours to get the samesoftware installed and properly configured on Windows.

Microsoftdeveloper Garrett Serack has identified a compelling solution to thisproblem. He is launching a newproject to build a package management system for Windows with theaim of radically simplifying installation of popular open sourcesoftware on Microsoft's platform. He calls it the Common Open SourceApplication Publishing Platform (CoApp).

Muchlike the package management systems that are a standard part ofpopular Linux distributions, the CoApp project will provide adelivery platform for packaged open source software libraries andapplications, with support for dependency resolution and automaticup-dates. It could be a powerful tool for system administrators whowant a WAMP stack ordevelopers who want to port Linux applications to Windows.

Serackwants to use Microsoft's MSI format for the packages and intends totake advantage of WinSxS in order to deliver parallel binaries sothat users will have access to multiple builds of the same librarygenerated by different compilers. The project will also seek toestablish some basic standards for filesystem layout so that filesare put in consistent places.

Heis coordinating the project with Microsoft's blessing, but the actualdevelopment effort will be community-driven—an approach that willhopefully enable CoApp to evolve in a way that best serves its usersrather than being directed by Microsoft.

"Thefolks here at Microsoft have recognized the value in this project—andhave kindly offered to let me work on it full-time. I'm running theproject; Microsoft is supporting my efforts in this 100%," hewrote in a blogentry about the project on Wednesday. "The design isentirely the work of myself and the CoApp community, I don't have tovet it with anyone inside the company."

Làmcho nguồn mở phát triển trên Windows ít nhảm nhí

Phải chuyển một vàiứng dụng Linux của riêng tôi sang Windows, tôi biết từkinh nghiệm cá nhân sự khó khăn đến phát cuồng như thếnào để có thể được thiết lập một môi trường choviệc phát triển phần mềm nguồn mở trên hệ điềuhành của Microsoft. Đối với ứng dụng Qt mới nhất màtôi đã chuyển, qui trình của việc có được tất cảcác phụ thuộc được cài đặt đã mất hàng giờ. Tôiđã cài Cmake, chỉ tìm đúng phiên bản của Automoc, vàbiên dịch OpenSSL từ nguồn.

Windows VM hiện hànhcủa tôi có một nửa là hàng tá các hệ thống khác nhauđược xây dựng và 3 tập hợp riêng rẽ của các côngcụ kiểm soát phiên bản, tất cả chúng phải được càiđặt một cách riêng rẽ. Tôi cũng có 2 cài đặt hoàntoàn tách biệt nhau của MinGW và một cài đặt Cygwin nặnghơn. Tôi cần tất cả những thứ tào lao này để chuyểncác phần mềm của tôi sang Windows, nhưng đây là một cơnác mộng để duy trì. Tôi phải viết tài liệu một cáchtỉ mỉ mỗi bước của qui trình cài đặt nếu tôi muốnkhi nào đó có khả năng làm một lần nữa trên một càiđặt Windows khác.

Những thứ đau đầunày đủ để làm nản lòng bất kỳ lập trình viên phầnmềm nguồn mở nào mà khác đi muốn đưa ra những phiênbản Windows của các ứng dụng của họ. Việc bỏ ra mộtít giờ đồng hồ phát triển trên Windows thường phụcvụ như một sự nhớ lại đau đớn về việc tôi phụthuộc vào sức mạnh của con bò siêu việt của phát táncủa tôi. Điều đó giải thích vì sao tôi bị thuyếtphục rằng CoApp là một ý tưởng rất tốt.

Makingopen source development on Windows suck less

Havingported several of my own Linux applications to Windows, I know f-rompersonal experience how insanely difficult it can be to set up aproper environment for developing open source software on Microsoft'soperating system. For the last Qt application that I ported, theprocess of getting all of the dependencies installed took hours. Ihad to install CMake, find just the right version of Automoc, andcompile OpenSSL f-rom source.

Mycurrent Windows VM has a half a dozen different build systems andthree separate sets of version control tools, all of which had to beinstalled individually. I also have two completely separateinstallations of MinGW and a rather heavy Cygwin setup. I need all ofthis crap in order to port my software to Windows, but it's anightmare to maintain. I have to meticulously document every step ofthe setup process if I ever want to be able to do it again on adifferent Windows installation.

Theseheadaches are enough to deter many open source software developerswho would otherwise be releasing Windows versions of theirapplications. Spending a few hours developing on Windows often servesas a painful reminder of how much I depend on my distro's supercow powers. That is why I'm convinced that CoApp is a very goodidea.

Cygwin là một hệthống quản lý gói còn gây tranh cãi bởi chính nó, nhưngnó có ý định sẽ là thứ gì đó cô lập và không thậtlà tự nhiên bẩm sinh. Serack tin tưởng rằng CoApp đưa ramột cơ hội để thực hiện nó theo đúng cách và khéplại khoảng trống mà các thành phần phần mềm nguồn mởđược chuyển độc lập từ phần còn lại của hệ sinhthái Windows. Nếu điều này được thực hiện đúng đắn,thì điều đó có thể sẽ là rất đáng kể.

Mặc dù những ngườinhiệt thành của Linxu có xu hướng khinh thị Windows, thìviệc chuyển các ứng dụng Linux sang hệ điều hànhWindows có thể mở ra nhiều cơ hội. Một sự chuyển củaWindows có thẻ mở ra ứng dụng của bạn tới toàn bộmột khán phòng mới, làm cho có khả năng lôi cuốn nhữngngười đóng góp mới. Chúng tôi đã thấy một số cácdự án phần mềm nguồn mở nổi bật có lợi theo cáchđó từ tính có thể tương thích được của Windows trongquá khứ.

Một hiệu ứng phụtích cực của hiện tượng đó là việc nó giới thiệucho những lập trình viên ứng dụng của Windows tới cáckhung công việc và công nghệ của nguồn mở. Sự áp dụngrộng rãi hơn của các phần mềm thân thiện với Linuxxuyên nền tảng và các bộ công cụ trên Windows rõ ràngcó thể giúp khuyến khích tính sẵn sàng của các phầnmềm trên Linux.

Mặc dù tôi thực sựấn tượng với tầm nhìn của Serack, tôi hơi nghi ngờrằng một kho phần mềm với độ lớn và tính phức tạpnhư vậy có thể được thỏa mãn cho một mức độ nàođó rằng nó có thể thực sự phân phối trong tiềm năngcủa nó. Một sự quyết tâm như vậy sẽ đòi hỏi sứcngười đáng kể. Những độc giả mà muốn tham gia vàodự án này hoặc tìm hiểu nhiều hơn có thể kiểm tratrang CoApp trênLaunchpad.

Cygwinarguably constitutes a package management system by itself, but ittends to be somewhat insular and isn't very native. Serack believesthat CoApp offers an opportunity to do it the right way and close thegaps that isolate ported open source software components f-rom therest of the Windows ecosystem. If it's done properly, that could bevery significant.

AlthoughLinux enthusiasts tend to disdain Windows, porting Linux applicationsto Microsoft's operating system can open up a lot of opportunities. AWindows port can expose your application to a whole new audience,making it possible to attract new contributors. We have seen a numberof prominent open source software projects benefitin that manner f-rom Windows compatibility in the past.

Apositive side effect of that phenomenon is that it introduces Windowsapplication developers to open source frameworks and technologies.Broader adoption of cross-platform Linux-friendly software andtoolkits on Windows would obviously help boost the availability ofsoftware for Linux.

AlthoughI'm really impressed with Serack's vision, I'm a bit skeptical that atask of such magnitude and complexity can be fulfilled to an extentthat would truly deliver on its potential. Such an undertaking willrequire considerable manpower. Ars readers who want to participate inthe project or learn more can check out the CoApppage on Launchpad.

Dịch tài liệu: LêTrung Nghĩa

letrungnghia.foss@gmail.com

Tổng số điểm của bài viết là: 0 trong 0 đánh giá

Click để đánh giá bài viết

  Ý kiến bạn đọc

Những tin mới hơn

Những tin cũ hơn

Về Blog này

Blog này được chuyển đổi từ http://blog.yahoo.com/letrungnghia trên Yahoo Blog sang sử dụng NukeViet sau khi Yahoo Blog đóng cửa tại Việt Nam ngày 17/01/2013.Kể từ ngày 07/02/2013, thông tin trên Blog được cập nhật tiếp tục trở lại với sự hỗ trợ kỹ thuật và đặt chỗ hosting của nhóm phát triển...

Bài đọc nhiều nhất trong năm
Thăm dò ý kiến

Bạn quan tâm gì nhất ở mã nguồn mở?

Thống kê truy cập
  • Đang truy cập149
  • Máy chủ tìm kiếm7
  • Khách viếng thăm142
  • Hôm nay22,892
  • Tháng hiện tại510,697
  • Tổng lượt truy cập36,569,290
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây