본문 바로가기

반응형

분류 전체보기

(427)
[Zapier] 노션글 자동으로 슬랙 보내기 (feat. 자동화) 노션에서 항목이 추가되는 경우 해당 항목을 슬랙으로 보내고자 했다. https://zapier.com가입 및 로그인 후 create나 기본적으로 생성된 프로젝트를 클릭하자1. 생성 create 2. 설정2-1. 노션 연결trigger를 클릭하여 노션 클릭Trigger event - new Database Item 클릭Account - Notion 계정 연결ContinueConfiguredatabase 선택 (오랜만에 해서 잘 기억이 안나는데.. 노션에서 미리 zapier를 추가해놨어야했던것 같기도하고.. 기억이 안난다..)Test 해서 올라가있는 데이터가 조회 되는지 보자2-2. 프로그램 만들기 (내용 만들기)내용을 가공하지 않아도 되면 이 부분은 pass 해도 된다.나 같은 경우 타이틀을 가져와서 노..
[Mobile] 모바일 웹 디버깅 하기 (feat. android / windows) 무선 디버깅 기준 모바일 웹 디버깅 하기 1. Android 디버그 브리지(adb) 설치 (윈도우)https://developer.android.com/tools/releases/platform-tools?hl=ko다운로드 > 압출풀기 > 환경변수(경로) 등록 2. 핸드폰 개발자 옵션 활성화 (핸드폰)핸드폰 마다 조금씩 경로나 이름이 다를 수 있습니다.설정 > 시스템 > 휴대전화 정보 > 빌드번호 (여러번 클릭) > 개발자 옵션 활성화 3. 디버깅 모드 활성화 (핸드폰)핸드폰 마다 조금씩 경로나 이름이 다를 수 있습니다.설정 > 개발자 옵션 > 디버깅 모드 활성화 > 무선 디버깅 활성화 4. adb pair (모바일/윈도우)(핸드폰) 무선 디버깅 클릭 > 페어링 클릭(윈도우) cmd > adb pair ..
[Python] 예외 체이닝: 더 나은 디버깅을 위한 예외 처리 전략 Python의 예외 처리를 조금 더 구조적이고 추적 가능하게 만들기 위한 방법 중 하나가 바로 **예외 체이닝(exception chaining)**입니다. 이 글에서는 raise ... from ... 문법의 동작 원리와 장점에 대해 설명합니다.문제 상황: 예외 원인 추적 불가def parse_token(token): raise ValueError("Invalid token format")def authenticate(token): try: parse_token(token) except ValueError: raise RuntimeError("인증 실패")authenticate("abc")결과:RuntimeError: 인증 실패예외 메시지에는 "인증 실패"만 출..
[SQLAlchemy] ORM 성능 최적화: Lazy Loading vs Eager Loading (feat. 로딩 전략) SQLAlchemy ORM의 로딩 전략 옵션에 대해 알아보자.이 개념은 단순한 옵션 차이를 넘어, 쿼리 성능, 데이터 처리 효율, N+1 문제 발생 여부에 직결된다. - Lazy Loading, Eager Loading 이란?- 실무 예제- 두 방식의 차이- 언제 어떤 방식으로 써야하는가? Lazy Loading이란? (필요할 때 실행)Lazy Loading은 관계가 설정된 객체를 접근할 때마다 별도로 SELECT 쿼리를 실행하는 방식입니다.예제 모델class Author(Base): __tablename__ = 'author' id = Column(Integer, primary_key=True) books = relationship("Book", backref="author")clas..
[SQLAlchemy] 같은 테이블을 참조하는 방법 (Self-Referential Join) 같은 테이블 내에서 다른 레코드를 참조해야 하는 경우가 종종 있습니다.예를 들어, 사용자(user)와 관리자가 모두 동일한 member 테이블에 저장되는 경우, 각 사용자는 관리자 ID를 외래키로 참조하고 있을 수 있습니다.이러한 구조에서 SQLAlchemy를 통해 자기 참조(joining the same table) 를 수행할 때는 몇 가지 주의할 점이 있습니다.기본 테이블 구조예제에서는 관리자가 있는 member 테이블을 사용합니다. 각 member는 선택적으로 admin_id를 가지고 있으며, 이는 같은 테이블 내 다른 member를 참조합니다.from sqlalchemy import Column, Integer, ForeignKeyfrom sqlalchemy.orm import relationsh..
[SQLAlchemy] 윈도우 함수 orm으로 사용 https://docs.sqlalchemy.org/en/20/tutorial/data_select.html#using-window-functions Using SELECT Statements — SQLAlchemy 2.0 Documentation docs.sqlalchemy.orgstmt = ( select( func.row_number().over(partition_by=user_table.c.name), user_table.c.name, address_table.c.email_address, ) .select_from(user_table) .join(address_table))with engine.connect() as conn: r..
[Web] 다른 사이트들의 평균 JS 크기 확인하기 (feat. 웹 서비스 성능 분석) https://httparchive.org/reports/state-of-javascript?start=earliest&end=latest&view=list HTTP Archive: State of JavaScriptJavaScript powers the modern web, enabling rich and interactive web applications. In this report we dive into how JavaScript is used on the web, and its adoption and trends both for mobile and desktop experiences.httparchive.org
[Web] 2025.4.22, 구글, 크롬 브라우저 쿠키 삭제 계획 포기 (feat. 쿠키 리스) https://privacysandbox.com/news/privacy-sandbox-next-steps/ Next steps for Privacy Sandbox and tracking protections in ChromeIn this April 2025 announcement, the Privacy Sandbox team shares next steps for Privacy Sandbox and tracking protections in Chrome.privacysandbox.com 결론: Chrome에서 사용자에게 타사 쿠키 선택권을 제공하는 현재 방식을 유지하기로 결정했으며, 타사 쿠키에 대한 새로운 독립형 프롬프트를 출시하지 않을 것입니다. 사용자는 Chrome의 개인정보 보호 및 보안 설정에서..

반응형