11월, 2024의 게시물 표시

저항으로 정전기 방지 도구 만들기

저항 두개에 빨대랑 나사로 막대 만들어서 사용  https://youtu.be/tPHUAaoHv04?si=zRR-lXBTuWmmeZ5l 실제 파는 거 뜯어보는 영상 150k옴정도 저항들어있네 1m옴 들어있는거도 있고 저항이 8개가 붙어 있는 것도 있다. https://youtu.be/QZHZ0J9THXE?si=B4wW2bU0kAMnc-Ny 정전기로 전구의 불을 밝힐 수 있다? / YTN 사이언스 포일 플라스틱 통으로 정전기 모아서 전구 밝히기 https://youtu.be/UQBRMC0D8t0?si=Jl7WcbY5NAMCFXjA [친절한 차누쌤] 정전기 컵 만들기 포일 플라스틱 컵으로 정전기 모으기 https://youtu.be/U5tjwLmy-EU?si=LOct-lG9zD9MWamE

markdown으로 변환

chatgpt copy가 더이상 결과물을 markdown으로 주지 않는다 변환기가 있을텐데 싶어서 찾아보니 여기서 하면 된다.  https://euangoddard.github.io/clipboard2markdown/

닷컴(.com) 도메인 인기가 많은 이유

 닷컴(.com) 도메인은 가장 널리 알려진 도메인 확장자로, 여러 가지 이유로 인기가 많습니다: 1. **신뢰성과 인지도**: .com은 인터넷 초창기부터 사용된 대표적인 도메인으로, 사용자들에게 신뢰성을 주고 기억하기 쉽습니다. 대부분의 사람들이 .com을 기본 도메인으로 떠올리기 때문에 쉽게 찾아갈 수 있죠. 2. **상업적 사용의 대표성**: .com은 "commercial"의 약자에서 비롯되었으며, 상업적 웹사이트에 가장 많이 사용됩니다. 이 때문에 기업, 쇼핑몰, 서비스업체 등이 상업적 활동을 목적으로 .com을 선호합니다. 3. **글로벌 인지도**: 특정 국가나 산업에 국한되지 않고 전 세계적으로 사용되기 때문에 글로벌 사이트나 다국적 기업에게 인기가 많습니다. 4. **브랜딩 가치**: .com 도메인을 가진 사이트는 더 공식적이고 전문적으로 보이는 경향이 있습니다. 이는 브랜드 가치를 높이는 데 유리하죠. 같은 이름의 도메인이라도 .com과 다른 확장자(.net, .org 등)와 비교했을 때 더 권위적으로 여겨지는 경우가 많습니다. 5. **검색 엔진의 우선 순위**: 꼭 모든 경우에 해당하지는 않지만, 종종 .com 도메인은 다른 도메인에 비해 검색 엔진에서 약간의 우위를 가지는 경우가 있습니다. 물론 이런 이유로 .com 도메인의 수요가 높아져 좋은 이름을 찾기가 어렵기도 하지만, 여전히 브랜드와 사이트의 신뢰성을 강화하는 데 있어 많은 사람들이 선호하고 있습니다.

before을 b4라고 쓰는 걸 봤다

 신기하군

handwriting recognition

  손글씨 데이터 불려주는 도구 https://github.com/Belval/TextRecognitionDataGenerator mnist 랑 tesorflow js로 그리면 동시에 숫자 구분해 주는 예제 https://mco-mnist-draw-rwpxka3zaa-ue.a.run.app/

jupyter 에러 Notebook 000.ipynb is not trusted

 jupyter 에러  Notebook 000.ipynb is not trusted 갑자기 이렇게 뜨면서 노트북창이 까맣게 에러나면서 안나오는 것이었다.  Notebook 000.ipynb is not trusted 해결법을 찾아서 jupyter trust 0000.ipynb 를했는데 해결이 안되는 것이었다.. 보니까 디버그 로그 무한루프 걸려서 돌아가는거를 로그 읽다가 까먹어서 계속 로그 출력되고 파일 크기가 너무 커져서 브라우저에서 꺼져버린 것이었다.. 주피터 파일이 너무 커서 브라우저는 안열리고 vscode에서는 열리더라 vscode가 더 가볍나? 열어서 출력문 삭제하고 다시 저장해줘서 해결했다

