반응형

전체 글 315

임계장 이야기

책을 읽게 된 계기 이번에 서평을 작성할 책을 접한 정확한 계기와 사건이 기억나지는 않는다. 책과 관련된 어떤 블로그 포스팅에서 본 것 같기도 하고 책과 관련된 인터넷 기사에서 본 것 같기도 하다. 혹은 인문학 및 사회 문제와 관련하여 관심이 많은 어떤 지인이 이 책을 읽고 글 혹은 SNS 게시물을 올린 것을 보고 이 책을 구매하였는지도 모르겠다. 이번에 서평을 작성할 책은 임계장 이야기이다. 실제 자신의 이야기를 바탕으로 적은 에세이이지만 이야기의 흐름과 묘사가 너무 잘 표현되어 있어서 굉장히 글이 쉽게 읽혔다. 어쩌면 내가 두려워하는 미래의 나에게 우리 부모님께 혹은 아는 누군가에게 발생할 수 있는 일이기 때문에 더욱 집중해서 읽었기 때문에 쉽게 읽었는지도 모르겠다. 임계장 이야기에서 임계장은 임시 ..

Life/Book 2021.04.01

디커플링(DECOUPLING)

책을 읽게 된 계기 이번 책은 디지털 헬스케어 엑셀러레이터 기업인 DHP(디지털 헬스케어 파트너스)의 최윤섭 대표님의 페이스북에서 접하게 되었다. 엑셀러레이터로 일을 하기 위해서는 창업을 하는 팀에게 다양한 방면(비즈니스 모델, 자본, 팀 운영 등등)에서 투자를 지원하기 위한 지식이 필요하다. 특히, 초기 창업 팀에게는 어떤 문제를 해결하여 수익을 창출하는 비즈니스 모델이 정말 중요하다. 기업을 운영하는 데에 핵심인 수익과 직결되기 때문이다. 이러한 중요한 문제 때문에 최윤섭 대표님이 이와 관련된 책을 읽고 페이스북에 글을 남기고는 한다. 덕분에 이번 서평을 작성할 '디커플링'을 접하여 읽을 수 있었다. 책의 내용이 방대하고 중요하다고 생각했다. 그래서 전문연구요원 훈련받을 때 한 번, 그리고 사회생활을..

Life/Book 2021.03.26

C#에서 kd-tree 사용하기 (3차원, 2차원 상의 특정 점에서 가장 가까운 점 찾기)

문제의 정의 3차원의 모델 데이터를 점들로 표현할 수 있다. 그리고 외부의 어떤 한 점이 있을 때, 이 점으로부터 가장 가까운 한 점을 모델 데이터에 속하는 점들에서 찾고자 한다. 방법; kd-tree 여러 가지 방법이 있을 수 있다. 가장 간단한 방법은 모든 점들을 저장하고 외부의 한 점과 거리를 모두 측정하여 가장 가까운 점을 찾으면 된다. 하지만 이 방법은 매우 오래 걸릴 수 있다. 이를 효율적으로 가장 가까운 점을 찾기 위해서 kd-tree를 사용할 수 있다. kd-tree는 수많은 점들을 효율적으로 접근할 수 있는 구조를 만들어 데이터들을 저장해두는 방식이다. 효율적으로 접근할 수 있는 구조로 되어 있기 때문에 원하는 점을 빨리 찾을 수 있다. 데이터를 효율적으로 접근하기 위한 구조는 이진트리 ..

Study/C# 2021.02.28

변두리 로켓 - 가우디 프로젝트

책을 읽게 된 계기 지금까지 몇몇 소설책을 읽으면서 이야기가 참 재미있다는 생각을 했다. 다양한 사람들이 허구와 실제를 반영하여 만들어낸 이야기는 참 재미있다. 기존에 많이 읽던 책과 글의 느낌과 모양, 상상하게 만드는 느낌이 좋았기 때문이다. 이렇게 가끔씩은 소설을 읽어야겠다는 생각을 가지게 되었다. 또 나만의 이야기를 소설로 써 내려가 보고 싶다는 생각도 했다. 어느 날 인스타그램을 하다가 간호사와 관련된 이야기를 그림으로 표현하는 계정을 보았다. 이 계정은 의료기기와 관련된 어떤 소설을 만화로 홍보하고 있었다. 간호사라는 직업은 의료라는 부분과 밀접하다. 그리고 의료 분야에서 사용되는 기기를 다루는 소설을 이러한 간호사가 여러 경험을 떠올리며 읽게 되니 재미있었다고 했다. 나는 의료기기를 연구 개발..

Life/Book 2021.02.22

의료기기 연구 개발 2년차 회고

1년이 또 지난 2년 차 회고 회사에 입사 후 2년이라는 시간이 흘렀다. 조금씩 주니어를 벗어나려고(?) 노력하지만 여전히 주니어구나라는 생각이 자주 드는 요즘이다. 작년 이때와 마찬가지로 1년이 지난 회고에 대해서 작성하고자 한다. 1년 차 회고에서 계획했던 것을 잘 해낸 사항도 있고 잘 해내지 못한 사항도 있다. 다시 지난해를 훑어보며 다시 계획을 잡아보고자 한다. 여전히 내가 하는 일은 독특하다고 생각한다. 이러한 글을 남기는 것이 새로이 의료기기 분야의 일을 시작하는 사람들 혹은 이미 일을 하고 있는 누군가에게 경험이라는 부분에서 도움을 줄 수 있다고 생각한다. 또 부족한 부분은 다른 분에게 공감과 조언을 받을 수도 있다고 생각한다. 지난 1년의 생활 전반에 영향을 미친 사건은 COVID19로 인..

