뎁스노트 / 프로젝트 관리

프로젝트 관리

닥터핸닥터핸· 1년전

macOS 26 “Tahoe”에서 Electron 기반 앱이 느려지는 문제

최근 macOS 26(Tahoe)로 업데이트한 사용자들 사이에서 Electron 기반 앱의 성능 저하 문제가 보고되고 있습니다.대표적으로 Cursor, Postman, Dropbox, Notion, Slack 등의 앱이 느려지거나 UI 반응이 둔해지는 현상이 나타나고 있습니다.🔍 문제의 원인이 문제는 macOS 자체의 변화라기보다 Electron 런타임의 호환성 이슈에서 비롯된 것으로 알려져 있습니다.Electron은 크로스 플랫폼 데스크톱 앱을 만들 때 사용하는 프레임워크로, Chromium과 Node.js 위에서 작동합니다.Tahoe 업데이트 이후 일부 Electron 버전(특히 v30 이하)에서 렌더링 성능 저하 및 UI 지연 현상이 발생하고 있으며, 이는 내부 그래픽 API나 윈도우 컴포지팅 방식의 변경과 관련이 있는 것으로 추정됩니다.🧩 해결 방법: Electron 패치 업데이트다행히도 문제를 해결할 수 있는 패치가 이미 Electron 측에서 배포되었습니다.즉, 앱 개발자가 Electron의 최신 버전(예: v31 이상)을 적용하여 다시 빌드하면 대부분의 성능 문제가 해결됩니다.하지만 일반 사용자는 이 패치를 직접 적용할 수 없습니다.각 앱의 개발자 또는 회사가 Electron 버전을 업데이트한 새 버전을 릴리즈해야만 문제가 해결됩니다.⏳ 현재 패치 상황 확인하기현재 어떤 앱이 패치를 적용했는지, 어떤 앱이 여전히 느린 상태인지 정리된 사이트가 있습니다:👉 https://avarayr.github.io/shamelectron/이 사이트는 macOS 26 “Tahoe” 환경에서 Electron 앱들의 패치 진행 상황을 실시간으로 추적합니다.예를 들어 “Fixed” 상태면 이미 해결된 앱, “Not fixed”면 아직 느려진 상태로 남아 있는 앱을 의미합니다.💬 개발자 입장에서의 불편함저 역시 개발자로서 현재 이 문제를 체감하고 있습니다.예를 들어 Cursor, Postman, Dropbox 같은 주요 개발 툴이 Electron 기반으로 만들어져 있는데, 이들 대부분이 아직 패치가 적용되지 않아 실행 속도가 평소보다 느리고 UI 반응이 버벅이는 상황입니다.이는 단순히 불편함을 넘어, 개발 생산성에도 영향을 주는 문제입니다.특히 Cursor처럼 코드 편집이나 AI 통합 기능이 포함된 앱은 GPU 렌더링 성능 저하의 영향을 크게 받습니다.🧠 결론macOS 26 “Tahoe”에서 Electron 기반 앱이 느려지는 현상은 일시적인 호환성 문제로,Electron 최신 버전으로의 업데이트를 통해 대부분 해결될 수 있습니다.하지만 사용자는 직접 이 문제를 해결할 수 없고, 각 앱 개발자들의 패치 릴리즈를 기다려야 하는 상황입니다.macOS “Tahoe” 사용자라면, 위 사이트(shamelectron)를 참고해사용하는 앱의 업데이트 여부를 수시로 확인해보시길 권장합니다.
1.7K
1
0
픽셀노마드픽셀노마드· 2년전

"이 파일 누가 짰지?" git-who로 팀 협업을 더 재밌고 스마트하게!

