Showing posts with label Tips. Show all posts
Showing posts with label Tips. Show all posts

Friday, November 20, 2015

Làm thế nào để hạn chế thói quen trì hoãn?

Có lẽ trong số chúng ta, ai cũng từng có một câu thần chú trong đầu rất nổi tiếng là “để mai làm”. Bản thân mình ngày trước cũng vậy, mình là người rất lười biếng và luôn hẹn tới hẹn lui, rồi rốt cuộc việc mình làm vẫn chưa đâu vào đâu. Vậy lý do nào khiến bản thân mình trở nên lười biếng và trì hoãn? Bài viết sau đây mình sẽ nói về vấn đề này.
Chúng ta đã bao giờ biết quý trọng thời gian?
Chúng ta đã bao giờ biết quý trọng thời gian?
“5 phút nữa mình sẽ dậy”, “xem xong bộ phim này sẽ học bài”, “còn 2 tuần nữa mới thi, xoã đi”,… là những câu mà mình tin rằng mỗi chúng ta đều đã từng suy nghĩ tới. Bạn thử thống kê xem trong 1 ngày mình đã nói bao nhiêu câu như vậy rồi? Và liệu rằng bạn đã hoàn thành nó hay chưa? Nếu hoàn thành rồi thì nó có đạt chất lượng như mình mong đợi hay không?
Tưởng tượng công việc của bạn là 1 cái thùng lớn, động lực của bạn là lực đẩy tới thì tính trì hoãn chính là lực ma sát, và lực ma sát trong trường hợp này chưa bao giờ có lợi cả. Nếu ta muốn đẩy cái thùng một cách nhẹ nhàng, ta có thể dùng nhiều cách, ví dụ như gắn bánh xe vào chân thùng. Tính trì hoãn cũng vậy, nếu bạn gắn “bánh xe” vào việc bạn muốn làm, bạn sẽ đạt được thành công nhất định.
Chúng ta thường trì hoãn bởi vì những lý do sau:

1. Có hứng mới làm

Mình tin chắc rằng với mỗi người đều có 1 câu giống như vầy: “thôi làm biếng quá, có hứng rồi làm luôn” (lâu lâu mình cũng vậy :v). Điều đó rất là nguy hiểm, bởi vì trong cuộc sống đâu phải lúc nào chúng ta cũng có hứng. Ngay cả những người thành công cũng vậy, đôi lúc khi làm việc sẽ cảm thấy mệt mỏi, lười biếng, đó là chuyện rất bình thường. Con người chứ đâu phải trâu bò, đâu phải lúc nào cũng đầy đủ năng lượng để mà làm việc đâu 😀
Những lúc thế này, đi chơi với bạn bè thì tuyệt vời!
Những lúc thế này, đi chơi với bạn bè thì tuyệt vời!
Mỗi người đều có 1 giải pháp riêng cho vấn đề này, có thể là xả stress bằng cách nghe nhạc, xem phim, đi tán gẫu với bạn bè,… Mình rất khuyến khích điều này, bởi vì trong quá trình ta xả stress, có thể những ý tưởng sẽ “trồi lên”. Và việc chúng ta cần làm khi đó là ghi chú lại việc mình muốn làm để khi giải trí xong, ta có thể bắt tay vào làm ngay lập tức.
Nhưng với những công việc cần ta hoàn thành trong thời gian nhất định thì đào đâu ra thời gian để mả xả stress? Trong nhiều trường hợp, ta cần phải hoàn thành công việc ngay cả khi có hứng hay không có hứng. Quan trọng một điều, những lúc có hứng thì ta phải nỗ lực làm nhiều hơn những khi không có hứng.

2. Không có mục tiêu rõ ràng

