Offcanvas
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
Offcanvas
1111Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
TOPIC

개발자

데이터가 서말이라도 '쉬워야' 꿴다…전천후 멀티툴 '파이썬'이 뜬다

파이썬은 R을 넘어서지는 못했을 수 있다. 하지만 사용 편의성과 이에 힘입은 인기 덕에 머지않아 데이터 과학 분야의 주류가 될 조짐이 보인다.   넷플릭스의 제품 혁신 및 개인화 담당 본부장 크리스틴 도이그는 “(넷플릭스에 데이터 과학 팀이 생긴) 초기에 회사에는 한 종류의 데이터 과학자들만 있었다. 그러나 이제 회사의 모든 영역에 침투하고 있다”라고 말했다.  이는 넷플릭스에만 해당하는 일이 아니다. 모든 업종에 걸친 기업들이 맞춤형 서비스를 만들고, 매력적인 사용자 경험을 제공하며 가격을 최적화하는 등의 목적을 달성하려 데이터 과학을 도입했다. 이 과정에서 데이터 과학의 활용은 프로덕트 매니지먼트, 마케팅 및 다른 영역까지 확대됐다.  데이터 과학의 이러한 확산은 데이터 분석에 사용하는 언어가 R에서 파이썬으로 점차 바뀌고 있는 이유이기도 하다. 다변화된 용도에 따라 기업이 다양한 인재를 모집하게 됐고, 파이썬의 대중성은 낮은 진입 장벽이라는 큰 이점을 제공한다.  R 대신 파이썬? 과거에는 데이터 과학을 하려면 R이 필수였다. R 프로젝트 웹사이트에 나와 있는 대로 R은 “데이터 조작, 추산 및 시각화를 위한 통합 소프트웨어 스위트”다. 즉 프로그래밍 언어가 아니라 이를 포함하는 소프트웨어 패키지다. R은 통계 및 수치 분석에 특화된 본질에 충실해 왔고, 여전히 데이터 과학을 하는 통계학자들 사이에서 유용하게 쓰이고 있다. 그러나 최근 데이터 과학의 활용 영역이 확장됨에 따라 이러한 강점은 한계로 작용하고 있다. 파이썬 기반 데이터 과학 플랫폼 ‘아나콘다(Anaconda)’의 제품 담당 부매니저 시탈 칼버기는 “물론 데이터 과학자들이 일반 프로그래머보다 더 통계에 치중된 업무를 하는 것은 사실이다”라며 “제품의 성과를 표시 및 예측하고, A/B 테스팅 등의 디자인 작업을 지원하며 계산 작업을 최적화하는 복잡한 통계 관련 알고리즘을 개발하는 것이 주요 업무다”라고 말했다. 하지만 요즘 데이터 과학자들이 프로그래...

파이썬 R언어 데이터과학 2022.06.02

개발·전략 모두 할 수 있다면··· ‘코딩 리더’에 주목할 이유

개발자의 정년은 짧아서 관리직 전환만이 유일한 전망이며, 이러한 전환은 현업으로 돌아갈 수 없는 외길이라는 인식이 많다. 하지만 이러한 인식이 바뀌고 있다.  소프트웨어 업계의 많은 리더가 개발자 출신이다. 개발자는 기술에 능숙해지고 자신감을 얻으면서 경영진으로 커리어를 확장하기를 원하지만 한편으론 성취감을 주는 현업 생활을 포기하고 싶어하지 않는다.   그렇다면 ‘코딩 리더’라는 커리어를 살펴보자. 이 새로운 리더 유형은 ‘전략’ 그리고 ‘기술 실무’를 모두 담당하며 비즈니스와 기술 부문을 망라한다. 최신 코딩 기술을 놓치지 않는 이 리더는 프로젝트 운영 역량을 갖추고 있고, 업계 발전 상황을 훤히 꿰고 있으며, 기업에 변화가 필요한(혹은 가장 도움이 될 수 있는) 부분을 파악할 수 있다.  그리고 이 트렌드는 소프트웨어 업계의 사소한 문제 중 하나로, 개발자 사이에서 자신이 형편없는 관리자 밑에서 일한다고 느끼는 문제를 해결하는 데 도움을 줄 수도 있다.  오해 : 프로그래머는 좋은 리더가 될 수 없다 코드 개발자의 일상적인 업무는 상세하고 한 줄 한 줄씩 이뤄지는 경우가 많으며, 숲보다는 나무를 보는 경향이 있다. 엔지니어에게 ‘위험’은 (무언가를) 구축하는 데 사로잡혀 자신이 하는 일의 비즈니스적 가치를 놓치는 것이다. 이를 일시적인 기술적 과제(다리 건설)로 인해 더 높은 목적(점령군 저항)을 무색하게 만드는 ‘콰이강의 다리(Bridge on the River Kwai) 실수’라고 생각한다.  하지만 개발자의 역할이 커지면서 (개발자의) 비전은 개별적인 요소(기술)를 파악하는 것뿐만 아니라 더 많은 시스템과 프로세스까지 포괄한다. 숙련된 개발자가 특히, 개발 중인 특정 시스템에 관한 지식이 광범위해지면 고부가가치 영역에 뛰어들거나 변화를 지원하거나 높은 수준의 관점을 유지할 수 있다. 아울러 비즈니스 감각까지 더하면 금상첨화다.  여기서 코드 개발자에게 필요한 사고방식의 변화는 우선순위...

코딩 리더 개발자 IT 리더십 2022.06.02

타입스크립트 4.7 출시…“노드.js 16용 ESM 지원”

