• 347 2020.05.27
  • 346 2020.05.27
  • 345 2020.05.27
  • 344 2020.05.27
  • 343 2020.05.26
  • 342 2020.05.26
  • 341 2020.05.26
  • 340 2020.05.26
  • 339 2020.05.26
  • 338 2020.05.26
  • 337 2020.05.26
  • 336 2020.05.26
  • 335 2020.05.26
  • 334 2020.05.26
  • 333 2020.05.26
  • 332 2020.05.26
  • 331 2020.05.26
  • 330 2020.05.26
  • 329 2020.05.26
  • 328 2020.05.25
  • 327 2020.05.25
  • 326 2020.05.25
  • 325 2020.05.25
  • 324 2020.05.25
  • 323 2020.05.25
  • 322 2020.05.25
  • 321 2020.05.25
  • 320 2020.05.25
  • 319 2020.05.25
  • 318 2020.05.25

매드포갈릭 너무 마시쪄

요런 혜택도 있답니다~

'Blog History' 카테고리의 다른 글

349  (0) 2020.05.28
348  (0) 2020.05.28
346  (0) 2020.05.27
345  (0) 2020.05.27
344  (0) 2020.05.27

에픽 게임즈 금요일 무료 배포 게임 6월 12일자 예고.

 

https://www.snk-corp.co.jp/official/ssngc/

 

SAMURAI SPIRITS NEOGEO COLLECTION

武士(もののふ)たちの血闘はまだ終わらない。SAMURAI SPIRITS NEOGEO COLLECTION の公式サイトです。

www.snk-corp.co.jp

찾아 주신 장과장님께 심심한 감사의 인사를 드립니닼ㅋㅋㅋ

'Blog History' 카테고리의 다른 글

348  (0) 2020.05.28
347  (0) 2020.05.27
345  (0) 2020.05.27
344  (0) 2020.05.27
343  (0) 2020.05.26

인물 탐구 - 데미스 허사비스 자료를 찾아다녀 본다.

https://ko.wikipedia.org/wiki/%EB%8D%B0%EB%AF%B8%EC%8A%A4_%ED%97%88%EC%82%AC%EB%B9%84%EC%8A%A4

 

데미스 허사비스 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 데미스 하사비스(영어: Demis Hassabis, 1976년 7월 27일 ~ )는 영국의 인공지능 연구인, 컴퓨터 게임 설계자, 게이머이다.[1][2][3][4][5] 그는 구글 딥마인드의 창업자이��

ko.wikipedia.org

데미스 하사비스(영어: Demis Hassabis, 1976년 7월 27일 ~ )는 영국 인공지능 연구인, 컴퓨터 게임 설계자, 게이머이다.[1][2][3][4][5]

그는 구글 딥마인드의 창업자이자 최고 경영자이다. 그는 13살의 나이에 체스마스터가 됐고, 17살에 게임 개발에 참여하기 시작했다. 어린 나이부터 프로그래밍을 배운 그는, 블랙 & 화이트라는 게임의 인공지능을 개발하는 데 참여했다. 엘리시르 스튜디오라는 비디오 게임 개발사를 만들어, '리퍼블릭: 혁명(Republic: The Revolution)'과 '이블 지니어스(Evil Genius)'라는 게임도 제작했다. 2005년 게임 개발 업계에서 은퇴한 뒤, 인공지능 개발에 뛰어들었고, 2010년 '딥 마인드'라는 스타트업을 설립했다. '딥 마인드'는 2014년 구글에 인수되었고, 허사비스는 인공지능 부문 부사장이 된다. 딥마인드는 알파고라는 인공지능 바둑 프로그램을 만들고, 판후이, 이세돌 등 세계적인 바둑 프로기사들과 대결시키면서 유명해졌다.[6]

 

 

게임 .컴퓨터, 뇌과학 모두 섭렵한 딥마인드 CEO 허사비스

 

1989년 13세 영국 소년이 세계 소년 체스 대회에서 2위에 올랐다. 그가 유일하게 패한 상대는 나중에 사상 최고의 여성 체스 선수가  된 헝거리 출신의 유디트 폴가였다. 

그리고  2016년, 우주 전체의 원자수보다  경우의 수가 더 많아, 체스와는 비교도 안 될 정도로 복잡하고 어렵다는 바둑에서  27년 전  그 소년의 '아들'이 세계 최강자를 눌렀다.  '알파고의 아버지'  딥마인드의 데미스 허사비스(40)  CEO이야기다. 웹(WWW)의 창시자인  팀 버너스-리는  허사비스를  "지구라는 행성에서 가장 똑똑한 사람"이라고 평했다. 허사비스는 어떤 인물인가.

 

 

게임 개발자에서 뇌과학자로

허사비스는  1976년 런던에서 그리스계 아버지와 싱가포르계 어머니 사이 2남2년 중 장남으로 태어났다. 

부모는 기계라면 질색하는 사람들이었고, 동생들은 모두 작곡과 피아노, 문학 등 과학과 무관한 분야를 전공했다. 하지만  그는 '컴퓨터'라는 기계를 끼고 살았다. 스스로 "집에서 나는 검은 양과 같은 외계인이었다" 고 했다. 

소년 천재 허사비스는 남들보다  2년 빠른  15세에 고교를 졸업했다. 그러나 대학에 진학하지 않고  게임 개발사에 들어갔다. 세계적인 게임 개발자 피터 몰리뉴가 그를 데려간 것이다. 그곳에서 전 세계에서 수백만개가 팔린 시뮬레이션 게임 '테마파크'를 개발했다. 

테마파크로  명성을 날리던 허사비스는 돌연 회사 생활을 접고 케임브리지대학 컴퓨터과학과에 진학한다.  22세에 졸업한 그는 직접 게임회사인 일릭서 스튜디오를 차렸다. 

그 사이 세계 두뇌 게임 올림픽인 '마인드 스포츠 올림피아드'에서 5년 연속 챔피언에 오르기도 했다. 

2005년 그는 스스로 회사를 폐업했다."거대 게임사가 장악한 시장에서 독립 게임 개발사가 혁신을 지속할 여지가 없다" 는 판단에서였다.

이후 그는 영국 유니버시티 칼리지 런던에서 뇌과학을 연구한다. 그곳에서 기억과 상상이 뇌의 같은 부위에서 형성된다는 사실을 밝혀냈다. 사고로 뇌 해마가 손상돼 기억상실에 빠진 환자는  가상의 사건을 상상하지 못한다는 것을  확인한 것이다. 

이 연구는 2007년 국제학술지 '사이언스'의 '세계 10대 과학 성과'에 뽑혔다. 

2009년 뇌과학으로 박사 학위를 받았다. 그해 게임 산업에 기여한 공로로  영국예술협회 회원으로 뽑혔다.

게임과 컴퓨터, 뇌과학 세 가지 무기를 장착한 그는 마침내 2011년 뇌를 모방한 컴퓨터 시스템인 인공지능을  만들기 위해 딥마인드를 창업했다.  회사는 3년 뒤 구굴에 인수됐다. 인수 대금은 6000억원이 넘었던 것으로 알려졌다.  페이스북도 구글보다  먼저 인수전에 나섰으나 고배를 마셨다.

 

 

인공지능의 위험 막는 노력도 필요

 

허사비스 대표는 지난해 인공지능에  1970~1980년대에 유행한 비디오게임 데이터를 학습시켜 사람을 압도했다. 인공지능으로 게임에 도전하는 이유에 대해  "인공지능이 배울 수 있는  데이터가 많기도 하지만 그 자체로 재미가 있다" 고 했다. 그가 게임광인 점도 작용했다. 이점에서 바둑은 그에게 최고의 도전 대상이었다.

 

"인공지능, 이제 사다리의 첫 단"

이건 21세기 아폴로 프로그램.... 잠재위험 제거하는 연구도 필요"

 

물론 그의 목표는 게임왕이 아니다.  지난 8일 서울에서 열린 기자회견에서 그는 "알파고는 하나의 전문가를  목표로 하지 않는다" 고 말했다. 즉, 바둑이라는 한 가지만 잘하는 것이 아니라,  다방면에서 뛰어난 문제해결 능력을 갖춘  인공지능을 목표로 한다는 밀이다. 예를 들어 지구에 대한  엄청난 데이터를 학습해 온난화를  해결할 방법을 찾거나, 가정에서 사람이 시키는 일을  다 할 수 있는 로봇의 머리가 될 수도 있다는 것. 

증상과 병력을  말하면 인터넷상 의료정보 수십억건을 뒤져  최적의 치료법을 제시하는 일도 가능하다. 그는 이를  "21세기의 아폴로프로그램" 이라고 불렀다.

지난 9일 알파고가 이세돌과의  첫 대국에서 이긴 직후  트위터에 "승리!! 우리는 달에 착륙했다"는  글을 올린 것도 이 때문이다.

인공지능이  바둑에서 인간을 이기자  머지않아 컴퓨터가 사람을 지배하지 않을까 우려하는 사람도 많다. 전기차업체 테슬라와 우주개발업체 스페이스X의 창업자인  일론 머스크처럼 과학기술에 능통한 사람도 마찬가지다. 허사비스 대표는 이에 대해 "인공지능은 이제 사다리 첫 단을  밟은 정도" 라며 "모든 면에서 인간 수준의 지능에 도달하는 것은 수십년 뒤의 일"이라고  지나친 우려를 경계했다.

하지만 그 역시 인공지능의 악용 가능성에 대한  사전 논의는 필요하다고 했다.  그는 지난해 인공지능의  잠재적인 위험을 제거하고  효용을 극대화하기 위한 방법을 찾는 연구가 필요하다는  내용의 공개 서한에 서명했다.

                                                               이영환 과학신문기자 

 

 

https://www.thersa.org/events/speakers/demis-hassabis?gclid=EAIaIQobChMIppDp-pDT6QIVJNWWCh0CDwo5EAAYASAAEgLVtvD_BwE

 

Demis Hassabis - RSA

Demis Hassabis is the co-founder and CEO of DeepMind, a neuroscience-inspired AI company, bought by Google in Jan 2014 in their largest European acquisition to date. He is now Vice President of Engineering at Google DeepMind and leads Google’s general AI

