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.

프로그래밍

SW교육 전문 스타트업 해피해킹, ‘하이퍼그로스’로 사명 변경

해피해킹이 2022년 9월부터 ‘하이퍼그로스’로 사명을 변경하고 본격적인 교육 혁신에 나선다고 밝혔다.   이번에 변경된 새로운 사명 ‘하이퍼그로스(Hypergrowth)’에는 “IT 교육을 넘어 세상 전반에 초성장을 전달하겠다”는 포부를 담았다고 업체 측은 설명했다. 하이퍼그로스는 프로그래밍 SW교육 서비스를 운영하는 에듀테크 스타트업으로, ‘멋쟁이사자처럼’ 최고운영책임자(COO), VR미술플랫폼 ‘이젤’ 최고기술책임자(CTO)를 거친 강동주 대표가 2018년 설립했다. 주요 성과로는 삼성전자의 SW 인재 육성 프로그램 ‘삼성청년SW아카데미(SSAFY)’ 비전공자반 파이썬 트랙을 총괄 기획·운영해왔으며, 이밖에 ▲쿠팡 ▲현대카드 등 IT 혁신을 주도하는 기업에 내부 SW 교육 및 관련 컨설팅을 제공했다. 하이퍼그로스를 거친 교육생 수는 약 2만여 명이며, SSAFY를 거친 교육생의 취업률은 84%다. 이들의 상당수는 네카라쿠배(네이버·카카오·라인·쿠팡·배민), 금융권, 대기업 등에 취업했다. 이러한 성과로 최근 기업들은 SSAFY 특별전형을 신설하는 등 SSAFY 출신 개발자 확보에 집중하고 있다. 하이퍼그로스는 서울대와 카이스트 출신 핵심 관계자가 100% 자체 개발한 ‘LCP 교육모델’로 커리큘럼을 진행해 대한민국을 대표하는 SW 교육을 선보여왔다. ‘LCP 교육모델’이란 강의(Lecture)·콘텐츠(Contents)·플랫폼(Platform)이 유기적으로 결합됨을 의미한다. 자체 개발한 자사의 교육관을 고수하기 위해 하이퍼그로스는 스타트업으로는 이례적으로 투자를 받지 않는 것을 결정했는데, 설립 원년부터 흑자로 시작해 인바운드 사업 확장만으로 2022년 상반기 확정 매출 50억 원을 달성했다. 또 작년 대비 구성원이 300% 증가하는 등 강한 성장세를 보이고 있다.   하이퍼그로스는 그동안 B2B교육 위주였으나 2022년 하반기부턴 자체 부트캠프, B2C 교육도 대폭 늘릴 계획이다.  강동주 대표는 “그동안 해피...

해피해킹 하이퍼그로스 에듀테크 2022.09.01

자바가 여전히 위대한 개발 언어인 7가지 이유

소프트웨어 분야에서 가장 흥미로운 현상 중 하나는 자바의 끈질긴 생명력이다. 언어이자 플랫폼으로써 자바는 기술 세계의 급격한 변화를 거치면서도 생존했고 자바 내부 구조도 그에 맞춰 변화됐다. 자바는 어떻게 해서 20년 이상 엔터프라이즈와 오픈소스에서 모두 중심을 유지하고 있을까? 가장 중요한 몇 가지 요소를 살펴보자.     자바 커뮤니티 프로세스 자바는 여러 가지 작업을 더 편리하게 하기 위한 대안으로 탄생했다. 지금은 그동안 반복된 도전에도 불구하고 모두가 인정하는 엔터프라이즈 소프트웨어의 기둥이다. 급격한 변화를 겪으면서도 자바가 그 생명력을 유지하는 이유는 무엇일까? 한 가지 중요한 요소는 개발자의 참여를 이끌어 자바의 활발하고 동적인 힘을 유지하는 거버넌스 구조와 이를 통해 촉진되는 커뮤니티의 열정이다. 자바의 거버넌스는 매끄럽고 기계적인 운영과는 거리가 멀어서, 서로 경쟁하는 이해와 조직의 혼란스러운 조합이다. 이들은 자바 커뮤니티 프로세스(JCP)와 자바 사양 요청(JSR)을 통해 저마다 목소리를 낸다. JCP는 자바 기술에 대해 깊은 관심을 두고 있는 사람들의 기여와 충돌 해결을 위한 창구다. 관료주의와 정치, 창의성의 독특한 조합이다. 현실의 민주주의와 비슷하다고 할 수 있다. 자바가 성공적으로 람다와 클로저를 포용한 것은 오랜 자바 프로그래머에게는 정말 놀라운 사건이었다. 객체 지향 프로그래밍 언어에 함수 구조를 추가한다는 것은 많은 논란을 일으킨 과감한 결단이었다. 하이버네이트, 스프링(각각 JSR 317, JSR 330)과 같은 기술에 의해 도입된 개념도 공식 플랫폼에 흡수됐다. 자바처럼 광범위하게 사용되는 기술이 여전히 새로운 아이디어를 통합한다는 것은 고무적인 일이다. 커뮤니티에 대한 자바의 기민한 대응은 유용한 개선을 도입하도록 이끈다. 개발자는 자신이 속한 시스템이 변화하는 세계에서 성공하기 위해 끊임없이 개선되는, 살아있는 시스템이라고 느끼게 된다. 자바의 동시성 모델을 재설계하기 위한 대대적인 작업인 ...

