레이블이 Tips인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Tips인 게시물을 표시합니다. 모든 게시물 표시

2019년 6월 3일 월요일

Google : "Google Dos 스프레드시트" 에서 다른 문서 데이터 가져오기

구글은 "구글 Docs" 라는 유용한 문서작업 툴을 무료로 공개하고 있다. 물론 아직 M$ 의 오피스와 비교하면 속도나 성능, 안성성 측면에서 한참이나 뒤떨어져서 구글 Docs 만으로 모든 업무를 처리하긴 문제가 있지만 간단한 문서처리라면 지금도 충분히 유용하다.

엑셀 류의 문서를 작업하다보면 다른 문서의 데이터를 사용해야 할때가 있는데, 웹에서 사용되는 문서라서 안될것 같지만, 의외로 쉽게 사용할 수 있다.


이렇게 두개의 문서가 있을때...


한쪽 문서의 데이터를 다른쪽 문서의 특정 셀에 나타나도록 해보자.


방법은 간단하다. 그냥 " IMPORTRANGE() " 를 쓰면 된다.

IMPORTRANGE("가져올 문서 주소", "'시트명'!셀번호") 

이렇게 하면 간단히 다른 문서의 데이터를 가져 올수 있다. 물론 아무 문서나 다 되는것은 아니고 내가 조회 가능한 문서만 가능하다.


가져올 문서 주소는 해당 문서의 URL 에서 알수 있다.


가져올 문서에서 문서 ID 를 알아낸다음, 그 문서에서 가져올 시트와 셀 번호를 기록하면 끝... 이지만, 그 문서에 접근 권한이 있는지를 한번 체크하기 때문에 "엑세스 허용" 이라는 버튼을 한번 눌러 주어야 한다(이것은 링크를 만들때 한번만 허용하면 그 다음 부터는 동일한 문서에 대해서는 인증없이 가져 올 수 있다). 


이렇게 하면 다른 문서의 데이터를 가져와 바로 쓸수 있다. 가져온 데이터는 일반 적인 다른 데이터들과 동일하게 처리되므로 합계 같은 집계 데이터로 동일하게 쓸 수 있다.



2019년 2월 9일 토요일

Tips : 내 전용 가상화폐를 쉽고 간단하게 만드는 "Steem Engine"

얼마전에 전세계의 가상화폐 열풍이 불었다. 실체가 없는 가상의 화폐가 무려 천만원이 넘어가기도 했었다.

그때는 아무나 쉽게 발행 할수 있는것은 아니었다. 아무리 소스를 다운받아 컴파일만 하면 된다곤하지만, 그것도 그리 쉬운일은 아니다. 하지만, 이젠 버튼 몇번 클릭만 해줘도 쉽게 내 소유의 가상 화폐를 만들수 있는 세상이 되었다.

바로 "Steem Engine" 을 사용하면 가능하다.

발행에 드는 비용은 겨우 100 스팀 뿐 (현 시세로 대략 3만원 정도).

물론 이건 순수하게 단독으로 발행되는 코인은 아니다. 스팀 코인 (steem coin) 의 블록체인에 연동되어 있는 코인이라 스팀 코인이 없어지기라도 하면 계속 유지될지 장담할 수 없는 불안한 코인이기는 하다.

가상화폐에 좀 알고 있는 사람들이라면 이것이 steem 에서 개발하고 있는 "SMT (Smart Media Tokens)" 와 거의 같은 것이라는 것을 알수 있을 것이다.

하지만, steem 에서 가타부타 말도 없이 개발 진행이 지지부진하는 사이에 "Steem Engine" 이라는 거의 같은 개념의 시스템이 등장해버렸다. 물론 커뮤니티 기반인 "SMT" 는 "Steem Engine" 에 비해 훨씬 더 규모가 큰 프로젝트라서 좀 다르기는 하지만 스팀 코인을 기반으로 그 하위 코인을 발행 한다는 기본 개념은 거의 같다고 할수 있다.

어쨌든 "Steem Engine" 을 이용하면 내 소유의 내 전용 코인을 쉽게 발행하고 거래 할수 있다.

단!!! 스팀 기반 코인이기 때문에 코인을 발행 할때 스팀 계정이 있어야 하며 거래를 할 때도 거래 양자가 모두 스팀 계정이 있어야만 거래가 가능하며 소유 코인 정보를 조회하려면 "Steem Engine" 사이트에서만 가능하다는 단점이 있다.

하지만, 스팀 기반 코인이므로 그저 발행하는 것만으로 스팀 코인 수준의 손쉬운 거래와 보안성을 확보할수 있다는 장점이 있으며, 별다른 비용없이 개발중인 앱에 거래 가능한 자체 가상화폐를 추가 할 수 있다는 장점이 있다.

