Thứ Ba, 28 tháng 10, 2008

EVN Telecom - nạn nhân mới của VNPT

Hôm nay cũng thật là tức, tại sao mạng điện thoại di động Viettel không gởi tin nhắn cho EVN telecom và mình lên google tìm kiếm, cuối cùng cũng đã ra, do các mạng di động cạnh tranh chơi không đẹp với nhau:
Khi những quy định về kết nối do Bộ Bưu chính Viễn thông ban hành vẫn còn nguyên mùi giấy thì chuyện tranh chấp lại tiếp tục xảy ra giữa VNPT và doanh nghiệp mới nhập cuộc EVN Telecom.
Ông "alô" lại tranh chấp chuyện kết nối.
Ảnh: Tuổi Trẻ.
Chính thức cung cấp từ cuối năm ngoái, dịch vụ điện thoại cố định không dây (E-com) được xem là thế mạnh của EVN Telecom. Nhà cung cấp này có 3 dịch vụ điện thoại gồm E-com, E-Phone (điện thoại di động nội tỉnh) và E-Mobile (điện thoại di động công nghệ CDMA) với trên 100.000 thuê bao. Trong đó, số thuê bao của riêng E-com đã chiếm xấp xỉ 100.000.


E-com được coi là thế mạnh bởi EVN Telecom xác định hai dịch vụ còn lại không thể địch được với các mạng di động VinaPhone, MobiFone, Viettel Mobile. Trong khi đó, cùng là điện thoại cố định nhưng E-com vượt trội hơn các dịch vụ của VNPT và Viettel ở ưu điểm dễ lắp đặt do không phải kéo dây, có thể phát triển tới các vùng sâu, vùng xa. Đặc biệt, khi kết nối với máy tính, các máy điện thoại sử dụng dịch vụ E-com sẽ hoạt động như một modem, cho phép kết nối Internet tốc độ cao, giá cước rẻ.
Với những tính năng vượt trội này, EVN Telecom hi vọng sẽ phát triển mạnh hơn nữa, nếu người dùng dịch vụ E-com có thể gửi và nhận được tin nhắn với các mạng di động của VNPT. Tuy nhiên, sau gần một năm triển khai, E-com mới chỉ được nhắn tin trong nội mạng các thuê của chính EVN Telecom chứ chưa nối được sang hai mạng di động có thuê bao lớn nhất trên thị trường của VNPT là VinaPhone và MobiFone. Thật ra ngay từ khi triển khai dịch vụ, EVN Telecom đã tiến hành đàm phán kết nối tin nhắn với VNPT nhưng ông “độc quyền” vẫn cứ lần lữa không chịu mở cổng cho EVN Telecom.
Hiện nay, trong số ba dịch vụ của EVN Telecom, chỉ duy nhất mạng điện thoại di động 096 - E-Mobile đã thông tin nhắn với các mạng của VNPT. Sở dĩ "ông lớn" chịu mở cổng cho dịch vụ này bởi trước họ đã kết nối cho S-Fone nên không có cớ gì để gây khó dễ cho dịch vụ di động của EVN Telecom.
Không cho khách hàng hưởng quyền miễn cước
Ngày càng nhiều người sử dụng điện thoại di động.