개발하다 보면 이런 순간이 자주 찾아옵니다."이 파일 누가 주로 만들었지?""이 서비스 모듈 담당자가 누군가요?""레거시 코드 좀 봐야 하는데, 누가 제일 많이 건드렸는지 궁금하네..."보통은 git blame 이나 git log, git shortlog 같은 Git의 공식 명령어를 사용하죠. 그런데 이 명령어들은 정보를 잘게 쪼개서 주기 때문에 '딱 이 파일에 누가 가장 기여했는지 한눈에 보기 어렵습니다.이럴 때!오늘 소개할 git-who가 큰 도움이 됩니다.바로, 파일에 대한 주요 기여자를 퍼센트로 보여주는 작은 CLI 툴입니다.🚩 git blame vs git-who 차이점git blame은 파일의 각 줄마다 누가 작성했는지를 확인할 수 있는 Git의 공식 명령어입니다. 주로 문제가 발생한 코드에서 "이 줄은 누가 썼을까?"를 확인할 때 사용합니다.반면, git-who는 파일 전체에서 누가 몇 퍼센트나 기여했는지를 비율로 보여주는 도구입니다.쉽게 말해 git blame이 라인 단위로 세세하게 추적하는 것이라면, git-who는 파일 전체의 기여도를 요약해서 보여주는 도구입니다.git blame은 라인별로 작성자를 하나하나 확인할 때 사용하고,git-who는 파일 또는 디렉토리 단위로 주요 기여자와 그 비율을 한눈에 파악할 때 유용합니다.팀에서는 git-who를 활용해 담당자 파악, 코드 리뷰어 추천, 레거시 코드의 책임자 확인 등 다양한 상황에서 쉽게 사용할 수 있습니다.🤔 git blame은 이런 한계가 있어요예를 들어 git blame user_service.py를 하면 이렇게 나옵니다.e5f6a8d1 (Alice 2024-03-19 15:22:10 +0900 1) def get_user(): f67a1bc9 (Bob 2024-03-19 15:23:01 +0900 2) return self.user_id라인별 작성자는 잘 보이지만,"그럼 Alice가 이 파일에 몇 퍼센트나 기여했을까?"를 바로 확인할 수는 없습니다. 직접 손으로 카운트해야 하죠.🏆 그래서 등장한 git-whogit-who는 Python으로 작성된 오픈소스 CLI 도구로, git blame을 내부적으로 실행한 뒤 작성자별로 라인 수를 집계해서 퍼센트로 보여줍니다.사용법은 매우 간단합니다git who user_service.py출력 결과70% Alice 30% Bob와우! 파일의 주요 기여자 비율을 한 번에 확인할 수 있네요.🧩 git-who 실제 활용 꿀팁 5가지1. 코드 리뷰 담당자 추천git who를 통해 가장 많은 기여를 한 사람을 코드 리뷰어로 지정하면 자연스럽게 "내가 많이 짠 코드"를 리뷰하게 되어 품질도 올라갑니다.2. 레거시 코드 관리 지표특정 파일에 누군가 90% 이상 기여했다면? 이 사람만 아는 코드일 가능성이 큽니다.빠르게 지식 공유를 해야 할 타이밍!3. 온보딩 가이드신규 팀원이 "이 모듈 누가 담당했나요?" 물어볼 때, git who 결과를 보여주며 담당자를 객관적으로 소개할 수 있습니다.4. 리팩토링 협의리팩토링 대상 파일에서 상위 기여자 리스트를 뽑아, 사전 협의 및 기술 부채(Tech Debt) 공유를 효율적으로 할 수 있습니다.5. 팀 이벤트에도 활용 가능"누가 이 파일의 지배자인가?"팀 내에서 파일별로 기여도가 가장 높은 사람을 뽑아 개발자 시상식 같은 재미 요소로도 활용 가능!💡 git-who 한계와 커스터마이징 팁📌 문제: 작성자 이름이 잘려요기본 git-who는 John Doe 이름에서 John만 가져오는 이슈가 있습니다.이유는 단순 split 로직 때문입니다.🔧 해결: 정규식으로 보완하기import re for line in blame_output.split("\n"): match = re.search(r'\((.*?)\s+\d{4}-', line) if match: author = match.group(1) authors.append(author) John Doe → John Doe로 제대로 파싱됩니다.⚙️ CI/CD에 자동화로 붙이기 (GitHub Actions + Slack)팀에서 PR이 올라올 때마다 자동으로 주요 기여자를 분석하고 Slack으로 알림까지 할 수 있습니다.예시 Workflowname: Git Who Check on: pull_request: types: [opened, synchronize] jobs: git-who-check: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Set up Python uses: actions/setup-python@v4 with: python-version: '3.x' - name: Install git-who dependencies run: pip install -r requirements.txt - name: Run git-who on changed files run: | for file in $(git diff --name-only origin/main); do echo "Analyzing $file" git who "$file" >> who_report.txt || true done - name: Notify to Slack uses: slackapi/slack-github-action@v1.24.0 with: payload: | { "text": "🔍 *Git-Who Report for PR #${{ github.event.pull_request.number }}*\n```$(cat who_report.txt)```" } env: SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}Slack 결과 예시:🔍 Git-Who Report for PR #42 services/payment.py 55% Alice 45% Bob models/order.py 80% Charlie 20% Alice✨ 활용 아이디어 확장danger.js로 PR 코멘트 자동 등록git who 결과를 기반으로 리뷰어 자동 태그 봇 제작팀 내 "이달의 마스터 파일" 선정 이벤트🚀 마무리: git-who는 작지만 강력한 도구입니다!git blame의 아쉬운 부분을 채워주는 git-who.리뷰 문화, 코드 관리, 협업을 더 효율적이고 재밌게 만들어줄 수 있습니다.이제 더 이상 "누가 짰지?"를 고민하지 마세요!
1.5K
1
0
sonaki84sonaki84· 2년전

GitHub Copilot이 무료로 제공됩니다!

GitHub은 2024년 12월 18일부로 GitHub Copilot을 무료로 제공한다고 발표했습니다. 이제 AI의 도움을 받아 더 효율적으로 코드를 작성할 수 있는 도구를 무료로 이용할 수 있습니다. GitHub Copilot이란 무엇인가요? GitHub Copilot은 AI 기반의 코드 자동 완성 도구로, 개발자가 코드를 작성할 때 실시간으로 다음에 올 코드를 제안해줍니다. 이를 통해 생산성을 높이고 반복적인 작업을 줄일 수 있습니다. 어떻게 무료로 이용할 수 있나요? GitHub Copilot은 GitHub 계정만 있으면 무료로 활성화할 수 있습니다. GitHub에 로그인하세요. 계정 설정(Settings)으로 이동한 후 Copilot 활성화를 클릭하세요. 간단한 설정 완료 후 바로 사용할 수 있습니다. 어떤 기능을 제공하나요? 코드 자동 완성: 함수나 메서드를 작성할 때, Copilot이 다음에 올 코드를 제안합니다. 자연어 처리: 주석이나 설명을 작성하면, 해당 내용에 맞는 코드를 자동 생성합니다. 다양한 언어 지원: Python, JavaScript, TypeScript, Ruby, Go 등 다양한 프로그래밍 언어를 지원합니다. 예시 코드 예를 들어, Python에서 두 수의 합을 구하는 함수를 작성하려고 할 때: def add_two_numbers(a, b): return a + b 위와 같이 함수 이름과 매개변수를 작성하면, Copilot이 자동으로 return a + b 부분을 제안해줍니다. 이런 식으로 간단한 작업부터 복잡한 알고리즘 작성까지 Copilot이 유용한 도움을 제공합니다. 개발자에게 좋은 점 효율성: 반복적인 작업을 줄이고 더 창의적인 부분에 집중할 수 있습니다. 학습 지원: 코드를 작성하면서 새로운 기술을 배울 수 있습니다. 생산성 향상: 더 빠르고 정확하게 코드를 작성할 수 있습니다. GitHub Copilot의 무료 제공은 개발자 커뮤니티에 큰 변화를 가져올 것 같아요. AI의 도움을 받아 더 창의적인 작업에 집중하며, 반복적인 작업은 Copilot에 맡기시길!
653
1
1
0
닥터핸
닥터핸·2024-12-20
Copilot을 무료로 쓸 수 있다니, 정말 반가운 소식!

질문gitlab restore 이슈

gitlab에 문제가 있어 삭제 후 같은 버젼으로 새로 설치 한 뒤 백업파일로 복원을 시도하는 중 특정 repository 에서 fail과 동시에 복구프로세스가 종료됩니다..  백업용량사이즈크기를 보면 코드가 다 들어있는것같은데 말이죠..  왜이럴까요.. 아니면 백업파일(tar) 를 압축풀면  repository/프로젝트이름.bundle 파일들이 있는데 이걸로 복구 가능한가요..?
1.8K
1
1
0
닥터핸
닥터핸·2023-04-27
해당 에러 메시지는 GitLab에서 복원 프로세스를 수행하던 중 일부 파일을 찾지 못해서 발생한 것 같습니다. 이 문제가 어디에서 발생하는지 정확히 파악하기 위해서는 로그 파일을 살펴봐야 할 것 같습니다.   참고로 백업 파일의 용량이 크다고 해서 코드가 모두 들어있다는 것은 아닙니다. 백업 파일에는 저장소에 포함된 커밋, 브...
JadeLeeJadeLee· 4년전

GIT을 웹상으로 테스트 하며 연습해볼수 있는 사이트 입니다.

Learn Git Branching An interactive Git visualization tool to educate and challenge! learngitbranching.js.org 기본 적인 커밋 부터 시작해서 브랜치 생성 및 리베이스 까지 웹상으로 설명과 함께 명령어를 연습해볼 수 있는 사이트 입니다.  
2.3K
3
0
judejude· 5년전

질문부디 알려주세요~~;

안녕하세요. 유니티3d게임을 만들기위해 바닥생성하고 캐릭터를 생성하고 캐릭터를 움직이기위해  조이스틱을 구현하려 캔버스를 생성했는데 칸버스의 오른쪽 끝이 바닥정중앙에서부터 왼쪽으로 크게 생성 되어 있습니다. 그래서 인지 조이스틱이미지를 넣어도 게임화면에서는 보이지를 않습니다. 부디 고수님들의 조언 부탁드립니다.ㅜㅜ  
1.6K
1
1
0
케이플
케이플·2023-04-27
캔버스의 크기와 조이스틱 이미지의 위치 설정 등을 확인해 보셔야 할 것 같습니다. 일단 캔버스의 크기가 바닥과 일치하는지 확인해 보세요. 만약 캔버스가 바닥보다 작다면, 캔버스가 작은 영역에 이미지를 렌더링하게 되어 이미지가 원하는 위치에 나타나지 않을 수 있습니다.   또한 조이스틱 이미지의 위치가 캔버스 내부의 맞...
yj23124yj23124· 5년전

질문초보 Git 사용법 질문드립니다ㅠㅠ

git 사용법 질문드립니다. 아래 사진과 같이 "feat: Success ~" 을 커밋-푸시 했다가 전의 커밋인 "Making main activity ..." 로 다시 checkout 해서 되돌아간 뒤 새로 "feat: Tidy up item_post" 를 커밋하였습니다.   여기서 github으로 푸시하고 싶은데 git Everything up-to-date 라고 뜨고 github에는 연동이 되질 않습니다.. 혹시 어떻게 해야 할까요? revert, reset 모두 아닌 것 같은데 했다가 데이터 날라갈까봐 두려워서 제대로 시도도 못하겠습니다ㅠㅠㅠ  
1.7K
2
1
0
Dam2
Dam2·2022-03-31
편하게사용하실거면 소스트리 쓰시고   커밋 되돌리려면 reset 이나 revert  커밋취소  하셔야합니다..   https://codevang.tistory.com/227
닥터핸닥터핸· 5년전

맥에서 Bitbucket에 push할 때 You are using an account password for Git over HTTPS 메시지 보일 때

Always seenig a mesage 'Using an account password for Git over HTTPS' After every push I see this message in my terminal on Mac: " You are using an account password for Git over HTTPS. Beginning March 1, 2022, users are required to use app passwords remote: for Git over HTTPS. To avoid any disruptions, change the password used in your Git client remote: to an app pass... community.atlassian.com I have MacOS, I connect to BitBucket over HTTPS. I did not have GCM. This is how I solved the problem: 1. Install GCM: brew tap microsoft/git brew install --cask git-credential-manager-core See details:  https://docs.github.com/en/get-started/getting-started-with-git/caching-your-github-credentials-in-git 2. Create BitBucket app password.  See steps: https://bitbucket.org/blog/deprecating-atlassian-account-password-for-bitbucket-api-and-git-activity 3.  When I push first time, GCM asked my password. And I did not see the remote message anymore   위 설정 후 git push 하면 Atlassian 로그인 창이 뜸. 이 때 패스워드 부분에 위에서 생성한 App Password를 입력하여 로그인하면 됨.
2.0K
1
0
도비도비· 5년전

질문bitnami wampstack MarieaDB와 Apache 서비스 완전 제거

비트나미 wampstack에 설치 파일 중에 있던 uninstaller.exe로 제거를 했는데 MarieaDB랑 Apache 서비스가 안 지워졌습니다. 그래서 다시 깔면 남아있는 서비스를 이용하는 줄 알았는데 오히려 서비스가 2개가 되었어요...    명령 프로프트 키고 httpd.exe 파일경로에서 httpd.exe -k uninstall도 해봤고 httpd.exe -k uninstall -n wampstackApache도 해봤는데 제거가 안됩니다. 어떻게해야 지울 수 있을까요? ㅠㅠㅠ
5.3K
1
0
윈비
윈비·2021-09-30
WAMPStack을 제거한 후에 윈도우를 재부팅하면 아파치와 MySQL 서비스가 중지됩니다만 서비스에는 남아있을 수 있습니다. 이 상태에서 서비스를 제거하고자 한다면 먼저 명령 프롬프트를 관리자 권한으로 실행한 후 아래와 같이 서비스 이름과 함께 sc delete 명령어를 실행하면 서비스에서 삭제됩니다. sc delete "wampstackApac...
에노바리아에노바리아· 5년전

질문혹시 Charles Proxy 사용하시는 분 계신가요?

업무 중 Charles Proxy 사용 중 인데 어느 날 부터 갑자기 프록시 실행 시 PC 인터넷 먹통되며 And, iOS로 프록시 연결되지 않는 상태가 지속되네요   현재는 다른 팀원이 프록시 켜주면 그거 이용중이긴 한데 언제까지 그럴 수 도 없고   삭제 후 재설치해도 동일하고...   혹시 해결 방법 아시는 분 계신가요?
3.0K
3
0
피토니
피토니·2021-09-28
먼저 Charles Proxy를 정상적으로 재시작했는지 확인해보세요. 비정상 종료한 경우 아래와 같이 프록시 설정을 수동으로 처리해야할 수 있습니다.   윈도우 / 인터넷 익스플로러 Charles를 종료한 다음 다음 제어판에서 인터넷 옵션으로 이동합니다. 연결 탭으로 이동합니다. LAN 설정을 클릭합니다. 프록시 패널이 ...
에노바리아
에노바리아·2021-09-28
제 기억으론 10일까지 잘 이용하다가 13일 출근 후 부터 저랬던 것 같아요