www.thersa.org

 

 

"2029년이면 인간처럼 느끼고 생각

 2045년엔 '포스트 휴먼' 탄생할 것"

 

미래학자 레이 커즈와일 인터뷰 

 

알파고 승리로 두 시점에 확신 인공지능 .인간 결합땐 新인류

 

"알파고와 같은  인공지능은 화성에서 온 외계 생명체가 아니라, 인류의 삶을 더욱 풍족하게 해줄  우리의 도구입니다. 인공지능의 발전에 대해 두려움을 가질 필요는 없어요."

 

평생 인공지능을 연구해온  미국 미래학자 레이 커즈와일(68)은  날로 발전하는 인공지능에 대해 두려워하지 말라고 말했다. 오히려 인공지능 덕분에  인류의 역량은 더욱 확장할 것이라고 했다.  '에디슨 이후 최고의 발명가' 로 통하는  커즈와일은 평판 스캐너, 디지털 신사이저 등을 발명하고  특허를 39개 보유하고 있다. 현재 구글에서 인공 두뇌 개발을 이끌고 있다.

커즈와일은 알파고가  이세돌을 상대로 첫 승을 거둔  9일 본지와 이메일 인터뷰를 하고 알파고의 승리를 축하했다. 커즈와일에 따르면  "빠른 계산에  능하기만 했던 인공지능이 이제 매우 복잡한 '패텬'을 이해하는 단계" 까지 발전했다.  바둑은 채스보다 훨씬 복잡한 패턴을 이해해야 하는 게임인데, 인공지능이 그 수준에 도달했다는 것이다.

커즈와일은  "인공지능이 체스에서 인간을 처음 이긴 후 바둑에서 이길 때까지 20년도 안 걸렸다" 며  "인공지능은 패턴 이해력을 더욱 높여  자동차 운전, 언어 이해,  그림 그리기 등 오직  인간만이 할 수 있었던 영역까지 깊이 들어왔다" 고 말했다.

 

인공지능의 위험성에 대해서는 걱정할 필요가 없다는 입장이다. 커즈와일은 "인공지능은 화성에서 우릴 침공해온  외계 생명체가 아니라  바로 우리가 만든 피조물"이라며  "앞으로 인류와 공생하며 도구로서 우리의 신체적. 지적 한계를 넓혀주는 역할을 할 것"이라고 말했다.  커즈와일에  따르면 거대한 기중기부터 스마트폰까지 그동안 인류가 사용해 온 모든 도구가  제각각 특정한 형태의 인공지능이다. 과거에는 주로 인간의 신체적 한계를  극복하는 데 쓰였지만  이제 새로운 인공지능은 인간의 지적 한계를 넘는데 쓰일 전망이다.  예를 들어 모든 언어를 정확하게 번역해주는 인공지능 번역기가 발명돼  유사 이래 인류가 가장 긴밀히  소통하는 시대가 온다는 것이다.

 

커즈와일은 알파고의 승리에 대해  "가까운 미래 2개의 중요한 시점으로 향하고 있다는 확신을 주는 사건" 이라고 말했다. 2029년과 2045년이다. 커즈와일에 따르면 인공지능은 기하급수적 발전을  거듭해 불과 13년 후엔 인간과 똑같은 수준의 지능을 갖게 된다. 커즈와일은  "2029년엔 사람과 똑같이 말하고 생각하고  감정까지 느끼는 존재가 탄생헤 인류와 인공지능이  협업하는 시대가 된다" 고 말했다.

 

이어 "2045년에는 인공지능과의 결합으로 인류의 육체적 .지적 능력이 생물학적 한계를 뛰어넘는 시점, 즉 특이점(Singularity) 이 온다" 고 했다. 커즈외일은 특이점 이후엔 지금 인류와  다른 '포스트 휴먼'이 나타날 것으로 보고 있다. 

커즈와일은  "딥블루(체스),  왓슨(퀴즈),  알파고(바둑)의 잇단 승리는  현재 우리가 특이점으로 향하고 있다는 것을  다시 한 번 확인해 준 사례"라고 말했다.

                                                                          박승혁 기자

 

 

https://deepmind.com/

 

DeepMind - What if solving one problem could unlock solutions to thousands more?

Artificial intelligence could be one of humanity's most useful inventions. We research and build safe AI systems that learn how to solve problems and advance scientific discovery for all.

deepmind.com

 

사이언스지, 네이처지에 실린 아티클이 무료네. ㅋ 나 이거 했소 하며 내용도 없는 논문 껍데기 공유하는 모 국내 사이트 보다 나은 듯.

 

https://deepmind.com/research?filters=%7B%22tags%22:%5B%22Deep%20learning%22%5D%7D

 

Research

Our pioneering research includes deep learning, reinforcement learning, theory & foundations, neuroscience, unsupervised learning & generative models, control & robotics, and safety.

deepmind.com

 

https://www.crunchbase.com/person/demis-hassabis

하사비스 트위터 https://twitter.com/demishassabis 

 

Demis Hassabis(@demishassabis) 님 | 트위터

@demishassabis 님 언뮤트하기 @demishassabis 님 뮤트하기 팔로우 @demishassabis 님 팔로우하기 팔로잉 @demishassabis 님 팔로우 중 언팔로우 @demishassabis 님 언팔로우하기 차단됨 @demishassabis 님이 차단됨 차단 �

twitter.com

하사비스 링크드인

https://www.linkedin.com/in/demishassabis/

 

'Blog History' 카테고리의 다른 글

347  (0) 2020.05.27
346  (0) 2020.05.27
344  (0) 2020.05.27
343  (0) 2020.05.26
342  (0) 2020.05.26

게임 그래픽 카드 추천

https://www.youtube.com/watch?v=2XjGEHaC_X0

 

난 iCHILL 2080 super 지만... 4K에서 좀 아쉬움이 남습니다. 물론, 2K는 60Hz 세상에서는 여유로움 ㅋㅋ

경제적 여유 있으시면 저 영상 보시면 좋을 듯.

 

 

'Blog History' 카테고리의 다른 글

346  (0) 2020.05.27
345  (0) 2020.05.27
343  (0) 2020.05.26
342  (0) 2020.05.26
341  (0) 2020.05.26

멋진 공지

 



카카오톡 사용자 여러분께,


3월 13일 어제 업데이트된 2.6.5버전을 사용하시는 일부 사용자분들에게
업데이트 후 카카오톡 프로그램이 구동되지 않는 문제가 발견되었습니다.

 

문제를 발견한 즉시 해당 원인을 파악하여 오늘 오후 수정한 버전을 배포하였습니다.

해당 문제로 인해 불편을 겪고 계신 분들은 수정된 버전으로 다시 설치하시면 원활하게 사용이 가능합니다.

 

불편을 느끼셨을 모든 분께 죄송하다는 말씀드립니다.
기다려주셔서 감사합니다. 더욱 노력하는 카카오팀이 되겠습니다.

 

 

3. 지원금액 및 한도

 

 

 정부출연금 : 총사업비의 75%이내에서 최대 1, 1억원까지 지원

 

 민간부담금 : 중소기업은 총사업비의 25%이상을 부담
(민간부담금의 40%이상은 현금)

 

정부 껀 쩐이 좀 있어야 뭘 하겠네.

 

‘중소·중견기업기술혁신센터’ 멤버쉽기업 3월 모집 안내


1. 모집 배경


 □ 대학·연구기관 등과 협력하여 기술 애로를 해결코자 하는 기업에게 ‘중소·중견기업기술혁신센터’의 기술교류·협력지원 및 R&D지원 정보 등 각종 서비스를 제공하기 위함


2. 모집 개요


 □ (신청자격) 대학·연구기관과 협력하여 기술애로 해소 또는 R&D 과제를 해결하려는 중소·중견기업
  ※ 센터를 활용하여 대학·연구기관 등과 협력하여 기술 개발을 진행하고, 이를 기반으로 수출을 추진하려는 의지가 있는 기업 중심으로 선발

 

 □ (신청접수) 3월 12일(월) ~ 21일(수) 신청
     (신청방법) 기술혁신센터 홈페이지 기업회원(멤버쉽기업) 가입 http://bridge.tipa.or.kr
     (문 의 처) 대표번호 031-739-6900 (위치: 판교 경기창조경제혁신센터 3층)


3. 멤버쉽 혜택


 □ 센터 협력기관(대학·연구기관, 기술전문기업(K-ESP) 등)과 연계하여 기술애로 해소 지원

  - 산학연기술개발사업 ‘도약협력과제’ 연계 지원


 □ 센터 개방형 사무공간 및 영상회의실 등 무료 이용(사전예약 필요)


 □ 센터가 주관하는 각종 교류·협력행사 정보 제공 및 우선 참여 등

 

======== 아이파크 

아이파크 관리 주체 -> 보보스 스포렉스

안녕하십니까..
[Web발신]
안녕하십니까?
영통역아이파크 관리소장 이종만입니다.

다름이 아니라 3월부터 당 영통역아이파크 건물의 관리주체가 (주)보보스스포렉스 영통역아이파크지점에서 (주)우진시스템으로 법인명이 변경되었음을 알려드립니다.

당월부터 관리비 입금계좌도 변경되었으니 꼭 확인하시고 해당호수로 입금해주시기 바랍니다.

감사합니다.


라고 좀전에 문자를 받았는데... 이건 저번달에 관리비 관련해서 질문했을 때 이미 알고 있었다. 내가 볼 때는 관리라는 말을 이용해서 사람들에게 혼돈을 주려고 하는 것 같다. 보보스 스포렉스가 실 주인이 맞고 건물 관리만 우진시스템이 하는 것이다.


경기도 용인시 처인구 이동읍 서리로 14 에서 가진게 맞다.

 

관련 사람들이 공정위로 신고 했고 신고 운동이 일어나고 있다.

 

공정위 홈피에 들어가시면 한글파일 다운받으실수 있어요.다운받아서 간략하게 내용 적어서 계약서 복사해서 보냈어요. 공정위 1670-0007로 전화문의해보셔도 좋아요. 친절히 잘 알려주시더라구요. 경기 과천시 관문로 47 정부과천청사 2동2층 공정위 서울사무소로 보내시면 됩니다.


