프로젝트 같은 목표를 잘 선정하는 방법(?) 이 있을까요?

조금 유용하고 재미있어보이는 주제들을 생각해보긴 하는데… 뭔가 다 기존에 있거나 돈많은 대기업들이 죄다 만들어 놨네요… 프로그램, 소프트웨어 만드는 법은 배우지만… 실생활에서 도움이 될려고 하면 이미 만들어놔서 할게 없어서 많이 우울하더라구요… 그와중에도 많이 연구하고, 유의미한 결과를 찾아내시는 분들이 계실텐데 어떠한 방면으로 생각하시는지 궁금합니다…

좋은 소프트웨어를 만드는 게 꼭 없는 걸 만드는 게 아닙니다.

다른 제품들을 벤치마킹 해서 장점만 취합하고 만들어도 좋은 프로젝트라 생각합니다.

제품이 아니더라도, 자기가 공부할 언어나 프레임워크를 이용하거나 기술들을 응용해서 프로젝트를 해도 좋은 프로젝트라고 생각합니다.

2 Likes

자신에게 의미가 있으면 좋은 소프트웨어라고 봐도 된다는 것인가요?
프로그래밍으로 많은 걸 만들 수 있다는 생각이이었었는데 막상 어느정도 만들 수 있으려는 상황이 되어 주변을 둘러보니 이미 다 만들어져 있더군요…ㅠㅠ

만드는 거 자체가 귀중한 경험이긴 합니다.

물론 좋은 소프트웨어는 얘기가 다르지요.

굳이 힘 줘서 새로운 제품 아이디어를 창조하려는 것보다는 위에서 말했듯이 이미 있는 제품들을 벤치마킹 해서 더 좋은 제품을 만드는 것도 좋은 소프트웨어를 만드는 길 중 하나 입니다.

만든다면 벤치마킹 해서 만드는 방식이 그나마 실용적이겠네요… 좀 더 찾아봐야 겠습니다. 벤치마킹 하려고 해도 제가 생각했던 프로그램들은 대부분 완성도가 높아서 제가 생각이 짧아서 그런건지 보완할 방법이 잘 안보이더군요…

제가 봤을 때는 머리 속에 있는 기능들과 세부사항들을 문서로 정리하시고, 벤치마킹 하시는 걸 추천 드립니다.

머릿속에 있는 생각들은 사실 잘 정리되기 쉽지 않습니다. 심심이님이 말씀하신 것처럼 가장 좋은 방법은 문서화입니다. 생각을 문서화하고 여러번 보고, 다른 사람과 돌려 보면서 개선점을 찾아 보는 것도 좋습니다.

넓은 범주에서는 남들이 만들지 않았던 걸 찾는 건 불가능에 가깝지만,
범주를 좁히면 찾을지도 모릅니다. (하지만 이것도 힘듭니다.)

많은 개발자들은 기존의 프로그램에 있는 기능을 개선하는 쪽으로 갑니다.
아니면, 논문을 구현하는 쪽으로 가도 됩니다.
(이를테면 딥러닝에서는 종종 새로운 방법론은 공개되었는데 구현체가 공개되지 않은 경우가 있습니다.)

마지막으로, 코톡에 오신 것을 환영합니다.

완전히 새로운 프로그램을 만드는 것이 능력이 아니라
있는 공짜 프로그램을 잘 갖다쓰는 것이 능력이라고 생각합니다.

안녕하세요.

제 생각에는 벤치마킹을 통해 프로젝트를 하시는게 어떨까 싶어요.
왜냐하면 그 시스템이 그런식으로 만들어진건 그럴만한 이유가 있어서 그런것이잖아요? 숙련된 개발자들이 그렇게 했다는거니까요. 일단 기본기를 배우는 것이죠. 사실 현업에서도 100퍼센트 새로운 시스템을 구현할일은 거의 없답니다.

게다가 현재 우리 일상속에서 사용하는 모든 발명품들은 기존의 것들을 조금씩 발전시켜온거에요. 즉 90퍼센트의 벤치마킹에 10퍼센트의 개선이 추가된거죠. 인류는 자연을 모방하면서 발전해왔잖아요. 모방은 중요한 덕목이에요. ㅎㅎㅎ

기존의 프로젝트를 모방하시면서도 본인만의 특징을 살려보세요 ㅎㅎ

생각보다 많은 답글이 달려서 어찌할 바를 모르겠네요…

Hyun , 심심이님 : 아무래도 제가 벤치마크의 중요성을 생각보다 간과하고 있던게 맞는것 같습니다.
기존에 것들이 너무 잘 만들어져 있어서 문서화나, 이런식으로 디테일하게 비교해볼 생각은 못하고 머리속으로만 생각한게 잘못 아닌가 싶습니다.

Deneb님 기존의 프로그램을 개선한다는건 현재 오픈소스로 나와있는걸 개선한다는 말 맞나요? 아무래도 오픈소스가 아닌 프로그램은 제가 접할 수가 없기도 하구요… 논문 적용도 학사에서 할수있는 난이도로 나오는 경우도 있나요? 아무래도 논문읽고 연구하는건 석사부터 가능하다(?) 라는 생각이었습니다…
코톡 정말 좋은 사이트 같습니다. 반겨주셔서 감사합니다

얼음나무님 주변에 다른 프로그래머 분들에게도 앞으로 어떻게 제가 해야 미래에 실력있는 개발자가 되냐고 물어본 적이 있었는데, 그때 그분도 기존에 완성도가 높은 오픈소스를 활용하여 개발시간을 단축시키고 완성도를 끌어올린다고 하더군요, 기존에 있는걸 활용하는것도 중요하다구 생각하고 있습니다 감사합니다

Lukas.j.han 님 벤치마킹을 통해 프로젝트를 진행하는게 아무래도 맞는것 같습니다.
다만 이세상에 아무래도 스마트폰이 옛날부터 점점 대중화 되기 시작되면서, 벤치마크를 하려면 비교 가능한 비등비등한 상태에서 우위를 점해야 한다고 생각하는데, 독보적이라고 해야되나요??.. 검색엔진은 구글
동영상은 유투브 메신저는 카카오톡 페이스북 트위터…
이런식으로 다들 너무 완성도가 있어서 예전처럼 개인이 벤치마킹하여 어떤 앱을 만든다는게 많이 힘들어진거 같습니다( 예전 카카오톡이나 앱들 초기버전과 지금버전 생각하면 …예전에 많이 허접했기두 하구요)
결국 제 능력선에서 벤치마크를 해서 좀더 나아지는걸 찾아야 될텐데, 타겟 잡기가 쉽지 않네요
(메신저 어플을 만들어보자! = 어 있네? 음 지도 길찾기도…있고 음…뭐가 좀더 삶을 유용하게 만들까… 하다가 정답이 안나와서 해매네요 …)

생각보다 정말 많은 답글이 달려서 답글 달아주신분들 정말 감사합니다… 덧글을 통하여 한번 더 생각을 해보겠습니다!

그럴때 해볼만한 것이 클론코딩입니다
말 그대로 최대한 똑같이 만들어보는거죠

그런데 구현해야 할 기능들이 너무 많아서 힘들다면
처음에는 쉬운 기능 몇 개부터 시작하는 것이 좋습니다

1 Like

처음엔 아이디어가 겹친다는 이유로 등한시 했던게 많은데…다시 생각해보면 그걸 제가 완벽하게 구현할 수 있는것도 어니었더군요… 뭔가 기존에 없던것을 만들어야 된다는 강박때문에 그렇게 된것 같습니다. 조언 감사합니다