자바 언어 개발자 2022.07.21

"새로운 개발자 경험이 온다" 2022년 SW 트렌드 총정리

전 세계적으로 사회의 양상을 근본적으로 바꿔버린 바이러스 대유행 사태가 잦아든 지금 우리는 2022년 중반에 와 있다. 지난 2년의 변화 중에서 가장 주목할 만한 것은 디지털 인프라의 필요성이 높아지고 이에 크게 의존했다는 점이다. 시스템 관리자가 새로운 작업 방식을 만들어 내느라 고전하는 와중에도 시스템 자체는 훌륭하게 견뎌 주었다.   우리는 웹이 PPE(Personal Protective Equipment)에서 가상 결혼식까지 모든 것을 제공할 수 있음을 알게 되었다. 달리 위안을 주는 것이 없을 때면 많은 사람이 디지털 보호막 속으로 더 침잠해 들어갔다. 이처럼 웹 사용량이 급증하면서 새로운 문제와 개선할 부분이 발견됐다. 이제 온라인 경험을 기반으로 이를 업그레이드할 새로운 기술의 물결이 떠오르고 있다. 기존의 인터넷을 새로 구축하려는 노력이 진행 중인 가운데 이와 관련된 여러 가지 트렌드를 정리했다.   재미와 수익을 위한 코딩 소프트웨어 개발자라면 방금 개발한 프로그램도 "충분히 좋으냐"고 물으면 "개선의 여지가 있다"고 답하는 경우가 대부분이다. 뮤지션이 아직 미완성 상태라고 생각하는 데도 결국 앨범을 그냥 발표하는 것과 비슷하다. 존 레넌은 비틀즈의 명반을 두고 “재녹음하고 싶지 않은 것은 하나도 없다”라고 말하기도 했다. 이를 통해 우리는 지속적인 개선을 이끄는 중요한 동기부여 요소를 이해할 수 있다. 소프트웨어 엔지니어는 예술혼 비슷한 것에 이끌린다. 뭔가 멋진 것을 개발하지 않고는 못 배기는 것이다. 그렇게 개발된 최첨단 기술을 ‘예술’의 경지라고 표현한다. 코드 가독성과 유지 가능성이 제일 중요하다고 하지만 내재적으로 가치 있는 무언가를 만들고자 하는 타고난 갈망이 동기를 부여하는 경우도 많다. 물론 우수성만이 아니라 수익도 동기부여 요소다. 혁신이 성공할 확률은 벼락에 맞을 확률만큼이나 낮지만 일단 성공하면 금전적 이익이 엄청나다. (합치기 어려운 것으로 악명 높지만) 코더의 사고방식과 사업적 감각을 한데 모은...

소프트웨어 트렌드 개발자 2022.06.16

그렙, 글로벌 개발자 오픈 교육 플랫폼 ‘비욘드캠퍼스’ 공개

그렙이 소프트웨어 개발자를 위한 글로벌 오픈 교육 플랫폼 ‘비욘드캠퍼스(BeyondCampus)’를 출시하고 첫 온라인 클래스 ‘DW(Data Warehouse) & SQL’을 개강했다고 밝혔다.   비욘드캠퍼스는 소프트웨어 개발에 대한 다양한 주제를 전 세계 어디서든 자유롭게 학습할 수 있도록 개발한 글로벌 개발자 오픈 교육 플랫폼이다. 비욘드캠퍼스에서는 교육 콘텐츠 보유와 관계없이 프로젝트 기반의 교육을 제공할 수 있는 교육자라면 누구나 클래스를 열고 학습자와 만날 수 있다. 학습자들은 짧은 기간에 효과적인 개발 역량 향상 학습을 진행하고, 그렙의 축적된 데이터 기반의 학습 평가로 성과를 확인할 수 있다. 특히 비욘드캠퍼스는 일방적인 동영상 콘텐츠 위주의 온라인 소프트웨어 개발 교육의 한계점을 극복하고자 ▲웹IDE 기반의 실습 ▲코딩 테스트 ▲페어 프로그래밍 ▲코드 리뷰 ▲코딩 관련 질의응답 ▲온라인 시험 감독 기능 ▲영상 기반 라이브 클래스룸 기능을 제공하는 온라인 코호트 기반의 학습 관리 시스템(LMS, Learning Management System)을 구축했다.  이 기능은 기존 온라인 LMS 업체에서 제공하지 않지만, 소프트웨어 개발 교육을 위해 필요한 비욘드캠퍼스만의 핵심 경쟁력이라고 업체 측은 설명했다. 그렙은 북미 시장의 성장 가능성을 보고 2019년 3월 그렙 미국 지사를 설립해 운영하고 있다. 그렙 미국 지사는 국내에서 입증된 서비스의 글로벌 진출을 돕고 현지에서 직접 영업 및 서비스 출시·운영을 추진할 계획이다.  editor@itworld.co.kr

그렙 에듀테크 개발자 2022.06.08

프론트엔드 아키텍처의 진화, 리액티브 자바스크립트