주말에는 와이프랑 같이 신고 할 생각이다. 살아 보니 이런 곳은 과태료를 먹는게 차라리 더 정직한 플레이를 하게 된다는 점을 알게 되었기 때문이다.

 


1. 임대차 수익 보장제 계약서는 상당한 효력이 있어 보인다

2. 민사 소송을 청구 할때 사람들을 모아서 소송제기 한다면 변호사 비용도 저렴 해짐

3. 엔젤에서 보낸 2개월 유예 요청은 상호간의 계약이 아니기 때문에 효력이 없다

 



카페를 이끌고 있는 분께서 상당히 똑똑하심



'Blog History' 카테고리의 다른 글

345  (0) 2020.05.27
344  (0) 2020.05.27
342  (0) 2020.05.26
341  (0) 2020.05.26
340  (0) 2020.05.26


ㅋ 올레 안 망할 듯.

 

역삼 아나...

 

다시 올 것 같진 않다.

다시 안온다.

절대.

 참고로 변기는 막혀 있다.






ㅋㅋㅋㅋㅋㅋ

 

 

'Blog History' 카테고리의 다른 글

344  (0) 2020.05.27
343  (0) 2020.05.26
341  (0) 2020.05.26
340  (0) 2020.05.26
339  (0) 2020.05.26

하루에 조금씩...

 

스타크레프트,
스타크레프트2 그만 한다.

애피소드 새로 산게 아깝지만.

버릴 줄 알아야지.

중간이 없는 삶이었는데
타로 점도 결국 태양신과 사신이 함께 나오는 점 ㅡㅡ;

점을 보니 엄청 잘되던가 엄청 못되던가...

결국 내 운명이다.

 

 

컴퓨터 끄거나 재부팅 하려면 기본 30분 이상이다.

 

uefi 지원 안되는건 처음부터 체크하던가

삼성은 노트북 팔면 끝인가? 지원 못할거면 빨리 전용 운영체제 만들던가 실력이 안되면 규격이나 맞추던가

 

뭐,... 이런 포스팅 없이 업데이트 막아버리면 되지만

걍 짜증나 난 아니까 몇번 밖에 안 당하지

 

모르는 사람들은 어떨까?

 

카톡 업데이트에 다음 시작페이지 강제 변경 체크 박스 넣는거나...

이스트 소프트나 그레텍이나 카카오나 다 거기서 거기네

 

 

이론적 지식보다 경험적 지식이 더 많은 웹툰 작가들의 작품은 정말 존경스럽다.

그러나 한편으로는 현실을 기반으로 만들어 내는 허구 때문에

나쁜 놈은 결국 심판 받겠지라고 믿게 만들어 버린다.


잘못된 사회에서탈출구를 만들지 않으면 그게 폭발해서 완전히 새로운 세상이 되는데 말이다.

따지고 보면 기득권 세력을 지켜주려는 도움일 수도 있는 것이다.

그러나

따뜻한 위로로 해결할 수 있는 것이 더 많기 때문에 많이 아쉽다.

난 웹툰보다 현실에 일어나는 사건들에 더 집중을 해야 하기 때문에 지워야만 한다.

남들이 24시간일 때 내가 48시간 사는 것은 아니니까 말이다.

늙어서 꿈을 이루기는 쉽지 않다.



이제 노안도 오기 시작한 것 같다. 인경 없이 운전하기가 힘들다.

40대부터 온다더니...

어릴 때부터 컴퓨터를 너무 했나 보다.

 

스타트업 탈세.

 

아무래도 이해 관계자가 적고,
어떤 방법으로든 성공하는 것이 목표인 스타트업에서는
탈세하기도 쉽다.

가족을 감사로 앉히고,
지인에게 수주하고 돈을 지불한 것 처럼 해서
현금으로 돌려 받으면 된다.

실제로 가르쳐 준 레트리카 사람들에게는 미안하지만,
나도 사실 이제 인정하게 되었다.

그게 맞다는 것을.

신고해도 증거 요구하는 국세청이나,
잘 모르는 직장인이나 프리랜서에게 돈을 더 뽑아 먹으려는
세무서를 경험했을 때

나쁜짓이라도 아는 놈이 하는 것이면,
착한놈이 된다는 것이다.

나쁘게 돈 모아서 액수만 더 투자하면 된다는 식의 생각도
이제는 이해한다.

일전에는 기업 총수가 수조를 주는 것보다 직접 가서 연탄 한장이라도 나르는
것이 선행이라고 생각했었다. 돈도 원활한 협업을 위해 사람이 만들어낸 개념일 뿐이니까.

그러나 스타트업에서 배웠던 많은 것들이
3년이 지난 지금 모두 이해가 된다.

좆같은 스타트업이라고 욕했지만,
이제 욕하지 않겠다고 다짐한다.

어차피 욕해봤자, 국내 버리고 해외에서 뜨면 국내 ㅄ 들은 받들어 모실테니.
대기업도 마찬가지인데 그래서 국내 고객을 호갱으로 보는 것이다.

영어 잘하는 사람보다 한국말을 잘하는 사람을 더우대해야 겠지만,
이미 이건 틀린 것 같다.요즘 같은 시대엔 갈라파고스 되어 보이콧 당하기 쉽상.

결국 그들이 맞았다. 그래서 그 동안 내게 해 주었던 말들을 모두 곰곰히 생각해 보았다.

다른 사람들이 늘 말하는 것인데 내가 안 들었던 것이라고 말하는 것은
해고 하기 전에 알아서 기어라는 말을 들어라는 것으로 이해했었는데
지금은 어느 정도 피드백은 받아들여야 겠다는 생각이 들었다. 꼭 진심이 아니어도
제스쳐는 취하는게 맞다.

세상이 깨끗하다고 생각하냐는 것고, 힘 가지고 나쁜짓하는게 당연하다는 말들도
아니라고 생각했다가 지금은 맞다고 생각한다. 뭐 죽여버리면 되니, 힘이란게 뭔지
측정할 수는 없는 것이라, 그렇다고 그렇게 가르치진 않겠지만.

난 힘들게 이룬 것들을 쉽게 버리는 경향이 있다는 것을 알게 되었다.
사람들이 늘 관련해서 말을 해 주었지만, 난 어차피 한번 사는 인생이라 나름의 기준점이
있다고 생각했었다.

반은 맞고 반은 틀리다.

일반적 기준에서 보면 그들의 말이 맞지만 다른 시각에서 보면 내가 맞다.

일반적 기준에서 보면 세상이 힘든것이 전혀 이해가 안되겠지만
내가 보는 시각에서는 모두 이해가 된다.

사실 그래서 가지게 된 SI 꿈이다.

말 안하고 조용히 있다가 꿈을 이루는 것이 사실 더 쉽다.
그런데 그게 별로 의미 없다는 것.

태권이 결혼식에서 못간다고 했다. 같이 술을 너무 마셔서 다음 날 회의가 있는데 토하고 난리... 회의중에 양해를 구하고 토하러 갔는데,...

RU21도 양주 4병 앞에서는 아무것도 아니었다.

위암 전단계라 한동안 술 안마시다가 태권과의 만남은 가슴이 너무 아파서 술에

의지했다. 변명이라면 변명이겠지만 앞으로 어머니께서 돌아가시는 날 빼고는 이렇게

마실 이유는 없을 것 같다.

재미있는 것은 그렇다고 태권과 멀어질 사이도 아니다. 다른 사람들은 멀어질 이유를 찾고 있기 때문에 찾지 말고 가서 축복해 주라고 내가 멀리 지내기로 했다.

가까이 지내면 결국엔 내가 이용할 것 같아서이다.

안부를 물으며 위치를 쉽게 파악 하겠지. 그래서 말해주었다. 그러기 싫다고

적어도 그러기는 싫었다.

아니라며 편하게 연락하라고 해도 내가 싫은 것은 어쩔 수 없다.

레트리카에 있는 새끼들 플레이 보면 말이다. 선배고 후배고 투자자고 친구고...

ㅅㅂ 빨리 상장해라.


내 진짜 꿈을 이루기는 것 이외에 다른 것은 모두 지워나가고 있다.

이런 모습도 조만간 지워야 겠지.

글은 남겨둔다.

훗날 부끄러운 기억이고 나를 방해하는 것일지라도

수많은 고민을 하는 후진들에게...

사람 함부로 믿지 말라는 말을 전하고 싶다.

그리고 전후좌우 관계 알 필요없는 사람간의 공식이 있다.

돈 가져간 새끼가 개새끼다.

그런데 세상을 알면,

진실도 왜곡할 수 있는 힘이 생긴다.

그것을 아예 중요하지 않게 만들수도 있다.

관련해서는 가족사를 말해야 하는데

별로 말하고 싶지 않다.

그냥 돈 가져가고 우린 나쁜 사람 되어 있는게 맞는 것 같다.

가족간은 정말 돈이 중요한게 아니니까.

행복하게만 살았으면 좋겠다.

 

 

firefox 로 메인 브라우저 변경

safari, chrome, explorer, opera 모두 쓰긴 하지만 컴퓨터로 다른 사람들이 보내는 시간들의 평균 이상 사용하는 사람에겐 메인이 있고 서브가 있다.

크롬을 떠나 파폭으로 간다.

구글은 앱스토어 및 크롬 플러그인 관리에 실패했다.

뒤 늦게 앱 스토어도 관리해 보지만... 애플만큼은 못함이 확실해졌다.

뭐, 장/단 점은 있다. 오버워치가 맥에서는 돌지 않으니.

맥북 에어 주문했다.

17인치 에일리언웨어를 쓰면서 생각이 정말 많이 바뀌었다.

노트북은 이동 편의성이 더 중요하고, 클라우드로 자료 관리를 하며,
데스크탑은 무조건 최고 사양에 커다란 모니터라는 것을.

듀얼 모니터 보다는 정면으로 볼 수 있는 모니터가 더 좋다는 사실도.


시간이 지나면 바뀔 수도 있겠지만 지난 30년을 봤을 때,

향 후 20년간은 바뀌지 않을 것 같다.

