늘 그렇듯이 본업과는 좀 거리가 있는 것들에 흥미를 갖는 못된 습성(?)덕분에 요즘 장고(django)라는 파이썬 웹프레임워크를 공부하고 있습니다. 사실 이런 것들에 흥미를 갖는 이유는 어찌보면 현실 도피 내지 소소한 불만들에서 비롯됩니다. 워드프레스가 놀라운 사용자 편의성을 제공하기는 하지만, 사소한 것 하나를 고치더라도 무척 까다로운 기준에 부합해야한다는 것들이 불만으로 쌓이고 있다보니 쉽다는 이야기에 귀가 팔랑거려 장고를 공부하고 있습니다.

일단 각설하고 김석훈님이 쓰신 파이썬 웹프로그래밍이라는 책을 보고 간단하게 블로그를 따라서 만들어보고 있는데, 실수로 장고 2.0을 설치해버렸습니다. 책에서는 장고 1.7 버전을 기준으로 하고 있다보니 달라진 점들이 많습니다.

1.7 버전대만 해도 파이선 2.x 버전을 위해서 아래와 같은 호환성을 유지하려는 목적의 코드들을 일부러 삽입합니다. 하지만 장고 2.x에 들어와서는 파이썬 3.x 버전을 기본으로 사용하기  때문에 파이선 2.x를 고려할 필요가 없습니다. 그래서 아래와 같은 코드를 삽입하면 오류메세지를 출력합니다. 아래 호환성 처리 문장은 사용하지 않습니다.

이제 더이상 django.core.urlresolvers는 쓰이지 않습니다. 간단하게 django.urls로 변경되었습니다.

파이썬 2에 대한 호환성은 이제 더 이상 명시하지 않습니다. 아래 문구 삽입시에도 마찬가지로 오류메세지가 발생합니다.

urlpatterns를 사용하는 방법이 조금 달라졌습니다. 루트에 있는 urls.py에서 app에 있는 – 예를 들면 /blog/urls.py와 연결할때 쓰는 include의 사용법이 조금 달라졌습니다.  django.conf.urls는 django.urls로 간략해졌고 이제는 url 대신 path를 사용합니다. include에서 네임스페이스를 따로 넣지 않는다는 점도 차이점입니다.

또 다른 점을 보자면 include를 했을때 namespace를 명시해주지 않았기에 /blog/urls.py에서 새롭게 추가해줘야하는 부분과 정규표현식을 다뤘을때 다른 점이 있습니다. 달라진 점은 마찬가지로 django.urls가 쓰인다는 점과 path와 re_path로 구분되어서 정규표현식을 쓸때는 re_path 함수를 써야한다는 점이 다릅니다. 그리고 namespace 대신 app_name 이라는 것이 필요하게 되었습니다.

책에서 본 그대로 소스를 입력해서 결과가 나오질 않아서 오류메세지와 함께 django 2.0 document를 뒤져보니 이런 변화들을 적용해야 작동한다는 점을 알게 되었습니다. 아무래도 또 까먹을것 같아서 이렇게 정리해 놓습니다.

주로 참고한 부분은 하단에 링크되어있는 url dispatcher부분입니다. django documentation이 잘되어있다는 이야기는 여러번 들었습니다만, 언어의 장벽때문에 읽어볼 생각을 못해봤는데, 의외로 궁하면 통한다고, 목마른 놈은 우물을 파게 되어있네요 ㅎㅎ

 

