Vì sao mã nguồn là tự do? Các lập trình viên Linux/FOSS lên tiếng! (Phần 2)

Chủ nhật - 09/08/2009 07:57

WhyCode For Free? Linux/FOSS Devs Speak!

Vìsao, Làm thế nào, lòng tin của dân chuyên nghiệp máytính, các kỹ năng

Why,How, Geekcreds, Skills

CarlaSchroder

Wednesday,July 29, 2009 11:36:11 AM

Theo:http://www.linuxplanet.com/linuxplanet/reports/6807/1/

Bàiđược đưa lên Internet ngày: 29/07/2009

Lờingười dịch: Không chỉ các lập trình viên, mà cả nhiềuquản trị hệ thống Linux cũng muốn mã nguồn của họlà tự do với nhiều lý do rất thực dụng của họ.

Tuầntrước tôi đã nói về một số ưu điểm của phần mềmtự do nguồn mở (FOSS) đối với chúng ta, những ngườisử dụng đầu cuối. Hôm nay tôi sẽ làm thứ gì đó màchưa ai từng làm trong lịch sử của các học giả, vàviệc đi hỏi các lập trình viên phần mềm thực thụ vìsao họ thích FOSS. Tôi đã nhận được nhiều câu trảlời tuyệt vời tới nỗi tôi đã phải chia chúng thành 2phần, và phần 2 sẽ được đưa vào ngày mai.

Vìsao và thế nào?

AkkanaPeck là một tác giả nổi tiếng của LinuxPlanet, ngườiviết lập trình cho những người mới bắt đầu và viếtHowto (làm thế nào) của GIMP (một phần mềm nguồn mởtương tự như Photoshop), là tấc giả của cuốn “Bắtđầu với GIMP: Từ Mới bắt đầu tới Chuyên nghiệp”,và là lập trình viên nguồn mở lâu năm. Cô nói:

>Làm thế nào mà một lập trình viên có thể sống đượcbằng việc viết phần mềm tự do?

Bằngviệc làm cho một công ty mà trả tiền cho mọi người đểphát triển phần mềm tự do. Có nhiều công ty như vậycho các lập trình viên viết cho nhân, đặc biệt nhữngngười mà chuyên về mạng và lưu trữ, nhưng cũng cónhững công ty trả tiền cho mọi người để phát triểncác sản phẩm khác của nguồn mở – Mozilla, Canonical,Red Hat, Novell, Oracle và một số các công ty nhỏ. Và cónhiều người ở trường đại học viết các phần mềmnguồn mở như là một phần (có thể là tất cả) côngviệc của họ. Tôi thích thấy các công việc của chínhphủ cũng làm như vậy, nhưng dường như là không cónhiều.

>Vì sao mọi người phải lập trình vì tự do? Đặc biệtkhi mà họ là những tay chuyên nghiệp dày dạn, và khôngtìm kiếm kinh nghiệm?

  • Gãi đúng chỗ ngứa: tạo ra những chương trình mà là thứ gì đó mà bạn cần, theo cách mà bạn muốn họ làm ra chúng.

      • Cơ hội để viết dạng mã nguồn mà BẠN muốn viết, chứ không phải những gì mà ông chủ của bạn muốn bạn viết hoặc một vài uỷ ban nào đó nói bạn phải viết.

      • Cơ hội để học những công nghệ mới, hoặc vì bạn thấy chúng quyến rũ hoặc như là tư liệu xây dựng tổng kết mà bạn không thể có được thông qua công việc của bạn.

      • Cơ hội để sử dụng một ngôn ngữ mà bạn thích nhất hơn là một ngôn ngữ mà họ sử dụng ở công sở.

      • Danh tiến và vinh quang. OK, điều đó là xấc xược, nhưng nó thực sự là một cơ hội để tên bạn có trên những thứ mà nó hữu dụng cho nhiều người, mà nhiều lập trình viên không có được từ công việc (nhiều công việc lập trình liên quan tới việc viết một ít – những thứ mà ít người sẽ bao giờ nhìn thấy, những website nội bộ, các ứng dụng cho doanh nghiệp, vân vân).

      • Cơ hội để được biết đến trong một cộng đồng như một lập trình viên tốt, nên bạn có thể cuối cùng được trả tiền để làm việc trong đó hoặc các dự án tương tự.

Thứcuối cùng là đặc biệt quan trọng đối với bất kỳai đang cố gắng bứt phá trong các công việc lập trình:các sinh viên, những người thay đổi sự nghiệp, nhữngngười với dạng kết nối không đúng mà họ bị kẹttrong một công việc cụt đường thay vì việc lập trìnhthực tế.

Lastweek I talked about some the advantages of Free/Open Source softwarefor us end users. Today I'm going to do something no one has everdone in the history of punditry, and that is ask actual softwaredevelopers why they prefer FOSS. I received so many excellentresponses that I have split this into two parts, and the second partwill run tomorrow.

Whyand How?

AkkanaPeck is a popular LinuxPlanet author who writesprogramming-for-beginners and Gimp howtos, is the author of"Beginning GIMP: F-rom Novice to Professional", and isalong-time open source developer. She says:

>How can a dev make a living writing Free software?

Byworking for a company that pays people to develop free software.There are lots of such companies for kernel developers, especiallythose who specialize in network and storage, but there are alsocompanies paying people to develop other open source products --Mozilla, Canonical, Redhat, Novell, Oracle and a number of smallercompanies. And there are a lot of university people writing opensource software as part (probably not all) of their jobs. I'd like tosee government jobs doing that as well, but there don't seem to bemany.

