본문 바로가기

YouTube::제3자 콘텐츠와 일치합니다 매번 대학 오케스트라 동영상을 올릴 때 저작권 침해 주장이 온다. 그것도 모든 곡이 아니다.다행히 동아리가 클래식 음악을 연주하는 그룹이라는 것이 변호를 하는데 도움이 된다. 왜냐하면 보통 저작자 사후 50년이 지나면 저작권이 소멸하는 경우가 대부분인데, 클래식 음악은 보통 몇 100년 정도가 지났기 때문이다. 어떤 곡은 여러 악장의 곡인데 일부 악장에서만 저작권 소유권 주장이 들어오기도 한다.아래 슈만 교향곡 3번은 1, 2, 5악장만 제3자 콘텐츠 일치 알림이 왔다. 2악장은 이의를 제기하니 알림이 없어지기도 했다.하지만 앵콜곡으로 최근 창작물(영화의 OST 모음곡 등)을 연주하는 경우가 있는데 이런 경우는 어쩔 수 없어 이의제기를 못한다는 단점도 있다. 이럴 경우는 비상업적인 용도로 이용했다고 신고..
이젠 모바일이 대세 얼마전에 신문에서 페이스북 관계자가 한국은 모바일 플래폼에 대비를 해야한다는 기사를 스쳐 읽은 적이 있다.자세히 읽은 것은 아니라서 구체적인 날짜와 누가 그런 이야기를 했는지 까지는 기억하지는 못하겠지만 척봐도 그런 기사다. 얼마전에 대학시절 오케스트라 정기연주회가 있어서 동영상을 유튜브에 올렸다.물론 올리는 것은 네트워크라던지 전기가 많이드는 일이라 iMac을 이용해서 유선으로 올렸다. (생산)하지만 시청에서는 극명하게 데스크탑이 아닌 모바일 장치들이 주류였다. (소비) 아래 그래프는 유튜브 재생목록을 구글의 URL 단축하는 사이트를 이용해서 재공한 통계이다.단축 URL을 페이스북을 통해 알려주었는데 78.1%가 m.facebook에서 클릭이 된 것이다. 반면에 데스크탑 www.facebook.com에..
node.js v0.8.21 -> v0.10.16 오랫만에 node.js를 할 일이 있어 버전을 검토하니 0.8대에서 0.10으로 릴리즈 되었다.꾸준이 버전이 올라가는 것으로 보아 누군가가 열심히 개발을 하고 있다고 생각이 되었다. 무슨 기능이 추가되었는지는 둘째치고 성능상의 변화가 궁금해서 이전 버전을 idle 상태로 돌려보고 업그레이드 후 버전을 돌려서 비교를 해보았다. 메모상으로만 보면 16.7 MB에서 10.8 MB로 대폭 감소하였음을 볼 수 있다.v0.8.21 v0.10.16 이전에 지역 저장소에 0.6.17 버전의 소스코드(정확히는 헤더들)를 넣어둔 적이 있는데 0.8까지는 변화가 없었다. cpp가 바뀌었을지도 모르겠다. 그럼 이번에는 어떤 변화가 있을지?
이클립스의 자바빈 getter/setter 생성 버그 Foo라는 클래스의 String타입의 name이름의 프로퍼티가 있다고 할 때,JavaBean 규약에 의하면 getter와 setter의 이름은 각각,String getName()과 void setName()이 된다. 이클립스에서 POJO형태의 클래스를 만들때 보통 메소드 자동생성기능을 이용한다. Source > Generate Getters and Setters... 문제는 두번째 글자가 대문자일 경우에 이클립스는 첫 번째 문자를 대문자로 바꾸지 않고 소문자로 놔둔다는 것이다.nName이라는 프로퍼티는 아래처럼 바뀐다. 별로 상관없을지 모르나 리플렉션(reflection)을 통해 메소드를 가져오는 경우 아래와 같은 메세지가 나오면서 예외가 발생한다.java.beans.IntrospectionExcepti..
지역변수의 이름은 짧게 하는 것이 보기에 좋다. 프로그래밍 수련법 1장 스타일 > 1.1 이름에 나오는 이야기이다. (p.4) 전역변수에는 서술적인 이름을, 지역변수에는 짧은 이름을 붙여라 C#의 콤보 컨트롤이 바뀌었을 때 수행되는 이벤트 핸들러 메소드의 예이다. [수정전] [수정 후]코드가 길어졌다고 불평할지도 모르겠지만 3번째 줄의 using을 보여주기 위해서 앞부분을 추가한 것일 뿐이다. using을 사용함으로 42라인은 스크롤 하지 않고도 한번에 볼 수 있게 되었다.
클래스 이름짓기 네이밍(이름짓기)은 프로그래밍에서 하찮게 보일 수 있지만 중요한 문제이다.이름을 길게 지어야한다, 짧게 지어야한다, 카멜표기법을 준수해야 한다, 헝가리언 표기법은 좋지 않다 등의 많은 의견이 있겠지만 가장 중요한 것은 일괄적인 패턴이 있어야 한다는 것이다. 우리는 보통 관습(convention)이라고 부른다. 지문 데이터를 관리해주는 매니저 클래스를 만들어야 했는데 다음과 같은 후보를 정하고 후배에게 의미를 파악할 수 있는지 이름만으로 추측하게 하였다. 1. FPDM2. FPDMgr3. FPDManager4. FPDataManager5. FingerPrintingDataManager 1번에서는 전혀 의미를 파악하지 못했다.2번에서는 M이 Mgr로 바뀌었음을 인지했고, Manager의 약자라는 것까지 알게..
[NUnit] NUnit에서 x86 바이너리 테스트하기 NUnit은 .net 프레임워크를 위한 테스트 프레임워크이다.처음에는 AnyCPU로 선택해서 OS가 64비트라서 64비트로 동작하는 모듈을 테스트하는데,System.BadImageFormatException이 발생을 한다. 서드파티 라이브러리가 32비트용 dll이라서 그런 것 같았다. 제조사에게 64비트용 이미지를 요청하고, 시간이 없어서 개발은 32비트로 먼저 진행하기로 했다.그런데 이번에는 NUnit에서 아래와 같이 읽어오질 못한다. 알고보니 x86용 프로그램도 같이 제공되고 있었다. 런타임이 64비트인지 판단하는 정적 메소드static Boolean Is64Bit(){ return Marshal.Sizeof(typeof(IntPtr)) == 8;}
앞짧은꾸밈음 코드 만들기 시벨리우스에서는 앞 짧은 꾸밈음의 코드를 작성을 하는 방법을 제공하지 않는다.편법이 있다면, 사분음표의 짧은 꾸밈음을 붙이는 방법이 있다. 'Sib. 6.x: Lining up grace notes in a chord' 를 참고했다. 라흐마니노프 피아노 협주곡 2번에는 8마디의 코드진행이 있은 후에 아르페지오 형태의 피아노 반주가 이어진다.첫 번째 반주에서는 앞 짧은 꾸밈음의 코드 진행이 있는데 아래와 같이 입력하면 된다. 제일 위의 음표는 8분음표의 앞 짧은 꾸밈음을 입력했다. 4분음표 앞꾸밈음을 입력한다. 다음과 같이 코드처럼 보이게 만들 수 있다. 문제는 여백이 생겨서 앞이 길게 보이는 문제가 있다.해결 방법은 조금 이상하긴 한데, 4개의 음표를 동시에 선택한 후, 앞뒤로 왔다갔다 하면 여백이 줄어..