최근 카페24 스킨을 잘못 구매한 덕분에 쓰레기 치우느라(?) 아주 곤욕입니다. CSS 코드를 중복해서 여러번 불규칙적으로 정의해놓은 덕분에 5000여줄의 코드에서 일일이 찾아 지워주고 나니 1000여줄로 줄어드는 상황에 어이가 없는데, 이게 문제는 카페24 솔루션 특징상 CSS 코드가 수십개는 되는데다 만든 놈이 추가한 파일들도 있다는거죠. 그래서 이런 반복 되는 작업을 어떻게 해결할 수 있을까 고민한 끝에 css-purge라는 tool을 발견했습니다. 15800여줄의 코드를 보고 이건 안되겠다 싶어서 찾게 됐는데 간단하게 1700여줄로 줄여주는걸 보면서 감탄과 동시에 스킨 제작자를 저주하게 되더군요. 물론 완전하진 않습니다. 자동으로 중복된 코드를 지우면서 다이어트 하는 과정에서 불필요하다고 판단되는 것들을 지우다보니 지워선 안될 코드들도 일부 지운게 확인 됐습니다.그럼에도 불구하고 이 툴은 정말 쓸만합니다. 누락된 부분은 찾아서 추가하면 되는데 3군데 정도 누락되서 크게 어려움을 겪지 않고 문제를 해결 할 수 있었습니다. 아래에 관련 링크를 걸어두겠습니다. 저처럼 중복된 정의들을 지우기 위해서 애쓰지 마시고 css-purge로 스트레스를 덜 받으시길 바랍니다. http://rbtech.github.io/css-purge/그리고 추가로 minify된 코드를 해제하는 플러그인도 있더군요 atom 패키지 중에서 atom-beautify 를 이용하면 간단하게 해결 가능합니다. install package를 통해서 설치 가능합니다

알폰스 무하

아르누보 스타일의 대가

알폰스 무하는 제가 무척 좋아하는 예술가입니다. 저뿐 아니라 많은 사람들에게 사랑받았고, 그에게 영감을 받은 많은 작가들이 나와 그의 작품에 여전히 생명력을 부여하고 있습니다. 보통 알폰스 무하라고 하면 아르누보 양식의 대가이자 아름다운 여인을 그려낸 사람 정도로 이해하고 있었습니다. 실제로 알폰스 무하에 대해 이야기하는 것들이 대체로 그러한 것들이 많았습니다만, “알폰스 무하와 사라 베르나르”에서는 조금 더 알폰스 무하의 작품과 더불어 개인적인 전기에 대해 집중적으로 이야기하고 있습니다.

타고난 예술가는 아니었던 모양입니다.

고갱과 고흐라는 걸출한 인물들과 동시대를 살았던 무하는 타고난 예술가가 아니라, 끊임없이 구애한 끝에 경지에 다다랐다는 것이 인상적이었습니다. 처음 프라하의 예술학교에 지원했을때만해도 그는 재능이 부족하다는 이유로 입학을 거절당했습니다. 그럼에도 불구하고 그는 그리기를 멈추지 않았습니다. 한때 귀족의 후원을 받으며 아카데미를 다니며 작업을 이어가던 호시절도 있었지만, 급변하는 시대는 그를 가만두지 않았습니다.

아르누보의 별 그리고 전설이 된 배우 – 사라 베르나르

우여곡절끝에 파리에 다다른 무하는 굶주림과 추위에 떨며 고난을 겪지만, 운명처럼 다가온 사라 베르나르의 공연 포스터 ‘지스몽다’의 석판화를 맡으며 새로운 삶을 얻게 됩니다. 사라 베르나르라는 인물은 무명의 무하에게 기회를 안겨준 동시에 무하의 그림을 통해 흡사 여신과 같은 이미지를 얻게 되었고, 무하는 사라 베르나르를 그림으로써 전성기를 구가하게 됩니다.

자기 민족에 대한 사랑 – 슬라브 서사시

