Làm thế nào quan trọng là hoàn thành các dự án? [đóng cửa]


42

Tôi là một sinh viên (chưa đi đến trường) và tôi đã lập trình được khoảng 5 năm rồi. Trong thời gian đó, tôi đã đi khắp nơi từ ngôn ngữ này sang ngôn ngữ khác, từ API sang API và dự án. Tôi đã cố gắng đặt ra một điều, nhưng tôi mất hứng thú. Toàn bộ PC của tôi chứa đầy một nửa dự án đã hoàn thành (và ít nhất bốn lần số lượng đã được định dạng khỏi đĩa của tôi).

Tôi bắt đầu tự hỏi liệu động lực thấp hơn của tôi đối với việc lập trình cho niềm vui của nó (đó là một hoạt động tôi thực sự thích) là bởi vì tôi không bao giờ nhận được một dự án hoàn thành vào cuối. Tôi không thể biết mình chỉ có mục tiêu kết thúc quá mở hay chỉ là một khoảng chú ý thấp. Tôi đã thử làm một số dự án nhỏ hơn chỉ để hoàn thành chúng, nhưng chúng không làm tôi quan tâm chút nào.

Đây có thể là một nguyên nhân cho sự giảm động lực của tôi? Ngoài ra, khi tôi nộp đơn xin đi uni (và trong tương lai hy vọng, một công việc phần mềm) có khả năng là một vấn đề không?

Tóm tắt:

Làm thế nào là quan trọng để hoàn thành các dự án phụ / sở thích, có thể là cho sự nghiệp, động lực, hoặc giáo dục?


8
Tôi không nghĩ rằng điều này là xấu, khi chúng ta đang nói về các dự án cá nhân. Tôi có rất nhiều dự án mà tôi đã bắt đầu vì tôi muốn học một cái gì đó hoặc thử nghiệm một công cụ và dừng lại khi tôi học những gì tôi muốn, mặc dù thực tế dự án chưa hoàn thành: sản phẩm đang học chứ không phải phần mềm và sản phẩm đã được thực hiện! Bạn sẽ hoàn thành tất cả các dự án và khi bạn cần chúng hoàn thành để thanh toán hóa đơn. Tận hưởng trong khi bạn có thể! : D
Vitor Py

2
Tôi đã nghe nói rằng sự khác biệt giữa một lập trình viên nghiệp dư và lập trình viên chuyên nghiệp là một chuyên gia tìm ra cách để hoàn thành các dự án. Tìm kiếm sự giúp đỡ là một cách để có được các dự án không bị mắc kẹt và hoàn thành. :-) Như những người khác đã nói, việc hoàn thành các dự án cá nhân của bạn không thành vấn đề, mặc dù học cách hoàn thành một dự án là điều đáng để học hỏi.
Gilbert Le Blanc

1
Bạn đã hoàn thành những gì bạn bắt đầu? là một câu hỏi phỏng vấn phổ biến.
Aditya P

1
@AdityaP: Và câu trả lời là "Không". Một công ty nói rằng "Chúng tôi không biết liệu X có đáng làm hay không. Nhưng nếu chúng tôi đợi cho đến khi chúng tôi biết, sự cạnh tranh đang ở phía trước chúng tôi. Vì vậy, chúng tôi bắt đầu X ngay bây giờ. Có thể trong nửa năm, chúng tôi hủy dự án và mất nửa triệu. Hoặc có thể trong nửa năm, chúng tôi đi trước hơi nước và kiếm được mười triệu ". Kết thúc mọi thứ bạn bắt đầu là ngu ngốc.
gnasher729

Câu trả lời:


40

Rõ ràng việc hoàn thành một dự án rất quan trọng trong "thế giới thực" vì trừ khi dự án hoàn thành và được giao, bạn không (hoặc chủ nhân của bạn không) được trả tiền.

Tuy nhiên, đối với các dự án sở thích và học tập thì phức tạp hơn một chút. Việc hoàn thành các dự án chứng minh cho các nhà tuyển dụng tiềm năng rằng bạn có thể cung cấp những gì bạn đặt ra để phân phối, nhưng nó phụ thuộc vào ý nghĩa của "dự án".