현재 소프트웨어 개발에서 가장 역동적인 분야는 프론트 엔드 아키텍처다. 동적인 사용자 인터페이스를 구축하기 위한 더욱 강력한 방법을 고안하고자 여러 혁신가들이 첨단 기술을 발전시키고 있다. 이들 작업은 대부분 맹렬한 속도로, 공개적으로 진행되고 있다.   스벨트킷(SvelteKit), 솔리드(Solid), 리액트(React), 퀵(Qwik), 아스트로(Astro) 같은 여러 오픈소스 자바스크립트 프로젝트 덕분에 우리는 미래를 향한 웹의 진화를 눈앞에서 지켜볼 수 있다. 이 글은 최근 오픈소스 자바스크립트 프로젝트의 움직임 이해를 위한 가이드다.     하이드레이션이란? 현대의 프론트 엔드 아키텍처를 개선하기 위한 활동의 대부분은 이른바 하이드레이션(hydration)에 초점을 둔다. 하이드레이션이 무엇이며 왜 현대 프론트 엔드 아키텍처의 중심인지 이해하기 위해 일단 전체적인 개념을 파악해야 한다. 반응성(reactivity)을 구현하려면 모든 프레임워크는 다음 다이어그램에 기술된 세 가지 측면을 처리해야 한다.    이 다이어그램의 기본적인 메시지는 뷰의 프레임을 설정하고 상태를 저장하고 이 둘 간의 상호작용을 관리하는 작업을 프레임워크가 담당한다는 것이다(MVC 패턴을 잘 아는 사람에게는 친숙한 개념).   이 3가지 조각이 확보되면 준비가 된 것이다. 사용자는 페이지를 보고 페이지와 상호작용할 수 있다.   네이티브, 또는 기본적인 접근 방법은 단순히 클라이언트에서 필요한 모든 것(프레임, 리액티브 코드, 상태)을 가져와 보내는 방법이다. 그러면 클라이언트(브라우저)가 프레임을 표시하고(UI 페인팅) 자바스크립트를 해석하고 상태를 연결하는 작업을 한다.   이 접근 방법의 장점은 코드가 단순하며 따라서 코드를 이해하기도 쉽다는 것이다. 그러나 큰 단점도 있다. 첫 페이지 렌더에서 모든 요소를 기다려야 하고 사용자는 모든 네트워크 및 브라우저 작업이 완료되기까지의 과정을 거쳐야 한...

자바스크립트 프론트엔드아키텍처 프론트엔드 2022.06.02

프로그래밍 언어의 간단한 역사

프로그래밍 언어 개발은 컴퓨터의 기계어와 밀접하게 연관된다. 기계어는 이름에서 알 수 있듯이 기계가 실행할 수 있는 명령으로 된 언어다. 여기서 기계는 컴퓨터에 내장된 마이크로프로세서를 의미한다(CPU, 하드 디스크 컨트롤러 등). 프로세서는 특수한 기계 명령어에 따라 동작한다. 이와 같은 명령어가 결합되어 컴퓨터가 하나씩 명령을 실행할 수 있는 이진 기계 프로그램을 구성한다. 사람이 알아보기 어렵고, 개발하기는 더욱 어렵다.    어려운 개발을 용이하게 하기 위해 프로그래밍 언어와 텍스트 편집기, 변환 프로그램이 고안됐다. 첫 걸음은 1948년에 등장한 어셈블리(Assembly)이다. 프로그래머는 텍스트 편집기 안에서 어셈블리어 프로그램을 작성해서 텍스트 파일로 저장한다. 이 파일을 컴퓨터가 직접 실행할 수는 없으므로 중간에 어셈블러라는 보조 프로그램이 필요하다. 어셈블러는 이 파일, 즉 소스 코드를 기계 프로그램으로 변환한다(다음 그림 참조). 컴퓨터는 이렇게 해서 나온 이진수 기계 프로그램만 실행할 수 있다.  어셈블러 소스 코드는 기계어에 비해 이해하기 쉽다. 일련의 세부적인 명령으로 구성되기 때문에 명령의 수가 많고 장황하다. 따라서 간단한 hello world 프로그램도 파스칼과 같은 고수준 언어에 비하면 상당히 길다(다음 그림 참조). 큰 어셈블리어 프로그램을 작성하는 데는 오랜 시간이 걸린다. 또한 어셈블리어는 특정 프로세서에 연계되고 파스칼과 같은 고수준 언어에 비해 읽기가 어렵다. 장점은 잘 프로그램된 어셈블러 프로그램의 경우 실행 속도가 빠르고 메모리 및 하드 디스크 공간 사용량이 적다는 것이다.  이와 같은 확실한 장점이 있긴 하지만 열악한 가독성 및 유지보수 편의성, 낮은 개발자 생산성, 무엇보다 특정 하드웨어(마이크로프로세서)에 대한 의존성과 같은 단점이 너무 커서 불과 몇 년 후에 2세대 언어가 개발됐다. 가장 먼저 나온 고수준 언어는 포트란(Fortran)과 코볼(COBOL)이다. 포트란은...

프로그래밍 어셈블리 포트란 2021.11.02

2020년 가장 가치 있는 소프트웨어 개발 기술

