Dev

Dev

2020 인하대학교 프로그래밍 경진대회(IUPC)

12월 말, 친구에게 제 6회 인하대학교 프로그래밍 경진대회(IUPC)가 개최된다는 소식을 접했다. 2학년을 다니던 2019년에는 실력의 부족과 대회 참여에 대한 막연한 두려움으로 IUPC에 참가하지 않았는데, 도전해보지도 않고 포기해 후회가 남았었다. 이번 대회는 코로나-19로 인해 온라인 방식으로 개최되고, 재학생 뿐만 아니라 휴학생도 참가할 수 있었다. 덕분에 나와 마찬가지로 군인 신분이었던 친구 역시 참가한다고 했다. 비록 현재는 알고리즘을 접한 지 1년이 넘어 실력이 오히려 더 떨어졌지만, 좋은 경험이 될 것 같아 참가하고 싶다는 생각이 들었다. 대회에 참가하려면 팀을 구성해야 했는데, 운 좋게도 친한 형 한 명과 나와 마찬가지로 군 복무중인 친구를 설득해 팀을 구성했다. 우리 셋 모두 실력이 ..

Dev

국방오픈소스아카데미 - 2020 군장병 공개SW 역량강화교육, 그 도전을 마치며

국방오픈소스아카데미를 알게 된 이후, 집체교육에 참여하기 위해 열심히 달려왔다. 강의 오픈 후 한 달이 넘은 늦은 시점에 이 프로그램에 대해 알게 되었지만, 꾸준한 공부를 통해 집체교육 참여조건인 필수과정 강의들을 모두 이수할 수 있었다. 또, 이 교육 프로그램에 같이 도전하기로 한 친구와 이야기를 나누었고, 둘 다 흥미가 있던 분야인 Cloud 분야에 도전하기로 결정했다. Cloud 분야가 Web, App, IoT에 비해 내용이 생소해 우수자 선발 과정에서는 불리하겠지만, 관심 분야의 학습 그 자체에 의의를 두고 싶었기 때문이다. 그리고 현재, 나는 Cloud 개발과정 3개의 강의 중 첫 번째 강의까지 이수했다. 강의 마감까지는 약 2주 정도 남았고, 지금처럼 꾸준히 공부를 진행한다면 Cloud 강의들..

Dev

국방오픈소스아카데미 - Cloud 01 : 클라우드 컴퓨팅 기초개념과 기반기술

이번에는 개발과정 - Cloud의 3개의 강의 중 첫번째로, 클라우드 컴퓨팅의 기초개념과 기반기술에 대해 학습했다. 강의는 클라우드 컴퓨팅의 개념, 가상화, 컨테이너와 Docker, 오픈스택 등의 내용으로 구성되었다. 강의를 통해 관심이 있었던 클라우드 컴퓨팅에 대해 배울 수 있어 좋았다. 클라우드 컴퓨팅, 엣지 컴퓨팅 환경에 필수적인 '가상화' 개념과, 구글이 우수성을 인정하고 적극 활용하고 있다는 Docker와 같은 내용이 흥미로웠다. 특히 Docker 부분에서는 리눅스 기반 OS에서 여러 Docker들을 구현하고 각각의 Docker에 다른 커널들을 설치했는데, 터미널에서의 커맨드 입력을 통해 실제로 가상의 Docker들에 다른 커널이 설치되어 있다는 것을 확인할 수 있어 신기했다. 하지만 어려움도 ..

Dev

국방오픈소스아카데미 - 기술트렌드

국방오픈소스아카데미의 필수과정 중 '기술트렌드' 카테고리는 '5G', '로보틱스', '블록체인', '엣지컴퓨팅', '자율주행'의 '5개의 과목으로 구성되어 있다. 이전에 들었던 과목들보다는 분량이 훨씬 적어 5개 과목을 모두 이수하고 한 번에 글을 적게 되었다. 5개의 과목은 카데고리 제목에서 알 수 있듯이, 현 시점 '트렌디'한 기술들에 대한 강의였다. 하나의 카데고리로 묶여있지만. 강의마다 강사와 강의 진행 방식이 다 달라 강의마다 내가 받은 느낌도 꽤 달랐다. 첫 번째 과목은 '5G'였다. 5G는 일반인들도 통신사들의 활발한 광고 덕분에 많이 접한 기술이라고 할 수 있지만, 실제로 5G 기술이 무엇인지에 대해서는 잘 모르는 경우가 많았다. 나 역시 대략적으로는 알고 있었지만, 5G 기술에 대해 더 ..

Dev

국방오픈소스아카데미 - 개방형OS 기본과정/고급과정

이번 강의는 개방형OS, 즉 리눅스 커널 기반 OS에 대한 내용이었다. 기본과정과 고급과정으로 나뉘어 있었는데, 실제로는 하나의 강의라고 봐도 무방했다. 강의는 개방형OS가 무엇인지, 일반적으로 한국에서 가장 많이 사용되는 OS, 폐쇄형OS의 대표주자인 Windows와의 차이점에는 무엇이 있는지, Linux의 개발 과정과 역사와 같은 기본적인 배경 지식부터 시작되었다. 그 과정에서 정확히 '커널'이 무엇을 의미하는지, 그리고 구조적으로 Linux 기반의 개방형OS와 폐쇄형OS의 차이점이 무엇인지, 커널의 종류에 따른 차이점이 무엇인지 등을 스스로 검색하면서 알아보기도 했다. Linux/GNU 기반의 다양한 프로젝트들인 우분투, 레드햇, 데비안 등에 대한 이야기도 있었는데, 리눅스를 기반으로 수많은 사람들..