‘타입스크립트 4.7(TypeScript 4.7)’이 프로덕션 릴리즈로 출시됐다. 마이크로소프트가 자바스크립트에 정적 타입 문법을 추가해 만든 이 오픈소스 프로그래밍 언어의 최신 버전은 노드.js 16(Node.js 16)에 ECMA스크립트(ESM) 모듈을 지원하고, 다양한 코딩 기능을 개선했다.    ‘노드.js용 ESM 지원’은 타입스크립트 릴리즈에 뒤늦게 추가됐다. 작년 말 타입스크립트 4.5에서 계획돼 있었으나 이번 릴리즈로 연기돼, 지난 4월 8일 공개된 타입스크립트 4.7 베타에서 노드.js 12용 ESM 지원이 포함됐다. 하지만 노드.js 12가 더 이상 지원되지 않아 타입스크립트 개발팀은 노드.js 16에서 스테이블 버전을 시작했다. 이는 패턴 트레일러 등의 ECMA스크립트 모듈 기능을 제공할 뿐만 아니라 타입스크립트를 최상위 await를 지원하는 상위 타깃으로 기본 설정한다.  노드.js용 ECMA스크립트 모듈 지원 기능의 나이틀리 버전은 타입스크립트 4.5 릴리즈 기간 동안 재출시됐다. 이 모듈을 사용하면 패키징을 통해 코드를 재사용할 수 있다. 개발팀에 따르면 노드.js가 다른 모듈 시스템인 커먼JS(CommonJS)에 구축된 탓에 이를 지원하기가 어려웠다. 타입스크립트 4.7은 노드16(node16)과 노드넥스트(nodenext)라는 2가지 모듈 설정으로 이 기능을 추가한다. 타입스크립트 4.7은 누겟(NuGet) 또는 NPM(npm install -D typescript)을 통해 다운로드할 수 있다. 이 밖에 타입스크립트 4.7의 다른 기능은 아래와 같다.    인덱싱된 키가 리터럴 유형 및 고유 기호일 때, 괄호로 묶인 요소 액세스의 제어 흐름 분석은 이제 요소 액세스 유형을 좁힌다.  타입스크립트 4.7에는 모듈 탐지를 제어하기 위한 moduleDetection 옵션이 적용됐다.  모듈 지정자의 룩업을 사용자 정의하는 moduleSuffixes 옵션이...

마이크로소프트 타입스크립트 자바스크립트 2022.05.31

"인간 언어 영역에서 앱 만들기" MS '파워 페이지'가 꿈꾸는 미래

마이크로소프트의 파워 플랫폼(Power Platform)을 구성하는 로우코드 및 노코드 툴이 마이크로소프트는 물론 전 세계 기업에 점점 더 중요해지고 있다. 이런 변화는 팬데믹과 그에 따른 업무 패턴의 변화에 의해 강제된 갑작스러운 디지털 전환 때문에 더 주목받고 있다. 개발자가 부족해지면서 기업은 이른바 비즈니스 앱 공백 사태에 놓였고, 낡은 비즈니스 프로세스를 보완하는 대안으로 로우코드와 노코드에 의존할 수밖에 없게 됐다.   사실 로우코드 툴이 현대 기업 툴킷에서 핵심 요소가 된 것은 그리 놀라운 것이 아니다. 일단 우리는 액세스(Access), 엑셀(Excel) 같은 마이크로소프트의 이용자 중심 툴을 폭넓게 사용하고 있다. 단순한 수식 언어에 기반한 데스크톱 및 웹 애플리케이션이다. 다른 한편으로 마이크로소프트는 양식 기반의 이용자 인터페이스를 비즈니스 소프트웨어로 구축하는 일을 단순화하는 고전적인 비주얼 베이직(Visual Basic)도 갖고 있다. 파워 플랫폼(Power Platform)은 이처럼 기존 마이크로소프트의 프로세스 및 사용자 인터페이스 툴이 뒤섞인 차세대 비즈니스 소프트웨어 개발 툴이라고 볼 수 있다. 마이크로소프트는 파워 플랫폼에 지난 수십 년의 경험을 활용했고, 이번 2022년 릴리즈는 그 경험이 녹아든 5번째 중요 업데이트이다. 필자는 ‘2022 빌드’ 행사에 앞서 비즈니스 앱 및 플랫폼의 기업 부사장이자 파워 플랫폼 책임자인 찰스 래마나를 인터뷰했다. 새 릴리즈가 개발자에게 무엇을 제공하는 지 감을 잡기 위해서다. 마이크로소프트는 그동안 전체 소프트웨어 개발 수명주기를 지원하는 쪽으로 로우-코드 툴을 확장해왔고, 깃허브 등의 리포지터리를 지원해왔고, 파워 FX(Power FX) 함수 프로그래밍 언어를 추가했고, 나아가 비주얼 스튜디오 코드 등의 툴에 대한 라운드-트립 액세스를 제공했다. 새 릴리즈에는 많은 것이 있다. 예를 들어 파워 버추얼 에이전트(Power Virtual Agents) 대화형 로봇 툴이 대대적...

파워페이지 PowerPages 2022.05.30

“IT 자격증 가치 하락세, 비인증 역량은 14년 만에 최대치” 美 푸트 파트너스

