코드 작성 가이드 - 현직 LINE 개발자가 알려주는 읽기 쉽고 코드 리뷰하기 좋은
이시가와 무네토시 지음, 정기욱 옮김 / 길벗 / 2024년 4월
평점 :
장바구니담기


개발자들 사이에서 어려운 코드에 대한 선호가 조금은 있는 듯 하다. 현재는 대중 대상의 생성형 AI 강의와 비전공자 직장인/자영업자 대상의 AI를 최대로 활용하는 파이썬 프로그래밍 강의를 주로 하고 있어서 현업의 분위기까지는 잘 모르겠으나, 예전에 JAVA 프로그래밍을 할 때는 어려운 코드에 대한 선호를 희미하게 감지할 수 있었다.

너무 쉽고 이해하기 쉬운 솔루션을 개발하면, 그거 누가 못하나 하는 시선으로 보는 사람들이 있었다. 대학에서도 마찬가지다. 연구 논문에 무언가 어려운 접근 방법과 이론이 잔뜩 써 있어야 잘 쓴, 가치가 있는 논문으로 보인다. 간단히 해결할 수 있는 방법이 명백하게 있음에도 말이다.
이해하기 쉬운 코드를 작성하는 것이 얼마나 어려운 일인지, 문제를 복잡하고 어렵게 해결하지 않고 간단하고 효율적으로 해결하는 것이 얼마나 많은 지식을 요하는 일인지 모르는 것 같다.
이 책은 현직 LINE 개발자가 쓴 책이다. LINE 일본인 개발자와 LINE 한국인 개발자가 협업하여 썼기 때문에 가독성이 좋다. 예시로 들고 있는 소스 코드는 안드로이드 앱 개발에 쓰이는 코틀린 소스다.
코틀린은 비교적 최근에 앱 개발에 쓰이기 시작했기 때문에 나처럼 예전에 안드로이드 개발을 했던 사람이라면 친숙하지 않을 수 있다. 그런 사람들을 위해 뒷부분에 코틀린 필수 문법도 소개하고 있다. 코틀린을 다루어 보지 않은 사람도 개발 경험이 있다면 충분히 이해할 수 있다.
이 책은 네이밍, 주석, 함수, 소스 코드 내의 개별 요소 간의 결합도, 프로그램 설계에 필요할 수 있는 상태 전이에서 어떻게 하면 가독성이 좋은 소스 코드를 작성할 수 있는지 상세히 설명한다. 마지막으로 코드 리뷰 프로세스에 적용하면 좋은 팁들을 소개한다.
코틀린은 다른 프로그래밍 언어에서 가지지 않은 성격들을 갖고 있다. 그러나 이 책에서는 그러한 문법은 배제함으로써 더욱 다양한 언어의 개발자들이 이 책을 읽고 이해하고 적용할 수 있도록 했다.
코딩 강의를 하면서도 입문/초급 단계에서부터 어려운 소스 코드를 작성하시는 분들을 본다. 이 분들이 어려운 소스 코드를 선호하시는 것인지, 쉬운 소스 코드를 작성하는 방법을 모르시는 것인지까지는 모르겠다. 그러나 그리 바람직하지 않은 것만은 분명하다.
앞으로의 강의에 이 책의 내용을 녹이고 싶다. 개발자라거나, 코딩에 관심있는 사람들이라면, 또한 프로그래밍 언어를 다루어 본 사람이라면, 또는 나처럼 코딩 강의를 하는 사람이라면 일독할 만 하다.




댓글(0) 먼댓글(0) 좋아요(1)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
생성형 AI로 웹툰 만화 제작하기 - 스테이블 디퓨전·미드저니·챗GPT
김한재 지음 / 성안당 / 2024년 4월
평점 :
장바구니담기


생성형 AI가 널리 쓰이면서, AI를 이용한 크리에이터들이 늘어나고 있는 것 같다. GPT로 글을 쓰는 것은 이제 기본이다. 음악도, 그림도, 동영상도 AI를 사용해 아주 쉽게 만들 수 있다. Suno라는 유명한 서비스로 만든 음악은 아주 들을 만했고, Pika로 만든 짧은 동영상도 매력적이다. 사진을 올려서 그 사진이 움직이게 만드는 기능은 놀랍다. Sora가 출시되면, 이러한 AI를 이용한 컨텐츠 생성은 더욱 활성화될 것 같다.

