Working Copy는 iOS용 Git 클라이언트입니다. iPhone과 iPad에서 Git 리포지토리를 클론, 편집, 커밋, 푸시할 수 있는 앱을 찾던 중에 알게 된 앱입니다. 코드 편집기로 활용도 가능하기 때문에 repository를 클론 해둔 상태에서 간단한 코드 수정을 하는 용도로도 종종 활용하게 됩니다. 코드를 읽거나 편집하는 기능만으로도 다른 앱에 비해 좋다보니 단순히 코드를 보는 용도로도 많이 사용합니다. 요즘들어서는 git을 활용한 자동화를 실험중인데 ios shortcut을 지원해주는게 너무 좋습니다. 전 무료 기능을 1년이상 사용하다가 유료 결제를 했는데 한번 결제하면 평생 사용 가능하기 때문에 큰 부담은 되지 않았던 것 같습니다. 학생들을 위해 GitHub Student Develop..
지난 포스팅에서 소개했던 파이썬으로 이미지를 생성하는 코드입니다.이 코드는 현재 디렉토리의 .txt 파일 이름을 이용해 최대 3줄로 줄바꿈한 텍스트를 포함하는 128x128 크기의 검은색 썸네일 이미지를 생성하고, 이를 thumbnails 폴더에 저장합니다. 텍스트는 흰색으로 중앙에 배치되며, 텍스트 크기는 이미지에 맞도록 조정됩니다.이미지 생성에는 PIL이라는 라이브러리를 사용합니다.코드 실행 시 폴더에 이미 해당 이름의 이미지 파일이 있다면 새로 생성하지 않고 넘어갑니다. 최종적으로, .txt 파일마다 해당 텍스트가 표시된 썸네일이 저장되는 구조로 작동합니다.import osfrom PIL import Image, ImageDraw, ImageFont# Define the path for the th..
Intro이전에 Github Actions로 여러가지 자동화를 할 수 있는 것을 이야기 했는데 구체적인 예시를 소개하고자 합니다.Text 파일 업로드를 하면 해당 텍스트 파일을 기준으로 이미지를 생성해서 업로드 하는 Workflow입니다. 이번 포스팅에서는 각 줄을 좀 더 자세히 하나하나 설명을 적어보았습니다.작동방식텍스트 파일을 깃허브 레포에 커밋하면 파이썬 코드가, 해당 텍스트파일을 가지고 이미지를 만들도록 할 것입니다.어떻게 되는지 한번 보여드리겠습니다.아래 처럼 텍스트 파일을 만들어서 Push 하면.. Github Action이 돌아갑니다. 이미지 파일이 만들어집니다.조금 긴 텍스트는 잘리네요. 하지만 파이썬 코드를 수정해야 할 것 같은데 이번에는 넘어가겠습니다.파이썬 코드이 코드는 현재 디렉토리..
프론트엔드 개발을 하면서 가장 귀찮은 일 중 하나가 UI 코드를 짜는 것이다. 기능만 동작하게끔 화면에 아무렇게나 구현하라고 하면 쉽겠지만 대부분 실제 사용자의 경험과 디자인 컨셉 등을 반영하다 보면 만들기 까다로운 화면은 존재한다. 사실 꼭 고난도의 화면이 아니라도 같은 디자인 컨셉으로 매일 만드는 화면인데도 교묘하게 다른 구성요소 여백차이를 일일히 보면서 만드는게 지겨운 일이다. AI를 코딩에 활용하는 것은 이제 새롭지 않을 정도로 널리 활용되고 있다. Cursor 라는 IDE를 메인으로 쓰고 있고 gpt, claud도 유료 플랜을 구독하며 활용중이다. 사실 나는 Claud보다는 GPT를 주로 사용해왔는데 이번에 클로드를 써보고 나서 깜짝 놀랐다. 개발중인 앱 스크린샷을 클로드에 그냥 넣었더니 그대로..
Intro깃허브 액션으로 특정 작업을 등록해두면, 원하는 순간에 작업을 실행하도록 할 수 있습니다.보통은 push가 발생할때, pr이 등록될 때, tag가 올라올 때 등 이벤트를 기준으로 작업을 실행하는 것을 많이 활용하는데요.이번 포스팅에서는 특별한 이벤트가 없어도 주기적으로 작업을 실행하는 방법을 소개해보려고 합니다.이 방법으로 주기적으로 실행이 필요한 작업을 github actions를 활용해서 자동화하는데에 활용할 수 있습니다.주기적으로 업데이트 확인하기, 크롤링이나 데이터 수집, 로그 정리 등에 활용할 수 있습니다.crontab이란?crontab은 특정 시간에 특정 명령어를 실행하는 규칙을 설정합니다. crontab 을 사용하면 원하는 시간에 작업을 실행하게 할 수 있습니다.주로 시스템 관리나 ..
유사이미지 검색에 대해서 한번에 다 다룰 자신은 없지만 조금씩 정리해보려고 합니다.유사 이미지 검색의 개념유사 이미지 검색은 사용자가 입력한 이미지와 시각적으로 유사한 이미지를 데이터베이스에서 찾아주는 기술입니다. 이는 전통적인 텍스트 기반 검색과 달리, 이미지의 색상, 형태, 질감 등 시각적 특징을 분석하여 유사도를 판단합니다. 예를 들어, 사용자가 특정 상품의 이미지를 입력하면, 해당 상품과 유사한 디자인이나 색상의 다른 상품 이미지를 추천해주는 방식입니다.유사 이미지 검색의 원리와 작동 방식유사 이미지 검색은 주로 다음과 같은 단계로 이루어집니다.특징 추출: 입력된 이미지에서 색상, 형태, 질감 등의 시각적 특징을 추출합니다. 이를 위해 딥러닝 기반의 신경망 모델이 주로 사용됩니다.임베딩 생성: 추..
Streamlit이란?얼마전 AWS의 워크샵에 참여하면서 Streamlit을 처음 알게되었다. Streamlit은 Python 기반의 웹 애플리케이션 프레임워크로, 데이터를 시각화하거나, 머신러닝 모델을 공유하거나, 데이터 분석용 대시보드를 쉽게 만들 수 있게 도와주는 도구이다. 특히, Python 코드로만 웹 애플리케이션을 개발할 수 있는게 특징이다. html, javascript 를 전혀 작성하지 않아도 웹 어플리케이션이 뚝딱 만들어진다.Streamlit의 가장 큰 장점은 간결하고 직관적인 문법인데 Python으로 간단한 코드만 작성하면 대화형 웹 애플리케이션이 만들어진다. 코드를 수정할 때마다 실시간으로 애플리케이션이 업데이트되기 때문에, 개발 중간에도 결과를 바로바로 확인할 수 있다.UI 요소(버..
영상 편집을 할수 있는 방법은 여러가지가 있는데리액트 코드로 영상을 편집할 수 있는 remotion이라는 것을 알게 되어서 사용해 보았다. https://www.remotion.dev/웹서버를 실행하고 코드를 수정하면 프리뷰에 반영되어 보인다. 타임라인 등의 동작이 깔끔하게 동작한다. 하지만 개발문서를 읽어가면서 수정할 부분이 존재하고, 웹 개발에 능숙한 사람이 아니라면 다루기 쉽지는 않을 것 같다.코드로 영상을 단독으로 만드는 것은 일반적으로 활용하는 방법은 아니다 보니 활용 사례가 많이 알려져 있지는 않다. 그래서 내 나름대로 장점을 정리 할 수 있을 것 같다.1. 영상 편집 프로그램으로 만들 때는 굉장히 까다로운 스타일의 영상이 코드로는 쉽게 만들 수 있다. 인트로나 자막 특수효과 등을 삽입할 때 ..
항해플러스에 대한 회고는 몇 차례 작성한 적이 있지만 한 코스를 모두 마치는 현시점을 기준으로 종합적인 소감을 작성해본다. 회고는 많이 할수록 좋다고 생각.항해 플러스를 선택하기까지항해플러스 백엔드 과정을 수료한지 1년이 지나지 않아서 프론트엔드 과정이 새로 열린다고 해서 지원하고 시작한지 벌써 10주가 지나 모든 과정이 끝났다. 당시에 나는 3년정도의 경력자였지만 백엔드 개발 경험이 없었고 관련 지식이 거의 없는 상태였다. 백엔드 코스에서 경험했던 성장 경험을 본래 포지션인 프론트엔드 에서도 경험하고 싶었기에 망설임 없이 지원을 하게 되었다. 항해 플러스를 처음 지원하기 전의 상태는 개발자로서의 내 존재에 대해 막막한 상태였던 것 같다. 단순히 실력이 좋고 나쁜걸 떠나서, 내가 잘 하고 있는지 자체가 ..
키 바인딩의 필요성맥OS에서 Home키와 End키의 바인딩이 다른 OS와 차이가 있어서 이를 교정하는데 도움이 됩니다. 필요에 따라서 캡스락 키를 컨트롤로 바꾼다든지... 등 조합이 가능합니다. 저의 경우에는 키보드 왼쪽 상단의 ₩키가 backtick(으로 입력 되기를 원했습니다. 원래 이 키는 영어일때는 백틱, 한글인 경우에는 원 기호를 표시하는데 저는 원 기호보다 백틱을 훨씬 많이 쓰기 때문에 ₩를 ‘로 입력되게 하는 설정을 추가했습니다. 방법키 바인딩에 대한 설정을 저장하는 파일이 있는데, 해당 파일을 수정하면 바인딩이 저장됩니다. (여기서 유저는 OS의 로그인 유저를 말한다.)경로 ~/Library/KeyBindings/DefaultKeyBinding.dict 를 수정하면(없는경우 생성) 해당 유..