워홀이라면 쉐어하우스로

8개월간의 워킹홀리데이를 마치고 한국으로 돌아온지 3주가량 지났다.

인생이 아쉬움의 연속이지만 돌아보면서 이건 잘했다 싶은게 쉐어하우스로 이사한 것이다. 워홀 가기 전 까지만해도 한번쯤은 혼자 살아보고 싶었고 또 혼자 살았을때 나의 모습이 궁금하기도 했다. 그래서 원룸을 구해서 들어갔고 침대나 책상같은 가구들을 모두 구입하고 음식도 혼자 해먹고 재미있었다. 계약금이나 가구를 사는 그런 비용은 한국에서 대충 생각하고 갔기 때문에 지출은 어느정도 감수하였다.

한가지 예상하지 못한것이 일단 공과금이 생각보다 많이 나왔고 일본은 거의 모든 알바가 시프트제도라 풀타임이 아니었다. 그래서 월세를 내기 위해서는 알바를 두개 하거나 풀타임 알바를 구할 수 밖에 없었다. 그래서 난 풀타임 알바를 골랐고 선택에 약간의 제한사항이 있었다(이건 큰 문제는 아니었다). 그리고 공방을 다녀야 하는데 그 비용을 계산에서 빼먹었었다. 물론 절약해서 사용하면 만엔정도 남기게 생활 할 수 있었지만 생각보다 돈이 빠듯하다는게 심적으로 큰 부담이 되었었다. 그래서 쉐어하우스로 옮기고 그 남은 돈으로 공방을 한타임 더 등록하기로 했다. 단순히 돈을 아끼자는 의미도 있었지만 옮기면서 제일 기대했던 부분은 다른 사람이랑 같이 살면서 일본어를 더 많이 사용할 기회를 얻을 수 있다는 것이 더 기대되긴 했었다.

집앞에서 본 스카이트리

그 당시 살고있던 지역이 맘에 들어서 집 근처로 알아보다가 괜찮은 곳이 있어서 그 곳으로 들어가게 되었다. 옮기고 나서 처음부터 쉐어하우스로 들어갈껄이라는 후회가 들었다. 사람들도 너무 좋았고 내가 일본어를 쓸 기회도 훨씬 많아졌다. 그리고 처음부터 쉐어하우스로 들어왔다면 돈도 많이 아낄 수 있었을 것이다.

같이 일하던 분도 쉐어하우스에서 살고있었는데 그 분은 다른 사람들이랑 아예 교류가 없다고 하는 것을 보니 쉐어하우스마다 분위기가 많이 다른 것 같긴 했다. 내가 살던 쉐어하우스는 거의 대부분이 일본사람이었고(중국인 1명, 홍콩인 1명, 한국인 나 포함 2명을 제외하고는 8명이 일본인) 다들 잠깐 사는 것이 아니라 오래 살고 있어서 괜찮다고 생각했다. 그리고 쉐어하우스에 컨셉이 있어서 런닝을 주기적으로 같이 하는 곳이었다. 그래서 사람들 사귀기도 좋겠다고 생각했고…

결론적으로 혼자 5달동안 살았던 것보다 쉐어하우스에서 3달동안 살았던게 더 즐거웠고 기억에도 많이 남았던 것 같다. 물론 쉐어하우스도 단점이 있다. 공용으로 사용하는 것들이 있다보니 조금 더러울 때도 있고 잘못하면 내 물건이 없어질 때도 있을 수 있고(예를들어 우산이라던지… 우산이라던지…) 그런것들을 못견디는 사람들은 힘들겠지만 나는 좀 무딘편인건가… 아무튼 잘 살았다.

사실 해외에서 아무것도 없이 가면 친구 사귀기도 어려운데 그런것도 좋았고…

워홀이라면 쉐어하우스 추천!

데이터베이스 정규화

데이터 베이스 정규화란? 관계형 데이터베이스에서 중복을 최소화하게 데이터를 구조화하는 작업. 중복된 데이터가 많으면 데이터를 삽입/수정/삭제할 때 예상치 못한 문제가 발생할 가능성이 높기 때문에 이런 문제를 예방하는 목적도 있음.

정규화에는 1차 정규화, 2차 정규화, 3차 정규화 등등 여러가지 방법이 있는데 쉽게 생각해서 큰 테이블을 중복된 데이터가 만들어지지 않게 작은 테이블로 쪼개는 작업들이라고 이해하면 된다.

1, 2, 3차 정규화 등등 설명은 다 생략하고, 실제로 예를들어 설명하면

ID학생학번강의 이름담당교수
1A2020101
2B2019102
3C2018103
4D2020101