지난 10년 동안 크게 성장한 분야 중 하나인 소프트웨어 개발 기술은 지금과 같은 경기 상황에서도 여전히 수요가 높다. 그 중에서도 다른 기술에 비해 특히 더 인기 있는 기술이 있다.  코로나19 팬데믹이 전세계 일자리 시장에 계속해서 영향을 미치고 있는 가운데 개발자에게 중요한 전략은 적절한 기술을 선택해 집중하는 것이다. 구인 게시판인 CV-라이브러리(CV-Library)에 따르면, 영국의 경우 공고된 소프트웨어 개발자와 소프트웨어 엔지니어링 일자리 수가 작년에 비해 모두 33% 하락했다.    현재 시장에서 가장 가치 있는 개발자 기술은 무엇일까? 데이터를 분석해 향후 몇 년 동안 가장 유망한 개발자 기술은 무엇이고, 만만치 않은 구직 시장에서 성공하기 위한 최선의 방법은 무엇인지 알아봤다.    모든 달걀을 한 바구니에 담지 말 것  개발자는 특정 프로그래밍 언어와 프레임워크에 대한 숙련도에 따라 평가되는 경우가 많지만, 이러한 기술은 전이 가능한 기술이라는 점에 유의하는 것이 중요하다.  스택 오버플로우(Stack Overflow)는 2020 개발자 설문에서 수천 명의 개발자를 대상으로 새로운 언어 또는 프레임워크를 얼마나 자주 배우는지 물었는데, 응답자의 약 75%는 최소 1년에 한 번은 새로운 기술을 익힌다고 답했다.  IT 전문가 채용 업체 어플라이드(Applied)의 엔지니어링 팀장 휴 잉그램은 “언어와 프레임워크는 서로 매우 비슷하므로 프로그래밍 언어 간의 차이는 일반 언어의 차이보다는 훨씬 작다. PHP에서 파이썬으로의 전환은 프랑스어를 새로 배우는 것과는 전혀 다르다”고 말했다.  예를 들어 잉그램은 리액트(React) 개발자가 필요한 경우 후보자가 전에 앵귤러(Angular), J쿼리(JQuery), 심지어 기본 자바스크립트 경험만 있어도 리액트 자체에 대한 경험 유무는 별 문제가 되지 않는다고 말했다. 리액트를 금방 배울 수 있기 때문이다...

개발자 프로그래밍 구인구직 2020.10.12

“몰래 하는 맛” 비밀스럽게 즐기는 10가지 나쁜 프로그래밍 습관

엄마 몰래 쿠키를 먹고, 저녁에 와인을 다소 과하게 마시고, 요금 미터기 시간이 지난 다음에도 주차장에 차를 세워 두고, 급커브 구간을 너무 빠르게 돌아 나간 경험은 모두가 있을 것이다. 물론 프로그래밍의 기본적인 이런저런 규칙도 위반한다. 나쁜 행동이라는 사실은 모두가 알고 수긍한다. 그러나 비밀스럽게 그 나쁜 행동을 즐긴다. 우리는 좋은 프로그래밍 규칙을 조롱하는 나쁜 코드를 쓰고도 아무렇지도 않게 잘 살고 있다. 프로그래밍의 신이 내리는 벼락을 맞지도 않았고 책상이 폭발하지도 않았다. 사실 코드는 컴파일되어 이미 전달됐고 고객도 만족한 것 같다.    나쁜 프로그래밍은 예를 들어 전기 철조망을 혀로 핥거나 호랑이의 꼬리를 잡아당기는 수준의 행동은 아니기 때문이다. 대부분의 경우에는 아무 탈없이 넘어간다. 규칙이라 해도 위반 시 코드가 사망하는 엄중한 명령이 아니라 가이드라인 또는 스타일 제안에 가깝다. 물론 코드가 비웃음의 대상이 될 수도 있고 경우에 따라서는 공개적인 망신을 당하기도 한다. 그러나 규약에 저항한다는 사실은 이른바 사회적인 좋은 코드의 관습을 어기는 데서 오는 스릴을 느끼게 해준다. 게다가 때로는 규칙을 어기는 편이 더 좋을 때도 있다. (쉿!) 그렇게 나온 코드가 더 깔끔하고 더 빠르거나 간소할 수 있다. 규칙은 일반적으로 지나치게 광범위한데, 재주가 있는 프로그래머는 그 규칙을 어김으로써 코드를 더 개선할 수 있다. 상사에게 말하면 안 되지만 가끔은 자기만의 방법으로 코딩하는 편이 더 좋다. 무조건 지켜야 하는 확고한 규칙이라고 생각하는 사람들도 있지만, 실제로는 많은 프로그래머들이 자주 어기고 그 결과로 성공과 즐거움을 얻는 10가지 규칙을 살펴보자.   나쁜 프로그래밍 습관 1 : 베끼기 학교에서는 분명 잘못된 행동이다. 그러나 직장의 경우 명확하지 않다. 물론 훔치면 안 되는 코드 블록도 있다. 출처가 독점 코드인 경우, 특히 저작권 메시지까지 붙어 있다면 가져와서는 안 된다. 자기만의 코드를 ...

프로그래밍 함수 디버깅 2019.12.09

AI 개발을 위한 최적의 프로그래밍 언어 6+2선