그저 이야기가 여기까지였다면, 이 책은 단순히 무하의 인생 성공담에 그치는 수준이었겠지만, 본격적으로 흥미로운 부분은 그 이후였습니다. 무하는 유년시절 종교적인 영향과 맞물려 슬라브 민족이라는 자신의 정체성에 대해서 항상 부채의식을 갖고 있었기에 슬라브 서사시를 통해 그것을 떨쳐내고자 합니다. 슬라브 민족과 종교, 그리고 체코의 굵직한 역사를 다루는 20점이나 되는 대작을 그려내기 위해서는 오랜 세월 떠나있던 고향과 자신의 민족에 대해서 탐구하고 그려내야했기에 쉽지도 않고, 시간과 금전적인 면에서도 큰 부담이 따랐습니다.

미국의 기업가 찰스 리차드 크레인을 만남으로써 그의 꿈은 실현될 수 있었고, 이 만남은 예기치 않게 체코 슬로바키아의 독립과도 맞물리는 극적인 이야기를 낳습니다. 단순히 그는 다재다능한 예술가를 넘어 자신의 민족을 사랑하는 사람이었고, 자신이 가진 것을 아낌없이 나누며 삶을 즐기는 보헤미안이었습니다. 살아 생전 그의 작품은 수 많은 사람들에게 사랑받고 화제거리가 되었지만, 그의 말년에 남긴 슬라브 서사시를 비롯한 많은 작품들은 민족의 정신을 고취시키며 체코의 독립을 향한 열망을 불태웠습니다.

인간에 대한 사랑

“알폰스 무하와 사라 베르나르”를 통해 둘러본 무하의 삶을 알고난 후 다시 찬찬히 무하의 작품들을 살펴보게 되었습니다. 무하의 작품은 아름다운 여인을 담았으나 그것이 천박하거나 외설로 비취지 않는 이유는 그의 작품 속 여인들을 통해 민족에 대한 사랑과 더 나아가 그가 품고 있는 인류애를 다루고 있기 때문이라는 걸 느꼈습니다.

무하의 삶을 알기 전까지는 그의 작품을 보며 단순히 화려하고 아름다운 양식에 도취되어, 그가 품고 있던 인간 그 자체에 대한 사랑을 미처 느끼지 못했던 겁니다. 후반부에 슬라브 서사시를 소개하며 체코, 슬로바키아와 슬라브 민족의 역사에 대해 다루는 부분은 생소하여 읽기가 수월하지 않았습니다만, 전반적으로 술술 읽히다보니 책을 사자마자 단숨에 다 읽었습니다. 알폰스 무하의 작품을 좋아하는 사람이라면, 일독을 적극 권하고 싶은 책입니다.

드디어 국내에도 크리타에 대한 서적이 나왔습니다. 무척 반갑네요.

크리타는 포토샵,페인터와 같은 비트맵 방식의 드로잉 어플리케이션입니다. 크리타는 기부를 통해 수익을 창출하고 있을 뿐 오픈소스 즉, 무료로 배포되는 소프트웨어입니다. 그럼에도 불구하고 크리타는 꽤 수준높은 퀄리티를 보여주고 있습니다. 맥, 윈도우, 리눅스 등 다양한 OS에서 작동하고 있어서 대부분의 사용자들이 부담없이 사용할 수 있습니다.

크리타는 드로잉에 특화된 툴 답게 포토샵에서는 찾아보기 힘든 기능들이 있습니다. 패턴 드로잉이라던지, 좌우 대칭으로 그려주거나, 만화경처럼 다각도로 그릴 수 있는 다중 붓 도구같은 기능들 이외에도 무료 소프트웨어가 맞나 싶을정도의 퀄리티를 보여줍니다.

 

책의 내용들을 몇 장면 찍어봤습니다. 밑그림을 스캔해서 불필요한 부분들을 정리하고 라인만 살려서 채색하고 완성하는 과정을 다루고 있습니다. 크리타에서 편리하게 사용할 수 있는 기능들을 사용해서 작업하는 내용들을 확인할 수 있는데요, 크리타는 포토샵에 비해서 회전과 반전하는 기능이 편리합니다. 포토샵에서는 Rotation 이외에는 반전시키고자 한다면 별도의 단축키를 생성해서 만들어야하는데, 크리타는 처음부터 관련 기능들이 단축키로 지정되어 있습니다.