Ảnh: Hoàng Hà.
Không chỉ gây khó dễ trong kết nối đối với dịch vụ E-com, một đại diện của EVN Telecom cho biết, VNPT cũng đang gây khó dễ trong việc kết nối từ thuê bao của VNPT vào số chăm sóc khách hàng của nhà cung cấp này.
Trong khi đó, theo quy định chung của quốc tế, tất cả thuê bao điện thoại đều được gọi miễn phí vào số chăm sóc khách hàng (bắt đầu bằng mã số 1800) của bất kỳ nhà cung cấp nào. Quy định này cho phép khách hàng sử dụng dịch vụ của VNPT muốn sử dụng thêm dịch vụ của EVN Telecom hoặc đang sử dụng đồng thời dịch vụ của hai nhà cung cấp đều có thể gọi miễn phí từ thuê bao của VNPT vào số chăm sóc khách hàng của EVN Telecom để hỏi thông tin.
Trên thực tế, VNPT lại không mở kết nối cho các thuê bao của mình gọi vào số chăm sóc khách hàng của EVN Telecom. VNPT đòi EVN Telecom phải trả 600 đồng/phút đối với các cuộc gọi vào số chăm sóc khách hàng của EVN Telecom. Thế nhưng, ngay cả khi EVN Telecom bấm bụng chấp nhận trả số tiền này thì VNPT vẫn khất lần chưa chịu mở kết nối.
Hầu hết doanh nghiệp mới đều cảm thấy ngao ngán khi đàm phán kết nối với mạng viễn thông VNPT. S-Fone từng phải trầy trật mới kết nối được dịch vụ nhắn tin giữa mạng di động S-Fone với mạng di động VinaPhone và MobiFone của VNPT.
Viettel từng điên đầu khi VNPT không chịu đáp ứng nhu cầu kết nối cho doanh nghiệp này khiến Bộ Quốc phòng (cơ quan chủ quản của Viettel) phải “kêu cứu” lên Thủ tướng.
Cực chẳng đã, EVN Telecom phải mở một đầu số chăm sóc khách hàng khác (2.232323) không theo mã số chuẩn quốc tế. Điều đáng nói là khi gọi vào đầu số này, khách hàng của VNPT sẽ phải trả tiền như một cuộc gọi thông thường. Như thế, VNPT tận thu của khách hàng từ cả những cuộc gọi lẽ ra được miễn cước.
Theo một quan chức của EVN Telecom, lý do mà VNPT đưa ra để không mở kết nối cho các dịch vụ của EVN Telecom là do nhà cung cấp này đang trong quá trình thay đổi từ mô hình Tổng công ty sang mô hình tập đoàn. Quan chức này cho rằng, nếu VNPT thật sự thiện chí thì việc thay đổi mô hình hoàn toàn không ảnh hưởng tới việc đàm phán kết nối giữa hai bên.
Trong khi đó, ông Bùi Quốc Việt, Giám đốc Trung tâm Thông tin bưu điện, người phát ngôn của VNPT, lại cho rằng thực tế việc kết nối giữa các mạng viễn thông không đơn giản và cần phải có thời gian để thực hiện, đặc biệt trong trường hợp thiết bị giữa các mạng không đồng bộ với nhau.
Đến thời điểm này nay, mặc dù chưa có tín hiệu nào cho thấy VNPT sẵn sàng mở kết nối cho EVN Telecom nhưng nhà cung cấp dịch vụ này vẫn chưa muốn hành động như Viettel đã làm là kêu lên cơ quan chủ quản để “cầu cứu” Thủ tướng.
EVN Telecom vẫn kiên nhẫn gửi các công văn sang VNPT để thúc, đồng thời thông báo cho tổ chỉ đạo kết nối của Bộ Bưu chính Viễn thông biết. Trong khi VNPT không có thông báo chính thức nào thì tổ kết nối dường như cũng cho đây là chuyện cỏn con giữa các doanh nghiệp với nhau nên chưa có động thái can thiệp. Cuối cùng, những chiêu cạnh tranh không lành mạnh giữa doanh nghiệp lớn với doanh nghiệp bé sẽ lại khiến người tiêu dùng phải chịu thiệt thòi.

(Theo VnExpress)

Thứ Sáu, 17 tháng 10, 2008

Chuyện cười IT

Một bác sĩ, một kỹ sư xây dựng và một chuyên viên IT cùng đến trước cổng thiên đường.
Vị bác sĩ lên tiếng trước:
- Cả cuộc đời, tôi đã cứu chữa không biết bao nhiêu người. Xin hãy cho tôi vào thiên đường. Thánh Peter bảo:
- Nhưng ông chưa bao giờ chữa cho những người tàn tật, nghèo khổ. Ông sẽ phải xuống địa ngục.
Đến lượt anh kỹ sư xây dựng:
- Cuộc đời tôi chỉ lo làm đẹp đường phố…
- Nhưng anh bỏ mặc người vô gia cư và làm ô nhiễm môi trường nên anh cũng phải xuống địa ngục.
Chuyên viên IT rụt rè tiến lên:
- Thưa ngài, tôi là một lập trình viên…
- Thôi được rồi, cả đời anh đã ở trong địa ngục, xin mời anh vào thiên đường.