blogger xml cors에러 해결

blogger xml cors 에러 해결  jsonp로 해결 https://stackoverflow.com/questions/72380204/blogger-feed-posts-showing-cors-error-on-different-site

js 리스트 부분으로 가져오기 slice splice

 JavaScript에는 `sublist`라는 메서드는 없지만, 비슷한 기능을 하는 메서드인 **`slice`**와 **`splice`**가 있습니다. 이 두 메서드는 배열의 일부를 추출하거나 수정하는 데 유용하며, 사용 방식에 따라 원하는 부분 배열(서브리스트)을 얻을 수 있어요. ### 1. `slice` - `slice`는 배열의 일부를 추출하여 새로운 배열을 반환합니다. - 원본 배열에는 영향을 주지 않습니다. ```javascript const list = [1, 2, 3, 4, 5]; const sublist = list.slice(1, 4); // 인덱스 1부터 3까지 추출 (4는 포함되지 않음) console.log(sublist); // [2, 3, 4] console.log(list);    // [1, 2, 3, 4, 5] (원본 배열 유지) ``` ### 2. `splice` - `splice`는 배열의 특정 부분을 제거하거나 새로운 요소를 추가해 원본 배열을 수정합니다. - 일부 요소를 제거하여 서브리스트처럼 사용할 수 있습니다. ```javascript const list = [1, 2, 3, 4, 5]; const sublist = list.splice(1, 3); // 인덱스 1부터 3개의 요소를 제거하고 반환 console.log(sublist); // [2, 3, 4] console.log(list);    // [1, 5] (원본 배열이 수정됨) ``` 이 두 메서드의 차이점은 **`slice`는 원본 배열을 수정하지 않고, `splice`는 원본 배열을 수정**한다는 점이에요. `slice`는 서브리스트를 생성하기에 적합하고, `splice`는 배열에서 특정 요소를 제거하거나 추가할 때 유용합니다. # 이름 뜻 JavaScript의 `slice`와 `splice` 함수 이름은 각각의 기능을 잘 반영하는 단어로, 배열의 일부를 "잘라내는" 방식과 관련이 있습니다. ### 1. `sli...

pypi 2fa

 pypi 패키지 배포하려면 2fa two factor authentication이 필수다 설정에서 계정 설정에서  일단 리커버리 방법을 생성하는데 recovery code를 생성해서 다운받고 그 중 하나를 넣어서 인증한다  Add 2FA with authentication application 으로 나는 아이폰 앱으로 했는데. 아이폰 암호 앱에서 할 수 있다 굳이 다른거 안깔아도 됨. qr 스캔해서 자동으로 코드 입력하고 아이폰에서 여섯자리 숫자코드 나오는거 인증하면됨. 이거 하면 이제 로그인할때 숫자코드 입력해줘야함

PEP 440 : Python 패키지의 버전 관리 표준

 **PEP 440**은 Python 패키지의 **버전 관리 표준**을 정의하여, 패키지 버전을 일관성 있게 관리할 수 있도록 돕습니다. PyPI나 `pip` 등 Python 생태계에서 버전을 자동으로 인식하고 처리할 수 있게 하는 기준이기 때문에, **패키지를 배포할 때 PEP 440을 따르면 호환성과 유지보수 측면에서 좋습니다.** ### PEP 440의 주요 규칙 요약 1. **기본 형식**: `X.Y.Z` 형식(예: `1.0.0`)    - **`X`**: Major (주 버전) - 큰 변화나 호환성 깨짐이 발생할 때.    - **`Y`**: Minor (부 버전) - 기능 추가와 같이 호환되는 변경이 있을 때.    - **`Z`**: Patch (수정 버전) - 작은 수정이나 버그 수정을 할 때. 2. **사전 릴리스 버전**: 알파, 베타, 릴리스 후보 등    - **알파**: `X.YaN` (예: `1.0a1`)    - **베타**: `X.YbN` (예: `1.0b1`)    - **릴리스 후보**: `X.YrcN` (예: `1.0rc1`)    - 숫자 `N`은 해당 단계에서 몇 번째 사전 릴리스인지 표시합니다. 3. **포스트 릴리스**: `X.Y.postN` 형식    - 배포 후 문서 업데이트 같은 추가 변경을 포함할 때 사용합니다. 4. **개발 릴리스**: `X.Y.devN` 형식    - 아직 정식 릴리스 전인 개발 버전을 나타내며, 개발 단계에서 사용합니다. 5. **로컬 버전 식별자**: `+`를 사용해 로컬 환경에서만 사용하는 버전 표시 가능    - 예: `1.0.0+local.1` ### 버전 예시 - **1.0.0**: 기본 릴리스 - **1.1.0a1**: 1.1의 첫 알파 버전 - **2.0.0rc1**: 2.0의 첫 번째 릴리스 ...