인공 지능(Artificial Intelligence, AI)는 애플리케이션 개발자에게 무한한 가능성을 제공한다. 머신러닝 또는 딥 러닝을 활용해 훨씬 더 정확한 사용자 프로필, 개인 맞춤 설정, 추천을 만들거나 더 스마트한 검색, 음성 인터페이스 또는 지능형 비서를 구현하거나 그 외의 다양한 방법으로 앱을 개선할 수 있다. 심지어 예전에는 생각지도 못했던, 보고 듣고 상황에 반응하는 애플리케이션을 만들 수도 있다.   AI를 온전히 활용하기 위해서는 어떤 프로그래밍 언어를 배워야 할까? 물론 좋은 머신러닝, 딥 러닝 라이브러리가 풍부한 언어가 좋다. 또한 우수한 런타임 성능, 충실한 툴 지원, 대규모 프로그래머 커뮤니티, 건강한 지원 패키지 생태계도 필요하다. 요구사항이 많지만 괜찮은 선택지 역시 풍부하다.  AI 개발을 위한 6가지 최적의 프로그래밍 언어와, 이 목록에는 들지 못했지만 살펴볼 만한 2가지 언어를 소개한다. 이 가운데에는 인기 상승 중인 언어도 있고 하락세인 언어도 있고 딥 러닝 아키텍처와 애플리케이션의 역사에 관심이 있는 경우에만 알면 되는 언어도 있다. 이제부터 각각의 장단점을 살펴보자. 파이썬(Python) 선두는 여전히 파이썬이다. 사실 다른 언어가 이 자리를 뺏기도 쉽지 않다. 파이썬에도 나름의 골치 아픈 문제는 있지만 AI 작업을 한다면 어느 시점에는 거의 무조건 파이썬을 사용하게 된다. 또한 파이썬의 투박한 부분들도 그동안 어느정도 개선됐다. 2020년을 목전에 둔 지금, 주요 라이브러리 대부분이 파이썬 3.x를 지원하고 파이썬 2.x에 대한 지원을 속속 중단하고 있음을 감안하면 파이썬 2.x냐, 파이썬 3.x냐의 논란은 거의 무의미하다. 즉, 모든 새로운 언어 기능을 마침내 본격적으로 활용할 수 있게 됐다. 모든 솔루션이 각자 다른 방법으로 조금씩 문제가 있는 악몽 같은 파이썬의 패키징은 여전하지만 95%의 상황에서는 별다른 걱정 없이 아나콘다(Anaconda)를 사용할 수 있다. 그럼에도 파이썬 측...

자바 줄리아 루아 2019.11.22

구글 고의 위력을 보여주는 10가지 오픈소스 프로젝트

세상에 나온지 10년째인 구글 고(Go) 프로그래밍 언어는 그동안 확고한 입지를 다졌다. 구글 고가 큰 인기를 끈 이유는 가볍고 빠른 컴파일 속도와 함께 동시 및 분산(즉, 클라우드) 애플리케이션 개발을 쉽게 해주는 풍부한 라이브러리와 추상화에 있다. 그러나 프로그래밍 언어의 성공을 판가름하는 진정한 척도는 개발자들이 그 언어로 만드는 프로젝트다. 구글 고는 네트워크 서비스, 소프트웨어 인프라 프로젝트, 다양한 종류의 컴팩트하고 강력한 툴을 위한 빠른 개발에서 가장 유력한 언어임을 입증했다.   여기서 소개하는 오픈소스 프로젝트는 모두 구글 고로 작성되었으며, 이 중 상당수는 구글 고 언어 자체보다 더 유명해졌다. 10가지 모두 각각의 영역에서 중대한 성과를 거뒀다. 여기 나온 모든 프로젝트는 깃허브에 호스팅되므로 구글 고 언어에 대해 알아보고자 하는 사람이라면 누구나 코드를 살펴볼 수 있다.   도커(Docker) 도커만큼 구글 고의 성공을 잘 보여주는 사례를 찾기는 어렵다. 소프트웨어 컨테이너화 기술인 도커는 약 1년 전부터 대규모 분산 소프트웨어 프로젝트에서 구글 고의 적합성을 보여주는 대표적인 사례로 부상했다. 도커 팀은 종속성 없는 정적 컴파일, 강력한 표준 라이브러리, 완비된 개발 환경, 최소한의 번잡함으로 여러 아키텍처에 맞는 빌드 기능 등 많은 혜택을 제공한다는 이유로 구글 고를 선택했다.   쿠버네티스(Kubernetes) 도커를 필두로 다른 여러 클라우드 지향 컨테이너 프로젝트 역시 구글 고로 만들어졌다. 구글의 컨테이너 오케스트레이션 프로젝트인 쿠버네티스와 그 하위 구성 요소 및 생태계의 대부분도 구글 고로 만들어졌다. 대표적인 예가 기본적인 쿠버네티스만 필요하고 그 외에는 일체 필요 없는 사람들을 위한 초경량 쿠버네티스 스핀오프인 k3s다. 구글은 쿠버네티스를 만들 때 C/C++, 자바, 파이썬을 포함한 다른 언어도 고려했다. 그러나 쿠버네티스의 공동 창립자이자 전 기술 리드이며 현재 VM웨어의 수석 엔지...

프로그래밍 라이브러리 컨테이너 2019.10.11

글로벌 칼럼 | "내일의 코볼", 자바인가 파이썬인가