2022년 1분기 ‘비인증 기술 역량(non-certified tech skills)’을 가진 인력의 연봉 대비 프리미엄이 기록적으로 증가한 반면 IT 분야 자격증을 보유한 인력의 연봉 대비 프리미엄은 하락했다.  숙련된 IT 전문가를 채용하거나 유지하려는 CIO라면 연봉 예산을 넉넉하게 책정해야 할 전망이다. 푸트 파트너스(Foote Partners)의 최신 ‘IT 역량 및 자격증 임금 지수(IT Skills and Certifications Pay Index)’에 따르면 2022년 1분기 비인증 기술 역량의 연봉 대비 프리미엄이 14년 만에 가장 큰 폭으로 올랐다.  반면, 3년여 전부터 시작된 하락세를 겪고 있는 IT 분야 자격증의 연봉 대비 프리미엄은 2020년 말 이후 분기별 최대 하락폭을 기록했다(예산이 빠듯한 CIO에게는 희소식일 수 있다).   비인증 역량의 평균 연봉 대비 프리미엄은 이번 분기 1.6% 상승하여 기본급의 약 9.35~9.5%로 인상됐다. 미화 10만 달러 연봉의 경우 이전 분기 대비 약 150달러가 증가한 셈이다. 평균 프리미엄이 2년 전 수준으로 회복됐음을 의미한다. IT 분야 자격증의 연봉 대비 프리미엄은 이번 분기 1.2%(지난 3년 동안 11%) 감소하여, 기본급의 약 6.5%를 기록했다.   푸트 파트너스는 연봉 대비 프리미엄이 기술 역량에 따라 크게 달랐다고 전했다. 2022년 1분기에는 ‘관리, 방법론, 프로세스’를 중심으로 한 기술 역량이 가장 많은 프리미엄을 받았다. 이를테면 AI옵스, 애저 키 볼트(Azure Key Vault), 빅데이터 애널리틱스, 복잡한 이벤트 처리/이벤트 상관관계, 딥러닝, 데브섹옵스, 구글 텐서플로우, ML옵스, 처방 애널리틱스, 파이토치, 확장형 애자일 프레워크(SAFe), 보안 아키텍처 및 모델, 사이트 신뢰성 엔지니어링(SRE) 등의 기술 역량 수요가 높았다.  많은 프리미엄을 받은 또 다른 기술 역량에는 ▲스마트 계약, ▲블...

IT 자격증 비인증 역량 푸트 파트너스 2022.05.30

"쿠버네티스와 깃옵스는 빵과 버터" 구글이 깃옵스를 간소화하는 방법

구글이 컨테이너화된 애플리케이션을 대규모로, 지속적으로 구성 및 관리하는 조직을 지원하는 일련의 오픈소스 툴을 구축하고 나서면서 부상 중인 깃옵스(Gitops)에 본격적으로 뛰어들고 있다.   컨테이너 오케스트레이터인 쿠버네티스(2014년 구글에서 개발)가 클라우드 네이티브 조직의 핵심 계층이 됨에 따라 기업은 방대한 컨테이너를 관리하고 원하는 상태와 실제 상태를 조정하는 전문적 역량을 갖춰야 하는데, 그러려면 전통적으로 깊은 도메인 지식이 필요하다. 헬름(Helm) 차트를 작성하고 YAML 언어로 코딩하는 역량도 포함된다.   구글 특별 엔지니어이며 쿠버네티스의 최초 설계자 중 한 명인 브라이언 그랜트는 지난 주 블로그 글에서 “모든 규모의 기업이 쿠버네티스를 활용해 인프라에서 애플리케이션을 구축, 배포, 운영하는 방법을 현대화한다. 이들 기업에서 사용하는 개발 및 프로덕션 클러스터의 수가 증가함에 따라 점점 더 커지는 환경 전반에 일관적인 구성 및 보안 정책을 만들어 적용하기가 어려워지고 있다”라고 썼다.   깃옵스 : 깃으로 시작하는 데브옵스 깃옵스는 이와 같은 문제에 대처하기 위해 기존 데브옵스에 대한 확장으로 부상했다. 인프라를 코드로 취급함으로써 애플리케이션과 그 기반 인프라를 버전 제어 시스템(대체로 깃)에 저장할 수 있으며, 그러면 깃은 개발 팀과 운영 팀 모두를 위한 단일 진실 공급원이 된다.   이후 소프트웨어 에이전트(대부분의 경우 오픈소스 아르고(Argo) 또는 플럭스(Flux) 지속적 제공 툴)가 애플리케이션의 실제 상태가 구성 파일에 선언된 원하는 상태와 일치하는지를 확인한다. 현재 위브웍스(Weaveworks), 코드프레시(Codefresh)와 같은 업체는 기업의 도입을 용이하게 하기 위해 호스팅되는 깃옵스 플랫폼을 구축하는 방안을 모색하고 있다.   그랜트는 Infoworld와의 인터뷰에서 “자세히 보면 깃옵스는 퍼펫(Puppet)과 비슷하다. 선언적 접근 방법이며 동기화를 유지하는 ...

깃옵스 오케스트레이터 컨테이너 2022.05.27

"안드로이드ㆍiOS UI를 한번에" MS, '닷넷 마우이' 공식 출시