Bạn muốn ra trường có việc làm tốt, muốn sau này sẽ học giỏi, muốn được người khác kính trọng. Tất nhiên những điều ước đó rất đẹp, và mình tôn trọng những điều ước của các bạn. Nhưng liệu bạn đã vạch ra những lộ trình để đến với những ước mơ đó chưa?
Đề ra mục tiêu rõ ràng cho công việc là hết sức quan trọng đấy!
Đề ra mục tiêu rõ ràng cho công việc là hết sức quan trọng đấy!
Ra trường có việc làm tốt, rất nhiều người ước điều này. Và mình khẳng định 1 điều, đa số các ngành nghề nếu ta có đầu tư cho nó thì sau này sẽ có việc làm tốt. Quan trọng là bạn đầu tư những thứ “có liên quan” với nghề bạn chọn. Bạn không thể thích viết phần mềm mà trong khi bản thân suốt ngày đi học nhảy dance, cũng như không thể thích làm ca sĩ mà mình suốt ngày sáng tác những bài thơ… con cóc.
Đặt những mục tiêu để hoàn thành công việc là điều quan trọng, nó giống như việc bạn chơi 1 tựa game RPG mang tên “cuộc sống” vậy. Ban đầu bản thân mình ở level 1, để mạnh hơn thì ta cần phải làm những nhiệm vụ mà các NPC “nhà trường”, “gia đình”, “công ty” giao để lên cấp và có những trang bị mạnh. Trong quá trình chơi game, ta có thể bắt gặp những con boss hoàng kim “đồ án”, “project” rất khó khăn, mà khi ta kết liễu nó sẽ cho những món đồ quý hiếm như “kinh nghiệm”, “sự tin tưởng”, “tiền”. Và cuối cùng ta phải về đích, kết liễu trùm cuối để hoàn thành tựa game.
Ta đang chơi một game RPG mang tên "cuộc sống" đấy!
Ta đang chơi một game RPG mang tên “cuộc sống” đấy!
Bạn thấy đấy, công việc khi chia ra làm những mục tiêu nhỏ nhưng rõ ràng sẽ khiến bạn thấy hào hứng hơn phải không nào? Vậy bạn tưởng tượng xem, mình đã ở level mấy rồi?

3. Nghĩ rằng nó dễ hoàn thành

“Xời, bài toán này dễ mà, để tí rồi làm”, “ông sếp giao việc có khó gì đâu, mai làm cũng được” là những câu tự an ủi bản thân khi gặp những việc được giao. Và thường tới những lúc ta bắt đầu làm mới nhận ra rằng có nhiều vấn đề phát sinh hơn ta tưởng. Đó chính là lúc sự trì hoãn bắt đầu thể hiện, và ta nhận ra rằng thời gian còn lại để hoàn thành công việc là không đủ…
Điều đó rất nguy hiểm, nó tạo cho ta thói quen ỷ lại, nghĩ rằng mình có thể hoàn thành công việc một cách nhanh gọn. Nhưng “đời đâu như là mơ”, rất nhiều lý do khiến ta chưa hoàn thành công việc, và đấy là 1 ví dụ điển hình. Vì vậy, mỗi bản thân khi có việc phải hoàn thành thì phải làm ngay lập tức, bất kể nó có khó khăn hay không.

4. Xao lãng

Trong quá trình bạn làm việc, đôi lúc sẽ có những tác động ngoại cảnh ảnh hưởng. Chẳng hạn như âm thanh quen thuộc dưới đây:
Theo nghiên cứu của các nhà khoa học Mỹ, thì công nghệ hay những trang mạng xã hội lớn như Facebook, Google+ là nguyên nhân chính của sự xao lãng. Bạn có thể ngắt ngang công việc chỉ để trả lời tin nhắn của bạn rủ đi ăn, hay bỏ hẳn chỉ vì “có kèo đi chơi”. Tất nhiên là bạn sẽ hoàn toàn quên hẳn công việc mà mình đang làm khi nãy.
Tất nhiên, đôi lúc trong công việc ta cần phải có sự nghỉ ngơi, giải trí. Nhưng làm sao để không trộn lẫn công việc với giải trí lại là 1 vấn đề khác. Bạn có thể tạm thời tắt Facebook, đóng 1 cửa sổ xem phim yêu thích, để điện thoại ở chế độ yên lặng để tập trung hoàn thành công việc. Có thể “tự thưởng” cho bản thân khi hoàn tất việc, chẳng hạn như “xong đống bài tập mình sẽ xem 3 tập phim”, “code xong deadline mình sẽ làm vài ván LoL”,… như vậy sẽ giúp ta có động lực để hoàn thành việc hơn (nhưng đừng vì vậy mà làm ẩu nhé!).
Có quá nhiều thứ cản trở công việc của ta đấy!
Có quá nhiều thứ cản trở công việc của ta đấy!
Có một câu chuyện như thế này:
“Mỗi buổi sáng, một ngân hàng sẽ mở cửa và chuyển cho bạn $86400, nhưng kèm theo 2 điều kiện:
  • Tất cả số tiền không chi tiêu trong ngày thì đến tối sẽ bị lấy đi. Ta không thể gian lận, không thể gửi tiền sang tài khoản khác mà chỉ có cách là chi tiêu. Nhưng sáng hôm sau ngân hàng sẽ chuyển cho bạn $86400 mới.
  • Ngân hàng có thể đóng cửa bất kì lúc nào mà không cần phải báo trước, và sẽ không có tài khoản khác cho bạn.