현재는 "Steem Engine" 에서만 거래 할수 있지만, "Steem Engine"이 좀더 활성화 된다면 앞으로는 다른 거래소에서 거래가 될수도 있을 것이다.

스팀엔진 : https://steem-engine.com/

나만의 코인을 만들기위해 스팀엔진에 접속해 보자.

앞서 말했다 시피 발행에는 100 스팀이 필요한데, 실제로는 100 ENG 가 필요하며 1 ENG = 1 STEEM 이기 때문에 스팀엔진 사이트에서 100 스팀으로 100 ENG 를 구매해서 발행 비용을 지불해야 한다.


사이트에 접속해 보면 꼭 필요한 기능만 있는 간결한 사이트가 나타난다.


발행 토큰 목록을 보면 벌써 제법 많은 수의 코인들이 발행되어 있는 것을 볼수 있다. 이제 저 코인들 중에 내가 발행한 코인이 추가될 것이다.


코인을 발행하려면 스팀 계정이 있어야 한다. 참고로 로그인은 포스팅 키로 가능하지만, 발행 및 거래에는 액티브 키가 필요하다.


다른 메뉴는 사용가능하지만, 현재 "Market" 메뉴는 활성화 되어 있지 않으며 차후에는 이곳에서 다른 코인간 거래가 가능하게 될 것으로 보인다.


발행에는 100 ENG 가 필요하니 먼저 ENG 를 구매하도록 한다.


거래에는 스팀커넥트를 사용한다. 일반적인 스팀 거래와 같으므로 별다른 어려움 없이 구매가 가능하다.


거래가 끝나면 "Transaction Sent" 라는 창이 뜨니 "Transaction Sent" 를 눌러 주자. 난 저걸 안눌러 보지는 않았으니 저걸 안눌렀을때 어떤 문제가 생기는지는 모른다. 괜한 모험하지 말고 그냥 눌러 주자.


그런다음 "TOKEN" 메뉴의 "CREATE" 버튼을 이용하여 코인 생성 창으로 이동한다. 이곳에서 발행하길 원하는 코인의 정보를 입력하여 준다.

중요한것은 "Symbol" 은 거래 단위로 표시되는 명칭이므로 너무 길면 앞으로 사용에 에로사항이 꽃필것이니, 가능하면 짧고 간결하고 알기 쉬운 명칭으로 넣어 주는것이 좋다. 나의 경우는 "NYANG (냥)" 으로 입력.

"Max Supply" 는 최대 발행량이므로 이 수치 이상으로는 코인 발행이 안된다. 나의 경우는 최대값을 넣어 주었다. 무려 "1조" 코인...

그리고, "Decimal Precision" 이라는 항목이 있는데 이건 명칭만으론 좀 알기 어렵다. 나도 실제로 생성해 보고서야 이게 뭘 의미하는지 알수 있었는데, 이건 소숫점 이하를 말한다. 다시말해 "0" 이면 정수로만 사용이 가능하고 "8" 을 넣었다면 소숫점 8자리 까지 코인을 발행 할수 있다.


이렇게 정보를 입력하고 "Submit" 버튼을 클릭하면 발행한 코인 정보를 보여준다. 여기서 "Create" 버튼을 클릭하면 최종적으로 코인이 발행 된다.


마지막으로 스팀커넥트로 로그인해야 하는데, 주의 할 점은 포스팅키로 로그인해도 되는 것처럼 보이지만, 포스팅 키로는 코인이 생성되지 않는다. 따라서 "액티브" 키를 넣어 주어야 최종적으로 코인이 생성된다.


이렇게 생성한 "냥(NYANG)" 코인. 아직은 코인 생성만 해 놓은 상태라 발행량이 "0" 이다.

코인 발행을 하지 않은 상태라 소지 코인량도 "0" 이고, 소지 코인량이 "0" 이라 전송도 되지 않는다.


지갑을 확인해 보아도 내가 발행한 "NYANG" 코인을 가진게 없다.


응? 그럼 어디서 코인을 발행 해야 하는거지? 메뉴를 찾아 보아도 내 코인을 발행 할수 있는 메뉴가 없어서 좀 당황스럽다. 이럴땐 당황하지 말고 "TOKENS" 메뉴에서 내 코인을 찾아 클릭하면 내 코인 정보를 볼수 있는데...


여기서 "ISSUE" 버튼을 클릭해 준다.


그러면 "MINT" 라는 창이 뜨는데, 여기에 누구에게 얼마만큼의 코인을 발행 할 것인지 지정할 수 있다. 물론 코인 생성시에 지정한 최대 발행량 안에서만 발행할 수 있다.

주의할 점은 발행량을 지정할때 "콤마(,)" 를 넣지 않고 순수한 숫자로만 지정해야 한다는 점이다. 나의 경우 최대 발행량인 "1,000,000,000,000" 를 지정했었는데...


