Bài đăng

Đang hiển thị bài đăng từ Tháng 7, 2023
Hình ảnh
 Cài đặt python bằng tay Trong môi trường làm việc sử dụng repo và máy ảo nhiều khi gặp rất rất nhiều vấn đề về phiên bản phần mềm không tương thích với nhau khiến cho công việc kéo project về và cài đặt môi trường thôi cũng đủ phiền phức  mất mấy ngày. Với một số phần mềm sẽ luôn có một đường dẫn trỏ đúng đến các bản xuất bản tại các đường dẫn. Cách cài đặt có vẻ sẽ giống nhau nên mình hướng dẫn với python. Python sẽ có link tải file tại đây (lưu ý là đường dẫn này chỉ cho linux) https://www.python.org/ftp/python Sau đó tìm đến phiên bản mà mình muốn. Chẳng hạn là bản 3.6.15. Vào đó sẽ có 4 như sau: Tải bản cài đặt về với lệnh: wget https://www.python.org/ftp/python/3.6.15/Python- 3.6.15 .tgz Tiếp theo là giải nén và cài đặt: sudo tar xzf Python- 3.6.15 .tgz cd Python-3.7.4 sudo ./configure sudo make sudo make install Vậy là xong với python. Đại loại không phải phần mềm nào cũng có thể dùng sudo apk-get {packet_name}  được nên cách trên khá là hữu ích. [TO BE CONTINUE]
Hình ảnh
10 Phương pháp học và làm việc hiệu quả      Đây là một video mình vô tình thấy được trên youtube và xem nó. Danh sách này liệt kê nhiều phương pháp học tập hiệu quả (hoặc có thể hiệu quả) thôi. Quan trọng vẫn là cần phải xem xét và đánh giá xem nó như thế nào đã rồi mới quyết định được. Mà dù sao thì... cũng vẫn là xem hết liệt kê lại cách làm rồi tính!      Nhưng hãy nhớ rõ ràng rằng, một ngày chỉ có 24 tiếng thôi. Bỏ ra 8 tiếng để ngủ thì mình còn lại vỏn vẹn có 16 tiếng (tức 2/3 của một ngày) mà còn chưa kể đến vô cùng nhiều những thứ linh tinh như việc nhà việc riêng hoặc cả việc quản lý tương lai và sở thích. Hãy để ý từng phương pháp và áp dụng theo hướng tích cực nhé! 1. Phương pháp prodomoro Hay còn gọi là phương pháp Prodomo hoặc phương pháp quả cà chua. Phương pháp này chia thời gian làm việc thành các khoảng thời gian ngắn là 25 phút làm việc nhưng cần tập trung cao độ. Cách làm cụ thể như sau:     1. Chọn công việc mình sẽ tập trung v...

Leetcode 2289: Steps to Make Array Non-decreasing.