우리는 새로운 것에 열광한 나머지 ‘오래된’ 것이 얼마나 오랫동안 우리 곁에 남아 있는지 잊어버리곤 한다. 예를 들면 코볼(Common Business-Oriented Language, COBOL)이 있다. 이번 달에 환갑을 맞이한 이 고색 창연한 프로그래밍 언어는 스티븐 제이 본 니콜스가 말한 것처럼 “우리들 보다 더 오래 살지도” 모른다. 아닌 게 아니라, 코볼은 우리 업계 내 발전의 진정한 속도를 보여 주는 동시에 미래의 코볼은 무엇이 될지에 대한 실마리를 제공하기도 한다. 자바와 SQL일까? 아니면 혹시 파이썬(Python)?   열심히 일하는 코볼 이 기사를 읽는 대부분의 사람은 1959년에 태어나지도 않았다. 그 해에 메리 하우스가 착안한 사무 처리용 공통 언어인 코볼의 개념은 그레이스 호퍼(외 다수)가 공식화와 추진에 나섰다. 하우스의 목적은 “다양한 컴퓨터에서 기본적인 사무 작업 수행에 사용할 수 있는 영어같은 용어”였다. 즉, 진정한 업체 중립적인 언어를 만드는 것이었다. 마이크로포커스(Micro Focus)는 "코볼의 전성기는 1980년대를 정점으로 지나갔지만 전세계 거래 처리 시스템의 70%는 여전히 코볼로 구동되고 있다"고 밝힌 바 있다. ATM에서 현금을 인출했다면 코볼을 사용한 것이고 대출금을 갚을 때도 마찬가지다. 콜센터에 전화를 할 때도 역시 코볼이 사용된다. 심지어 휴가를 위한 예약 작업도 코볼에 의존하는 것이 거의 확실하다. 코볼은 끝났다는 말이 나온 지 수십 년이 지난 지금도 2,200억 줄의 코볼이 우리 일상의 메인프레임에 계속 살아 있다. 소프트웨어 엔지니어링 연구센터 레로(Lero)에 따르면, 2014년 코볼 트랜잭션 건수는 구글 검색 건수보다 무려 200배나 많았다고 한다. 구글이 따라잡기에는 요원해 보일 정도다. 코볼은 메인프레임 연금생활자 아파트에 기거하는 노망난 늙은이가 아니다. 읽기 쉬운 언어일 뿐만 아니라 이웃들과 보조를 맞춰 최신 상태를 계속 유지해 왔다. 오늘날 코볼은 도커 컨테이너 및...

자바 코볼 프로그래밍 2019.09.18

소프트웨어 개발을 쉽게 만드는 머신러닝 5종

머신러닝을 사용하는 개발자와 대화해 보면 어느 순간 AI 지원 애플리케이션과 툴을 만드는 데 필요한 것들, 예를 들면 텐서플로우(TensorFlow)나 파이토치(PyTorch), 사이킷런(Scikit-learn) 등으로 화제가 옮겨가곤 한다.   그러나 머신러닝이 소프트웨어 개발에 영향을 주는 또 다른 방식이 있다. 즉 프로그래밍을 더 쉽게 하고 생산성을 높이기 위해 머신러닝 기술을 사용하는 새로운 개발툴이다. 머신러닝을 개발 프로세스 내에 접목하려는 프로젝트 5개를 소개한다. 3개는 상용, 2개는 실험적 프로젝트다. 카이트 카이트(Kite)는 코드 완성 툴로, 대부분 주요 코드 편집기에서 사용할 수 있다. 머신러닝 기술을 이용해 타이핑할 때 코드를 자동으로 추가해준다. 카이트가 사용하는 머신러닝 모델은 깃허브에서 공개적으로 사용할 수 있는 코드를 이용해 만들었다. 주석 문법 트리를 추론해 모델의 기초로 활용한다. 카이트에 따르면 이런 과정을 통해 단순히 텍스트가 아니라 문맥과 코드의 의도를 파악한 후 자동 제안, 자동 완성 기능을 지원한다. 카이트는 현재 파이썬 개발자만 사용할 수 있다. 고 언어를 지원하는 작업이 진행 중이다. 그동안 윈도우와 맥OS 사용자만 사용할 수 있었지만 이제는 리눅스도 지원한다. 한편 카이트는 지난 2017년 오픈소스 커뮤니티 사이에서 논란이 된 바 있다. 사용자 데이터를 자사 서버로 전송하는 것과 아톰(Atom)용 자동완성 파이썬(autocomplete-python) 패키지의 관련 기능 수정에 대한 것이었다. 업체는 이후 이 두 가지 문제를 해결하기 위해 노력해 왔다. 카이트는 더는 사용자 코드를 클라우드 서버로 전송하지 않으며, 모든 작업을 로컬에서 처리한다고 주장한다. 자동완성 파이썬 패키지가 카이트의 재정지원을 받는다는 것을 명시적으로 밝히기도 했다. 코도타 코도타(Codota)는 얼핏 보면 카이트와 비슷하다. 자바와 코틀린 코드로 학습한 머신러닝 모델을 이용해 사용자가 입력할 때 이들 언어에 대한 자동완...

프로그래밍 인공지능 개발툴 2019.07.26

토픽 브리핑 | 현 시점에서 배워야 할 프로그래밍 언어들