Bài toán tháp Hà Nội

Nguồn từ wikipedia.org

Bài toán tháp Hà Nội (tiếng Anh gọi là Tower of Hanoi hay Towers of Hanoi) xuất phát từ trò chơi đố Tháp Hà Nội.

Một bộ mẫu của Tháp Hà Nội

Mục đích của bài toán là thực hiện được yêu cầu của trò chơi. Dạng bài toán thông dụng nhất là: "Người chơi được cho ba cái cọc và một số đĩa có kích thước khác nhau có thể cho vào các cọc này. Ban đầu sắp xếp các đĩa theo trật tự kích thước vào một cọc sao cho đĩa nhỏ nhất nằm trên cùng, tức là tạo ra một dạng hình nón. Người chơi phải di chuyển toàn bộ số đĩa sang một cọc khác, tuân theo các quy tắc sau:

  • Một lần chỉ được di chuyển một đĩa
  • Một đĩa chỉ có thể được đặt lên một đĩa lớn hơn (không nhất thiết hai đĩa này phải có kích thước liền kề, tức là đĩa nhỏ nhất có thể nằm trên đĩa lớn nhất)".

Bài toán này có lời giải chính xác. Tuy nhiên các mở rộng cho trường hợp có nhiều hơn ba cọc cho đến nay vẫn chưa được giải cặn kẽ.


Cách giải:
Đa số các trò chơi dạng này có 8 đĩa. Đối với người mới chơi thì có vẻ khó nhưng thật ra thuật giải của nó hết sức đơn giản:

Thuật giải đệ quy

đặt tên các cọc là A, B, C -- những tên này có thể chuyển ở các bước khác nhau

gọi n là tổng số đĩa

đánh số đĩa từ 1 (nhỏ nhất, trên cùng) đến n (lớn nhất, dưới cùng)

Để chuyển n đĩa từ cọc A sang cọc B thì cần:

  1. chuyển n-1 đĩa từ A sang C. Chỉ còn lại đĩa #n trên cọc A
  2. chuyển đĩa #n từ A sang B
  3. chuyển n-1 đĩa từ C sang B cho chúng nằm trên đĩa #n

Phương pháp trên được gọi là thuật giải đệ quy: để tiến hành bước 1 và 3, áp dụng lại thuật giải cho n-1. Toàn bộ quá trình là một số hữu hạn các bước, vì đến một lúc nào đó thuật giải sẽ áp dụng cho n = 1. Bước này chỉ đơn giản là chuyển một đĩa duy nhất từ cọc A sang cọc C.


VAR n: Integer; Procedure chuyen(sodia: Integer; CotNguon: Char; CotDich: Char; CotTG: Char);
Begin
If sodia>0 then begin
chuyen(sodia-1, CotNguon, CotTG, CotDich);
Writeln(CotNguon,'->',CotDich); { Dia lon nhat hien tai }
chuyen(sodia-1, CotTG, CotDich, CotNguon)
End;
End;
BEGIN
Write('Hay nhap so dia: '); Readln(n);
chuyen(n,'A','B','C');
Readln;
END.

Giải thích thuật giải

(Trên) Lời giải cho 3 đĩa. (Dưới) Lời giải cho 4 đĩa.
(Trên) Lời giải cho 3 đĩa. (Dưới) Lời giải cho 4 đĩa.
Tái tạo lại trang trong phần này để xem sự tương quan giữa hai lời giải.
Tái tạo lại trang trong phần này để xem sự tương quan giữa hai lời giải.

Sau đây là dạng dễ xem hơn của thuật giải này:

  1. chuyển đĩa 1 sang cọc B
  2. chuyển đĩa 2 sang cọc C
  3. chuyển đĩa 1 từ B sang C sao cho nó nằm lên 2

Vậy ta hiện có 2 đĩa đã nằm trên cọc C, cọc B hiện thời trống

  1. chuyển đĩa 3 sang cọc B
  2. lặp lại 3 bước trên để chuyển 1 & 2 cho nằm lên 3

