Skip to main content

Posts

Showing posts from January, 2015

Vài sai lầm hay mắc phải khi lập trình viên Python code Go

1. Quên compile =)) Thường nếu chỉ code các script nhỏ, code xong ra python filename.py chạy luôn. Nhưng Go là một compiled-language, code xong phải compile, compile xong mới chạy được. 2. Dùng '' thay vì "" Trong Go, string nằm giữa dấu ngoặc kép "", trong Python dấu ngoặc '' hay "" đều dùng được cả. Và lỗi về việc này sẽ thường xuyên đập vào mặt: "illegal rune literal". 3. Quên không return khi định nghĩa function Python là dynamic type language, khi viết function không cần / không thể ghi là nó sẽ trả về giá trị nào, thuộc type gì. Golang hay bất cứ static type language nào cũng cần khai báo giá trị sẽ trả về và kiểu (type) của nó. Có nên học Go?

Để trờ thành Linux sysadmin ...

Làm thế nào để trở thành Linux sysadmin? học gì để trở thành Linux sysadmin? Đăng ký học Linux Sysadmin OFFLINE tại   https://pymivn.github.io/sysad101/ Khoan hãy đi vào phần trả lời, hãy tự hỏi mình vài câu sau: - bạn có sẵn sàng thức dậy vào lúc 3h sáng vì hệ thống có sự cố ? bạn có sẵn sàng / muốn ở trung tâm dữ liệu suốt một tuần không biết ngày đêm? Nếu câu trả lời là có, hãy tiếp tục. Nếu có chút ngần ngại, hãy ngó qua khả năng trở thành một python developer ... Nhưng dù sao đi nữa, hãy cứ tiếp tục :))

[Vim] vim-pathogen

Nếu bạn đã dùng nó, hãy bỏ qua bài này. Nếu chưa, hãy dành 5 phút đọc và dùng ngay. vim-pathogen là một vim-plugin cho phép cài đặt các vim-plugin khác một cách dễ dàng. Đại khái là "khó một lần rồi thôi", sau lần này sẽ dễ. Mà thực chất thì lần này cũng chả khó gì ~.~ English pathogen /ˈpaθədʒ(ə)n/ mầm bệnh (sub Việt : "PÁT thơ giờn") Cài đặt Chạy lệnh sau: mkdir -p ~/.vim/autoload ~/.vim/bundle && \ curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim   Github repo: https://github.com/tpope/vim-pathogen Sau đó thêm dòng

[Go] select và giao thông

Bài viết này giải thích cách hoạt động của câu lệnh "select" trong Go , sử dụng ví dụ trong tutorial "A tour of Go" 1. function fibonacci (Xem code ở dưới). - Nhận input là 2 channel kiểu int. (channel sẽ chỉ "truyền" dữ liệu có kiểu "int"). "for { }" => tương đương với "while true" trong khác ngôn ngữ khác, ở đây lặp vô hạn. Trong ví dụ này, câu lệnh ``select`` có chứa 2 case, theo phần giới thiệu của tutorial : ``select`` lets a goroutine wait on multiple communication operations.  ``select`` cho phép một goroutine chọn hướng chạy dựa trên kết quả của các hoạt động giao tiếp (truyền data trong channel) câu lệnh ``select`` sẽ block cho đến khi một trong các ``case`` của nó có thể chạy (channel hoạt động - không bị block), khi đó nó sẽ chạy các câu lệnh trong ``case`` ấy, nếu có nhiều ``case`` đều có thể chạy cùng lúc thì nó sẽ chọn ngẫu nhiên một ``case``. Để dễ hiểu, ở ví dụ dưới tưởng tượng 2 channel là 2 ...

Popular posts from this blog

Tài liệu và hướng dẫn học Python

Để tiết kiệm thời gian, tốt nhất là đi học PyMI Updated: 130617 Sau đây là các tài liệu khuyên dùng: Vì nhiều lý do, nên học python2.7 tại thời điểm hiện tại (giờ là tháng 6/2013 - muốn biết tại sao thì tự tìm hiểu) python 3.5+ (giờ là tháng 2/2017) Chuẩn bị: 1. biết bật tắt máy 2. biết cài python 3. tập gõ 10 ngón - gõ 2 ngón hay 1 ngón cũng không sao, nhưng 10 ngón là cách dễ nhất để gõ nhanh nhất. Tài liệu - Nên dùng tài liệu tại trang chủ của Python làm chính, tham khảo thêm các tài liệu khác tại http://www.familug.org/2016/12/free-ebook.html Căn bản, mới học 1.1 Python PyMI.vn https://pymi.vn/tutorial/ 1.2. Python offical tutorial kết hợp làm bài tập trên HackerRank  (đề bài bằng tiếng Anh, nhưng Google translate 1 lúc cũng ra vì có nhiều ví dụ mẫu đi kèm). Học viên của Pymi.vn có rất nhiều học viên đã tự học với Learn Python the hard way nhưng chưa thấy ai thành công cả. Hai link dưới nên đọc sau khi đã nắm được những phần cơ bản của ngôn ngữ pytho...

The PyMiers

New FAMILUG