마이크로소프트가 닷넷 개발자에게 사용자 인터페이스 구축을 위한 크로스 플랫폼 스택을 제공하는 ‘닷넷 마우이(.NET MAUI; Multi-platform App UI)’ 프레임워크를 공식 출시했다.   닷넷 마우이 프레임워크는 윈도우, iOS, 안드로이드, 맥OS를 대상으로 한다. 개발자는 단일 코드베이스에서 모든 플랫폼에 대해 C# 및 XAML로 UI를 만들 수 있다. 이번 출시는 닷넷 코어(.NET Core)와 모노/자마린(Mono/Xamarin)을 하나의 기본 클래스 라이브러리와 도구 체인(SDK)으로 가져와 닷넷 플랫폼을 통합하려는 여정의 일환이라고 업체는 설명했다. 닷넷 마우이의 GA 릴리즈는 14개의 프리뷰와 3개의 릴리즈 캔디데이트에 이어 지난 5월 23일(현지 시각) 공개됐다. 닷넷 마우이 시작 지침은 여기에서 확인할 수 있다.  업체에 따르면 닷넷 마우이의 주요 목표는 각 플랫폼에서 최적의 앱 경험을 제공하는 동시에, 개발자가 그래픽과 풍부한 스타일을 통해 일관된 브랜드 경험을 만들 수 있도록 하는 것이다. 개발자는 C#과 XAML을 사용해 40개 이상의 컨트롤, 레이아웃, 페이지로 구성된 도구 키트에서 앱을 빌드할 수 있다. 아울러 닷넷 마우이 C#으로 클라이언트 웹 앱을 구축하기 위한 블레이저(Blazor) 프레임워크와 통합돼 개발자는 기본 모바일 및 데스크톱 앱에서 기존 블레이저 웹 UI 구성요소를 재사용할 수도 있다.  닷넷 마우이는 18개월 릴리즈 일정에 따라 지원될 예정이며, 닷넷과 마찬가지로 월 단위로 서비스된다. 마이크로소프트는 마우이의 등장이 닷넷 개발자를 위한 데스크톱 및 모바일 경험을 구축하는 첫 단계일 뿐이라고 언급했다. 다음 단계는 닷넷 프레임워크 및 이전 프로젝트 시스템에서 닷넷 6와 SDK 스타일 프로젝트로 플러그인, 라이브러리, 서비스를 가져오는 것 등이라고 회사 측은 설명했다. ciokr@idg.co.kr

마이크로소프트 닷넷 닷넷 마우이 2022.05.27

"코드 맥락에 따라 함수 자동 제안"…‘깃허브 코파일럿’, 올여름 나온다

마이크로소프트가 5월 24일(현지 시각) 연례 빌드 개발자 컨퍼런스에서 코드 편집기에 입력한 내용에 따라 코드 또는 함수를 제안하는 AI 기반 코딩 어시스턴트 ‘깃허브 코파일럿(GitHub Copilot)’이 올여름 출시될 예정이라고 발표했다. 아울러 클라우드 기반 데브 박스(Dev Box) 워크스페이스, 파워 페이지(Power Pages) 로우코드 웹 개발, 애저 컨테이너 앱(Azure Container Apps) 등도 공개됐다.    연례 빌드 컨퍼런스에서 마이크로소프트는 깃허브 코파일럿이 올여름 GA 버전으로 전환된다는 소식을 알렸다. 깃허브 코파일럿은 비주얼 스튜디오 코드(Visual Studio Code), 네오빔(Neovim), 젯브레인 IDE(JetBrains IDEs)의 확장 프로그램으로 사용할 수 있다. 마이크로소프트는 깃허브의 모회사다.  깃허브 코파일럿은 공개적으로 사용 가능한 수십억 줄의 소스코드와 자연어를 학습한 AI 시스템 ‘오픈AI 코덱스(OpenAI Codex)’를 기반으로 한다. 반면 작업 중인 코드의 맥락을 활용하는 이 도구와 관련해 자유 소프트웨어 재단(Free Software Foundation)은 무료 라이선스 소스코드 사용의 합법성과 윤리에 의문을 제기해왔다.    깃허브 코파일럿 외에 빌드 개발자 컨퍼런스에서 발표된 다른 제품과 서비스는 다음과 같다.    ‘마이크로소프트 데브 박스(Microsoft Dev Box)’는 모든 규모의 하이브리드 팀을 지원하기 위해 안전하고, 즉시 코딩할 수 있는 워크스테이션을 제공하는 클라우드 서비스다. 팀은 특정 프로젝트 및 작업을 위해 데브 박스를 미리 구성할 수 있다. IT 부서는 윈도우 365(Windows 365)를 통해 통합 관리, 보안, 컴플라이언스를 유지관리할 수 있다. 현재 비공개 미리보기에 등록해 사용해볼 수 있다.  안전한 로우코드 웹페이지를 구축하는 도구인 ‘마이...

마이크로소프트 깃허브 깃허브 코파일럿 2022.05.26

액티비전 자회사 레이븐 소프트웨어, 노조 결성 투표 통과돼