그래서 포토샵과 단축키가 약간 다르게 지정되어 있는 부분들이 있는데, 원한다면 포토샵과 같은 단축키로 지정해주는 옵션도 있습니다. 여러모로 사용자가 드로잉하는데 편의를 많이 제공하고 오로지 순수하게 그림 그리는 재미에 집중할 수 있도록 프로그램이 설계되어 있습니다.

수채화풍의 느낌도 살릴 수 있는 것을 보여주는 튜토리얼 입니다. 책은 스케치북에 그린 밑그림을 가져와서 다루는 방법부터, 셀 애니메이션 스타일, 아크릴/유화풍, 수채화풍 스타일까지 다양한 화풍을 소개하고 있습니다. 책 후반부에 다루고 있는 소소한 팁들은 크리타를 통해 좀 더 폭 넓고 편리한 이미지 편집이 가능하다는 것을 보여주고 있습니다.

일본에서 쓰여진 책 답게 다뤄지고 있는 튜토리얼의 화풍은 대부분이 일본 아니메 스타일로 다뤄지고 있습니다만, 해외 유저 들이 올린 작업들을 보면, 회화수준의 작업들도 확인 할 수 있습니다

크리타가 한국어로도 서비스가 되고 있고, 국내에도 관련 서적이 출시 되었다는 것은 무척 반가운 일입니다. 포토샵, 페인터는 물론이거니와 최근 클립스튜디오, 사이툴과 같은 드로잉 툴들도 많은 관심을 끌고 있습니다만, 크리타도 그 못지 않은 재미있고 훌륭한 툴입니다.

본 서적의 출간으로 국내에도 크리타 유저가 많아졌으면 좋겠습니다.

구매에 대한 정보는 아래 링크를 참고하시기 바랍니다.

 

해당 리뷰에 쓰인 도서는 출판사로부터 제공받았습니다. 

기존에 사용하던 테마는 automattic에서 제공하는 Underscores starter theme을 이용해서 제가 직접 만들어서 사용했는데, 포트폴리오 사이트를 kalium 테마를 구입해서 만들고나서 보니 생각보다 괜찮더군요. 그래서 묵혀두었던 enfold 테마도 좀 개선되었겠지 싶은 생각이 들었습니다. enfold 테마를 다시 공부해보고 싶어서 변경해봤습니다. 그런데 이거 참 시간들여서 한참 만졌는데도 후회가 될 정도로 엉망이네요.

이게 제가 잘못해서 설정을 못하고 있나 싶어서 한참 끙끙매던 부분인데, 반응형 테마로 적용했을때 햄버거 메뉴가 뜨지 않는 오류가 있습니다.  왜 이런 상황이 발생하는가 봤더니 ul을 감싸고 있는 div 태그를 display:none으로 놓고 햄버거 메뉴는 그나마 ul 하위의 li에서 뜨게끔 해놨더군요.

div > ul > li 이런 구조로 되어있는 상황에서 div에 display:none을 걸어놓으면 당연히 그 하위 태그들은 전부 노출되지 않죠. 도대체 왜 이런 구조로 짰는지 알 수가 없습니다만, enfold와 같은 손쉬운 제작을 표방하는 테마들은 이런식으로 크고 작은 문제들이 있는것 같습니다. enfold mobile menu not working으로 검색해보면 정말 수두룩하게 나올 정도라 문제가 심각해보이는데도 좀처럼 해결되지 않고 있는 상황입니다.

어찌됐건 조만간 테마를 다시 만들도록 하고, 일단은 하루종일 끙끙대며 세팅을 했으니 당분간은 enfold 테마로 블로그를 운영해야겠습니다. 덕분에 모바일에서는 메뉴를 구경할 수 없음을 참고하세요 ㅋㅋㅋㅋ 이거 참 심각하네