[작성자:] snowall

  • 음악…?

    내가 좋아하는 음악을 보면 대체로 일본음악이다. 일본음악 중에서도 애니메이션 주제가의 헤비메탈 편곡이나 유로비트 편곡 같은 것들을 좋아한다. 애니메탈이라든가, 파라파라 맥스라든가.

    뭔가 굉장히 마이너한 취향 같은데, 아직 같은 취향을 가진 사람을 못 만났다. 곡 정보도 교환하고 그러고 싶은데.

  • 인간의 가치

    최저임금이 기업의 경제활동을 위축시키고 그러다보니 오히려 경기회복에 도움이 되지 않는다는 주장을 하는 사람이 있다.

    https://www.facebook.com/photo.php?fbid=10215946001104309&set=a.2102091313289.127666.1275640004&type=3&permPage=1

    누구나 자신의 관점에서 세계를 바라보고 그에 따른 세계관을 가질 수 있다. 그에 따라 생각하고 행동하는 것은 자유다. 그리고 그것이 바로 자유다. 하지만 그렇다고 자신의 세계관과 사상을 남에게 강요하는 것은 나쁘다.

    정부의 정책은 국민 대다수에게 이익이 되는 방향으로 정하는 것이 좋다. 최저임금제도 역시 마찬가지이고, 최저임금이 계속 올라가는 것도 마찬가지 이유이다. 어떤 사람들은 최저임금이 오르면 기업의 수익성을 악화시키기 때문에 오히려 경기를 나쁘게 하고 기업을 운영하기 힘들게 해서 경제발전을 늦춘다고 주장한다. 과연 그럴까?

    최저임금이 오르는 것을 주장하는 사람들은 일단 지금 받고 있는 노동자의 임금이 너무 적어서 생계 유지가 힘들기 때문에 최저임금이 올라가야 한다고 주장한다. 최저임금이 올라가면 안된다고, 또는 내려가야 한다고 주장하는 사람들은 기업의 인건비 부담이 너무 크기 때문에 최저임금을 올리면 오히려 경기를 나쁘게 해서 기업이 망하고 결과적으로 실업자가 많아져서 오히려 사람들 삶이 더 나빠진다고 주장한다. 이 문제는 그냥 최저임금이라는 변수 하나만 놓고 보기에는 너무 많은 사람들의 이해관계가 얽혀 있기 때문에 간단히 답을 내릴 수 없다. 하지만 최저임금이 올라갔을 때 기업이 망할 것이라고 일방적으로 주장하는 것에는 분명 문제가 있다.

    기업의 목표는 수익 창출이다. 수익을 내지 못하는 기업은 망하는 것이 맞다. 기업이 수익을 내는 방법은 다른 사람들에게 가치를 제공하고 그에 맞는 돈을 받는 것이 있다. 기업은 자신이 제공하는 가치가 최대한 비싸게 평가받기를 원하고, 사람들은 기업이 제공하는 가치를 최대한 싼 가격에 받고싶어 한다. 기업이 자신의 가치를 최대한 비싸게 평가받기 위해서 제품개발도 하고, 광고도 하고, 여러가지 방식을 동원해서 가격을 올리려고 한다. 하지만 당연히 너무 비싸면 원하는 사람들이 줄어들고 오히려 수익이 줄어들기 때문에 수익을 극대화 하려면 적당한 가격을 맞춰야 한다. 잘팔리면 가격을 올리고 안팔리면 가격을 낮춘다. 반대로, 수익을 극대화하기 위해서 손실을 줄일 수도 있다. 즉, 제품을 만드는데 들어가는 원가를 줄일 수도 있고, 광고 없이 브랜드만으로 물건을 팔 수도 있고, 유통 마진을 줄여서 수익을 늘릴 수도 있다. 최저임금은 그 중 원가를 올리는 원인이고, 원가를 차지하는 다양한 요소 중에서 인건비를 올리는 원인이다. 아, 물론 유통에도 사람이 필요하므로 유통 마진을 올리는 원인이기도 하다. 어쨌든 인건비를 올렸을 때 기업의 수익이 줄어드는 것은 사실이므로, 최저임금이 기업의 수익을 악화시키는 것도 사실이다.

    그렇다면, 기업의 수익이 악화되면 기업의 경제활동이 위축되니까 경기가 더 나빠질까? 자, 생각해보자. 최저임금이 올라가서 인건비 부담 때문에 수익이 줄어들었다고 하자. 여기서 기업이 취해야 하는 대응 방법은 무엇이 있을까? 일하는 사람을 줄여서 인건비를 줄일 수 있을 것이다. 내가 주장하고 싶은건 기업이 최저임금 인상에 대응해서 인건비를 줄이기 위해 노동자를 해고하는게 나쁘다는 것이 아니다. 최저임금이 올라가면 실업률이 올라간다. 그렇다면 기업의 경제활동은 어떻게 되는가? 실업률이 올라가면 전반적으로 내수시장이 위축된다. 즉, 수입품을 파는 회사와 내수시장에 물건을 공급하는 회사들의 수익이 나빠진다. 뿐만 아니라, 인건비가 올라갔으므로 수출을 주로 하는 회사도 원가 절감에서 불리해지고 따라서 가격 경쟁력이 떨어지므로 수익성이 나빠진다. 최저임금이 올라가면 기업의 수익성은 악화된다. 그렇다 치자. 자, 이제 악화된 수익성은 어떻게 해결해야 하는가? 최저임금이 올라가서 수익성이 나빠졌다고 손 놓고 있으면 그 회사는 결국 망할 것이다. 어쨌든 수익성은 악화되었고 이 문제를 해결하려면 더 좋은 물건을 만들거나, 원가를 줄이거나, 유통 마진을 줄이든가, 아무튼 다양한 부분에서 절약해서 실적을 올려야 한다. 그것을 어떻게 할 것인가? 더 좋은 물건? 개발해야 한다. 원가 절감? 개발해야 한다. 유통 마진? 개발해야 한다. 뭐든 뭔가를 개발해야 한다. 개발은 누가 하는가? 사람이 한다. 기술자가 하든 임원이 하든 누군가는 해야 한다. 즉, 노동자를 고용해야 한다는 뜻이다. 여기서 그 노동자를 공짜로 쓸 방법이 있는가? 없다. 법적으로는 없다. 돈을 주고 일을 시키는 것이 원칙이다. 하지만 이렇게 되면 기껏 노동자를 해고해서 줄여놓은 인건비가 다시 늘어나는 셈이라, 기업 입장에서는 최소한의 인력으로 최대한의 성과를 내고 싶어할 것이다. 즉, 같은 인건비를 받고도 일을 더 잘하는 사람을 뽑으려고 할 것이다. 예를 들어서 2배 더 많은 연봉을 받더라도, 3배 더 많은 성과를 낸다면, 3명을 해고하고 일 잘하는 한명을 고용해서 인건비를 절약할 수 있다. 이것이 회사에서 원하는 인재라면 그런 사람이 되기 위해서 노동자들은 경쟁할 것이고, 그런 기준에 맞는 사람을 뽑았을 때 기업은 수익을 더 높일 수 있을 것이다. 자, 이 때, 회사에서 원하는 인재를 뽑을 책임은 누구에게 있는가? 회사에 있다. 적어도, 회사 사장과 회사 인사팀장에게 있다. 회사의 관리자가 일을 제대로 했다면 일 잘하는 직원을 뽑아서 회사의 수익성을 높일 것이고, 그게 안되는 회사는 망할 것이다. 이걸 체계적으로 잘 하기 위해서 회사는 직원의 근태관리도 하고 고과관리도 한다. 이 과정 속에서 개인은 최대한 비싼 연봉을 받기 위해서 노력하고, 회사는 최대한 싼 연봉으로 직원을 쓰려고 할 것이다. 그리고 이것 역시 수요-공급 법칙을 따르기 때문에, 그 중간의 적정 선에서 가격이 결정된다. 만약, 필요한 인재에 대한 적정 연봉이 있는데, 회사의 수익성이 나빠서 그 연봉을 주면 오히려 회사가 망할 수 있다고 해 보자. 그렇다면 어떻게 될까? 회사가 망하도록 놔두면 회사의 수가 줄어들고, 수요-공급 법칙에서 수요가 줄어들기 때문에 공급이 상대적으로 많아져서 노동자의 가치가 떨어지고 그 결과 회사가 고용할만한 적당한 가격까지 내려가게 된다. 응? 아까 그 회사는 망한거 아니냐고? 수익성이 나쁘다는건 시장에서 물건이 안 팔린다는 건데, 그 얘기는 이미 그 물건의 수요가 없다는 뜻이니까 망하는게 당연하다. 만약 수요가 있는데도 회사가 망했다면, 그 물건을 만드는 다른 회사가 있을테니 노동자는 그 회사에 취업하면 된다. 망한 회사 사장은 뭐해서 먹고 사냐고? 회사가 망할 때 까지 수익성이 악화되었다는건, 다시 얘기하지만 그건 수익성 개선을 위해 노력을 하지 않은 관리자 책임이다. 강력한 시장 개입 권한과 자금을 가진 정부가 최저임금인상이라는 방식으로 노동자를 챙길 필요가 없다고 생각한다면, 회사를 편 들어줄 이유도 없다고 생각하는게 맞다.

    아, 물론 정부가 회사의 편을 들어줄 수도 있다. 최저임금을 없애고 근로기준법에 대한 처벌을 약화시키거나 없애는 방식도 좋다. 그런데 그렇게 한다면 국민의 다수를 차지하는 노동자가 정권교체를 실행에 옮길 것이다. 포퓰리즘 아니냐고? 그럼 노동자보다 사장님이 더 많은 나라가 되도록 기업하기 좋은 나라를 만드시든가. 또는 노동자들에게 “노동자들이 살기 위해 사장님들 위한 정책을 시행하는 정치인에게 투표하세요!”라고 설득하시든가. (이게 말이 안된다는건 당신도 알고 있을 것이다.)

    자, 그럼 최저임금이 올라갔을 때, 사람들이 다들 돈을 더 많이 받게 되니까 그만큼 물가도 더 빨리 올라가고 따라서 올라가기 전이랑 달라진게 없는데 기업 활동만 위축된다는 주장을 살펴보자. 아니, 방금 얘기했듯이 물가가 올라갔으면 수익도 당연히 올라간다. 물가가 올라가는데 기업의 수익만 낮아진다는 현상은 있을 수 없다. 물론 어떤 기업은 수익이 줄어들 수 있고, 망할 수도 있다. 하지만 다 망하는가? 그럴리가 없다. 거기서도 수익을 내는 기업은 존재하고, 그런 기업이 살아남아서 더 발전할 것이다. 그렇다면, 망한 기업은 살아남아야 할 가치가 있었는가? 그럴리가 없다. 남들 다 버는데 혼자 못 벌고 있으면 그건 그냥 그 기업의 상품이 가치가 낮아서 그런 거니까, 기업이 노력을 안한거다. 물론 인건비가 올라서 원가 절감이 안되다보니 수익이 악화되서 폐업할 수도 있다. 하지만 만약 그 상품이 시장에서 정말 필요한 물건이라면, 그런 회사가 몇 개 망하고 기술력 좋은 회사가 성장해서 규모의 경제를 이룩하여 더 싸게 제품을 내놓고 더 많은 수익을 낼 수도 있다. 그런 회사가 망하면, 노동자들의 경쟁이 심해지니까 인건비는 저절로 줄어들게 된다. 아, 최저임금이 올라갔으니까 인건비가 줄어드는데 한계가 있지 않느냐고? 급여가 최저임금 수준에서 왔다갔다하는 직군이 회사의 기술개발에 굉장히 치명적인 영향을 줄 정도라면, 그 회사의 기술력은 안봐도 뻔하다. 기술개발 말고, 단순 생산인데도 최저임금이 올라서 인건비가 올라가니까 원가상승으로 수익이 나빠지는건 막아야 하지 않겠느냐고? 그 회사 망하면 생산직이 일자리를 다 잃으니까 더 나쁜거 아니냐고? 다시 한번 말하지만, 그 와중에 다른 회사는 기술 개발 해서 그럼에도 불구하고 수익을 내고 있다. 그리고 그런 회사들이 다 망했다면? 시장에서 필요하지도 않은 상품을 만드는 회사가 수익을 내는게 더 이상한 일 아닌가? 시장에 필요한 물건인데 수익성이 나쁘다고? 회사가 망하면 가격이 올라갈 것이고, 그럼 다른 회사들이 사업에 뛰어들어서 가격이 떨어질 것이다. 그럼 아까 그 회사가 계속 일하는게 낫지 않냐고? 아니 그 회사는 기술 발전을 못 따라가서 도태되었으니까 새로운 회사가 새로운 기술로 새로운 상품을 만드는게 더 낫다고 몇번 말했다.

    최저임금을 올려주면, 사람들이 일을 적게 해도 돈을 벌 수 있으니까 다들 쉬엄쉬엄 일하고, 대충대충 일하고, 건성건성 일해서 회사에 악영향을 준다고 하는 사람도 있다. 돈 받은 만큼 성실하게 일하는 직원을 찾기 어렵다고 한다. 자 생각해 보자. 돈 받은 만큼 성실하게 일하는 직원을 찾기 어려운 것은 누구의 사정일까? 회사, 사장, 인사팀의 사정이다. 그 직원의 사정일까? 아니다. 직원은 당연히 틈나면 놀고싶고 쉬고싶고 퇴근하고 싶다. 그러고도 돈을 제대로 준다면 말이다. 아, 법적으로 임금체불은 불법이니까 그렇게 놀고먹는 직원도 돈을 주긴 줘야 하는거 아니냐고? 앞에서 말했지만, “근태관리”라든가 “고과관리”같은 인사업무는 회사 관리자의 책임이다. 회사에 가서 일을 하고 있으면, 그 일을 잘 하든 못 하든 근로계약서에 쓴 월급을 주라는 것이 법이다. 일을 잘했을 때 더 주라는 그런 법은 없는데, 많은 회사에서 직원들이 일을 더 잘하도록 하기 위해서 수익이 많이 나면 그에 따르는 포상을 준다. 많든 적든. 일을 잘 못했을 때 “덜 줘라”는 법도 없다. 일을 제대로 못했는데 왜 돈을 줘야 하냐고? 계약서 썼으니까! 일을 제대로 못할 사람이면 애초에 뽑지를 말았어야 하고, 일단 뽑아서 계약서 썼으면 주기로 한 돈은 주는 것이 당연하다. 그럼 일단 뽑히고 나면 누가 일하냐고? 방금 말했지만, “뽑혀서 계약서 쓴 다음에는 일 안할 것 같은 사람”을 뽑는건 직원이 아니라 회사다. 계약서 쓰고도 일을 열심히 할 것 같은 사람을 제대로 뽑았다면 그 사람은 당연히 열심히 일하는 사람이다. 물론 그렇게 하고도 일을 제대로 하지 않는 사람이 들어올 수도 있다. 그런 경우 적절한 법적 절차를 거쳐서 해고할 수도 있다. 해고가 절대로 불가능한 것이 아니다. 해고가 쉬울 경우 직원이 받는 불이익이 너무 크기 때문에 까다롭게 만든 것이지 불성실한 직원의 해고는 충분히 가능하다. 사람이 불성실한걸 어떻게 증명해야 하냐고? 아니 그럼 불성실하다는 증거도 없는데 월급을 안 주는건 뭐고? 응, 척 보면 안다고? 나도 당신을 척 보면 그런거 척 봐야 모른다는 걸 알겠다.

    일 잘하는 사람을 찾기 어렵다고? 아니지. 앞에서 말했지만 시장의 법칙은 수요-공급의 법칙이다. 회사에서 필요한 인재가 있으면 그 사람이 원하는 연봉을 주고 데려오는게 원칙이다. 너무 비싸서 수익이 악화된다고? 그 사람이 왔을 때 수익이 날 것이 확실하다면, 투자를 더 받아오는 것이 사장의 일이다. 회사가 가난해서 투자를 아무도 안해준다고? 투자를 받아오는건 다시 한번 말하지만 사장의 일이다. 회사에 필요한 인재가 자기 연봉을 깎아서 들어갈 일이 아니다. 정 거시기하면 스톡 옵션이라도 주고 데려오든가. 그 사람이 그런 인재인지 어떻게 아냐고? 그걸 모르면 인사팀에서 나가야지. 사장을 그만두거나. 다시 한번 말하지만, 사람 제대로 뽑는건 회사의 사정이다. 노동자의 사정이 아니다. 아무 일도 하지 않고 돈을 벌기를 원하는 것이 도둑놈 심보라면, 아무나 뽑아놓고 그 사람이 일을 잘하기를 기대하는 것도 도둑놈 심보 아닌가?

    최저임금이 오르는 것은 문제의 본질이 아니다. 그건 그냥 정책이다. 기업에서 볼 때 정부 정책이 맘에 안들 수도 있다. 투덜대는 것도 불평하는 것도 자유다. 하지만 노동자들은, 국민의 대다수를 차지하는 노동자들은, 포퓰리즘이라고 해도 최저임금을 올릴 것 같은, 올려주는 정치인에게 표를 줄 수밖에 없다. 이렇게 되면, 뻔히 보이는 최저임금 인상에 대해 철저히 대비해서 수익성 악화를 방어하는 기업이 살아남고 그렇지 못한 기업이 망하는게 당연한 것 아닌가? 이게 누구 책임이다? 회사 책임이다.

    노동자가 더 많이 노력해서 자신의 가치를 높이고 일을 잘 하기를 원한다면, 회사는 그런 노동자가 왔을 때 진짜로 연봉을 많이 줄 각오가 되어 있어야 한다. 무노동 무임금이 원칙이라면, 무임금 무노동 역시 원칙이다.

  • Still Waiting

    Still Waiting
    (by Hayashibara Megumi)

    Counting the hours 시간을 보내
    Time goes by, nothing matters 시간은 흘러, 아무 문제 없이
    Sitting alone in the night 밤중에 혼자 앉아서
    Music is playing 음악은 흐르고
    Life goes on, but I’m dying 삶은 계속되는데 나는 죽어가네
    My heart is longing for my lover 내 마음은 연인을 열망하는데
    The same old table, and the same old dress 같은 낡은 탁자에, 같은 낡은 옷에
    I come here everyday and hope that you’ll be there 매일 여기 와서 당신이 오기를 바라
    I’m waiting, I’m making conversation to you all by myself 나는 기다려, 나는 혼자서 당신과 대화를 해
    And you’ll promise that you’ll never leave me  날 절대 떠나지 않는다고 약속하겠지
    Drowning in memories, too much bourbon and whiskey 추억에 잠겨, 너무 많은 술을 마시고
    I’m still waiting for my lover 난 여전히 연인을 기다려
    See my reflection as I stare out the window 창문에 비친
    Wishing that you were here tonight 당신이 여기 오늘 밤 여기 오길 바라는 내 모습을 보니
    Lost in your shadow in the arms of another 다른 사람의 팔에 안긴 당신의 그림자를 잃어버렸어
    My body’s yearning for my lover 내 몸은 여전히 당신을 외치는데
    They say that I’m crazy, have I lost my mind? 내가 미쳤다고 해, 내가 정신을 놓았나?
    Oh, no, I won’t deny that I still love you so 아니야. 난 여전히 당신을 사랑하는걸 거부할 수 없어
    I’m waiting, heart’s breaking 난 기다려, 마음은 찢어져
    I am searching but you’re not anywhere 찾고 있지만 당신은 어디에도 보이지 않아
    I am praying, won’t you come back and free me 나는 기도해. 당신은 돌아오지 않고 날 놓아주지도 않겠지
    No one can save me, only you make me happy 아무도 나를 구해줄 수 없어. 당신만이 나를 행복하게 해줄 수 있어
    I’m still waiting for my lover 난 여전히 연인을 기다려
    I still remember all the things you said 당신이 말한 모든걸 아직 기억하고 있는데
    How your heart was set to never let me go 어떻게 당신의 맘은 날 놓아주지 않는것인지.
    I’m waiting, am I fading? 난 기다려. 나는 희미해지고 있는걸까?
    Disappearing each time I close my eyes 눈을 감을 때마다 순간이 사라져.
    Did you love me at least once, or was I dreaming? 최소한 한번이라도 나를 사랑했나요? 아니면 꿈이었나요?
    Working the streets 길에서 일하는데,
    I don’t know where, what am I doing? 내가 어디서 뭘 하는지 모르겠어
    I’m still waiting for my lover 난 여전히 연인을 기다려
    Counting the hours 시간을 보내
    Time goes by, nothing matters 시간은 흐르고, 아무 문제 없이.
    I’m still waiting for my lover 난 여전히 연인을 기다려
    Drowning in memories, too much bourbon and whiskey 추억에 잠겨, 많은 술과 함께
    I’m still waiting for my lover 난 여전히 연인을 기다려
    I’m still waiting 난 여전히
    For my lover 연인을 기다려.

  • 파이썬 클로저

    파이썬 클로저가 뭔지 모르고 있었는데 나도 모르게 제대로 쓰고 있었다는 사실을 깨달았다.

    가령 여러개의 변수를 받는 f(x,y)가 있다고 하자. y=10으로 고정시키고 x를 바꿔가며 map을 하고 싶은데

    map(f, [1,2,3])

    이러면 f가 입력이 두개니까 안된다. 이 때.

    def fx(x):

    return f(x.1)

    이렇게 해 놓고

    map(fx, [1,2,3])

    이렇게 쓰면 된다. 참 쉽죠?

  • 람다 피클

    파이썬에서 lambda함수는 pickle이 안된다. pickle이 뭔지는 나도 모른다.(!)

    아무튼 lambda를 포함한 클래스를 multiprocessing을 하려고 시도했더니 pickle이 안된다면서 오류를 내뿜길래 다음과 같이 조치하였다.

    원래: lambda y: SomeExpressionOfY(y)

    참고로 이건 f=lambda y: SomeExpressionOfY(y) 처럼 이름을 붙여줘도 오류가 난다. 다음과 같이 명시적으로 정의해야 한다.

    조치후:

    def f(y):

    return lambda y: SomeExpressionOfY(y)

    왜 이렇게 하였는가?

    사실 저 lambda 자리에 들어가야 할 것이 eval(“lambda y: …”)인 구문이기 때문이다. 물론 eval을 쓸 경우 해킹에 취약해진다는 문제가 발생하지만, 지금 구현중인 코드에서는 eval을 쓰지 않으면 매스매티카 급의 수식 파서를 만들어야 하는 문제가 생겨서 써야만 했다. 어차피 나 혼자 쓰거나, 배포하더라도 그걸 해킹해서 뭐하게 수준의 프로그램이라 별 문제는 없을 것으로 보인다.

  • 수치해석 커리큘럼

    수치해석 커리큘럼

    1. 수치해석의 소개
    2. 수의 표현
      1. 리틀 엔디안, 빅 엔디안
      2. 8비트, 16비트, 32비트, 64비트 표현형
      3. 정수형: 부호, 비트 수
      4. 실수형: 부호, 비트 수, 유효숫자
      5. 0과 무한대
      6. 타입 캐스팅: 암묵적, 명시적
      7. 포맷 스트링
    3. 오차
      1. 오차의 표현
      2. 오차의 전개
    4. 알고리즘
      1. 알고리즘의 조건
      2. 좋은 알고리즘의 조건
      3. 복잡도 표기법
      4. 시간복잡도, 공간복잡도
      5. 수렴성
      6. 알고리즘을 만드는 방법
    5. 수의 사칙연산
    6. 근찾기
    7. 선형대수학
    8. 상미분방정식
    9. 편미분방정식
      1. 타원꼴
      2. 포물선꼴
      3. 쌍곡선꼴
    10. 푸리에 변환, 빠른 푸리에 변환
  • 파이썬 커리큘럼

    파이썬을 배울 때 뭘 어떻게 찾아봐야 하는가?

    1. 파이썬의 (간략한) 역사
      1. 다른 언어와 비교할 때 파이썬의 특징
    2. 파이썬 설치하는 방법.
      1. 파이썬2? 파이썬3?
      2. 공식 리포지토리
      3. 인텔 파이썬
      4. pip
      5. numpy, scipy 등 추가 패키지 찾기, 설치하기
      6. (옵션) 리눅스, 맥에서는?
    3. 커맨드라인 파이썬 실행방법
    4. 파이썬 개발용 IDE 선택하기 및 설정하기
      1. geany
      2. IDLE
      3. 그 외
    5. 기초 문법
      1. Hello, world!
      2. 파이썬에서 들여쓰기에 관하여
      3. 주석 달기
      4. 한글 사용
      5. 변수, 함수, 클래스에 이름을 지어주는 방법
      6. 변수
        1. 변수의 선언
        2. 변수의 사용법
        3. 변수에 값 집어넣기와 값 복사하기
        4. 변수의 종류(type)
          1. 타입 지정, 타입 변환
        5. 리스트, 딕셔너리, 튜플
          1. 리스트의 사용법
            1. 시작은 0부터
            2. 가운데만 골라내기
            3. -1번째 요소
            4. 리스트에 사용할 수 있는 연산자 +, *
            5. 리스트의 메소드
            6. range
          2. 딕셔너리의 사용법
            1. 딕셔너리의 메소드
          3. 튜플의 사용법
            1. a, b = c, d
            2. 튜플의 메소드
          4. in
        6. 문자열 사용법
          1. escape 문자열
          2. 제어문자
          3. 문자열의 메소드
        7. 숫자
          1. 실수와 정수의 차이 – 점(.)을 찍는가 찍지 않는가
          2. 복소수 사용법
          3. 사칙연산 +, -, *, –
          4. 지수연산 **
          5. 나머지연산 %
          6. 크기 비교
          7. +=, -=, *=, /=
          8. 타입이 다른 숫자들 사이의 연산
          9. 연산자 우선순위
      7. 조건문
        1. True, False
        2. if, else, elif
        3. 연산자 “==”
        4. not, and, or
      8. 반복문
        1. for
        2. while
        3. break
        4. continue
      9. 예외처리
        1. try
        2. except
        3. error객체
        4. finally
        5. pass
      10. 함수
        1. 함수의 선언
        2. 함수의 사용법
          1. 변수의 전달 arg, kwds
        3. return을 쓰자
      11. 파일 다루는 방법
        1. 파일 만들기, 열기, 닫기
        2. 읽기, 쓰기, 추가하기
        3. 텍스트 파일, 바이너리 파일
        4. 파일이름과 경로명 다루기
      12. eval
      13. lambda
      14. map
      15. reduce
      16. filter
      17. 클래스
        1. 클래스와 객체와 인스턴스
        2. 클래스의 선언
        3. 클래스의 사용법
          1. 초기화
          2. 멤버변수(프로퍼티)
          3. 멤버함수(메소드)
          4. 클래스의 상속
            1. 다중상속
            2. self, parent
          5. 다형성
          6. 멤버 은폐하기(encapsulation)
      18. 라이브러리 불러오기 “import”
        1. 일부만 불러오기 “from”
        2. 이름 바꾸기 “as”
      19. 연산자 오버로드
    6. GUI 프로그래밍 – wx
      1. GUI 디자인 툴
      2. 창 만들기
      3. 텍스트 칸
      4. 버튼
      5. 메뉴바
      6. 아이콘
      7. 이벤트 사용
      8. 마우스 클릭
    7. 정규표현식
    8. 멀티스레딩, 멀티프로세싱
      1. 스레드와 프로세스
      2. 해보기
      3. 메시지 큐
      4. 변수 전달
      5. 전역 잠금
      6. 동기화
      7. 멀티프로세싱에서 lambda
    9. numpy, scipy 사용법
    10. C언어 가져오기
      1. ctypes
      2. SWIG
    11. 하드웨어 제어하기
    12. 디버깅
    13. 파이썬 코드 최적화 기법
    14. 남에게 배포하기 “py2exe”
  • 자유란

    너무 급진적인 생각인지도 모르지만 단상을 하나 적어둔다.

    사람은 다른 사람에게 자신의 사상을 강요할 권리는 일반적으로 없지만, 자신의 사상을 강요할 자유는 있다. 물론, 그렇게 강요받는 당사자 역시 자신의 사상을 바꾸지 않을 자유가 있고, 관철시킬 자유가 있으며, 자신에게 사상을 강요하는 자에게 거꾸로 본인의 사상을 강요할 자유 역시 갖고 있다. 인간은 평등하니까. 하지만 많은 사람들이 자기가 갖고 있는 자유는 생각하면서 남들이 갖고 있는 자유는 생각하지 못하는 것 같다.
    이 상태를 생각하고나면 떠오르는게, 사람들이 만나서 서로 자기의 사상을 강요하면 서로 괴로우니까 자기 생각을 적당히 숨기고, 적당히 다듬어서, 서로 괴롭지 않은 상태를 유지하기 위한 사회적 규칙이 생각난다. 도덕, 예절, 윤리, 그런 것들이다.
    이것들을 자신의 마음, 생각, 욕망, 사상에 솔직하지 않은 것이라 생각한다면, 그렇게 생각하는 것 또한 그 개인의 자유이다. 그리고 다시한번 말하지만, 그 생각을 그렇다고 다른 사람들에게 말하고 다니는 것도 전달하는 것도 강요하는 것도 그 개인의 자유이다. 하지만, 그러니까 다시 한번 말하지만, 보다못한 다른 사람이 그에게 닥치라고 말할 수 있다는 것 역시 자유에 포함된다는 걸 알고는 있었으면 좋겠다. 그런게 기분나쁘더라도 화내지 말라는 것은 아닌데, 최소한 자신의 자유와 모든 사람이 평등하다는 것을 알기라도 했으면 좋겠다.

  • 의견을 관철하기

    • 잡설

    자신의 의견을 관철시키는 것은 인생에 있어서, 어쩌면, 가장 중요한 일이라고 할 수 있다. 인생은 자기 자신의 선택과, 자기 자신에게 주어진 환경이라는 두가지 원인을 바탕으로 미래가 결정된다. 선택은 필연이고 환경은 우연이다. 자신의 선택과, 그를 바탕으로 한 노력은 큰 이득을 볼 수 없지만 꾸준히 결과를 쌓아갈 것이고, 우연히 주어진 환경과 운 좋게 다가온 기회는 큰 이득을 주겠지만 결과를 기대할 수 없다. 운이 없다면 살면서 단 한번도 기회가 오지 않을 수도 있기 때문이다. 노력하지 않으면 성공할 수 없겠지만, 성공하지 못했다고 노력하지 않은 것은 아니다.

    자신의 의견을 관철시키는 것은 성공하기 위해 해야 하는 가장 적극적인 방법 중 하나일 것이다. 나는 자연현상을 연구하면서 내가 생각하는 가설이 세상을 설명한다고 주장하며, 그 주장을 관철시키기 위해 증거를 찾아내야 한다. 그 증거를 찾아내기 위해 다양한 방법을 사용해야 하고, 그걸 왜 사용해야 하는지 역시 다른 사람들에게 관철시켜야 한다.

    사람들은 자신의 의견을 관철시키기 위해 투쟁한다. 온갖 방법을 써서 외친다. 그것이 다른 사람의 맘에 들지 않을 수도 있고, 그것을 관철시키는 것을 방해하는 것이 다른 사람의 의견일 수도 있다. 어떤 사람들은 유사과학을 외칠 수도 있고, 누군가는 사기를 칠 수도 있다. 소수자 인권을 외칠 수도 있고, 돈이 최고라고 주장할 수도 있다.

    그런 수많은 투쟁들 속에서 살아가다가, 어떤 사람은 힘이 없고, 어떤 사람은 소심하고, 어떤 사람은 자신이 없어서 패배할 수 있다. 아마 대부분의 시도와 노력은 실패로 돌아갈 것이다. 자신이 할 수 있는 선택이 포기하느냐 마느냐밖에 없는 상황에 처할 것이다. 포기할수도 없고 포기하지 않을수도 없는 절대적인 상황에 처할 것이다.

    모든 것을 혼자 해야 할 것 같다는 생각이 들 것이다. 세상에 내던져진 입장에서 이 모든 인생을 나 혼자 해내야 하고, 아무도 나를 도와주지 않을 것이다. 도와달라고 말해도 아무도 도와주지 않을 수도 있다. 하지만 도와달라고 말하는 것 또한 시도이고 도전이다. 혼자서 해낼 수 없는 일이라는 생각이 들면 도와달라고 하고, 다른 사람이 도와달라는 말에 도와주는 사람도 있게 마련이다. 물론 도와주는 사람이 아무도 없을 수도 있다. 도와주겠다는 사람을 만나지 못할 수도 있다. 아무리 많은 사람들이 도와줘도 해내지 못할 수도 있다. 하지만 그래도 말해야 한다.

    다른 사람한테 도와달라고 말해도 된다는 사실을 아무도 가르쳐주지 않을 수도 있다. 그런 사실을 알고 있더라도 사람들은 스스로 해내기를 좋아하고 자신이 해냈다는 걸 자랑하고 싶어한다. 하지만 꼭 하고 싶은 일이 있고, 반드시 해내야 하는 일이 있을 때, 누군가의 도움으로 해결할 수 있는 일이라면 도와달라고 부탁해야 한다.

    반론이 있을 수 있다. 인맥을 이용해 청탁을 한다거나, 뇌물을 주면서 행정적인 처리를 부탁한다거나, 그런 부탁도 하라는 말이냐? 내 주장에서는 그런 것 역시 포함될 것이다. 수단과 방법을 가리지 않고 자신의 성공을 위해 그렇게 해야 할 수도 있다. 하지만, 불법적인 일에는 누군가 피해자가 있을 것이고, 그 피해자 역시 자신의 피해 구제를 위해서 적극적으로 노력할 것이다. 그런 피해자를 도와주는 사람 역시 있을 것이다.

    싸우자. 해야 할 일이 있고, 해내야 할 일이 있으면 끝까지 싸우자. 이기지 못해도 싸워야 할 것이다. 사람들은 그렇게 도와달라고 말하고, 도와주고, 서로 도움을 주면서 살 것이다.

  • 인공지능과 자아복제의 문제

    간단한 생각이다. 앞으로 인공지능 기술이 발전하여, 어떤 개인의 행동패턴, 언어습관, 지식 등을 학습시키면 그 사람처럼 행동하는 어떤 프로그램을 만들 수 있을 것이다. 여기까지는 시간의 문제일 뿐 기술적 문제는 아니라고 생각한다. 그런데 문제는 그렇게 되었을 때 그 개인의 자아는 그렇게 인격이 복사된 프로그램을 자아로 인식할 수 있을 것인가. 일단은 불가능해 보이는데, 만약 뇌-기계 인터페이스가 보다 진보된 형태로 나타난다면 가능할 수도 있다.

    이 문제에 대해서 공각기동대에서는 ‘고스트’라는 개념을 도입해서 해결하고 있지만, 과연 현실에서도 고스트라는 것이 실존할 수 있을지는 의문이다.

    이렇게 해서 어떤 인격이 자동화된 프로그램으로 나타날 수 있게 되면, 본인이 죽더라도 그 주변의 사람들은 본인이 살아있을 때와 마찬가지로 그와 상호작용하면서 마치 그가 살아있는 것 처럼 느끼고 생각할 수 있을 것이다. 그렇다면 이 프로그램에는 인격을 부여해야 하는가 말아야 하는가.

    만약 기술과 사회가 고도로 발달하여 위와 같은 인격적인 프로그램들만 다수로 남게 된 세상에서 인간은 어떤 형태로 남아있을 것인가.