github 14

Github Copilot 사용 방법 및 후기

GitHub Copilot은 GitHub와 OpenAI가 공동으로 개발한 인공지능 기반 코드 작성 도구이다. 이 도구는 프로그래머가 코드를 작성할 때 실시간으로 코드 제안을 제공하며, 자연어로 작성된 설명을 코드로 변환해 주기도 한다. 이를 통해 개발자는 더 빠르고 효율적으로 코드를 작성할 수 있으며, 반복적인 코딩 작업을 줄이고 창의적인 문제 해결에 더 많은 시간을 할애할 수 있다. Copilot은 Visual Studio Code와 같은 IDE(통합 개발 환경)에서 사용 가능하며, 다양한 프로그래밍 언어를 지원한다.비용Copilot 개인 사용자 요금은 한달에 10달러이고 30일 무료체험이 가능하다. 이후 정기 구독을 통해 계속 사용할 수 있다. 이외에도 회사에서 구독해서 회사의 SSO와 연결하여 사용..

Development 2024.06.17

Yocto (OpenEmbedded) 의존성 관리

Yocto 프로젝트에서 의존성 관리하는 방법과 의존성을 쉽게 추출하여 볼 수 있는 도구가 있어 간단히 소개하고자 한다. 의존성 (Dependency) 관리 의존성에는 크게 런타임 의존성과 빌드타임 의존성이 있다. 말 그대로 런타임 의존성은 실제 시스템 동작시 필요한 의존성이다. 예를 들면 시스템에서 실행 중 A라는애플리케이션에서 버튼을 눌러 특정 동작을 하라고 명령을 내리면 IPC를 통해 다른 프로세스로 실행중인 B라는서비스의 API를 실행할 A 애플리케이션은 B 서비스에 런타임 의존성을 가진다고 할 수 있다. 빌드 타임 의존성은 빌드 과정중에 필요한 의존성으로 빌드할 때 필요한 라이브러리가 그 하나의 예가 될 수 있다. Yocto에서는 각 레시피에서 DEPENDS와 RDEPENDS 변수를 통해 빌드타임..

Yocto 2023.09.22

gitlab workflow

요즘 Jenkins 재부팅 하는 주기가 늘어나고 있다. 이유는 Jenkins 메모리를 거의 Full로 사용한다는 것이고 그 중에 하나가 forked repo라고 한다. 솔직히 직접 들어가서 보진 않았고 이해는 가지 않았지만 다양한 이슈로 인해 Infra 팀에서 forked repo 사용을 지양해 달라고 요청이 왔다. Forked repo를 지양해달라는 이유로는 다음과 같다 Jenkins 에 부하가 많이 걸림 (Scan Issue) Gitlab 저장 공간 낭비 Supplier간에 접근 제어 문제 유지 보수 문제 (forked repo의 configuration 문제로 자주 문의가 옴, 특히 등록 안된 사용자가 commit을 한 경우) 어제 gitlab company의 PM들과 현재 문제점에 대해서 미팅을 ..

Development 2023.05.25

차량용 소프트웨어 개발 환경 2부

이 글에서는 차량용 IVI 소프트웨어 개발 환경에 대해서 이야기하고자 한다. ELCE 2019에 필자가 제출했고 리젝되었던 제목과 초록은 아래와 같다. Software development process with CI/CD in embedded linux using Yocto Project Yocto Project uses lots of embedded linux products such as consumer electronics, automotive industries, and others. The software development process is different depended on company. According to the process, speed and product quality ..

Automotive 2023.04.21

[도서 리뷰] 인간다운 Git

오늘 배송받아서 읽어본 인간다운 Git 을 읽고 간단한 후기를 적어본다. 처음 서문과 옮긴의 글을 읽고 Git의 철학 및 기본 사상에 대해서 소개하는 책인줄 알았다. 약간 신선하게 접근한 책이라고 생각했었다. 결론은 반반이다. 기존의 책들에 비해 서술하는 내용이 많아 좀 지루할 수는 있지만, 그래도 처음 시작하는 독자들에게 나름 설명하려고 노력한 책같다. 기본 개념에 대한 설명이기 때문에 특별히 고급 기법이나 어려운 명령어, 내용들은 없었다. 좋았던 점은 처음 시작하는 독자를 위해 설치부터해서 완전 기본 개념에 대해 장문의 글로 서술한 책이지만, 그렇다 보니 필자가 좋아하는 그림으로 설명하는 부분이 적어 개념 이해하는데 약간 부족한 부분도 없지 않아 있었다. Git에 좀 익숙한 독자들은 교양서로 간단히 ..

Book 2023.04.21

