본문 바로가기

전체보기154

Doit 지옥에서 온 문서관리자 깃&깃허브 입문 공부단 후기 깃과 깃허브를 위한 책 추천 깃과 깃허브는 프로그램을 공부하는 사람이라면 기본적으로 알고 있어야 하는 상식이라고 해도 과연이 아닙이다. 저는 단순히 백업용도로만 깃을 사용 중 이었는데요. 좀 더 기초가 필요하다고 생각하여 예전에 사놓고 책장에 꽂혀 있던 Doit 지옥에서 온 문서관리자 깃&깃허브 입문 다시 처음부터 보기 시작했습니다. 이 책은 깃과 깃허브를 사용하기 위한 핵심적인 부분만 압축적으로 전달하고 있으며 술술 잘 읽히는 것이 장점입니다. doit 스터디룸 공부단 신청 책 초반부에 출판사에서 공부단이라는 것을 운영하는 것을 보고 이왕하는거 카페에 가입해 공부단도 신청하였습니다. 공부단은 자신이 짜놓은 공부계획에 따라 공부한것을 인증하고 완독을 하면 다른 서적을 선물로 주는 아주 고마운 제도 입니다.. 후기/내가 직접 경험한 후기 2022. 7. 29.
[flutter,beamer] beamer 대신 go_router로 guard pages 구현 1. beamer 1.3 이후 버전 사용시 stackoverflow 에러발생 아마도 이 에러가 나시는 분은 1.3 이상의 최신 beamer를 사용하시면서 beamGuard의 showpage를 사용하시는 분일거 같습니다. flutter에는 navigator 2.0을 쉽게 구현할 수 있도록 beamer라는 라이브러리가 있는데 이 최신 버전의 beamer 사용하시는 분들이 BeamGuard와 showpage를 사용하면 stackoverflow 에러 메시지를 만나실 것입니다. 그래서 beamer 제작자 분께 직접 문의를 드려서 이렇게 하면 된다고 답변도 받았는데 간단한 코드가 더 어려워 져서 결국 beamer사용은 잠시 접어두고 go_router로 전환해보려고 합니다. 2. go_router로 BeamGuard.. 플러터관련 정보/플러터-안드로이드 개발 2022. 7. 28.
[딥러닝] 역전파를 공부시 필요한 자료 벡터를 행렬로 미분하면?? 역전파를 공부할때 필요한 지식은 체인룰과 미분입니다. 그리고 만나는 난관은 벡터를 행렬로 미분해야 하는 과정이 필요한다. 벡터를 행렬로 미분하면 텐서가 나오는데 이부분을 밑바닥부터 시작하는 딥러닝에는 그냥 자세한 설명없이 행렬 X의 전치값이라고 나옵니다. 하지만 수학적으로 계산되서 나오는 값을 알고 싶었던 저는 관련 자료를 찾아보기 시작했고 관련 자료를 찾아 까먹지 않기 위해 여기에 포스팅합니다. 출처 https://web.stanford.edu/class/cs224n/readings/gradient-notes.pdf 후기/내가 직접 경험한 후기 2022. 7. 26.
[git] 코딩(프로그래밍) 공부할 때 깃(git) 활용법(git restore) git을 활용한 프로그래밍 공부법1인 취미 개발자인 저는 깃을 버전 관리의 용도 보다는 주로 깃허브나 깃랩에 백업하는 용도로 사용하고 있었습니다. 그래서 단순히 git add. git commit, git push 이렇게 기계적으로 사용하고 있었는데요. 이번에 책장에 있던 'Do it! 지옥에서 온 문서 관리자 깃&깃허브 입문' 이 책을 다시 한번 복습하면서 git을 활용하여 프로그래밍을 공부하는 방법을 정리해보았습니다. 기존에 내가 했던 공부법그동안 프로그래밍 강좌를 따라하면서 강의 강의마다 commit을 해서 기록을 남겼습니다.  그리고 git reset --hard를 이용해 복습하고자 하는 커밋으로 완전히 파일을 되돌리고 시작했는데요. 이럴 경우 복습이 필요없는 파일까지 되돌아가는 상황이 벌어 집니.. 프로그래밍사업/사이드 프로젝트 2022. 7. 26.
[git,ssh] 맥북에서 ssh를 이용해서 깃허브 계정 여러개 사용하기 보통 깃허브 아이디는 특별한 설정을 하지 않으면 컴퓨터마다 한개씩 밖에 사용이 안되는거 같더군요. 그래서 github나 gitlab 계정을 회사계정, 개인용 프로젝트 계정 이렇게 분리하고 싶을때는 ssh-keygen을 사용해야 합니다. 작업순서 1. ssh-keygen으로 공개키(Public key)와 개인용키(Public key)를 생성합니다. 2. github에 공개키 등록 3. 접속하기 공개키(Public key)와 개인용키(Public key) 생성 터미널에서 아래 명령어를 입력하면 공개키와 개인용키가 생성됩니다. 입력하면 암호를 입력하라고 하는데 그냥 저는 엔터를 두번 쳐서 암호를 생략했습니다. 어차피 저의 개인용 맥북이기 때문이죠 키 생성 명령어 ssh-keygen -t rsa -f ~/.ss.. 프로그래밍사업/사이드 프로젝트 2022. 7. 24.
[SQLALchemy, python,MySQL] date, time, DateTime 자료형 입력하고 불러오기(타임존 적용까지) SQL알케미와 MySQL로 날짜, 시간 입력하기 SQL알케미로 MySQL에 날짜, 시간을 입력하는 법을 알아보겠습니다. 그리고 날짜를 불러올때 timezone이 aware 가 아닌 naive로 받아오는거 같습니다. 그래서 relpace를 사용해서 타임존(timezone)을 적용해보도록 하겠습니다. 저는 보통 MYSQL로 직접 날짜나 시간을 저장할때는 TimeStamp 컬럼에 now() 함수를 사용하여 시간과 날짜를 입력하는데요 이번에는 SQLALchemy를 이용하여 해보도록 하겠습니다. 테이블 클래스 정의 class Time(Base): __tablename__ = "time_tbl" id = Column(Integer,primary_key=True, index=True) date_time = Colum.. 프로그래밍사업/사이드 프로젝트 2022. 7. 17.
FASTAPI 사용을 위한 SQLAlchemy(ORM) 기초 - 3탄 데이터 가져오기(Read, SELECT문) SQLAlchemy로 데이터 가져오기 공식문서를 보니 SQL 알케미를 이용해서 데이터를 가지고 오는 방법이 정말 여러가지가 있었습니다. 1.x 방식과 2.0방식 두가지가 있는데 주로 인테넷에서는 1.x 스타일로 설명 된것이 많아 저는 2.0방식을 소개해보도록 하겠습니다. 공식문서의 1.x 스타일과 2.0 스타일 비교 https://docs.sqlalchemy.org/en/14/changelog/migration_20.html#migration-orm-usage Migrating to SQLAlchemy 2.0 — SQLAlchemy 1.4 Documentation Previous: What’s New in SQLAlchemy 1.4? Next: 1.4 Changelog Up: Home On this pa.. 프로그래밍사업/사이드 프로젝트 2022. 7. 7.
FASTAPI 사용을 위한 SQLAlchemy(ORM) 기초 - 2탄 삭제, 수정 SQLAlchemy로 삭제하는 법과 수정하는 법 FASTAPI 사용을 위한 SQLAlchemy(ORM) 기초 1탄에 이어 이번에는 SQL 알케미로 삭제하는법과 수정하는 법을 정리해보 겠습니다. 삭제하기(DELETE) 삭제하기는 간단합니다. 특정 데이터를 가지고 오는 Select문을 작성한 객체를 만들어서 세션의 삭제하는 함수에 변수로 넣어 주면 됩니다. def delete_users(db:Session,pk:int): # db_user = db.query(User).filter(User.id==pk).first() db_user = db.execute(select(User).filter(User.email=="user.email")).scalars().first() if db_user: db.delete.. 프로그래밍사업/사이드 프로젝트 2022. 7. 5.
SQLAlchemy로 이미 있는 데이터베이스(기존 테이블) 사용하기 SQLAlchemy로 이미 있는 MySQL 의 기존 테이블 사용하기 python으로 MySQL이나 SQLite, Postgres를 사용하기위해 SQLALCHEMY 다시 공부하고 있습니다. 그러던 중 dbeaver를 이용해 기존 테이블을 sqlalchemy 가지고 오는 방법이 필요하여 이번 포스팅으로 작성하면서 머릿속을 정리해 보았습니다. 이걸 알아보면서 그냥 PyMySQL로 할까 말까 하다가 제 나름대로 기준을 어느걸 쓸지 조건을 정해보았습니다. FASTAPI를 쓸데는 sql알케미로 그외에 단순 작업할때는 PyMySQL을 사용하려 합니다. 물론 이 기준은 언제 다시 바뀔지 모르지만... 일단 SQLALchmey로 기존에 있는 DB에 접속하여 사용하는 방법은 찾아보기 어려워 제가 한번 정리해보았습니다. 그.. 프로그래밍사업/사이드 프로젝트 2022. 7. 5.
FASTAPI 사용을 위한 SQLAlchemy(ORM) 기초 - 1탄 초기설정, 데이터 입력하기 다시 정리하는 SQL 알케미 본 내용은 https://fastapi.tiangolo.com/ko/tutorial/sql-databases/ 해당 링크의 설명과 공식문서를 참조하였습니다. 이전에 2021.08.16 - SQLALCHEMY를 이용한 PostgreSQL 사용법 을 정리한적이 있었습니다. SQLALCHEMY를 이용한 PostgreSQL 사용법 SQL 알케미랑 SQL 서버와 연결하는 부분 from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker URL = "postgresql://아이디:비밀번호@서버주소/DB이름" engine = create_engine(URL,ech.. jh-industry.tistory.com 기.. 프로그래밍사업/사이드 프로젝트 2022. 7. 4.
블로그를 위한 키워드 사이트 정리 블로그의 첫단계는 키워드 찾기 블로그나 유튜브로 수익 창출을 위한 강의를 보면 항상 나오는 단어가 있습니다. 바로 키워드입니다. 이런 키워드를 잘 쓰게 되면 구글, 네이버, 유튜브 등 검색 도구에 쉽게 노출되는데 도움을 준다고 합니다. 그리고 이 키워드는 블로그 발행량이 적고, 검색량은 많은 것이 좋다고 하는데요 오늘은 이 키워드를 찾는데 도움이 되는 사이트 들을 정리 해보았습니다. 키워드는 부가적인 도구일뿐 중요한것은 양질 컨텐츠다 키워드 찾기에 도움이 되는 사이트 정리에 앞서 키워드가 중요하기는 하지만 이런 키워드는 부가적인 도구일뿐 중요한것은 컨텐츠다 라는 결론이 나오는데요. 키워드에 대해 저는 전단지라고 생각합니다. 일종에 사람들에서 나의 컨텐츠로 들어오게 하는 광고판이란 생각이 드는데요. 전단지.. 블로그 키우기 2022. 7. 3.
플러터와 파이어베이스 1탄 - 플러터 3.0 업데이트 후 파이어베이스(firebase) 연동(1) flutter 파이어베이스 데이터 가져오기 리부트 파이어베이스는 1인 개발자라면 반드시 익혀야 하는 하나의 스킬이라고 생각합니다. 누구나 쉽게 데이터를 가져오고 저장하는 기능을 구현할 수 있기 때문에 복잡한 백엔드 서버를 만들 필요가 없기 때문이죠. 그래서 1인 개발은 거의 파이어베이스로 앱을 만든다고 해도 과연이 아닐것입니다. 게다가 플러터 3.0 부터 파이어베이스가 정식 지원 하기 때문에 더 반가운데요. 이전에도 한번 파이어베이스로 데이터를 저장하고 가져오고 하는 것을 했는데 다시한번 정리하는 시간을 가져 보았습니다. Flutter 3.0은 파이어베이스가 정식 지원 플러터 3.0 업데이트 후 저에게 가장 크게 와닿는 변화는 firebase가 정식 지원을 한다는 점입니다. 이제 flutterfire사이.. 플러터관련 정보/파이어 베이스(플러터) 2022. 7. 3.
플러터와 파이어베이스 4탄 - 파이어스토어에 데이터 수정하기(UPDATE), 데이터 삭제하기(Delete) Flutter & FireBase(FireStore) 데이터 수정하기, 삭제하기 편 대망에 파이어스토어 CRUD편의 마지막입니다. 저장하기, 읽어오기, 수정하기, 삭제하기가 데이터베이스를 처음 접했을때 지겹게 듣고 실습했던 내용인데 이렇게 다시한면 파이어스토어에 CRUD를 복습해보는 경험을 했습니다. 아마도몸이 익을때 까지 한 백번은 실습을 해야할텐데 그때마다 처음 시작하는 마음으로 자료를 찾아보는것이 어렵기 때문에 이렇게 시리즈로 한번 만들어 보았습니다. 우선 가장 쉬운 삭제하기 DocumentReference에 delete() 메소드를 사용하면 간단하게 삭제 기능을 구현할수 있습니다. //DELETE Future deleteMemo(DocumentReference reference) async { a.. 플러터관련 정보/파이어 베이스(플러터) 2022. 6. 19.
플러터와 파이어베이스 3탄 - 파이어 베이스 데이터 가져오기(READ)-DocumentReference란?? CollectionReference 플러터로 파이어 베이스 데이터 가져오기(READ) 1탄과 2탄에 이어 이번에는 파이어베이스(파이어스토어)에 저장된 데이터를 불러오는 방법에 대해 알아보겠습니다. 우선 기본 용어와 흐름 부터 정리해보도록 하겠습니다. 파이어베이스로 데이터 읽어오기에 필요한 용어, 지식 정리 DocumentReference란?? 다큐먼트의 위치를 나타내며, 이것을 이용해서 저장하기, 읽어오기, 삭제, 수정의 기능을 할수 있습니다. CollectionReference 란?? - CollectionReference.doc(path)를 이용해 특정 다큐먼트를 가지고 오고 이 메소드의 결과는 DocumentReference 형태로 반환됩니다. - CollectionReference.add(data)를 이용해 data를 저장할수 있습.. 플러터관련 정보/파이어 베이스(플러터) 2022. 6. 17.
플러터와 파이어베이스 2탄- 파이어스토어에 자료 저장하기(create)-(2) 이전편에서 편리하게 데이터를 가공하기위한 자료형을 만들었습니다. 이번에는 파이어베이스 공식 문서를 보고 데이터를 파이어스토어에 저장하는 코드를 작성해보도록 하겠습니다. 이 포스팅은 코딩파파님의 강의를 듣고 다시 한번 복습하는 의미에서 작성된 포스팅입니다. 이전편: https://jh-industry.tistory.com/65 파이어베이스 공식문서: https://firebase.google.com/docs/firestore CRUD 구현을 위한 클래스 만들기- Create 부분만 이전에 set을 이용해서 데이터를 저장하는 코딩파파님의 방식에서 공식 문서에 간단하게 설명하고 있는 add 방식으로 해보겠습니다. 파이어베이스에 저장하는 클래스 구현 앞으로 이 FireService클래스 안에 CRUD를 모두 구.. 플러터관련 정보/파이어 베이스(플러터) 2022. 6. 16.
플러터와 파이어베이스 2탄- 파이어스토어에 자료 저장하기(create)-(1) 플러터와 파이어베이스 2탄 파이어 스토어에 저장하기 편입니다. CRUD 중 Create에 해당하는 내용인데요. 파이어베이스 초기 설정을 하지 않으신 분은 아래 링크로 가셔서 파이어 베이스와 플러터 프로젝트를 연결해 주시기 바랍니다. https://jh-industry.tistory.com/61 플러터와 파이어베이스 1탄- 플러터 3.0 업데이트 후 파이어베이스(firebase) 설정법(2) 이전 포스팅 플러터와 파이어베이스 1탄 - 플러터 3.0 업데이트 후 파이어베이스(firebase) 설정법(1) Flutter 3.0은 파이어베이스가 정식 지원 플러터 3.0 업데이트 후 저에게 가장 크게 와닿는 변화는 f jh-industry.tistory.com 제가 전에 만든 파이어 스토어 관련 포스팅입니다. 여.. 플러터관련 정보/파이어 베이스(플러터) 2022. 6. 14.
unable to boot the simulator 에러 났을때 unable to boot the simulator 에러 났을때 unable to boot the simulator 에러가 나서 해결방법을 찾아보니 xcode와 iOS버전 문제라는 글도 있었는데 저는 어제까지 되다가 갑자기 안되는 경우라서 스택오버플로우에 검색해보니 바로 답이 나왔습니다. 해결방법 Go to [About this Mac > Storage > Manage > Developer] Delete all the content (no worries!) And you're good to go!! 이렇게 하니 바로 해결되었습니다. https://stackoverflow.com/questions/72229589/flutter-xcode-error-unable-to-boot-the-simulator Flu.. 플러터관련 정보/플러터-안드로이드 개발 2022. 6. 13.
내돈 내산 자기계발 1탄 - 코딩팩토리 와디즈 펀딩 후기(한 권으로 끝내는 티스토리 운영 비법서) 코딩팩토리님의 와디즈 한 권으로 끝내는 티스토리 운영 비법서를 펀딩하며.... 배너광고 였던거 같은데 우연히 이 광고를 보고 나도 모르게 와디즈 펀딩을 하게되었습니다. 제가 이 광고에 끌린 이유는 제2의 월급을 위해 안드로이드 앱 개발도 공부하고 있고, 애드센스 수익을 위해 티스토리도 운영하고 있기 때문이었습니다. 하지만 제가 플러터 공부할때 참고 하고 있었던 코드팩토리 님이 만든 티스토리 운영 노하우 인줄 알고 펀딩한것도 있었습니다. 결과적으로 코딩팩토리 님도 제가 만든 이 아이언웨일의 보물찾기와의 주제가 똑같기 때문에 조금 고민하다가 구매하였습니다. 펀딩 비용은 39,000원으로 전자책 형식으로 펀딩이 완료된 후 메일로 받았습니다. 일반적인 서점에서 정식으로 .. 후기/내가 직접 경험한 후기 2022. 6. 13.
[flutter, 안드로이드 스튜디오] setState가 자동으로 안뜸 - 임시해결법(라이브 템플릿) 갑자기 안드로이드 스튜디오에서 setState가 자동으로 안뜬다?? 플러터 업데이트, 다트, 플러터 플러그인, 안드로이드 스튜디오 이중에 어떤게 문제 인지 알수 없지만 갑자기 잘 나오던 setState 자동완성이 되지 않는 문제가 발생하였습니다. 그래서 스택 오버플로우 검색 해보았습니다. https://stackoverflow.com/questions/72536630/flutter-setstate-isnt-triggered-in-android-studio Flutter setState isn't triggered in Android studio I'm absolutely new to programming and Flutter as well, so sorry for my silly question but .. 플러터관련 정보/플러터-안드로이드 개발 2022. 6. 12.
플러터와 파이어베이스 1탄- 플러터 3.0 업데이트 후 파이어베이스(firebase) 연동(2) 이전 포스팅 플러터와 파이어베이스 1탄 - 플러터 3.0 업데이트 후 파이어베이스(firebase) 설정법(1) Flutter 3.0은 파이어베이스가 정식 지원 플러터 3.0 업데이트 후 저에게 가장 크게 와닿는 변화는 firebase가 정식 지원을 한다는 점입니다. 이제 flutterfire사이트가 아닌 파이어베이스 공식문서에 플 jh-industry.tistory.com 시작하며... 이전에 명령어를 통해 플러터 프로젝트를 파이어베이스와 연결하는 작업을 하였습니다. 이제는 플러터 프로젝트 내에서 패키지를 설치하여 사용만 하면 됩니다. 1. 필요한 패키지 설치 flutter에서 firebase를 사용하기 위해서는 아래 파이어베이스 코어 패키지가 필요합니다. 플러터 프로젝트에 파이어베이스코어를 설치합니다.. 플러터관련 정보/파이어 베이스(플러터) 2022. 6. 7.