[Tech] AI가 해주는 코드리뷰 - CodeRabbit
·
ETC/ETC
Introduce최근에는 1인 프로젝트를 많이 진행하고 있다. 혼자 개발을 하다 보니 코드에서 놓치는 부분이 많다는 것을 실감하게 되었다.여러 사람과 함께 프로젝트를 진행할 경우, 코드리뷰를 통해 서로의 코드를 교차 검증하고, 클린코드나 컨벤션 같은 사소한 수정은 물론 소프트웨어 결함을 일으킬 수 있는 로직까지 찾아내고 보완할 수 있다.하지만 1인 개발 환경에서는 이러한 코드리뷰 과정을 거치기 어렵고, 여러 명이 함께 리뷰를 하더라도 시간이 많이 들고 리뷰의 정확도도 떨어질 수 있다.이러한 한계를 보완하고자, AI가 자동으로 코드리뷰를 수행하는 솔루션인 CodeRabbit 을 직접 경험해보고자 한다. 특징AI 기반 자동 코드리뷰PR(Pull Request) 생성 시, AI가 자동으로 코드 변경 사항을 분..
[Tech] 순수 프로그래밍 시간 측정(wakatime)
·
ETC/ETC
Introduce 최근 프로그래밍 공부를 하면서 부쩍 이전보다 집중력이 떨어졌음을 느꼈다. 그래서 아이폰의 스크린 타임처럼 수치적으로 내가 얼마나 집중하고 있는지 보여 줄 수 있으면 어느정도 목표치를 갖고 집중할 수 있겠다고 느꼈다. 그래서 알아보던 중 순수 프로그래밍 시간을 측정하는 wakatime 에 대해 알게 되었다. wakatime은 개발자의 코딩 시간을 자동으로 기록하고 시각화해주는 시간 추적 도구 이다. 동작 방식은 실제로 키보드 입력이나 마우스 활동이 있는 시간만을 기록 한다. 지정한 시간만큼 동작이 없으면 세션 종료로 간주하고 다시 동작이 발생하면 새로운 세션이 시작된다. 설치 방법은 매우 간단하며, 개발자들이 주로 사용하는 다양한 통합개발환경에서 지원한다. 추적된 시간은 Dashboard..
[ETC] YAML 문법 정리
·
ETC/ETC
YAML사람이 읽기 쉬운 데이터 직렬화 형식주로 설정 파일과 데이터 저장에 사용됨.  개요 YAML은 데이터 직렬화 포맷(data serialization formats)이다.YAML은 원래 "Yet Another Markup Language"의 약어로 시작되었으나 YAML의 주된 목적이 단순 마크업(MarkUp)이 아닌 데이터를 직렬화하는 것이 강조되면서 "YAML Ain't Markup Language"라는 재귀적 약어로 변경되었다.확장자는 .yaml 을 사용한다.  문법  1. 들여쓰기(Indent)YAML에서 들여쓰기는 기본적으로 2칸 또는 4칸을 지원함. (space Indent)Space Indent 기준으로 2칸을 표준적으로 가장 많이 씀.# 2칸 인덴트metadata: name: pyth..
[IoT] IoT Network - 통신기술에 관하여
·
ETC/IoT
본 글에서는 IoT Network와 관한 기술에 대해 기술한다. Zigbee (IEEE 802.15.4) - IEEE 802.15.4 무선 표준을 기반으로하는 저전력 무선 통신 기술 중 하나로, 센서 네트워크 및 자동화 제어 어플리케이션에서 사용되는 프로토콜 스택 및 네트워크 구성을 제공함. - 2.4GHz, 868MHz 및 915MHz 주파수 대역에서 작동함. - 네트워크는 Star, Mesh 및 Cluster Tree 구성을 지원하며, 최대 65,000개의 노드를 지원함. - 조명, HVAC (난방, 환기 및 공조), 보안 시스템, 홈 자동화, 센서 네트워크 등에서 다양한 응용 분야에서 사용됨. 저전력 및 저속도: 저전력 및 저속도 무선 통신 기술로, 높은 전력 소비가 필요하지 않으며, 작은 배터리로..
[NFT] 소유하고 있는 NFT를 소각하는 방법
·
ETC/BlockChain
본 게시글에서는 자신의 지갑에 소유하고 있는 NFT를 삭제(소각)하는 방법에 대해 알아본다. NFT를 소유하고 있는 소유자는 스캠, 불만족, 테스트용 NFT 등 모종의 이유에서 자신의 지갑에 있는 NFT를 삭제하고 싶은 경우가 발생할 수 있다. 자신이 소유하고 있는 NFT를 소각(burn)하고자 한다면 이용하고 있는 코인의 블랙홀 주소(또는 eater address)로 NFT를 보내면 된다. 본 블로그에서 NFT 테스트로 사용하고 있는 암호화페는 이더리움 테스트넷의 Goerli이다. goerli의 블랙홀주소는 "0x000000000000000000000000000000000000dEaD" 이다. NFT 마켓플레이스(OpenSea)또는 자신의 지갑에서 해당 주소로 발송하면 해당 NFT는 누구도 사용할 수 ..
[Git] 자주쓰는 깃 명령어 모음 (CLI)
·
ETC/ETC
프로젝트의 버전을 관리하고 개발자간에 협업을 위해 전체 개발 소스를 공유하기 위해 Git Repository를 위한 웹 기반 호스팅 서비스인 GitHub 또는 GitLab를 많이 사용한다. GitHub또는 GitLab에 업로드하기 위해 오픈 소스 버전 관리 시스템(VCS: Version Control System)인 Git을 사용하게 된다. 본 게시글에서는 필자가 자주 사용하는 git 명령어를 정리한다. 필자가 자주 쓰는 명령어를 정리하기 때문에 내용이 자세하지는 않다. 자세한 명령어에 대한 정보는 [Git 공식문서]를 참고한다. Git 저장소 생성(초기화) 1. git init git 저장소를 생성(초기화) 한다. $ git init Git 전역 옵션 설정 1. git config (git 설정) gi..
[NFT] Moralis NFT MarketPlace 구축 - Minting
·
ETC/BlockChain
이전 게시물에서 NFT를 등록할 수 있는 마켓플레이스를 구축했다. 본 게시물에서는 마켓플레이스에 NFT를 등록하게 위해 디지털 자산을 주조하는 행위인 Minting을 구현해본다. 구현에 앞서 해당 글에서 다루는 용어에 대해 간략하게 정리한다. 용어정리 Minting: 원래의 사전적 의미로 동전 또는 지페의 화페를 주조한다는 의미로 token이 대안화페를 의미하는 것을 착안하여 NFT를 생성하는 것을 민팅이라고 표현한다. ERC721: 이더리움 블록체인에서 대체 할 수 없거나 고유한 토큰을 작성하는 방법을 설명하는 무료 공개 표준이다. IPFS(InterPlanetary File System): 분산형 파일 시스템에 데이터를 저장하고 인터넷으로 공유하기 위한 프로토콜이다. 기존의 HTTP 방식은 데이터가 ..
[NFT] Moralis NFT MarketPlace 구축 - Ethereum NFT Boilerplate
·
ETC/BlockChain
앞서 암호화페 지갑, DApp Server 등 기초 준비사항을 마쳤다면 이제 이더리움 테스트넷에서 컨트랙트를 구현하고 해당 컨트렉트에 접근하여 인터렉션하거나 이벤트를 리스닝하여 DB형태로 저장하고 이를 프론트엔드로 조회하는 MarketPlace / DApp이 필요하다. 그러나 이러한 부분들을 직접 전부 구현하기에는 많은 시간이 소요되고 혼자 진행하기에 기술력도 부족한 실정이다. 이러한 제한사항을 극복하기 위해 본 프로젝트에서는 앞서 가입하여 생성한 모렐즈 프로토콜을 기반으로 여러 라이브러리를 사용한 Boilerplate를 내려받아 진행한다. Boilerplate Clone 아래 GitHub에서 Ethereum NFT Boilerplate를 Clone한다. https://github.com/ethereum..
[NFT] Moralis NFT MarketPlace 구축 - Node.JS
·
ETC/BlockChain
node.js 란 ? - 확장성 있는 네트워크 어플리케이션 개발에 사용되는 소프트웨어 플랫폼이다. - Chrome V8 JavaScript엔진으로 빌드된 JavaScript 런타임이다. - Non-Blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다. node.js에는 LTS ( Long Term Supported ) 버전과 Stable 버전 2가지가 있는데 본 프로젝트에서는 안정성 및 보안성을 고려하여 LTS 버전을 설치한다. 패키지 매니저 (npm / yarn) 1. 패키지 및 패키지 매니저 전 세계의 개발자들이 제작한 다양한 자바스크립트 코드를 npm 온라인 데이터베이스에 업로드하여 게시하며 공유하는데 이것을 프로그램 Package(패키지)라고 하며, 이러한 다양한..
[NFT] Moralis NFT MarketPlace 구축 - Moralis
·
ETC/BlockChain
Moralis 란 ? Moralis는 전통적으로 Web3 개발과 관련된 모든 번거로움을 처리하는 무한 확장 가능한 Web3 백엔드 인프라 제공업체이다. 본 프로젝트에서는 Moralis에서 제공하는 Server를 통해 토큰을 관리하는 DApp(탈 중앙화 분산 애플리케이션)을 만들 수 있다. Moralis 가입 아래 링크에서 Moralis에 가입한다. google 계정으로 연동하여 가입하면 된다. moralis Moralis Web3 | Enterprise-Grade Web3 APIs Moralis provides enterprise-grade Web3 APIs that connect any tech stack to blockchain networks. Our 24/7 worldwide support ens..