끝없는 신기술

닷넷이 그마아 최근에 정신을 좀 차려서(물른 마소가 정신을 차린거겠죠?)
닷넷5.0 부터 시작해서 줄줄이 메이저 업그레이드를 하고 있는데,
그러다 보니 달달이 닷넷관련 새로운 기술들이 나오고 있습니다.

저는 닷넷프레임워크 4.0에 머물러 있는 사람으로서, 이러한 신 기술들이 줄줄이 나오는것에 대해서 큰 이견은 없습니다. 나오면 좋고 안나와도 쓰는데 문제 없으니깐요.(물른 메이저넘버 업글로 넘어가는데에는 불만이 있습니다)

그러나 제가 여러분들에게 ‘감히 조언하고 싶은것이 있읍니다’.

1. 신기술을 쫒는 분들이 많습니다.

최근에 각종 신기술 관련 키워드들이 나오고 있는데, 이걸 다 따라가시는분이 있을지 궁금합니다.
그리고 따라가는것 이외에 닷넷만 있는것도 아니니, 다른 언어들, 다른 프레임워크들도 아마 공부하실껍니다.

여러분들은 이걸 다 공부하고 다 따라가실 필요가 없다고 생각합니다.

기존의 스택에서 확장되고, 시간이 지나 압축되고, 다른동네에서 나온 기술이 접목되는것들 입니다.
항상 그렇듯이 개선이죠.

이는 베이스 개념들을 잘 이해하고 있으면 새로운것이 오더라도 잘 활용할수 있으니깐요.

2. 그리고 다른 언어와 비교하면서 어떤 다른언어가 좋고, 어떤 다른 언어는 안좋다 등등 이렇게 이야기하시는분들이 있는데 굳이 닷넷 언어 동네 와서 다른언어가 좋니마니 이야기 하실필요는 없다고 생각합니다.

그냥 ‘닷넷에는 다른언어에 있는 그러한 부분이 모자라다’ 라고 이야기 하는것이 좋습니다. 그래서 내가 쓰는 닷넷에는 이러한 부분이 있었으면 좋겠다던지, 아니면 그 부분을 오히려 본인이 구현하시거나 하는게 좋습니다. 그게 진정 개발자의 모습이죠.

다른언어가 우월하고 다른언어가 좋고 그런거면 그냥 다른언어를 쓰시면 됩니다.
닷넷에 있는 신기술 관련 이야기도 할 이야기가 넘쳐나는데, 거기다 다른언어까지 가지고 오면 안그래도 안끝날 개발 이야기 진짜 한도 끝도 없어집니다.

3. 닷넷 언어 하나만이라도 잘 하세요.

아니 본인이 좋아하는 언어 하나만이라도 잘 하는게 중요합니다. 다른곳에서 면접하러 갔을때 당당하게 나 그래도 이 언어는 좀 한다 라는게 있는지 궁금합니다.

닷넷기준으로 보자면, 여러분들이 닷넷의 신기술 키워드들을 줄줄 이야기 한다고 해서 그 신기술들 현재 회사에서 몇개나 쓰겠습니까? 당장 현재 개발해야 할꺼나 유지보수해야 할것들, 현재의 구현된 부분에서 확장해야할 것들에 대해 그것들이 크게 적용되기나 하던가요?

단순히 면접관들이 고인물들이라서 그러한 신기술을 안쓴다고 하는 부분에 대해서 불만을 가진다면, 여러분들은 직장인이 아니라 그냥 개인적으로 집에서 개발하시는게 좋습니다.

내가 메시(Messi)더라도 다른 선수들과 발을 맞춰 가야하는게 집단의 힘 입니다(그 **은 집단의 힘 말구요). 이미 회사에서는 그 문화가 있고 속도가 있습니다. 회사에 종속되는 순간 여러분들은 거기에 맞춰가야지 나만 포르쉐타고 혼자 가봤자 다른 팀원들도 같이 골인해야 성공할 수 있는겁니다.

