Software Engineering for SaaS

클라우드환경의 소프트웨어공학 수업

Coursera라는 단체(?)를 통해 무료로 제공되는 공개 수업을 소개합니다. 공개 수업 제목은 ‘Software Engineering for Software as a Service’입니다. 총 5주 과정으로, 현재 3주차과정이 진행되고 있습니다. 루비온레일스로 Software-as-a-Service 애플리케이션을 개발하고 배포하는 애자일 개발에 대해 알려줍니다. 버클리 대학에서 실제 했던 수업내용을 녹화해서 제공하는것 같구요, 버클리 학생들은 이 수업을 위해 주당 5~10시간정도를 할애했다고 합니다. 강의 내용은 약간의 프로그래밍을 해 본 사람이 웹서비스 애플리케이션을 개발해서 배포하는 것까지 다 해볼 수 있도록 탄탄하게 구성된 것 같습니다.

강의는 https://www.coursera.org/saas/class에서 등록해서 신청할 수 있고, 한편당 7~10분 길이의 강의동영상을 보면서 공부하면 됩니다. 총 4번의 과제 제출이 있고, 퀴즈 시험도 봅니다. 강의안을 살펴보면, 루비와 레일스의 기본을 포함해서, HTML/CSS까지 기초적으로 다 다루어줍니다. 게다가 Amazon EC2를 다뤄보는 과제도 있고, GitHub에서 간단한 레일스 애플리케이션을 클론받아서, 약간의 수정을 가해서 Heroku에 배포해보는 과제도 있습니다. 갖가지 유용한 플랫폼을 다뤄보는 경험도 되는거죠.

과제 제출/평가 시스템

온라인으로 숙제를 제출하고 평가받는 시스템인데요, 첫번째 과제의 경우, 기본적인 루비프로그래밍 연습 과제입니다. 과제로 주어진 내용의 소스코드를 작성해서 온라인으로 제출하면, 맞게 구현했는지를 자동으로 평가해서 알려줍니다.

과제평가결과

아마도 자동으로 스펙돌려서 통과한 정도에 따라서 점수 평가하는 것으로 보입니다. 제출하고 잠시 기다리면, 스펙통과후의 점수를 확인할 수 있습니다. 하긴 6만여명(!)이 수강중이라는데, 이정도 과제제출 시스템은 있어야 제대로 평가할 수 있겠죠. 저는 아직 수강이 밀려서 퀴즈는 보지 않았는데, 퀴즈 평가 시스템도 훌륭할 것으로 기대중입니다.

강의 수준

소개되는 갖가지 요소들도 최신의(?) 기술들임은 물론이요, 강의 내용과 학생들의 질문도 대단히 수준급으로 보입니다. 교육의 질이 이렇게 다를 수 있나 의심스러울 정도로 말이죠. 루비언어에 대한 강의도 대단히 깔끔하고 간결합니다. 루비를 새로 배우시려는 분들은 물론이고, 알고 있는 내용을 리뷰하기도 아주 좋을 만큼입니다.

열려있는 수강 기회

이렇게 좋은 강의를 무료로 신청해서 아무 때나 들을 수 있으니, 공부하고자 하는 마음만 있으면 됩니다. Coursera 사이트에 가보면, 이 수업 말고도 다른 강의들이 준비중인게 많이 있습니다. SaaS수업이 너무 마음에 든 나머지, 다른 과목들도 시간 내서 들어보려는 욕심이 생겼습니다.