이 책은 재능이라는 허상에 부딪혀 자신의 잠재력을 발휘하지 못하는 사람에게 추천해주고 싶은 책이다. 뇌과학이 발달하기 전에는 뇌를 컴퓨터에 비유했다. 컴퓨터에는 램, CPU, 기억장치의 용량등이 정해져있다. 뇌도 똑같았다고 생각했다. 연습을 하는 것은 단순히 정해져있는 성능(역량)을 최대한 발휘하기 위한 것이었다. 하지만, 뇌과학이 발달한 지금 이 사실은 터무니없는 것이다. 뇌과학에서 연습을 하면 뇌는 그 능력을 만든다는 것이 증명되었다. 하지만 그냥하는 연습은 안된다. 똑같은 것을 반복해서는 실력이 늘지않는다. 오히려 퇴화한다. 그럼 어떻게 연습해야하는가? 이에 대한 답을 주는 책이 1만시간의 재발견이다. 이 책의 요점은 누구나 1만 시간동안 한 분야에 의식적인 연습을 하면 전문가가 될 수 있다는 것이..
특히 나 자신이 가장 변하지 않았다. 그런데도 내 수중에 1억 7800만 달러가 들어올 것이다. 샤워를 하고 아침을 먹고 차를 몰고 일터로 갔다. 나는 어느 누구보다도 일찍 출근했다.(p.513) 의사가 나와 또 아들이라고 했다. 나는 속으로 아들 두 명, 아들 한 켤레라고 생각했다.(p.338) 필 나이트씨가 얼마나 신발에 미쳐 살았는 지 자신의 일을 얼마나 사랑하는 지 알 수 있는 부분이다. 이렇게 무언가에 미쳐있는 사람의 책을 읽으면 나도 무언가에 미치고 싶어진다. 의미있는 것에 미쳐 타인에게 도움을 주는 삶은 가치있는 삶이고, 나도 그런 삶을 살고싶다. "난 무언가에 미쳤던 적이 있나?"라고 생각해보았다. 나도 6족 보행로봇을 만들면서 오직 로봇을 어떻게 하면 잘 만들지, 지금 발생한 문제를 어떻..
Six-legged-robot을 무선조종하기 위해서는 ps3 컨트롤러의 모션값을 esp32를 통해 받고, 이 정보를 아두이노에 전달해줘야합니다. USB_host_shield를 사용하면 이 번거러운 작업을 하지 않아도 되지만, bluetooth dongle의 문제로 되지가 않아서 esp32로 진행을 하도록 하겠습니다. 사용보드 : LOLIN D32 보드 아두이노보드는 메가를 사용하였습니다.(아두이노 우노는 SoftwareSerial을 사용하여 진행해주시면 됩니다.) 아두이노메가에는 Serial통신을 위한 핀이 여러개가 있습니다. usb포트를 사용할때는 setup함수에서 Serial.begin();로 작성하잖아요? 통신핀을 사용할 때는 Rx1이면 Serial1.begin(); Rx2이면 Serial2.beg..
참조리턴참조리턴은 함수의 반환값을 반환할 때 참조를 사용해 리턴하는 것을 말합니다.함수에서 객체나 값을 반환할 때 복사되어져서 전달되게 되는 데 이런 불필요한 복사를 막을 수 있어 효율적인 프로그램을 만들 수 있는 방법입니다. 간단한 예시를 통해 참조리턴을 이해해보도록 하겠습니다. 1) 값 전달 방식(참조를 사용하지 않은 경우)참조를 사용하지 않은 경우 위와 같이 add함수안에서만 생명력을 가지는 변수 n이 생성됩니다. 그리고 반환을 할 때도 n의 값을 전달하는 방식입니다. 2) 참조를 통한 전달(매개변수에만 참조를 사용한 경우)참조로 매개변수를 받으면 a라는 변수의 별명이 n으로 추가되는 것입니다. 그래서 1번 방식에서의 불필요한 복사생성을 안해도 되는 장점이 있지만, 값 변경이 목적이 아니라 단순히 ..
복사생성자복사생성자함수는 복사 생성 시에만 실행되는 특별한 생성자입니다.클래스에서 오직 1개만 존재할 수 있고, 매개변수도 오직 하나로 자기 클래스에 대한 참조입니다.선언형식은 다음과 같습니다.class ClassName { ClassName(const ClassName& c);}; const는 붙여도되고 안붙여도되지만 참조를 통한 전달의 유일한 단점이 원본이 바뀔 수 있다는 점임을 고려했을 때 const를 붙이게 되면 원본이 바뀌게 되는 상황을 방지할 수 있어 붙이는 것이 좋습니다. &를 붙여 참조를 통해 전달하는 이유는 값 전달 방식(call by value)로 매개변수를 전달함에따라 불필요한 복사생성이 생기기 때문에 효율성 증대를 위해 사용한 것입니다. 복사생성자가 필요한 이유#includeusi..