safari, chrome, explorer, opera 모두 쓰긴 하지만 컴퓨터로 다른 사람들이 보내는 시간들의 평균 이상 사용하는 사람에겐 메인이 있고 서브가 있다.

크롬을 떠나 파폭으로 간다.

구글은 앱스토어 및 크롬 플러그인 관리에 실패했다.

뒤 늦게 앱 스토어도 관리해 보지만... 애플만큼은 못함이 확실해졌다.

뭐, 장/단 점은 있다. 오버워치가 맥에서는 돌지 않으니.

맥북 에어 주문했다.

17인치 에일리언웨어를 쓰면서 생각이 정말 많이 바뀌었다.

노트북은 이동 편의성이 더 중요하고, 클라우드로 자료 관리를 하며,
데스크탑은 무조건 최고 사양에 커다란 모니터라는 것을.

듀얼 모니터 보다는 정면으로 볼 수 있는 모니터가 더 좋다는 사실도.


시간이 지나면 바뀔 수도 있겠지만 지난 30년을 봤을 때,

향 후 20년간은 바뀌지 않을 것 같다.

'Blog History' 카테고리의 다른 글

343  (0) 2020.05.26
342  (0) 2020.05.26
340  (0) 2020.05.26
339  (0) 2020.05.26
338  (0) 2020.05.26

https://www.firegiant.com/wix/tutorial/
https://cakebuild.net/docs/overview/features

원격 데스크톱 연결을 설정하기 전에 원격 데스크톱 연결 6.0에서 자격 증명을 묻는다

 

 

현상

원격 데스크톱 연결 6.0 클라이언트 업데이트(업데이트 925876) 설치한 다음 현상 하나 이상이 나타날 있습니다.

 

원격 데스크톱 연결을 설정하기 전에 원격 데스크톱 연결 6.0에서 자격 증명을 묻는 메시지를 표시합니다.

서버의 ID 확인할 없는 경우 원격 데스크톱 연결 6.0에서 서버의 ID 승인하라는 메시지를 표시합니다.

스마트 카드를 사용하여 원격 데스크톱 연결 5.x 로그온할 있는 경우에도 스마트 카드를 사용하여 원격 데스크톱 연결 6.0 로그온하지 못할 있습니다.

원격 데스크톱 연결 6.0 클라이언트 업데이트에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.

 

 

925876 원격 데스크톱 연결(터미널 서비스 클라이언트 6.0)

 

 

 

해결 과정

문제를 해결하려면 원격 데스크톱 연결 6.0에서 새로운 기능을 해제하여 원격 데스크톱 연결 5.x 기능으로 되돌립니다. 이렇게 하려면 다음과 같이 하십시오.

 

시작, 실행을 차례로 누르고 mstsc.exe 입력한 다음 확인을 누릅니다.

옵션을 누른 다음 일반 탭을 누릅니다.

다른 이름으로 저장을 누른 다음 파일 이름 상자에 파일 이름을 입력합니다.

원격 데스크톱 파일을 저장할 위치를 선택하고 저장을 누른 다음 취소를 누릅니다.

 

참고 저장된 파일의 확장명은 .rdp입니다.

시작, 실행을 차례로 누르고 notepad 입력한 다음 확인을 누릅니다.

파일 메뉴에서 열기를 누릅니다.

파일 형식 목록에서 모든 파일을 누릅니다.

찾는 위치 목록에서 4단계에서 저장한 파일을 찾아 누른 다음 열기를 누릅니다.

다음과 유사한 줄을 찾습니다.

authentication level:i:n

 

참고 n 자리 표시자는 현재 인증 수준을 나타냅니다.

인증 수준을 0으로 변경하여 줄이 다음과 같이 되도록 합니다.

authentication level:i:0

 

참고 인증 수준을 0으로 설정하면 RDP 6.0에서 서버 인증을 확인하지 않습니다.

파일의 끝에 다음 줄을 추가합니다.

enablecredsspsupport:i:0

 

참고 줄이 있으면 원격 데스크톱 연결을 설정하기 전에 자격 증명을 제공할 필요가 없습니다.

파일 메뉴에서 저장을 누릅니다.

원격 데스크톱 연결을 사용하여 연결하려면 12단계에서 저장한 파일을 실행합니다.

 

참고 이러한 단계를 수행하면 원격 데스크톱 연결 6.0에서 제공하는 새로운 보안 기능이 제거됩니다. 또한 원격 데스크톱 연결 6.0 시스템 속성에서 네트워크 수준 인증이 있는 원격 데스크톱을 실행 중인 컴퓨터에서만 연결 허용 옵션을 사용하는 Windows Vista 기반 컴퓨터와 호환되지 않습니다. 

Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹에 참여하시기 바랍니다.

사용자 컴퓨터에서 지원하지 않는 네트워크 수준 인증이 원격 컴퓨터에 필요합니다.


SR626 is the same as LR626

 

retana 377 sr621sw 다르다

'Blog History' 카테고리의 다른 글

342  (0) 2020.05.26
341  (0) 2020.05.26
339  (0) 2020.05.26
338  (0) 2020.05.26
337  (0) 2020.05.26

신용카드 등 사용액 합계 99,088,673
① 전통시장 사용액
179,910
② 대중교통 이용액
1,081,900
③ 현금영수증, 직불·선불카드 사용액(전통시장, 대중교통 제외)
22,277,634
④ 신용카드 사용액(전통시장, 대중교통 제외)
74,899,679
⑤ 도서·공연·박물관·미술관 사용분 합계 649,550
신용카드 도서·공연·박물관·미술관
423,490
현금영수증, 직불카드·선불카드
도서·공연·박물관·미술관
226,060

종소세 신고중... 홈텍스 잘 만들었네. 수년 째 해도 볼 때마다 새롭긴 하지만

아직 뭔지 잘 모르겠지만 ㅠㅠ 뭔가 자동으로 불러와지고 뭔가 자동으로 들어가 있다.

 

많이 써도 더 내야할 세금이 600이 넘네 ㅡㅡ; ㅋ

'Blog History' 카테고리의 다른 글

341  (0) 2020.05.26
340  (0) 2020.05.26
338  (0) 2020.05.26
337  (0) 2020.05.26
336  (0) 2020.05.26

방송대 광고

 

알고리즘의 대표적인 설계 기법이 아닌 것은?

1
회귀분석 방법
2
욕심쟁이 방법
3
동적 프로그래밍 방법
4
분할정복 방법
정답입니다.
정답 : 1
문제의 종류와 조건 등의 다양성 때문에 범용의 알고리즘 설계 기법은 존재하지 않으나, 비교적 간단하면서도 많은 부류의 문제에 적용 가능한 대표적인 설계 기법으로는 분할정복 방법(교재2장), 동적 프로그래밍 방법(교재3장), 욕심쟁이 방법(교재4장)이 있다.


알고리즘의 시간 복잡도는 무엇의 함수로 표현하는가?

1
입력 데이터의 값
2
입력 데이터의 크기
3
프로그램 코드의 길이
4
프로그램에 사용된 동적 변수의 개수
정답입니다.
정답 : 2
입력으로 사용되는 데이터의 크기(“입력 크기”)가 증가하면 당연히 수행 시간도 증가한다. 따라서 단순히 수행되는 단위 연산의 개수가 아닌 입력 크기의 함수로서 시간 복잡도를 표현한다.

Q3
f(n)=2n3+3n2-n+10이라고 하고 g(n)=n3이라고 하자. n>3에 대하여 f(n)≥2g(n)일 때 f(n)을 나타내는 점근적 표기법은?

1
f(n)=O(n^3)
2
f(n)=Ω(n^3)
3
f(n)=Θ(n^3)
4
f(n)=o(n^3)
정답입니다.
정답 : 2
3보다 큰 모든 입력 크기 n에 대해서 f(n)이 2g(n)보다 크거나 같다는 것은 결국 작아지지 않는다는 점근적 하한을 의미하고, 점근적 하한에 해당하는 표기법은 Big-omega이다. 참고로 Big-oh 표기법은 점근적 상한(f(n)≤cg(n)), Big-theta 표기법은 점근적 상하한(c1g(n)≤f(n)≤c2g(n))을 의미한다. 

Q4
알고리즘의 시간 복잡도를 점화식으로 표현하였을 때 가장 효율적인 알고리즘에 해당하는 것은?

1
T(n) = 2T(n/2) + Θ(n), T(1)=Θ(1)
2
T(n) = T(n-1) + Θ(n), T(1)=Θ(1)
3
T(n) = T(n/2) + Θ(1), T(1)=Θ(1)
4
T(n) = T(n/2) + Θ(n), T(1)=Θ(1)
정답입니다.
정답 : 3
각 보기에 해당하는 점화식의 폐쇄형을 차례대로 계산하면 Θ(nlogn), Θ(n2), Θ(logn), Θ(n)이 된다. 또한 O-표기 간의 연산 시간의 크기 관계에서 오른쪽에 해당할수록 상대적으로 효율성이 나쁜 것을 의미한다.

O(1) < O(logn) < O(n) < O(nlogn) < O(n2) < O(n3) < O(2n)

따라서 Θ(nlogn), Θ(n2), Θ(logn), Θ(n) 중에서 가장 효율성이 좋은 것은 결국 O(logn)이 된다.

다음과 같은 알고리즘의 시간 복잡도를 빅오 표기로 나타내시오.

서술형 주관식 입력칸
O(n^2)
정답과 비교해 보세요.
정답 : 설명참고

정답&해설: O(n2)



실용적으로 알고리즘의 시간 복잡도를 계산하기 위해서는 주어진 알고리즘에서 시간이 많이 걸리는 부분, 즉 루프의 반복횟수를 조사하면 된다.

위의 알고리즘의 경우 바깥 for문(i)의 경우에는 n-1회 반복하고, 안쪽 for문(j)의 경우에도 n-1회 반복을 하게 되는데, 바깥 for문의 각 i에 대해서 안쪽 for문의 j가 n-1회 반복하기 때문에 전체적으로는 n2-2n+1만큼 반복한다.

점근 성능은 알고리즘 수행 시간의 최고차항(여기서는 n2)에만 의존하기 때문에 결국 시간 복잡도 O(n2)이 된다.