JSON, CSV, Parquet, Avro, Feather, HDF5, Protobuf, MessagePack

 JSON과 CSV 중 어느 쪽이 더 빠른지는 데이터 구조와 작업 내용에 따라 달라집니다. ### 1. **CSV**    - **속도**: CSV는 텍스트 데이터의 평면 구조(테이블 형식)로, JSON보다 빠르게 처리되는 경우가 많습니다. 특히 숫자 데이터나 단순한 테이블 데이터를 다룰 때 효율적입니다.    - **저장 용량**: CSV는 대개 JSON보다 크기가 작고, 구조가 단순해 메모리 사용량도 적은 편입니다.    - **Python에서 다루기**: `csv` 모듈을 사용해 행과 열을 빠르게 처리할 수 있습니다. 구조가 단순한 만큼 `pandas`와 같은 라이브러리에서도 쉽게 읽고 쓸 수 있어, 대량의 데이터를 다룰 때 효과적입니다. ### 2. **JSON**    - **속도**: JSON은 트리 구조(중첩 구조)를 갖기 때문에 CSV보다 느리게 처리될 수 있습니다. 하지만, 복잡한 계층적 데이터를 다루거나 중첩된 데이터를 다룰 때는 JSON이 더 적합합니다.    - **구조 유연성**: JSON은 중첩된 데이터를 표현할 수 있어, 비정형 데이터나 복잡한 객체 구조를 다룰 때 유리합니다. 단순한 테이블보다 유연한 구조가 필요할 때 적합합니다.    - **Python에서 다루기**: `json` 모듈을 사용하여 손쉽게 로드하고 덤프할 수 있습니다. 단, 중첩된 데이터나 딕셔너리 형태의 데이터가 많은 경우 속도와 메모리 면에서 부담이 커질 수 있습니다. ### 어떤 경우에 어떤 것을 선택할까? - **단순한 테이블 데이터**를 다루고 속도가 중요한 경우: **CSV**가 더 빠르고 메모리 효율적일 가능성이 큽니다. - **중첩된 계층 구조**를 다루거나 데이터를 JSON 형식으로 주고받는 경우: **JSON**이 더 유연하고 직관적입니다. ### 요약 - **CSV**: 속도와 메모리가 중요하고, 테이블 형식의 데이터라면 CSV가 적...

PyPI에 Python 패키지를 업로드

 PyPI에 Python 패키지를 업로드하는 과정은 몇 가지 단계를 거쳐야 합니다. 아래는 그 과정을 순서대로 설명합니다. ### 1. 패키지 준비하기 먼저, PyPI에 업로드할 패키지를 준비해야 합니다. `setup.py` 파일을 만들고, 패키지의 메타데이터를 작성합니다. ```python from setuptools import setup, find_packages setup(     name="패키지이름",                  # 패키지 이름     version="0.1.0",                   # 버전     description="패키지 설명",         # 간단한 설명     author="작성자 이름",     author_email="작성자 이메일",     url="https://github.com/username/repository",  # 프로젝트 URL     packages=find_packages(),     install_requires=[                 # 필요한 패키지들         # '패키지명>=버전'     ],     classifiers=[         "Programming Language :: Python :: 3",         "License :: OSI Approved ...