겨우 "1냥" 만 발행이 되었다.


다시한번 콤마를 뺀 순수한 숫자만 넣고 발행을 해보자.


코인 발행시에도 스팀 커넥트로 로그인 해야 한다.


이렇게 하면 드디어 나만의 코인을 발행할 수 있다. 무려 "1,000,000,000,000 냥(NYANG)" 코인이 발행 되었다.

ㅋㅋㅋ... 코인의 숫자가 얼마나 허무한 것인지 정말 실감나게 실감할 수 있다.


발행 코인 목록에 보면 1조냥이 발행된 내 코인을 찾아 볼수 있다. 이제 이 코인을 사용하기만 하면 된다. 참고로 이미 발행된 코인을 다시 회수 할 방법은 없는것 같다.


이제 이 코인을 사용하기만 하면 되는데...

막상 발송 테스트를 해 볼려니 보내 줄데가 없다. 1조냥이 아무 쓸데가 없구만...

ㅎㅎㅎ...

아무 쓸데가 없는 코인이지만 혹시라도 이 코인이 필요하시다면 댓글을 남기시라. 그러면 1000냥을 꽁짜로 보내 드리겠다. 물론 스팀잇 계정이 있어야만 받을수 있다는 것을 명심하시고 ... 아참... 단지 코인을 받을 목적이라면 스팀 엔진 계정은 없어도 된다. 그냥 스팀잇 계정만 있어도 코인을 받는데는 문제가 없다. 하지만, 받은 코인을 확인하려면 스팀 엔진 계정이 있어야 한다는 점을 명심하시길...

아... 냥코인이 1냥에 1원이라도 했으면 정말 좋겠다.


2018년 8월 13일 월요일

Tips : NotePad++ 에서 플러그인 관리자 설치


Notepad++ 는 부족한 Notepad 의 기능을 보완하여 상용 텍스트 에디터 부럽지 않는 성능과 수많은 기능을 무료로 제공해 주는 좋은 프로그램이다.

하지만, 예전에는 플러그인 관리 기능이 있어 그것으로 기본으로 제공하는 기능보다 더 많은 기능을 이용할 수 있었는데, 언제부터인가 플러그인 관리자 기능이 메뉴에서 삭제 되었다.

다행이 메뉴에서 없어진 것일뿐, 플러그인 기능 자체는 여전히 지원하고 있다. 단지 플러그인 관리자를 수동으로 설치해 줘야 하는 불편함이 있을 뿐...

플러그인 관리자 : https://github.com/bruderstein/nppPluginManager/releases

플러그인 관리자를 사용하기 위해서 플러그인 관리자를 배포하는 사이트에서 배포 프로그램을 다운로드 한다.


배포하는 프로그램에서 자신이 사용하는 프로그램 버전에 따라 다운 받으면 된다. 64비트면 "x64" 버젼을, 32비트이면 "UNI" 버젼을 다운 받으면 된다.


자신이 사용하는 노트패드++ 의 버젼을 확인하고 싶으면 메뉴에서 "?" 를 선택하여 "Notepad++ 정보" 를 보면 된다.


배포 프로그램을 다운 받아 압축을 풀어 준다.


우선 압축푼 폴더에서 "plugins" 폴더에서 "PluginManager.dll" 를 복사.


그리고, 복사한 파일을 노트패드++ 가 설치된 폴더의 "plugins" 폴더에 넣어 준다.


같은 방법으로 다운 받은 프로그램의 "updater" 폴더에서 "gpup.exe" 를 복사.


복사한 파일을 노트패드++가 설치된 폴더의 "updater" 폴더에 복사해 넣어 준다.
이것으로 설치는 완료 되었다.



 변경된 사항을 반영시키기 위해 노트패드++ 를 재 시작 시켜준뒤, "플러그인" 메뉴를 확인해보면 "Plugin Manager" 가 설치된 것을 확인 할수 있을 것이다.

2018년 2월 28일 수요일

iOS Tip : iPhone 에서 화면 녹화

아이폰에서 화면을 동영상으로 녹화하기는 매우 어려웠다.
그러지만, iOS11 로 업데이트 하면서 기본으로 녹화 기능이 제공된다.


녹화 기능을 사용하려면 "설정 > 제어센터" 로 이동.


제어센터에서 "제어 항목 사용자화" 를 선택.


추가할수 있는 기능중에 "화면 기록" 이라는 기능이 있는데 "+" 표시를 눌러서 추가해주면 된다.


그러면 제어 센터에 등록된 앱 리스트에 화면 기록 기능이 추가된 것을 볼수 있다.


사용하려면 아이폰 하단을 위로 슬라이드 하면 나타나는 제어센터에 추가된 "녹화" 아이콘을 눌러주면 사용할 수 있다.