닷넷, C/C++, 자바, 파이썬, 고, 등등 뭐든지 하나라도
내가 이 언어 하나는 그래도 하다가 막히는건 없었다 라고 당당히 이야기 하거나, 내가 이 프로그램 처음부터 끝까지 만들었다 하는게 있으신가요?
마치 남자들 군대에서 나 GOP에 있었고 눈이 2m가 쌓여서 하루종일 눈 치우고 있었다 하는 그런 전설아닌 레전드 같은 개발 이력이 있었나요?
면접에서 개발하다 힘든일이 있었는지 물어보는건 얼마나 문제해결을 ‘’ 했느냐에 대한 해결능력을 보는거지, 내가 남들보다 코드 한줄 더 빨리 짠다고 해서 그걸 더 높게 쳐주진 않습니다.

여러분들은 기본을 잘 이해하셔야 하고 그걸 잘 활용하셔야 합니다. 회사는 그런 사람을 뽑는겁니다. 그래야 여러분을 범용적으로 쓸 수 있기 때문입니다.
범용적으로 쓸 수 없는 사람은 둘중 하나입니다. 엄청난 집중을 요하기때문에 하나만 해야하는 분야거나, 아니면 어디에도 쓸 수 없는 사람일 것입니다.

개인적으로 공부하고 노력하는것에 대해 폄하하는건 아니지만 이 글을 보고 계시는 여러분들은 대부분은 직장인이거나 회사관련해서 다들 일을 하시는 분들이실껍니다(학생분들 제외하구요)

본인이 대표가 됐다고 생각하시고 직원이 10명이 있는데 연 매출 10억이 겨우 나오는 상황에서 어떻게 해쳐나가야 할지 한번 시뮬레이션해보는것도 좋은 직장인의 모습일 것입니다. 그 직원들 중 하나가 본인이라면 괜찮을지도 한번 생각해보시구요.

무조건 직장에 충성하라는건 아닙니다. 무조건 신기술 쓰지 말라는말 아닙니다.
특정한 상황을 해쳐나가는데에 필요한 기술을 대안으로 내어놓을 수 있다면 엄청난 성과가 되겠죠. 그걸 위해서도 개인적으로 공부해야합니다.

각자의 상황에 맞게 해나가시면됩니다. 결국은 본인이 시장에서 하나의 물건이니깐요.
모두들 화이팅 하시고, 각자의 자리에서 열심 하시면 될것 같습니다.

이상입니다.

9 Likes

제 글을 보고 이야기하시는 것 같아 보여서 댓글 남깁니다…

첫째로, 닷넷 프레임워크 4.x에 머무른 상태에서는 다른 분들의 신기술 습득 요구 혹은 호기심을 욕할 자격이 되지 못합니다.
티코도 충분히 기름 넣고 클러치 밟고 기어 넣어서 달리면 대한민국 어디든 다 갈 수 있지요.
제네시스가 즐비한 세상에서 티코 욕을 할 수도 있는겁니다. 시대가 어떤 시대인데 아직도 여기 머물러 있나? 하는걸 원망하는거구요.
현기차 너무 좋아하고, 현기차 너무 사랑해서 계속 타고 싶은데 다른 브랜드에 비해 아쉬운 부분이 많이 보이면 아직도 이것 밖에 안되냐는 소리는 당연히 할 수 있는겁니다.
싫으면 다른거 타라? 현기차가 이것만 보완해주면 너무 좋을 것 같다. 앞으로도 계속 현기차 탈 것이다.
일종의 애정이자 관심입니다.
더군다나 업무적으로 닷넷을 쓸 수 밖에 없는 환경이라면 더욱 더 간절한 것입니다.
글쓴이님은 이 부분을 잘 헤아리지 못하실 (수 밖에 없는) 환경이신것 같은데, 그렇다고 해서 MS에 대한 아쉬움을 토로하는 것에 대해 쓴소리를 하시는 것 치고는 죄송하지만 닷넷 경험의 폭이 너무 좁으십니다.