정리하기 정리하기
알고리즘의 설계
주어진 문제와 조건 등이 매우 다양하므로 알고리즘의 일반적인 설계 방법론은 존재하지 않지만, 많은 부류의 문제에 적용될 수 있는 대표적인 설계 기법으로는 분할정복 방법, 동적 프로그래밍 방법, 욕심쟁이 방법이 있다.

알고리즘 분석
정확성 분석 : 올바른 입력이 주어졌을 때 유한 시간 내에 정확한 결과를 생성하는 지의 여부를 판단
효율석 분석 : 알고리즘 수행에 필요한 컴퓨터의 자원의 양을 측정 → 공간 복잡도, 시간 복잡도 → 시간 복잡도 : 알고리즘을 실행시켜 완료될 때까지 걸리는 시간으로, 알고리즘에서 수행되는 단위 연산의 총 횟수로 표현 → 최악의 경우 수행 시간을 입력 크기의 함수로 표현

점근 성능
입력 크기 n이 무한히 커짐에 따라 결정되는 성능 → 수행 시간의 다항식 함수에서 최고차항만을 계수 없이 취해서 표현 → 알고리즘의 수행 시간의 증가 추이를 나타내는 것으로 알고리즘의 우열을 따질 때 용이
표기법 : ① “Big-oh” 점근적 상한 f(n) = O(g(n)), ② “Big-omega” 점근적 하한 f(n)=Ω(g(n)), ③ “Big-theta” 점근적 상하한 f(n)=Θ(g(n))
O-표기 간의 연산 시간의 크기 관계 : O(1) < O(logn) < O(n) < O(nlogn) < O(n^2) < O(n^3) < O(2^n)

기본 점화식과 폐쇄형
T(n) = T(n-1) + Θ(1), T(1)=Θ(1) → Θ(n)
T(n) = T(n-1) + Θ(n), T(1)=Θ(1) → Θ(n^2)
T(n) = T(n/2) + Θ(1), T(1)=Θ(1) → Θ(logn)
T(n) = T(n/2) + Θ(n), T(1)=Θ(1) → Θ(n)
T(n) = 2T(n/2) + Θ(1), T(1)=Θ(1) → Θ(n)
T(n) = 2T(n/2) + Θ(n), T(1)=Θ(1) → Θ(nlogn)


'Blog History' 카테고리의 다른 글

340  (0) 2020.05.26
339  (0) 2020.05.26
337  (0) 2020.05.26
336  (0) 2020.05.26
335  (0) 2020.05.26

링크드인 iOS 는 여전히 C, Objective-C ...

Swift 하시는 분 참고 하시길. 실무에서 Objecitve-C ... 나중에는 writing 능력이 아니라 reading 능력만 필요하겠지만

프로젝트를 진행하지 않고 리딩이 된다는 것은 아니다.  리딩은 고급 언어인데 사실 다 되는데 그 정도를 돈 줘가며 요구하지는 않으니까.


Grubhub
iOS Engineer II
Grubhub · New York, United States

check icon 
보유 기술 매치: Objective-C, C, 리더십 외 4
 
 
Binance
iOS Developer (Swift; Mid to Senior)
Binance · Seoul, KR

 
 
Apple
Embedded IOS Engineer
Apple · Culver City, CA, US

check icon 
보유 기술 매치: C, Objective-C, C++ 외 4

 
 
SSi People
IOS Mobile Developer - REMOTE Role
SSi People · Pittsburgh, Pennsylvania, United States

check icon 
보유 기술 매치: 리더십, 관리, iOS 외 2

 
 
Viva Republica (Toss)
iOS Developer
Viva Republica (Toss) · Seoul, South Korea


 
 
3Ci
iOS Developer
3Ci · Atlanta, Georgia, United States

check icon 
관련 경력 매치: 소프트웨어 개발자 2년


 
 
Modis
Mobile iOS Developer
Modis · Denver, Colorado, United States

check icon 
관련 경력 매치: 소프트웨어 개발자 2년

 
 
Brooksource
Mobile Application Developer (iOS)
Brooksource · Dunwoody, Georgia, United States

check icon 
보유 기술 매치: 모바일앱, iOS 개발, iOS 외 2

 
 
와디즈 (wadiz)
iOS 개발자
와디즈 (wadiz) · Seongnam, Gyeonggi, South Korea


 
 
TalentPartners
iOS Developer
TalentPartners · United States

check icon 
관련 경력 매치: 소프트웨어 개발자 2년



'Blog History' 카테고리의 다른 글

339  (0) 2020.05.26
338  (0) 2020.05.26
336  (0) 2020.05.26
335  (0) 2020.05.26
334  (0) 2020.05.26

Dear JUNHO HA,

You have revoked your certificate, so it is no longer valid.

Certificate: Development
Team Name: TAKIT Company Limited

Any provisioning profiles that include this certificate are no longer valid and must be regenerated for future use.

Best regards,
Apple Developer Program Support

 

기타 개발자 아웃.

 

희안한게 다들 소스 받으면 갑자기 개발이 하기 싫어 지는 것인지?

코어 다 가르쳐 주고 알아 들었다는 피드백 받고도 왜 안하는 것인지? 지미... 난 몇 년 한거 지 혼자만 알고 안 가르쳐 주는 놈한테 소스 받고 삽질하면서 개발했는데.

 

친절함은 유튭에서나 있어야 할 것 같다.

'Blog History' 카테고리의 다른 글

338  (0) 2020.05.26
337  (0) 2020.05.26
335  (0) 2020.05.26
334  (0) 2020.05.26
333  (0) 2020.05.26

하준호 고객님, "티에프지 테슬라 3세대 넘버3 드라이버 다이아몬드 다이어프램 이어폰, 단일 상품, 혼합 색상" 상품이 만족스러우셨나요?

 

후기 :  상당히 만족스러운 음색이다. 베어다이나믹, 바워스앤윌킨스 시그니처에 밀리지 않는다. 당연히 P9 보다 더 낫다는 뜻은 아니고 밀리지 않는다는 것. 이어폰이라 베이스가 약하다. 매우 맑은 소리는 맞으나 베이스가 약하다. 하지만 귀에 끼웠을 때 간지는 최고!

라고 쓰고 싶지만 쿠팡이라 모바일로 쓰기 귀찮...

 

보스, 비츠, 베어다이나믹, 바워스앤윌킨스 등의 이어폰/헤드폰 및 아류작의 많은 청음 장치를 보유하게 되었네. 만약, 하나만 추천하라고 당연히 내 아이도 선택한 바워스앤윌킨스 P9. 나머진 필요에 따라 더 구입하길 원한다. 비쌀 수도 있지만. 삶은 한 번 뿐이니까 타협없는 사운드를 들어보시길.

'Blog History' 카테고리의 다른 글

337  (0) 2020.05.26
336  (0) 2020.05.26
334  (0) 2020.05.26
333  (0) 2020.05.26
332  (0) 2020.05.26

GTX 1050에서 INNO3D iChiLL 지포스 RTX 2080 SUPER ULTRA D6 8GBX3 로 그래픽 카드를 바꿨다. 제자에게 선물 받은 그래픽 카드는 이 정도 사양은 아니라 뽐뿌 온 김에 지르고 제자들 선물은 지금 회사에서 같이 일하는 프리랜서에게 드렸다(장과장님) 나중에 이 글 보시면, felt 커피 사주셔서 고맙습니다. ㅋㅋ 그리고 고맙다고 DDR4 8GB 메모리를 주신다고 한다. 아싸리.

그런데 모니터가 60밖에 지원을 안해서 최상옵으로 게임을 하는 즐거움만 ㅠㅠ 좀 더 부드럽게 즐기고 싶다면 모니터도 바꾸어야 한다.

특이한 것은 파워 서플라이 1200W으로 주문해서 지금 오고 있는데 500W에서도 잘 돌더라.

물론, 텐서플로우 돌려서 사용률 100% 찍으면 전력 부족으로 컴퓨터 꺼지리라 예상되는데...

오버워치 풀옵 정도는 50도 밑으로 커버되고 펜 3개 중 1개만 맥스 40% 정도 돌고 나머진 돌지도 않더라.

번갈아 가면서 20% 정도씩 돌 때도 있는데 2080 벤치마크 비교해 보니 3000% 이상 차이나던데 정말 차이가 크긴 하더라.

저렴한 2080 Ti로 가면 80만원 정도 가격 향상이 되던데 Ti Sli는 힘들 것 같고, 플래그십 모델은 가격이 잘 잘 안 떨어져서

일단 나중에 2080 하나 더 끼울 요량으로 선택하였다.

 

결론, INNO3D iChiLL 지포스 RTX 2080 SUPER ULTRA D6 8GBX3 은 500W 파워에서 잘 돈다. 아직은.

'Blog History' 카테고리의 다른 글

336  (0) 2020.05.26
335  (0) 2020.05.26
333  (0) 2020.05.26
332  (0) 2020.05.26
331  (0) 2020.05.26

이 공지 두 번 받음.

오늘 발표된 새로운 자격 요건을 적용할 경우 크리에이터님의 YouTube 채널
(HAEddie)은 지난 12개월 동안 시청 시간 4,000시간과 구독자 1,000명이라는 새로운 기준을 충족하지 못하여 더 이상 수익을 창출할 수 없습니다. 이에 따라 크리에이터님의 채널은 향후 30일 안에 이 기준을 충족하지 않으면 2018년 2월 20일부터 YouTube 파트너 프로그램과 관련된 모든 수익 창출 도구와 기능을 사용할 수 없게 됩니다. 이에 본 이메일은 YouTube 파트너 프로그램 약관이 해지된다는 30일 사전 고지에 해당합니다.
누구든지 성공적인 채널을 통해 수익을 창출할 수 있는 기회를 제공하는 것은
YouTube의 핵심 가치 중 하나입니다. 새로운 기준을 아직 충족하지 못한 크리에이터는 YouTube 크리에이터 아카데미, YouTube 고객센터  크리에이터 사이트의 모든 리소스를 계속 활용하여 채널을 성장시킬 수 있습니다. 크리에이터님의 채널이 새로운 기준을 충족할 경우, YouTube의 정책 및 가이드라인을 준수하는지 여부를 확인하기 위해 검토할 것이며, 준수할 경우에는 수익을 창출하는 것이 다시 가능해질 것입니다. YouTube는 크리에이터의 지속적인 성장과 성공을 위해 앞으로도 계속 노력하겠습니다.