>Why should anyone code for free? Especially when they're seasonedprofessionals, and not noobs looking for experience?

      • Scratch an itch: cre-ate programs that do something you need, the way you wish they'd do them.

      • Chance to write the sort of code YOU want to write, not what your boss wants you to write or some committee says you should write.

      • Chance to learn new technologies, either because you find them exciting or as resume-building material you can't get through your job.

      • Chance to use a language you like better than the one they use at work.

      • Fame and glory. Okay, that's flippant, but it really is a chance to get your name on something that's useful to a lot of people, which a lot of programmers don't get f-rom work (a lot of programming jobs involve writing little one-off stuff few people will ever see, internal websites, business apps, etc.)

      • Chance to get known in a community as a good developer, so you can eventually get paid for working on that or similar projects.

Thatlast one is especially important for anyone trying to break intoprogramming jobs: students, career changers, people with the wrongsort of connections who got stuck in a dead-end job instead of realprogramming.

Kểcả các quản trị hệ thống mã nguồn

R.Daneel Olivaw viết:

Vâng,tôi không là một lập trình viên, nhưng như một ngườiquản trị hệ thống Linux, việc lập trình là một dạngsở thích hữu ích.

Cómột số thứ mà tôi thích trong phần mềm nguồn mở. Khibạn viết một ứng dụng cho công việc của bạn, nóphải … chạy! Thường thì, chủ yếu trong các công tynhỏ, mã nguồn được xem xét chỉ bằng chính bạn...hoặc lập trình viên mà thay thế bạn. Trong những trườnghợp như vậy, việc lập trình khó mà là một lựa chọn.Không ai sẽ đánh giá bạn đúng về công việc của bạn,và nếu người quản lý của bạn không bao giờ vá hoặcsử dụng lại mã nguồn này, thì bạn dường như sẽ“thắng” trong “cuộc chơi”.

Nếumã nguồn này được tung ra, sẽ có một cơ hội một sốlập trình viên khác sẽ đọc mã nguồn của bạn. Sẽcó, theo quan điểm của tôi, thứ gì đó thú vị về nó.Có nghĩa là một số những “người chuyên nghiệp”khác, bạn bè cùng cảnh, có thể đánh giá mã nguồn củabạn, có thể còn học được từ đó. Biết rằng, cóthể được khuyến khích để viết thứ gì đó sạch sẽ,ổn định và theo nghĩa nào đó, thông minh.

Cũng,việc đưa mã nguồn ra công chúng, sẽ cần bạn làm chonó cứng cáp: bạn không bao giờ biết thiết lập gì sẽlàm chạy được đồ của bạn, và có thể sẽ tức tốikhi biết rằng mã nguồn “của tôi” có khả năng điqua được mọi nền tảng. Vì thế, mã nguồn có một cơhội để trở nên tốt hơn và sạch sẽ hơn.

Cuốicùng những không kém phần quan trọng, có thể sẽ cónhững người mà sử dụng mã nguồn của bạn. Họ cóthể thấy nó thiếu một chức năng hoặc lưu ý một lỗinào đó. Họ còn có thể viết ngược lại cho bạn đểlàm cho mọi thứ được sửa đúng. Nhưng thời gian rỗicủa bạn là đáng giá, nên mã nguồn ban đầu càng tốt,thì càng dễ dàng để nó được sửa các lỗi. Nếu mãnguồn là đủ sạch (hãy luôn chú giải mã nguồn củabạn!), một số lập trình viên khác có thể còn vá nócho bạn. Và bạn sẽ không bỏ phí thời gian rỗi củabạn để vá các chương trình được viết tồi tệ.

Cuốicùng, phần thưởng: khi bạn đưa một vài mã nguồn lênmột danh sách thư điện tử hoặc một nhóm thảo luận,một số người khác mà bạn không biết, có thể sẽbình phẩm bạn về “công việc chuyên nghiệp và cứngcáp” này.

SysadminsCode Too

R.Daneel Olivaw writes:

Well,I'm not a programmer, but as a Linux Sysadmin, programming is kindauseful hobby ;)

Thereare some things that I like in open source software. When you writean app for your job, it has to ... just work ! Often, mainly in smallcompanies, the code is reviewed only by yourself ... or theprogrammer who replaces you. In such cases, coding ugly is an option.No one will evaluate you correctly about your work, and if you managenever to patch or reuse the code, you seem to have "won"the "game".

Ifthe code is released, there is a chance some other programmer willread your code. There is, in my view, something exciting about that.It means that some other "professional", a peer, mayevaluate your code, maybe even learn f-rom it. Knowing that, I'd beencouraged to write something clean, stable and, in some extent,smart.

Also,releasing the code in the wild, will need you to harden it : younever know what setup will run your thing, and I'd be fierce to knowthat "my" code was able to get through any platform.Therefore, the code has a chance to be better and cleaner.

Lastbut not least, there may be people that use your code. They may seeit lacking a function or notice a bug. They may even write you backto get things fixed. But your free time is valuable, so the betterthe original code, the easiyer it is to fix errors. If the code isclean enough (always comment your code!), some other programmer mayeven patch it for you. And you won't waste your free time patchingbadly written programs.

Finally,the reward: when you post some code on a list or a forum, some otherpeople you do not know, may compliment you for the "professionaland solid work".

Dịchtà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

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ập123
  • Máy chủ tìm kiếm18
  • Khách viếng thăm105
  • Hôm nay1,463
  • Tháng hiện tại359,848
  • Tổng lượt truy cập31,838,174
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