Nếu bạn đang thực hiện dự án với mục tiêu có một sản phẩm hoàn chỉnh thể hiện tất cả các kỹ năng của bạn và có thể là thứ bạn muốn kiếm tiền cuối cùng thì có, bạn nên hoàn thành nó, hoặc ít nhất là cho thấy rằng nó đang được tích cực làm việc .

Nếu bạn đang thực hiện dự án để tìm hiểu những điều cụ thể (cách truyền phát video, mã hóa mật khẩu, bao giờ hết) thì một khi bạn có khía cạnh đó hoạt động thì việc có một sản phẩm đầy đủ chức năng là bạn đã hoàn thành dự án một cách hiệu quả. Những gì bạn nên có là một cái gì đó bạn có thể cho các nhà tuyển dụng tiềm năng thể hiện kỹ năng của bạn.

Ví dụ: đây có thể chỉ là một trang web có nội dung "Chào mừng bạn đã quay lại, Joe" sau khi đăng nhập thành công và không có gì khác - nhưng điều đó tốt khi bạn hiển thị mã phía sau trang web chứng minh bạn hiểu mã hóa mật khẩu và kết nối an toàn, v.v.


1
Ví dụ của bạn đã kết thúc vì mục đích chỉ là để hiểu mã hóa mật khẩu. Hoàn thành các dự án là rất quan trọng bởi vì bạn học được rất nhiều về dự án, những gì đã làm và không hoạt động, kiến ​​thức này rất hữu ích cho cách bạn có thể xử lý dự án tiếp theo của mình.
DBlackborough

1
@ G3D - điểm công bằng, nhưng toàn bộ trang web với tư cách là một dự án chưa "hoàn thành". Tôi sẽ thử và làm rõ bit đó.
ChrisF

48

Lấy nó từ một người có cùng vấn đề, hoàn thành ít nhất một số dự án của bạn là rất quan trọng. Hoàn toàn ổn khi thực hiện một số dự án thử nghiệm và từ bỏ chúng khi bạn đã học được những gì bạn cần hoặc đơn giản là không nên bắt đầu với nó.

Tuy nhiên, những người sáng tạo có xu hướng thích phần đầu tiên đầy thách thức của bất kỳ dự án nào hơn là giai đoạn "dọn dẹp, đóng gói và ra khỏi cửa" nhàm chán vào cuối. Bạn cần đưa ra một số chiến lược để khắc phục điều đó hoặc bạn sẽ

1) Không bao giờ nhận được bất kỳ tín dụng công cộng cho bất cứ điều gì bạn làm (nếu đó là những gì bạn muốn)

2) Không bao giờ có thể kiếm tiền từ những gì bạn đã làm (nếu đó là những gì bạn muốn)

Nhưng điều tồi tệ nhất là những người khác và chính bạn sẽ bắt đầu xác định bạn là người không hoàn thành mọi việc, và đó là một nhãn hiệu rất xấu đối với bạn và khác cho suy nghĩ của chính bạn.

Vì vậy, tìm một đối tác, lý do hoặc kỷ luật để ít nhất bắt đầu hoàn thành một số dự án của bạn.