지금껏 이미지 생성 AI는 주로 코파일럿 디자이너와 스테이블 디퓨전을 써왔다. 코파일럿 디자이너는 언어 능력이 좋다고 느껴져서, 에세이의 삽화를 생성하는 데 자주 썼다. 스테이블 디퓨전은 다양한 기능이 있는 데 반해, 그라디오를 사용한 GUI 인터페이스로 구동시키지 않으면 접근하기가 조금 어려웠다. 파이썬으로 제어해보려고 아마존에서 책을 직구까지 했는데, 출간이 아직도 한참 남았다. 그라디오를 쓰면 되지만, 그건 코랩에서 유료화되어서 아주 잠깐 테스트를 해 본 게 다였다.
그러나, 이 책에서는 스테이블 디퓨전을 로컬에서 그라디오를 사용해 구동시키는 법을 알려준다. Stability Matrix라는 프로그램을 설치하면 간단하다. 당장 시도해보았다. 그러나 당연히 아주 느렸다. 코랩에서 구글 서버를 쓸 때도 꽤나 기다려야 했는데, 이건 도를 닦아야 하나의 그림을 얻을 수 있었다. 하지만, 그렇게라도 시도해 볼 수 있다는 데 의의를 두었다. 안 그러면 코랩 유료 계정을 써야 한다.


스테이블 디퓨전에 넣은 프롬프트의 문제였는지, 모델의 언어 능력의 문제인지, 내가 의도한 그림은 얻어지지 않았다. 이런 종류의 이미지 생성은 코파일럿 디자이너가 나아 보인다.
다음은 미드저니를 시도했다. 미드저니는 현재 유료로 서비스되고 있지만 YesChat이라는 사이트에서 매일 2개의 쿼리를 무료로 쓸 수 있다. 사용 가능한 총 쿼리의 개수에 제한이 있고 모든 기능에 접근할 수는 없지만, 몇 개의 프롬프트를 시도해보기는 충분했다.
우선, 이 책의 내용과는 동떨어져 있지만, 개발하고 싶은 영어 교육 관련 어플리케이션이 있어 로고를 요청해보았다. 그럭저럭 마음에 든다.




다음은 이 책의 주 내용인 캐릭터를 제작해보았다. 결과는 훌륭했다.




미드저니에서 최근 출시한 기능인 cref도 이 책에서 자세히 소개한다. 바로 시도해보았다. cref는 생성한 캐릭터의 일관성을 유지하면서 다양한 베리에이션을 생성해 준다. 웹툰 제작에 필수적인 기능이다. 그러나 미드저니를 공식 사이트에서 쓴 것이 아니라, 조금 편법을 써서 cref를 썼더니, 베이스가 된 캐릭터 이미지의 해상도가 좋지 않아, 캐릭터의 느낌이 조금 변했다. 하지만 너무나 훌륭하고 마음에 드는 캐릭터 시트가 완성되었다.





나는 에세이를 종종 쓰지만, 그림은 사실 전혀 못 그린다. 캐릭터나 만화, 웹툰이라면 젬병이다. 그러나 AI를 쓴다면, 내 에세이를 귀여운 웹툰으로 변화시키는 것도 가능할 것 같다. 투비컨티뉴드라는 플랫폼에서 한 번 시도해보고 싶다. 다만, 그렇게 생성한 컨텐츠를 투비컨티뉴드에서 게시 금지를 하지 않는지는 한 번 알아봐야 할 듯 하다.
이제는 누구나 예술가가 될 수 있다. 그림을 그리지 못해도 상관없다. 적절히 프롬프트를 쓰고, 몇 가지 테크닉을 익힌다면, 웹툰을 쉽게 만들 수 있다. 스토리를 만드는 것도 챗GPT가 훌륭하게 도와준다. 아이디어만 있다면 쉽고 빠르게 작품 하나를 완성할 수 있는 시대. 나도 도전해보고 싶어 진다. 이 책이 아주 큰 도움이 되었다.



l  출판사로부터 도서를 제공받아 작성한 서평입니다.



댓글(0) 먼댓글(0) 좋아요(1)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
[eBook] 삶이 흔들릴 때 뇌과학을 읽습니다 - 우리의 마음과 행동을 결정하는 두뇌 법칙 25
이케가야 유지 지음, 김준기 옮김 / 힉스 / 2024년 3월
평점 :
장바구니담기


뇌과학에 관심을 가진 지는 오래되었다. 우연히 집어 든 책에서 생전 처음 듣는 사실들을 읽은 이후, 그러한 발견을 하는 재미에 기회가 되는 대로 종종 읽어왔다. 이 책은 뇌과학 책이면서 저자 미케가야 유지만의 검증되지 않은 가설도 다수 포함되어 있기에, 에세이처럼도 읽힌다. 가볍게 술술 읽히는 뇌과학 책이다.