그 전에는 댓글 짜증나서 내렸고,

내 목적은 달성해서 잘 나가는 영상 스스로 내렸는데 (뭐, 아시는 분은 아실 듯 네이버 메인에 2번이나 떠서 와이프가 말해 준 ㅋㅋㅋ)

좀 아깝긴 하더라. 수익 창출 걸자마자 하루 10만원 이상 찍혔으니... 그냥 회사 안 다니고 이런거 할까 고민했을 정도. 혼자였다면 그대로 밀고 나갔겠으나 주변에서 하도 만류를 해서... 인 것도 있고 뭐, 마음만 먹으면 어둠 세계와도 손 잡을 수 있다는 것을 보여주고 싶었다. 뭐, 마음만 먹으면 러시아 마피아와도 바로 연결될 수 있는데 너무 큰 이야기들을 하면, 사람들이 잘 안 믿더라. ㅋ

 

믓튼, 네이버 메인에 광고하는데 3억 이상인데 뉴스 기사들 덕분에 또 날파리들을 경험했다. 뭐든 잘되면 날파리가 꼬이더라. 내 영상 소스 주고 영상 내리라는 말을 돌려서 하는 사람도 만나보고 ㅋㅋ.

돈이 모이는 쪽은 항상 갈등이 있다.

 

 

'Blog History' 카테고리의 다른 글

335  (0) 2020.05.26
334  (0) 2020.05.26
332  (0) 2020.05.26
331  (0) 2020.05.26
330  (0) 2020.05.26

오...  아동 동영상에 맞춤 광고가 표시되지 않으면 수익 창출이 안된다는 거구나. 정말 중요한 내용이었네. 

 

정의와진실튜브님, 안녕하세요.
지난 9월 YouTube는 아동 및 아동의 개인정보 보호를 강화하고 미국 연방거래위원회(FTC)에서 제기한 우려사항을 해결하기 위해 일련의 변경사항을 발표했습니다.
구체적으로 설명하자면 앞으로는 모든 크리에이터가 YouTube 스튜디오에서 콘텐츠가 아동용인지 여부를 지정해야 합니다. 또한 사용자의 연령과 상관없이 아동용으로 지정된 동영상을 시청하는 사용자의 개인정보는 아동의 개인정보로 간주됩니다.
오늘부터 아동용으로 지정된 동영상에는 더 이상 개인 맞춤 광고가 게재되지 않으며 댓글, 스토리, 실시간 채팅, 종 모양 알림 아이콘 등의 기능이 지원되지 않습니다.
YouTube는 이번 변경사항이 아동용 콘텐츠를 제작하는 크리에이터에게 상당한 영향을 미칠 수 있다는 점을 잘 알고 있으며 크리에이터분들이 새로운 환경에 대처할 수 있도록 돕기 위해 최선을 다하고 있습니다. YouTube는 FTC 공청 기간에 참여하는 등 이번 사안과 관련해 담당 기관과 협력하고 있습니다. 많은 크리에이터분들 역시 소중한 의견을 제공하신 것으로 알고 있습니다.
아직 시청자층을 설정하지 않으셨다면 채널(또는 개별 동영상)이 아동용인지 여부를 설정하셔야 합니다. 이 설정에 따라 YouTube에서 콘텐츠가 처리되는 방식이 결정됩니다.
콘텐츠를 가장 잘 아는 사람은 크리에이터 본인이므로 크리에이터가 시청자층을 지정해야 합니다. YouTube 또한 머신러닝을 사용해 아동용 콘텐츠를 식별하며, YouTube의 결정이 잘못되었다고 생각하는 크리에이터는 YouTube 시스템에서 지정한 시청자층을 변경하실 수 있습니다. YouTube에서는 악용 또는 오류가 감지된 경우에만 크리에이터가 선택한 시청자층을 변경합니다.
감사합니다.
YouTube팀

 

방송대 온라인 제출용 표지

 

https://www.knou.ac.kr/knou/univlfhd/EHPStudFrm.jsp

 

학생 서식 다운로드-학생지원 안내

처음으로 > 대학생활 > 학생지원 안내 > 학생 서식 다운로드 > 학적 한국방송통신대학교의 학생 서식 다운로드입니다.

www.knou.ac.kr

 

'Blog History' 카테고리의 다른 글

334  (0) 2020.05.26
333  (0) 2020.05.26
331  (0) 2020.05.26
330  (0) 2020.05.26
329  (0) 2020.05.26

구글 홈 미니 무료 이벤트

망할... 방금 이벤트를 발견했다. ㅠㅠ 뜨아아아아아ㅏㅏ아아아아아아아아ㅏ아ㅏㅏㅏㅏㅏㅏ

만료된 혜택입니다.

Google Korea LLC에서 제공하는 프로모션 코드(쿠폰)에는 다음 약관이 적용됩니다. 쿠폰을 2020년 3월 31일 오후 11:59(KST)까지 사용하지 않으면 만료됩니다. 2020년 2월 19일 기준으로 YouTube Premium을 이용 중인 유료 회원에 한해 제공됩니다. 사용자는 쿠폰 사용 날짜를 기준으로 멤버십이 일시중지되거나, 이용을 취소 내지 비활성화한 상태가 아닌 회원이어야 합니다. 프로모션 코드당 Google Home Mini 1대를 신청할 수 있으며 재고가 소진될 때까지 선착순으로 제공됩니다. Google은 필요에 따라 관련 약관을 수정할 권리를 유보합니다.

 

'Blog History' 카테고리의 다른 글

333  (0) 2020.05.26
332  (0) 2020.05.26
330  (0) 2020.05.26
329  (0) 2020.05.26
328  (0) 2020.05.25

유튜브 구독자 1000명 돌파하면

 

축하드려요. YouTube 구독자가 1,000명을 돌파했습니다. 😃 😎 👍

오팔 혜택을 획득했습니다.
이제오팔 클럽의 신규 회원이 되었으므로 다음과 같은 혜택을 바로 사용하실 수 있습니다.
  • 제작자의 날 행사에서 다른 제작자들과 함께 배워보기
  • 가까운 지역의 YouTube 스페이스 이벤트 또는 워크숍 참석
  • 지역 모임에 참석하여 거주 지역의 크리에이터와 교류
  • YouTube의 온라인 크리에이터 커뮤니티 참여
  • YouTube 담당자로부터 지원 받기
그 밖에도 많은 혜택이 있으니 YouTube.com/creators에서 다른 크리에이터 리소스를 확인해 보세요

'Blog History' 카테고리의 다른 글

332  (0) 2020.05.26
331  (0) 2020.05.26
329  (0) 2020.05.26
328  (0) 2020.05.25
327  (0) 2020.05.25

티스토리 애드센스 수익 창출 금지되었나 보네.

3개월 실적이 있는데, ...

수입은 없다.

예전에는 이 부분이 나오고 조금씩 올라갔었거든...

 

유툽도 그렇고... 구글도 살기 힘든가 보네.

'Blog History' 카테고리의 다른 글

331  (0) 2020.05.26
330  (0) 2020.05.26
328  (0) 2020.05.25
327  (0) 2020.05.25
326  (0) 2020.05.25

쩝 작은 게임이지만, 게임 룰이 판이하게 변경될 때마다 작업이 참 많다. 

 