이런 테이블이 있다고 가정해보자. 학생들이 있고 그 학생들이 듣는 강의 이름과 담당 교수가 작성된 테이블이다. 이때 101이라는 강의가 있고 이 담당 교수는 ‘가’이다. A,D학생이 동시에 듣고 있는 이 강의는 중복된 데이터가 입력되어있다. 만약 강의 이름을 변경해야할 때 101이라는 두개의 데이터를 모두 변경해야하고 혹시나 두 데이터가 모두 변경되지 않았을 경우 프로그램에서 오류를 발생시킬 수 있다. 이럴때 이 테이블을 두개로 나눠서 정규화 하는게 좋다는 것이다.

ID학생학번강의
1A20201
2B20192
3C20183
4D20201
ID강의 이름담당 교수
1101
2102
3103

학생 테이블과 강의 테이블을 나누고 외래키로 묶어서 관리해 중복된 데이터를 피했다. 이러면 강의 이름이나 담당 교수가 바뀌더라도 하나의 데이터만 바꾸면 된다. 이렇게 큰 테이블을 쪼개서 여러개의 테이블로 나누고 중복된 데이터를 없애는 것이(물론 정확히 말하면 데이터 정규화는 단순히 테이블을 쪼개는 것만 있는 것은 아니고 더 큰 작업이긴 하지만) 데이터 정규화이다.

해야겠다

선생님 공방에 주욱 늘어져 있는 가방들 그냥 연습용이나 전시용으로 만드신 줄 알알는데 오더받고 실제로 나가는 제품 전에 테스트로 만들어 보신 것 이라는 얘기를 들었을 때 나도 그렇게 해야겠다, 하고싶다라는 생각이 들었다.

유튜브를 보다가 오더 제품이 나가고 몇년? 후에 쓰던 제품을 받고 다시 만들어져 나가는 얘기를 듣고 나도 그렇게 해야겠다, 하고싶다 생각했다.

아직 모르는게 너무 많으니까 열린마음으로 좋은것들을 많이 배워야겠다

귀국 날짜가 정해지다.

위킹홀리데이 귀국 날짜가 정해지면서 뭔가 남겨야겠다는 생각으로 블로그를 다시 열어본다.

2019년 9월 16일 일본으로 와서 아무것도 없는 방에 책상, 의자, 침대 등등 사서 집 모양을 갖추고 생활하다가 2020년 2월 쉐어하우스로 이사, 2020년 5월 21일 귀국하기로 결정

일본에 오려고 할때는 ‘이시국’, 2020년부터는 ‘코로나19’… 인생이 참 맘대로 되는게 없다는 것이 참 재미있는 것 같다. 물론, 코로나도 무시하고 계속 일본에 있을 수는 있지만 개인적으로 조금만 컨디션이 안좋아도 ‘혹시 코로나인가?’하는 불안감, 여행이나 밖에 나가기도 애매하고, 빠르게 진정될 것 같지 않은 일본 상황 등등 여러가지를 고려해 빨리 귀국하기로 결정했다.

워킹홀리데이에 관해서는 기록이 거의 없다. 그러나 왜 워킹홀리데이를 오고싶었는지 지금은 그 목적은 다 달성했는지 회고해보기로 했다. 먼저 워킹홀리데이를 가고싶었던 이유

  • 단순히 해외에서 살고싶음
  • 27년동안 가족들과 함께 생활했는데 혼자서 사는 모습은 내가 어떤지 확인하고 싶음
  • 개인적으로는 가족에게 의지하는 부분이 많이 있다고 생각해서 혼자 살면서 강한 멘탈을 가지고싶었음
  • 일본으로 온 이유는 가죽공예를 배우고 싶어서

크게 보면 이렇게 4가지 이유였다. 사실 일본으로 정해지기 전에는 컴퓨터 공부를 하니까 영어권으로 가고싶었고 영국을 준비하고 있었다. 하지만 가죽공예를 만나게 되면서 일본으로 갑자기 바꾸게 되었고 그렇게 6개월정도 준비하고 일본에 오게 되었다. 19년 9월 16일부터 20년 4월 25일까지 7개월동안 지냈던 것을 바탕으로 생각해보았다.