아이콘을 누르고 바로 녹화가 시작되는 것이 아니라 약간 시간이 지난 후에 녹화가 시작되므로, 그 사이에 녹화 하기 원하는 앱으로 이동하면 쓸데없는 제어센터가 같이 녹화 되는 것을 막을 수 있다.






2017년 7월 25일 화요일

C# : Nullable 변수에 값이 들어 있는지 체크는 HasValue 를 쓴다.

C# 에는 숫자 변수 뒤에 물음표(?)를 붙여서 Nullable 변수라는 것을 만들수 있다.

관련링크 : 변수 뒤의 물음표(?) 는 무슨 뜻일까?

이렇게 함으로 해서, 숫자 변수에 "0" 이라는 값이 아닌 아예 "아무것도 없는" 값을 지정할수 있다.

하지만 이 변수에 어떤 값이 지정되어 있는지 아닌지는 어떻게 알수 있을까?
이게 중요한게, 알다시피 "Null" 값이 지정되어 있는 상태에서 뭔가 하려고 하면 (예를 들어 ToString() 같은거...) 오류가 난다.

이때는, 그냥 "변수.HasValue" 로 확인 해 보면 된다.



물론 "if (변수 == null)" 같은걸로도 가능하지만, 좀 있어 보이게 이렇게 쓰는 편이 더 확일하다.

2017년 7월 12일 수요일

C# : 변수 뒤의 물음표(?) 는 무슨 뜻일까?

C# 에서 가끔 변수들 뒤에 물음표(?) 가 달려 있는 경우가 있다.


알고보면 간단한건데, 모를때 모면 이게 무슨 의미인지 알수가 없어 난감한데...
이건 그냥 숫자 변수에 "Null" 이 지정가능하다는 뜻. 즉, "Nullable" 변수라는 뜻이다.


이렇게 원래 Null 값을 가질수 없는 숫자 변수가 물음표(?) 를 붙여 선언하면 Null 값을 지정할 수 있다.


일반적 방식으로 그냥 숫자 변수를 선언하면 숫자 타입의 변수는 "0" 혹은 "임의의값" 을 반드시 가져야 하므로 Null 을 지정하면 오류가 발생한다.


물론 일반적으로 Null 이 아닌 0을 지정하면 되므로 크게 문제가 되지 않는다.
단지 사용상의 문제일뿐.

즉, 파라메타를 넘길때 처럼, 아무런 값이 넘어오지 않을경우 혹은, "0" 일 경우와 아무것도 없는 경우를 구분해서 처리해야 할 경우 등, 필요에 따라 쓰이는 방식이다.

관련링크 : Nullable 변수에 값이 들어 있는지 체크는 HasValue 를 쓴다.

2017년 6월 15일 목요일

링크 : Xamarin.Forms에서 이미지 크기


원문 : http://nsinc.tistory.com/172


항상 봐도 봐도 모르겠는 아이콘/이미지 크기 문제.
이걸 보니 조금 속이 시원해지는 느낌이 든다.

2017년 6월 1일 목요일

MVC : Windows Server 2008 에서 MVC 사이트를 만들었더니 "-2146232576 오류 코드 때문에 컴파일러가 실패했습니다." 오류가 발생한다.

이전에 ...

Windows Server 2008 에서 MVC 사이트를 만들었더니 403.14 - Forbidden 오류가 난다

... 로 Windows Server 2008 에서 MVC 사이트를 만들었더니 "-2146232576 오류" 가 발생했다.


일단 오류를 자세히 보자.
자세히 보면 만들어 놓은 MVC 사이트에서 뭔가를 실행하다 오류가 발생한 것을 볼수 있다.
(MVC 사이트 컴파일결과 생성된 파일이니, MVC 사이트의 bin 폴더에서 찾을 수 있다.)

저 파일을 한번 실행해 보면...


음... 드디어 저 오류의 정체를 찾아 냈다.
즉, .NetFramework 4.6 이 설치 되어 있지 않아 오류가 난것.

으... 그럼 애초에 사용 프레임 워크의 버젼을 4.5 정도로 낮추기만 해도 해결될 문제였단 말인가...

뭐... 이왕 여기까지 온거 저대로 해결을 해보자.

그냥 .NetFrameWork 4.6 을 설치해 주면 된다.
Window Update 로는 아마 설치가 안될테네... 직접 다운 받아 설치를 해 주자.


Microsoft .NET Framework 4.6(웹 설치 관리자) : https://www.microsoft.com/ko-kr/download/details.aspx?id=48130

이거 받아서 설치하면 됨.


그냥 동의하고 설치...


쭉쭉 설치가 되고... 이게 설치가 다 되면...


쨘~~ 이렇게 Windows Server 2008 에서도 MVC 사이트를 만들 수 있다.