본문 바로가기

전체 글

[리뷰] 이론과 실무를 아우르는 <핸즈온 머신러닝> 머신러닝을 잘 아는 선배에게 수업을 듣는 느낌입니다. 쿡 찌르면 와르르 쏟아져 나오는 얘기 보따리 같다고나 할까요. 문제가 있다면 알려주는 선배와 듣는 후배 사이 간격이 제각각 일 수 있다는 점입니다. 알아도 너무 잘 알고 많이 알다 보니, 아낌없이 풀어놓는 내용들이 어떤 이에게는 전체 흐름과 윤곽을 잡을 수 있는 더할 나위 없는 기회가 될 수 있으며, 다른 어떤 이에게는 우와우와~ 하며 새로운 세상을 만나 감탄사만 연발하며 어리둥절할 수 있습니다. 더하여 옮긴이가 꼼꼼하게 추가해 놓은 주석은 뭔가 갸우뚱할 수 있는 부분이나 설명이 부족한 부분을 명확하게 짚어줍니다. 우선 무슨 얘기를 하고 있는지 알아보기로 했습니다. 하나씩 꼼꼼히 따라가려 했다가는 얼마 못 가 바스러지고 있는 제 의지를 만날게 틀림없기.. 더보기
[리뷰] 설정부터 배포까지 <초보자도 프로처럼 만드는 플러터 앱 개발> 너무 당연한 얘기겠지만 플러터로 어떻게 앱을 만들 수 있는지 알려 줍니다. 무엇보다 앱을 만들어보는데 방점을 두고 있습니다. 결과를 만들어내는데 집중하는 방식이어서 세밀하게 살피기보다 전체 흐름을 파악하기에 좋습니다. 알고 넘어가야 하는 부분은 정확하게 짚어줍니다. 코드보다 구성 빠르게 한번 보고 난 뒤 찬찬히 한번 더 보는 방식을 권합니다. 처음부터 설명을 따라 코딩하며 결과를 확인하는 것도 나쁘지 않습니다만, 단계별로 만들어 가는 앱의 화면과 기능 코드를 주욱 따라가다 보니 어느 순간 코드가 비슷한 구조를 이용하여 확장과 반복을 거듭하고 있는 게 보였습니다. 플러터에 조금 가까워진 느낌이랄까요. 코드 중간중간 의미를 알 수 없는 부분이 있어도 답답함을 해결하려 하기보다, 이 동네에서는 이렇게 하는가 .. 더보기
[리뷰] 지금 이곳에서 <진화적 아키텍처> 소프트웨어 아키텍처만으로도 생각이 많아지는데 진화적 아키텍처라니. 처음 드는 느낌은 마치 열심히 걷고 있는데 저 멀리서 달려 나가고 있는 상대를 보고 있는 느낌이었습니다. 그처럼 진화적 아키텍처는 디디고 있는 현실을 생각하면 너무 먼 얘기처럼 보였습니다. 하지만, 내용을 알아갈수록 현재를 돌아보고 앞으로를 살피게 하는 힘이 있었습니다. 역학, 구조, 영향력 피트니스 함수, 자동화, 점진적 변화, 커플링과 중복, 데이터, 함정, 안티패턴 등. 생각지도 못했던 내용, 어렴풋하게나마 추측한 상태에 머무르던 개념, 나름 안다고 생각했지만 그게 다가 아니었던 관계 같은 내용이 생생하게 펼쳐져 있습니다. 사례가 있어서 그나마 따라갈 수 있었습니다. 책에서 인용한 한 문장이 이 모든 걸 한마디로 정리해 주는 것 같습.. 더보기
[리뷰] 리눅스를 이해할 수 있는 <그림으로 배우는 리눅스 구조> 리눅스가 어떻게 움직이는지 엿볼 수 있습니다. 정확하게 말해보면 우리는 매일 사용하는 윈도우조차 백그라운드에서 무엇이 어떻게 움직이는지 별로 관심이 없습니다. 잘해야 프로세스 익스플로러나 작업 관리자를 사용하는 정도입니다. 대부분 실행되지 않거나 종료되지 않는 프로그램을 확인하여 강제 종료시키거나 프로그램이 느려질 때 메모리 상태 확인 용도이고요. 그런데 리눅스를 대하는 태도는 다릅니다. 그렇다면, 왜 이렇게 꾸준히 리눅스를 알려고 하는 걸까요? 아마도 우리가 사용하는 많은 서비스와 프로그램이 리눅스 위에서 돌아기기 때문일 겁니다. 서비스를 개발하거나 관리하기 위해서는 서비스뿐 아니라 그 바탕이 되는 리눅스를 아는 게 도움이 되기 때문입니다. 인테리어를 예로 든다면, 건물 구조를 이해한 바탕 위에 디자인.. 더보기
[리뷰] 어떻게 대응하고 무엇으로 풀어가는지 보여주는 <실전 스프링 부트> 스프링은 프레임워크를 넘어 생태계라고 해도 지나치지 않을 듯싶은데요. 이런 스프링 생태계에서 발을 헛디뎠다가는 어마어마한 문서 사이에서 허우적거릴 가능성이 다분합니다. 책에서는 시작과 함께 스프링 부트가 차지하고 있는 위치를 정확히 알려줍니다 '개발자 관점에서 스프링 부트는 개발자와 스프링 프레임워크 사이에 위치한다.' 책을 한마디로 축약한다면 표지에 있는 문구 그대로입니다. 기본 개념부터 실무 베스트 프랙티스까지 '소방호스에서 쏟아져 나오는 물을 받아 마신다'는 비유를 들어보셨나요. 어마어마한 학습량을 소방호스로 물을 마시는 상황에 빗댄 표현입니다. 스프링 부트를 사용하기 위해 알아야 할 내용이 그만큼이나 많다는 뜻은 아닙니다. 어떻게 사용하는지 알차게 알려줍니다. 스프링 부트를 구경은 해봤다 정도면 .. 더보기
[리뷰] 당신이 알고 있던 테스트를 넘어서는 <이펙티브 소프트웨어 테스팅> 소프트웨어 개발은 테스트의 연속입니다. 일일이 결과를 출력하든, 브레이크 포인트를 잡아서 한 단계씩 확인하든 어떤 방식을 사용하든 만든 코드가 의도한 대로 돌아가는지 확인해야 합니다. 테스트를 누군가 해준다면 나는 코드에 집중할 수 있을 거라는 생각도 했었었지만 리뷰를 쓰며 드는 생각이 그러려면 분신술을 쓸 수 있어야겠다는 생각이 드네요. 배보다 배꼽이 체계적이고 효율적인 테스트를 추구한다고 합니다만 내용을 읽다 보면 '이 정도까지 한다고'라는 생각이 들 수 있습니다. 자판기에서 음료를 뽑듯이, 누가 하더라도 누락되는 부분 없이 기본 테스트 구성을 만들 수 있다는 데서 시작합니다. 기본 구성 위에 다양한 테스트 대상을 적용하며 테스트를 다듬어 나갑니다. 테스트를 개발에 적극 활용한다 정도로 생각하면 오산.. 더보기
[리뷰] 프롬프트에서 한발 더 들어간 <챗GPT 개발자 핸드북> 책에서도 언급합니다만 '서당개 삼 년이면 풍월을 읊는다'는 속담이 있습니다. 저자는 챗GPT를 서당개처럼 봐도 무방하다고 합니다. 주워들은 게 많아서 시키면 나름대로 이렇게 저렇게 끼워 맞춰 그럴듯하게 주워섬긴다는 점에서 비슷하다고 합니다. 다만, 서당개와는 비교할 수 없을 만큼 많이 듣고, 읽었다는 게 다른 거죠. 컴퓨터는 속도와 분량에 특화된 기계라는 건 모두가 아는 사실입니다. 그렇지만, 속도와 분량에 어마어마한 연산이 더해져서 이런 물건이 나오리라고는 많은 사람들이 상상하지 못했던 것 같습니다. 이제 챗GPT는 반려동물처럼 이미 우리 곁에 자리하고 있습니다. 골드러시일까? 조금만 관심이 있다면 주변에서 챗GPT 관련 내용을 어렵지 않게 접할 수 있습니다. 오히려 너무 많아서 뭐부터 봐야 할지 당황.. 더보기
[리뷰] 변화를 알려주는 <더 나은 웹 개발을 위한 가이드> 사용자가 접하는 화면을 중심으로 웹 개발 단계를 살핍니다. 웹은 지금도 변화하고 있습니다. 그리고 이제는 명확하게 '모바일이 우선이다'라고 알려줍니다. 각 장이 다루는 주제는 상세히 접근하고자 하면 책 한 권 분량은 쉽게 나올 것입니다. 주제별로 핵심을 설명합니다. 지나치게 상세한 설명으로 기운을 뺏는 부분이 없어 집중력을 유지하며 볼 수 있었습니다. 조목조목 모든 기능을 얘기하지 않습니다. 알면 좋지만 몰라도 상관없는 부분은 건너뛰고 알아야 하는 기능을 중심으로 설명합니다 쓰는 사람만 쓰는 것처럼 보이기도 하고, 몰라서 못 쓰거나 알아도 익숙하지 않아 쓰지 않는다는 느낌이랄까요. 더 이상 브라우저가 지원하지 않는다는 핑계로 미루지 말라고 합니다. 이미 알고 있는 내용이라면 핵심을 확인하며 지식을 다질 .. 더보기