월요일(현지 시간), 액티비전 블리자드 자회사인 액티비전의 레이븐 소프트웨어 디비전에서 시행한 노조 결성 찬반 투표가 통과됐다. 미국 게임업계의 대형 퍼블리시 업체에서 처음으로 결성된 노조로 주목받고 있다. 레이븐 소프트웨어에서 콜 오브 듀티 시리즈 개발에 참여한 소프트웨어 품질 보증 부서는 노조 결성을 두고 투표한 결과, 찬성 19표, 반대 3표로 미국 커뮤니케이션 노동자 연합 소속의 노조를 결성하게 됐다.   미국 국가 노동 관계 위원회(National Labor Relations Board, NLRB)가 집계 및 감사를 맡은 이번 투표는 350명 직원을 둔 레이븐 소프트웨어의 직원 부문에 한해 인정된다. NLRB는 모든 직원이 노조 결성 투표에 참여해야 한다는 액티비전의 요구를 거절했다. 레이븐 소프트웨어의 노조 결성은 최근 이어진 애플 소매 매장 직원, 아마존 창고 직원 등 IT 기업의 노조 결성 움직임의 연장선에 있다. 뉴욕 타임즈 같은 언론사에서도 600명의 소프트웨어 엔지니어, 데이터 애널리스트 등 기타 직원을 대표하는 노동조합 결성안이 404대 88로 가결됐다. 레이븐 소프트웨어의 노조 결성 역시 레이븐 직원이 수 개월 동안 조직한 결과로 보인다. 지난해 말 레이븐 소프트웨어는 12명의 품질 보증 테스터를 해고했고, 직원들은 5주간의 파업을 강행한 후 직원을 대표하는 게임 노동자 연합(Game Workers Alliance)을 결성했다. 게임 노동자 연합은 CWA의 지원을 받았다. 액티비전 노조는 성명을 통해 “더 나은 게임을 만들고 개발사의 가치를 반영하며 모든 직원의 사기를 북돋울 수 있도록 게임 개발사의 직원 단체 행동에 힘을 보태고 싶다. 강력한 노조 계약을 통해 액티비전 블리자드의 미래와 직원 근무 조건을 긍정적으로 형성할 수 있도록 관리자와 대화하기를 바란다”라고 발표했다. 레이븐 소프트웨어는 투표가 모든 직원을 대상으로 시행되어야 한다는 주장을 반복했다. 레이븐 소프트웨어는 노조 결성 여부는 모든 직원이...

노동조합 액티비전블리자드 레이븐소프트웨어 2022.05.25

프로젝트 '레이든' 마침내 활동 시작…“자바 플랫폼에 정적 이미지 도입”

느린 시작, 최대 성능 도달까지 걸리는 시간, 큰 설치 공간 등 자바의 문제점을 해결하기 위한 프로젝트가 현재 진행 중이다. 2년 넘게 논의된 ‘프로젝트 레이든(Project Leyden)’은 JDK 및 자바 플랫폼에 정적 이미지를 도입해 기존 이슈를 해결할 계획이다.    지난 5월 20일(현지 시각) 오픈JDK 커뮤니티에서 오라클의 자바 플랫폼 그룹 수석 아키텍트 마크 라인홀드는 레이든 프로젝트를 시작한다고 밝혔다. 그에 따르면 정적 이미지는 애플리케이션에서 파생된 독립 실행형 프로그램으로, 해당 애플리케이션만 실행한다. 정적 이미지는 로드할 수 있는 클래스와 관련해 폐쇄된 환경(closed world)이다. 런타임 시 이미지 외부에서 클래스를 로드할 수 없으며, 클래스를 동적으로 생성할 수도 없다. 이 폐쇄된 환경의 제약 조건은 특히 기존의 자바 프레임워크 및 라이브러리가 기반으로 하는 런타임 리플렉션과 클래스 로딩 기능에서 자바의 자연적 역동성을 엄격하게 제한한다.  라인홀드는 “모든 애플리케이션이 이 제약 조건에 적합한 것은 아니며, 모든 개발자가 이 제약 조건을 기꺼이 받아들이는 것도 아니다. 처음부터 폐쇄된 환경의 제약 조건을 채택하는 대신, 제약 조건의 스펙트럼을 탐색하고 이것이 어떤 최적화를 가능하게 하는지 알아내는 점진적인 접근 방식으로 추진할 예정이다”라고 말했다.  그 결과 최적화는 폐쇄된 환경의 제약 조건보다 약할 수 있다. 하지만 (제약 조건이 약해) 최적화는 더 넓은 범위의 기존 코드에 적용될 수 있어 유용하다고 라이홀드는 설명했다. 아울러 이 프로젝트는 핫스팟 JVM(HotSpot JVM), C2 컴파일러(C2 compiler), 애플리케이션 클래스-데이터 공유(application class-data sharing), 제이링크 코드 도구(jlink code tool)를 포함해 JDK의 기존 구성요소를 활용할 예정이다. ciokr@idg.co.kr

자바 플랫폼 정적 이미지 JDK 2022.05.25

커리어 로드맵 : 데이터 엔지니어

데이터 엔지니어링은 소프트웨어 엔지니어링과 데이터 과학의 요소를 결합한, IT 영역에서 빠르게 성장 중인 IT 분야 중 하나다. Indeed.com에 따르면, 데이터 엔지니어는 데이터 과학 프로젝트에 사용되는 아키텍처를 개발하고 유지하며 데이터가 서버와 애플리케이션 사이를 중단 없이 흐르도록 한다.  데이터 엔지니어는 다양한 운영체제 및 데이터베이스에 익숙해야 하고 소프트웨어를 쓰고 프로그래밍할 수도 있어야 한다. 데이터 웨어하우스 및 데이터 분석 경험, 그리고 뛰어난 비판적 사고와 커뮤니케이션 역량도 필요하다. 데이터 엔지니어는 교육, 직장 내 훈련, 지속적인 자격증 습득의 조합을 통해 기술력을 쌓을 수 있다. 인디드(Indeed)는 자격증 습득이 자신의 역량을 보여주고 앞서 나가기 위한 좋은 방법이라고 강조한다.  데이터 엔지니어가 되기 위해 무엇이 필요한지를 알아보기 위해 AI 기반의 품질 모니터링 플랫폼 전문업체인 유닛큐(unitQ)의 데이터 엔지니어인 랜스 마일스를 인터뷰했다.    교육과 취업  마일스는 2013년 캘리포니아 산타크루즈 대학에서 신경과학 학사 과정을 졸업한 뒤 2017년 워싱턴 대학에서 데이터 과학 자격증을 취득하고, 2020년에 캘리포니아 버클리 대학에서 정보 및 데이터 과학 석사 학위를 취득했다.  마일스는 “내가 거쳐온 단계를 뒤돌아볼 때 한 가지 큰 영향을 미친 경험이 있다. 대학 마지막 학기의 파이썬 과정이었던 생물학자를 위한 프로그래밍이다. 이 경험이 새로운 열정의 바탕이 됐다”고 말했다.  잘 아는 영역에서 나와 처음부터 시작해야 하는 새로운 영역으로 들어간다는 것은 겁나는 일이었다. 마일스는 매일 코드를 쓰며 방대한 서열 데이터 집합에서 정보를 추출해 단백질 서열의 물리화학적 속성을 계산하기 위한 방법을 개발하고, 유전자의 길이와 위치를 알아내고 바이러스 DNA의 특성을 파악했다.  마일스는 “정리되지 않은 데이터 집합을 간결한 결과로 ...