Chiến lược hữu ích cho các lập trình viên chần chừ

  • Lập danh sách tất cả những điều tốt đẹp có thể xảy ra nếu bạn hoàn thành dự án và tất cả những điều tồi tệ nếu bạn không làm. Sau đó băng nó vào màn hình của bạn :)

  • Đặt lịch! Các dự án chiếm thời gian dành cho chúng, vì vậy một dự án không có thời hạn sẽ mất mãi mãi. Đặt lịch với các mốc hàng tháng và hàng tuần

  • Đặt mục tiêu hàng ngày, "Hôm nay tôi sẽ hoàn thành việc này"

  • Nếu bạn đang làm một ứng dụng hoặc một cái gì đó tương tự, hãy tập trung vào việc làm cho nó có thể chạy được và có thể sử dụng được để bạn có thể bắt đầu ăn thức ăn cho chó của riêng bạn. Bạn có thể đang làm việc trên một cái gì đó bạn quan tâm vì vậy thực sự sử dụng nó theo quy định sẽ thúc đẩy bạn cải thiện nó.

  • Coi chừng đi du lịch tái cấu trúc lớn, tôi đã phá vỡ ứng dụng của mình trong bốn tháng vì tái cấu trúc rộng rãi và sự phát triển bị chậm lại chỉ đơn giản là vì tôi không thể chạy nó và bị hủy bỏ để làm việc với nó. Thực hiện tái cấu trúc nhưng cố gắng không làm tất cả cùng một lúc :)

  • Lập một danh sách tất cả mọi thứ cần phải hoàn thành để hoàn thành (Tôi khuyên bạn nên tóm tắt nội dung của abstractspoon) Nếu chúng ta không biết còn lại bao nhiêu thì chúng ta sẽ biết khi nào chúng ta kết thúc? Làm việc hướng tới một mục tiêu chưa biết có thể làm giảm điều kiện

  • Đi qua danh sách và cắt mọi thứ không thực sự cần thiết (đặt nó trong một danh mục đẹp để có). Hoàn thiện sản phẩm sẽ giúp bạn tăng sức mạnh và những điều đó có thể được thực hiện sau đó. Tốt hơn là phát hành một cái gì đó hơn là không có gì . Ngay cả iPhone cũng không có mọi thứ ngay từ đầu.

  • Đừng để bị phân tâm bởi những điều mới mẻ sáng bóng. Lý do chính khiến tôi không hoàn thành các dự án là vì tôi tìm thấy một thử thách mới. Nếu bạn hoàn toàn tích cực không thể cưỡng lại việc bắt đầu một dự án mới trước khi dự án cũ kết thúc, hãy tiếp tục thực hiện song song dự án cũ hoặc nó sẽ hoàn toàn biến mất. Ngoài ra, xem điểm tiếp theo.

  • Đặt thời gian làm việc tối thiểu. Nếu bạn thực sự chán ngấy một dự án, hãy đặt thời gian tối thiểu để làm việc với dự án mỗi ngày, ngay cả khi chỉ 15 phút hoặc một giờ. Rất có thể là nếu bạn bắt đầu, bạn sẽ làm việc lâu hơn thế.

/ tôi đi để hoàn thành ứng dụng lớn / ngôn ngữ lập trình / kẻ giết người trên facebook tiếp theo của mình;)


21

Toàn bộ PC của tôi có đầy đủ một nửa dự án đã hoàn thành

Bạn có chắc là họ đã hoàn thành một nửa? Giá trị của việc thực sự hoàn thành một cái gì đó là chỉ sau đó bạn mới thực sự đánh giá cao nhiệm vụ lớn như thế nào để hoàn thành bất cứ điều gì. Các lập trình viên có sự lạc quan vốn có để xem xét hầu hết mọi thứ 80% được thực hiện hầu hết thời gian, nhưng nó luôn chỉ ra rằng 20% ​​còn lại sẽ mất ít nhất cùng thời gian và nỗ lực như 80% đầu tiên đã làm.

Vì vậy, tôi thực sự khuyên bạn nên hoàn thành ít nhất một dự án. Khách hàng trả tiền không quan tâm nếu dự án hoàn thành 50%, 80% hoặc 99%. Chỉ tính 100%.


Một nửa kết thúc như thuật ngữ chung. Tôi không biết họ đã làm được bao xa, nhưng gần như chắc chắn ít hơn thế. (ví dụ: Một lexer và có lẽ 30% của một phân tích cú pháp, nhưng không có phụ trợ)
Các Cộng Duck

3
90% đầu tiên của công việc, một cách tự nhiên, chiếm 90% thời gian. 10% cuối cùng của công việc chiếm 90% thời gian còn lại.
Nút840

Cũng rất đúng. Dự án sở thích cuối cùng tôi đã làm là "hoàn thành" sau 5 giờ. Thêm tất cả chuông và còi tuy nhiên mất thêm 10 giờ.
Carra

5

Tôi có vô số dự án từ thời sinh viên vẫn còn dang dở. Tôi không nghĩ việc hoàn thành chúng là quan trọng. Tôi chưa bao giờ hoàn thành hầu hết của tôi. Một số trong số chúng hoàn toàn bện tóc, như tạo ra một lớp chuỗi tốt hơn hoặc thao tác với bitmap với mảng lớp Pixel.

