제임스딘딘의
Tech & Life

최근 포스팅

more

Architecture Pattern VS Architecture Style

소프트웨어 아키텍처 설계를 공부하다보니 Architecture Pattern라는 용어와 Architecture Style라는 용어가 혼용되는 것을 보게 되었습니다. 이 둘은 어떤 차이가 있는지, 동의어인지 찾아보고 정리한 내용입니다.Architectural patterns focus on problem-riented architectural solution, whereas Architectural style focus on structural or behavioral characteristics of related software architectures. 아키텍처 패턴은 문제 지향적인 아키텍처 솔루션에 중점을 두는 반면에, 아키텍처 스타일은 관련된 소프트웨어 아키텍처의 구조나 행위 특성에 중점을 둔다고..

GRASP - Craig Larman의 소프트웨어 설계 원칙

GRASP는 General Responsibility Assignment Software Patterns 의 앞글자를 딴 것이다.직역하면 대략 '일반 책임 할당 소프트웨어 패턴' 정도 된다.패턴이 들어가는 걸 보면 알 수 있듯이, GoF의 디자인패턴과도 관련이 있다.여기에서는 Craig Larman의 9가지 원칙을 이야기 하고 있는데, 이 각각들은 Coupling을 낮추거나, Cohesion과 Reusability를 높이고 Flexibility를 높이기 위한 원칙들이다.우선.. 'OOAD를 사용하여 소프트웨어를 구축하는 일반적인 작업'이 어떤 순서로 이뤄지는지 다시 상기해보자.1. 요구사항 식별2. 도메인모델 만들기3. 디자인모델 만들기 - 소프트웨어 클래스들에 메소드와 속성 추가 - 객체들 간 상호..

DBSCAN 클러스터링 알고리즘 - 머신러닝

본 글은 출처에서 발췌하여 번역한 것 임을 서두에 밝힙니다.출처 : https://www.kdnuggets.com/2020/04/dbscan-clustering-algorithm-machine-learning.html2022/04/04 Nagesh Singh Chauhan이 KDnuggets에 작성한 글입니다.소개: Nagesh Singh Chauhan은 CirrusLabs의 빅데이터 개발자입니다. 통신, 분석, 영업, 데이터 과학 등 다양한 분야에서 4년 이상의 경력을 보유하고 있으며, 다양한 빅데이터 구성 요소를 전문으로 다룹니다.DBSCAN 알고리즘과 그것을 파이썬으로 구현한 소개 내용.2014년, DBSCAN 알고리즘은 세계 최고의 데이터 마이닝 컨퍼런스인 ACM SIGKDD에서 시간 테스트 상(..

Algorithm 2025.05.10 1

객체 지향 설계 원칙(OO Design Principles) 등장 배경