가령, 우울한 사람이 똑똑한 사람일 수 있다거나, 심장의 위치가 왼쪽이기에 대부분의 사람이 오른손 잡이일 수 있다거나.
또는 과학자만의 다소 엉뚱한 시선으로 미래를 예견해보기도 한다. 약으로 모든 사람이 숏 슬리퍼가 될 수 있을 지도 모른다거나, 살 찔 걱정 없이 마음껏 음식을 먹을 수 있을 지도 모른다거나.
과학적 논리 전개에 따른 다소 비현실적인 결론과, 정석을 따른 놀라운 과학적인 사실이 섞여 있어 아주 새로운 느낌이었다. 특히, 모든 사람이 비판 없이 그러려니 받아들이는 것들에 대해 새로운 관점을 제시한다.
나이가 많은 사람의 뇌가 성능이 저하되는 것이 아니라, 성능은 그대로이나, 환경적 자극이 없이 생활하는 패턴 때문에 나이가 많은 사람이 성과가 나지 않는다거나. 사람의 자유 의지는 어쩌면 신경세포막의 우연한 전기 발생 때문일 뿐, 아무 것도 아닐 수도 있다거나. 대인관계에서 우위를 차지할수록 신경세포의 증식력이 높아지니, 앞으로는 상사를 속으로 낮춰 보는 게 업무 능력에 도움이 될 지도 모른다거나.
그 동안 뇌과학 책을 꽤 읽었다고 생각했으나, 또 새로운 사실을 만나는 기쁨을 느낄 수 있는 책이었다. 특히 참신한 관점과 과감한 가설이 흥미로운 책이다. 그가 전개하는 급진적인 주장을 모두 받아들일 수는 없어도, 상당히 읽는 재미가 있는 책이다.




댓글(0) 먼댓글(0) 좋아요(2)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
파이썬 FastAPI 개발 입문
나카무라 쇼 지음, 박광수 옮김 / AK(에이케이)커뮤니케이션즈 / 2024년 3월
평점 :
장바구니담기


예전에 프로그래밍을 배울 때는 C부터 시작해서 JAVA, C++, C#등을 배우는 것이 정석으로 여겨졌지만, 요즘은 많이 다른 듯 하다. 무엇보다 AI의 부상으로 프로그래밍 환경이 많이 바뀌었다. 베이직 중의 베이직인 C 언어나, 객체지향 언어로 선풍적인 인기를 끌었던 Java를 제치고, 요즘은 파이썬 언어의 인기가 대단하다. 일단 요즘 인기를 끌고 있는 AI 개발을 할 수 있으며, 웹 개발부터 데이터 분석, 업무 자동화 등 거의 못하는 것이 없을 정도로 할 수 있는 것이 많다. 그럼에도 불구하고 간결한 문법으로 배우기 쉽다. 그래서 요즘은 파이썬을 가장 먼저 배운다고 한다.

또한 요즘은 챗GPT에게 파이썬 프로그래밍을 해 달라고 하면 꽤 괜찮은 수준의 소스 코드를 짜 주기 때문에, 이제는 코딩이 컴퓨터 프로그래머들만의 전유물이 아닌 듯 싶다. 본업이 있는 사람들이 본업을 보조하기 위한 도구를 직접 개발하기 위해 파이썬 공부를 하는 모습을 많이 보았다.
<
파이썬 FastAPI 개발 입문>은 파이썬 입문자를 위한 책은 아니다. 전반부에 파이썬 핵심 내용을 간단히 짚고 넘어가기는 하지만, 자세히 설명하지 않는다. 기본 문법을 모두 공부한 사람이 대상이다.
그리고 웹 개발을 하고 싶은 사람 대상이다. FastAPI는 웹 개발에 필요한 프레임워크이다. 그리고 빠르다. 기존에 쓰이던 Flask에 비해서 상당히 빠르다. 파이썬은 인터프리터 언어이기 때문에 속도에 이슈가 있다. 안 그래도 느린 파이썬을 이용해 웹 사이트를 개발할 때, Flask 보다는 FastAPI를 쓰는 것이 나아 보인다.
, 이 책은 파이썬 기초는 알고 있으나 FastAPI는 처음 다루어 보며, 빠른 웹 사이트를 개발하고 싶은 사람에게 최적인 책이다.
초반부에 개발환경 설정법을 자세히 다루고 있으며, FastAPI에서 특히 중요한 파이썬 문법을 다시 한 번 짚고 넘어간다. FastAPI로 웹 어플리케이션을 만들기 위한 기본적인 문법을 다루며 MySQL을 사용하는 방법도 소개해, DB 연결을 해볼 수 있다. 특히 비동기화에 대한 내용을 다루어 속도를 개선하도록 했다.
마지막으로 유닛 테스트법과 AWS 등의 클라우드 플랫폼에 배포하는 방법까지 다룬다. 파이썬 기초를 알고 있다면 이 책으로 FastAPI를 익힘과 동시에 DB 다루기, 유닛 테스트, 배포까지 단숨에 배울 수 있다.
나의 주 관심사는 파이썬을 이용한 AI 개발이지만, 모델 개발이 아닌 AI 시스템의 API를 이용한 서비스 개발이 목적이므로 웹 인터페이스가 필요한 경우가 많다. 이 책으로 AI 서비스의 빠른 웹 인터페이스를 구현할 수 있는 방법을 알게 되어 기쁘다.
파이썬으로 웹 개발을 하는 사람이라면 필독서이며, 웹 인터페이스가 필요한 나 같은 사람에게도 아주 유용한 책이다.