=> '베이스 개념’들을 잘 이해하더라도 막상 새로운게 나와서 쓰려고 하면 그 '베이스 개념’만 필요한게 아닙니다.


둘째로, 닷넷 언어 하나만이라도 자신있냐 하셨습니다.
예 자신있습니다… 레전드 개발이력 있고요… 처음부터 끝까지, 백지부터 작성한 프로그램이 수두룩합니다… 닷넷데브에서 그게 큰 자랑거리가 되지는 않으리라 봅니다… 그리고

이 말씀에 저는 전혀 동의가 되지 않는데… 아마 업무환경이나 닷넷을 바라보는 시야가 완전 달라서 그렇다고 봅니다.

대표가 됐다고 생각하고 시뮬레이션하고… 무조건 직장에 충성하라는 말이 아니다…
이 말씀은 왜 하시는지는 모르겠습니다만, 저는 .NET8 혹은 Visual studio에 대해 아쉬운 부분을 토로한 것이고, 평소 닷넷데브라는 포럼에서 활동하고 글도 열심히 읽으며 관심이 많은 저로서는 충분히 할 수 있는 얘기라 생각합니다.

4 Likes

특정인을 저격한 내용은 아니었습니다.
그리고 @CODE_REAPER 님은 제가 잘 모르겠지만 신기술을 계속 따라가려는분은 많이 보였습니다.
저는 여기에 글을 많이 쓰는 사람은 아닙니다.
오히려 다른 채팅방에서 많이 활동하죠.

그 외에 다른 말씀은 잘 새겨듣겠습니다.

5 Likes

@밀수나라 님이 이해하세요…

@CODE_REAPER ← 이 사람 쓰레기입니다…

1 Like

흠…
신기술 다 따라갈 필요는 없죠.
하지만 베이스만 가지고 고인물 된다고 해서 신기술 바로 적용 할 수 있는 것도 아닙니다.

또 기업 에서 아 재는 쫌만 하면 바로 적응 할 수 있는 애니까 뽑아야지… 하는 회사는 없습니다.
실제로 신기술 해본 사람을 뽑습니다.

그래서 다 할 수는 없어도 조금씩 전진 하고 싶은 거죠 그게 다 입니다.
도태 되고 싶지는 않으니까요… 이직도 못하고 같은곳 에만 있으면 어떻게 되겠어여

뭐 물론 오너가 평생 고용을 보장 한다면야 회사 에서 원하는것만 주구 장창 하면서
필요 할때마다 조금씩 공부 하면 되겠지만 … 그런 회사가 있나요 ?

5 Likes

말씀자체는 업무에 있어서의 정론에 가깝다고 생각하는데,
개인적으로 레거시 닷넷 프로젝트를 마이그레이션 하던입장에서 별로 와닿는말은 아니네요.

현 닷넷의 발전사항중에는 별개의 신기술도 많지만, 생산성의 측면에서 구C#에서 발생하던 일종의 언어장애나, 그 장애의 대안으로써 파생되던 구조,효율 등의 부조리를 야기하는 여러 야매스런 구현 방법론들을 검증된 최선의 디자인으로 수렴시킬수 있도록 돕는데 중점을 두고있는것들이 많습니다.

이러한 부분들을 수용하는것은 미래에도 계속 닷넷 프로젝트를 생산하고, 유지보수해야하고, 혼자보는것이 아닌 입장이시라면 마냥 선택의 문제가 아니라고 봅니다.
닷넷에는 따라잡아야할 새로운것이 많은게 아니라, 내다버려야할 구닥다리가 많은겁니다.

아직 프레임워크에 머무르고계신다면, 마이그레이션 툴이라도 돌려보시길 꼭 추천드립니다.
여러분들이 좋아하는 닷넷을 믿고, MS가 제공하는 하위호환성을 믿으세요 :+1:
닷넷 코어라는 도구, C#이라는 언어, msbuild, VS2022, VSCode, 지금나오는 모든것들이 최고입니다.

6 Likes