객체 지향 S/W 설계 패턴의 지식 계층먼저, 객체지향 설계를 위한 패턴 지식의 계층은 위 그림과 같이 요약해 볼 수 있다.먼저, OO Basics - 객체지향의 매우 기본적인 요소들이다.추상화, 캡슐화, 다형성, 상속성.그리고 이 네가지 속성들 위에서 SOLID, GRASP와 같은 OO Principles, 즉, '객체 지향 원칙' 과 같은 개념들이 등장할 수 있었다.마지막으로 OO Principles을 반영하여 반복되는 수많은 코딩 패턴들이 있었을 텐데, 그것들을 정리한 Design Pattern과 같은 개념들이 등장한 것으로 볼 수 있다.Design Smells객체지향 언어를 사용한 나쁜 설계에서 발생하는 다양한 증상들과 다양한 신호들을 'Design Smells' 라고 부른다.Rigidity (경..

SOLID - R.C Martin의 소프트웨어 설계 원칙

SOLID : 소프트웨어 설계 원칙1. SRP : Single-Responsibility Principle2. OCP : Open-Closed Principle3. LSP : Liskov Substitution Principle4. ISP : Interface Segregation Principle5. DIP : Dependency Inversion PrincipleR.C Martin이 이야기한 다섯가지 소프트웨어 설계 원칙의 각 앞글자를 따서 SOLID라 부른다. 1. The Single-Responsibility Principle (SRP) 클래스는 단하나의 책임, 변경사유 만을 가져야 한다. A class should have one, and only one, reason to change * S..

거실을 서재로, '거실 서재화'

2024거실에서 TV를 없애고 서재로 만들어 보고자 한다. 일단 데이터를 모아보자. 이건 벽 한면을 바닥부터 천장끝까지 책장으로 가득 채워넣은 사례. 8칸이 나온 걸 보면, 층고가 2.5미터 이상인 집인 듯..?책장 한칸 높이는 보통 320mm이고 목재 두께가 대략 18mm 정도 되보이므로, 계산해보면  2722mm못해도 층고 2.7미터 집이다.이것도 책장 색상이 블랙우드, 다크월넛 계열이라면 더 웅장했을 것 같은데, 무튼 괜찮아 보인다. 대신 사다리 하나 필요할 듯?    이건 AI가 만든 이미지 같은데, 테라스를 서재로 꾸며놓은 것 같다.이런 곳이라면...벽면 단열과 샷시밀폐가 몹시 잘되어 있어야 결로를 방지할 수 있고,그래야 책에 곰팡이 안피우고 잘 관리 할 수 있을 것 같다.    2025지금 살..

3세대 IS250 스파이럴케이블(클럭스프링) 교환

3세대 IS250의 스티어링휠(핸들)과 좌석은 위치 메모리 기능이 있다.시동을 끄면 제자리로 돌아가고, 시동을 켜면 내가 설정해뒀던 위치로 올라온다.이 기능으로 핸들은 하루에도 몇번씩 위치가 들어갔다 나왔다, 올라갔다 내려갔다 한다.2024년 어느순간 핸들 오른쪽에 위치한 버튼 중 'Back' key가 눌러도 동작을 하지 않았다.불편했지만 무시하고 탔다. 그래도 가끔은 눌렸고, 수동으로 핸들 위치를 최대한 낮추면 눌렸다.증상으로 보건대, 핸들 안에 있는 스파이럴 케이블의 접촉 불량일 거라 추측했다.그리고 몇달 뒤 어느순간 Back key 뿐만 아니라 Enter key도 눌렀을 때 동작을 하지 않았다.그리고 또 수 주 뒤 어느순간 그 key과 더불어 위아래 좌우 방향키도 동작을 하지 않게되었다.다 무시하고..

[정비기록] 사이드미러 각도조절 고장 : 부품 교환

서론2016년에 중고로 구입하여지금까지 여전히 출퇴근에 사용하고 있는 2014년식 렉서스 IS250.내 생각에 렉서스에서 만든 차 라고 하면 고장없고 내구성 좋다는 이미지다.직전에 탔던 대우에서 만든 04년식 중형차의 다양하고도 잦은 잔고장이 워낙 스트레스였다.그 차를 탈 당시 나는 대학생이었기에, 더더욱 잔고장에 대한 스트레스가 컸다. 2~3개월에 한번 꼴로 지출이 발생하니.. 큰 금액은 아니지만 잔잔바리 10~40만원 짜리 잔고장들은 큰 수입없는 대학생으로서는 짜증나는 일이었다.그래서 '렉서스=내구성' 그 이미지만 보고 샀다.그리고 9년간 타며 느낀건 그 이미지값은 나름 한다는 것.큰 고장 잔 고장 전혀 없이 타왔다.그러나 차령이 11년차에 접어드니전자부품이 하나 둘 이상동작을 하기 시작한다.  고장..

현대HT imazu 월패드 시간, 날짜 맞추는 방법

살고있는 9년차에 접어든 아파트단지 변전실 및 전기관련 점검이 진행되는 날이었다. 2주전부터 사전 공지됐던 대로, 아파트 단지 모든 동이 정전되었다. 공용공간의 엘리베이터부터, 각 세대내의 전기들까지. 약 3시간이 지난 후, 전기는 들어왔다. 그러나 월패드의 시간, 날짜는 1월1일로 초기화. 날씨, 온도 등의 정보도 비정상적으로 표시. 어라? 싶어서 대충 월패드를 만져보니 시간이나 날짜 설정하는 메뉴가 없다! 보통 이런 경우는 관리실/기계실 어디쯤 설치-운용 되는 중앙 서버로부터 날짜/시간/날씨 정보를 받아 표시하는 것으로 추정할 수 있다. 엘리베이터 호출기능도 안되는 걸로 미루어보아, 전기 복구 후 관리실측에서 해당 서버를 다시 기동시키지 않은 것으로 추측된다. 따로 관리실에 연락은 하지 않았다. 다른..

gRPC-java 프레임워크 로그 출력 설정

gRPC java framework를 사용해서 클라이언트와 서버를 구성하고, 서로 통신하도록 만들었다. 이후, 디버깅이 필요하여, gRPC java framework의 소스코드를 살펴보니, java.util.logging 패키지를 사용하여 로그 출력코드가 삽입되어 있는것을 보았다. 이 내용을 콘솔에 출력하는 방법을 찾아보았다. [logging.properties] # Create a file called logging.properties with the following contents. handlers=java.util.logging.ConsoleHandler io.grpc.level=FINE java.util.logging.ConsoleHandler.level=ALL java.util.logging...

Java 2023.12.19 0

베란다에 전기 콘센트 만들기 (feat. 전동 빨래 건조대)

2015년 지어진 평범한 33평 아파트. 안방 앞 베란다에 전동 빨래 건조대는 설치되어 있다.그런데 콘센트가 없다.빨래 건조 전용으로 베란다를 사용하고자 제습기를 가져다 놓았는데, 꽂을 전기가 없네?  안방 콘센트에서 멀티탭으로 전기를 끌어와 빨래를 건조시키곤 했지만, 전선때문에 샷시문을 꽉 닫을 수 가 없으니 불편함이 이만저만이 아니었다. 전선두께만큼 열린 샷시문 틈으로 들어오는 제습기의 소음과, 여름에는 빠져나가는 에어컨의 냉기. 그리고 겨울에는 슬금슬금 밀려들어오는 추위.그래서 베란다 벽에도 콘센트를 만들어 보기로 했다. 전기는 천장의 전동 빨래 건조대의 것을 따내어(분기시켜) 콘센트로 만들면 될 것으로 판단했다.⚠ 전기 작업전 반드시 차단기 내리기! ⚠본인이 피카츄 출신이거나 토르 출신이면 그냥 ..

렉서스 IS250 3세대 부품(번호) 찾기

외제차도 그렇고 국산차도 법적으로 부품내역 및 부품 가격 정보를 모두 공개하도록 되어 있어서 자신의 차량과 관련된 부품 정보를 미리 알고 있으면 차량정비에 큰 도움이 되곤 한다. 문제는 '부품 정보를 공개 해야한다'라는 법조문만 있지, 그걸 '어디에 공개 해야 한다' 라는 법조문은 없어서... 본인 차에 맞는 부품정보를 '알아서' '잘' 찾아보아야 한다. 최근 내가 타고있는 렉서스 IS250의 부품 정보를 찾아볼 일이 생겼는데, 아래 사이트들이 도움이 됐다. 1. lexus.com 렉서스 닷컴. 렉서스 차량 부품들을 조회홰 볼 수 있다. 단종된 IS나 CT의 부품도 조회가능. https://parts.lexus.com/ 이런식으로 이미지를 통해 부품을 찾을 수 있다. 이렇게 목록을 통해 부품번호(Part..

마우스 위치 강조하기 (feat. PowerToys)

윈도우키 + R 을 눌러 '실행' 창을 띄운 뒤 'PowerShell' 을 넣고 확인을 눌러 PowerShell을 실행한다. PowerShell에서 아래 명령을 넣고 엔터. winget install Microsoft.PowerToys --source winget 아래와 같이 윈도우 패키지 매니저가 PowerToys 를 다운로드 후 설치 한다. 잠시 기다리면 설치 성공 이란 메세지와 함께 설치가 완료되며, PowerToys가 자동으로 실행된다. 마우스 유틸리티 의 설정열기 버튼을 누른다. 1. 마우스 찾기 이와같이 마우스 찾기 사용 기능을 켜고, 활성화 방법은 편한 것을 선택해준다. 나는 왼쪽 컨트롤 키를 두번 누르는 것으로 사용. 왼쪽 Ctrl 키를 두 번 누르거나 마우스를 흔들어 커서 위치를 스포트라..

부자와 가난

부자가 된다고 모든 문제가 해결 되지는 않는다. 부자가 되면 돈과 관련된 문제만 해결 할 수 있을 뿐이다. 부자는 돈을 잘 다루고 돈에 대해서 잘 아는 사람에 불과 하다. 부자라고 해서 선하거나 인격이 높다는 의미는 아니다. 또한 가난하다고 해서 모든 문제가 해결 되지 않는다. 인생의 많은 문제들 중 가난하다고 해서 해결 되는 것은 하나도 없다. 가난하면 돈과 관련된 문제는 무조건 해결 할 수 없다. 돈은 가치 없다고 여기며 혐오하고 무시했던 자들은 돈 때문에 진짜 가치있고 중요한 것인 건강, 가족, 존엄성이 파괴 되는 경우도 발생한다. 가난하다는 것은 돈이 없다는 뜻 이상 이하도 아니다. 가난하다고 해서 선하거나 인격이 높다는 뜻은 아니다. 결국, 부자라고 인격이 나쁜 것도 아니고 가난하다고 해서 인격..

일기장 2023.05.14 0

ChatGPT : 거짓 정보를 그럴듯하게 포장해내는 인공지능

ChatGPT 라는 인공지능 언어모델 서비스가 최근 인기입니다. '언어모델' 이라는 단어에서 알 수 있듯이 사용자가 특정 언어로 질문을 하면 같은 언어로 대답을 해주는 인공지능입니다. 현재는 웹사이트에서 '문자' 로 사용가능한데, '음성-문자 변환' 기술을 잘 이어붙여주기만 하면 음성을 문자로 변환하는 것은 가능한 일이니, 곧 음성으로도 서비스 할 것 같아요. 저도 호기심에 몇번 ChatGPT사용을 해보다가, 사용을 해보니 뭔가 쓸만(?) 한 정보를 주는 것 같아서 종종 회사업무에도 활용합니다. 예를 들면 아래와 같이요. 최근에 회사에서 SMB 프로토콜을 사용하는 네트워크 파일 서버에 연결하는 안드로이드 기반 파일탐색기 앱에서 '이미지 미리보기' 기능을 구현할 수 있는지를 빠르게 검증해보라는 상사의 요구..

USB 규격 마스터링

USB(Universal Serial Bus)는 한국어로 '범용 직렬 포트' 라 번역할 수 있는 장치간 연결을 위한 표준 규격이다. 애플이 오리지널 아이맥(iMac)에 사용하기로 결정을 내린 1998년 이래로 2023년 현재까지 컴퓨터와 거의 모든 IT 장치의 표준 연결 유형으로 자리매김해왔다. USB가 등장하기 전에는 장치간 연결에 어떤 규격을 사용했었을까? ADB에서 FireWire (파이어와이어)와 SCSI (한국에서는 보통 '스카시' 불렀다)에 이르는 다양한 연결 유형이 있었다. 게다가 각각은 고유한 변형까지 있었다. USB 모양 다시 USB 이야기로 돌아와서. 대부분의 기술 표준들들이 그렇듯이 USB는 몇 년마다 새로운 버전이 출시되어왔으며, 속도, 기능부분이 점점 향상되어왔다. ‘범용’임에도 ..

동탄신도시 항공뷰와 호수공원 야경 - 2023년 5월 1일

동탄2신도시 라크몽 에서 호수공원 쪽을 바라본 야경이다. 멀리 동탄1신도시의 메타폴리스 주상복합 아파트도 보이고, 오른쪽 구석에는 동탄호수공원 린스트라우스도 보인다. 아래는 동탄신도시를 지나가는 항공기에서 촬영한 사진들이다. 2023년 5월 초에 촬영했다. 사진 오른쪽 볼록하게 순환하도록 놓여진 도로가 최근 도로를 낸 신주거단지라 불리는 지역이다. 사진의 아래는 동탄호수공원 지역인 산척동, 송동. 사진의 윗 부분은 동탄2신도시 시범단지와 11자상가, 중리IC 등이 보인다. 동탄 2신도시를 왼쪽지역과 오른쪽지역으로 갈라놓은 경부고속도로가 보인다. 곧 지하화 되어 땅속 터널이 될 것이고, 그 위는 공원으로 조성될 것이다. 동탄 1신도시의 상징과도 같은 반원형 도로망이 보인다.

부동산 2023.05.05 0

웹 서비스 구조(feat. SpringBoot와 nginx)

스프링부트 개념 우선 스프링 부트. '스프링 프레임워크'의 사이드 프로젝트로 시작되어 만들어진 웹 애플리케이션 프레임워크다. Java를 기반으로 한다. '스프링 부트'가 등장하기 전 '스프링 프레임워크'가 먼저 등장했는데, '스프링 프레임워크'는 초기 환경 설정시 시간을 많이 할애해야했다. 그것을 문제로 생각한 이들이 사이드 프로젝트로 '스프링 부트' 를 만들었다. 즉, '스프링 부트' 는 '스프링 프레임워크' 를 기반으로 하지만, 엄밀히 말하면 다른 것이니 주의가 필요하다. '스프링 프레임워크'는 위와 같은 구조를 가지고 있다. Python을 이용한 Django, Ruby를 이용한 Ruby on Rails, Javascript를 이용한 Node.js 이 있다면, Java 개발자들은 스프링(=스프링 프레..

Web Technology 2023.04.24 0

2023년. 아파트 분양가가 비싼 이유

2023년 4월입니다. 최근 분양하는 아파트단지들을 보고있자면, 흔히 말하는 '입지좋은' 곳이 아니면 청약미달이라는 쓴 잔을 마시게 됩니다. 당연한 것이긴 합니다만, 지난 상승장 기간이었던 2019년~2022년에는 논밭 한가운데 위치한 나홀로 아파트 입지가 아닌이상, 대부분 청약완료가 되었었지요. 그리고 모두가 똑같이 말씀하십니다. "분양가가 비싸다." 네. 맞습니다. 분양가가 비쌉니다. 그런데 한 번 생각해 봐야 할 것은 물가의 상승입니다. 보통 분양가는 주변 아파트 시세를 기준으로 1차적인 기준이 선정되고, 앞으로의 발전가능성으로 2차적인 기준이 산정됩니다. 그리고 준공시 까지의 물가상승률을 고려한 뒤에, 시공사의 마진을 추가합니다. 여기서 문제가 "물가상승률" 입니다. 이미 원자재 가격과 인건비가 ..

부동산 2023.04.11 0

인기 글

베란다에 전기 콘센트 만들기 (feat. 전동 빨래 건조대)

2015년 지어진 평범한 33평 아파트. 안방 앞 베란다에 전동 빨래 건조대는 설치되어 있다.그런데 콘센트가 없다.빨래 건조 전용으로 베란다를 사용하고자 제습기를 가져다 놓았는데, 꽂을 전기가 없네?  안방 콘센트에서 멀티탭으로 전기를 끌어와 빨래를 건조시키곤 했지만, 전선때문에 샷시문을 꽉 닫을 수 가 없으니 불편함이 이만저만이 아니었다. 전선두께만큼 열린 샷시문 틈으로 들어오는 제습기의 소음과, 여름에는 빠져나가는 에어컨의 냉기. 그리고 겨울에는 슬금슬금 밀려들어오는 추위.그래서 베란다 벽에도 콘센트를 만들어 보기로 했다. 전기는 천장의 전동 빨래 건조대의 것을 따내어(분기시켜) 콘센트로 만들면 될 것으로 판단했다.⚠ 전기 작업전 반드시 차단기 내리기! ⚠본인이 피카츄 출신이거나 토르 출신이면 그냥 ..

[Rust] 윈도우 환경에서 컴파일 실패 : linker link.exe not found

문제 아래는 Rust의 Hello world 출력 코드이다. fn main() { println!("Hello, world!"); } MS윈도우 환경에서, 이것을 cargo run 명령을 통해 실행해보려고 하는데 아래와 같은 에러를 만나게 될 때가 있다. error: linker link.exe not found 원인 Rust컴파일러는 MS윈도우 용 실행파일을 만들어내기 위해 MS Visual C++ Build Tools 를 사용한다. link.exe 는 컴파일된 오브젝트파일을 라이브러리들과 링크 시켜주는 빌드 툴의 하나. 그런데, 어떤 이유에서인지 이게 설치가 안된 상황이라면 이런 에러가 발생한다. Compiling helloworld v0.1.0 (C:\Users\DELL\helloworld) err..

현대HT imazu 월패드 시간, 날짜 맞추는 방법

살고있는 9년차에 접어든 아파트단지 변전실 및 전기관련 점검이 진행되는 날이었다. 2주전부터 사전 공지됐던 대로, 아파트 단지 모든 동이 정전되었다. 공용공간의 엘리베이터부터, 각 세대내의 전기들까지. 약 3시간이 지난 후, 전기는 들어왔다. 그러나 월패드의 시간, 날짜는 1월1일로 초기화. 날씨, 온도 등의 정보도 비정상적으로 표시. 어라? 싶어서 대충 월패드를 만져보니 시간이나 날짜 설정하는 메뉴가 없다! 보통 이런 경우는 관리실/기계실 어디쯤 설치-운용 되는 중앙 서버로부터 날짜/시간/날씨 정보를 받아 표시하는 것으로 추정할 수 있다. 엘리베이터 호출기능도 안되는 걸로 미루어보아, 전기 복구 후 관리실측에서 해당 서버를 다시 기동시키지 않은 것으로 추측된다. 따로 관리실에 연락은 하지 않았다. 다른..

[i30 GD] 운전연습용 중고차. 12년식 27,000km 구매기.

개요 같이사는 분이 2021년 운전면허를 취득한 뒤 차를살까? 조금만 더 버틸까? 고민하기를 1년. 고민만 하다가 드디어 차량을 구입하기로 결정. 그분에게는 첫차이니 만큼 심혈을 기울여서 골라보기로 했다. 용도는 운전연습, 출퇴근, 동네 마트 장보기. 그리고 부모님 뵈러 40~70km 거리의 장거리도 타야한다. 가끔. 고속도로를 타야하다보니 경차는 묻지도 따지지도 않고 일단 제외했다. 그러나 한정되어있는 예산에서 골라야 한다. 예산은 1000만원. 게다가 차주될 분의 취향을 반영해야한다. 세단은 싫다. 해치백 or SUV 를 원한다. 그리고 일단 디젤은 묻지도 따지지도 않고 제외. 차량 유지관리에 가솔린보다 상대적으로 손이 많이 간다. 그리고 갤갤거리는 소리가 거슬린다는 이유. 주행거리는 4만km 아래로..

i30 2세대 (GD) 2022.03.14 4

[i30 GD] 그녀의 첫 중고차 맞이 준비물.

함께사는 분이 운전면허를 따고 첫번째 중고차를 샀다. 운전연습용 + 출퇴근용. 현대 i30 GD. 2012년식. 주행거리 2만 7,500km 10년이나 된 중고차이지만 그녀에게는 나름 의미있을 생애 첫 자동차. 같이 머리를 맞대고 고민 끝에 애칭도 지어줬다. "빵붕이" 그리고, 빵붕이와 함께 즐거운 car-life를 즐기라고 몇가지 선물들을 준비해줬다. 0. 실내 디테일링 세차 운전면허 따고 첫 연습용 자동차로 중고차 구매를 했다면, 그리고 차량 연식이 꽤 된다면 일단 실내 디테일링 세차 부터 하는 게 좋다. 중고차 구매 후 0순위 작업. 전차주(들)이 누구인지도 모르고, 그들이 차안에서 뭘 했을지 모르기 때문이다. 또한 이 중고차가 매장에 전시되어 있는 동안, 몇명이나 보러 와서 만져보고 시승을 해보고..

i30 2세대 (GD) 2022.02.28 0

[리눅스/Vi] vi editor 문자열 치환(replace) 방법

개요 리눅스 환경에서 코드를 작성하다 보면, 종종 vi editor 혹은 vim editor를 사용해서 코드의 특정 단어를 다른 단어로 교체(replace) 해야 하는 상황이 종종 있다. 즉, 특정 문자열을 치환해야 하는 경우이다. 예를들면, 현재 소스코드 파일에서 'apple_result' 이라는 변수를 모두 'melon_result' 라는 변수로 바꾸어야 하는 상황 같은 것 말이다. 상황에 따라 아래와 같은 몇가지 방법이 있다.우선 ex모드로 진입해야 한다. 1. 현재 문서를 편집중인 '편집모드'라면, 키보드의 ESC 키를 눌러 편집모드에서 명령모드로 나온다.2. 콜론(:)을 눌러 ex모드로 진입한다.3. ex모드에서 아래와 같은 방법들 중, 자신의 상황에 맞는 방법을 선택해 수행하면 된다. 혹시, ..

Linux 2017.06.27 1

[Rust] 시작하기 - 개발 환경 만들기

Rust 시작하기 Getting started A language empowering everyone to build reliable and efficient software. www.rust-lang.org 회사에서 3일짜리 교육을 통해 Rust 언어를 학습할 기회가 생겼다. Rust 학습을 시작하는데 필요한 환경설치부터 간단한 hello world 출력 까지 진행해 보았다. Rust는 멀티플랫폼을 지원하기 때문에 MS윈도우, 리눅스나 MacOS 에서 학습환경을 구성가능하다. 내 학습 환경은 MS윈도우10 이다. Rust 언어가 무엇인지 궁금하다면? 아래 링크의 글을 참고로 읽어보길 바란다. https://www.technologyreview.kr/how-rust-went-from-a-side-proj..

PotPlayer 포터블(무설치) 무광고 버전 (v1.7.21566)

다음 팟 플레이어의 무설치 및 무광고 버전입니다. 귀찮은 광고를 생략할 수 있으며, 설치없이 사용할 수 있습니다. Download Link (PotPlayer_v1.7.21566 포터블, 광고없는 마지막 버전) https://www.mediafire.com/file/5w30led714hx9ng/PotPlayer__v1.7.18958.7z/file PotPlayer _v1.7.18958 www.mediafire.com 관련 링크 Official Page http://tv.kakao.com/guide/potplayer Official Forum Dev 에디션 영역 : http://cafe.daum.net/pot-tool/AZMV Public 에디션 영역 : http://cafe.daum.net/pot-too..

NULL ptr 2022.01.08 0

[C][CURL] CURLOPT_FOLLOWLOCATION 의 버전별 동작 차이

C언어로 프로그램을 작성하다보면, HTTP 통신을 해야 할 때가 종종있는데, 이때 개인적으로 선호하는 라이브러리가 있다. 바로 CURL 이다. 라이브러리만을 따로 부를땐 libcurl 이라는 이름으로도 부른다. 이 libcurl을 사용해서 HTTP 처리를 하다보면, 서버가 주는 3xx 응답을 만날때가 있다. 이때 클라이언트는 이에 대한 추가적인 처리 - 변경 혹은 이동된 URL을 따라간다던가 하는 - 를 해야 할 경우가 있다. libcurl은 이때 간단히 사용할 수 있는 옵션을 제공하는데 바로 'CURLOPT_FOLLOWLOCATION' 옵션이다. 우선 HTTP 3xx status에 대해 간단히 살펴보겠다. 300(여러 선택항목): 서버가 요청에 따라 여러 조치를 선택할 수 있다. 서버가 사용자 에이전트..

C 2017.08.31 0

책장 간접조명 설치 (feat. 리바트 프렌즈스틸 책장)

서재방 꾸미기 두번째. 지난번 새로 구매했던 검은색 600 사이즈의 리바트 프렌즈스틸 책장. 지난글 : 2022.04.10 - [NULL ptr/인테리어, 목공, 집] - 리바트 프렌즈 스틸 책장 600 (블랙) 리바트 프렌즈 스틸 책장 600 (블랙) 구매 계기 현재 서재방에 사용하고 있는 책장. 리바트 프렌즈 스틸 600사이즈. 리바트몰에서 판매되는 건 흰색, 월넛, 오크, 검은색 있음. 나는 검은색 600 크기(폭 60cm) 2개 연결해서 600 + 600 으로 techlog.gurucat.net 기존 책장과 나란히 놓아 약 1.2미터 길이로 늘어서 있다. 여기에 간접조명을 설치 하고, 커튼박스의 간접조명 스위치에 같이 물려서 켜고 끌수 있도록 만들 계획이다. 완성사진 먼저 완성된 모습부터. 대략 ..

[기획부동산] 상가 임대차 계약 시 확인해볼 내용

상가 임대차 계약 시 확인해볼 내용 약속이란 지키기 위한 것이고 그것을 지키지 않음은 신의를 따져 물을 수 있는 것 라 생각합니다. 세상도 사람이 만들었고 그러므로 밝은 세상을 만들기 위해서는 지켜야 하는 게 약속인데 그 틀 속에 사는 우리네는 그 약속이란 것을 얼마니 지키고 살고 있을까요? 지키는 것보다 지키지 않은 이가 많은 것 때문인지 문서라는 것에 글로 남기고 그것도 부족하여 도장이나 사인을 합니다. 그것도 그냥 도장이 아니라 관공서에서 인정하는 인감이라는 도장으로 확인하는 약속! 그렇게 지키자고 한 것을 지키는 것보다 지키지 못하는 사람이 더 많은 세상을 임진년에 이 필자가 경험했답니다. 작은 매장을 12년 전에 임대하여 지금껏 운영하다가 지금부터 2년 전 건물주인이 전세로 계약 변경하자고 사정..

부동산 2018.04.28 0

[정비기록] 렉서스 IS250, 방지턱 넘을때 찌그덕 소리

증상2017-2018 겨울, 렉서스 IS250를 타면서 맞이하는 두번째 겨울이다.그런데... 과속방지턱을 넘어갈 때 작년 겨울에는 듣지 못했던 "찌그덕", "찌걱" 하는 소음이 들리기 시작했다.상당히 저속인 시속 5km/h 정도로 방지턱을 넘을때는 들리지 않지만,10~20km/h 정도로 약간 속도가 붙은 상태로 방지턱을 넘을때는 들린다. 정비를 위해 수원 센트럴모터스 렉서스 서비스센터에 예약을 잡았다. 2018년 2월 2일 16시, 서비스센터에 들어가는 도로입구에도 과속방지턱이 설치되어 있었다. 아래 영상은 과속방지턱 지나갈때의 찌그덕 소리가 발생하는 부분이다. 소음의 원인 1 : 스테빌라이저 링크최초 서비스센터 점검 받은 후, '스테빌라이저 링크'가 '찌그덕' 소리의 원인이라고 이야기를 전달받았다.그러..

[우분투] Ubuntu 16.04 화면 캡쳐 방법

우분투를 사용하면서 화면을 캡쳐해야 할 경우가 종종 있다.우분투 16.04 사용하기 시작한지 2일째인데, 의외로 유용한 기능이 많은 것 같다.그것 중 하나가, 다양한 방식의 화면 캡쳐 기능을 제공하는 것이다. 참고로 우분투 16.04 에서는 화면 캡쳐를 스크린샷(Screenshot) 이라는 용어로 표현하고 있었다. 우분투는 다음과 같이 총 6가지의 스크린샷 찍기 방법을 제공하고 있다. 스크린샷 찍기 / 활성화 된 창의 스크린샷 찍기 / 영역의 스크린샷 찍기클립보드로 스크린샷 복사 / 활성화 된 창의 스크린샷을 클립보드로 복사 / 영역의 스크린샷을 클립보드로 복사 각 방법에 대해 단축키를 살펴보자.당신이 설정을 변경하지 않았다면, 이 글에서 소개하는 기본 단축키가 동작할 것 이다. 스크린샷 찍기 단축키 :..

Linux 2017.06.10 0

[칼럼] 삼성전자 홍준성 상무는 왜 구글로 갔을까?

2009년 12월 16일.삼성전자에서는 임원 승진발표가 있었다. 총 승진한 삼성전자 임원은 177명이었다. 그중엔 만 40세의 나이로 최연소 상무로 발탁된 사람이 있었다. 바로, 당시 수석연구원(부장 급)이었던 '홍준성'님이다. 홍준성 상무는 당시 1969년생. 승진 임원 대상 177명 중 가장 나이가 어렸다. 그는 무엇을 했길래 삼성전자라는 거대 기업안에서 수많은 어르신들을 제치고 최연소 임원이 될수 있었을까? 그는 무선사업부 - 모바일솔루션센터(이하 MSC)에서 Realtime Kernel기반의 모바일 운영체제 ‘바다(Bada)’를 개발한 주역이었다. 홍준성 상무는 '바다(Bada)'를 개발한 공로를 인정받아 2009년 자랑스런 삼성인상(기술상)을 받았다. 실제로 '바다(Bada)'를 운영체제로 사용..

NULL ptr 2017.04.30 0

ASLR : Address space layout randomization

Address space layout randomiztion(ASLR)은 buffer overflow 공격으로부터 보호하기 위한 컴퓨터 보안 기술이다.이 내용의 실제 구현 까지는 상당히 많은 dependency를 가지는데, Processor architecture, OS(kernel implementation), compiler, debugger, linker(loader) 등등이 상호 조화를 이루어 구현이 된다. 참고 : http://stackoverflow.com/questions/2463150/fpie-position-independent-executable-option-gcc-ld참고 : http://en.wikipedia.org/wiki/Address_space_layout_randomizati..

Compiler 2014.12.04 0

[리눅스/커널] 커널에서 자주 사용되는 매크로 : likely( ) / unlikely( )

커널에서 자주 사용되는 매크로 : likely( ) / unlikely( )커널 소스를 보다보면 likely 또는 unlikely 메크로를 자주 사용하는 것을 볼 수 있습니다. likely / unlikely macro가 어떤 의미를 가지는 매크로인지 궁금했어요.그래서 알아보았죠. 커널 3.2 코드를 기준으로 likely / unlikely macro는 커널 소스에 다음과 같이 정의되어 있더군요. 소스위치는 ./include/linux/compiler.h 109 /*110 * Using __builtin_constant_p(x) to ignore cases where the return111 * value is always the same. This idea is taken from a similar p..

Linux 2012.11.23 1

[Ubuntu 12.04] GRUB : 부트로더 환경설정

*본 설명은 Ubuntu 12.04 를 기준으로 합니다. 1. GRUBGRUB 혹은 GNU GRUB은 GNU 프로젝트의 부트로더이다. GRUB의 이전 이름은 GRand Unified Bootloader 이었으며, 이는 대통일 이론의 영문 이름을 패러디한 것 이라고 한다. 대부분 리눅스 배포판에서 부트로더로 사용한다. GRUB은 LILO와 달리 설정 변경 후에 재설치가 필요 없다. GRUB은 스테이지 단위로 부팅 과정이 구성되어 있으며, GRUB의 스테이지 1은 MBR에 존재한다. GRUB 설정 파일은 대개 스테이지 2에서 불리며 이들은 GRUB이 읽을 수 있는 파티션에 존재한다. 만약 설정 파일이 없으면 명령줄로 간다. 이들 설정 파일은 /boot/grub에 있으며 배포판마다 파일 이름이 다르다. 이러한..

Linux 2012.10.02 1

자료조사(2) - 안드로이드의 오디오를 녹음하는 세 가지 방법

1. Mediarecorder API문서: http://developer.android.com/reference/android/media/MediaRecorder.html 사용법: http://developer.android.com/guide/topics/media/index.html Mediarecorder는 그 이름을 보면 알 수 있듯이, media를 record한다. audio는 마이크를 통해 녹음하여 sdcard에 그 파일을 저장한다. 녹음된 audio의 포맷은 MPEG4, RAW AMR, 3GP가 있다. 1) 사용이 쉽다 2) 오디오를 압축된 포맷으로 녹음한다. 3) 전화 소리를 녹음할 수 있다 (수신, 송신 측 모두) 4) 음성 인식을 녹음을 할 수 있다. 1) 오디오 버퍼에 접근할 수 없다...

동탄신도시 항공뷰와 호수공원 야경 - 2023년 5월 1일

동탄2신도시 라크몽 에서 호수공원 쪽을 바라본 야경이다. 멀리 동탄1신도시의 메타폴리스 주상복합 아파트도 보이고, 오른쪽 구석에는 동탄호수공원 린스트라우스도 보인다. 아래는 동탄신도시를 지나가는 항공기에서 촬영한 사진들이다. 2023년 5월 초에 촬영했다. 사진 오른쪽 볼록하게 순환하도록 놓여진 도로가 최근 도로를 낸 신주거단지라 불리는 지역이다. 사진의 아래는 동탄호수공원 지역인 산척동, 송동. 사진의 윗 부분은 동탄2신도시 시범단지와 11자상가, 중리IC 등이 보인다. 동탄 2신도시를 왼쪽지역과 오른쪽지역으로 갈라놓은 경부고속도로가 보인다. 곧 지하화 되어 땅속 터널이 될 것이고, 그 위는 공원으로 조성될 것이다. 동탄 1신도시의 상징과도 같은 반원형 도로망이 보인다.

부동산 2023.05.05 0

[i30 GD] 운전연습용 중고차 셋팅 - 실내 디테일링 세차

운전연습용으로 구입한 중고차. 현대 i30 GD 12년식. GDI 엔진 모델. https://techlog.gurucat.net/361 [i30 GD] 운전연습용 중고차. 12년식 27,000km 구매기. 같이사는 분이 2021년 운전면허를 취득한 뒤 차를살까? 조금만 더 버틸까? 고민하기를 1년. 고민만 하다가 드디어 차량을 구입하기로 결정. 그분에게는 첫차이니 만큼 심혈을 기울여서 골라보기 techlog.gurucat.net 상품화가 되어있어 얼핏보면 중고차 치고 실내도 깨끗해보이지만, 그래도 찝찝하고 뭔가 마음에 들지 않았다. 내부의 전체 시트탈거 후 청소를 해주는 업체에 맡기기로 결정. 그렇지만 업체 알아보고 후기 찾아보고 하는게 귀찮아서, 렉서스 IS250 블랙박스 교체 작업을 맡겼던 적이 있는..

i30 2세대 (GD) 2022.05.11 0