case Rock = 0, Paper, Scissors, UBB, Golden

 

 

        case .Rock:

            return "rock"

        case .Paper:

            return "paper"

        case .Scissors:

            return "scissors"

        case .UBB:

            return "ubb"

        case .Golden:

            return "golden"

 

  1. User Action : tab - rotation 제거
  2. 방향 전환 모듈 제거에 따른 승리룰 체크 변경

  func algorithmDrawOrWin(typeUpper: hjhBlocType, directionUpper: hjhDirectionType, typelower: hjhBlocType, directionLower: hjhDirectionType) -> Bool {

        

        var nothingIsNorth : hjhDirectionType = directionUpper

        var nothingIsNorth2 : hjhDirectionType = directionLower

        

        if nothingIsNorth == .Nothing { nothingIsNorth = .North }

        if nothingIsNorth2 == .Nothing { nothingIsNorth2 = .North }

 

  1. Init Rotation 제거 - 처음 나올 때부터 회전.

//hjh_disabled_init random rotation        if GS.s.stage6flag {

//            if Bool.random() { rotateBlocks(orientation: orientation) }

//            if Bool.random() { rotateBlocks(orientation: orientation) }

//            if Bool.random() { rotateBlocks(orientation: orientation) }

//        }

 

 

final func rotateBlocks(orientation: Orientation) {

        guard let blockRowColumnTranslation: Array<(columnDiff: Int, rowDiff: Int)> = blockRowColumnPositions[orientation] else {

            return

        }

        

        if self.blocks.mBlocDirection == .North {

            self.blocks.mBlocDirection = hjhDirectionType.East

        } else if self.blocks.mBlocDirection == .East {

            self.blocks.mBlocDirection = hjhDirectionType.South

        } else if self.blocks.mBlocDirection == .South {

            self.blocks.mBlocDirection = hjhDirectionType.West

        } else if self.blocks.mBlocDirection == .West {

            self.blocks.mBlocDirection = hjhDirectionType.North

        } else if self.blocks.mBlocDirection == .Nothing {

            self.blocks.mBlocDirection = hjhDirectionType.East

        }

        

        let rotateAction = SKAction.rotate(byAngle: radian2degree(-90), duration: 0.5)

        self.blocks.mSprite?.run(SKAction.sequence([SKAction.group([rotateAction

            //            , rotateAction

            ])

            //            , SKAction.removeFromParent()

            ]))

        //TODO: ROTATE

        //        for (idx, diff) in blockRowColumnTranslation.enumerated() {

        //            blocks[idx].mXposition = column + diff.columnDiff

        //            blocks[idx].mYposition = row + diff.rowDiff

        //        }

    }

 

  1. Bloc Type 제거 및 정리

case Rock = 0, Paper, Scissors, UBB, Golden 

var spriteName: String {

        switch self {

        case .Rock:

            return "rock"

        case .Paper:

            return "paper"

        case .Scissors:

            return "scissors"

        case .UBB:

            return "ubb"

        case .Golden:

            return "golden"

//        case .ERROR:

//            return "ERROR"

        }

    }

에서

    var spriteName: String {

        switch self {

        case .Rock:

            return "rock"

        case .Rock1:

            return "rock1"

        case .Rock2:

            return "rock2"

        case .Paper:

            return "paper"

        case .Paper1:

            return "paper1"

        case .Paper2:

            return "paper2"

        case .Scissors:

            return "scissors"

        case .Scissors1:

            return "scissors1"

        case .Scissors2:

            return "scissors2"

.

.

.

  1. Bloc type 변경에 따른 승리룰 변경 적용

   fileprivate func tigRules1(_ bloc: AtomicBloc, _ vX: Int, _ vY: Int, _ effectX: CGFloat, _ effectY: CGFloat) {

        //                Toast.showBlack(message: bloc.mBlocType.description + " and " + prevBloc!.mBlocType.description)

        //                Toast.showBlack(message: bloc.mXposition.description + "," + bloc.mYposition.description + " and " + prevBloc!.mXposition.description + "," + prevBloc!.mYposition.description)

        //TODO: making "nil" type

        if algorithmDrawOrWin(typeUpper: bloc.mBlocType, directionUpper: bloc.mBlocDirection, typelower: GS.s.hjhBlocStorage?[vX, vY + 1]?.mBlocType ?? hjhBlocType.Rock, directionLower: GS.s.hjhBlocStorage?[vX, vY + 1]?.mBlocDirection ?? hjhDirectionType.Nothing) {

            debugPrint("same same bloc type")

            //                    let randomRadius = CGFloat(UInt(arc4random_uniform(400) + 100))

            //                    let goLeft = arc4random_uniform(100) % 2 == 0

            //                    var point = GS.s.gameScene?.spritePositionCalculator_(column: (GS.s.hjhBlocStorage?[vX, vY]!.mXposition)!, row: (GS.s.hjhBlocStorage?[vX, vY]!.mYposition)!)

            //                    point = CGPoint(x: point!.x + (goLeft ? -randomRadius : randomRadius), y: point!.y)

            //

            //                    let randomDuration = TimeInterval(arc4random_uniform(2)) + 0.5

            //                    // #5

            //                    var startAngle = CGFloat(Double.pi)

            //                    var endAngle = startAngle * 2

            //                    if goLeft {

            //                        endAngle = startAngle

            //                        startAngle = 0

            //                    }

            //                    let archPath = UIBezierPath(arcCenter: point!, radius: randomRadius, startAngle: startAngle, endAngle: endAngle, clockwise: goLeft)

            //                    let archAction = SKAction.follow(archPath.cgPath, asOffset: false, orientToPath: true, duration: randomDuration)

            //                    archAction.timingMode = .easeIn

            let atomicSprite = GS.s.hjhBlocStorage?[vX, vY]?.mSprite!

            debugPrint("\n demo1checking " + (GS.s.hjhBlocStorage?[vX, vY + 1]?.mSprite!.description ?? "NONE") ?? "NOTHING")

            

            

            GS.s.hjhBlocStorage?[vX, vY + 1]?.mSprite!.removeFromParent()

            GS.s.hjhBlocStorage?[vX, vY + 1]?.deletingMeFromStorage()

            

            //                    let atomicSprite2 = GS.s.hjhBlocStorage?[vX, vY + 1]?.mSprite!

            atomicSprite!.alpha = 1000

            

            //                let fadeInAction = SKAction.fadeAlpha(to: 0, duration: 0.2)

            //                fadeInAction.timingMode = .easeIn

            

            //                let hjhAction001 = SKAction.moveBy(x: 0, y: 0, duration: 1)

            let hjhAction002 = SKAction.scale(to: 0, duration: 0.5)

            

            atomicSprite!.run(                            SKAction.sequence(

                //                        [SKAction.group([fadeInAction]),

                [SKAction.group([hjhAction002]),

                 SKAction.removeFromParent()])

            )

            

            let yae : Int = vY + 1

            //                    GS.s.hjhBlocStorage?[vX, yae]?.mSprite!.removeFromParent()

            debugPrint("vxvy : ", vX, vY, yae)

            //                    GS.s.hjhBlocStorage?[vX, yae]?.deletingMeFromStorage()

            //                run(SKAction.wait(forDuration: 0.4), completion: completion)

            

            //                    debugPrint("animateCollapsingLines : ", block.mXposition, block.mYposition, block.mSprite!.anchorPoint.x, block.mSprite!.anchorPoint.y)

            // #6

            //                    sprite!.zPosition = 1000

            //

            //                    sprite!.removeFromParent()

            

            GS.s.hjhBlocStorage?[vX, vY]?.deletingMeFromStorage()

            let effect = eff_baamTwoBlocks(x: effectX, y: effectY)

            GS.s.gameScene?.addChild(effect)

            if GS.s.logLevel == .fixing {

                debugPrint("hjhFixingBloc Effect x = ", effect.position.x, ", y = ", effect.position.y) }

            totalScore += 10

            //                    GS.s.hjhBlocStorage?[vX, vY + 1]?.mSprite?.removeFromParent()

            //                    GS.s.hjhBlocStorage?[vX, vY + 1]?.deletingMeFromStorage()

            //

            //TODO: WHY                    Toast.show(message: (GS.s.hjhBlocStorage?[vX, vY]?.mXposition.description)! + " " + (GS.s.hjhBlocStorage?[vX, vY]?.mYposition.description)!)

            //TODO: WHY                    Toast.showBlack(message: GS.s.hjhBlocStorage?[vX, vY]?.mXposition.description ?? "NOTHING")

            //                    GS.s.hjhBlocStorage?[vX, vY + 1]?.mSprite?.removeFromParent()

            //                                        prevBloc!.deletingMeFromStorage()

        }

 

  1. 골든 블락, 제거 안되는 블락 제거에 따른 룰 변경

if typeUpper == hjhBlocType.Golden {

            return true

        }

        

        if nothingIsNorth != nothingIsNorth2 {

            return false

        }

 

구문 제거

'Blog History' 카테고리의 다른 글

330  (0) 2020.05.26
329  (0) 2020.05.26
327  (0) 2020.05.25
326  (0) 2020.05.25
325  (0) 2020.05.25

나이키 신발 수명

 

십년 넘으니 맛탱이 가네

밑 창이 갈라진다.



'Blog History' 카테고리의 다른 글

329  (0) 2020.05.26
328  (0) 2020.05.25
326  (0) 2020.05.25
325  (0) 2020.05.25
324  (0) 2020.05.25

[ETRI강의용] swift basics

 

다음 중 32bit 자료형은?(복수가능)
uint, UInt, UInt8, UInt16, UInt32, UInt64, Int8, Float, Double

C의 char과 같은 자료형 2개를 쓰세요.

다음 코드를 개선하라

var v=0

 

for _ in 1...100 {

    v+=1

    print(v, terminator:"")

}



 

다음 코드를 개선하라

 

var v=0

 

for i in 1...100 {

    v+=i

    print("current= ", v)

}

 

 

다음 코드에서 에러를 2개 찾아 이유를 쓰시오

 

var a : Uint8

var b : uint

a=256

b=256

print(a+b)

 

 

다음 코드에서 1개의 에러를 찾아 이유를 쓰시오

 

var a : UInt8

var b : UInt8

a=255

b=255

print(a+b)

 

 

다음 코드를 튜플를 이용하는 코드로 바꿔라.

 

var a : uint

var b : uint

a=255

b=256

print(a+b)

 

 

다음 코드에서 변수 값 직접 대입을 변수 선언 후 대입으로 바꾸어라.

 

var a = (255, 256, 4554, 4545,4 ,545, 45)

//TODO : print(a.0 + a.1 + ...)

 

 

다음 코드에서 다수의 languages를  입력할 수 있도록 개선하라(func이용)

 

var lang : [Int:String]

lang = [1: "Swift", 2: "C/C++"]

var a = ("hajunho", 172, 38, lang)

var (name, height, age, languages) = a

 

print(name, height, age, languages)

 

 

다음 코드를 간단히 하여라

var lang : [String]

lang = [String]()

lang.append("Swift")

lang.append("C/C++")

var a = ("hajunho", 172, 38, lang)

var (name, height, age, languages) = a

print(name, height, age, languages)

 

 

다음 코드에서 print를 한번만 쓰도록 개선하라

 

if age > 35 {

    print("You are old.")

} else {

    print("You are young.")

}

 

 

다음 closure를 풀어서 재작성하라

 

let b: (Int) -> Int

b = {(n:Int)->Int in return n&n}

 

다음 코드에서 오류를 찾아라

func square(number: Int) -> Int {

    return number * number

}

 

let num = square

 

print(num(number:10))

 

cFunc 호출문을 추가하여라

 

func square(number: Int) -> Int {

    return number * number

}

 

func cFunc(fp: (Int)->Int) {

    print(fp(3))

}

 

let vFunc = square

 

감바스 알 아히요

 

 

 

 

공부하고 먹고,

개발자의 삶 로그.

'Blog History' 카테고리의 다른 글

328  (0) 2020.05.25
327  (0) 2020.05.25
325  (0) 2020.05.25
324  (0) 2020.05.25
323  (0) 2020.05.25

맥을 늦게 사시는 분이 계신데 맥 제품은 늦게 사도 좋다.

사진처럼 맥 사고 비츠를 공짜로 받은 경우도 있고, 사은품이 없더라도 그 만큼 하드웨어가 수 많은 유저들에게 검증된 제품을 사기 때문이다.

또 때마침 와이프 생일

'Blog History' 카테고리의 다른 글

327  (0) 2020.05.25
326  (0) 2020.05.25
324  (0) 2020.05.25
323  (0) 2020.05.25
322  (0) 2020.05.25

GTA5는 정말 폭력적인 게임이다. 어린 친구들이 사리 분별이 될 때 까지는 정말 금지 시켜야겠다.



ㅠㅠ 그런데 너무 재미있음 ㅠㅠ

'Blog History' 카테고리의 다른 글

326  (0) 2020.05.25
325  (0) 2020.05.25
323  (0) 2020.05.25
322  (0) 2020.05.25
321  (0) 2020.05.25

관장라떼 며칠 더 지난 후기...
우유를 못 먹는 사람인데 ...
3일 동안 고생함.
장로환 먹음

'Blog History' 카테고리의 다른 글

325  (0) 2020.05.25
324  (0) 2020.05.25
322  (0) 2020.05.25
321  (0) 2020.05.25
320  (0) 2020.05.25

아이도 알아보는 bowers and wilkins p9

나름 괜찮은 어린이용 헤드셋을 사줬는데 불편하다며
P9을 스스로 찾는다.

'Blog History' 카테고리의 다른 글

324  (0) 2020.05.25
323  (0) 2020.05.25
321  (0) 2020.05.25
320  (0) 2020.05.25
319  (0) 2020.05.25

애플 인증서 관련 자료는 인터넷에 많은데도 불구하고 해당 사항에 대해 알려달라는 요청이 많아 왕왕 불려다닌다. 아래와 같이 정리한 메일을 써두고 보내는데... 그냥 블로깅 해두면 이제 쓸 일 없을거라 생각되어 여기 남겨둔다.

 

  1. 애플  하나하나에는 프로비저닝 프로파일이 있습니다. embedded.mobileprovision 이름으로 IPA 파일에 들어갑니다. (안드로이드 실행 파일이 APK라면 iOS 실행파일은 IPA 보시면 됩니다.) , 실행 파일() 내부에 프로비저닝 파일이 들어갑니다. 프로비저닝 프로파일은 developer.apple.com Profile 항목입니다.
  1. 1 프로비저닝 프로파일은  실행 권한, APNS, App group  앱에서 돌아가는 서비스에 대한 실행 권한이 명시되어 있습니다.
  1. 1 프로비저닝 프로파일은 네트워크 접속이 되는 순간 revoke 항목을 찾습니다. 프로비저닝 프로파일이 무결하지 않을   실행이 안됩니다.
  1. Revoke 체크는 다음 항목을 체크 합니다.
  • 인증서(Certificates) 체크 합니다.  

인증서는 앱의 고유 이름인 Identifiders 개인키를 기반으로 생성되는 인증 파일 입니다.

  • 기기(Devices) 체크 합니다.

기기는 Development 환경에서 developer.apple.com 등록된 기기인지 체크 합니다. 배포(Distrubution)으로  상태에서는 체크 하지 않습니다. 이에, 이미배포된 파일은 기기별로 제한을   없습니다. Development 환경에서는 기기 하나하나의 등록을 해지할  있습니다.

 

  1. 사용자 입장에서는  실행 절차는 다음과 같습니다.
  •  실행을 위해 아이콘 클릭 -> 프로비저닝 프로파일에서 권한 체크 ->  실행
  1. 개발자 입장에서의  개발 사이닝 프로세서는 다음과 같습니다.
  • Xcode 실행  프로비저닝 프로파일 선택   빌드
  • 만약, 프로비저닝 프로파일이 없어서 생성해야 하는 경우

개발자 개인키 +  인증서로 프로비저닝 파일을 생성합니다.

또한  인증서는 엔터프라이즈 등록된 개인키 + 인증된  identifier 생성합니다.

  1. 6 모든 작업은 엔터프라이즈 등록된 관리자ID가 있으면 가능하며, 엔터프라이즈 배포용 IPA 빌드는 해당 ID로만 가능합니다관리쩝자 ID 여러 개발자 ID 등록를 등록하여 개발용 바이너리 생성이 가능합니다.

 

주요 정보는 지웠는데 아웃룩 자동 생성된 번호는 복/붙이 안되는구먼. IT는 언제쯤 통일이 되려나.

자 그럼

3줄 요약

1. 앱 실행에는 프로비저닝 프로파일이 필요하고, 프로파일이라고도 한다.

2. 프로파일에는 인증서, Bundle Identifier, Device 가 들어간다.

3. 인증서는 컴퓨터 기반, Bundle Identifier는 고유앱 식별자, Device는 실행될 Device를 말한다.

그래서 developer apple 사이트 메뉴는 다음과 같은 거다.

Keys 항목은 APNs를 위해 있다. 프로비전 프로파일이 종합선물세트니, push provider server에는 프로파일이랑 APNs키를 저 메뉴에서 생성해서 주면 된다.

 

끝으로 이런 정보들에 힘들어 하는 이유는 뭔가 메뉴가 바뀌거나 정책이 바뀌었을 때 친절하지가 않다. 커뮤니티도 나름 폐쇄적이라... 그냥 깊게 살질 해 본 엔지니어들이 알고 포스팅도 잘 안한다. 자기 몸 값을 떨어뜨리는 일이기에. 그래서 깔끔하게 표로 정리 안한다. 매니저들 그거만 달달 외워서 코더들 갈구는게 싫어서.

그리고 이렇게 좀 더 써 두면 또 어좁이 들이 생겨난다. 실패가 두려워 도전은 하지 않고 기회를 탐하는. 실무자들은 이해할 터.

 

'Blog History' 카테고리의 다른 글

323  (0) 2020.05.25
322  (0) 2020.05.25
320  (0) 2020.05.25
319  (0) 2020.05.25
318  (0) 2020.05.25

Linked List 가 Primitive Type을 제외하고 자료형의 가장 기본이 되는 이유는 배열과 달리 동적 할당이 가능하고, 메모리가 허용되는 한 무한개의 데이터를 저장할 수 있다. 링크드 리스트를 이용하는 스택, 큐 구조와 순차 접근의 열쇠를 푸는 트리, 해시 등 다양한 변종들의 모체이다.

그러나 실무에서는 많이 쓰이지 않는다. 삽입, 삭제에 O(n)이 들며, 용량이 제한된  Array를 많이 쓴다. 링크드 리스트는 O(1)이라고는 하나 좌/우 포인터를 끊어주는 코드를 더 넣어야 한다. Array의 경우 용량 제한이 있지만 python의 List나 Objective-c의 MutableArray로 변경되어 추가가 되도록 만들어 준다. 물론, 무한 추가가 가능한 그 내부는 결국 linked list이다.

이는 물리 메모리 자체가 포인터의 next로 이루어지는 linked List 이기 때문이다. 메모리 내부 하드 어가 관리하는 메모리, MMU, OS 단 VM, 페이징, 컴파일러의 메모리 관리 메커니즘을 거치는데 실로 단순한 내용이 여러 개 중첩되면서 복잡해진다. 하드웨어 familier 한 코드 작성에는 물리 메모리 주소를 찾지만 소프트웨어 단에서는 전체적인 메모리 모니터링으로 갈음한다. 

관리자가 하드웨어 구성도 못하고 메모리가 뭔지 디지털 회로 실습 정도는 듣고 말했으면 좋겠다는 생각이 두리 뭉실 적어본다.

뭐, 현실이 나보다 위에 있어서 내가 피곤해서 그런 게 아니고 무시하고 넘어갈 때 그 표정들이 정말 안쓰러워서 그런다. 일일이 가르쳐 주면 주말에 스터디하자고 하지 않나... 그러면서 또 코딩은 결국 안 함. ㅋ

'Blog History' 카테고리의 다른 글

322  (0) 2020.05.25
321  (0) 2020.05.25
319  (0) 2020.05.25
318  (0) 2020.05.25
317  (0) 2020.05.25

메모리 관리를 제대로 해 주는 프로그래밍 언어는 존재할까?

 

Nope.

 

자바의 경우 GC가 있는데 System.gc()가 있는 이유는 가비지 컬렉션이 제대로 안 되기 때문이다.

C++의 경우 소멸자가 있다. Array::-Array() { delete[] data; } 뭐 이런 식.

메모리 관리는 사실 상당히 까다롭다. segment fault 가 아닌 논리적 문제 발생시 디버깅이 상당히 어렵다.

프로젝트 단위가 커지면 정적분석툴이 아닌 경우 순수 사람의 힘으로 찾아내기 힘들다.

 

무한의 메모리가 있으면 좋겠지만, 운영체제 자체가 메모리 단편화 현상을 해결하지 못했는데 어떻게 그 상위 단에서 문제 해결을 할 수 있을까?

 

그냥 대일 밴드만 덕지덕지 붙이는 꼴.

 

이런거 찾아 주고 디버깅 해주고 하는게 어찌보면 내가 하던 일 중 하나 였는데, AI가 도입되면서 이런데 크게 신경 안 써도 되게 되었다.

발전 과정에서는 최적화 보다는 그냥 AI로 잘 되느냐가 포커스 이기 때문이다. 물론, 잘 하는 사람도 없어서 ㅋ

'Blog History' 카테고리의 다른 글

321  (0) 2020.05.25
320  (0) 2020.05.25
318  (0) 2020.05.25
317  (0) 2020.05.25
316  (0) 2020.05.25

하준호

9시간

게임 피규어 정도는 그렇다쳐도 과분한 그래픽 카드를 받은지 2년만에 제자들에게 또 그래픽 카드를 선물 받았습니다. 게임 이야기는 그만 해야겠네요. 매년 10%는 남는 인연이던데 300명쯤 되니 이제 제자와의 슬랙도 30명이 넘어갑니다. SNS 정리하는 이유가 그렇다구요. 舊官名官 & Kim Young-Ha 선배님.

 

공유는 다른 사람과 보고 지울 게시 글로 남겼는데 너무 늘어나 버렸고,

facebook 의 게시글은 모두 지우고 이전을 해야 통합이 될 것 같아서 그리 하려고 한다.

facebook  이전 글도 많고, 다른 블로그에 글이 너무 많아, 한 동안 주제는 통합이 되겠네.

'Blog History' 카테고리의 다른 글

320  (0) 2020.05.25
319  (0) 2020.05.25
317  (0) 2020.05.25
316  (0) 2020.05.25
315  (0) 2020.05.25

+ Recent posts