Link: link Bài này thì bình thường thôi không quá khó nhưng mình vẫn chưa làm được. Đề yêu cầu rằng: Cho một chuỗi nums số tự nhiên từ 1 đến 10^9. Làm theo bước được yêu cầu mô tả và trả ra số bước cần làm để chuỗi trở thành một chuỗi tăng dần. Để làm bài này mình đã có trò lươn lẹo một tý nhưng mà không thành công, chỉ pass được hai bài ví dụ: class Solution { public:     int totalSteps(vector<int>& nums) {         stack<int> S;         int ans  = 0;         int step = 0;         if(nums.size() == 1) return ans;         S.push(nums[0]);         for(auto i = 1; i < nums.size(); ++i) {             if(nums[i] < S.top()) {                 ++step;             } else {                 ans = max(ans, ...
 Vấn đề học tập đúng cách Mình hiện tại đã biết ghi chú và đã biết cách để tận dụng tối đa khả năng làm việc rồi nhưng còn một vấn đề nhức nhối nữa đó là về cách đặt vấn đề. -> Mình vẫn chưa biết đặt câu hỏi Để có thể học tập và ghi nhớ tốt hơn thì đặt câu hỏi cũng là một việc quan trọng cần phải làm. Sau mỗi bài học cần có câu hỏi để ôn tập và ghi nhớ lại những gì đã học được là một việc "vô cùng cần thiết". Hôm nay có một câu hỏi về TCP và UDP cái mà mình mất một lúc mới có thể nhớ ra cái gì là tcp cái gì là udp và ... yup nó thật sự là vấn đề mình đã được đọc trong một cuốn sách nào đó về internet trên mạng. Việc quên này khá là xấu hổ vì mình biết nhưng không ôn tập lại. Việc học tập cần phải liên tục ôn tập lại giống như ngày xưa ấy. Học để trả lời câu hỏi cũng được, dù sao giờ cũng không ai tính điểm của mình nữa, nhưng phải tự thân mà vận động lấy thôi.
[Thủ thuật] Xoá cái số tin chưa đọc bị kẹt trên outlook 1. Vào Outlook chọn vào cái ô tìm kiếm hoặc Ctrl + E 2. Điền vào đó đoạn read:no 3. Tìm mail chưa đọc, ấn thêm cả nút More được in đậm ở dưới để tiếp tục tìm trên server. 4. Đọc tin nhắn đó nữa là hết mail.
 Lược sử tương lai của Yuval Noah Harari Chương thứ nhất Ở chương đầu này tác giả có bàn về việc phát triển của tương lai nhân loại trong những năm tới, về cả sự phát triển mạnh mẽ và sự đẩy lùi các vấn đề cốt lõi của con người như sinh lão bệnh tử. Qua hàng triệu năm tiến hóa và sự phát triển của nông nghiệp, nạn đói đã được loài người đẩy lui. Tiếp đến là bệnh tật và đến cuối cùng có lẽ là "cái chết". Cái chết gần như là một điều không thể tránh khỏi và mặc nhiên là nó không phải điều có thể tránh. Về bản chất cái chết thực sự là gì vẫn là một câu hỏi lớn. Con người và tâm trí sẽ đi đâu sau khi cơ thể chết đi. Liệu chúng ta thực sự có cái gọi là linh hồn hay chỉ là sự phân rã cơ bản của các chất hóa học. Mặc dù vậy nhưng thực sự cái chết đang dần dần có thể được con người đẩy lùi trong tương lai với sự phát triển của khoa học kỹ thuật. Các bộ phận nhân tạo bằng máy móc hiện tại đã có thể thay thế được con người. Con người có thể sinh sản trong các ống nghiệm nhân tạo và sự ...
 Tính toán các mode trong linux cho chmod Nếu gõ lệnh file và chọn thư mục hoặc tệp muốn kiểm tra hoặc là ls -la sẽ thấy bên cạnh mỗi một tệp hoặc thư mục đều có kèm thêm mode chẳng hạn như --r--w--- ... đại loại vậy. Điều đó có nghĩa là tập hoặc thư mục đó đang ở chế độ đọc hoặc là ghi. Điều đó được thể hiện bằng bảng dưới đây: 7: read, write and execute 6:  read and write 5:  read and execute 4:  read (only) 3 : write and execute 2 :  write   (only) 1: execute (only) 0: not have any mode Đọc cái này cũng dễ. Ba bit  abc  lần lượt sẽ là cho chế độ tương ứng là read-write-execute (rwe). Ví dụ 4 = 100 -> là read-only. Hoặc 3 = 011 -> write and execute. Nhưng không chỉ vậy, bởi vì mode còn có sự phụ thuộc vào quyền quản lý tài nguyên của tài khoản. Do đó một file còn có thể có 3 chế độ vs 3 số khác nhau nên ta mới hay thấy đại loại như chmod 777. Ba chế độ lần lượt là cho: 1. User permission 2. Group permission 3. Common  permis...
Java Bài 1  - Hello World Một chương trình Java cơ bản có dạng như sau: class HelloWorld {     public static void main(String[] args) {         System.out.println("HelloWorld!");     } } 1. Trong đó tên file HelloWorld nên để giống tên Hàm là HelloWorld. Có thể thay đổi tên hàm khác với tên file nhưng không nên vì sau quá trình biên dịch thì tên của file class sẽ là tên của hàm của tên file sẽ giữ nguyên, cực kỳ gây khó hiểu cho người sau kế thừa. 2. Tiếp đó hàm main bắt buộc phải là 'public static void' với hàm gốc được thực hiện đầu tiên - nơi bắt đầu chương trình là điểm đó. Đồng thời chuỗi đầu vào 'String[] args' cũng là bắt buộc phải có để nhận chuỗi đầu vào.  3. Có thể đọc đầu vào đầu tiên với  System.out.println(args[0]);  . Nhưng hãy cẩn thận bởi nếu không có đầu vào thì chương trình sẽ chạy lỗi (hiển nhiên rồi). Còn kiểm tra đầu vào thế nào chắc là mình nên để bài viết khác. Bài 2 - Các loại biến Trừ biến String được v...