Heading for the yocto project (Yocto 프로젝트를 처음 시작하는 개발자들을 위한 오픈 소스 책)

Yocto 프로젝트를 처음 시작하는 독자들을 위한 50 page 정도의 입문서가 오픈 소스로 github, https://github.com/CollaborativeWritersHub/heading-for-the-yocto-project에서 작업되고 있다 https://github.com/CollaborativeWritersHub/heading-for-the-yocto-project/releases 에 가보면 첫번째 버전을 볼 수 있고 아주 기초적인 내용들을 볼 수 있다. 안타깝지만 영어로 되어 있고, 곧 필자가 시간이 되면 번역하여 한국어판으로도 github에서 볼 수 있게 할 예정이다. 이 책은 Yocto 프로젝트의 기술적인 내용보다는 Yocto 프로젝트가 무엇이며 프로젝트에 적용하면 어떤 점이 좋고..

Yocto 2023.04.21

github python API (PyGithub)

PyGithub는 Github API를 Python에서 쉽게 호출하여 사용할 수 있게 만든 모듈이다. 설치는 $ pip install PyGithub로 간단하게 설치가 가능하다. Example Github API 사용을 위한 token을 생성하는 방법은 github 사이트에 접속해서 settings에 들어가면 아래와 같은 메뉴에서 진행하면된다. 다음은 private 저장소를 특정 조직에 생성하는 예제이다. #!/usr/bin/python from github import Github git = Github('chbae', 'token key 입력') org = git.get_organization('조직 입력') org.create_repo('저장소 이름', private=True) for repo in..

Development 2023.04.21

[도서 리뷰] GitHub Essentials

GitHub Essentials (소프트웨어 개발에 GitHub 활용하기) 도서를 읽고 간단한 생각을 적어본다. 결론적으로, GitHub가 어떤 기능을 지원하고 기본적인 사용은 어떻게 하는지에 대해서 알고 싶은 개발자라면 선택적으로 빌려서(?) 볼 수 있을만한 책인 것 같다. 구매 추천하지는 않는다. 전체적으로 기능에 대해서는 그림으로 쉽게 나열은 했지만, 실제 찾아서 해보려고 하니 초보자가 쉽게 따라갈 수 있을 정도로 표현되어 있지는 않다. 살짝 애매한 수준이다. 도서 사이트에서 설명하는 책 내용은 아래와 같다. 이 책의 대상 독자 Git에 대한 기본적인 지식을 갖고 있는 숙련된 개발자나 초보 개발자를 대상으로 한다. 트위터, 구글, 또는 GitHub 같은 대규모 프로젝트에 대해 배우고 코드 협력 방법..

Book 2023.04.20

AGL (Automotive Grade Linux)와 GENIVI 간단한 소개 및 Contribution하는 방법

ELC 2017에서 발표된 차량용 오픈 소스 AGL (Automotive Grade Linux)와 GENIVI에 대한 간략한 소개 와 기여 방법 자료가 있어 공유하고자 한다. AGL은 형상관리, CI, issue tracking 시스템으로 각각 git/gerrit, jenkins, jira를 사용하고 GENIVI는 github, go.cd, jira를 사용한다. 기본적으로 git에 대한 사용법을 알고 code review 시스템으로 gerrit 과 github까지 학습하면 오픈소스에서 많이 사용하는 형상관리 시스템을 어느정도 익혔다고 볼 수도 있다. https://www.slideshare.net/slideshow/embed_code/key/LFWNLp4psk5jA8 Contributing to Auto..

Development 2023.04.20

(도서) 소셜 코딩으로 이끄는 GitHub 실천 기술

github 관련된 여러가지 도서를 보다가 목차를 보고 필자에게 적합하다고 판단되는 책을 선택한 것이 이 책이다. 『소셜 코딩으로 이끄는 GITHUB 실천 기술』은 많은 개발자가 사용하고 있는 GITHUB를 실무에서 어떻게 사용하는지 설명하는 책이다. GITHUB의 기본적인 사용 방법부터 GITHUB를 활용한 개발 진행 과정과 개발을 지원해 주는 추가적인 도구들도 함께 설명하고 있다. git에 대해 지식이 있는 사람은 가볍게 읽을 수 있는 좋은 책인 것 같다. 또한 개발 경험은 있지만 git에 대한 경험이 없는 사람에게도 유용한 책인 것 같다. 이 책에서 git에 대해서 간단한 설명은 하지만, 프로 git과 같은 다른 책을 통해 조금 더 많은 지식을 쌓는 것을 추천한다. 전반적으로 내용 구성은 git에 ..

Book 2023.04.19