Life/Log 2021.02.17

부의 추월차선

책을 읽게 된 계기 아마 20년도 말의 경제 관련 서적 이야기의 시작은 아마도 전문 연구요원 이야기를 하지 않을 수 없다. 이전에 서평을 작성한 존 리의 금융 문맹탈출과 같이 경제 관련 서적을 훈련소에서 읽어보자고 생각했었다. 그리고 구매한 책들 중 하나가 지금 서평을 작성할 부의 추월차선이다. 훈련소에서 읽었을 때의 느낌은 사회에서 나와서 읽을 때랑 느낌이 다르다고 생각하여 다시 읽어 보았다. 그래서 21년 2월 지금 서평을 작성하게 되었다. 이 책의 충격적인 문구 중 하나는 책 표지에 있는 한 문구이다. 이 문구는 아래와 같았다. "... 그래 봤자 일주일에 5일을 노예처럼 일하고 노예처럼 일하기 위해 2일을 쉰다." 추월차선의 의미 돈을 모으는 것을 도로를 지나는 것으로 비유해보자. 저자는 대부분의..

Life/Book 2021.02.11

이벤트 호출 시 null 확인 코드의 중요성

상황에 대한 설명 이벤트를 정의하고 이벤트에 맞추어 실행하고자하는 함수를 추가 할 수 있다. 예를 들어 이벤트가 발생하였을 때 특정 데이터를 넘겨주는 동작을 하고자하는 경우가 있다. 이를 다이어그램으로 나타내면 아래의 그림과 같다. 상황에 대한 코드 작성 1 : 이벤트를 호출하여 데이터를 받아보자 이러한 경우 아래와 같이 코드를 작성하여 사용할 수 있다. 1 2 3 4 5 6 7 8 9 10 11 12 public class EventSource { private EventHandler Updated; public void RaiseUpdates() { counter++; Updated(this, counter); } private int counter; } cs 위의 코드에서 바로 RaiseUpdate..

Study/C# 2021.02.08

C# WPF에서 MVC 디자인 패턴 연습 예제 구현하기

MVC란 무엇일까? MVC를 설명하기 전 간단하게 디자인 패턴에 대해서 설명해보고자 한다. 소프트웨어를 제작함에 있어 디자인 패턴이란 어떻게 설계하여 코드들을 작성할 것인지에 대한 방법들이다. 소프트웨어마다 ‘사용자가 누구인가?’, ‘어떤 상황에서 사용되는 소프트웨어인가?’ 등에 따라서 작성된 코드들을 배치하고 엮어 동작할지 조금씩 다르다. 엑셀과 같은 소프트웨어를 만들 때, 소프트웨어가 잘 동작하기 위해 코드를 엮는 방법과 효율적으로 코드를 작성하는 방법이 있을 수 있다. 반면에, 웹 기반에서 동작되는 소프트웨어는 이와 다른 방법이 있을 수 있다. 이러한 방법을 패턴화하여 개발자들이 소프트웨어를 설계하고 코드를 작성할 때 하나의 형식으로 의사소통을 할 수 있다. 이것이 소프트웨어의 디자인 패턴이다. 여..

Study/C# 2021.01.25

구분자(delimiter)가 같은 문자열(string) 데이터를 특정 타입(type)의 어레이(array)로 변환하기

문제의 정의 제품의 데이터 로그를 문자열(string)의 연속으로 저장하여 남긴다고 가정하자. 예를 들어 위치 센서의 값이 데이터 로그로 저장되는 경우를 생각해보자. 이 위치센서의 값은 기준 대비 오일러(Euler) 좌표계로 값을 저장해둔다. 즉, Tx, Ty, Tz, Rx, Ry, Rz에 해당하는 값들이 저장되어 있다. 이러한 일련의 값들을 ','(comma)를 구분자(delimiter)로 두고 문자열로 저장해두었다. 이러한 데이터 로그를 읽어드려 더블(double) 타입의 변수에 저장하여 다루고자 한다. 즉, 문자열 데이터를 더블 타입의 어레이 변수로 저장하고자 한다. 이를 다이어그램(diagram)으로 표현하면 아래와 같다. 방법 일반적인 방법을 먼저 소개하겠다. 먼저 문자열 값을 저장한 후 구분자..

Study/C# 2021.01.21

특정 어레이(array)의 일부분을 가져오거나 복사하기

문제의 정의 특정 어레이(array)가 있다고 가정하자. 이 어레이의 일부를 가져와서 사용하거나 다른 변수에 저장을 하고자 한다. 예를 들어 이 어레이의 데이터 중 인덱스 번호 3부터 7까지의 값을 다른 변수에 저장해야하는 경우 어떻게 해야할까? 방법 for loop을 사용하여 시작 인덱스부터 끝 인덱스까지 가져오는 방법이 일반적이다. C#의 Array 클래스가 가지고 있는 Copy() 메서드를 사용하면 조금 더 간결한 코드로 이를 수행할 수 있다. MS 문서의 Array.Copy 메서드 항목 중, Array.Copy(Array, Int64, Array, Int64, Int64)를 간단히 설명하고 사용해보고자 한다. 이 메서드는 다음과 같은 파라미터를 필요로 한다. 이 메서드를 사용하여 특정 어레이의 일..

Study/C# 2021.01.19
반응형