Liệu bạn có biết được ngân hàng hào phóng trên là gì không?”
Vâng, đó chính là thời gian. Mỗi buổi sáng, ta được phát 86000 giây, vậy bạn tưởng tượng khi bạn xao lãng trong khoảng 1 giờ thì bạn phải tổn thất bao nhiêu? $3600 đấy! Và trung bình những người xao lãng thường chi trả 2 đến 3 tiếng chỉ để “làm những việc linh tinh”.
Thời gian chính là ngân hàng quý báu nhất của mỗi chúng ta.
Thời gian chính là ngân hàng quý báu nhất của mỗi chúng ta.
Với mỗi người có những cách hạn chế trì hoãn khác nhau, nhưng điều tiên quyết là phải biết quản lý thời gian hợp lý. Bạn có thể tạm ngưng công việc đang làm, nhưng thời gian thì không, nó vẫn trôi qua đều đặn đấy thôi. Một người thành công là những người biết làm chủ thời gian, bởi vì thời gian chẳng hề dư ra, và nếu bạn không biết tận dụng – thiệt hại chỉ thuộc về BẠN.
Đừng bao giờ để đến ngày mai những việc bạn có thể làm ngày hôm nay.
thoigian21
Có lẽ với mỗi bản thân thì trì hoãn rất khó để bỏ hoàn toàn, nhưng hạn chế thì có thể. Vậy liệu bạn đã hoàn thành việc mình đang làm ngày hôm nay chưa?

Wednesday, October 28, 2015

Mẹo vặt trong Visual Studio – Liệu bạn đã biết rõ IDE của mình chưa?

Trong máy lập trình viên nào cũng có 2 thứ quan trọng: 1 là trình duyệt web để đọc webtretho và đọc vozforum (Nhầm, để google khi bí và stackoverflow), 2 là cái IDE để bật lên mỗi khi thấy manager hoặc team leader đi ngang qua (Nhầm, để code).
Vâng, vì ngày nào ta cũng phải làm việc chung với IDE, do đó nếu thuần thuc các phím tắt sẽ làm tăng năng suất code của chúng ta rất nhiều. Các bạn đừng xem thường những mẹo vặt dưới đây. Giả sử áp dụng những mẹo vặt này giúp tiết kiệm được 10% thời gian code, 1 tuần bạn code từ 30-40 tiếng, 1 tháng sẽ là 150-160 tiếng. Tiết kiệm được 10% tức là 16 tiếng, bạn sẽ có thêm thời gian để đọc webtretho, đọc vozforum (Nhầm nữa, thời gian đọc ebook IT để nâng cao trình độ)

Chúng ta bắt đầu nào
1. Các hotkey cơ bản
Sử dụng hotkey nhiều sẽ khiến người ngoài thấy bạn code có vẻ pro hơn. Bạn cũng đỡ tốn công di chuyển chuột hơn
F5 – Ctrl F5 – Debug
Capture
Sau khi code xong, thay vì phải di chuyển chuột lên, bấm nút Start này để chạy chương trình, hãy bấm F5 (Cái này cơ bản quá rồi, bỏ vào cho những ai chưa biết thôi).
Trường hợp ta đặt breakpoint để bug, hãy bấm Ctrl + F5 để chạy chế độ no debug, bỏ qua breakpoint nhé.
F12 – See implementation
7e283a9a8eb79982555108a368bd55c1
Khi đọc code, ta muốn xem 1 class hay method viết như thế nào, hãy sử dụng phím F12. Nếu bạn cài Reshaper hoặc VS Productivity Tool, bạn có thể giữ Ctrl và click vào class để có hiệu quả tương tự
Ctrl K + Ctrl D – Format Code
dc4142a79110417ebf8e261dad97900a
Code xong, nếu thấy code xiêu vẹo thì hãy dùng Ctrl K + Ctrl D để tự động format lại. Nếu code không tự động format thì code thể là bạn quên đóng () hoặc {} nhé.
Ctrl K + Ctrl C – Comment Code / Ctrl K + Ctril U – Uncomment Code
Để comment code, ta thường comment bằng tay dùng 2 nút này trên toolbar
Capture
Ta có thể áp dụng hotkey để comment/uncomment nhanh nhé
2579938a9039a675c6e87060f8601ec3
F9 – Set breakpoint
Capture
Để đặt breakpoint ta thường phải click vào thanh dọc bên trái. Sao phải làm vậy khi ta có thể bấm F9 là xong, nhanh gọn lẹ.
F10/F11 – Step over/Step into
Capture2
Khi debug, thay vì bấm 2 nút trên toolbar này, dùng hotkey F10 và F11 sẽ tiết kiệm thời gian hơn.