세상을 움직이고 변화시키는 원동력은 다양하다. 하지만 이런 변화의 중심에는 항상 IT가 있었다. 오늘날 비즈니스 현업 사용자는 IT를 모르고서는 할 수 있는 업무는 그리 많지 않다. 과거에는 오피스 프로그램이나 자신의 업무와 관련된 시스템 정도만 이해해도 충분히 버틸만 했다. 하지만 최근에는 IT를 통해 데이터를 분석해 인사이트를 찾아내고, 새로운 비즈니스를 창출하고, 기업 경쟁력를 확보해야 한다.  개발자라면 자신의 무기를 확장하고, IT 관리자라면 자신의 경쟁력을 강화하며, 현업 사용자라면 현재 비즈니스를 위해 프로그래밍 언어를 배워야 할 때다. 자신이 개발자가 아니라면 ▲웹의 언어인 HTML, CSS, 자바스크립트 ▲차트와 시각화에 쓸모가 있는 R ▲기초 중의 기초인 C ▲자동화를 위한 배시 셸(Bash shell)를 배우는 것이 좋다.  현업 사용자의 경우, 자신은 이미 늦었다고 생각할지도 모른다. 하지만 뒤에서 소개할 인공지능, 사물 인터넷, 블록체인에서 인기있는 프로그래밍 언어의 대부분은 현재 개발 전문가조차도 학창 시절에는 들어보지도 못한 것들이다.  “미래를 생각하는 개발자를 위한” 지금 배워야 하는 프로그래밍 언어 인공지능과 관련이 있다면 배워야 할 프로그래밍 언어   인공지능(AI)은 애플리케이션 개발자에게 새롭게 열리는 가능성의 세계다. 머신러닝 또는 딥 러닝을 활용함으로써 훨씬 더 정밀한 사용자 프로필과 개인화, 추천이 가능하며, 스마트 검색, 음성 인터페이스 또는 지능적인 가상비서를 구현하거나 그 외의 다양한 방법으로 앱을 개선할 수 있다. 심지어 보고 듣고 반응하는 애플리케이션도 만들 수 있다.  이에 필요한 대표적인 프로그래밍 언어는 파이썬(Python)이다. 파이썬은 인공지능에 있어 탁월한 언어이며, 특히 파이썬의 라이브러리는 다른 언어에서는 따라올 수 없을 정도로 독보적이다.  넘파이(NumPy)는 워낙 보편적으로 사용되는 터라 텐서 연산에서 사실상 표준 API ...

개발 프로그래밍 인공지능 2019.07.05

파이썬 인기 '역대 최고 수준'··· "3~4년내 자바·C까지 제칠 것"

티오베(Tiobe) 프로그래밍 언어 인기 순위에서 파이썬이 역대 최고치를 기록했다. 티오베 측은 파이썬이 향후 3~4년 이내에 자바와 C를 제치고 1위로 뛰어오를 가능성이 있다고 분석했다. 6월 티오베 순위에서 파이썬은 8.53%로 지난해 12월 기록한 최고치인 8.376%를 다시 뛰어넘었다. 파이썬은 순위상으로는 자바와 C에 이어 여전히 3위다. 그러나 자바와 C가 제공하지 못하는 사용 편의성으로 새로 프로그래밍을 시작하는 사람들에게 인기를 끌고 있다고 티오베 측은 분석했다. 티오베는 사용자가 구글이나 야후, 빙 같은 검색 엔진에 프로그래밍 언어 관련 검색한 결과를 집계해 순위를 매긴다. 교육 과정 수, 숙련된 엔지니어 수, 관련 서드파티 업체의 수 등도 고려한다. 파이썬은 비슷한 인기 순위인 Pypl 인덱스에서는 이미 1위에 올랐다. Pypl 인덱스는 구글에 해당 언어 관련 검색을 얼마나 했는가를 기준으로 집계한다. 한편 6월 티오베 순위에서 또 하나 눈에 띄는 것은 애플 스위프트(Swift) 언어의 약진이다. 1.419%로 11위를 기록했다. 지난해 같은 기간 15위, 지난달에는 18위였다. 스위프트의 전신인 오브젝티브-C 언어는 이번 달에 1.391%로 12위에 이름을 올렸다. 티오베는 오브젝티브-C가 2년 이내에 20위권 밖으로 밀려날 것으로 전망했다. 이밖에 그루비(Groovy) 언어가 1.3%로 14위에 올랐다. 1년 전 60위에서 놀라운 속도로 순위가 오르고 있다. 티오베 측은 그루비가 젠킨스(Jenkins) CI 툴용 스크립트 작성 언어로 큰 인기를 끌고 있지만, 20위권 내에서 계속 순위를 유지할 수 있는지는 미지수라고 분석했다. 티오베 개발 언어 인기 순위 톱 10 (2019년 6월) 1. 자바 (15.004%) 2. C (13.3%) 3. 파이썬 (8.53%) 4. C++ (7.384%) 5. 비주얼 베이식 닷넷 (4.624%) 6. C# (4.483%) 7. 자바스크립트 (2.716%) 8. PHP (2.567%) 9. SQL...

프로그래밍 언어 파이썬 2019.06.12

"깃허브 CDN 통한 다운로드 지원"··· '깃허브 패키지 레지스트리' 출시

