비트코인 스터디. 지속적 업데이트 예정 풀린 질문 어떻게 노드들은 서로 최신의 블록체인으로 업데이트 하는가 기술질문 비트코인 2100만개가 모두 채굴되면 비트코인 시스템은 shutdown 되는 것 아닌가? 더 이상 채굴에 대한 보상이 이루어질 수 없으므로 채굴이 멈춘다는 것은 곧 더 이상의 블록을 생성할 수 없다는 것을 의미하니까 채굴에 의한 비트코인 vs 사토시에 의해 최초 만들어진 비트코인 비율은? 그렇지는 않을 것. Genesis block 이후 첫번째 블록에 적힌 트랜잭션의 내용 확인 필요 채굴에 100 명이 달라붙는다. 그중 1명이 블록을 생성해 낸다. 그럼 나머지 99명이 기여한 노력은 헛수고? 비트코인의 거래 체결량 속도는? 10분에 한블록씩 처리가 된다면.. 해당 블록에 담길 수 있는 거래..
언어별 네임스페이스에 대해서 한번 고찰해봅시다. = C 코드= #include int main() { int i=1; { int i=2; printf("%d\n", i); } printf("%d\n", i); return 0; } = Java 코드 = public class NameSpace { public static void main(String[] args) { int i=1; { int i=2; System.out.println(i); } System.out.println(i); } } 실행 결과가 어떻게 될까여??
윈도우 없이 한달정도 사용해보다가, 도저히 안되겠다 싶어 윈도우를 설치해보았어요 패러럴즈를 이용해서 윈도우XP를 설치했는데요, 패러럴즈 참 멋진 프로그램이에요. 설치방법도 생각외로 무지 간단하더라구요 개인적으로 복잡한거 무지 싫어하거든요; 매뉴얼도 없이 그냥 마법사에 따라 다음버튼만 따라 누르다 보니 설치가 되어있더라는^ㅡ^ 너무 간단해서 기분 확 좋아져버림~ㅎㅎ -윈도우 구동환경 - 윈도우 부팅장면 - 부팅완료 인제 싸이월드 클럽 잘 된다ㅋ 그런데 이게 윈도우 바탕화면과 OSX의 데스크탑이 파일을 서로 공유하더라구요~ 이거 보고 무지 신기했음^^; 그리고 확실히 시스템이 무거워지긴 하는군요; 램 1기가에서 OSX 위에 윈도우XP를 올리고 쓰려다보니 사용은 가능한데 답답함을 참기 힘들정도;; 월급 받으면..
php 에서 다음과 같은 조건을 가장 효과적으로 표현하는 방법은 무엇일까요? $var 가 "ibm", "ms", "apple" 중 하나일 경우 참이다2차방정식에서 근의공식을 이용하여 근을 구하듯, 본능적으로, $var = "ms"; if($var == 'ibm' || $var == 'ms' || $var == 'apple') { echo "ok"; } 이런 모습을 떠올리시겠지만, 셋 중 하나가 아니라 열개 중 하나만 되더라도 소스코드가 상당히 지저분해집니다. SQL 에서는 where fieldname in ('ibm', 'ms', 'apple') 과 같은 깔끔한 구문을 지원하고 있지만, php 에는 아쉽게도 이런 문법구조가 없죠; 간단하게 함수를 이용해보면, 다음과 같이 간단하게 표현할 수도 있겠죠, 방..
레이어를 화면 중앙으로 정렬시키는 간단한 소스,, 하지만, IE 전용이라는거ㅠㅠ; 출처: phpschool
네이버에는 실시간 인기검색어가 있다. 마우스포인터를 올리면 인기검색어 목록이 레이어로 나타나는데, 요 레이어는 마우스포인터가 레이어 밖으로 나가는 순간에 사라진다. 사용자 삽입 이미지 처음엔 레이어(즉, dom 엘리먼트)위에 있다가 마우스가 떠나는 순간을 나타내는 자바스크립트 이벤트핸들러가 있을꺼라 생각하고, 검색에 검색을 해보았지만,, 발견하진 못했고,, phpschool 에서 해당 내용을 색다른(?)방법으로 구현하는 방법을 찾아낼 수 있었다. 해당 레이어에 다음과 같이 두 개의 이벤트핸들러를 한꺼번에 등록하니까, IE, FF 에서 둘 다 잘 동작하네요^^; 실제로 네이버에서 어떻게 구현했는지는 잘 모르겠다^^;;
가정 id(아이디),password(비밀번호),idx(고유번호) 세개의 field를 갖는 test라는 테이블이 있고 이 안에는 72개의 데이터가 insert 되어 있다고 가정한다. limit mysql에서 지원하는 limit은 두개의 인자를 갖는다. select * from test order by idx desc limit 5,10 위에서 보면 앞에 인자는 위치정보이면 뒤에 인자는 select에 의해 불러오는 데이터의 수량이다. 따라서 위의 쿼리문을 해석하면 test 테이블을 idx로 내림차순 정렬을 한 것을 6번째부터 15번째까지 10개의 데이터만을 불러오라는 내용이다. 다음의 쿼리문을 보자 select * from test order by idx desc limit 10 위의 내용은 다음과 같은 결..
보통, 웹서버에 보관되어 있는 .hwp. .xls. .doc 같은 문서 파일들을 링크를 걸어둔채로 가만 놔두면, 클릭했을 때, 웹브라우저의 http 요청에 의해 그냥 다운로드가 되는게 당연한건 줄 알았거든요 그런데 어젯밤, 분명히 파일경로를 정확하게 해서 링크를 걸어두었는데 웹브라우저는 그냥 그 유명한 404 Not Found 메세지만 출력해버리드라구요; 어젯밤에 이것 때문에 혼자 막 승질내고 있었는데, 알고보니, 이게 IIS 6.0 부터는 보안 강화의 목적으로 기본적으로 이런 문서들의 MIME 타입 매핑을 안 해놨더라구요; 그래서 수동으로 해주어야 한다고 하네요;; 혹시라도, IIS 6.0 관리하시다가, 이런 문제로 고민하시는 분들이 또 있으시다면 웹사이트 등록정보를 열어서 MIME 형식을 설정해주세요..
디버깅의 시작은 '버그의 발견'이다. 하지만, 여기서 내가 강조하고 싶은 부분은 '버그의 발견' 이 부분을 치밀하게 분석해야 할 필요가 있다라는 것이다. 잘 돌아가는 프로그램에 버그가 발견되었을때, 급한 마음에 당장 소스를 열어보며 소스상의 오류를 찾으려 해도 쉽게 찾아지지 않는 경우가 많다. 소스를 열어보기전에 버그가 정확히 언제, 어디서, 어떻게 출현하는지부터 치밀하게 파악해야 한다. 그리고, 그와 똑같은 버그를 반드시 재현시킬 수 있어야 한다. 이런 버그가 왜 나타나게 되었을까, 잠깐 고민해보는 것도 좋다. 그리고 나서 소스코드를 한줄 한줄 뜯어보자. 버그가 정확히 언제 출현하는 지에 대해 정확히 알지 못하면, 이미 달아난 버그를 엄한데서 찾아 해메고 있었던 스스로를 발견할찌도 모른다 세상살아가는 ..
코딩 중에 우연히 발견하게 된 다음 코드 # Environment : Windows 2000 Server , IIS 5.0 ASP 문법을 배워본 사람이라면 누구나 이해할 수 있을만한 매우 간단한 코드다. ha 변수 앞에 "aa" 문자열을 붙여서 출력한다. 하지만, 이 간단한 소스에서 다음과 같은 간단한 에러가 난다는 거; Microsoft VBScript 컴파일 오류 오류 '800a0401' 문장의 끝이 필요합니다. /test.asp, 줄 3 response.write "aa"&ha -------------------^ 에러를 잡는 간단한 방법은 ha 변수의 이름을 바꾸거나, ha 앞에 공백문자를 두어 Response.Write "aa"& ha 와 같이 수정하는 방법 등이 있다. 하지만, 정확한 문법을 ..
1. 현재보이는 페이지에서 상태표시줄 없애기 - [보기-상태표시줄] 체크해제! 2. 팝업창 띄울 때, 상태표시줄 없애기 - window.open() 함수를 호출할 때, status 속성에 0 이나 no 값을 할당한다. (단, 실제로 팝업된 창에서 상태표시줄이 안보이게 하려면 ie 의 [도구-인터넷옵션-보안-사용자지정수준] 의 '기타' 항목에서 '크기 또는 위치제한을 가지지 않은 스크립트에서 시작한 창을 허용합니다' 란에서 '사용'을 선택해 주어야만 한다.) 3. 네이트온에서 연동한 싸이월드를 띄울 때는, ie 보안설정에 관계없이 상태표시줄이 나타나지 않는다!? - 네이트온은 웹브라우저기반이 아닌 애플리케이션이기 때문에 ie 보안설정에 관계없이 상태표시줄없는 팝업창 띄우기가 가능한듯 보인다. 실제로 htt..
$query = " SELECT m.no, c.label FROM member m JOIN category c ON a.cate = c.no "; $result = mysql_query($query) or die(mysql_error()); $row = mysql_fetch_array($result); 이렇게, 별칭을 써서 조인한 결과를, 뿌려줄 때, 이렇게 하면 안되는 건줄 정말 몰랐오ㅡㅡ;; 그럼, 만약에,,쪼인할 때, "SELECT m.name, c.name ~" 이렇게 땡겨온 결과는 m.name 값과 c.name 의 값을 어떻게 ㅅㅓ로 구별해서 뿌려줄 수 있을까;; 결국, 저런 경우에는 숫자인덱스를 써야만 하는 건가?
방학도 하고 해서, 이제는 스킨을 살짝 바꿔보려고, 태터센터로 찾아갔다.~ 안 보던 사이에 예쁜 스킨들이 많이많이 올라와 있다^ㅡ^ 오호~ 두근두근^^ 벅차오르는 기대감으로 예쁜스킨을 다운로드 받아서 설치하고, 환경설정에서 새스킨을 선택하였다. 그리고, 내 블로그로 이동하는 순간, 글씨들은 왜 전부다 암호화 되어진 채로, 화면에 위에 살포시 올라와 있는가ㅡ.ㅡ;; 아- 완전 열받는;; 옛날 버전을 써서 그런건지, 스킨이 이상한건지; 참; 결국, 나도 태터갈아타기에 합류해하는 것인가;
// 디비열기$db = mysql_connect('localhost', '****', '****') or die ('Error: Could not connect to DB. Please try again later.');// 디비선택mysql_select_db('****') or die ('select_db is error');// 쿼리작성$query = "insert pki_ca_db (vc_name, vc_jumin, vc_pubkey) values ('$name', '$jumin', '$pw1'); ";echo $query.'';// 쿼리실행$result = mysql_query($query);// 오류 처리if($result){ echo mysql_affected_rows($db).' insert..
TITLE LOOP.ASM DOSSEG .MODEL SMALL .STACK 100h .DATA .CODE MAIN: MOV AX, @DATA MOV DS, AX MOV CX, 8H MOV AL, 3AH AGAIN1: MOV DL, AL ;MOV DL, 3AH SUB DL, CL MOV AH, 02H INT 21H LOOP AGAIN1 ; MAINOUT: MOV AH, 4CH INT 21H END MAIN 어셈블리어 공부를 해본 적이 있다면, 출력결과를 예상해보기 보란다 '23456789' 라고 추측하였기를.. 하지만, 어셈블러를 통해 해석 후 실행시켜보면, 출력결과는 아마도 2!@$%!%@#&^ 이따구 모양이 나올 것이다 도대체, 왜 그러는가; 물론, MOV DL, AL 명령을 MOV DL, 3AH 로 ..
MFC의 소스를 분석하면서 RTTI의 동작 원리를 이해했을 때의 놀라움을 잊을 수 없다. 사실 필자는 2000년부터 게임 개발에만 몰두하고 있어서 이제 MFC 코드를 작성할 일이 거의 없다. 하지만 MFC 에서 사용한 많은 기교들이 다른 라이브러리에서도 거의 동일하게 구현되고 있으므로 많은 도움이 되었다. 대중에게 공개되는 프로그램을 5년이 넘게 개발하면서 느낀 사실은 프로그램은 (더군다나 게임 프로그램은) 어떠한 상황에서도 절대로 죽지 않아야 한다는 것이고, 프로그래밍에 대한지식이 조금씩 늘수록 모르는 것은 더 빨리 늘어난다는 것이며, 이것은 평생 계속될 것이다. From. 윈도우프로그래머를위한MFC구조와원리(서진택) -한빛미디어. p.136 요즘 보고있던 책에서 참 마음에 와닫는 문장이었다. 지식이 ..