Mỗi lần dựng xong tháp từ đĩa i đến 1, chuyển đĩa i+1 từ cọc A là cọc xuất phát, rồi lại di chuyển tháp đã dựng lên đĩa "i+1".


Giải thuật bằng biểu diễn nhị phân

Các vị trí đĩa có thể xác định được trực tiếp từ biểu diễn nhị phân của số thứ tự di chuyển (cơ số 2 với một chữ số cho mỗi đĩa) trong đó các dãy 1 và các dãy 0 tượng trưng cho các dãy các đĩa liền nhau trên cùng cọc, và mỗi khi chữ số có thay đổi thì đĩa kế tiếp sẽ dời sang trái hay phải một cọc (hay chuyển sang cọc ngoài cùng phía đối diện). Chữ số ở đầu đại diện cho đĩa lớn nhất và nếu là chữ số 0 thì có nghĩa là đĩa lớn nhất không dời khỏi cọc xuất phát và ngược lại. Đặt các chữ số 1 và 0 luân phiên bên dưới các chữ số của một bước chuyển cho phép biết được di chuyển theo một chiều khi nó hợp với chữ số của bước chuyển tại nơi chữ số thay đổi và theo chiều kia khi nó không hợp. Do đó bước chuyển 00000000... có nghĩa là đặt 8 đĩa lớn nhất lên cọc ban đầu, bước chuyển 11111111... có nghĩa là đặt chúng lên cọc cuối cùng, và bước chuyển 11011000... có hai đĩa lớn nhất trên cọc đích, đĩa tiếp theo trên cọc xuất phát, hai đĩa tiếp theo ở cọc trung gian, và ba đĩa tiếp theo nữa trên cọc xuất phát, bất kể có thêm bao nhiêu chữ số đại diện các đĩa nhỏ hơn. Ta có thể dễ dàng tính được các vị trí của các đĩa trong một bộ tám mươi đĩa sau một số các bước tiến, nếu giới hạn đủ lớn để chứa nó. Việc dùng phương pháp đệ quy cho trường hợp tám mươi đĩa như thế này có thể không thực tế.

Trường hợp 4 cộc trở lên

Mặc dù thuật giải tương đối đơn giản, bài toán với n đĩa sẽ cần ít nhất 2n-1 lần di chuyển. Tuy nhiên với số lượng đĩa nhiều hơn 3 thì vẫn chưa biết được sẽ cần ít nhất bao nhiêu lần di chuyển để giải bài toán. Do vậy việc áp dụng bước tiến dãy (tiếng Anh sequential advancement) để xác định vị trí của một số lượng lớn các đĩa trên ba cọc sau một số lớn tuỳ ý các bước tiến là không thực tế. Lời giải tối ưu cho bài toán Tháp Hà Nội với bốn cọc hay nhiều hơn vẫn còn là một bài toán mở. Đây là một ví dụ tiêu biểu cho thấy một bài toán đơn giản, có thể giải được vẫn có thể trở thành khó hơn rất nhiều bằng cách hơi nới lỏng một số ràng buộc của nó.

Mặc dù không biết được chính xác cần bao nhiêu lần di chuyển, có thể có một vài kết quả tiệm cận. Có một "lời giải được coi như tối ưu" có thể áp dụng một cách đệ quy để tìm một lời giải–xem giải thích cũng như một vài biến thể của bài toán bốn cọc trong bài khảo sát của Paul Stockmeyer (tiếng Anh).

Mặc dù với số đĩa nhỏ thử nghiệm trên máy tính thì "lời giải được coi như tối ưu" này là thực sự tối ưu, nhưng nó vẫn chưa có một chứng minh tổng quát để coi là thực sự tối ưu. Tuy nhiên, những kết quả nghiên cứu trong năm 2004 (tiếng Anh) đã cho thấy lời giải được coi như tối ưu phải nằm trong cùng độ lớn với lời giải tối ưu.

Thứ Ba, 7 tháng 10, 2008

Em học lập trình Pascal

Đĩa CD này rất hay, gồm rất nhiều bài toán từ cơ bản đến nâng cao, nhưng tiếc rằng đĩa này mình đã làm trầy, không đọc được.