Có thể bạn đang chọn những dự án quá lớn. Chọn một cái gì đó thực sự nhỏ. Một cái gì đó sẽ không mất nhiều hơn một chiều thứ bảy để hoàn thành. Bạn sẽ hài lòng khi hoàn thành nó. Có thể bạn sẽ cảm thấy tràn đầy năng lượng để làm việc khác.

Một điều quan trọng cần nhớ là khi bạn đến thế giới làm việc, bạn sẽ dành 8 giờ mỗi ngày để giải quyết vấn đề. Nó cho bạn nhiều thời gian hơn để giải quyết các dự án lớn hơn trong môi trường sống sinh viên lẻ tẻ.


1
1 cho "hoàn toàn harebrained" (tình cờ, harebrained , không hairbrained). Một mô tả tuyệt vời của rất nhiều dự án bị bỏ rơi của tôi. Điều đó và vô cùng megalomaniacal.
Tom Anderson

5

Hãy tự hào về thư mục dự án còn dang dở của bạn và đừng tự đánh bại mình về điều đó! Nếu bạn đã ở trong một ngành học khác, ví dụ như nghệ thuật, thì những dự án còn dang dở sẽ không thực sự quan trọng, vấn đề là bạn đang có một bước đi và bản thân nó thật đáng ngưỡng mộ. Bạn có thể ngồi ở nhà xem tivi thay thế? Hoặc lãng phí tất cả thời gian của bạn trên các trang web Stack Exchange (rất tiếc!)

Microsoft chưa bao giờ vận chuyển API 'Fahrenheit' mà tôi từng hy vọng, họ không bao giờ vận chuyển hệ thống tệp 'cơ sở dữ liệu' để thay thế NTFS và họ đã giết chết dự án DeepZoom 'Seadragon' có thể rất tuyệt vời. Có lẽ họ đã thất bại trong việc hoàn thành và hoàn thành hàng trăm sản phẩm khác, không nhất thiết phải hết động lực để 'nắm lấy, mở rộng và dập tắt'. Họ cũng đã vận chuyển toàn bộ hệ điều hành chưa hoàn thành hơn '98% '. Điều đó làm cho họ hoàn thành kém hoàn thành?

'Người hoàn thành-Người hoàn thiện' thực sự là một cụm từ trong Mô hình nhóm Belbin . Có thể bạn là một 'Chuyên gia' hoặc 'Điều tra viên tài nguyên' và phù hợp với một nhóm nơi những người khác thực hiện các nhiệm vụ hoàn thành. Nhìn mọi thứ theo cách này cho phép bạn nhìn vào tình huống của mình tích cực hơn.


3

Nếu có bất kỳ sự an ủi nào mặc dù là một nhà phát triển phần mềm chuyên nghiệp trong hơn 8 năm, tôi vẫn cảm thấy khó khăn để hoàn thành các dự án cá nhân. Tôi luôn cảm thấy rằng đó là sự kết hợp của các mục tiêu đã kết thúc mở, mong muốn 'làm điều tuyệt vời trước tiên' và không có bất kỳ áp lực thực sự nào để hoàn thành nó .... tuy nhiên, để trả lời hai câu hỏi của bạn:

Tôi nghĩ rằng coi các dự án là thất bại bởi vì chúng không hoàn thành 100% sẽ ảnh hưởng đến động lực của bạn và có thể ngăn bạn thực sự bước vào một lĩnh vực công việc tuyệt vời. Thay vì xem chúng là những thất bại, hãy thử nghĩ về những gì bạn học được từ chúng - những ngôn ngữ / khung mới mà bạn biết bây giờ, những bài học lập trình nào bạn đã học, những công cụ nào bạn có kỹ năng và những người / cộng đồng bạn tương tác trong khi thực hiện nó. Nhìn từ quan điểm đó, hiếm khi tìm thấy một dự án cá nhân không đóng góp theo cách nào đó cho kiến ​​thức của bạn.

