2023년 3월 1일
에피소드 39 ~ 45
인간의 행동을 대부분 할 수 있거나 인간보다 능력이 더 뛰어난 인공지능
몇 가지 일을 탁월하게 잘하는 인공지능
ex) 페이스북 얼굴 인식, 빅스비나 시리 같은 음성 인식
머신러닝과 딥러닝은 인공지능 학습 방법
label을 토대로 여러 예를 학습
label이 없는 데이터를 통해 스스로 특징을 찾아 학습
머신러닝의 하위 개념. 즉, 머신러닝의 한 종류
구현 과정에서 실제로 깊이 여러 층을 만듦
REST한 방식으로 설계한 API의 한 종류
① REST 없이 API 설계
② URL에서 동사 제외 → URL 단순화, 기능 확장 편리
③ HTTP 메서드 도입
④ 쿼리 도입
REST : representational state transfer
HTTP 메서드
같은 URL이지만 백엔드에서 다른 처리를 할 수 있도록 갈림길을 만들어주는 웹 기술ex) GET, POST, PUT, DELETE
어떤 컴퓨터에서도 같은 개발 환경을 준비해 주는 도구
① 각각의 운영체제에 Docker 설치
② 도커 파일 생성 (구현하고 싶은 환경 목록)
③ 각 운영체제(ex: 윈도우 컴퓨터와 리눅스 서버)에 도커 파일 전달
도커가 준비한 프로그래밍 언어가 동작하는 환경
① 모든 코인에 가치가 있는 건 아니다
② 암호화폐에 대해 수식어를 남발하는 곳은 거르자
③ 진짜 정보를 살펴라 → 코인의 최신 업데이트 날짜, 커뮤니티 참여자 수, 커뮤니티에서 가격 이야기만 하는지
④ 탈중앙화되지 않은 코인은 위험
⑤ 이론상 안전한 코인을 선택 (다른 자산에 코인 가치가 연결되어 있어 가격 변동이 거의 없음)
펌프 앤드 덤프(pumps and dumps)
가격만 올려 팔고 도망가는 것
앱 개발 선택지
① 하이브리드
② 크로스 플랫폼
③ 네이티브
HCJ로 만든 웹 앱을 iOS/Android에서도 쓸 수 있도록 개발
ex) 아파치 코드로바
장점 | 단점 |
---|---|
네이티브 앱 개발 지식이 필요 없음! | UI를 하나하나 짜야 해서 귀찮음! |
스마트폰의 성능을 온전히 활용하지 못함! |
특정한 언어로 코딩하면 나중에 iOS/Android가 이해할 수 있는 네이티브 코드로 변환
ex) 리액트 네이티브, 플러터
장점 | 단점 |
---|---|
개발자가 익숙한 언어로 한 번만 작성해도 OK! (iOS/Android 구분 X) | 네이티브 앱보다 성능이 좋지 않음 |
배경이 다양한 개발자가 한 자리에 모여, 다양한 형태의 라이브러리와 튜토리얼 등 커뮤니티 발전 |
iOS만을 위한 혹은 Android만을 위한 언어로 개발
ex) 스위프트, 자바, 코틀린
장점 | 단점 |
---|---|
스마트폰 성능 최대로 사용 가능 | 다른 앱에 비해 학습 시간이 많이 필요 |
각각 유지 및 보수 |
대체 불가능한 토큰
토큰(Token)
스마트 계약(smart contract)을 할 수 있어야 함
(돈을 받는 기능 + 돈을 받고 토큰을 보내는 기능)
- 이더리움 같은 블록체인으로 발행
- 활용 예) 코인
malicious(악의 있는) + software
컴퓨터를 감시하거나 파괴하기 위한 악성 소프트웨어
바이러스와 웜은 모두 복제되어 전파
숙주를 통해 전파
ex) 숙주 파일을 내려받을 시 감염
자기 자신을 복제하며 전파
ex) 감염된 컴퓨터 안에 있다가 USB 같은 저장장치가 연결되면 이를 타고 다른 컴퓨터에 침투, 스턱스넷
제로 데이(zero day)
아직 아무도 발견하지 못한 프로그램의 취약점
에어갭(air gap)
인터넷에 절대로 연결하지 않는 컴퓨터
① 숲을 보자 : 너무 기술에만 매몰되지 말기
② 할 수 있다면 무료로 일해 보기 : 실무 경험 쌓기