Một trong những mục tiêu chính của chương trình Tin học cho học sinh bậc Phổ thông là cần nắm vững các khái niệm đơn giản nhất liên quan đến lập trình và rèn luyện kỹ năng lập trình trên một ngôn ngữ bậc cao cụ thể nào đó.

Đã từ lâu, Pascal trở thành ngôn ngữ chính được giảng dạy trong nhà trường phổ thông và đại học tại Việt nam. Vì vậy nhu cầu được học một cách bài bản và qui củ ngôn ngữ này là rất lớn đặc biệt trong các Nhà trường phổ thông. Mục tiêu duy nhất của chương trình học lập trình Pascal của chúng tôi là muốn đưa ra một chương trình tổng thể học và dạy lập trình Pascal cho các Nhà trường và các em học sinh.

Chương trình được gọi là tổng thể vì chúng được thiết kế nhằm vào tất cả các đối tượng học sinh vàthông suốt từ Phổ thông Cơ sở đến Phổ thông Trung học.

Là chương trình học Lập trình Pascal đầy đủ nhất và có tính hệ thống nhất từ xưa đến nay dành cho việc dạy và học trong nhà trường. Bộ sách dành cho các em mới tập lập trình đồng thời cũng dành cho các em khá và giỏi, các em trong lớp chuyên lớp chọn. Đặc biệt có nhiều bài toán dành cho việc rèn luyện học sinh đội tuyển thành phố, quốc gia, quốc tế. Ngoài ra còn có phần vui chơi giải trí, ca nhạc giúp các em thư giãn. Hãy khám phá với em học lập trình Pascal .

Giá bán:

40,000 VND/CD

Một số hình ảnh về phần mềm:

 


Giao diện phần mềm


Giới thiệu chương trình

 


Lập trình Pascal lớp 6


Lập trình Pascal lớp 7

 


Lập trình Pascal lớp 8


Lập trình Pascal lớp 9

 


Lập trình Pascal lớp 10


Lập trình Pascal lớp 11

 


Lập trình Pascal lớp 12


CD 7 năm Tin học và Nhà trường

Đây là cd lập trình phổ thông khá hay, các bạn kiếm mua thử xem


Đây là CDROM phát hành thường kỳ của Hội Tin học Việt Nam tuyển tập tất cả các bài viết và nội dung chính của 83 tập Tin học Nhà trường từ số đầu tiên phát hành năm 1999.

Điểm đặc biệt rất lớn của lần phát hành này là CDROM sẽ được in trên dây chuyền công nghệ sản xuất bạch kim với chất lượng cao với kỹ thuật mới không cho phép sao chép trong các ổ đĩa CDWRITER bình thường.

Nội dung chính của CDROM:

- Lưu trữ toàn bộ tất cả các bài viết trong các chuyên mục chính của Tin học & Nhà trường từ số đầu tiên tháng 10 năm 1999 đến số tháng 12 năm 2006.

- Hơn 800 bài viết chọn lọc chuyên sâu về CNTT và ứng dụng CNTT trong nhà trường bao gồm các chuyên mục: Câu lạc bộ lập trình, Toán học và Tin học, Làm quen với tin học, Algorithm + Data = Program, Olympiad, Tin học và e-Learning, Tin học và cuộc sống, Dành cho Giáo viên, Dành cho các bạn nhỏ.


- Hơn 250 bài đề ra kỳ này cùng với lời giải chi tiết.

- Rất rất nhiều bài viết nhỏ trong các chuyên mục đố vui, vui cười, góc học vui cũng góp phần trong CDROM này.

- Ngoài ra CD này còn lưu trữ một khối lượng lớn các thư liệu kèm theo các bài viết như chương trình nguồn, phần mềm học tập, các loại game.

CDROM sẽ có giao diện thân thiện đẹp mắt. Nội dung các bài viết được sắp xếp theo thời gian, theo chủ đề tùy thuộc vào lựa chọn của người dùng. Các chức năng tìm kiếm nhanh theo chủ đề, theo tên tác giả hoặc theo từ khóa sẽ được cài đặt trong phần mềm. Tất cả nội dung các bài viết đều có thể xuất ra máy in hoặc sao chép thông tin sang các phần mềm khác nếu có nhu cầu