댓글(0) 먼댓글(0) 좋아요(1)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
움직임 습관의 힘 - 100세까지 자유롭게 움직이는 몸 만드는 10가지 필수 훈련
켈리 스타렛.줄리엣 스타렛 지음 / 코리아닷컴(Korea.com) / 2024년 3월
평점 :
장바구니담기


하도 운동을 싫어하다 보니, 체력과 건강 상태가 좋지 않았다. 한창 바쁠 때는 산책을 하자고 나가서는 20미터도 못 가서 다리가 아프고 허리가 아프고, 발이 아파왔다. 그래서 시작한 것이 만보 걷기다. 매일 만보를 2년쯤 걸었더니, 체력이 많이 향상되어서 이제는 하루에 스케줄이 두, 세 개가 되어도 거뜬하다.
또 한 가지 느낀 것은, 꼭 운동이 아니어도 생활에서 움직임이 많아지면, 그게 집안일이나 번잡스러운 물건 찾기 뿐 이더라도, 조금 더 건강해지고 활력이 있어지는 것이 느껴졌다.
<
움직임 습관의 힘>은 단순히 근육을 키우고, 체력을 키우기 위한 운동 책이 아니다. 이 책은 가동성을 높이기 위한 책이다. 늙어서도 지팡이에 의지하지 않고 자유롭게 걷고, 서고, 앉았다 일어날 수 있고, 젊은 사람들은 조금 더 빠르게 움직이고 유연한 몸을 가질 수 있게 해 준다. 각종 근육통도 줄여 준다.
이것을 높이는 데는 바이털 사인이라고 하는, 가동성을 평가하는 지표를 개선함으로써 이루어진다. 바이털 사인은 거창하거나 힘든 운동을 통해 측정되지 않는다. 단순히 손을 짚거나 무릎을 바닥에 대지 않고 앉았다 일어설 수 있나, 숨을 얼마나 오래 참을 수 있나, 한쪽 다리로 얼마나 오래 균형을 잡을 수 있나 같은 것들이다.
우리는 애써 헬스장에서 땀을 흘리고, 피트니스비를 내 가며 운동해야 한다고 믿는다. 숨이 턱까지 차오를 때까지 달려야 건강에 좋다고 생각한다. 이 책은 그러한 편견을 뒤집는다. 그러한 운동이 물론 건강에 도움이 되지 않는 것은 아니나, 가동성을 높인다는 측면에서는 별로 효율적이지 않다. 아무리 운동을 많이 한, 근육이 탄탄히 붙은 사람이라고 하더라도 늙어서 거동이 불편해질 수 있다는 것이다.
이 책에서는 아주 간단하게 가동성을 측정할 수 있는 테스트와, 가동성을 높이기 위한 훈련법을 제공한다. 해야 하는 것은 아주 간단하다. 잘 자고, 잘 먹고, 잘 걷고. 그저 쪼그려 앉거나 의자에 앉지 않고 바닥에 앉는 등의 훈련을 통해 가동성을 높일 수 있다고 한다.
아무리 바빠도 그건 할 수 있다. 경쟁에 치여 잠도 줄이고 밥도 대충 먹고, 하루 종일 의자에 앉아 컴퓨터와 씨름하는 직장인이라 하더라도, 건강을 지킬 수 있는 법을 알려주는 아주 유용한 책이다. 건강 관리를 할 시간이 턱없이 부족한 모든 현대인에게 이 책을 권한다.



댓글(0) 먼댓글(0) 좋아요(1)
좋아요
북마크하기찜하기 thankstoThanksTo