Bạn sẽ thấy khi ở trường đại học hoặc trong việc làm có hai sự khác biệt lớn đảm bảo rằng bạn hoàn thành các dự án của mình. Đầu tiên, mục tiêu của bạn thường được xác định khá rõ ràng - cụ thể trong hai năm đầu đại học. Thứ hai, bạn có áp lực thực sự để hoàn thành một dự án - bạn cần phải làm như vậy để vượt qua một lớp / mô-đun hoặc người quản lý của bạn nói với bạn rằng XYZ dự án cần phải được bàn giao cho nhóm thử nghiệm cho một ngày cụ thể. Điều này cung cấp một trọng tâm mà tôi chưa bao giờ có thể sao chép vào các dự án cá nhân.


2

Thứ nhất, điều quan trọng là sự tự hài lòng. Bạn đã đạt được một cái gì đó từ đầu đến trạng thái kết thúc rõ ràng. Sau đó, bạn có thể bật một mục trong "dự án chồng lên nhau" và đối với tôi, nó luôn là một sự giải thoát.

Đối với sự nghiệp của bạn, và chính xác hơn là cho các cuộc phỏng vấn xin việc, cho đến khi bạn hoàn thành dự án của mình, bạn không có gì để trình bày hay nói về ... Hiển thị một nửa dự án là không bao giờ tốt. Nó có thể là lỗi, xấu hoặc đơn giản là không hoạt động. Bạn thậm chí không thể đề cập chúng với người phỏng vấn nếu không họ sẽ hỏi "Tại sao bạn không hoàn thành chúng?" ... Nếu bạn trả lời "Tôi không có thời gian", điều đó có nghĩa là bạn không thể lên lịch đúng cho nhiệm vụ của mình, bạn không kiên trì Hơn nữa, bạn đã có thời gian để bắt đầu các dự án khác nên lập luận của bạn sẽ sai. Bạn sẽ phải tìm một câu trả lời thông minh ...


2

Tôi đã ở trong một tình huống tương tự như Jon Malcolm, nhưng tôi đã lãng phí thời gian ở những nơi sai lầm. Đối với các dự án cá nhân, tôi quyết định hạ thấp tiêu chuẩn của mình để ủng hộ chức năng hoàn chỉnh. Điều đó có nghĩa là không có ajax, không nội địa hóa, không xác thực nhiều, không xác thực, không phân trang, giao diện người dùng barebones, không kiểm tra đơn vị, v.v. Chỉ cần làm cho phần kinh doanh hoạt động ... Tôi gọi nó là "đường thẳng". Các giải pháp sẽ được hoàn thành và nên làm việc trong điều kiện lý tưởng. Khi đã xong, nếu dự án vẫn còn thú vị, tôi sẽ tiếp tục lặp lại việc tái cấu trúc cho đến khi tôi mất hứng thú.


2

Tôi có kinh nghiệm tương tự và 5-10% cuối cùng của một dự án thú cưng nhỏ có thể là một kẻ giết người .

Lời khuyên của tôi nếu bạn muốn hoàn thành? Nói với bạn bè, đồng nghiệp, gia đình hoặc bất cứ ai có thể quan tâm đến điều mới mẻ thú vị này mà bạn đang làm việc. Liên quan đến họ, đặt câu hỏi cho họ. Hy vọng bạn sẽ có được một vài người theo dõi sẽ hỏi về sự tiến bộ của bạn. Áp lực của việc biết điều đó sẽ thúc đẩy bạn tiếp tục trải qua các bước trần tục nhưng cần thiết để vận chuyển dự án của bạn.


1

Các dự án hoàn thiện là những gì tách biệt trẻ em với người lớn, lúa mì từ vỏ trấu, đàn ông / phụ nữ với các chàng trai / cô gái.

"Lập trình viên thực sự tàu."


9
Đó cũng là những gì tách biệt công việc với chơi.
Tom Anderson

1

Để biết bạn có phải hoàn thành một dự án hay không, bạn phải đánh giá giá trị bạn sẽ nhận được từ nó so với thời gian bạn phải đầu tư vào nó để hoàn thành nó.

Nếu giá trị bạn có thể trích xuất từ ​​nó thấp hơn khoản đầu tư , bạn có thể xem xét nó với Chi phí Sunk .

Trong kinh tế và ra quyết định kinh doanh, chi phí chìm là chi phí hồi cứu (quá khứ) đã phát sinh và không thể được phục hồi.