Dev

국방오픈소스아카데미 - Git/Github 입문

국방오픈소스아카데미 두 번째 필수과정인 'Git/Github 입문' 강의를 이수했다. 개인적으로 강의에 매우 만족했다. 이전에 생활코딩을 통해 Github에 대해 간단히 배웠고, 추후 GITn 시리즈를 통해 Git에 대해 더 학습하고 싶다고 생각했었는데, 이 강의가 Git에 대한 나의 갈증을 완벽히 해소해주었다. 강의는 실습 위주 방식이었다. 우선 강의를 듣기 위해 Git 프로그램을 설치했고, 제공된 파일들을 다운로드했다. 이후 강의를 들으며 파일들을 로컬 저장소에 저장하고, Git bash 프로그램을 통해 add, commit, push 명령어를 통해 원격 저장소에 업로드했다. Git의 작동 원리를 커맨드를 직접 입력하고 Github 원격 저장소의 인터페이스를 통해서도 확인할 수 있었다. 또 단순히 G..

Dev

국방오픈소스아카데미 - 공개SW 활용 및 참여

국방오픈소스아카데미의 2020 군장병 공개 SW 역량강화교육의 한 과목인 '공개SW 활용 및 참여' 강의를 모두 들었다. 집체교육 선발 신청을 하기 위해 들어야 하는 필수 과목 중 첫 번째 과목이었다. 이 강의의 제목에서 말하는 '공개SW'는, 일반적으로 개발자들이 '오픈소스 소프트웨어'라고 부른다. 강의에서는 오픈소스의 개념부터 시작해서 소프트웨어 개발 방법론, 현업에서의 오픈소스 개발 이야기, 오픈소스 프로젝트에 직접 참여하고 커뮤니티를 활용하는 방법 등을 소개한다. '오픈소스'에 대해선 정말 대략적으로 알고 있었는데, 사실 오픈소스 개발은 프로그래밍 능력이 엄청 뛰어난 사람들만 참여하는 것이라는 생각을 가지고 있었다. 그러나 이 강의를 통해 오픈소스에 대해 배우며 나의 고정관념이 틀린 것이라는 사실..

Dev

국방오픈소스아카데미 - 2020 군장병 공개SW 역량강화교육

최근 나는 계속 Web2 - Node.js 강의를 듣고 있었다. 오늘도 평소처럼 싸지방 컴퓨터를 키고 공부 환경을 세팅하려고 하고 있었다. 그런데, 웹브라우저 홈페이지였던 나라사랑포털에 뜬 팝업이 나의 흥미를 끌었다. 글의 제목에서 본 것 처럼, '국방오픈소스아카데미 - 2020 군장병 공개 SW 역량강화교육' 이라는 내용이었다. 팝업을 클릭해 국방오픈소스아카데미 홈페이지에 접속했다. 국방오픈소스아카데미 osam.kr 어떤 프로그램인지 궁금해 홈페이지의 공지사항과 글들을 훑어보았는데, 너무 매력적인 교육 프로그램이었다. 6월 15일부터 이미 프로그램이 시작되었고, 공지는 그 전부터 올라와 있었는데, '왜 이 프로그램을 이제야 알았을까'라는 생각까지 들었다. 프로그램 진행 방식은 '온라인교육' - '성적 ..

Dev

WEB2 - Domain Name System / WEB2 - HTTP

JavaScript와 CSS 강의를 통해 웹 프로그래밍의 기초를 학습했다. 다음으로 바로 Node.js 수업으로 넘어갈까 했지만, 생활코딩 WEBn 모듈에 어떤 다른 강의들이 있는지 살펴보던 중, 두 강의가 눈에 띄었다. Web2 - Domain Name System과 Web2 - HTTP이다. 두 강의 모두 분량이 많지도 않았고, 웹 프로그래밍의 기초 지식을 쌓는 데 도움이 될 것 같아 Node.js보다 먼저 들어보기로 결정했다. 두 강의 중 먼저 들었던 강의는 Domain Name System이다. 직접 hyositive.com이라는 도메인을 구매해 블로그에 적용했지만, 사실 정확한 도메인의 개념에 대해 몰랐었다. 때문에 도메인을 티스토리 블로그에 적용할 때 원리도 몰랐었고, 도메인 구매 대행업체의 ..

Dev

WEB2 - JavaScript / WEB2 - CSS

Web1 - HTML & Internet 완강 후 바로 Web2 - JavaScript 강의를 듣기 시작했다. 다음 강의라 확실히 Web1보다는 수준이 있었는데, 코딩을 많이 접해본 나에게 어려운 수준은 아니었다. 조건문, 반복문, 배열, 함수 등 학교를 다닐 때 배웠던 내용들을 자바스크립트를 통해 구현해볼 수 있었다. 또 HTML만을 이용해 만들었던 웹은 정적이었지만, JavaScript를 적용해 유저가 직접 변화를 줄 수 있는 동적인 웹으로 변화했기에 더욱 재밌었다. 강의 분량이 Web1보다 꽤 길었는데, 몰입해 듣다보니 금방 끝났다. 여담으로, 이 수업을 통해 "HTML은 프로그래밍 언어가 아니다"라는 말의 정확한 이유를 배우기도 했다. 다음 강의로는 Web2 - CSS를 선택했다. 장기적 목표였던..

HYOSITIVE
'Dev' 카테고리의 글 목록 (3 Page)