2. Sử dụng snippet
Trong quá trình code, có những đoạn code ta phải lặp lại nhiều lần. Visual Studio đã tích hợp sẵn những đoạn code này, gọi là snippet, tiết kiệm khá nhiều thời gian (Netbeans hay Eclipse cũng có nha, mình không bênh vực Microsoft đâu à).
Cách sử dụng snippet: Gõ ra rồi Tab là xong
ctor – Tạo contrucstor cho class
4ba583d625ea477f4e2a6e6d487688e3
prop – Tạo properties – Gõ xong nhớ Tab Tab
7ff4683654699f984f00a56826df2b50
Hồi mới chuyển từ java qua C#, mình thắc mắc sao Visual Studio xịn vậy mà ko có cái tạo getter, setter cho field. Sau này mới biết getter, setter được hiện thực bằngproperty nhé.
cw – Console.WriteLine() – Cho mấy bạn hay code Console
60575fb39be324ef353e21227d2f0cee
for/forr – Tự tạo hàm for
89d840b75c4ddc6cde266edeb4046d48
Các bạn có thể thử với một số snippet khác như if/else, do/while, switch, try nhé.

3. Một số mẹo nhỏ khác
Giữ Ctrl + Nhấp chuột – Box Selection
Bạn từng gặp cảnh phải sửa nhiều dòng code 1 lúc chưa? Sử dụng Box Selection sẽ giúp việc này trở nên vô cùng dễ dàng
b17623192b9f9f6779f115aac3c325ed
Ctrl + Shift + V – Nghịch clipboard
Trong đời code, chắc ai cũng đã từng phải copy paste. Đã bao giờ bạn từng copy A, sau đó lỡ bấm nhầm copy B, C, sau đó phải tìm A để copy lại chưa? Visual Studio lưu lại tận 20 lần copy gần nhất trong clipboard, ta có thể dùng Ctrl + Shift + V để tìm đoạn clipboard cần paste.
fe4e0a1e8e09f813b9a448dff49198d4
Ctrl + , – Navigate File/Ctrl + ; : Search
987c49fecb17dd097570d1193da5878f
Thay vì Ctrl + F, hãy sử dụng 2 chức năng này, hữu hiệu hơn nhiều đấy
Paste JSON/XML as class
Mình không biết chức năng này được Microsoft thêm vào Visual Studio từ khi nào, nhưng mà nó khá hữu dụng. Hiện nay, khi nhà nhà dùng Rest API, người người dùng Rest API, JSON và XML trở thành hotboy hotgirl. Trong C#, ta không thể dùng thẳng mà phải convert JSON sang object. Chức năng này cho phép ta tạo class để convert json sang.
VD mình có chuỗi JSON sau (Lấy từ facebook graph api):
1
2
3
4
5
6
7
8
9
10
11
12
{
  "id": "100001799469827",
  "first_name": "Huy Hoàng",
  "gender": "male",
  "last_name": "Phạm",
  "locale": "vi_VN",
  "name": "Huy Hoàng Phạm",
  "timezone": 7,
  "updated_time": "2015-02-06T12:56:23+0000",
  "verified": true
}
Chỉ cần dùng paste JSON as class, dán đoạn JSON này vào, sau đó chọn uppercase các kí tự đầu tiên của các field là xong. VS khá thông minh, có thể xác định một số trường là datetime hoặc boolean, còn mặc định là string.
Wn6mLGm6Hh

Bài viết load hơi nặng vì có nhiều ảnh động, các bạn thông cảm. Chúc các bạn ngày càng thành thục với IDE của mình. Mấy trò hotkey snippet v…v này rất phù hợp để “chứng tỏ trình độ” hoặc “hù mem mới” nhé.

Pages - Menu