데이터엔지니어 데이터과학 머신러닝 2022.05.23

“자바 동시성, 더 쉬워진다” 새 오픈JDK 제안 

오픈JDK(OpenJDK) 커뮤니티에서 인큐베이션 중인 새로운 제안 ‘구조화된 동시성(JEP 428: Structured Concurrency)’은 서로 다른 자바 스레드에서 실행되는 여러 작업을 단일 작업 단위로 처리한다.  현재 오픈JDK 커뮤니티에서 인큐베이팅하고 있는 계획으로 멀티스레드 프로그래밍이 더 쉬워질 예정이다. ‘구조화된 동시성’ 제안은 서로 다른 스레드에서 실행되는 여러 작업을 단일 작업 단위로 처리하는 라이브러리를 도입한다. 해당 제안에 따르면 새 라이브러리는 오류 처리 및 취소를 간소화하고, 안정성을 개선하며, 관찰 가능성을 향상시킨다.    이 제안의 목표는 멀티스레드 코드의 안정성과 관찰 가능성을 개선하는 것, 그리고 취소 및 종료로 발생하는 일반적인 위험(예: 스레드 유출 및 취소 지연 등)을 제거할 수 있는 동시 프로그래밍 스타일을 촉진하는 것이다. 현시점에서 구조화된 동시성 제안은 특정 버전의 자바를 대상으로 하지는 않는다.  제안에 따르면, 구조화된 동시성은 단일 스레드 코드 개발자가 다뤄야 하는 가독성 및 유지관리를 위한 멀티스레드 프로그래밍 접근 방식이다. 이는 작업이 동시 하위 작업으로 분할되면 모두 같은 위치, 즉 작업의 코드 블록으로 돌아간다는 원칙을 따른다. 동일한 코드 블록으로 돌아가면 동시 하위 작업의 수명은 구문 블록으로 제한된다. 형제 하위 작업이 동일한 블록에 국한되기 때문에 하나의 단위로 추론하고 관리할 수 있다. 하위 작업은 결과를 기다리고 실패를 모니터링하는 작업(외부 블록의 코드)을 대신하여 작동한다.  단일 스레드 코드를 지원하는 구조화된 프로그래밍 기술과 마찬가지로 멀티스레드를 지원하는 구조화된 동시성은 2가지 아이디어에서 비롯된다. (1) 코드 블록을 통한 실행 흐름에서 잘 정의된 진입점 및 종료점 그리고 (2) 코드 중첩을 미러링하는 방식으로 작업 수명을 엄격하게 중첩하는 것이다. 또한 런타임에서 구조화된 동시성은 동일한 상위 작업이 가지고 ...

자바 오픈JDK JEP 2022.05.23

"개발 언어 지배자는 여전히 자바스크립트와 파이썬"

개발자의 언어 선호도에서 자바스크립트와 파이썬의 강세가 계속되고 있다. 러스트의 상승세도 만만치 않은 것으로 나타났다. 이는 지난 4일 공개된 '개발자 현황 22번째 에디션(State of the Developer Nation, 22nd Edition)'의 주요 내용이다. 이 보고서는 시장조사업체 슬래시데이터(SlashData)가 2021년 12월부터 올해 2월까지 전 세계 166개국 2만 명 이상의 개발자를 설문한 결과다.   보고서를 보면, 자바스크립트는 가장 선호하는 언어로 선정됐다. 슬래시데이터는 이 조사를 1년에 2~3번 정도 진행하는데, 자바스크립트는 최근 12번의 조사에서 연속으로 1위를 차지했다. 전 세계적으로 약 1,750만 명이 사용하고 있고, 자바스크립트 커뮤니티 역시 수년간 지속해서 성장하고 있다. 2위는 파이썬이었다. 2년 전 자바를 앞지른 이후 선두권을 계속 유지하고 있다. 전 세계 사용자 수는 1,570만 명으로, 불과 6개월 사이에 330만 명이나 늘어났다.   상승세를 보면 러스트가 눈에 띈다. 지난 2년 사이 사용자 수가 거의 4배 늘었다. 2020년 1분기 60만 명이었는데, 2022년 1분기에는 220만 명이 됐다. 러스트 파운데이션의 상임이사 레베카 럼블은 "보안과 메모리 안전성 등의 장점 때문에 러스트 사용자가 크게 늘었다. 메인터이너와 컨트리뷰터 커뮤니티가 포괄적이고 협력적인 것도 장점이다. 또한 러스트 개발자에 대한 수요가 계속해서 늘고 있으므로 직업적 전망에서도 좋은 언어다"라고 말했다. 보고서는 러스트가 주로 IoT 프로젝트는 물론 증강, 가상현실 개발에서도 널리 사용되고 있다고 분석했다.   이밖에 보고서의 주요 내용은 다음과 같다.   자바는 강력하고 안정적으로 성장하고 있다. 2021년 이후 거의 500만 명의 개발자가 자바 커뮤니티에 합류했다. PHP는 지난 6개월간 꾸준히 성장해 2021년 3분기에서 2022년 1분기 사이에 60만 명이 증가했다. PHP는 웹 ...

