-8-: Nguyên bản
"To
be accepted as a hacker, you have to behave as though you have this
kind of attitude yourself. And to behave as though you have the
attitude, you have to really believe the attitude". Tác giả muốn
nói rằng, ngay cả bạn thật sự không hoặc chưa trang bị đúng thái độ của
một hacker, bạn cũng nên tỏ ra mình có thái độ này và tin tưởng vào
thái độ này thì mới có thể được tiếp nhận như một hacker.
-9-: Nguyên bản
"re-inventing the wheel". Tạm dịch là "tái tạo những thứ đã có sẵn".
-10-: Nguyên bản
"toolkit of skills". Tạm dịch "đồ nghề" cho gần gụi với tiếng Việt.
-11-: Nguyên bản
"machine language". Tạm dịch là ngôn ngữ của máy. Thật ra nó ám chỉ loại ngôn ngữ ở tầng thấp nhất để gởi chỉ thị cho máy thực thi công việc.
-12-: Tôi không đồng ý hoàn toàn quan
điểm này của Eric. Bởi lẽ, bất cứ ngôn ngữ mạnh mẽ và phức tạp nào cũng
cần có bộ thư viện thì mới làm việc được. Hay chăng Eric cho rằng Java
JDK không được cài sẵn ở mức hệ điều hành? Eric bị mâu thuẫn trong câu
này. Nếu các ứng dụng mở cho Java thường đi sau Sun thì lý do thoả đáng
nào để dùng ứng dụng mở thay vì dùng bản của Sun?
-13-: Một text editor phổ biến và mạnh
mẽ trên *nix. Nó tạo cảm giác "khó dùng" cho những ai quen "point &
click" (như trên hệ điều hành Windows) như sau khi vượt qua được cảm
giác này. Emacs là một công cụ tuyệt vời cho nhu cầu xử lý text, lập
trình...
-14-: GIMP, một công cụ nguồn mở dùng để xử lý hình ảnh gần như là tiêu chuẩn trên các Linux Distribution.
-15-: xin đừng lẫn lộn với các tiểu
xảo thường gọi là "google hacking" bằng cách dùng các phối hợp từ khoá
trên Google để 'hack' (theo ý nghĩa không đúng về cái gọi là 'hack').
Peter Norvig là một trong những người 'đẻ' ra Google. Ông ta 'hack' ở
đây có nghĩa là (cùng với các hackers khác) suy tư, thiết kế, thử
nghiệm và kiến tạo giải pháp cho công việc tìm kiếm (searching) và đã
hình thành nên Google. Trang chủ của Norvig ở:
http://www.norvig.com/index.html -16-: AI viết tắc của cụm "
Artificial
Intelligent",
một công nghệ kỳ thú và đa diện. AI tạm mang nghĩa tiếng Việt là "trí
tuệ nhân tạo" nhưng tôi không dịch hẳn ra như thế mà vẫn dùng AI vì hai
lý do: 1) AI là thuật ngữ quá đặc thù với lĩnh vực này, dịch ra tiếng
Việt sẽ làm hỏng tính đặc thù ấy. 2) "trí tuệ nhân tạo" không đủ lột tả
"artificial intelligent" bởi vì viết một software bình thường cũng đòi
hỏi "trí tuệ" và cũng "nhân tạo". Bởi thế, tôi đành để nguyên AI.
-17-: Nguyên bản
"learn to dance while wearing a body cast".
Tạm dịch là "học cách khiêu vũ trong lúc cơ thể đang bó bột". Tác giả
muốn ám chỉ việc học 'hack' trên một hệ thống mã nguồn đóng hết sức hạn
chế.
-18-: Nguyên bản
politicians, có nghĩa là "các chính trị gia". Từ này theo nghĩ đen chẳng có gì đặc biệt nhưng tác giả để nó ở dạng chữ
nghiêngđể nhấn mạnh nghĩa bóng. Đây là chi tiết lý thú để khẳng định thái độ
chống cửa quyền đã nêu ở mục 4. Đối với những người làm khoa học thuần
thành, họ rất xem thường các chính trị gia, đặc biệt là ở các nước phát
triển. Các chính trị gia là những người chỉ ngồi trong văn phòng và tìm
cách kiếm phiếu thay vì làm những việc ích lợi và thiết thực. Họ không
quan tâm mấy đến những phát kiến ngoại trừ chúng có lợi cho họ (chủ yếu
là việc kiếm phiếu). Ở đây, web cũng khiến cho các chính trị gia quan
tâm, có nghĩa là mức ảnh hưởng của nó có biên độ và cường độ đáng kể
đến các chính trị gia.
-19-: Nguyên bản
anthropologists, là những chuyên gia / khoa học gia chuyên về xã hội học.
-20-: Nguyên bản
gift culture, tạm dịch là "văn hóa cho tặng". Thật ra, cụm từ được dịch ra ở đây không đủ lột tả tinh thần
gift culturebởi vì trong một xã hội, vật chất khuynh đảo mọi khiá cạnh của xã hội,
tính "cho tặng" ở đây là một hiện tượng hoặc một thứ văn hoá đặc thù và
độc đáo.
-21-: Nguyên bản
"revered demigods",
tạm dịch "đại cao thủ" cho gần gụi. "revered demigods" hàm chứa sự tôn
trọng và vinh dự cao cả của một người được xếp hạng như thế.
-22-: Nguyên bản
"karma". Tạm dịch là "tích đức" theo đúng tinh thần Phật giáo (theo từ karma).
-23-: Nguyên bản
RFC hay là
"Request For Comments", là những tài liệu đề xuất các tiêu chuẩn ứng
dụng kỹ thuật. Chúng được dùng như kim chỉ nam để tạo sự đồng nhất và
tương quan giữa các ứng dụng có chung tính chất.
-24-: Nguyên bản
"nerd". Tạm
dịch là "dân gạo cội" chỉ cho những cá nhân hết sức cần mẫn, chăm chỉ
và rất có khả năng. Hình tượng "nerd" là hình tượng một cá nhân (thường
là nam giới) gầy gò, mang cặp kính mắt rất dày và tỏ ra hiểu nhiều,
biết rộng.
-25-: ở những nước Tây phương, những
ai "bị" xếp vào dạng "nerd" thường ít nhiều bị tách rời khỏi các sinh
hoạt bình thường như bạn bè, tiệc tùng, giao tiếp. Đây có lẽ là một thứ
"nếp sống" và đây không hẳn là một thứ quan niệm đúng đắn.
-26-: Nguyên bản
"have a life".
Tạm dịch "đời sống bình thường". Tôi thú nhận không thể dịch cụm "have
a life" sang tiếng Việt và chuyển tải đầy đủ hàm ý của nó. Cụm "have a
life" chẳng những hàm chứa một cuộc sống bình thường mà còn an hưởng và
thoả mãn với nó.
Những điểm phong cách Một lần nữa, để làm một hacker, bạn cần đi vào tâm thức của một
hacker. Có một số điều có ích bạn có thể làm ngay cả khi bạn không động
đến máy tính. Những điều này không dùng để thay thế cho hacking (chẳng
có gì thay thế cho hacking cả) nhưng nhiều hackers làm những điều này
và cảm thấy họ kết nối đến cốt lõi của hacking.
- Học cách viết ngôn ngữ mẹ đẻ của mình một cách nhuần nhuyễn. Dẫu
thiên hạ thường nghĩ rằng dân lập trình không có khả năng viết lách,
nhưng một con số đáng ngạc nhiên các hackers (bao gồm những người đã
thành đạt nhất mà tôi biết) lại rất có khả năng viết lách.
- Đọc truyện khoa học giả tưởng. Đi dự các buổi hội thảo về khoa
học giả tưởng (một cách rất tốt để gặp gỡ các hackers và hackers cố
cựu)
-27-.
- Rèn luyện một môn võ thuật. Thứ kỷ luật đòi hỏi cho võ thuật khá
tương đồng với những thứ hackers hoạt động. Dạng võ thuật được ưa
chuộng nhất của đám hackers có lẽ là Không Thủ Đạo của Á Châu như Tae
Kwon Do, các dạng Karate, Kung Fu, Aikido hoặc Ju Jitsu. Các môn kiếm
thuật Tây phương và Á Châu cũng có tác dụng tương tự. Ở những nơi cho
phép, bắn súng cũng là môn thể thao phổ biến từ những năm cuối thập
niên 90. Võ thuật đúng tinh thần hacker là để nhấn mạnh kỷ luật tinh
thần, tạo thư giãn và chủ động hơn là để rèn luyện sức mạnh thô hào,
thúc đẩy năng lực thể chất cao độ.
- Nghiên cứu một nhánh thiền. Một sinh hoạt được ưa thích một cách bền bỉ trong đám hackers là môn Thiền
-28-(một cách nghiêm trọng mà nói, bạn có thể thâu nhận được những điều ích
lợi từ Thiền mà không cần phải theo một tôn giáo hoặc từ bỏ một tôn
giáo mà bạn đã có). Những môn khác ở dạng tương tự cũng có thể có tác
dụng nhưng hãy cẩn thận khi chọn lựa một môn không đòi hỏi bạn tin vào
những điều điên khùng.
- Bồi dưỡng cho mình một lỗ tai có khả năng phân tích âm nhạc. Học
cách thưởng thức tính đặc thù của âm nhạc. Học cách chơi một nhạc cụ
nào đó hoặc học cách hát.
- Bồi dưỡng cho mình khả năng chơi chữ
-29- và dùng chữ.
Nếu bạn
đã làm những điều trên và càng nhiều, càng chứng tỏ
bạn có thiên khiếu của một hacker. Lý do tại sao như vậy thì chưa rõ
nhưng điều quan trọng là những việc trên kết nối giữa khả năng thuộc
phần trái và phần phải của não bộ. Hackers cần có khả năng lý luận một
cách logic và có thể bước ra khỏi một logic mang tính hiển nhiên ngay
lúc nhận ra điều này.
Làm việc hết lòng cũng như giải trí và giải trí hết lòng cũng như
làm việc. Đối với hackers, biên giới của "chơi", "làm", "khoa học" và
"nghệ thuật" có xu hướng biến mất, hoặc gộp lại thành một lối chơi có
mức sáng tạo cao độ. Cũng như thế, đừng tự hài lòng với chuỗi kỹ năng
hạn hẹp. Dù rằng hầu hết hackers đều tự xếp loại mình là lập trình
viên, họ thường có khả năng trong nhiều lãnh vực khác nhau - quản lý hệ
thống, thiết kế web, và sửa chữa máy tính thường là những kỹ năng
thường gặp. Một hacker đóng vai trò là một nhân viên quản lý hệ thống
thường rất giỏi với kỹ năng lập trình ở dạng script và thiết kế web.
Hackers không làm chuyện gì nửa vời cả; nếu họ đầu tư vào một kỹ năng,
họ thường có xu hướng trở nên rất xuất sắc với kỹ năng ấy.
Cuối cùng là vài điều
không nên làm:
- Đừng dùng một cái tên (nick name) hào nhoáng và vô nghĩa.
- Đừng dính vào những trận khẩu chiến trên Usenet (hoặc bất cứ nơi đâu).
- Đừng tự gọi mình là 'du đãng mạng'
-30-, và đừng phí thời gian với những kẻ tự xưng như thế.
- Đừng gởi bài hoặc e-mail đầy những lỗi chính tả và lỗi văn phạm.
Thứ tiếng tăm duy nhất mà bạn tạo ra nếu làm một trong những điều
ở trên là tự biến mình thành kẻ bị từ chối. Hackers thường có trí nhớ
rất tốt - nó có thể làm bạn mất nhiều năm mới được tiếp nhận trở lại
nếu bạn tạo ra những lỗi ngu xuẩn ngay từ đầu.
Trở ngại của nickname đáng được nhắc kỹ hơn. Che dấu danh tánh của
mình đằng sau một nickname là trò con nít và có tính đặc thù của những
tay crackers, warezd00dz
-31- và những dạng rác rưởi khác. Hackers không làm những trò này; họ tự hào với những điều họ làm và muốn nó đi chung với
tên thật của họ. Cho nên, nếu bạn có một cái nickname, bỏ nó đi. Văn hoá hacker thực thụ sẽ đánh dấu bạn là một tên thất bại.
Các nguồn khác Paul Graham viết một bài tiểu luận có tên
Great Hackers và một bài khác là
Undergraduation trong đó ông ta nói đến những điều nên làm.
Peter Seebach duy trì một trang
Hacker FAQ dành riêng cho các ngài giám đốc, những người không biết cách ứng phó với hackers ra sao.
Thêm một tài liệu có tên
How To Be A Programmer,
một tài liệu xuất sắc hỗ trợ cho tài liệu HOWTO này. Nó chẳng những
mang giá trị giáo dục về việc gõ code và kỹ năng mà còn chỉ ra cách
sinh hoạt trong một nhóm lập trình.
Tôi cũng viết tài liệu
A Brief History of Hackerdom Tôi đã viết một bài
The Cathedral and the Bazaar giải thích rất nhiều về cách Linux và xã hội open-source làm việc. Tôi cũng khai triển chủ đề này trực tiếp hơn trong phần
Homesteading the Noosphere.
Rick Moen viết một tài liệu xuất sắc về cách
how to run a Linux user group (làm cách nào để điều hành một nhóm người dùng Linux).
Rick Moen và tôi đã phối hợp hình thành một tài liệu khác
How To Ask Smart Questions. Tài liệu này sẽ giúp bạn tìm sự giúp đỡ theo theo hướng bạn có thể thực sự có được câu trả lời.
Các câu hỏi thường gặp: H: Làm sao tôi biết được tôi có phải là một hacker hay không?
Đ: Tự hỏi ba câu sau:
- Bạn có nói ngôn ngữ code nhuần nhuyễn không?
- Bạn có xác định mục tiêu và giá trị của cộng đồng hacker chưa?
- Đã bao giờ bạn được một thành viên của một cộng đồng hacker đã thành hình và có uy tín gọi bạn là hacker chưa?
Nếu bạn có thể trả lời vâng cho
cả ba câu trên, bạn đã là một hacker. Nếu chỉ hai câu cũng chưa đủ.
Trắc nghiệm đầu dành cho kỹ năng của bạn. Có thể bạn đạt được câu
này nếu bạn có tối thiểu khả năng kỹ thuật được mô tả ở phần đầu của
tài liệu. Bạn sẽ đi xuyên suốt phần thử nghiệm này nếu bạn đã có một
khối lượng mã nguồn đã được một công trình mở nguồn nào đó tiếp nhận.
Trắc nghiệm thứ nhì dành cho thái độ. Nếu năm điểm nền tảng tư duy
của một hacker có vẻ hiển nhiên đối với bạn, gần với cách bạn đã sống
chớ chẳng phải là chuyện gì xa vời thì bạn đã vượt quá nửa chặng đường.
Đó là nửa phần hướng nội, phần còn lại, phần hướng ngoại là mức độ bạn
được một cộng đồng hacker có những chương trình làm việc lâu dài công
nhận.
Đây là danh sách chưa hoàn chỉnh, chỉ mang tính tượng trưng của
một số chương trình làm việc: Bạn có quan tâm hay không nếu Linux cải
thiện và mở rộng? Bạn có nhiệt thành với tính tự do của software? Bạn
có căng thẳng với những biểu hiện độc quyền? Bạn có làm việc dựa trên
căn bản máy tính có thể làm công cụ để biến thế giới trở nên một nơi
giàu có và nhân bản hơn?
Một điểm cần dè chừng với thứ tự ở đây. Cộng đồng hacker có một số
điểm quan tâm mang tính tự vệ trên phương diện chính trị khá cụ thể -
hai điểm dùng để tự vệ quyền tự do ngôn luận và tẩy chay sức mạnh
"intellectual-property"
-32- vì nó có thể
biến mã nguồn mở trở thành bất hợp pháp. Một số các chương trình dài
hạn gồm có những tổ chức dân chủ như Electronic Frontier Foundation (Tổ
chức điện tử tiền phong), và thái độ hướng ngoại hàm chứa việc hỗ trợ
chúng. Bên ngoài những chuyện này, quan điểm chung của hầu hết các
hackers là thử nghiệm hệ thống hoá thái độ hoài nghi của hacker vào một
chương trình cụ thể mang tính chính trị; các thử nghiệm như thế thường
bị lạc đề và chia rẽ. Nếu có ai đó mướn bạn tuần hành ở thủ đô của bạn
với nhân danh "thái độ hacker" thì họ bị lạc đề rồi. Lời hồi đáp đúng
đắn có thể là "Im mồm và phô chúng mã nguồn".
Trắc nghiệm thứ ba có một phần gay go với tính tái diễn trong đó. Trong phần
Hacker là gì?,
tôi đã nêu ra rằng làm một hacker là một phần thuộc về một thứ văn hoá
ngầm nào đó hoặc một mạng lưới xã hội có chung lịch sử, một nội diện và
một ngoại diện. Trong quá khứ, hackers kém liên kết và thức tỉnh như
ngày nay. Nhưng điểm quan trọng là khía cạnh mạng lưới xã hội đã gia
tăng đáng kể sau hơn ba mươi năm và Internet đã tạo ra những kết nối
với phần lõi của văn hoá ngầm hacker một cách dễ dàng hơn để phát triển
và duy trì. Một trong những biểu thị của sự thay đổi này là, trong thế
kỷ này, chúng tôi đã có T-shirts riêng của chúng tôi.
Những chuyên gia xã hội học nghiên cứu các mạng lưới tương tự như
mạng lưới của các hackers dưới quy chế ở dạng "trường học vô hình"
-33-,
đã ghi nhận rằng những mạng lưới như thế thường có các kẻ giữ cổng
(gatekeepers) - những thành viên cốt lõi có thẩm quyền xã hội để giới
thiệu những thành viên mới vào mạng lưới này. Bởi "trường học vô hình"
văn hoá hacker là một thứ văn hoá thư giãn và không nghiêm trọng, vai
trò của kẻ giữ cổng cũng không nghiêm trọng. Nhưng một điều các hackers
ghi xương khắc cốt rằng không phải hacker nào cũng là kẻ giữ cổng. Kẻ
giữ cổng phải có mức già dặn và thành đạt trước khi họ có thể lãnh nhận
tước hiệu này. Mức độ bao nhiêu thì khó mà đếm nhưng mọi hacker biết
được điều này khi họ nhận thấy như thế.
H: Ông dạy tôi cách hack được không?
Đ: Từ lúc đăng tải trang này lên, tôi nhận được sa số thỉnh
cầu mỗi tuần (thường là hàng loạt mỗi ngày) từ mọi người để yêu cầu
"dạy tôi hết mọi thứ về hacking". Không may, tôi chẳng có thời gian và
năng lực để làm chuyện này; các công trình hack của riêng tôi và làm
việc ở vị thế một người vận động cho open-source, chiếm hết 110% thời
gian của tôi.
Ngay cả tôi có dạy được đi chăng nữa, hacking là một thứ thái độ
và kỹ năng mà bạn phải tự dạy lấy chính mình. Bạn sẽ thấy rằng những
hackers thứ thiệt sẵn sàng giúp bạn nhưng họ sẽ không tôn trọng bạn nếu
như bạn đòi hỏi họ "đút bé ăn"
-34- những thứ họ biết.
Học vài điều trước đã. Cho họ thấy bạn đang cố gắng, bạn có khả
năng tự học. Rồi sau đó mới đến gặp hackers với những câu hỏi cụ thể.
Nếu bạn gởi mail đến một hacker để được khuyên nhủ, đây là hai
điều bạn cần biết trước. Thứ nhất, chúng tôi thấy rằng những ai lười
nhác hoặc vô trách nhiệm với chính những gì họ viết thường lười nhác và
vô trách nhiệm trong suy nghĩ của họ để có thể trở thành hacker tốt -
bởi thế, nên cẩn thận với từ vựng và dùng văn phạm câu cú cho tốt, nếu
không bạn sẽ bị làm ngơ. Điều thứ nhì, đừng
có mà dám đòi hỏi
hồi âm đến một e-mail khác với e-mail bạn đang dùng để gởi tới; chúng
tôi thấy những ai làm chuyện này thường là những kẻ trộm hoặc dùng tài
khoản chôm chỉa, và chúng tôi chẳng thích tưởng thưởng hoặc trợ giúp
thói ăn cắp.
H: Vậy tôi bắt đầu thế nào đây?
Đ: Cách tốt nhất để bạn bắt đầu là đi đến một cuộc họp của LUG (Linux user group). Bạn có thể tìm thấy các nhóm này ở
LDP General Linux Information Page;
hẳn có một nhóm gần bạn, có thể nhóm này có liên hệ với một trường cao
đẳng hoặc trường đại học. Các thành viên LUG có lẽ sẽ cho bạn một bản
Linux nếu bạn yêu cầu, và chắc chắn sẽ giúp bạn cài đặt và bắt đầu.
H: Khi nào thì tôi bắt đầu được? có quá muộn để tôi học không?
Đ: Bất cứ tuổi nào bạn muốn bắt đầu thì tuổi ấy thì hợp.
Hầu hết mọi người thường quan tâm ở lứa 15 - 20, nhưng tôi biết có
nhiều trường hợp ngoại lệ cho cả hai phía.
H: Tôi sẽ mất bao lâu để học hack?
Đ: Điều này tùy thuộc ở chỗ bạn tài năng và chịu khó thế
nào nữa. Hầu hết mọi người có thể đạt được một mớ kỹ năng đáng nể trong
vòng mười tám tháng cho đến hai năm nếu họ chịu khó tập trung. Nhưng
đừng nghĩ rằng nó chấm dứt ở đó; nếu bạn là hacker thứ thiệt, bạn sẽ
mất suốt đời để học và hoàn thiện thành quả của bạn.
H: Visual Basic có phải là một ngôn ngữ tốt để bắt đầu không?
Đ: Nếu bạn hỏi câu này thì chắc chắn bạn đang nghĩ đến
chuyện muốn hack Microsoft Windows. Đây là một ý kiến tồi. Khi tôi so
sánh việc học hack trên Windows giống như việc học khiêu vũ như toàn cơ
thể bị bó bột, tôi không có ý đùa với so sánh này. Đừng bén mảng đến
đó. Nó xấu xí và sẽ không bao giờ ngưng bị xấu xí.
Có một lý do cụ thể về trở ngại của Visual Basic; chủ yếu là nó
không chuyển dụng (từ hệ điều hành này sang hệ điều hành khác) được.
Dẫu có một bản thử nghiệm nguồn mở ứng dụng Visual Basic, các tiêu
chuẩn có thể ứng dụ được từ ECMA không đủ bao trùm một nhúm giao diện
lập trình
-35- bé nhỏ. Trên Windows, hầu
hết các thư viện được hỗ trợ thuộc dạng thương mại có bản quyền của một
công ty nào đó cung cấp (như Microsoft); nếu bạn không
cực kỳcẩn thận với những tính năng bạn dùng - dù có cẩn thận hơn bất cứ
newbie nào có khả năng cẩn thận - bạn sẽ bị dính chặt vào những hoạt
nền chỉ có Microsoft hỗ trợ. Nếu bạn bắt đầu với Unix, có những ngôn
ngữ và thư viện tốt hơn rất nhiều. Ví dụ như Python.
Cũng như các dạng Basics khác, Visual Basic là thứ ngôn ngữ được
thiết kế một cách nghèo nàn chỉ dạy bạn những thói quen lập trình xấu.
Đừng,
đừng bắt tôi phải mô tả chi tiết; để giải thích chắc phải
đầy một cuốn sách. Thay vì vậy, nên học loại ngôn ngữ được thiết kế đẹp
hơn.
Một trong những thói quen xấu là trở nên phụ thuộc vào một nhóm
duy nhất cung cấp thư viện, tiện ích và công cụ lập trình. Tổng quát mà
nói, bất cứ ngôn ngữ nào không được hỗ trợ đầy đủ trên ít nhất Linux
hoặc một dạng BSB khác, hoặc/và ít nhất ba hệ điều hành khác nhau thì
đó là một ngôn ngữ quá tệ để học cách hack trên đó.
H: Ông có thể giúp tôi crack một hệ thống hay dạy tôi cách làm không?
Đ: Không. Bất cứ ai vẫn có thể hỏi một câu như thế sau khi
đọc cái FAQ này thì kẻ ấy quá ngu độn để có thể được dạy dỗ, ngay cả
tôi có thời gian để dạy dỗ. Bất cứ email nào gởi đến để hỏi những câu
như thế này tôi sẽ làm ngơ hoặc trả lời với nội dung cực kỳ nặng nề.
H: Làm sao tôi có thể lấy được password của account nào đó?
Đ: Cái này là cracking. Biến đi, đồ ngốc.
H: Làm cách nào tôi có thể xâm nhập, đọc, theo dõi email của ai đó?
Đ: Cái này là cracking. Cút xéo, đồ đần.
H: Làm sao tôi chiếm được quyền admin của một IRC?
Đ: Cái này là cracking. Đi cho khuất mắt, thằng ngu.
H: Tôi bị crack. Ông có thể giúp tôi ngăn chặn không?
Đ: Không. Mỗi khi ai hỏi tôi câu này, hầu như đó là câu hỏi
của một kẻ khốn khổ đang dùng Microsoft Windows. Khó có thể bảo mật
tuyệt đối Windows để khỏi bị tấn công; mớ mã nguồn và thiết kế có quá
nhiều lỗ hổng, điều này khiến cho việc bảo mật Windows giống như thả
trôi chiếc thuyền trong vùng bị chắn. Chỉ có một cách duy nhất và đáng
tin cậy là bắt đầu chuyển sang Linux hoặc một hệ điều hành nào khác ít
nhất được thế kế có khả năng bảo mật.
H: Tôi bị sự cố với các chương trình chạy trên Windows. Ông giúp được không?
Đ: Vâng. Vào khung DOS và gõ "format c:". Bất cứ trở ngại nào bạn đang gặp đều sẽ biến mất trong vài phút.
H: Tôi có thể gặp vài hacker thứ thiệt để trò chuyện?
Đ: Cách tốt nhất là tìm một nhóm người dùng Unix hay Linux
ở địa phương của bạn và đến dự các buổi họp mặt của họ (bạn có thể tìm
vô số đường dẫn đến các nhóm người dùng trên
LDP ở ibilio).
(Trước đây tôi thường nói ở đây rằng bạn sẽ không tìm ra một
hacker thứ thiệt nào trên IRC, nhưng tôi nhận ra điều này đang thay
đổi. Hẳn nhiên đã có một số nhóm hackers thứ thiệt có liên hệ đến GIMP
và Perl đang sử dụng một số kênh IRC).
H: Ông có thể giới thiệu một số sách giá trị về những vấn đề liên quan đến hacking không?
Đ: Tôi bảo trì
Linux Reading list HOWTO có thể bạn sẽ thấy hữu dụng. Trang
Loginataka cũng có thể lý thú với bạn.
Đối với thông tin nhập môn cho Python, xem tài liệu
introductory materials ở trang Python.
H: Liệu tôi có cần giỏi toán để trở thành hacker không?
Đ: Không. Hacking dùng rất ít loại toán học hoặc số học
thuần túy. Một cách cụ thể hơn, bạn sẽ hiếm khi cần đến các tam giác
thức, tích phân hoặc khả năng lý giải toán (có một số ngoại lệ cho một
số ứng dụng liên quan đến lãnh vực kỹ thuật ảnh không gian 3 chiều).
Nắm được các logic và số học Boolean thì tốt. Một số giới hạn thuộc về
toán (bao gồm lý thuyết giới hạn, thuật tổng hợp và đồ thị) có thể sẽ
hữu dụng.
Điều quan trọng hơn hết: bạn cần có khả năng suy nghĩ một cách
logic và khai triển những chuỗi lý lẽ chính xác theo cách toán học. Nội
dung toán học sẽ không trực tiếp giúp bạn nhưng bạn sẽ cần kỷ luật và
trí tuệ toán học (để ứng dụng trong hacking). Nếu bạn thiếu trí tuệ,
bạn sẽ khó hy vọng thành hacker; nếu bạn thiếu kỷ luật, bạn nên bồi
dưỡng phần này.
Tôi nghĩ một cách khá hay là tìm thử xem bạn có những đức tính này
không là tìm một bản "What Is The Name of This Book" của Raymond
Smullyan để đọc. Lối đùa bỡn trong việc giải quyết những logic phức tạp
mà Smullyan đã viết rất gần với tinh thần của hacker. Có thể giải quyết
trở ngại là việc rất hay; giải quyết chúng một cách
thích thú là việc càng hay hơn nữa.
H: Tôi nên học ngôn ngữ nào trước?
Đ: XHTML (dạng mới nhất của HTML) nếu bạn chưa biết. Có rất
nhiều cuốn sách về HTML khá hào nhoáng và phô trương và có quá ít cuốn
hay. Cuốn tôi thích nhất là
HTML: The Definitive Guide.
Tuy nhiên, HTML không phải là một ngôn ngữ lập trình thật thụ. Nếu bạn bắt đầu lập trình, tôi giới thiệu bạn khởi đầu với
Python.
Bạn sẽ nghe nhiều người giới thiệu Perl và Perl vẫn phổ biến hơn Python
nhưng lại học khó hơn và (theo ý kiến cá nhân tôi) thiết kế kém hơn.
C rất quan trọng nhưng khó hơn Python và Perl rất nhiều. Đừng cố học nó trước.
Đối với những người dùng Windows,
đừng chấp nhận an thân với Visual Basic. Nó sẽ dạy bạn thói xấu và nó không thể mang ra khỏi Windows. Nên tránh.
H: Tôi cần loại hardware thế nào?
Trước đây máy tính cá nhân khá hạn chế độ mạnh và hạn chế bộ nhớ,
chỉ đủ để họ ấn định giới hạn giả tạo cho quá trình học hỏi của hacker.
Từ giữa thập niên 90, điều này không còn nữa; bất cứ máy nào từ Intel
486DX50 trở lên đều có đủ độ mạnh để làm lập trình, viết X, và thông
tin qua Internet và đĩa có dung tích bé nhất ngày nay cũng đã lớn đủ để
dùng.
Điều quan trọng trong việc chọn một cái máy để học là nó phải
tương thích với Linux (hoặc với BSD nếu bạn muốn đi theo nhánh này).
Với các máy hiện đại gần đây, điều này không là vấn đề. Chỉ có một số
khu vực như modems và card mạng không dây; vài máy được trang bị loại
hardware chỉ dành riêng cho Windows sẽ không chạy với Linux.
Có một tờ FAQ về vấn đề tương thích hardware; bản mới nhất ở
đây.
H: Tôi muốn đóng góp. Ông có thể giúp tôi chọn một vấn đề nào đó để làm việc với nó không?
Đ: Không, bởi vì tôi không rõ khả năng lẫn những việc bạn
thích. Bạn cần phải tự có động lực của chính bản thân không thì bạn sẽ
không bền, đây là lý do tại sao bạn được ai đó chọn hướng đi cho bạn
thì kết quả chẳng đi tới đâu là vậy.
Thử cái này xem. Theo dõi một công trình vừa được công bố trên
Freshmeat vài ngày. Khi bạn thấy cái nào làm bạn nghĩ "Quá đã! tôi muốn làm việc với nó!" thì tham gia.
H: Tôi có cần phải ghét và 'nện' Microsoft không?
Đ: Không, bạn không cần. Không phải do Microsoft không tởm
nhưng một thời gian dài trước khi có Microsoft thì đã có xã hội hacker
và vẫn sẽ có xã hội này tồn tại lâu dài sau khi Microsoft chỉ có trong
lịch sử. Năng lực bạn có để ghét Microsoft nên dùng cho sản phẩm trí
tuệ của chính bạn. Viết code giá trị - điều này sẽ đủ 'nện' Microsoft
mà không cần ô nhiễm cái karma của bạn.
H: Nhưng không phải open-source sẽ khiến cho lập trình viên thất nghiệp sao?
Đ: Điều này có vẻ không phải như vậy - cho đến nay, kỹ nghệ
software mở nguồn dường như tạo công việc hơn là triệt giảm công việc.
Nếu viết được một chương trình có hiệu quả kinh tế hơn là không viết gì
cả, một lập trình viên sẽ có thu nhập bất kể chương trình này sẽ là
open-source hay không sau khi nó đã hoàn thành. Và, bất kể có bao nhiêu
software "miễn phí" được viết nên, lúc nào cũng có nhiều nhu cầu cho
những ứng dụng mới và chuyên biệt. Tôi có viết cụ thể hơn về vấn đề này
ở trang
Open Source.
H: Tôi có thể lấy một bản Unix miễn phí ở đâu?
Đ: Nếu bạn chưa cài một bản Unix trên máy, trong bài này
tôi đã cung cấp những nơi để lấy những bản Unix miễn phí thông dụng
nhất. Để trở thành hacker, bạn cần động lực và khởi điểm và khả năng tự
giáo dục mình. Bắt đầu đi...
conmale dịch và chú thích từ nguyên bản
"How To Become A Hacker" - 14/9/2006
Chú thích: -27-: Đây là một chi tiết sinh hoạt
khá bình thường ở các nước Âu Mỹ nhưng điều này khó có thể thực hiện
được ở bối cảnh của VN hiện nay.
-28-: Zen có nghĩa là Thiền (禅). Xin
trích một câu 'định nghĩa' trong cuốn "AN INTRODUCTION TO ZEN BUDDHISM"
của Dr. Daisetz Suzuki:
"The discipline of Zen consists in opening the mental eye in order to look into the very reason of existence" (tiêu chí của Thiền hàm chứa nhãn quan trí tuệ để có thể nhìn thấu vào tận cùng lý do của sự hiện hữu).
-29-: Nguyên bản
"puns". Tạm
dịch là "chơi chữ". Pun là lối dùng từ ngộ nghĩnh và hàm ý. Nhiều
nghiên cứu tâm lý học và xã hội học cho rằng, những người có khả năng
chơi chữ là những người thường có IQ (Intelligent Quotient) (độ đo trí
thông minh) cao.
-30-: Nguyên bản
"cyberpunk".
Tạm dịch là "du đãng mạng". Đây là một từ mới chỉ xuất hiện những năm
gần đây (từ khi Internet bùng nổ). Từ "punk" đứng riêng lẻ chỉ cho một
cá nhân còn nhỏ tuổi nhưng thuộc dạng "nóng máu", ưa gây gỗ, thích
khiêu khích, dễ dính vào những đụng chạm mang tính bạo động. Từ
"cyberpunk" được những tay "anh chị" trên mạng thích dùng. Nó ám chỉ sự
kiêu hãnh của một kẻ đã từng trải và lăn lộn trên mạng.
-31-: Từ warezd00dz và những từ ở dạng
biến chữ O thành zero (0) và ngược lại rất đặc thù với văn hoá "mạng".
Những từ có tính chất được tạo ra từ việc xen kẽ giữa số và chữ, xen kẽ
giữa chữ bình thường và chữ IN, lồng từ tượng thanh, từ mang tính cảm
thán để tạo từ mới đã trở nên rất phổ biến gần đây. Tác giả tỏ vẻ khá
ác cảm với loại văn hoá này.
-32-: "Intellectual property", một cụm
từ được dùng phổ biến trong ngành công nghệ thông tin. Cụm từ này có
nghĩa tương tự cho tiếng Việt là "tài sản trí tuệ". Nó được dùng để bảo
vệ chủ quyền của một sản phẩm (thường là software hoặc một sáng kiến
nào đó). Trong đoạn trên, quan điểm bài trừ vấn đề bảo tồn sức mạnh của
các tập đoàn thương mại trong ngành công nghệ thông tin của tác giả thể
hiện khá rõ.
-33-: Nguyên bản
"invisble colleges".
Tạm dịch là "trường học vô hình". Đây là một từ đậm tính ẩn dụ. "Trường
học vô hình" ở đây có nghĩa là cái "ải", một "cơ cấu" mang tính tính
kiểm soát và có quy định cụ thể nhưng nó ở dạng "vô hình", mọi người
ngầm hiểu và ngầm chấp thuận những quy định đã có.
-34-: Nguyên bản
"spoon-fed".
Tạm dịch thoát là "đút bé ăn". Từ này chỉ cho hình tượng một người
(thường là em bé) không có khả năng tự sử dụng muỗng mà phải cậy vào
người khác đút cho ăn. Nó ám chỉ tính thiếu năng lực và cố gắng tự vươn
lên của một cá nhân.
-35-: Nguyên bản
"programming interface".
Tạm dịch là "giao diện lập trình". Một ngôn ngữ lập trình thường có bộ
thư viện ứng dụng cho phép lập trình viên thừa hưởng và sử dụng những
gì có sẵn. Phương tiện để tiếp cận và sử dụng bộ thư viện này tạm gọi
là "giao diện". Có lẽ cụm "điểm giao tiếp" chính xác hơn nhưng dài dòng
hơn nên tạm dùng "giao diện".
nguồn HVA