Giá bán:
55,000 VND/CD

Một số hình ảnh về phần mềm:

 

 

 

Học lập trình 10 ngày hay 10 năm?

Tại sao mọi người lại học lập trình một cách hối hả như vậy?

Đến bất kì một nhà sách nào, bạn cũng có thể tìm thấy những quyển sách hướng dẫn đại loại như "Tự học Java trong 7 ngày", và vô số những quyển chỉ cách tự học Visual Basic, Window, Internet… trong một vài ngày hoặc vài giờ. Tôi đã vào website Amazon.com để tìm kiếm các sách có chủ đề "Teach youself" và nhận được 248 tiêu đề sách, 78 quyển đầu là sách về máy tính (quyển thứ 79 là "Learn Bengali in 30 days"). Tôi thay thế từ "days" bằng từ "hours" và cũng nhận được một con số tương tự: 253 quyển với 77 quyển đầu nói về máy tính (quyển thứ 78 có tựa đề "Teach Yourself Grammar and Style in 24 Hours").Như vậy có thể đi đến kết luận rằng: người ta đang học về máy tính một cách hấp tấp, hoặc tin học là một môn khoa học dễ dàng nhất trên thế giới này. Thật ra, không có quyển sách nào trên thế giới có thể dạy người ta học nhạc Beethoven, Vật lý Lượng tử,… trong một vài ngày hoặc vài giờ.
Chúng ta hãy phân tích xem tựa đề "Learn Pascal in Three Days" có nghĩa gì:

Learn: trong ba ngày, bạn không thể có đủ thời gian để viết một vài chương trình có ý nghĩa và học những bài học kinh nghiệm từ những chương trình đó. Bạn càng không có đủ thời gian để hiểu được ngôn ngữ Pascal là như thế nào. Bạn cũng không có thời gian để học hỏi từ những lập trình viên có kinh nghiệm. Trong một thời gian ngắn ngủi như vậy, bạn không thể học được nhiều. Do đó, quyển sách chỉ có thể đề cập tới những vấn đề nông cạn. Mà như Alexander Pope(1) đã nói: "Học hành nông cạn thực sự là một điều nguy hiểm".

Pascal: trong ba ngày, bạn có thể học về cú pháp của ngôn ngữ Pascal (nếu như bạn đã biết một ngôn ngữ khác tương tự), nhưng không thể học được nhiều về cách dùng cú pháp ấy. Trong một thời gian ngắn, nếu là một người biết lập trình Basic, bạn có thể viết một chương trình theo phong cách Basic bằng ngôn ngữ Pascal, thế nhưng bạn không thể biết được ngôn ngữ Pascal hay (hoặc dở) ở chỗ nào. Một người nổi tiếng là Alan Perlis(2) đã nói: "Một ngôn ngữ không ảnh hưởng tới cách suy nghĩ của bạn về lập trình là một ngôn ngữ không đáng để học". Bạn có thể nghĩ rằng không cần học nhiều về ngôn ngữ Pascal (hoặc về Visual Basic, hay JavaScript) bởi vì bạn chỉ cần một công cụ để hoàn thành một công việc nào đó. Nhưng đó là một cách nghĩ sai lầm, nếu không học về cách lập trình thì làm sao bạn có thể hoàn thành công việc.

In Three Days: thật không may, 3 ngày không thể đủ để học bất kì ngôn ngữ nào, phần viết sau đây sẽ chứng minh cho bạn điều đó.

Tự học lập trình trong 10 năm.

Các nhà nghiên cứu đã xác định rằng một người mất khoảng mười năm để thành thạo một lĩnh vực nào đó, từ chơi cờ, soạn nhạc, hội họa, chơi đàn dương cầm, bơi lội cho đến nghiên cứu vật lý lượng tử.

Và thực tế là không có một con đường tắt nào: ngay cả Mozart, người được coi là thần đồng âm nhạc vào năm lên 4, vậy mà phải mất 13 năm rèn luyện mới được công diễn trên thế giới. Samuel Johnson(3) còn cho rằng 10 năm là chưa đủ, ông đã nói: "Thành công trong bất kì lĩnh vực nào chỉ có thể đạt được bằng sự lao động của cả một đời người; và không thể nào có một cái giá thấp hơn".

