이 책은 코딩의 개념을 막 이해한 10대들이 한 단계 더 나아갈 수 있도록 구성된 프로그래머 입문서이다. 시중에 프로그래머나 코딩을 다룬 책들은 주로 파이썬 등 프로그래밍 언어를 실제로 쓰는 방법을 다루기에, 큰 틀에서 프로그래머가 무슨 일을 하는지에 대한 정보가 부족했다. 프로그래머가 되려면 코딩 기술이 필요하지만, 프로그래머에게 가장 중요한 요소는 따로 있다. 프로그래밍은 목적에 잘 맞는 프로그래밍 언어를 구별하는 데에서 시작해, 사람들 앞에 프로그램을 내놓는 데까지 이어지기 때문이다.
단순히 반짝이는 아이디어의 단계에서는 생각하지 못한 부분들이 등장한다. 이 프로그램을 어떤 상황에 있는 사람이 쓸까? 색약이나 근시가 있는 사람에게도 화면이 잘 보일까? 어떤 기기에서 쓸까? PC가 아닌 스마트폰에서도 이 디자인이 편리할까? 등 프로그램을 구현하는 과정에서 맞닥뜨려야 할 질문이 많다. 프로그래머는 이런 질문들에 답을 찾아야 하는 사람이다. 따라서 코딩 기술보다는 프로그램이 작동하는 방식, 사람들에게 주는 효과를 먼저 이해해야 한다.
책에서는 프로그래머를 꿈꾸는 10대들이 가장 먼저 알아야 할 이런 지식들을 단계별로 차근차근 풀어낸다. 이어지는 연습 활동은 독자들이 책에 나온 개념을 충분히 이해하고, 자신만의 스타일로 발전시킬 수 있도록 돕는다. 여러 나라에서 10대들이 ‘코딩’이라는 도구로 자신의 아이디어를 멋진 프로그램으로 탄생시킨 사례를 듣다 보면, 프로그래머가 되는 길이 그리 멀리 있지 않다는 생각이 든다.
Contents
작가의 말
1장. 소프트웨어 개발이란?
2장. 아이디어를 프로그램으로!
3장. 프로그래밍 언어 선택
4장. 데이터 관리와 알고리즘 설계
5장. 소프트웨어 심리학
6장. 소프트웨어 개발 윤리
7장. 소프트웨어 개발의 다양성 포용
8장. 소프트웨어 개발의 미래
소프트웨어 개발의 역사
Author
제니퍼 코너-스미스,홍석윤
임상 심리학자이자 작가이다. 1982년에 간단한 계산을 위해 베이식 프로그램을 쓰면서 처음 코딩을 접했다. 10대 청소년의 스트레스를 연구하는 학자로서 통계 분석 일을 하면서 10년 동안 매일 코드를 직접 쓰다시피 했다. 학생들이 프로그램을 써서 무질서한 데이터 덩어리를 문제에 대응할 수 있는 정보로 바꾸는 것을 볼 때면 가르치는 일에 보람을 느낀다. 소프트웨어 설계에 푹 빠져, 먹을 때도 데이터베이스 구조나 블록체인의 가능성을 대화의 주제로 삼는다. 프로그래머가 비디오 게임을 어떻게 만드는지 훤히 알지만, 아이들이나 다른 사람들이 게임에 지나치게 빠지는 건 용납하지 않는 엄마이기도 하다.
임상 심리학자이자 작가이다. 1982년에 간단한 계산을 위해 베이식 프로그램을 쓰면서 처음 코딩을 접했다. 10대 청소년의 스트레스를 연구하는 학자로서 통계 분석 일을 하면서 10년 동안 매일 코드를 직접 쓰다시피 했다. 학생들이 프로그램을 써서 무질서한 데이터 덩어리를 문제에 대응할 수 있는 정보로 바꾸는 것을 볼 때면 가르치는 일에 보람을 느낀다. 소프트웨어 설계에 푹 빠져, 먹을 때도 데이터베이스 구조나 블록체인의 가능성을 대화의 주제로 삼는다. 프로그래머가 비디오 게임을 어떻게 만드는지 훤히 알지만, 아이들이나 다른 사람들이 게임에 지나치게 빠지는 건 용납하지 않는 엄마이기도 하다.