깃허브(GitHub)가 깃허브 패키지 레지스트리(GitHub Package Registry) 서비스를 새로 내놓았다. 깃허브와 통합된 패키지 관리 서비스로, 개발자가 소스코드와 함께 프라이빗 또는 퍼블릭 패키지를 공개할 수 있다. 현재 베타 릴리즈로 누구나 바로 사용할 수 있다.   깃허브 패키지 레지스트리는 깃허브의 전 세계 CDN을 통한 다운로드를 지원한다. 패키지를 비공개 혹은 공개로 호스트할 수 있고 프로젝트의 일부로 사용할 수도 있다. 깃허브와 통합해 사이트에서 퍼블릭 패키지를 찾거나 사용자가 속한 조직 내에서 프라이빗 패키지를 찾을 때 익숙한 깃허브 인터페이스를 이용할 수 있다. 코드와 패키지 관리에 사용자와 팀의 승인 기능을 넣을 수도 있다. 깃허브 패키지 레지스트리는 NPM, 메이븐(Maven), 누겟(NuGet)은 물론 도커 이미지 같은 패키지 관리 툴을 지원한다. 또한, 다양한 소프트웨어 패키지 타입도 단일 레지스트리에서 호스트할 수 있다. 코드와 CI, 깃허브 API와 통합된 배포 솔루션, 워크플로우 자동화 같은 깃허브 액션(Actions), 웹훅 등을 포함한 데브옵스 워크플로우를 만드는 것도 가능하다. 사용자는 패키지 내용을 보거나 통계와 버전 내역을 다운로드할 수도 있다. 사용자 리포의 리드미는 패키지 설명을 만드는 데 사용된다. 이 설명은 사용자가 패키지나 설치 과정에 대한 더 자세한 내용을 반영하기 위해 수정할 수 있다. 깃허브는 각 패키지 버전용 메타데이터를 추가했는데 여기에는 작성자와 리포지토리, 커밋 SHA, 버전 태그, 데이터 등에 대한 링크가 포함된다. 깃허브 패키지 레지스트리를 사용하려면 깃허브 홈페이지의 깃허브 패키지 레지스트리 베타 프로그램에 가입하면 된다. ciokr@idg.co.kr

프로그래밍 깃허브 개발자 2019.05.16

단순하지만 강력한 개발자의 신무기··· 파이썬 프로그래밍 기초 가이드 - IDG Deep Dive

파이썬은 배우고 사용하기 쉬운 언어로 알려져 있다. 언어 자체에서 지원하는 기능도 상대적으로 많지 않다. 자동화 스크립트를 작성하는 데 널리 쓰이는 것도 이 때문이다. 그러나 지난 몇 년 사이 파이썬은 소프트웨어 개발과 인프라 관리, 데이터 분석, 머신러닝 등 전방위로 확산하며 ‘대세’ 언어로 부상했다. 파이썬의 기본 특성부터 파이썬 초보자를 위한 프로그래밍 환경 설정 등 탄탄한 기본기를 갖추는 방법을 살펴본다. 최근 가장 주목받는 머신러닝에 파이썬을 사용하는 이유와 파이썬 언어의 미래도 전망해 본다. <주요 내용> Tech Guide 초보 파이썬 개발자를 위한 길라잡이 HowTo IDE 선택부터 라이브러리 설치까지 ‘흔들리지 않는’ 파이썬 기본기 갖추기 Tech Trend 머신러닝에 파이썬을 즐겨 쓰는 4가지 이유 Tech Interview 파이썬 창시자가 말하는 파이썬의 미래 

프로그래밍 파이썬 개발자 2018.09.12

모든 개발자가 알아야 할 15가지 API

거인의 어깨 위에 올라 앉아있었기에 더 멀리 바라 볼 수 있었다고 말한 사람이 아이작 뉴튼이었던가? API는 코드를 작성하는 사람들에게는 함축적이고, 풍자적인 인용구와 같은 것이다. API는 프로그래머들이 더 멀리 볼 수 있고 거인들의 어깨 위에 서있을 수 있게 해준다. 지난 10년간, 개발자 커뮤니티는 공개 API에 집착하게 되었으며, 공개 API의 개발은 계속 폭발적으로 증가하고 있다. 일부 개발자는 멋진 생각이 떠 올라서, 아주 훌륭한 코드를 작성했으며, 그 다음에는 우리가 그 코드를 원격지에서 실행할 수 있게 해주는 웹사이트를 개설함으로써 코드를 공개하기로 결정했다. 과거였다면, 도입 계약, 다운로드, 컴파일 문제, 그리고 거인의 어깨에 서기 위한 끝없는 고통의 시간이 있었을 것이다. 이제는 웹사이트에 몇 가지 JSON을 게시하기만 하면 순식간에 답을 얻을 수 있다. 기술적으로, 대부분의 라이선스 문제가 남아있기는 하지만, 이제는 그런 끝없는 문서에 서명하는 일이 계정을 만들고 버튼을 클릭하는 것으로 간단해졌다. 최초의 배치(Batch)는 대개 무료이며, 이는 개발은 물론이고 출시 초기 과정도 훨씬 간단하게 만들어준다. 테스트는 쉬우며 비용도 들지 않는다. 이 단계가 지나면, 비용에 각별한 주의를 기울여야 할 것이다. 다수 API의 가격은 아주 낮게 책정되어 있지만, 개발한 프로젝트가 입 소문이 나면, 이 작은 액수가 눈덩이처럼 불어날 수 있다. API는 끊임없이 변화하며 API에 대한 액세스가 결코 항구적이거나 완전히 보장되지 않는다는 점을 인식하는 것 역시 중요하다. 몇몇 영악한 사람들이 벤모(Venmo) 거래 내역(Transaction)이 종종 공개된다는 것을 알아내고, 명예스럽다고 할 수 없는 단어로 태그된 거래 내역을 훑어보고 싶어하는 사람들을 위한 바이스모(Vicemo) 웹사이트를 개설했다. 때로는 당혹스러운 이런 세부사항들이 대중들에게 공개되어야 할까? 누군가는 프라이버시 침해에 주의를 기울이고 있기를 바란다. ...

프로그래밍 트윌리오 링센트럴 2018.08.21

IDG 설문조사

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

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

Copyright © 2022 International Data Group. All rights reserved.