먼저 단순히 해외에서 살고싶다는 목적은 달성. 두번째로 혼자서 사는 모습이 궁금했는데 생각보다는 사람답게(?) 살아서 의외였다. 혼자 살면 밥하기도 귀찮아서 맨날 라면먹고 그럴 것 같았는데 의외로 요리 욕심도 생기고 정리도 하게되고 그랬던 것 같다. 아무래도 혼자 사니까 혼자 해내야 한다는 생각이 조금 더 강해져서 그렇지 않을까 싶다. 세번째로는 강한 멘탈이나 도전정신 뭐 대충 그런것들을 키우고 싶었는데 이건 좀 잘 안됐던 것 같다. 일본어가 부족해서 한국 회사를 찾았고 그런 이유로 일본인 친구는 하나도 사귀지 못하게 되는 원인이 되었다. 이건 아쉬운 부분이지만 공방을 다니기 위해서 생활비와 공방 수업비가 정기적으로 필요했고 시프트제인 일본 아르바이트보다 풀타임 아르바이트인 한국회사를 갔던게 차라리 좋은 선택이었다는 생각도 든다. 마지막으로 가죽공예를 배우고싶다는 목표는 절반의 달성인 것 같다. 가죽공예는 Designer Leathers GO라는 이름을 가진 공방에서 배우기 시작했고 GO선생님은 장인이시다. 한국에서는 상상할 수 없는 3개월정도를 도구 연마하는데 할애했고 그 다음 2달동안 칼케이스, 목타케이스를 만들었다. 그리고 대패 케이스를 만드는 도중에 코로나 때문에 공방은 쉬게되었고 그 이후에 귀국이 결정되었다. 선생님께 부탁해 6번정도 수업을 듣게 되었지만 너무너무 아쉽다. 다음에 돈 많이벌어서 꼭 숏텀으로 오고싶다.

위에서 워킹홀리데이를 가고싶었던 4가지 이유 말고 생활하면서 아쉬웠던 점은 너무너무 많다. 아쉬웠던 것은 내가 잘 못했다는 뜻이 아닐까… 어쨌든 한국으로 돌아가고 새로운 일을 찾고 다시 한국 일상으로 돌아가야하는데 지금부터 그것도 걱정이고 여러모로 고민이 많은 요즘이다. 일단 다시 컴퓨터 공부 하면서 감을 찾는게 우선이지 않을까. 한국가서 2주 격리기간동안에도 헛되이 보내지 말아야 겠다는 생각이 든다.

Python에서 ‘is’와 ‘==’의 차이

Python 자체가 쉽고 언어가 그렇게 어려운편이 아니어서 그런지 나도 쓸때마다 너무 겉핥기로 알고있다는 생각을 많이 한다. 이미 시작은 해버렸고 이제 모르는건 바로바로 찾아서 깊게 아는게 중요!

오늘은 코드 짜다가 if문에 is를 썼는데 갑자기 is와 ==의 차이점이 궁금하다. 그 전엔 그냥 튜토리얼이 있으면 그대로 썼는데 문득 의문이 생긴다. is와 ==의 차이가 뭘까 분명히 뭔가 차이가 있을텐데…

정말 단순히 설명하면

  • is는 비교할 두 값이 같은 오브젝트 인스턴스라면 True를 반환
  • ==는 __eq__()매소드에 의해서 리턴값이 정해짐

 

https://stackoverflow.com/questions/26595/is-there-any-difference-between-foo-is-none-and-foo-none

https://stackoverflow.com/questions/132988/is-there-a-difference-between-and-is-in-python

이 두 답변을 보면 정확하게 이해가 되는데 Java를 생각한다면 string 비교할때 ==로 비교하면 안되고 .equals()였나… 이걸로 비교해야되는 것 같은 느낌?!

Python파일에서 Django설정 사용하기

웹 크롤링을 해서 Django에 데이터를 집어넣고 싶었다. 그런데 Python파일에서는 Django를 바로 못쓰네… 하던참에 해결방법 찾음!

Django 프로젝트 맨위에 python파일을 하나 만들고 Python파일에

[code lang=”python”]

os.environ.setdefault(‘DJANGO_SETTINGS_MODULE’, ‘기본 Django프로젝트 이름.settings’)
import django
django.setup()
from Django앱.models import 모델명

[/code]

이렇게 하면 Django에서 사용하던 모델을 그대로 사용할 수 있고! 모델 인스턴스 만들어서 save하면 바로 DB에 저장이 가능하다

Django에서 Form에 placeholder설정하기

Django를 사용하다보면 Form, ModelForm을 사용하는 일이 많이 생기는데 이럴 때 Input에 사용자들에게 입력하는 데이터를 설명할 수 있는 placeholder가 필요할 경우가 생긴다.

방법은 Field를 설정할 때 widget, attrs에 placeholder를 설정하는 방법이 있지만 나는 ModelForm을 사용하기 때문에 Field를 건들이고 싶지 않았다. 자동으로 생성해주니까… 그래서 __init__을 재정의해 placeholder를 넣는 방법이 있다.

placeholder.JPG

__init__을 재정의하고 일단 처음에 __init__을 실행시켜주고 그 다음에 내가 원하는 코드를 삽입한다.

self.fields['원하는 field명'].widget.attrs['placeholder'] = "원하는 문자열"

간단하죠?