About Me

저에 대해

저는 유닉스/리눅스 시스템 관리, 자동화 스크립트, Docker   Incus, Go 언어 패키지 개발(Tcl/Tk 9.0)에 관심 있습니다. 현재 Java와 C#을 배우고 있습니다.

관심 분야

  • 유닉스/리눅스 시스템 관리
  • C언어를 활용한 시스템 제어
  • TCP/IP 계층에서의 다양한 네트워크 관리
  • 자동화 스크립트
  • Docker   Incus
  • Go 언어 (Tcl/Tk 9.0)
  • Java (학습 중)
  • C# (학습 중)
  • Ruby (학습 중)

연락처


이메일: gg582@naver.com 또는 gzblues61@daum.net

주요 프로젝트


DeltaEdit - 비 유니코드 CJK 텍스트 편집기

DeltaEdit은 유닉스 계열 운영 체제에서 CJK(중국어, 일본어, 한국어) 언어를 위해 특별히 설계된 경량 비 유니코드 텍스트 편집기입니다. 문제 해결 플랫폼 통합을 위한 내부 브라우저 탭, 스마트 자동 들여쓰기 기능, 구문 강조 지원 및 단일 파일의 올인원 구현을 제공합니다.

YoonZIP - EUC-KR ZIP 관리자

YoonZIP은 한국의 Windows 종속적인 생태계에 따라 발생하는 Unicode, EUC-KR 호환성 문제에 대해 쉽게 해결하기 위한 방안으로 고안된 PyZipper 기반 압축/압축 해제 프로그램입니다. 일반적인 데스크톱 기준 1MB * 2000개의 랜덤 파일을 압축한 ZIP을 해제할 때 3-5초 정도 소요되며, Recursive Folder 복원 역시 지원합니다. 암호화 ZIP은 PyCrypto를 지원하고 실패 시 AES ZIP으로 fallback 처리됩니다.

SSH-Chatter - 현대적인 PC통신

SSH-Chatter는 SSH/TELNET을 이용해 현대적이고 즉각적인 통신을 빌려온 21세기판 PC통신을 구현합니다. 이것은 사진이나 눈이 아픈 광고 없이 정말 채팅만을 하고, 게시물만을 읽고 쓸 수 있으며, 모든 소스는 C23으로 작성되었습니다. 메모리 누수 없이 5만 여줄이 유사한 코드 스타일로 관리되어 있으며, 1달 간 개발 후 패치 및 보수 중입니다. chat.korokorok.com으로 SSH 2222번(권장), TELNET 예비 포트는 2323번으로 접속해 주세요.

IncuSpeed - Incus 컨테이너 원격 관리자

이 프로그램은 지정된 서버 주소의 Incus 클러스터에 RestAPI를 통해 간접 접근해서 컨테이너의 간단한 관리를 지원합니다. Miney 프로토타입과 달리 포트 등의 정보를 안전하게 관리하고 있으며, 다양한 배포판의 Fresh Installation 환경을 제공하는 확장된 서비스입니다. Goroutine 동시성 제어를 통해 성능 역시 향상시켰으며 Kivy 클라이언트는 KivyMD 스타일 적용, Window 매니저를 통한 창 리디렉션 관리 등을 적용한 형태입니다. 또한, 이것의 경우 main.go와 모듈을 분리한 형태로 제작되어 유지/보수가 용이합니다/

remoteCarFromMonet - 연구실 프로젝트 시스템 백엔드

이 시스템 백엔드는 연구실에 있을 때 교수님과 선배들과의 회의를 통해 백엔드 구조를 설계하고(구조 설계 주도자는 당시 학부생 4학년이었던 김경빈 졸업생께서 하셨습니다) 실제 구현체는 제가 총괄하게 된 프로젝트입니다. 디바이스 드라이버 구조 설계와 패킷 경로 등은 교수님의 지도 하에 제가 추가적으로 정제를 시도하였습니다. 자동 디플로이를 위한 스크립트가 다수 비중을 차지하는데, 웹 풀스택과 프로젝트 추상 구조 전반을 담당하신 김경빈 선배님이 작업하신 분량은 제 프로젝트와 별개라서 누락되었습니다. 추후 시간이 있다면 해당 웹서버를 재구현해볼 생각이나 아직은 구현되지 않은 상태입니다.

