Python & Ruby

Python & Ruby

| 공개

수업의 특징

본 수업은 Python(파이썬)과 Ruby(루비), Ruby와 Python을 동시에 배우는 수업입니다. 저는 이것을 병렬학습이라고 부릅니다. 이를 통해서 프로그래밍 언어들을 관통하는 보편적인 원리를 파악하고, 각 언어가 가지고 있는 특성을 드러내고 싶습니다. 두 개의 언어를 각각 배우는 것보다 빠르게 익힐 수 있다는 것은 덤으로 따라오는 효과입니다.  

수업의 대상

본 수업은 프로그래밍 언어의 문법과 기능을 익히는 수업입니다. 수준은 초심자도 이해할 수 있도록 쉽게 진행됩니다. 언어를 먼저 공부하고 싶다면 여기서 시작하시면 됩니다. 하지만 프로그래밍을 통해서 무엇을 할 수 있는지를 먼저 경험하고 싶다면 '웹 애플리케이션 만들기' 수업을 먼저 볼 것을 추천합니다. 웹 애플리케이션 수업에서는 Ruby와 Python이 등장하지 않지만, 프로그래밍이 동작하는 일반적인 원리를 체험할 수 있을 것입니다.

수업의 한계

본 수업은 두 언어의 모든 기능을 알려드리지 않습니다. 프로그래밍 언어는 대단히 많은 기능을 가지고 있습니다. 모든 기능이 '언젠가'는 필요한 것이기는 합니다만, 처음부터 필요한 것은 아닙니다. 빠르게 무엇인가를 만들어 볼 수 있는 최소한의 도구를 알려드리는 것이 수업의 1차적인 목적입니다. 제작자가 수업을 위해서 하는 고민은 크게 두가지입니다. 

  1. 무엇을 수업하지 않을것인가?
  2. 수업의 내용을 어떻게 충실히 전달할 것인가?

너무 많은 지식의 전달은 초심자에게 중요한 것과 덜 중요한 것을 분별하기 어렵게 합니다. 최소한 본 수업에서 등장하는 내용은 초심자에게는 꼭 필요한 것이면서, 프로그래밍이라는 분야를 지배하는 핵심적인 도구들입니다. 여기에 집중할 수 있도록 수업의 분량이 커지지 않도록 노력하고 있습니다.  

또 본 수업의 제작자는 두 언어의 권위자가 아닙니다. 단지 두 언어를 여러분처럼 더 잘 이해하고 싶은 마음에 이 수업을 만들었습니다. 그런 점에서 우리 모두 같은 출발점에 서 있습니다. 혹 제작자가 잘못된 정보를 전달한다면 넓은 마음으로 이해해주시고 정정해주시면 감사한 마음으로 수용해서 반영하겠습니다. 제작자가 언어에 대해서 명함 정도는 내밀 수 있는 수준이 된다면, 고급기능을 파악하고 싶은 중급자를 위한 수업을 꼭 만들어보고 싶습니다. 하지만 지금은 아닙니다.

수업의 효과

각 언어를 통해서 할 수 있는 일은 아래 링크로 대체하겠습니다. 

학습방법

제가 제시하는 접근 방법은 최소한의 도구를 익힌 후에 무엇인가를 만들어 보는 것입니다. 그 과정에서 만나는 문제는 검색 & 질문을 통해서 해결하는 것입니다. 이 과정을 반복하다 보면 덜 유용한 지식은 도태 될 것이고, 유용한 지식은 자신의 것이 될 것입니다. 그 과정에서 자신에게 최적화된 체계를 갖게 될 것입니다. 점차 기술적인 부분으로부터 자유로워지는 자신을 발견하게 될 것입니다. 

표지소개

프로그래밍은 일종의 표현입니다. 아이는 무엇인가를 표현하는데 주저함이 없습니다. 잘하고 못하고는 상관하지 않습니다. 어른은 아이의 좋은 관객이 되어 줍니다. 잘하고 못하고는 상관하지 않습니다. 그런데 이런 아이들이 학교에 들어가고 직장생활을 하면서 마침내 어른이 되었을 때 이상한 일이 일어납니다. 표현을 못 하고, 피하고, 두려워합니다. 무슨 일이 있었던 걸까요? 어른들은 아이에게 해서는 안 되는 두 가지 일을 하고 있습니다. 수십 년 동안 관객의 삶을 살도록 강요합니다. 잘하는지 못하는지를 평가한 후에 못하면 소외시고, 잘하면 못하게 될까봐 불안하게 합니다. 우리는 무엇인가를 프로그래밍적으로 표현하기 위해서 이곳에 모였습니다. 프로그래밍에 대한 지식을 익히기에 앞서서 표현에 즐거움을 회복해야 합니다. 아이로 돌아가야 합니다. 그래서 아이는 어른의 스승이라고 하나 봅니다.