Quá nhiều dự án dang dở dẫn đến lãng phí . Lãng phí là một trong những kẻ thù mạnh nhất của nạc .

Điều đó nói rằng, đôi khi, tốt hơn là từ bỏ một dự án để tập trung nỗ lực của bạn vào một dự án sẽ cung cấp ROI nhiều hơn nữa. Nhiều người kết thúc mọi thứ với sự cố chấp , và không nắm bắt được những cơ hội thực sự tốt .


1

Đơn giản và đơn giản: nếu bạn muốn hoàn thành nó, hãy hoàn thành nó! Nếu bạn không muốn, đừng! Bạn không có ai chờ đợi để giao hàng, vậy tại sao lại đau đớn đến vậy? Làm các dự án sở thích không giống như các dự án công nghiệp. Họ rất khác nhau. Sẽ không ai hỏi bạn tại sao bạn không hoàn thành các dự án sở thích của mình nếu bạn không nói với họ rằng bạn đã bỏ dở chúng. Có một tỷ mã dự án sở thích nổi trên mạng. Bạn nghĩ có ai thực sự quan tâm đến họ? (ngoài những sinh viên lười biếng univ đang tìm kiếm một dự án năm cuối nhanh chóng và sẵn sàng)


1

Seth Godin đã viết rất nhiều về thói quen vận chuyển:

http://the99percent.com/tips/6249/seth-godin-the-truth-about-shipping

Tôi nghĩ nó quan trọng, và đây là lý do: không đủ để thực hiện một dự án cho chính mình, mặc dù nó có thể có giá trị giáo dục đối với bạn. Nếu bạn không bao giờ chia sẻ món quà của mình với mọi người, bạn giống như một nghệ sĩ không bao giờ thể hiện những bức tranh của mình cho bất cứ ai.

Đó cũng là thứ tôi phải vật lộn với. Nếu tôi phải phân tích lý do tại sao, tôi sẽ nói rằng tôi có xu hướng quá kỹ sư và suy nghĩ quá mức các dự án cá nhân của tôi. Tôi sẽ đưa ra quá nhiều giả định về vấn đề này, nhiều trong số đó là không hợp lệ, sau đó tôi sẽ đưa vào quá nhiều công việc trước khi tôi nhận ra điều này. Đó là động lực, và tại thời điểm đó tôi mất đà. Có một ý tưởng tôi đã lặp đi lặp lại trong vài năm qua và tôi đã lặp lại mô hình này nhiều lần.

Kế hoạch của tôi trong tương lai cho tất cả các dự án cá nhân là tập trung vào một tập hợp nhỏ của tầm nhìn tổng thể, thực hiện nó và đưa nó ra ngoài đó (cho dù đó là một dự án github nguồn mở, một trang web, một bài báo trong một loạt bài viết).

Sau đó, nếu tôi vẫn còn đủ động lực, tôi sẽ lặp lại nó. Tôi hy vọng rằng sự hài lòng tôi nhận được từ việc vận chuyển sẽ duy trì tôi thông qua các lần lặp bổ sung.


0

Nó rất quan trọng.

Tôi hiểu việc đánh cắp thứ gì đó như một bằng chứng về khái niệm và sau đó để nó ngồi ở đó. Tốt rồi. Tuy nhiên, khách hàng sẽ không trả tiền cho bất cứ điều gì ít hơn một dự án đã hoàn thành.

Điểm mấu chốt là ... Doanh số thúc đẩy mọi thứ . Không có doanh thu thì không có lương. Không có doanh thu thì không có cải thiện vốn. Không có bán hàng thì không có công ty. Bán hàng đến từ khách hàng. Khách hàng sẽ chỉ thanh toán khi họ hài lòng. Sự hài lòng có nghĩa là dự án hoàn thành hoạt động và hoạt động tốt.

Để sử dụng một sự tương tự bóng đá: Vùng màu đỏ là 20 yard cuối cùng trước vạch đích. Đó là phần mệt mỏi nhất khi ghi bàn thắng. Điều tương tự áp dụng cho một dự án lập trình. 20 phần trăm cuối cùng thường là khó khăn nhất để hoàn thành, nhưng nó phải được thực hiện.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.