survivedCode
OfProbono2022

이것은 2022년 킨텍스에서 진행된 창의적종합설계경진대회 코드 중 유일하게 유실되지 않은 프로토타입입니다. 완전한 코드는 아니나 이것의 완성본은 5위로 동상을 수상했습니다.

Espresso Archiver: RLE 변형 난독화 프로그램

Espresso Zip은 파일을 비트 수와 나열 순서로 나누는 아이디어에서 출발한 RLE(Run-Length Encoding) 변형 난독화 프로그램입니다. 간단하지만 효과적인 난독화, 가볍고 빠른 처리 속도, 쉬운 이해도를 제공합니다.

Miney (Prototype, Ubuntu 22.04)

Miney는 마인크래프트 서버 관리 서비스입니다. LXD 포트를 생성/삭제하고 응답을 통해 포트 및 정보를 얻을 수 있습니다. Go 언어로 작성된 백엔드 애플리케이션과 Python으로 작성된 프론트엔드 애플리케이션으로 구성됩니다.

Baekjoon 문제 풀이 저장소

이 저장소는 백준 온라인 저지에서 해결한 문제들을 자동으로 푸시하는 저장소입니다. 다양한 프로그래밍 언어로 작성된 문제 풀이 코드를 확인할 수 있습니다.

Go Tcl/Tk 9.0 바인딩

Go 언어에서 Tcl/Tk 9.0 위젯을 사용할 수 있도록 바인딩하는 프로젝트입니다. 리스트 박스, 이미지 뷰어 등 다양한 위젯을 지원하며, 테마 변경 기능도 제공합니다. 그 중 리스트박스, 트리뷰의 경우 제가 새롭게 구현한 바인딩이며, 몇 가지 Public Raw 함수 호출들과 ttk::entry의 내용을 쉽게 가져오기 위한 Get 메서드 역시 제가 작성하였습니다. 최근 upstream이 발전했습니다. 그것을 사용해 주세요.

Raspberry Pi Raspbot

이것은 remoteCarFromMonet에 있었던 Device Driver 작성 부분만 따로 추려서 미니 프로젝트로 6.x 커널에 맞게 재작성한 토이 프로젝트입니다. 간단한 디바이스 드라이버와 그를 이용한 장애물 회피 알고리즘이 내장되어 있습니다. Raspberry Pi 4와 그 revision에 알맞는 Yahboom 4WD 키트가 필요합니다.

RIOTOSMiniCar
Implementation

RiotOS의 GPIO 컨트롤 기능을 이용한 간단한 장애물 회피 로직입니다. 사용된 키트는 IFLine의 라인트레이서 저가 키트 중 하나였으나 현재는 단종되었습니다. 진행 중인 프로젝트

Cwist: C로 만드는 웹 프레임워크

이것은 C로도 스프링이나, 모던 C++ 웹개발 등을 따라갈 수 있다는 생각에서 천천히 진행 중입니다.

GoBus: Go로 만드는 쉬운 DBus Wrapper

이것은 궁극적으로 D-Foot에서 보이는 모든 요소들에 대한 간편화를 목표로 하나, 현재 개발 인력이 혼자 뿐입니다. 활발한 기여를 해 주세요. (gosuda/gobus)

기여 및 연락

저의 프로젝트에 기여하고 싶다면 언제든지 환영합니다! 저장소를 포크하고 새로운 브랜치를 만들어 기능을 추가하거나 버그를 수정하고, 풀 리퀘스트를 보내주세요. 질문, 제안 또는 피드백이 있다면 언제든지 저에게 연락해주세요.