Đây là nguyên tắc để thành công trong việc lập trình của tôi:

Yêu thích việc lập trình, và học lập trình trong sự hứng thú. Và phải chắc rằng sự yêu thích đó đáng để cho bạn bỏ ra 10 năm theo đuổi. Trao đổi với các lập trình viên khác, đọc các chương trình của người khác. Điều này quan trọng hơn bất kì quyển sách hay khóa học nào.

Tự viết chương trình. Cách học tốt nhất là học bằng thực hành. Nhớ rằng bạn phải viết các chương trình một cách cẩn thận. Quyển sách "Cognition in Practice: Mind, Mathematics, and Culture in Everyday Life" là một quyển sách hay để tham khảo về các qui tắc trong việc lập trình.

Nếu muốn, bạn có thể bỏ ra 4 năm để học đại học. Việc này tạo cơ hội cho bạn làm một số việc trước khi tốt nghiệp, và sẽ cho bạn một sự hiểu biết sâu hơn về lĩnh vực mình quan tâm. Nếu bạn là người không thích trường học, bạn có thể học hỏi từ công việc thực tế những bài học tương tự. Nhưng trong bất kì trường hợp nào, việc chỉ học từ sách vở cũng không thể nào là đầy đủ. Như Eric Raymond, tác giả của quyển "The New Hacker's Dictionary" đã nói: "Sự giáo dục về Khoa học Máy tính không thể đào tạo ra những lập trình viên xuất sắc cũng như việc học về bút vẽ và màu tô không thể nào tạo ra một họa sĩ có tài".

Khi bạn làm việc trong một dự án với các lập trình viên khác, bạn có thể thấy rằng: một người có thể rất giỏi trong dự án này, nhưng sẽ rất dở trong một dự án khác. Khi bạn là người giỏi nhất, bạn hãy thử khả năng của mình trong vai trò lãnh đạo dự án, và cố gắng truyền cảm hứng của bạn cho các thành viên khác. Khi bạn là người dở nhất, hãy cố gắng học hỏi từ những việc mà lãnh đạo của bạn làm và không làm.

Khi bạn đang thua kém các lập trình viên khác. Hãy dồn hết tâm trí của bạn để hiểu các chương trình của họ. Xem xét các chương trình đó dùng để làm gì và thử sửa lỗi các chương trình đó khi mà họ không có mặt ở đó. Kế tiếp, hãy nghĩ cách giải quyết vấn đề tốt hơn nếu có thể.

Bạn nên học ít nhất 6 ngôn ngữ lập trình. Trong đó có một ngôn ngữ hỗ trợ lớp trừu tượng (như Java hay C++), một ngôn ngữ theo quan điểm hàm (như Lisp hay ML), một ngôn ngữ khai báo (như Prolog), một ngôn ngữ hỗ trợ xử lý tuần tự (như Icon hay Scheme), và một ngôn ngữ hỗ trợ xử lý song song (như Sisal). Cố gắng học một ngôn ngữ chính quy, có thể là ANSI C++, và hoàn tất việc học ngôn ngữ này càng nhanh càng tốt.

Luôn nhớ rằng, trong từ "Khoa học Máy tính" đã hàm chứa "Máy tính". Bạn phải biết rõ thời gian máy tính thực thi các lệnh, lấy thông tin từ bộ nhớ và đọc dữ liệu từ đĩa. Nghĩa là bạn cũng phải có hiểu biết cơ bản về phần cứng máy tính và cách thức làm việc của chúng.

Tổng kết

Tôi tin rằng, kinh nghiệm thực tế sẽ luôn đưa ra những điều bổ ích hơn so với hàng ngàn trang sách viết bởi những chuyên gia. Và bây giờ, bạn có thể đi mua một quyển sách về Java, bạn sẽ thu được một số điều hữu dụng từ quyển sách đó. Thế nhưng, bạn không thể thay đổi cuộc đời của mình hay nói cách khác là bạn không thể trở thành một lập trình viên chuyên nghiệp chỉ trong 24 giờ, 24 ngày, hay 24 tháng. Tôi tin chắc như thế.