각 강의의 표지로 사용할 아이의 그림을 찾고 있습니다. 잘 그리고 못 그리고는 중요하지 않습니다. 자신감 있게 무엇인가를 표현하고 있다면 어떤 그림도 괜찮습니다. 꼭 그림이 아니어도 됩니다. 각 수업에 적합한 주제의 그림을 채택해서 알려드리겠습니다. 강의의 수에 한계가 있어서 모든 그림을 표지로 사용하지 못하는 점 미리 양해를 부탁드립니다.

  • 이미지의 크기는 가로방향 1280 X 720으로 해주세요.
  • 이름과 소속을 알려주세요. 익명으로 하셔도 됩니다
    (예:청주 창신 초등학교 4학년 최진혁)
  • egoing+participate@gmail.com 으로 보내주세요.

보내주신 귀한 작품이 보람될 수 있도록 열심히 수업을 만들겠습니다. ^^

댓글

댓글 본문
작성자
비밀번호
  1. 아룸
    유투브에서 보고 들어왔습니다.
    좋은 강의 감사합니다~
  2. higildong
    강의 감사합니다^^
  3. YongHwa Kwon
    좋은 강의 감사드려요~ ^^
  4. GyuBog
    좋은 강의 준비해주셔서 고맙습니다~~
  5. 로망
    egoing님 혹시 청주 사시나요??
  6. 파이썬 강의를 다 들어가네요^^ 강의를 다 듣는다고 다 아는건 아니지만,
    이제 열심히 복습하고 또 다른것을 알아가는 과정이 남을 것 같습니다.
    조만간 완강도 기대하겠습니다!!
  7. BlueHon
    항상 느끼는 것이지만 생각하는 틀과 표현 방식이 범인의 틀을 벗어나시는 듯. 깨어 있는 자 같네요. 공부하러와서 항상 감탄합니다.
  8. happydeveloper
    잘 보겠습니다. 저도 오늘부터 완주를 목표로 스타트! 항상 고맙습니다.
  9. egoing
    청주는 제 삶의 반쪽이 있는 고장입니다. 반갑네요 ^^
    대화보기
    • 스윗나인
      우와! 이고잉님 ㅎ 감사합니다^-^ 저 곧 청주로 이사가요! (그냥 청주에 계신적있었다는 글을 본...기억이있어서...ㅎ) 청주 가서도 생활코딩이 있으니 열심히 열심히 ! 좋은 수업 만들어주셔서 감사합니다 ^-^
      대화보기
      • Frank
        좋은 수업 준비해주셔서 고맙습니다.
      • SSDO
        좋은 수업 만드신거 같네요. 아직 안해봤지만 이제 해볼 생각입니다.
      • egoing
        전혀 그러실 필요 없어요. 노트북 사지 마시고 돈을 잘약하세요!^^
        대화보기
        • 스윗나인
          노트북을 사서, 공부해볼 생각인데.. (전, 디자이너라 개발환경에대해 잘 모릅니다 ㅜ) 전에, 루비같은 경우 윈도우보다 맥환경에서 하는게 좋다는 얘기를 들어서.. 맥북이 필요할까요 ? 아! 그리고 수업개설해주셔서 정말 감사합니다! ㅎ
        • 咸池
          둘 다 관심은 가지고 찝적대다가, 둘 다 진도를 못낸 일인으로서 정말 반가운 수업이군여 !
          일단 발상이 재미있기도 하고, 아마도 효과적인 방법론이 되지 않을까 싶은 기대가 있습니다.
          꼭 시간을 내서 쫓아가보고 싶은 수업이네요. 감사드립니다.
        • Ryun82
          감사합니다. 열심히 공부하겠습니다.
        • 플라나리아
          루비를 배워보고 싶었는데 감사합니다~!
        • hana
          감사합니다!
        • 뒤태지존
          마음만 먹고 못 건드리고 있는 두 가지 언어인데.. 미리 고맙습니다. ^^
        • 머머
          메일로 소식받고 들어왔어요. 완전 기대되요
        • vivalaivda20
          두근두근~
        graphittie 자세히 보기