자바스크립트 파이썬 러스트 2022.05.20

‘코틀린 1.7.0’ 베타 출시…“빌더 타입 추론 변경”

젯브레인(JetBrains)에서 만든 크로스 플랫폼 오픈소스 프로그래밍 언어의 최신 버전 ‘코틀린 1.7.0’이 베타 릴리즈 단계에 도달했다. 이번 업데이트는 빌더 타입 추론 변경사항과 새로운 메모리 관리자 등이 특징이다.   업체에 따르면 빌더 추론은 일반 빌더 함수를 호출할 때 유용한 타입 추론이다. 이는 컴파일러가 람다 인수 내 다른 호출의 타입 정보를 사용해 해당 호출의 타입 인수를 추론하는 데 도움이 된다. 1.7.0 베타에서는 -Xenable-builder-inference 컴파일러 옵션을 지정하지 않고 일반 타입 추론이 충분한 타입 정보를 얻을 수 없을 때 빌더 추론이 자동으로 활성화된다. 즉, 이제 개발자는 추가 주석이나 옵션을 적용하지 않고 빌더 타입 추론을 사용하는 빌더를 작성할 수 있다. 이번 변경사항으로 빌더 추론 안정화에 가까워졌다고 젯브레인은 밝혔다.  또 베타 릴리즈에는 새로운 코틀린/네이티브 메모리 관리자 알파 버전이 제공된다. 이 관리자는 JVM과 네이티브 플랫폼 간의 차이를 줄인다. 업체에 의하면 개발자는 안드로이드와 iOS 모두에서 작동하는 크로스 플랫폼 모바일 애플리케이션을 더 쉽게 구축할 수 있다. 아울러 스레드 간 객체 공유 제한이 풀리고, 특정한 관리나 주석이 필요하지 않은 ‘누수 없는(leak-free)’ 동시 프로그래밍 기본 요소를 지원한다. 새 메모리 관리자는 향후 버전에서 디폴트로 제공될 예정이다.  코틀린 1.7.0 베타 설치 지침은 이곳에서 확인할 수 있다. 이 밖에 베타의 다른 기능은 아래와 같다.    ‘확실히 nullable이 아닌(definitely non-nullable types)’ 타입이 안정화됐다. 이는 지난달 공개된 코틀린 1.6.20에서 도입됐으며, 현재 디폴트로 활성화된다. 일반 자바 클래스 및 인터페이스를 확장할 때 개발자에게 향상된 상호운용성을 지원하는 타입을 제공한다.  min()와 max() 콜렉션 함수가 원래 함수 ...

젯브레인 코틀린 프로그래밍 언어 2022.05.20

"멀티 클라우드의 ID 정책을 통합한다" 오픈소스 프로젝트 '헥사' 공개

18일(현지시간) ID 오케스트레이션 업체 스트라타 아이덴티티(Strata Identity)가 새로운 오픈소스 프로젝트를 공개했다. 애저, AWS 및 구글처럼 호환되지 않는 클라우드의 ID 시스템을 통합해 사용자가 멀티 클라우드 플랫폼에서 ID 및 액세스 정책을 일관적으로 적용하는 기능을 제공한다.  스트라타 아이덴티티에 따르면, 해당 프로젝트는 오픈소스 기술인 헥사(Hexa)와 ID 액세스 정책을 정의하는 새로운 공통 정책 형식인 IDQL로 구성되며 멀티 클라우드와 온프레미스 시스템 및 공급업체의 솔루션을 결합한다. 이는 과잉 권한이 부여되고 소홀하게 관리되는 클라우드 계정이 사이버 공격자에게 공격 경로를 열어주는 격이라는 내용의 최근 연구에 따른 결과다.  다중 클라우드 ID 관리의 사일로 해결 스트라타 아이덴티티는 현재 인기 있는 클라우드 플랫폼이 서로 호환되지 않는 개별 정책 언어와 독점 ID 시스템을 사용한다고 말했다. 각 애플리케이션은 특정 ID 시스템과 함께 작동하도록 하드코딩되어야 한다. 헥사는 IDQL을 사용해 여러 ID 시스템이 시스템이나 애플리케이션을 변경하지 않고도 통합된 상태로 함께 작동할 수 있도록 설계됐다. 클라우드 플랫폼과 권한 부여 시스템, 데이터 리소스 및 제로 트러스트 네트워크에서 ID 및 액세스 정책을 추상화해 존재하는 정책을 찾고, 네이티브 구문에서 제네릭 IDQL 선언적 정책으로 변환한다. 그런 다음 클라우드 기반 아키텍처를 통해 대상 시스템의 기본적인 필수 정책으로 다시 변환하고, 클라우드 시스템과 앱, 데이터 리소스, 플랫폼 및 네트워크 전반에 걸쳐 ID 및 액세스 정책을 오케스트레이션한다.  IDQL 작업 그룹 구성원이자 글로벌 ID 및 액세스 관리 책임자인 톰 몰타는 “처음으로 모든 CSP(Cloud Service Provider) 또는 솔루션 아키텍처의 사실상 모든 엔드포인트에서 동서(east-weat) 및 남북(north-south) 간 정책을 모두 통합하고 중...

