𝐆𝐄𝐓 𝐈𝐓 by GDG on Campus HUFS  |  
 📰 𝑴𝒐𝒏𝒕𝒉𝒍𝒚 𝑰𝑻 𝑰𝒔𝒔𝒖𝒆 | 이번 달의 이슈를 톺아보자😎  |  
 <최근 코딩테스트 언어 분석, 우리가 알려줄게!>  |  
   |  
 프로그래머스 코테 연습 언어 비율  코딩테스트를 준비하는 개발자라면 어떤 언어를 선택할지 고민이 많으실 텐데요. 프로그래머스에서 제공한 2022년 코딩 테스트 연습 언어 비율을 통해 인기 있는 언어들의 선호도를 살펴보겠습니다. 조사 결과, 파이썬이 35%로 1위를 차지하며 많은 개발자들이 코딩 테스트 준비에 파이썬을 선호하고 있음을 알 수 있습니다. 그 뒤를 이어 Java가 30%로 두 번째, JavaScript가 15%, C++이 10%, 그리고 기타 언어들이 10%를 차지하고 있습니다. 이는 다양한 프로그래밍 언어가 코딩 테스트에서 활발히 사용되고 있음을 보여줍니다. 
 
 국내 주요 기업의 코딩 테스트 언어 현황  한국의 주요 IT 기업들이 코딩 테스트에서 어떤 언어를 요구하는지 알아보는 것도 중요합니다. 예를 들어, 삼성전자는 C, C++(Visual Studio), Java(Eclipse), Python(Pycharm)을 지원하며, 네이버는 C, C++, Java, JavaScript, Python 3, Swift, Kotlin을 요구합니다. 카카오톡은 C++, Java, JavaScript, Python, Kotlin, Swift를, 쿠팡은 C, C++, Java, JavaScript, Kotlin, Python 3, Swift를 코딩 테스트 언어로 지정하고 있습니다. 대부분의 기업들이 최소 3개 이상의 언어를 지원하고 있으며 특히 파이썬과 자바가 주요 언어로 자리잡고 있습니다. 따라서 지원하려는 기업의 채용 공고를 꼼꼼히 확인하고 해당 언어들 중 하나를 선택하는 것이 유리합니다. 
 
 코딩 테스트 언어 선택: 파이썬 vs 자바  코딩 테스트 준비 시 가장 많이 고민되는 선택지 중 하나는 파이썬과 자바 중 어떤 언어를 선택할 것인가입니다. 두 언어 모두 강력한 장점을 가지고 있어 상황에 맞게 선택하는 것이 중요합니다. 파이썬의 장점은 간결한 문법 덕분에 코드 작성이 빠르고 가독성이 높아 알고리즘 구현에 용이하다는 점입니다. 또한, NumPy와 Pandas와 같은 풍부한 라이브러리를 통해 복잡한 문제도 쉽게 해결할 수 있습니다. 파이썬은 초보자도 빠르게 익힐 수 있어 코딩 테스트를 처음 준비하는 분들에게 적합합니다. 반면 자바의 장점은 객체지향 프로그래밍을 기반으로 한 코드의 재사용성과 유지 보수성이 뛰어나 대규모 프로젝트에 적합하다는 점입니다. JVM(Java Virtual Machine)을 통해 다양한 환경에서 일관된 성능을 발휘하며, 강력한 타입 시스템으로 컴파일 시 타입 검사를 통해 오류를 사전에 방지할 수 있습니다. 자바는 구조화된 코드 작성과 안정성을 중시하는 경우에 적합합니다. 결론적으로 파이썬은 빠른 코드 작성과 높은 효율성을 제공하여 시간 제한이 있는 코딩 테스트에 유리하며 자바는 구조화된 코드 작성과 안정성을 중시하는 경우에 적합합니다. 본인의 프로그래밍 경험과 목표에 맞춰 적절한 언어를 선택하는 것이 중요합니다. 
 
 코딩테스트 언어 선택의 추가 고려사항  코딩 테스트 언어를 선택할 때는 몇 가지 추가적인 요소도 고려해 보아야 합니다. 먼저 지원하는 회사의 기술 스택을 확인하는 것이 중요합니다. 지원하려는 회사의 주력 기술과 일치하는 언어를 선택하면 면접 시 유리할 수 있습니다. 또한 자신의 숙련도를 고려해야 합니다. 자신이 가장 익숙하고 자신 있는 언어를 선택하는 것이 문제 해결 속도와 정확성을 높이는 데 도움이 됩니다. 또한 커뮤니티와 자료의 풍부함도 중요한 요소입니다. 문제 해결에 참고할 수 있는 자료와 커뮤니티가 활성화된 언어를 선택하면 학습 과정에서 큰 도움이 됩니다. 파이썬과 자바는 커뮤니티 생태계가 잘 형성되어 있어 학습 자료를 쉽게 찾을 수 있다는 점에서 큰 장점을 가지고 있습니다.  |  
 <GitHub Copilot Free: AI 코드 작성 도구의 새로운 무료 플랜>  |  
   |  
 GitHub Copilot의 : 혁신적인 코드 작성 도구  GitHub Copilot은 2021년 6월에 처음 출시된 이후, 개발자들 사이에서 큰 인기를 끌어온 AI 기반 코드 작성 도구입니다. 이 도구는 OpenAI의 Codex 모델을 기반으로 하여 사용자가 입력한 코드의 맥락을 이해하고 그에 맞는 코드 조각을 실시간으로 제안합니다. 유료 버전은 다양한 프로그래밍 언어와 프레임워크를 지원합니다. 특히, JavaScript, Python, TypeScript, Ruby 등 여러 언어에서 높은 정확도로 코드 제안을 할 수 있어 복잡한 프로젝트에서도 개발자들이 효율적으로 작업할 수 있도록 돕습니다. 유료 버전의 가장 큰 장점은 무제한의 코드 제안과 더 정교한 기능입니다. 사용자는 코드 작성 중에 발생할 수 있는 다양한 문제를 AI가 실시간으로 해결해 주며 코드의 품질을 높이는 데 기여합니다. 또한 GitHub Copilot은 코드 주석을 이해하고 그에 맞는 코드를 생성할 수 있는 능력을 갖추고 있어 개발자들이 더 직관적으로 작업할 수 있도록 지원합니다. 이러한 기능들은 특히 대규모 프로젝트나 팀 작업에서 큰 도움이 됩니다. 
 
 GitHub Copilot Free: 무료 플랜의 도입  2024년 12월 18일, GitHub은 새로운 무료 플랜인 "GitHub Copilot Free"를 발표했습니다. 이 무료 플랜은 더 많은 개발자들이 AI 기반의 코드 작성 도구를 경험할 수 있도록 하여 개발 환경의 접근성을 높이는 데 중점을 두고 있습니다. 무료 플랜은 Visual Studio Code와 JetBrains IDE에서 사용할 수 있으며 기본적인 코드 제안과 자동 완성을 제공합니다. 이는 특히 예산이 제한된 개인 개발자나 소규모 스타트업에게 큰 도움이 될 것입니다. GitHub Copilot Free는 하루에 2,000회의 코드 제안과 50회의 코드 완성으로 제한되어 있지만 기본적인 코드 작성 지원을 통해 개발자들이 더 빠르게 작업할 수 있도록 돕습니다. 이 도구는 사용자가 작성하는 코드의 맥락을 이해하고 그에 맞는 제안을 제공하여 개발자들이 보다 효율적으로 문제를 해결할 수 있도록 지원합니다. 또한 무료 플랜을 통해 사용자는 AI의 도움을 받아 코드 품질을 높이고 새로운 프로그래밍 언어를 배우는 데에도 유용하게 활용할 수 있습니다. 
 
 무료 플랜의 기능과 한계  GitHub Copilot Free는 기본적인 기능을 제공하지만 유료 버전과 비교할 때 몇 가지 제한이 있습니다. 예를 들어 유료 버전은 더 많은 코드 제안과 다양한 기능을 제공하여 복잡한 코드 작성 시 더욱 유용합니다. 또한 유료 사용자는 AI의 학습 데이터를 통해 더 개인화된 코드 제안을 받을 수 있는 반면 무료 플랜은 이러한 개인화된 경험이 제한적입니다. 그러나 무료 플랜은 개발자들이 AI 기술을 경험하고 이를 통해 코드 작성의 효율성을 높일 수 있는 기회를 제공합니다. 결론적으로 GitHub Copilot Free의 출시는 개발자들에게 AI 기반의 코드 작성 도구를 무료로 제공하여 더 많은 사람들이 이 기술을 경험할 수 있도록 하는 긍정적인 변화입니다. 기존의 유료 플랜과 비교할 때 무료 플랜은 기능이 제한적이지만 기본적인 코드 작성 지원을 통해 개발자들의 생산성을 높이는 데 기여할 것입니다. 이러한 변화는 개발자 커뮤니티에 긍정적인 영향을 미칠 것으로 기대되며 앞으로의 발전이 더욱 기대됩니다.  |  
 <개발자를 위한 Chrome의 2024년 요약> |  
 여러분들은 브라우저로 Chrome을 사용하시나요? 실제로 2023년 12월 기준 트래픽 분석 사이트 스탯카운터에 따르면 국내 웹브라우저 점유율은 Chrome이 54.3%로 압도적인 1위를 기록하였습니다. 그정도로 많은 분들이 Chrome을 사용하는데요. 이번에 Chrome에서 2024년 어떤 혁신적인 변화가 있었는지 같이 한번 살펴봅시다. 
 
 Gemini를 활용한 Chrome 내장 AI기존의 웹개발에서 AI 관련 기능들을 활용하기 위해 서버 측에 요청하여 해당 기능들을 가져오는 경우가 많았는데요. Chrome 내장 AI의 경우, 클라이언트 측에서 서버에 요청하는 것이 아닌 직접 브라우저 내부 API 호출을 통해 특정 기능에 가볍게 사용 가능합니다. 
 
 Chrome DevTools의 AI 도입Chrome에서 사이트를 개발할 경우, 무언가 상호작용이 나타날 때 성능을 체크하기 위해 개발자 도구(f12)를 사용해 성능을 확인하는데요. 아직 영어 버전으로만 사용 가능하지만, 개발자 도구 -> 설정 아이콘 -> AI innovations 탭에서 AI관련 설정을 진행하면 Console 메시지의 설명을 확인하거나 Elements의 태그들을 선택하여 AI에게 질문할 수 있습니다.  |  
 브라우저 자체 성능 개선 브라우저 내부의 AI API 작업을 보완하고 자체 AI 모델을 웹에 가져와 빠르게 실행하기 위해 WebGPU와 Wasm을 개선하였습니다. 
 
 WebAssembly(Wasm)와 WebGPU 여기서 Wasm은 웹에서 고성능 애플리케이션을 사용할 수 있게 해요. 그래서 Chrome은 2025년 Wasm에 Memory64를 도입하여 메모리의 용량을 키운다고 합니다. 그래서 더 큰 AI 모델을 메모리에서 처리할 수 있도록 지원한다고 해요. 또한 WebGPU에서는 AI활용을 위해 행렬 연산 성능 개선이 필요합니다! 그래서 빠른 연산을 위해 기존 32비트 부동 소수점 값(f32) 뿐만 아니라 16비트 부동 소수점 값(f16)도 지원합니다. 
 
 브라우저 내 UI(사용자 인터페이스) 기능 추가 Chrome에서는 브라우저 내부 AI 뿐만 아니라 사용자 입장에서 원활한 사이트 사용을 위해 UI의 기능들을 추가했어요! 한번 살펴보겠습니다. 
 
 View Transition API새롭게 추가된 크로스 도큐먼트 뷰 전환(cross-document view transitions) 기능으로 여러 페이지 간에 매끄럽고 유연한 내비게이션을 구현할 수 있습니다. 
 
 Speculation Rules API과거 <link rel="prerender"...>문법으로 처음 사용하는 사용자에게 빠르게 사이트를 보여줄 수 있었지만, 지금은 중단될 예정이라고 해요! 그리고 다음과 같은 코드로 사전 렌더링을 실시할 수 있습니다. 하지만 현재 크롬과 엣지 브라우저에서만 지원한다는 점에 주의해주세요!  |  
   |  
 CSS 팝오버와 앵커 포지셔닝 이제 팝오버로 툴팁, 메뉴 및 기타 오버레이를 만들고 CSS 앵커 포지셔닝 API를 사용하여 트리거 요소에 시각적으로 연결할 수 있습니다. 그래서 사용자는 더욱 안정적이고 동적인 웹 경험을 누릴 수 있으며, 개발자는 복잡한 자바스크립트 위치 계산이나 z-index 관리에서 자유로워질 수 있다고 해요. 
 
 Interaction to Next Paint(INP) 지표 도입 INP는 사용자가 페이지를 방문하는 전체 기간에 발생하는 모든 클릭, 탭, 키보드 상호작용의 지연 시간을 관찰하여 사용자 상호작용에 대한 페이지의 전반적인 응답성을 평가하는 측정항목입니다. 그래서 개발자는 더욱 다양한 상황에서 사이트의 성능들을 개선하기 쉬워지고, 웹 전반에 걸쳐 더 빠르고 즐거운 사용자 경험으로 이어지고 있습니다. 
 
 Autofill Autofill은 브라우저가 사용자의 저장된 정보들을 활용하여 양식을 자동으로 채워주는 기능으로, 이를 통해 사용자에게 양식을 끝까지 작성하도록 유도해요. 실제로 Autofill을 통해 전자상거래 결제나 온라인 양식의 이탈율을 50% 이상 줄이는 효과를 보여줍니다. 
 
 웹의 미래 이번에는 2024년 Chrome에서 어떤 변화가 일어났는지 살펴보았아요! 웹개발을 진행하는 개발자라면 자신이 사용하는 개발 스택의 공식 문서 외에 Chrome for Developers 공식 문서를 참고해보는 것은 어떨까요? 생각하지 못한 유용한 기능들을 활용할 수 있다고 생각합니다!  |  
   |  
  OpenAI에서 12일에 걸친 연말 행사인 '12 Days of OpenAI'가 12월 20일에 마무리 지었습니다. 이 행사에서 가장 주목을 많이 받았던 부분이 신규 모델인 o3의 공개였는데요. 과연 기존의 모델인 o1과 비교하여 성능적으로 어떤 부분들이 개선하였는지 살펴봅시다. (참고로 o2가 아닌 o3로 출시한 이유는 영국의 이동 통신사인 o2와 이름이 겹쳐서 바꾸었다고 해요!) 
 
 o3의 성과들 - 소프트웨어 엔지니어링과 코딩 실제 깃허브의 이슈들을 AI가 얼마나 잘 해결하는지 평가해 주는 SWE-bench Verified에서는 o3를 71.7%의 점수를 주었다고 해요. 이는 48.9%의 점수를 받은 o1보다 확실히 높게 받았다고 볼 수 있습니다. 또한 Codeforces에서 o3는 2,727점으로, o1의 1,891점 보다 더 높은 모습을 보이고, 전 세계적으로 상위 1%에 속한다고 해요. 
 
 o3의 성과들 - 수학과 과학 고등 수학(AIME 2024), 박사급 난이도 과학 질문(GPQA Diamond)에서도 o3는 두각을 나타내었습니다. 또한 Frontier Math 분야에서는 기존 최고 모델들이 2% 이하의 성공률을 보이던 난제를 25.2%로 끌어올리며, 실제 수일 이상의 시간이 있어야 하는 문제를 단시간에 해결하는 새로운 지평을 열었어요. 
 
 o3의 성과들 - ARC-AGI ARC-AGI 벤치마크는 데이터를 많이 투입하더라도 단순히 기억하기 어려운 문제들로 구성되어 있습니다. 이 벤치마크를 해결하려면 매우 적은 양의 데이터로 새로운 작업을 학습할 수 있어야 해요. 즉, ARC-AGI 벤치마크는 AI의 추상적 추론 능력을 테스트하기 위해 만들어졌습니다. 이번 o3 모델의 경우, 최대 87.5%까지 해결 가능하며, 이는 과거 GPT 4o의 5%, o1 모델의 32%보다 압도적인 성장을 보입니다. 
 
 o3가 시사하는 점 이렇게 해서 o3 모델이 얼마나 성능적으로 좋은지 살펴보았어요. OpenAI의 샘 알트먼 CEO는 "우리는 이것을 다음 단계 AI의 시작(begining of next AI)으로 보며, 이 모델을 사용해 많은 추론이 필요한 점점 더 복잡한 작업을 수행할 수 있다"라고 말했습니다.  o3를 통해 우리는 이제 AI를 단순한 도구가 아닌 능력을 높여주는 파트너로서 영리하게 사용해야겠습니다.  |  
   |  
  UI/UX 디자인은 사용자가 서비스를 원활하고 자주 사용할 수 있도록 하는데 가장 결정적인 역할을 하는 요소죠. 성공적인 어플은 이를 통해 사용자가 앱에 머무는 시간을 극대화하는데요, 오늘은 사용자들에게 “매력적이게”, 자칫하면 “중독적으로” 다가갈 수 있는 어플들의 특징이 무엇인지 알아보려고 합니다! 
 
 무한스크롤 (Infinite Scrolling)  다들 하루에 릴스, 유튜브 숏츠 얼마나 보시나요? 한 두개만 봐야지라고 결심하지만 어느순간 우리의 손가락은 정신을 잃고 한 두시간도 넘게 스크롤 운동을 하고 있죠. 이러한 디자인 패턴을 ‘무한스크롤’이라고 하는데요, 이는 사용자들이 심리적으로 호기심과 기대감을 자극하는 경험을 생성해냅니다. 사용자는 끊임없이 새로운 콘텐츠가 흐르는 것에 푹 빠지게 되어, 스스로 자제하기 어려울 정도로 정보를 접하고 이는 곧 어플 내에서 보내는 시간을 폭발적으로 증가시킵니다. 
 
 개인화 (Personalization)  넷플릭스가 이 디자인패턴을 가장 잘 활용하는 서비스 중 하나죠. 같은 콘텐츠여도 다른 포스터를 노출시켜 사용자들의 클릭을 유도하기도 하구요, 기존의 시청 데이터를 바탕으로 각자에게 맞춤형 콘텐츠를 제안하고 있죠. 개인화는 사용자와의 연결 및 유지율을 높이는 강력한 기법으로 떠오르고 있어요. 이는 서비스가 사용자의 취향을 눈치채고 계속해서 이에 맞는 콘텐츠를 제공할 때, 사용자는 감정적으로 연결되는 느낌을 받는다고 해요. 더 나아가 사용자는 자신이 이해받고 존중받고 있다고 느끼면서, 잠시 서비스를 떠난다고 하더라도 다시 돌아올 가능성을 키웁니다. 
 
 게임화 (Gamification)  악명높은 광기의 새, 듀오를 아시나요? 듀오는 외국어 학습 서비스인 듀오링고의 마스코트 새인데요, 귀여움을 가득 겸비하여 사용자로 하여금 어플을 쓰지 않을 수 없게 만든답니다. 게임화는 평범한 상호작용을 보상이 있는 경험으로 변형시키는 정교한 전략이에요. 사용자가 1-2일 정도 외국어 학습을 하지 않는다? 그러면 듀오는 핸드폰의 위젯에서 서럽게 울고 있을꺼에요. 다시 어플에 들어가 학습을 하게 되면 우리의 듀오는 활짝 웃으면서 사용자를 반기죠. 이처럼 포인트, 레벨, 즉각적인 긍정적 강화와 같은 게임 요소를 서비스에 녹여낸 것이죠. 사용자에게 즉각적인 시각적 및 청각적 보상을 함으로써 도파민 기반의 피드백 루프가 만들어지며, 이는 지속적인 참여를 유도합니다. 이 과정을 거치면서 서비스가 어느 순간 우리의 일상 중 일부분으로 들어오는 것이죠. 
 
 성공적인 앱은 사용자 경험을 단순한 기능적 서비스가 아니라, 직관적이고 보람있으며 즐거운 경험으로 변형시키죠. 심리적, 기술적, 공감적인 요소를 결합시켜 사용자가 앱을 찾고 사랑하게 만드는 경험을 창출하는 것이 핵심입니다. 좀 더 많은 디자인 패턴을 알고 싶다면 아래의 원문보기 버튼을 클릭해주세요!  |  
 <감각의 경계를 허무는 AI와 인간의 공감각 실험> |  
   |  
 우리는 색깔과 맛을 연결한다? 여러분은 혹시 분홍색을 보면 단맛을 떠올리거나, 초록색을 보면 신맛이 느껴질 것 같다고 생각한 적이 있나요? 과학자들은 오래전부터 우리의 뇌가 서로 다른 감각을 자연스럽게 연결한다는 사실을 밝혀냈습니다. 예를 들어, 분홍색은 단맛, 초록색은 신맛, 흰색은 짠맛, 갈색은 쓴맛과 연결되는 경향이 있죠. 이런 현상을 '교차 양식적 상관성(cross-modal correspondences)'이라고 부릅니다.  놀랍게도 이런 연관성은 단순한 추측이 아니라 다양한 실험에서 일관되게 증명되었습니다. 예를 들어, 일본의 연구에서는 분홍색 포장의 초콜릿이 검정색 포장의 초콜릿보다 더 달콤하게 느껴진다는 결과가 나왔습니다. 이처럼 우리는 눈으로도 맛을 '먹고' 있었던 겁니다. 
 
 AI도 이런 감각을 이해할까? 그렇다면 인간만 이런 감각 연결을 하는 걸까요? 최근 연구에 따르면, 생성형 AI 역시 인간의 감각적 연관성을 반영할 수 있다는 흥미로운 결과가 나왔습니다. 연구팀은 ChatGPT에 "둥근 모양과 단맛은 얼마나 연관이 있나요?" 같은 질문을 던졌고, AI는 인간 참가자들과 매우 유사한 답변을 내놓았습니다.  특히, 최신 버전인 ChatGPT-4는 이전 버전보다 더 정확히 인간의 감각적 연관성을 반영했다고 합니다. 이는 AI가 더 방대한 데이터로 학습했기 때문인데요. 이처럼 AI는 인간 감각의 경향성을 학습하고 이를 활용할 가능성을 보여줍니다. 
 
 마케팅과 AI의 만남: 감각을 해킹하다 이 연구는 AI가 단순히 인간 감각을 흉내 내는 것을 넘어 새로운 마케팅 전략을 만드는 데 활용될 수 있음을 시사합니다. 제품의 색상, 모양, 포장 디자인은 소비자 경험에 큰 영향을 미칩니다. 예를 들어, 분홍색 포장의 초콜릿이 더 달게 느껴진다면, 마케터들은 이 데이터를 활용해 더 매력적인 제품 디자인을 만들 수 있습니다. AI는 또한 우리가 아직 발견하지 못한 새로운 감각적 연관성을 제안할 수도 있습니다. 물론 AI가 제안하는 모든 결과를 맹신할 수는 없겠지만, 이는 인간의 창의력을 보완하는 훌륭한 도구가 될 것입니다. 
 
 AI는 단순한 기술 도구를 넘어 인간의 감각과 상호작용하며 새로운 가능성을 열어가고 있습니다. 이는 단순히 인간의 경험을 흉내 내는 것에서 그치지 않고, 더 창의적이고 독창적인 방법으로 우리의 삶을 풍요롭게 만들 수 있는 가능성을 보여줍니다.  |  
  |