말씀하신 1, 2, 3 이 상호 모순적인 것 같습니다.

대화 상대방이 누구냐에 따라 닷넷 신기술의 가치가 너무 달라진다는 느낌을 받습니다.
닷넷 언어만이라도 잘 하라는 말과, 신 기술은 배울 필요가 없다는 말이 공존이 가능한가요?

신기술을 배울 필요가 없다는 신념이 진리라면, 닷넷 뿐만 아니라, 모든 언어의 1.0 버전만 사용하는게 맞지 않는지요?

특히, 2번은 뭔가 좀 일반적인 상식과 반대되어 보입니다.
닷넷이 진화를 거듭하면서, 처음으로 소개한 개념이 한둘이 아닙니다.
이는 다른 언어에도 많은 영향을 미쳤습니다. (물론 닷넷도 다른 언어에 많은 영향을 받고 있습니다)

혹시 닷넷의 진화를 다 따라 가지 못해서, 닷넷에 영향 받은 다른 언어의 사용자에게 말싸움으로 뚜까 맞고 계신 것은 아니신지.

제가 편협한 정보만 봐와서 그런지 몰라도, 닷넷 => 비닷넷으로 바꾸신 분의 만족도 보다는, 비닷넷 => 닷넷의 만족도가 훨씬 높은 케이스를 많이 봐왔습니다.

닷넷, 특히 C#이 약한 건 대중성 밖에 없다고 생각합니다.
마소는 대중성을 보강하기 위해 몸부림을 치고 있고, 우리는 그 역사적인 과정을 함께 하고 있습니다.

어느 날, 마소의 원대한 계획이 결실을 맺을 때, 그 시간을 함께 한 개발자들이 다 해먹을 수 있는 기회도 오리라 생각됩니다.

그런데, 거기에 닷넷 프레임워크(윈도우) 사용자는 포함되어 있지 않을 확률이 큽니다.

왜냐하면, 갈 수록 변화의 폭이 커지기 때문입니다.
일례로,

코드 가독성 - :mortar_board: 모두의 Q&A - 닷넷데브 (dotnetdev.kr)

위 글의 예제 코드 중 마지막 메서드를 가장 편하게 읽은 사람들은 아이러니하게도 F# 사용자였습니다.
이는 C# 진화의 방향 중 하나가 Functional Programming 임을 여실히 보여주고 있습니다.

예제 코드는 닷넷 8.0을 기준으로 작성되었습니다.
올 11월이면, 닷넷 9가, 내년 11월이면, 닷넷 10 이 나오고, 이러한 버전업 주기는 지켜질 것이 거의 확실합니다.

앞으로 버전 업 두세번만 더 이뤄져도, 닷넷 4.x는 닷넷 1.0 취급을 받을지도 모릅니다.

그 때에도, "당신은 닷넷을 잘 합니까?"라는 질문에 "예"라고 답을 할 수 있으신지요?

6 Likes

이래서 야심한 밤에는 글을 적는게 아닙니다.

저의 잘못으로 인해 모두에게 오해가 가게 글을 적었으므로 이글은 그냥 흑역사로 박제하게 놔두겠습니다.

제 의견은 그냥 다 잘하자 입니다.
신기술만 쫓아가지 말자였는데 너무 함축하고 축약했습니다.

윗분들의 말씀이 맞는 말인데 제가 너무 오해하기 쉽게 글을 적었습니다.
이 글은 여기서 망글로 끝내겠습니다.
-끝-

9 Likes

실수라고 여기실 수 있는 글을 남기셨음에도,
그 비판적인 댓글들을 수용하고 인정하시는 모습에 놀랐습니다.

저 또한 오해에서 댓글을 시작하였으나, @밀수나라 님의 댓글을 보고 스스로 부끄럽다고 생각했고,
스스로 오해의 흑역사로 박제되고자 수정, 삭제하지 않고 남겨두었습니다.

앞으로 포럼에서 자주 뵙고 싶습니다. :slightly_smiling_face:

8 Likes