스트라타 아이덴티티 IDQL 헥사 2022.05.19

블로그 | 당신의 클라우드옵스 계획은 너무 늦었다

필자는 종종 워터폴 소프트웨어 개발 라이프 사이클 시대를 떠올린다. 당시엔 각 작업이 개별적으로 시작해 종료됐다. 한 작업이 끝난 결과물이 다른 문서화나 코드의 시작점이었다. 시간이 오래 걸리는 개발 방식이었고 방향을 바꾸기가 사실상 불가능했지만, 관련된 다른 계획을 세우기에는 훨씬 수월했다.   하지만 그런 시절은 끝났다. 오늘날 클라우드 개발 혹은 동시 개발 방식에서는 반복적이고 민첩하게 작업이 진행되고 언제든 방향을 바꿀 수 있다. 매우 강력한 데브옵스 툴 체인을 통해 자동화되면서 유동적인 개발 방식이 만들어졌다. 이런 변화는 올바른 방향이라고 생각한다. 하지만 동시에 일부 악화한 부분이 있다. 운영 계획이 대표적이다. 개발이 끝날 때까지 마치지 못하는 경우가 비일비재하고 아예 시작하지 못하기도 한다. 개발자는 코드와 데이터 구조를 운영팀에 넘기고 운영팀은 이를 장기적으로 잘 운영할 방법을 빠르게 찾아야 한다. 그런데 현실적으로 많은 운영 혹은 클라우드옵스 담당자가 현재 공석이다. 이 자리가 점점 기피 IT 업종이 되고 있기 때문이다. 그러나 운영 계획은 반드시 개발 과정의 초기, 최소한 설계 단계에서 시작돼야 한다(보안과 거버넌스 계획 역시 이 단계에서 함께 고민해야 하지만 여기서는 이 부분은 논외로 한다). 운영 계획을 개발 초기에 세워야 건강한 운영 관행이 시스템에 녹아들어 갈 수 있다. 새로 만든 시스템이든 클라우드로 이전한 시스템이든 마찬가지다. 이렇게 해야 프로세스와 스토리지 시스템이 장애나 성능, 사용성 등 일반적인 운영 문제를 겪을 수 있는 가능성을 줄일 수 있다. 운영 계획이 부실하거나 아예 없으면 문제에 직면할 가능성이 커지는 정도가 아니다. 개발팀에 다시 코드와 데이터 구조를 돌려보내기 전에 상당히 많은 문제에 고통받는다. 필자가 개발자와 애플리케이션 디자이너, 아키텍트 등에게 코드를 작성하거나 전환하기 전에 운영 계획을 먼저 마련하라고 하면 그들은 마치 필자가 에베레스트산을 오르라고 한 것 같은 표정으로 쳐다본다....

클라우드옵스 데브옵스 ops 2022.05.18

MS, ‘닷넷 7’ 프리뷰 4 공개…“정규식 개선ㆍ캐시 메트릭 지원”

‘닷넷 7(.NET 7)’의 네 번째 프리뷰가 지난 5월 10일(현지 시각) 공개됐다. 정규표현식 라이브러리에서의 스팬(span) 지원과 아이메모리캐시(IMemoryCache)의 적중률 및 실패율 통계 등이 추가됐다.  마이크로소프트 닷넷 웹사이트에서 다운로드할 수 있다. 닷넷 7의 프로덕션 릴리즈 출시는 11월로 예정돼 있다.   닷넷 7 프리뷰 4는 스팬 유형 지원을 추가하는 나머지 계획된 API를 정규표현식 라이브러리에 제공한다. 변경 사항은 ReadOnlySpan<char> 입력과의 매칭 지원을 추가하고, RegexOptions.IgnoreCase 처리를 정밀 검사한다. 프리뷰 4에서 지원되는 새로운 스팬 기반 API는 다음과 같다.    Regex.IsMatch(ReadOnlySpan<char> input) – 정규표현식이 입력 범위에서 일치하는 항목을 찾는지 여부를 나타낸다. Regex.Count(ReadOnlySpan<char> input) – 정규표현식의 모든 항목에서 입력 문자열을 검색하고 일치하는 항목 수를 반환한다.  Regex.EnumerateMatches(ReadOnlySpan<char> input) – 정규표현식 발생의 입력 범위를 검색하고 ValueMatchEnumerator를 반환하여 일치 항목을 천천히 반복한다.  또한 정규표현식 소스 생성기에서 생성된 코드를 더 읽기 쉽고, 더 디버깅하기 쉬우며, 여러 소스에서 생성된 정규표현식 패턴을 가진 프로젝트가 공통 코드를 공유할 수 있도록 했다고 업체 측은 밝혔다. 아울러 프리뷰 4에서는 아이메모리캐시의 메트릭 지원도 제공된다. 추가되는 주요 API는 ▲아이메모리캐시의 캐시 적중률, 실패율, 예상 크기 등을 보여주는 MemoryCacheStatistics, ▲MemoryCacheStatistics의 인스턴스 또는 TrackStatistics 플래그가 활성화되지 않은 경우 nul...

마이크로소프트 닷넷 닷넷 7 2022.05.17

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.