Theo Peter Norvig, Hữu Xuân lược dịch.

(1) Alexander Pope (1688-1744): ông được xem như là nhà phê bình văn học tân cổ điển nổi tiếng ở Anh.

(2) Alan Perlis (1922-1990): trưởng khoa đầu tiên của khoa Khoa học Máy tính, Đại học Carnegie. Chủ tịch đầu tiên của ACM. Người đầu tiên đoạt giải thưởng Turing.

(3) Samuel Johnson (1709 - ?): một trong những họa sĩ người Anh nổi tiếng ở thế kỷ 18.

http://baohoclaptrinh.com/home/modules/xfsection/article.php?articleid=8

Không ai trong chúng ta bắt đầu học từ hư không, chúng ta đứng trên vai của những người khổng lồ như Wirth, Knuth và hàng ngàn người khác. Sau đó chính bờ vai của chúng ta sẽ góp phần xây dựng tương lai.

10 lời khuyên của Bill Gate cho giới trẻ

Bill Gates đưa ra những bài học vô cùng khôn ngoan cho thế hệ trẻ, những người không có nhiều kiến thức về thực tế cuộc sống và cách giúp họ đứng dậy sau mỗi thất bại trong cuộc sống thực.

Ông "trùm" Microsoft Bill Gates

Bài học thứ nhất: Cuộc sống không phải lúc nào cũng công bằng hãy tập quen dần với điều đó.

Bài học thứ ha
i: Không ai quan tâm đến lòng tự trọng của bạn đâu. Mọi người chỉ trông đợi bạn đạt được điều gì đó trước khi bạn cảm thấy hài lòng về bản thân.

Bài học thứ ba: Bạn sẽ không thể kiếm được 40.000 USD/năm ngay sau khi tốt nghiệp. Bạn cũng không phải là một phó giám đốc sử dụng điện thoại di động cho đến khi mà bạn kiếm được hai thứ đó.

Bài học thứ tư: Nếu bạn nghĩ rằng giáo viên của mình thật hắc ám thì hãy đợi đến khi bạn làm việc dưới trướng một ông chủ rồi bạn sẽ biết với ông ta thì chẳng có một giới hạn nào hết.

Bài học thứ năm: Những công việc mang lại thu nhập thấp chẳng làm kém đi phẩm giá của bạn đâu. Ông cha ta có một định nghĩa khác về công việc lương thấp - họ gọi đó là cơ hội đấy bạn.



Bài học thứ sáu: Nếu như bạn làm rối tung mọi chuyện lên thì đó không phải lỗi của bố mẹ bạn, thế nên đừng có mà than vãn với bố mẹ về lỗi lầm của bạn, hãy rút kinh nghiệm từ nó.

Bài học thứ bảy: Trước khi sinh bạn ra, bố mẹ đã chẳng lo lắng nhiều như thế bây giờ. Bố mẹ đã trả những hoá đơn của bạn, giặt giũ quần áo bạn sạch sẽ và lắng nghe bạn kể xem bạn sành điệu như thế nào. Vì vậy trước khi bạn cằn nhằn bố mẹ điều gì thì hãy dọn dẹp ngăn nắp cái buồng ngủ của bạn đã.

Bài học thứ tám: Ở trường học có thể có người thắng kẻ thua nhưng ở trường đời thì không phải vậy. Ở một vài trường học người ta có thể hủy bỏ đi những điểm rớt và họ cho bạn nhiều cơ hội để có được câu trả lời đúng. Nhưng bất kỳ điều tương tự như thế đều không có trong cuộc sống đâu bạn ạ.

Bài học thứ chín: Cuộc sống không được chia thành những học kỳ đâu. Bạn cũng chẳng có mùa hè để nghỉ ngơi và rất ít ông chủ nào quan tâm đến việc giúp bạn nhận ra đâu là khả năng thực sự của bạn. Hãy tự khám phá điều đó trong những khỏang thời gian của riêng mình.

Bài học thứ mười: Truyền hình không phải là cuộc sống thực (cũng như là các game trò chơi). Trong cuộc sống, chúng ta phải biết rời khỏi quán cà phê, đứng dậy và làm việc.

Bài đăng phổ biến