달력

032010  이전 다음

  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  

'전체'에 해당되는 글 327건

  1. 2010/03/11 2010년 MVP가 작성한 SBS기술문서 리스트
  2. 2010/02/23 1월에 게시된 MVP들의 SBS(StepByStep) 문서 입니다.
  3. 2010/01/26 밤하늘과 사진 그리고 시간
  4. 2010/01/24 세티... 밤하늘을 찍다. (2)
  5. 2010/01/18 Microsoft SBS(Step by Step) 문서 입니다.
  6. 2010/01/18 천문계산 - 행성의 편향각 구하기
  7. 2010/01/14 베란다에서 촬영한 오리온 자리 (3)
  8. 2010/01/12 C#으로 천문학 계산하기 - 적경과 적위 좌표간 변환
  9. 2010/01/10 한국아마추어천문학회 전국 지부장 회의 참석
  10. 2009/11/20 ASP.NET MVC(C#)으로 15분만에 영화 데이터베이스 애플리케이션 생성하기(4)
  11. 2009/11/19 ASP.NET MVC(C#)으로 15분만에 영화 데이터베이스 애플리케이션 생성하기(3)
  12. 2009/11/18 ASP.NET MVC(C#)으로 15분만에 영화 데이터베이스 애플리케이션 생성하기(2)
  13. 2009/11/17 ASP.NET MVC(C#)으로 15분만에 영화 데이터베이스 애플리케이션 생성하기(1) (2)
  14. 2009/11/16 사자자리 유성우 보러 갑시다.^^
  15. 2009/10/18 [광고글] 2009 대한민국 별축제 및 학생천체관측대회 (1)
  16. 2009/10/12 뉴욕자연사박물관 - 기후변화체험전에 다녀왔습니다.
  17. 2009/09/29 느리게 스쳐지나가는 것들
  18. 2009/09/14 [WCF 이슈] .svc실행시 MIME 등록하라고 할 때...
  19. 2009/09/14 적경과 적위에 대한 기본지식
  20. 2009/09/09 Step by Step 기술자료
  21. 2009/09/06 투정.
  22. 2009/09/02 매뉴얼과 경쟁력 (2)
  23. 2009/08/29 ASP.NET, Silverlight 관련 정보 공유
  24. 2009/08/22 날씨에 맞춰 변하는 윈도우 컨셉 폰
  25. 2009/08/02 강대국의 조건과 나의 위치...
  26. 2009/07/28 MSDN 웹 캐스트 시리즈
  27. 2009/07/27 Expression Blend 3를 만나는 곳
  28. 2009/07/20 [Expression Media] 5. Expression Media로 미디어 파일 버전관리 (2)
  29. 2009/07/19 22일에 개기일식 생중계 합니다. (1)
  30. 2009/07/17 [Expression Media] 4. Expression Media로 슬라이드 쇼 만들기

Number

ID linked

Title in local language

1

974096

Step by Step: 절전 모드 상태로부터 돌아올 때 암호를 입력해 로그온 하는 방법

2

974101

Step by Step: Windows Vista에서 Office 2007 설치하기

3

974872

Step by Step: Windows Vista에서 사용자 계정 이름을 변경하는 방법

4

974906

Step by Step: Windows Vista에서 사용자 계정을 제거하는 방법

5

975056

Step by Step: Windows Vista에서 사용자 계정을 추가하는 방법

6

975060

Step by Step: Word 2007, Excel 2007, PowerPoint 2007 문서에 암호를 설정하는 방법

7

975064

Step by Step: Outlook 2007의 편집기 옵션을 통한 단락 기호 제거 방법

8

975065

Step by Step: 바탕 화면에 Excel 2003, 2007 바로 가기 아이콘 만드는 방법

9

976078

Step by Step: 하드디스크 파티션 축소하는 방법 

10

976079

Step by Step: 하드디스크 파티션 확장하는 방법

11

976083

Step by Step: 시작 메뉴의 인터넷이나 전자 메일 프로그램 목록을 변경하는 방법

12

976087

Step by Step: Virtual PC 설치 방법

13

976086

Step by Step: Internet Explorer 8의 커서 브라우징(Caret Browsing) 

14

976081

Step by Step: Excel 2007에서 기본 글꼴 변경하는 방법

15

976084

Step by Step: Outlook 2007에서 받은 메일 색깔 지정하는 방법 

16

976085

Step by Step: Excel 문서 내에서 하이퍼링크 한꺼번에 삭제하기 

17

975514

Step by Step: IE8의 새로운 기능 - 달라진 페이지 내 검색

18

977046

Step by Step: Windows 7에서 자동 로그인 설정하기

19

977047

Step by Step: Word 2007에서 페이지 번호 삽입 방법

20

977048

Step by Step: PowerPoint 2007에서 문자줄 간격 조정하는 방법

21

977049

Step by Step: Outlook 2007에서 일정 공유 방법

22

977050

Step by Step: CSV 연락처 파일을 Outlook으로 가져오는 방법

23

977052

Step by Step: Outlook 2007에서 규칙 적용을 통한 특정 폴더로 메일 이동하는 방법

24

977053

Step by Step: Outlook 2007에서 연락처 검색 시 결과가 제대로 표시되지 않는다

25

977054

Step by Step: 파워포인트 여백 없이 인쇄하는 방법

26

977055

Step by Step: PowerPoint 2007 자동 그림 압축 해제하기

27

977356

Step by Step: Windows 7에서 무선 네트워크 연결 방법

28

977869

Step by Step: Windows 7 설치 전 내 컴퓨터 호환성 검사

29

977871

Step by Step: Windows 7에서 Windows Anytime Upgrade 사용하기

30

977951

Step by Step: Windows 7에서 사용자 계정 만들기

31

977954

Step by Step: Windows7에서 Aero 기능 활성화

32

977959

Step by Step: Windows 7 시스템 이미지 만들기

33

978064

Step by Step: Windows 7에서 가젯 추가 방법 및 원하는 위치로 옮기기

34

978066

Step by Step: Windows 7 전체 설치하기

35

978069

Step by Step: Windows 7 디스크 이미지 버너(Disc Image Burner) 사용 방법

36

977958

Step by Step: Windows 7에서 관리 센터 사용 방법

37

979113

Step by Step: Windows Vista에서 Windows 7으로 업그레이드하기

38

979114

Step by Step: Windows 7에서 프로그램 제거/변경 방법

39

979115

Step by Step: Windows 7 작업 표시줄에서 프로그램을 시작 및 응용하는 방법

40

978068

Step by Step: Windows 7에서 듀얼 모니터 사용 방법

41

979838

Step by Step: Windows 7에서 Windows 탐색기 폴더 창 자동 확장하기

42

979839

Step by Step: Windows 탐색기에서 폴더 및 파일 다중 선택하기

43

979840

Step by Step: 설정한 일정 시간이 지나면 자동으로 컴퓨터 잠그기

44

979841

Step by Step: Internet Explorer 글씨가 흐릿하게 보이거나 크게 보인다

45

979842

Step by Step: 윈도우 라이브 무비 메이커 사용하기

46

979843

Step by Step: Office Live Workspace에 저장

47

979844

Step by Step: Office Live Workspace를 통해 액세스 및 공유

48

979845

Step by Step: 텍스트 문서를 Excel로 가져오는 방법

49

979956

Step by Step: Windows 7에서 시작프로그램 제어

50

979957

Step by Step: Windows 7에서 자주 쓰는 폴더 관리하기

51

980326

Step by Step: PowerPoint 문서에 삽입된 그림 한꺼번에 가져오기

52

980445

Step by Step: 정해진 크기의 표안에 사진 삽입하기

53

980857

Step by Step: Windows 7에서 숨김 폴더파일파일 확장명 표시하기

54

980973

Step by Step: 작업 표시줄에 검색 아이콘 추가하기

55

980974

Step by Step: 한글 입력 시 일부가 영문으로 변경되는 문제 해결 방법

56

980975

Step by Step: 개인 주소록을 연락처



저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-
TAG mvp, sbs

SBS는 컴퓨터 초급 사용자들을 위한 문서이며, 다양한 MS 제품의 사용법에 대해 다룹니다.
아래는 여러 MVP님들께서 1월에 작성한 SBS 문서의 목록입니다.
필요한 분들에게 참고가 되었으면 합니다.

ID

Title

Live URL

작성 MVP

Comment

979838

Step by Step: Windows 7에서 Windows 탐색기 폴더 창 자동 확장하기

http://support.microsoft.com/kb/979838/ko

권순만

Published

979839

Step by Step: Windows 탐색기에서 폴더 및 파일 다중 선택하기

http://support.microsoft.com/kb/979839/ko

권순만

Published

979840

Step by Step: 설정한 일정 시간이 지나면 자동으로 컴퓨터 잠그기

http://support.microsoft.com/kb/979840/ko

권순만

Published

979841

Step by Step: Internet Explorer 글씨가 흐릿하게 보이거나 크게 보인다

http://support.microsoft.com/kb/979841/ko

박종현

Published

979842

Step by Step: 윈도우 라이브 무비 메이커 사용하기

http://support.microsoft.com/kb/979842/ko

박종현

Published

979843

Step by Step: Office Live Workspace에 저장

http://support.microsoft.com/kb/979843/ko

장미희

Published

979844

Step by Step: Office Live Workspace를 통해 액세스 및 공유

http://support.microsoft.com/kb/979844/ko

장미희

Published

979845

Step by Step: 텍스트 문서를 Excel로 가져오는 방법

http://support.microsoft.com/kb/979845/ko

장미희

Published

979956

Step by Step: Windows 7에서 시작프로그램 제어

http://support.microsoft.com/kb/979956/ko  

박찬

Published

979957

Step by Step: Windows 7에서 자주 쓰는 폴더 관리하기

http://support.microsoft.com/kb/979957/ko

정성태

Published

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-
TAG MS SBS, mvp

초등학교(예전엔 국민학교)에 처음 입학 할 때의 이미지가 어렴풋이 그려집니다. 어머니 손을 잡고 좁은 등교길을 지나 정문에 도착하니 많은 또래 아이들과 사진사 아저씨, 그리고 꽃을 파는 분들이 모두 뒤섞여 혼잡했던 기억이 있습니다. 어머니는 목에 거는 꽃을 사서 제 목에 걸어주시고, 사진사 앞에 서서 활짝 웃으시면서 저와 함께 사진을 찍으셨죠.

그 오래전의 기억이 이미지로 남아 있는 건 그 때 찍은 한 장의 사진 때문입니다.
지금은 연세가 있으셔서 예전의 모습을 많이 잃으셨지만 사진 속에 웃고 계시던 어머니의 모습을 보면 마음이 살짝 저리기도 합니다. 물론 저 역시 시간이 흐르면 그 모습으로 변해 있겠지만요. ^^

이렇게 기억을 되살려주는 한 장의 사진은 뒤를 돌아보게 합니다. 살아가면서 다음 단계로 도약할 때 그리고 시간이 지나 기억이 희미해질 때 마다 그것을 되살려 주는 일기장과 같은 것 입니다.

그래서 일까요? 학창 시절에는 일기장을 보는 기분으로 새학년으로 진학때 마다 앨범을 들추며, 기억을 더듬어 보기도 했습니다. 열심히 한장 한장 들추다 보면 스스로의 인생 영화를 보고 난 듯한 느낌이 듭니다.^^ 남들에겐 재미없고, 자신에겐 재미 있는 자신만의 영화 말이지요. ^^

시간 속의 빛바랜 사진은 때론 자신을 꾸짖고, 칭찬하며 그 동안 잊고 지냈던 초심 그리고 어떤 기억을 다시 떠오리게 하면서 끊임없는 감성적 자극을 줍니다. 더도말고 덜도말고 말입니다.

조금 다른 이야기 이긴 하지만 별을 볼 때도 같은 기분이 듭니다. 어제 본 별이나 작년에 본 별이나 10년전에 본 별이나 늘 같습니다. 내가 태어나기 훨씬 이전에도 '어떤 누군가는 나와 같은 별을 보면서 스스로를 돌아보고 잊지 않았을까?' 하는 생각에 어딘가에 있을 동지(?)를 생각하며 동질감을 느끼기도 합니다.

밤하늘 사진속에는 시간과 장소, 그리고 밤하늘의 별과 개인적 느낌 같은 것을 담을 수 있습니다.
나중에 시간이 되면 어머니를 모시고 밤하늘을 배경삼아 멋지고 아름다운 사진을 한 장 찍어드리고 싶습니다.
초등학교 입학식 때 내게 사진을 찍어주셨던 것 처럼요. ^^

여러분들도 시간 나실 때 먼지 쌓인 사진첩을 꺼내들고 한장한장 앨범을 넘겨 보시면 어떨까요?


저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

오늘 하늘이 좋아서 KAAS 경기지부 김재진 선생님과 함께 강화도 황산벌에 갔다왔습니다. 

저녁 9시에 도착해서 밤 11시 30분까지 맑은 하늘을 카메라에 담았습니다. 

일주사진 까지 촬영할 생각이었는데 이후로는 구름이 몰려와서 어쩔수 없이 철수해야 했습니다.

OrionWithTree.jpg

 (오리온자리)

Model: Canon EOS 500D
LensSpec: Canon EF-S 18-55mm f/3.5-5.6 IS
CreateDate: 2010:01:23 22:26
ExposureTime: 10"
Aperture: F5.6
ExposureProgram: M
ISO: 1600
WhiteBalance: Auto

시리우스와개자리.jpg

(시리우스와 개자리) 

 Model: Canon EOS 500D
LensSpec: Canon EF-S 18-55mm f/3.5-5.6 IS
CreateDate: 2010:01:23 22:04
ExposureTime: 5"
Aperture: F4.0
ExposureProgram: M
ISO: 400
WhiteBalance: Auto 

오리온자리.jpg

(오리온자리) 

 Model: Canon EOS 500D
LensSpec: Canon EF-S 18-55mm f/3.5-5.6 IS
CreateDate: 2010:01:23 21:54
ExposureTime: 13"
Aperture: F5.0
ExposureProgram: M
ISO: 1600
WhiteBalance: Auto

 

화성.jpg

(화성) 

 Model: Canon EOS 500D
LensSpec: Canon EF-S 18-55mm f/3.5-5.6 IS
CreateDate: 2010:01:23 22:10
ExposureTime: 10"
Aperture: F4.0
ExposureProgram: M
ISO: 400
WhiteBalance: Auto

 

황소자리와플레이아데스.jpg

(황소자리와 플레이아데스) 

 Model: Canon EOS 500D
LensSpec: Canon EF-S 18-55mm f/3.5-5.6 IS
CreateDate: 2010:01:23 22:14
ExposureTime: 10"
Aperture: F4.5
ExposureProgram: M
ISO: 1600
WhiteBalance: Auto  

황소자리와플레이아데스그리고달.jpg

 (황소자리와 플레이아데스 그리고 달)

 Model: Canon EOS 500D
LensSpec: Canon EF-S 18-55mm f/3.5-5.6 IS
CreateDate: 2010:01:23 22:00
ExposureTime: 10"
Aperture: F4.0
ExposureProgram: M
ISO: 400
WhiteBalance: Auto

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

아래의 내용은 여러 MVP님들께서 작성한 SBS 문서 입니다.
컴퓨터 초급자를 대상으로 하는 문서입니다.

도움이 되었으면 합니다.

Step by Step: Windows Vista에서 Office 2007 설치하기
(http://support.microsoft.com/kb/974101/ko)

Step by Step: 절전 모드 상태로부터 돌아올 때 암호를 입력해 로그온 하는 방법
(http://support.microsoft.com/kb/974096/ko)

Step by Step: Windows Vista에서 하드디스크 파티션 확장하는 방법
(http://support.microsoft.com/kb/976079/ko)

Step by Step: Word 2007, Excel 2007, PowerPoint 2007 문서에 암호를 설정하는 방법
(http://support.microsoft.com/kb/975060/ko)

Step by Step: Windows Vista에서 사용자 계정 이름을 변경하는 방법
(http://support.microsoft.com/kb/974872/ko)

Step by Step: Outlook 2007에서 받은 메일 색깔 지정하는 방법
(http://support.microsoft.com/kb/976084/ko)

Step by Step: Outlook 2007의 편집기 옵션을 통한 단락 기호 제거 방법
(http://support.microsoft.com/kb/975064/ko)

Step by Step: Windows Vista에서 사용자 계정을 제거하는 방법
(http://support.microsoft.com/kb/974906/ko)

Step by Step: 바탕 화면에 Excel 2003, 2007 바로 가기 아이콘 만드는 방법
(http://support.microsoft.com/kb/975065/ko)

Step by Step: Excel 2007에서 기본 글꼴 변경하는 방법
(http://support.microsoft.com/kb/976081/ko)

Step by Step: 파워포인트 여백 없이 인쇄하는 방법
(http://support.microsoft.com/kb/977054/ko)

Step by Step: 시작 메뉴의 인터넷이나 전자 메일 프로그램 목록을 변경하는 방법
(http://support.microsoft.com/kb/976083/ko)

Step by Step: Windows Vista에서 사용자 계정을 추가하는 방법
(http://support.microsoft.com/kb/975056/ko)

Step by Step: IE8의 새로운 기능 - 달라진 페이지 내 검색
(http://support.microsoft.com/kb/975514/ko)

Step by Step: PowerPoint 2007에서 문자, 줄 간격 조정하는 방법
(http://support.microsoft.com/kb/977048/ko)

Step by Step: CSV 연락처 파일을 Outlook으로 가져오는 방법
(http://support.microsoft.com/kb/977050/ko)

Step by Step: Outlook 2007에서 일정 공유 방법
(http://support.microsoft.com/kb/977049/ko)

Step by Step: Word 2007에서 페이지 번호 삽입 방법
(http://support.microsoft.com/kb/977047/ko)

Step by Step: Windows 7 설치 전 내 컴퓨터 호환성 검사
(http://support.microsoft.com/kb/977869/ko)

Step by Step: PowerPoint 2007에서 자동 그림 압축 해제하기
(http://support.microsoft.com/kb/977055/ko)

Step by Step: Outlook 2007에서 규칙 적용을 통한 특정 폴더로 메일 이동하는 방법
(http://support.microsoft.com/kb/977052/ko)

Step by Step: Windows 7에서 Windows Anytime Upgrade 사용하기
(http://support.microsoft.com/kb/977781/ko)

Step by Step: Outlook 2007에서 검색 시 결과가 제대로 표시되지 않는다.
(http://support.microsoft.com/kb/977053/ko)

Step by Step: Windows 7 전체 설치하기
(http://support.microsoft.com/kb/978006/ko)

Step by Step: Windows 7 디스크 이미지 버너(Disc Image Burner) 사용 방법
(http://support.microsoft.com/kb/978069/ko)

Step by Step: Windows 7 시스템 이미지 만들기
(http://support.microsoft.com/kb/977053/ko)

Step by Step: Windows7에서 Aero 기능 활성화
(http://support.microsoft.com/kb/977954/ko)

Step by Step: Windows 7에서 사용자 계정 만들기
(http://support.microsoft.com/kb/977951/ko)
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

소스 : http://www.sergemeunier.com/blog/astronomical-calculations-in-c-calculating-the-angular-diameter-of-a-planet/

 

행성의 각편향을 구하는 것은 매우 쉽습니다. 각편향을 구할 때 행성까지의 거리를 알아야 하는데 수 많은 행성까지의 거리를 모두 알수는 없습니다. 그렇기 때문에 각편향을 구할 땐 1AU 정도의 각편향만 있으면 됩니다.

 

Arcmin-sec.jpg

(이미지 출처 : http://lcogt.net)

 

이것을 구하는 공식은 다음과 같습니다.

각편향 = 1AU에 대한 각편향 / 직경

 

이것을 함수로 만들어보면 아래와 같은 형태가 됩니다.

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConvertCoordinates
{
    //각편향 계산하기
    public class CalculatingAngularDiameter
    {
        public static double CalcPlanetDiam(double fDistance, double fAngDiam1AU)
        {
            return ( fAngDiam1AU / fDistance );
        }
    }
}

 

[용어정리]

1. angular diameter: 각편향

2. distance : 직경

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

천문 활동 한지가 올해는 횟수로 3년째 됩니다.
활동을 열심히 한다고 했는데 아직 아는게 별로 없다보니 머리탓을 하면서 세월을 보냈습니다.

모르면 재미가 없고, 알면 재미가 있는 세상의 일들...
하늘을 보는 절대적인 시간이 부족하다보니 배움의 속도는 더디고, 속도가 더딜수록 마음은 급해져 가는 요즘 이래서는 안되겠다는 생각이 들었습니다.

그래서 나름 계획을 세웠습니다.

1. 밤하늘의 별자리를 모두 머리에 넣자.
2. 그것을 사진으로 찍어 기록으로 남기자. (기록으로 남기면 기억나지 않을 때 다시 찾아볼 수 있습니다.)
3. 밤하늘의 별자리가 모두 보이면 천체 망원경을 사자.
4. 사진 속 별자리의 대상 하나하나를 추적해서 기록으로 남기자.


계획 자체는 간단하지만 저걸 다 할려면 꽤나 오랜 시간이 걸릴 것 같습니다. ^^;;
주중에는 100% 못할 것이고(출근해야 하니깐요.) 주말에 해야 하는데 주말 날씨가 좋아야 하고 또 주말에 다른 일이 없어야 하기 때문에 과연 일년에 몇 번의 기회를 만들 수 있을까 하는 생각도 들긴 합니다.

그래도 기왕 시작한 거 끝은 봐야 하겠죠?
그래서 냉큼 카메라를 질렀습니다.

비싼 장비를 사고픈 욕심은 끝도 없지만 총알이 허락하지 않기에 적당한 선에서 카메라를 구입했습니다.
캐논 500D + 번들랜즈 + 맨프로토 삼각대.

이것만으로도 전 다음달 쫄쫄 굶어야 하는 상황이 되버렸습니다. ^^;;
열심히 매뉴얼을 들여다보고 셔터를 일일이 눌러보며 카메라 특성을 파악하기를 1주일....

어제 퇴근 후 밤 하늘을 보니 서울 하늘에서도 별자리가 선명하게 보이더군요.
그래서 삼각대에 카메라를 올려서 오리온 자리를 찍어봤습니다.


사진정보 (주영님이 알려주심)

Model: Canon EOS 500D
LensSpec: Canon EF-S 18-55mm f/3.5-5.6 IS
CreateDate: 2010:01:13 21:25:27
ExposureTime: 30"
Aperture: F8.0
ExposureProgram: Aperture-priority AE
ISO: 100
WhiteBalance: Auto
FocalLength: 20.0 mm
FocalLength35efl: 20.0 mm (35 mm equivalent: 31.8 mm)
Sharpness: 3



오리온 자리가 선명하게 보이시죠?
제 첫 작품입니다. ^^

F수 8.0 에 ISO 200 그리고 노출시간은 30초 입니다.

이 사진을 보고 나서 너무 기뻤습니다.
목표를 하나씩 점령해 나가기 위해 이제 첫 발을 잘 내딛은 기분이 들어서죠.^^

구름 때문에 대기 중 부유물질 때문에 보이지 않던 오리온 자리가 여전히 그 자리에 그대로 있었다는 사실이 늘 반갑습니다.

그래서 밤 하늘을 보는가 봅니다. ^^

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

작 성 자 : 박종현
작 성 일 : 2010년 01월 12일
원    문 :
http://www.sergemeunier.com

천문에 대한 계산을 수행할 때 중요한 부분(Vital part) 중의 하나인 서로 다른 좌표 시스템간의 변환에 대해 알아보겠습니다.

각각 다른 좌표 시스템은 어느 지역에서 어떻게 사용하느냐에 따라 장단점을 가질 수 있습니다. 천문학에서 사용하는 메인 좌표 시스템들은 적도, 수평, 황도, 은하 좌표 시스템입니다.

천문학에서 가장 중요한 좌표는 적도 좌표계 인데 이는 각각의 다른 장소에서 서로 다른 좌표를 변환할 때 이 적도좌표로의 변환을 기본으로 하기 때문입니다. 여기에서 적도와 황도 좌표 사이의 변환을 한번 핸들링 해보겠습니다.

적도 좌표 시스템은 지구상의 경위도 좌표(geographic coordinates)를 투영합니다. 이것이 무슨 뜻이냐면 지구 적도위의 천구의 적도와 지구의 북극 위인 천구의 북극과 함께 지구상의 경도와 위도가 가상의 천구에 투영된다는 것 입니다.

즉 하나의 구를 지구처럼 경도위도로 분리한 것입니다.

경도(Longitude)는 적경(right ascension)으로 잘 알려져 있고 시간으로 측정하는데, 춘분점(Vernal Equinox, 3월 21일)에 태양이 어떤 포인트에 있는데 양자리의 첫 포인트(First Point of Aries)를 0 포인트로 해서 시작됩니다. 이 값은 세차운동 때문에 변경됩니다. 세차운동은 여기서 다루지는 않겠습니다.

위도(Latitude)는 적위(δ로 표시)로 잘 알려져 있습니다. 천구의 적도로부터 떨어져 있는 물체를 각을 제어 측정하는데 지구의 위도처럼 북극점에서 90도로 시작됩니다.

수평좌표(horizontal coordinates)는 알타지머스(alt-azimuth) 좌표로 잘 알려져 있습니다. 여기 하늘에서의 좌표는 각으로 표현 되는데 고도와 방위로 구별 됩니다. 90도 각도를 가지는 수직선과 0~360도의 범위내에서 북극과 객체를 직접적으로 연결한 방위로 표현됩니다.

우리는 2개의 좌표 시스템간 변환을 할 수 있어야 합니다. 그러기 위해선 적경에서 시간에 해당하는 각을 찾을 필요가 있습니다. 적경은 천구에서 별의 위치를 기초로 하는데 반해 시간에 해당되는 각은 지구의 경도와 적경의 값을 기초로 변환되어야 합니다.

이 지역 항성시간(Local Sidereal Time)을 계산하는데 UT(Universal Time)와 관측자 위치의 경도 그리고 한 시간에 해당하는 각을 얻은 후 적경을 빼면 됩니다.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConvertCoordinates
{
    public class ConvertCoordinates
    {
        // 특정시간의 시간각과 위도를 적경으로 변환
        public static double ConvRAToHA(double fRA, DateTime dUT, double fLong)
        {
            double fLST;
            double fHA;

            fLST = UraniaTime.ConvTimeToDec(UraniaTime.CalcLSTFromUT(dUT, fLong));

            fHA = fLST - fRA;
            fHA = Trig.PutIn24Hour(fHA);

            return fHA;
        }

        public static double ConHAToRA(double fHA, DateTime dUT, double fLong)
        {
           // 특정시간의 적경과 적위를 시간각으로 변환
            double fLST;
            double fRA;

            fLST = UraniaTime.ConvTimeToDec(UraniaTime.CalcLSTFromUT(dUT, fLong));

            fRA = fLST - fHA;
            fRA = Trig.PutIn24Hour(fRA);

            return fRA;
        }
    }
}

변환에 삼각법이 필요하지만 지나치게 복잡하지는 않습니다.
우리는 수평좌표를 찾기 위해 적위, 위도, 시간각(이전 함수를 사용하여 계산되어진)을 알아야할 필요가 있습니다.
수평좌표에서 적도 좌표를 찾는 것은 이전 절차의 반대로 계산하면 됩니다. 일단 우리는 적위와 시간각을 가지고, 이전 섹션을 통해 적경에서 시간각으로 변환을 할 수 있습니다.

  public static void ConvEquToHor(double fLatitude, double fHA, double fDecl, ref double fAlt, ref double fAzim)
  {
      double fSinAlt;
      double fCosAzim;

      fHA = Trig.DegToRad(fHA * 15);
      fDecl = Trig.DegToRad(fDecl);
      fLatitude = Trig.DegToRad(fLatitude);
      fSinAlt = (Math.Sin(fDecl) * Math.Sin(fLatitude)) + (Math.Cos(fDecl) * Math.Cos(fLatitude) * Math.Cos(fHA));
      fAlt = Math.Asin(fSinAlt);
      fCosAzim = ((Math.Sin(fDecl) - (Math.Sin(fLatitude) * Math.Sin(fAlt))) / (Math.Cos(fLatitude) * Math.Cos(fAlt)));
      fAzim = Trig.RadToDeg(Math.Acos(fCosAzim));
      if (Math.Sin(fHA) > 0)
      {
          fAzim = 360 - fAzim;
      }
      fAlt = Trig.RadToDeg(fAlt);
  }

  public static void ConvHorToEqu(double fLatitude, double fAlt, double fAzim, ref double fHA, ref double fDecl)
  {
      double fSinDecl;
      double fCosH;

      fAlt = Trig.DegToRad(fAlt);
      fAzim = Trig.DegToRad(fAzim);
      fLatitude = Trig.DegToRad(fLatitude);
      fSinDecl = (Math.Sin(fAlt) * Math.Sin(fLatitude)) + (Math.Cos(fAlt) * Math.Cos(fLatitude) * Math.Cos(fAzim));
      fDecl = Math.Asin(fSinDecl);
      fCosH = ((Math.Sin(fAlt) - (Math.Sin(fLatitude) * Math.Sin(fDecl))) / (Math.Cos(fLatitude) * Math.Cos(fDecl)));
      fHA = Trig.RadToDeg(Math.Acos(fCosH));
      if (Math.Sin(fAzim) > 0)
      {
          fHA = 360 - fHA;
      }

      fDecl = Trig.RadToDeg(fDecl);
      fHA = fHA / 15.0;
  }

[용어정리]
alt-azimuth : 별의 고도(Altitude), 별의 방위(Azimuth)
geographic coordinates : 경위도 좌표
Longitude : 경도
Latitude : 위도
horizontal coordinates : 수평좌표
right ascension : 적경
Vernal Equinox : 춘분점
Local Sidereal Time : 지역항성시
Universal Time : UT

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

2010년 01월 09일에 한국아마추어천문학회 전국 지부장 및 이사회 회의가 있었습니다.
전 이번에 한국아마추어천문학회 정보국장으로 임명되어 회의에 참석하게 되었습니다.

회의 끝나고 꿈돌이동산에서 천문연구원장님, 학회장님 그리고 몇 분의 이사진과 지부장님과 함께 기념 사진을 촬영했습니다. 가운데 목도리 하신 분이 천문연구원장님 이시고, 왼쪽에 계신 분이 학회장(꿈돌이동산 대표이사)님 이십니다. 그리고 저는 가장 왼쪽에 있습니다. 입니다.^^


2010년은 2009년의 세계천문의 해를 기념 계승하여, 별나라 우리나라 캠페인이 열립니다.
과거 역사에서 하늘을 지배하는 나라가 강대국 이었습니다.
오늘날 강대국들은 과거와 마찬가지로 하늘을 지배하기 위해 많은 투자와 노력을 합니다.
전문가는 전문가로써, 아마추어는 아마추어로써 우리나라가 하늘을 지배하는데 많은 노력을 하고 있습니다.
하늘을 사랑하는 자손으로써 후대에 강한 대한민국을 남겨주는데 약간이나마 도움이 된다면 매우 기쁠 것 같습니다.^^
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-
 

데이터베이스 레코드 목록 보기

Home 컨트롤러의 Index() 메서드는 ASP.NET MVC 애플리케이션을 위한 기본 메서드 입니다. ASP.NET MVC 애플리케이션을 실행할 때 Index() 메서드가 호출하는 첫 컨트롤러 메서드 입니다.

        public ActionResult Index()
        {
            return View();
        }


HomeController Listring 2에서 보는 것 처럼 _db라는 이름을 가지는 새로운 Private field를 가지는 코드로 수정하였습니다.

MoviesDBEntities 클래스는 데이터베이스 모델을 표현하고 통신하기 위한 클래스로 사용되기 때문에 Index() 역시 수정하였습다. Index() 메서드는 Movies 데이터베이스 테이블의 모든 movie 기록들을 가져오고 그러기 위해 MoviesDBEntities 클래스를 사용합니다. _db.MovieSet.ToList()는 Movies 데이터베이스 테이블의 movie 기록 모두를 반환하도록 합니다.


이러한 Movies
의 목록은 view를 통해서 보여줍니다. 따라서 그것이 무엇이든간에 View()는 어떤 view data라도 보여줄 수 있는 기능을 제공합니다.

[Listring 2]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Mvc.Ajax;
using MoveApp.Models;

namespace MoveApp.Controllers
{
    public class HomeController : Controller
    {
        private MoviesDBEntities _db = new Models.MoviesDBEntities();
        public ActionResult Index()
        {
            return View(_db.MovieSet.ToList());
        }

}

 

Index() 메서드는 Index라는 이름의 view를 반환합니다. 우리는 movie 데이터베이스 레코드 리스트를 보여주기 위해 view를 생성할 필요가 있습니다.

그것의 절차는 다음과 같습니다.


 

Add New 다이얼로그가 오픈되기 전이나 View data class 드롭다운 리스트 내에 클래스가 나타나지 않을 때 메뉴 옵션의 Build, Build Solution을 선택해서 프로젝트를 빌드해야만 합니다.


1.    
코드 편집기에서 Index() 메서드를 우클릭하고 메뉴 옵션에서 Add View를 선택합니다.
2.     Add View 다이얼로그에서 Create a strongly-typed view를 체크합니다.
3.     View Content 드롭다운 리스트에서 List의 값을 선택합니다.
4.     View data class 드롭다운 리스트에서 MovieApp.Models.Movie를 선택합니다.


                                  (
그림 9: 컨트롤러 action에 하나의 뷰를 추가하기)



Index view
HTML 테이블 내에 Movies 데이터베이스 테이블의 모든 movie 기록을 보여줍니다. view ViewData.Model 프로퍼티에 의해 각각의 movie를 표현하는 이터레이터와 foreach 루프를 포함하고 있습니다F5키를 눌러서 애플리케이션을 실행하고 렌더링 된 화면을 확인합니다.

새로운 데이터베이스 레코드 생성하기

Index는 이전 섹션에서 새로운 데이터베이스 레코드 생성을 위해 링크를 포함하여 뷰를 생성하는 것을 보여주었습니다. 새로운 데이터베이스 레코드 생성을 위해선 로직을 먼저 만들고 즉시 뷰를 생성해야 합니다.

Home 컨트롤러는 Create()라는 2개의 메서드를 포함하고 있습니다.


첫번째 Create() 메서드는 파라미터를 가지고 있지 않다. Create() 메서드의 오버로드는 새롭게 생성된 movie 데이터베이스 레코드를 HTML 폼에서 보여주기 위해 사용됩니다.

두번째 Create() 메서드는 FormCollection 파라미터를 가지고 있습니다. Create() 메서드 오버로드는 서버에 포스트된 새로운 movie를 생성하고 HTML이 조직화 될 때 호출됩니다. 두번째 Create() 메서드의 주의할 점은 HTTP POST 조작 이행을 제외한 그 이전에 호출되는 메서드인 AcceptsVerbs 애트리뷰트를 가진다는 것 입니다. 이 두번째 Create() 메서드는 Listing 4에서 보는 것 처럼 HomeController 클래스가 수정되어 있습니다. Create() 메서드의 새버전은 Movie 데이터베이스 테이블에 새로운 movie를 포함하는 로직을 포함하고 Movie 파라미터를 받아들입니다.

 Bind 애트리뷰트를 주의하라. 왜냐하면 우리는 HTML 폼에서 Movie ID 프로퍼티를 업데이트 하지 않기를 원한다. 이 프로퍼티는 매우 필요하기 때문이다

 

Listing 4 – Controllers\HomeControllers.cs(modified Create method)

//
// GET: /Home/Create 
public ActionResult Create()
{

       return View();

}

//
// POST: /Home/Create 
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create([Bind(Exclude="Id")] Movie movieToCreate)
{
       if (!ModelState.IsValid)
          return View();
      _db.AddToMovieSet(movieToCreate);
      _db.SaveChanges();
     return RedirectToAction("Index");

}

Visual Studio는 하나의 새로운 movie 데이터베이스 레코드(그림 12를 보라.)를 생성하는 폼으로 쉽게 만들 수 있습니다. 다음의 절차를 따라하세요.

1.     코드 편집기에서 Create() 메서드를 우클릭하고 메뉴 옵션에서 Add View를 선택한다.
2.     Create a strongly-typed view를 체크한다.
3.     View content 드롭다운 리스트에서 값으로 create를 선택한다.
4.     View data class 드롭다운 리스트에서 MovieApp.Models.Movie를 선택한다.
5.     Add 버튼을 클릭해서 새로운 뷰를 생성한다.



(그림 12: Create 뷰 추가하기)


 <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<MoveApp.Models.Movie>" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
 Create
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

    <h2>Create</h2>

    <%= Html.ValidationSummary("Create was unsuccessful. Please correct the errors and try again.") %>

    <% using (Html.BeginForm()) {%>

        <fieldset>
            <legend>Fields</legend>
            <p>
                <label for="Id">Id:</label>
                <%= Html.TextBox("Id") %>
                <%= Html.ValidationMessage("Id", "*") %>
            </p>
            <p>
                <label for="Title">Title:</label>
                <%= Html.TextBox("Title") %>
                <%= Html.ValidationMessage("Title", "*") %>
            </p>
            <p>
                <label for="Director">Director:</label>
                <%= Html.TextBox("Director") %>
                <%= Html.ValidationMessage("Director", "*") %>
            </p>
            <p>
                <label for="DataReleased">DataReleased:</label>
                <%= Html.TextBox("DataReleased") %>
                <%= Html.ValidationMessage("DataReleased", "*") %>
            </p>
            <p>
                <input type="submit" value="Create" />
            </p>
        </fieldset>

    <% } %>

    <div>
        <%=Html.ActionLink("Back to List", "Index") %>
    </div>

</asp:Content>

 


HTML 폼에 Id 폼 필드가 Add View 다이얼로그에 의해 추가된다. 왜냐하면 Id 컬럼은 독립적인 컬럼입니다. 여기서 이 폼 필드는 필요가 없으므로 안전하게 삭제할 수 있습니다.

Create 뷰가 추가된 후에 데이터베이스에 새로운 Movie 레코드를 추가할 수 있습니다. F5키를 이용해서 애플리케이션을 실행하면 그림 13의 폼에서 보이는 것처럼 새로운 링크가 보이고 클릭할 수 있습니다. 폼 전송이 완벽하다면 새로운 데이터베이스 레코드가 생성됩니다. 자동적으로 폼 벨리데이션을 얻을 수 있는 것에 주의하세요. 만약 movie의 릴리지 시간이나 잘못된 릴리즈 데이터를 입력하면 아래의 그림에서 보는 것처럼 하이라이트 처리된 데이터 필드를 표현할 것이다.


                       (그림 13: 새로운 movie 데이터베이스 레코드를 생성하는 것)

 

기존 데이터베이스 레코드 수정하기

앞 섹션에서 우리는 새로운 데이터베이스 레코드의 목록과 생성을 어떻게 하는지 알아 보았습니다. 마지막 섹션에서는 기존의 데이터베이스 레코드를 어떻게 수정하는지 알아 보겠습니다.

첫번째로 우리는 하나의 수정 폼을 추가할 것 입니다. 이 절차는 Visual Studio로 하면 쉽고 자동적으로 수정 폼을 추가할 수 있습니다. Visual Studio 코드 편집기 내에서 HomeController.cs.class 파일을 열고 다음의 절차를 수행하세요.

1.     코드 편집기 내의 Edit() 메서드에서 우클릭하고 메뉴 옵션에서 Add View를 선택한다.(그림 14를 볼 것.)

2.     Create a strongly-typed view를 체크해라.

3.     View content 드롭다운 리스트에서 값을 Edit 를 선택한다.

4.     View data class 드롭다운 리스트에서 MoieApp.Models.Movie 값을 선택한다.

5.     Add 버튼을 클릭하여 새로운 뷰를 생성한다.

 

Views\Home 폴더 내에 Edit.aspx라는 이름의 새로운 뷰를 추가한다. 이 뷰는 movie 레코드 수정을 위한 HTML 폼이 포함되어 있습니다.

                                          (그림 14: Edit View 추가하기)


Edit 뷰는 Movie Id 프로퍼티가 조합된 HTML 폼 필드를 포함하고 있다. Id 프로퍼티의 값을 수정해서는 안된다. 따라서 폼 필드에서 삭제해야만 한다.

마지막으로 우리는 데이터베이스 레코드 수정을 지원하기 위해 Home Controller를 수정할 필요가 있습니다. HomeController Listing 6에 포함된 클래스처럼 수정되었습니다.

 //
// GET: /Home/Edit/5

public ActionResult Edit(int id)

{

        var movieToEdit = (from m in _db.MovieSet
                           where m.Id == id
                           select m).First();

        return View(movieToEdit);

}

//
// POST: /Home/Edit/5 
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(Movie movieToEdit)
{

        var originalMovie = (from m in _db.MovieSet

                             where m.Id == movieToEdit.Id
                             select m).First();

        if (!ModelState.IsValid)
                    return View(originalMovie);

            _db.ApplyPropertyChanges(originalMovie.EntityKey.EntitySetName, movieToEdit);
            _db.SaveChanges(); 

        return RedirectToAction("Index");

}

Listing 6에서 로직 양쪽에 Edit() 메서드 오버라이드를 추가 했습니다. 첫번째 Edit() 메서드는 Id 파라미터를 전달받은 메서드에 의해 movie 데이터베이스 레코드를 반환합니다. 두번째 오버로드는 movie 레코드 업데이트에 영향을 끼칩니다. 기존의 movie를 업데이트 하기 위해 ApplyPropertyChanges()를 호출하고 나서 원본 movie를 찾아와야 합니다.

 

Summary

이 튜터리얼의 목적은 ASP.NET MVC 애플리케이션 제작을 위한 경험을 주는 겁니다. 이 경험을 통해 ASP or ASP.NET 애플리케이션 제작 경험을 가진 사람이 ASP.NET MVC 애플리케이션을 제작하는 것이 매우 간단한 일임을 발견했기를 희망합니다. 이 튜터리얼에서 우리는 ASP.NET MVC 프레임워크의 대부분의 기본적인 특징을 조사했습니다. 이후의 튜터리얼에서는 컨트롤러 액션, , 뷰 데이터, 그리고 HTML 헬퍼와 같은 토픽을 다뤄볼 것입니다.

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

모델 생성하기
데이터베이스 모델을 생성하고 표현하기 위해 클래스 집합이 필요합니다. 마이크로소프트 엔티티 프레임워크의 이점은 데이터베이스 모델을 자동으로 생성해주는 클래스들을 가지고 있습니다.


ASP.NET MVC 프레임워크는 마이크로소프트 엔티티 프레임워크를 지원하지 않습니다. LINQ, Subsonic 그리고 NHibernate가 포함된 Object Relational Mapping(OR/M)를 활용하면 데이터베이스 모델 클래스들을 생성할 수 있습니다.



Entity Data Model Wizard
를 시작하기 위해 다음의 절차를 따릅니다.

1.      솔루션 탐색기내의 모델 폴더를 우클릭하고 메뉴 옵션에서 Add, New Item을 선택합니다.

2.      Data 카테고리를 선택하고 ADO.NET Entity Data Model 템플릿을 선택합니다.



3.      MovieDBModel.edmx라는 이름의 데이터 모델을 당신에 주고 Add 버튼을 클릭합니다.

Add 버튼을 클릭한 후에 Entity Data Model Wizard가 그림 6처럼 나타난다. Wizard를 완벽하게 사용하기 위해서 다음 스텝으로 진행합니다. 

Choose Model Contents 스텝에서 Generate from database 옵션을 선택합니다.
Choose Your Data Connection 스텝에서 MovieDB.mdf 데이터 연결을 사용합니다.
그리고 연결을 설정할 때 MoviesDBEntities로 이름으로 만들고 Next 버튼을 클릭합니다.
Choose Your Database Objects 스텝에서 테이블 노드를 확장하고 Movies 테이블을 선택합니다.
MovieApp.Models
라는 네임스페이스를 입력하고 Finish 버튼을 클릭한다.


 


Entity Data Model Wizard 완료한 후에 Entity Data Model 디자이너를 오픈하면 해당 디자이너는 그림 7과 같은 Movies 데이터베이스 테이블을 보여줍니다.


(그림 07: Entity Data Model Designer)

계속 작업을 이어가기 위해선 그 전에 한 가지를 변경해야 합니다. Entity Data Wizard Movies 데이터베이스 테이블을 표현하기 위해 Movies라는 이름의 모델 클래스를 추가해야 합니다. 왜냐하면 우리는 개별적인 movie를 표현하하는데 Movies 클래스 라는 것을 사용할 것이 때문입니다. 따라서 우리는 Movies대신에 movie 클래스 라는 이름으로 수정할 필요가 있습니다.

 

디자이너에서 클래스 이름을 더블-클릭하고 Movies라는 이름을 Movie로 이름을 변경합니다. 변경한 후에 Movie 클래스 추가를 위해 Save 버튼을 클릭합니다.

ASP.NET MVC 컨트롤러 생성하기

다음은 ASP.NET MVC 컨트롤러를 생성하는 절차입니다. 하나의 컨트롤러는 ASP.NET 애플리케이션과 사용자 사이에서 어떻게 인터렉션하며 하는가를 알아보겠습니다.

우선 다음의 절차를 따릅니다.

1.     솔루션 탐색기에서 컨트롤러 폴더를 오른쪽 클릭하고 메뉴옵션에서 Add, Controller를 선택합니다.

2.     Add Controller 다이얼로그에 HomeController라고 입력하고 Add action methods for Create, Update, and Details scenarios를 체크합니다.

3.     프로젝트에 새로운 컨트롤러를 추가하기 위해 Add를 클릭한다.


 
(그림 08: 새로운 ASP.NET MVC 컨트롤러를 추가)


아래는 자동으로 생성된 HomeController.cs의 코드 입니다.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Mvc.Ajax;

namespace MoveApp.Controllers
{
    public class HomeController : Controller
    {
        //
        // GET: /Home/

        public ActionResult Index()
        {
            return View();
        }

        //
        // GET: /Home/Details/5
        public ActionResult Details(int id)
        {
            return View();
        }

        //
        // GET: /Home/Create

        public ActionResult Create()
        {
            return View();
        }

        //
        // POST: /Home/Create
        [AcceptVerbs(HttpVerbs.Post)]
        public ActionResult Create(FormCollection collection)
        {
            try
            {
                // TODO: Add insert logic here

                return RedirectToAction("Index");
            }
            catch
            {
                return View();
            }
        }

        //
        // GET: /Home/Edit/5
        public ActionResult Edit(int id)
        {
            return View();
        }

        //
        // POST: /Home/Edit/5

        [AcceptVerbs(HttpVerbs.Post)]
        public ActionResult Edit(int id, FormCollection collection)
        {
            try
            {
                // TODO: Add update logic here 
                return RedirectToAction("Index");
            }
            catch
            {
                return View();
            }
        }
    }
}


다음에 이어서...
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

데이터베이스 생성하기

Movie 데이터베이스 레코드를 위해 하나의 데이터베이스르 생성해야할 필요가 있다.

운좋게도 Visual Studio SQL Server Express라는 이름을 가진 프리 데이터베이스를 포함하고

있다. 다음의 절차에 따라 데이터베이스를 생성한다.

1.      솔루션 탐색기 윈도우내의 App_Data 폴더를 우클릭하고 Add, New Item을 선택한다.

2.      Data 카테고리를 선택하고 SQL Server Database 템플릿을 선택한다.(그림 3 참조)

3.      새로운 데이터베이스의 이름을 MoviesDB.mdf라 하고 Add 버튼을 클릭한다.

 

데이터베이스를 생성한 후에 App_Data 폴더안에 위치한 MoviesDB.mdf를 더블 클릭해서 데이터베이스에 연결한다. MovieDB.mdf를 더블클릭하면 Server Explorer Window가 열린다.

Server Explorer window Visual Web Developer에서는 Database Explorer 이라는 이름을 가진다.

(그림 3: Microsoft SQL Server Database 생성하기)


다음으로 새로운 데이터베이스 테이블을 생성한다. Server Explorer window안에서 테이블 폴더를

우클릭하고 메뉴 옵션 Add New Table을 선택한다. 이 메뉴 옵션을 선택하면 데이터베이스 테이

블 디자이너를 오픈한다.

데이터베이스 컬럼들을 다음에 따라 생성한다.

컬럼명

데이터 타입

널 허용여부

Id

Int

False

Title

Nvarchar(100)

False

Director

Nvarchar(100)

False

DataReleased

DateTime

False

 

첫 컬럼, Id컬럼은 2개의 특별한 프로퍼티를 가진다. 첫째로, Id컬럼은 Primary Key컬럼으로 마킹 되어야 한다. Id 컬럼을 선택하고 Set Primary Key 버튼을 클릭한다. 두번째로 Id컬럼의 프로퍼티인 Identity Yes로 선택한다.

컬럼 프로퍼티 윈도우내에서 Identity Specification 영역을 스크롤 다운한다.

Is Identity 프로퍼티의 값을 Yes로 변경한다. 모두 완료되면 그림 4처럼 보일 것이다.


(그림 04: Movies 데이터베이스 테이블)

마지막 작업으로 새로운 테이블을 저장한다. 이 테이블의 이름을 주고, Save를 클릭한다.

테이블이 생성된 후에 테이블에 movie 레코드를 추가한다. Server Explorer window내의 movie 테이블을 우클릭하고 메뉴 옵션에서 Show Table Data를 선택한다. 아래가 해당 그림이다.


(그림 05: movie 레코드들)

다음에 이어서....
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

날씨가 많이 추워졌습니다. 신종플루 뿐만이 아니라 구종(?)플루도 조심하세요~
아프면 몸도 마음도 괴롭습니다.^^

오랜만에 글을 써봅니다. 지금 올리는 글은 오래전에 번역해둔 글인데 이제서야 올리게 되었네요.
중간중간 번역이 이상할 수도 있고, 원문 번역이 잘 안되는 경우엔 그냥 의역 했음을 밝힙니다.
원문 출처는 다음과 같습니다.




원문 : http://www.asp.net/learn/mvc/tutorial-21-cs.aspx

 이 튜터리얼은 ASP.NET MVC 애플리케이션이 ‘과연 어떤 점이 좋은가?’에 대한 감을 여러분들에게 느끼게 하는게 목적입니다. 그러한 감을 이 튜토리얼을 통해 시작부터 끝까지 ASP.NET MVC 애플리케이션을 제작해 나가는 전체 작업 과정을 통해 발산하고자 합니다. 나는 이 튜토리얼에서 리스트 조회, 생성 그리고 수정 같은 것들을 어떻게 데이터베이스에 기록하는지 일러스트레이터로 설명하고 간단한 데이터베이스-드리븐 애플리케이션을 빌드하는지 보여주고자 합니다.

 

우리는 애플리케이션 빌딩 프로세스를 간편하게 하기 위해 Visual Studio 2008(여기서 저는 Visual Studio 2010 베타 버전을 사용했습니다.) 을 이용할 것입니다. 이러한 Visual Studio에 컨트롤러, 모델들 그리고 뷰를 위한 코드와 컨텐츠를 추가할 것입니다.

 

만약에 당신이 ASP ASP.NET으로 작업한다면 ASP.NET MVC very familiar를 찾아야만 합니다. ASP.NET MVC 뷰어는 ASP 애플리케이션 같은 페이지 입니다. 그리고 전통적인 ASP.NET 웹 폼 애플리케이션처럼 ASP.NET MVC는 닷넷프레임워크가 제공하는 풍부한 언어와 클래스들을 이용해서 접근할 수 있다.

 

이 튜토리얼을 통해 내가 희망하는 부분은 ASP.NET MVC 애플리케이션 제작이 ASP ASP.NET Web Form 애플리케이션 제작경험과 비교하여 얼마나 다른지 보여주고자 합니다.

 

Overview of the Movie Database Application

간단한 목표를 달성하기 위해 심플한 Movie 데이터베이스 애플리케이션을 제작할 것 입니다. Movie 데이터베이스 애플리케이션을 만들기 위해선 먼저 기본적으로 3가지를 준비해야 합니다.

1.     Movie 데이터베이스 기록인 리스트 셋

2.     새로운 movie 데이터베이스 레코드를 생성한다.

3.     Movie 데이터베이스 레코드를 수정한다.


우리가 이렇게 간단한 애플리케이션을 만드는 이유는
ASP.NET MVC 프레임워크의 최소한의 중요한 특징을 알기 위해서 입니다. 우리는 애플리케이션을 생성하기 위해 고려해야 할 것이 있고, 그것은 다음의 절차를 완벽하게 따라하면 해결됩니다.

1.     ASP.NET MVC Web Application 프로젝트를 생성한다.

2.     데이터베이스를 생성한다.

3.     데이터베이스 모델을 생성한다.

4.     ASP.NET MVC 컨트롤러를 생성한다.

5.     ASP.NET MVC 뷰어를 생성한다.

 

Preliminaries

ASP.NET MVC application 제작을 위해 Visual Studio 2008(or Visual Studio 2010 Beta) 또는 Visual Web Developer 2008 Express 가 필요합니다. 또한 다운로드된 ASP.NET MVC Framework가 필요합니다.

만약에 Visual Studio 2008을 가지고 있지 않다면 다음의 웹 사이트에서 90일간 사용할 수 있는 Visual Studio 2008 트라이얼 버전을 얻을 수 있습니다.

 

VS2008 : http://msdn.microsoft.com/en-us/vs2008/products/cc268305.aspx
VS2010 : http://www.microsoft.com/visualstudio/ko-kr/try/default.mspx#download

 

둘중에 하나를 선택해야 겠지만 ASP.NET MVC application Visual Web Developer Express 2008을 이용해서 생성할 수도 있습니다. 만약에 Visual Studio Express를 이용해서 개발하기로 결정했다면 Service Pack 1을 인스톨 한 후 VWD를 설치해야 합니다. Visual Web Developer Express Service Pack1을 다운로드 받기 원하면 아래의 웹 사이트에서 구할 수 있습니다.

 

http://www.microsoft.com/downloads/details.aspx?FamilyId=BDB6391C-05CA-4036-9154-6DF4F6DEBD14&displaylang=en

 

ASP.NET framework ASP.NET MVC framework를 개별적으로 다운로드 하는 대신에 Web Platform Installer로 쉽게 얻을 수 있다. Web Platform Installer는 당신의 컴퓨터에서 application을 쉽게 관리할 수 있도록 활성화 시켜주는 application이다.

 

Creating an ASP.NET MVC Web Application Project

. Visual Studio 2008내의 새로운 ASP.NET MVC Web application을 생성함으로써 시작해 보도록 합시다.

 

Menu 옵션에서 File, New Project를 선택합니다.

그러면 그림1에서 처럼 새로운 프로젝트 다이얼로드 상자(Project dialog box)를 보게 될 것입니다.

프로그래밍 언어로 C# ASP.NET MVC Web Application을 선택합니다.


(그림 01: 새로운 프로젝트 다이얼로그 상자)

 

 

ASP.NET MVC Web Application 프로젝트 템플릿이 나타나지 않는다면 새로운 프로젝트 다이얼로그 상자의 상단에 있는 .NET Framework 3.5를 선택해야 한다. (참고로 VS2010 Ultimate 베타 버전에는 ASP.NET MVC2가 포함되어 있습니다.)

 

새로운 MVC Web Application 프로젝트를 생성할려고 하면 분리된 unit test 프로젝트를 생성하겠냐라는 프롬프트가 보입니다. 아래 그림 2와 같은 다이얼로그 입니다. 이 튜터리얼에서는 테스트를 생성하지 않습니다. 왜냐하면 MVC에 대한 맛을 보는게 더 중요하기 때문입니다.


우선은 NO
옵션을 선택하고 OK 버튼을 클릭합니다.

 

Visual Web Developer는 테스트 프로젝트 기능을 지원하지 않는다.


 

(그림 02: 유닛 테스트 프로젝트 다이얼로그를 생성한다.)

 


ASP.NET MVC 애플리케이션은 하나의 폴더 표준 집합을 가지고 있습니다.: 모델, , 그리고 컨트롤러 폴더 작업자는 솔루션 탐색기 윈도우내의 폴더들에서 이 폴더들의 표준집합을 볼 수 있습니다. 우리는 Movie를 빌드하기 위해 모델, , 컨트롤 폴더 각각에 파일들을 추가할 것입니다. Visual Studio로 하나의 새로운 MVC 애플리케이션을 생성하면 샘플 애플리케이션을 얻을 수 있습니다.

이렇게 생성된 애플리케이션을 이용하여 무언가를 시작하고자 한다면 이 간단한 샘플의 컨텐츠를 지워야 할 필요가 있습니다. 따라서 다음의 폴더와 파일들을 지워야 합니다.

- Controllers\HomeController.cs
- Views\Home



다음에 이어서.....

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

저는 내일 그러니깐 17일~18일 사이에 일산 어린이 천문대로 사자자리 유성우를 보러갈 계획 입니다.
사자자리는 황도 12궁 별자리 중의 하나 이며, 게자리와 처녀자리 사이에 있습니다.
사자자리에서 가장 유명한 별은 레귤루스라고 하며 밝기는 1등성 입니다.

이번 유성우는 시간당 200개에서 1000개 까지 떨어진다고 합니다. 또한 예년에 비해 훨씬 밝고요~
새벽 1시 이후 부터 유성우의 변화가 커진다고 하니 참고하시기 바랍니다.
아래는 스텔레라리움으로 찾아본 사자자리 입니다.

찾는 방법은 아래 이미지에 표시해 두었습니다.
관심 있는 분들은 졸린 눈 약간 비비고, 즐거운 추억하나 만들어 보세요.^^


저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

이번달 31일에 서울올림픽 공원에서 갈릴레오 갈릴레이 400주년 기념 행사 겸 해서 행사가 열립니다.
이번 행사에는 400 이라는 상징적인 숫자의 의미를 살리기 위해 망원경 400대가 동원되는 큰 행사 이기도 합니다.
(망원경 400대에 대한 기네스 기록 도전도 있습니다.)
이 날 행사와 겸해서 초/중/고 의 학생천체관측대회도 열립니다.
(작년에는 우주인 고산씨가 함께 하셨습니다.)

현재 많은 학교가 참여를 하기위해 신청을 하고 있습니다.
하지만 더 많은 학교가 참여해야 하기에 광고글 올려봅니다.^^
(일반인들도 행사에 참석하여 구경할 수 있습니다.~)


주제
“천체망원경 400대로 떠나는 400년 시공여행“
- 400년 전, 갈릴레이가 처음 망원경을 통해 바라본 태양과 달, 목성과 은하수를 일반 시민들이 400대의 천체망원경으로 직접 본다.


일시 : 2009년 10월 31일 (토) 14시 ~ 22시
장소 : 서울 올림픽 공원 평화의 광장
주최 : (사)한국아마추어천문학회, 서울경기인천지부
후원 : 교육과학기술부, 한국과학창의재단, 한국천문연구원
참가신청 : 서울경기인천지부 홈페이지 (http://www.seoulkaas.net)
참가신청기간 : 2009년 10월 23일 18시 까지
참가대상 및 인원 : 초/중/고 학생 동일학교 학생 4명, 지도교사 1명(한 팀), 복수의 팀 참석 가능


학생천체관측대회가 아닌 대한민국볓축제 행사에 참석하셔서 구경하실 분은 오셔서 즐거운 시간을 보낼 수 있습니다.
물론 아이들과 함께 참석하셔도 좋을 듯 하고요, 연인이 함께 오셔도 좋은 구경 할 수 있습니다.^^

제 블로그를 통해 오신분은 "한국아마추어천문학회" 라는 부스에 오셔서 저를 찾으시면 제가 따뜻한 차를 대접하겠습니다.^^
보다 자세한 내용은 http://www.astronomy2009.kr/ 여길 보시면 됩니다.^^



사진출처 : 한국아마추어천문학회, http://www.seoulkaas.net
2008년 학생천체관측대회 및 대한민국 별축제 사진보기 : http://www.seoulkaas.net/zb-5/?sid=40098&page=3&article_srl=7792217
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

지난 토요일에 창경궁 옆에 있는 서울국립과학관에 다녀왔습니다.
심심하시도 했고, 날씨도 좋았으며, 원래 자연, 우주, 지구 등과 같은 부분에 관심이 많았기에 보고 싶기도 했었습니다.
토요일 오후라 그런지 가는 길이 쉽진 않았습니다.
집에서 서울국립과학관 까지 9.5km 인데 무려 90분이 걸렸거든요.^^;; (오는 길도 마찬가지 였었고요.)
아무튼 이래저래 고생해서 도착했습니다.
주차요금은 4시 이후에 도착하면 2,000원을 선불로 받더군요.
그리고 입장료는 성인 기준으로 8,000원 정도 하는데 현대 M카드로 지불하면 할인 1,000원을 해줍니다.^^

주차를 하고 나오니 오래된 기차 2대가 보이더군요.
과학관에서 본 옛 전차는 향수를 불러 일으키기에 충분했습니다.^^

아래의 기차는 어렸을 적 판문점에 가면 종종 보곤 했었던 기억이 납니다.
'철마는 달리고 싶다.' 인가요? ㅎㅎ

기후변화전시회는 차를 가져올 경우 과학관으로 가기 위해선 주차 매표소를 통과하고 오르막 길을 올라가는데 매표소 입구 바로 앞에 들어가는 입구가 있습니다.

처음 전시회에 들어가면 아래의 그림이 보입니다.
진열된 전시물은 산업의 발달에 따라 인간을 편하게 만들어주는 도구의 발전 순서를 보여주는 것이고요, 빨간선 보이시죠?
저 빨간선은 도구의 발전에 따라 증가하는 이산화탄소의 양을 보여줍니다.

왼쪽 끝에 컴퓨터 보이시죠? 과학과 도구가 발달하게 되면서 이산화탄소를 나타내는 빨간선은 기하급수적으로 증가하게 됩니다.

아래는 1톤 석탄의 모형입니다.
이 석탄 하나로 미국의 가정은 두 달을 살 수 있고, 한국의 가정은 약 다섯달 정도 살 수 있다고 하더군요.

이런 이산화탄소의 증가에 대처하기 위해선 식물이 많이 필요하다고 합니다.
그런데 흔히 식물은 땅에 심잖아요? 갈수록 땅은 거칠어지고, 또 인간이 살기 위해 나무를 베어냄으로써 나무가 살기 위한 땅이 줄어들고 있습니다. 그런데 사진을 보면 식물이 벽에 붙어서 자라고 있습니다.
땅이 없어도 식물은 저렇게 벽에 심을 수 있다고 합니다.
그래서 앞으로 만들어지게 되는 건물들의 벽을 이용하여 저렇게 식물의 수를 늘린다고 합니다.

아래의 그림은 지구의 온도 변화를 시대별로 보여주는 것입니다.
파란색은 시원한 지구, 빨간색은 더운 지구를 의미하죠.
1900년대 초반은 왼쪽의 파란 것 처럼 시원했다고 합니다.
오른쪽은 오늘날이죠.


아래의 둥근 구는 이상기온에 따른 해수면의 변화와 남북극 얼음의 변화 그리고 기후의 변화를 보여주고 있습니다.
저 구를 중심으로 총 4개의 홀로그램이 존재하는데 해수면의 변화나 기후의 변화를 보고 싶으면 각각의 버튼을 클릭해서 볼 수 있습니다.

아래의 사진은 위에 언급한 홀로그램을 촬영한 것입니다. 핸드폰으로 촬영해서 그런지 화질이 그리 좋지는 않네요.^^;

아래의 모형은 기후변화로 인해 북극곰이 쉴 곳이 없다는 것을 상징적으로 보여주고 있습니다.
인간이 버린 쓰레기 더미에서 쉴 곳을 찾고 있는 북극곰의 모습이죠.
영화 "Earth"나 그린피스가 촬영한 북극곰이 빙하가 녹아버린 바다를 끝없이 헤엄치며 쉴 곳을 찾는 영상들은 너무나 많이들 보셔서 다 아실 거 같습니다.

아래의 사진은 죽어가는 바다 속 산호초의 모형물 입니다.
수온이 올라가면서 산호가 백화되어 가는 것을 보여주고 있습니다.
그리고 산호초 아래 설명글 보시면 아주 위험지역, 위험지역, 괜찮은 지역등이 표시되어 있습니다.

이렇게 기후변화로 인해 지구는 몸살을 앓고 있고, 생태계와 인간 사회를 고통받게 하고 있다고 합니다.
아래 사진을 보면 매마른 땅과 나무 그리고 홍수로 얼룩진 인간의 마을을 보여주며 극과극의 고통을 보여주고 있습니다.

아래 사진에서 빨간원은 인간의 적혈구 모양입니다.
아래 설명을 보면 말라리아가 원래는 선선한 곳에서는 살지 못하는데 기후 변화로 인해 이제는 예전에 선선하던 지역에서도 말라리아가 많이 발생하고 있다고 설명하고 있습니다.

이 사진은 오래된 나무의 나이태 입니다. 사진의 오른쪽은 나무의 어렸을 적이고 왼쪽은 오래된 영역 입니다.
이 나무의 나이태를 보면서 나무가 자란 지역의 기후변화를 살펴볼 수 있다고 합니다.
태의 간격이 넓으면 나무가 잘 자란 것이고, 태의 간격이 엷을수록 나무가 잘 자라지 못한 것이죠.

기후 변화에 대응하기 위한 작은 노력을 보여주고 있습니다.

아래의 사진은 원자로 내부 모형입니다.
기후변화에 대응하기 위한 청정연료로서 전세계 에너지의 35%를 담당하고 있다고 합니다.
저 원자로 안에는 우라늄으로 코팅된 구슬이 있고, 구슬의 갯수는 대략 35만개 정도라고 합니다.

태양광 발전에 사용되는 반사거울 모형입니다.

아래는 사진을 찍은 것인데 저 분은 로빈 하몬드라고 하는 투발루 최고의 기상학자라고 합니다.
조수가 가장 높을 때 찍은 것인데 사진에서 보는 것처럼 이미 몇몇의 마을은 기상이변의 피해를 받고 있다고 합니다.

나우티 초등학교의 어린이들인데 이 학생들은 이미 6살 때 부터 기후변화에 대한 교육을 받는다고 합니다.

해수면 상승으로 인해 이미 두 번이나 집을 잃은 사람의 사진이라고 합니다. 첫번째 집은 사진 왼쪽에 있는 야자나무 근처에 있었다고 합니다.

히말라야의 눈이 녹으면서 드러난 암석의 사진이라고 합니다. 히말라야 지역은 연평균 0.12도씩 기온이 상승하고 있다고 합니다. 그리고 이런 기후변화를 가장 먼저 느끼는 사람이 산악인들이라고 합니다.

기후변화로 인해 빙하가 녹아내리는 동영상을 보여주고 있습니다.

그리고 또 어떤 지역에서는 건조함으로 인해 산불이 발생하게 되고, 그것을 헬리곱터가 물을 실어날라 불을 끄고 있는 영상입니다.

빙하가 녹는 지역, 건조함으로 인해 산불이 자주 발생하는 지역이 있는가 하면 아래 영상처럼 도시가 물에 잠기기도 합니다.

지구온난화를 지금 수준에서 묶지 않고 방치하게 되면 2040년 쯤에는 서울도 물에 잠긴다고 합니다.
아래의 전시물은 2040년 지구온난화로 인한 해수면 상승의 영향을 받은 시청 전철역의 모형입니다.

그리고 두 모녀가 지붕 위에서 공포에 떨고 있는 모습을 보여주고 있습니다.

이러한 지구온난화에 대응하기 위한 노력들이 이루어지고 있다는 것을 전시장 2층에서 보여주고 있습니다.
전기 자동차는 그것에 대한 적극적인 의지의 표현이죠.

전 세계적인 이슈인 만큼 우리나라도 예외는 아닙니다. 아래의 삽화는 서울시에서 지구온난화에 대응하기 위해 어떤 노력을 기울이고 있는지 설명하고 있습니다.

실생활에서 사용하고 있는 제품들을 사용할 때 발생하는 CO2의 양을 보여주고 있습니다.
소고기가 컴퓨터랑 CO2 발생량이 비슷하네요. 의외입니다.

전시관 2층에는 모형숲을 만들어놓았습니다.
저 숲속에서 자전거를 타면서 산소를 발생시키고 이산화탄소를 제거할 수 있습니다.^^
물론 게임이지만요~ ^^;;

지구온난화의 주범 CO2를 줄이기 위한 노력엔 정부 뿐만이 아니라 기업들도 동참하고 있습니다.
우리가 알게 모르게 많은 기업들이 이러한 노력에 동참하고 있습니다.


이상입니다.
이번 기후변화전시회를 다녀오고 나서 내 몸이 편할수록 CO2 발생량이 많이 늘어난다는 사실을 깨닫고 왔습니다.
인간이 만들어낸 CO2가 주는 위협은 약간의 먼 미래의 일이 아니라 오늘의 일이며, 이미 심각한 수준으로 진행되고 있음을 느끼게 되었습니다.

미래는 그린산업의 시대라고 하죠? 피부로 느끼지 못했었는데 왜 전세계 많은 리더들이 Green 이라고 외치는지 그 이유를 알게 된 시간이었습니다.

관심있는 분들은 한번 다녀와 보셔도 좋을 듯 합니다. ^^
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

담배 안피운지 한3일 됩니다. 끊었냐구요?
음~ 끊은거 같지는 않고 당분간 안피울려고 합니다.
그 당분간이 얼마나 오래 갈지 모르겠지만 최대한 안피워볼려고 하고 있습니다.
그런데 담배 생각이 매우 많이 납니다.
그 생각 지우고자 오랜만에 자전거를 꺼냈습니다.

주저앉은 타이어에 공기를 채우고, 헤드라이트와 거리계, 열량 게이지를 셋팅하고 페달에 힘을 주었습니다.
오오~ 차르륵 거리는 체인소리가 들립니다.
아차. 자전거 구석구석 기름칠을 해놨어야 했는데 도통 관리를 안했네요. 완전 게을렀네요.^^
그래도 그 소리가 나쁘진 않습니다. 정감있게 들려요.^^
도로를 빠르게 질주하는 자동차의 엔진음이 오늘은 듣기 싫은 굉음으로 들렸거든요.

집에서 5분 거리인 원효대교와 마포대교 사이에는 강북 자전거 도로와 연결되는 구름다리가 있습니다.
구름 다리를 건너는데 매우 시원하더군요. 상쾌하다고 할까요. 그래서 그 순간의 기분을 기억하고 싶어서 사진을 찍었습니다.
(강변북로 마포대교와 원효대교 사이)

400만 픽셀 카메라로 찍을 수 있는 최고 화질입니다...ㅎㅎ
여러장 찍어봤는데 더 이상은 힘들겠더라구요.

자전거 도로쪽으로 내려오다가 아래를 보니 운동하는 사람들이 제법 많았습니다.
야경도 이쁘고 해서 한컷 날려봤는데 좀 아쉽네요.^^

페달을 밟으며 순식간에 지나가는 아스팔트 알갱이 하나하나를 봅니다.
그 외에도 자동차를 타고 가면서는 결코 볼 수 없는 것들을 보게 됩니다.
운동 후 땀을 닦는 사람과 음악을 들으며 조깅하는 사람들 그리고 미세한 바람. 
집으로 올라오는 길에 맨홀 뚜껑을 보았습니다.
무심결에 지나치던 그 맨홀들... 뚜껑의 구멍이 몇 개인지 아세요?
총 22개 더라구요. 걸으니깐 볼 수 없는 것들을 보게 되요.
이게 바로 많은 사람들이 말하는 느림의 미학인가요?

빠르게 가면 볼 수 없고 느리게 가야지만 볼 수 있는 것들...
세상은 경쟁이다 뭐다해서 빠르게만 흘러가고 또 다들 그렇게 빠르게 살아가는데...
오늘 문득 그게 전부가 아니다. 라는 생각이 확 드네요.

느리게 가야지만 얻을 수 있는 것들은 빠르게 가서는 절대 얻을 수 없다는 생각을 해봅니다.
세상은 언제나 적절한 비율을 가지고 있는 거 같습니다.
남과 여의 비율, 밤과 낮의 비율, 덥고 춥고의 비율, 빠르고 느리고의 비율....

어쩌면 앞으로 진정한 가치는 빠르게 살아야만 하는 스트레스 가득한 세상이 아닌 느리지만 세심하게 관찰할 수 있는 세상 속에서 나오게 되지 않을까하는 생각이 문득 듭니다.
그리고 그게 뭔지는 아직 모르지만 그걸 발견하고 실천하게 되면 Win 하는 삶을 살게 되지 않을까 공상(?)해 봅니다.

개똥철학(?)...^^
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-
1. HTTP Error 404.3 이 나옴.
2. IIS7에 .svc에 대한 mime이 등록되어 있지 않은 문제.

실행창에서 "\%windir%\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModelReg.exe -i" 를 실행.

http://olsv.blogspot.com/2009/05/registering-svc-mime-map-on-iis-for-wcf.html
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-
TAG WCF

오랜만에 다시 천문학 공부를 했습니다.
공부한 부분은 성운, 성단 인데 관련 내용을 아래에 잠시 정리해 볼까 합니다.
나중에 기억나지 않으면 다시 볼 목적이거든요.^^

추천서적 : 박석재 원장님의 '해와 달과 별이 뜨는 원리'

적경이란?
- 지구의 경도에 해당
- 춘분점을 기준으로 동쪽으로 재어나간다.
- 단위는 시, 분, 초
- 지구에서는 동경, 서경이라는 용어를 사용하며, 각각 180도씩 존재하고, 이것을 합치면 360도가 된다.
- 1h는 60분이고, 1분은 60초가 된다.
- 24시간은 360도이므로 1시간이 15도가 된다.

적위란?
- 적위는 0도 에서 90도까지 존재함.
- 천구의 적도를 기준으로 재어나간다.
- 단위는 도, 분, 초
- 1도는 60분이고, 1분은 60초이다.

따라서 밤하늘을 1시간 바라보면 별들은 15도 움직인다.
적격에서 말하는 춘분점은 춘분날 태양이 낮에 떠 있는 하나의 점을 말하는 것이고 그 점은 가을철 별자리 근처에 있으며, 페가수스 자리와 물고기 자리 근처가 된다.
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-
컴퓨터에 대해 잘 모르고 전문지식이 전혀 없는 home user나 beginner를 대상으로 여러 MVP님들께서 바쁜 시간을 쪼개서 Step by Step문서를 만들고 있습니다.
필요한 분들에게 도움이 되었으면 하는 뜻에서 공유합니다.

[1] Windows Vista에서 사용자 계정 이름을 변경하는 방법, 권순만 MVP

[2] 절전 모드 상태로부터 돌아올 때 암호를 입력해 로그온 하는 방법, 안형진 MVP

[3] Windows Vista에서 Office 2007 설치하기, 유상원 MVP

[4] Windows Vista에서 사용자 계정을 제거하는 방법, 권순만 MVP

[5] Windows Vista에서 사용자 계정을 추가하는 방법, 안형진 MVP

[6] Word 2007, Excel 2007, PowerPoint 2007 문서에 암호를 설정하는 방법, 김지훈 MVP

[7] Outlook 2007의 편집기 옵션을 통한 단락 기호 제거 방법, 서종호 MVP

[8] 바탕 화면에 Excel 2003, 2007 바로 가기 아이콘 만드는 방법, 권순만 MVP
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

투정.

Thinking 2009/09/06 00:20

과거 모 전산실에서 일했던 경험이 문득 생각나는 오후.

입사를 했는데 운영중인 시스템이 문제 투성이 였다.
기존 사원들은 하루종일 시스템의 에러를 해결하는데 하루를 보냈고, 그것이 그들에겐 일과였다.
문제 해결하기에 급급한 하루를 보내면서 그것이 잘못된 것이라는 것을 알면서도 개선점을 찾지 않고, 현업이 발견한 문제점을 마치 선심쓰듯 고쳐 주고선 하루의 일을 다했다고 생각하는 그들....

한달이 지나고 또 한달이 지나도 구조적으로 개선되지 않는 시스템. 과연 무엇이 문제일까?
직원 입장에서는 어차피 한달간 일하면 받을 돈 받으니 에러를 고치든 성능을 개선하든 큰 문제될 것이 없지만 내가 경영자라면 밑빠진 독에 물 붓기 식으로 투입되는 한달 인건비 아까워서라도 에러만 고치면 자기 할일 다 했다는 식으로 대응하는 개발자들을 응징했을 것이다.

시스템이 이러할진데 문서다운 문서가 없다.
문서는 있으나 없느니만 못한 상황. 누굴 보라고 만든 문서인가? 발로 만든 문서인가?
문서를 보는 것 보다 누군가에게 묻고, 분석하는게 더 빠르다면 도대체 문서는 왜 만든 것일까?
배고픈 자에게 주는 밥이 먹을 수 있는 밥이어야지 타버린 밥이거나 썩은 밥이라면 차라리 주지 않는게 좋다.

개발을 하면서 자신이 사용하는 언어의 기본 성격조차 이해하지 못하는 개발자.
신입이라고 자신이 모르는 것은 당연하다며 노력조차 하지 않고 항변하는 개발자.
문제해결 보다는 얄팍한 수단을 통해 보신의 길을 찾고 있는 개발자.
새로운 것을 두려워한 나머지 도전의지 조차 잃어버린 개발자.

개발자의 권리 향상도 중요하지만 이런 사람들은 스스로를 한번쯤 돌아보는 자세도 필요할 듯 싶다.
스스로 해야할 바를 인지하지 못하고 발로 차버린 문제 많은 개발자에게 무슨 권익이 필요하겠는가?

이런 안타까운 일이 오늘 내가 속한 곳에서 일어나고 있고, 또 그런 점들이 시간이 많이 지났음에도 개선되지 않는다는 게 개탄스러울 뿐이다.
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

매뉴얼과 경쟁력

Thinking 2009/09/02 00:48

얼마전 미국(텍사스)에서 공부하는 동생이 왔길래 맛있는 가락국수 사먹으며, 이런저런 이야기를 했습니다.

연구실에서 무슨 일을 하는지, 취업 걱정은 없는지 유학생활에 대한 조언 등이 주제였었습니다.

그러다 이야기는 자연스럽게 미국에서의 직장생활에 포커스가 맞춰줬고, 시민권자와 영주권자의 차이, 서로 다른 나라에서 온 사람들의 근무 이야기 등 많은 이야기를 나눴습니다.

이렇게 이야기가 흘러가다가 경쟁력에 대한 이야기를 하게 되었습니다. 

후배가 그러더군요.



동생 : "형. 미국애들 말야... (실력이)의외로 약하기도 하더라." (아주 잘하는 슈퍼맨 일부 빼고....)

나: "응? 뭐가 말야?"

동생 : "그 친구들 수업을 나랑 같이 들으면서도 내가 영어를 잘 못하는 외국인 이라는 것을 알면서도 교수가 설명하는게 이해 안되면 나한테 묻더라. (웃으며) 영어를 잘 못 알아듣는 나에게 말이지..."

나: "흠............."

동생 : "그래서 생각해 봤는데 말야. 그 친구들이 사회에 나가서 만들어 내는 경쟁력의 원천은 이거 같어. 우리나라하고 딱 하나 다른 점이지."

나: "음... 뭔데??"

동생 : "매뉴얼, 미국애들 매뉴얼 하나는 정말 끝내주게 만들거든.. 걔들은 보통 사람도 매뉴얼만 보면 문제 없이 일을 해내거든."

나: "음... 공감하는 부분이야."

 

성공과 실패에 대한 노하우가 모두 포함되어 있는 매뉴얼...

지금까지 직장생활 하면서 느낀 점 중 하나가 문서화의 가치 였습니다.

제 주변이나 직접적인 경험에서 어떤 과업에 대한 결과를 보존하고자 그 내용을 문서화 하게 되면 그런 행위를 시간낭비라고 생각하는 경향이 있었습니다.(또는 하면 좋지만 하기엔 시간이 없어.)

또한 일을 하다보면 문서를 보면서 일하는 사람을 (모른다고 또는 실력이 없다고) 무시하기도 합니다.
 
문서가 있어도 참고하지 않고, 척척 해내야 잘한다고 생각합니다.(낯선 일일 수록 더욱더...)

그런데 언제나 문제가 있는 단체를 보면 한 가지가 없었습니다.

그건 바로 문서 입니다.!

그런 의미에서 (성공과 실패의 노하우가 담긴)매뉴얼을 만드는 일은 쓸데없는 일을 하는게 아니라 바로 누구도 넘보지 못할 경쟁력을 만드는 원천인 것 같습니다.

미국과 일본의 경쟁력이 잘 정리된 매뉴얼에서 나오는 것이 아닐까 생각해 본 하루였습니다.

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

1. Creating RIA Services With Silverlight 3 Part-2, http://dotnetslackers.com/articles/silverlight/RIA-Services-With-Silverlight-3-Part2.aspx#introduction

2. What are Stacks & Queues, http://aspnetcsharp4.blogspot.com/2009/08/what-are-stacks-queues.html

3. Insight into LINQ and its different components in .NET C#, http://aspnetcsharp4.blogspot.com/2009/08/insight-into-linq-and-its-different.html

4. Cleaning Up the Disabled State of a Silverlight Control using Expression Blend, http://weblogs.asp.net/dwahlin/archive/2009/08/27/cleaning-up-the-disabled-state-of-a-silverlight-control-using-expression-blend.aspx

5. ASP.NET 4.0 - Mejorando el Rendimiento con ViewStateMode, http://blogs.msdn.com/mvplead/archive/2009/08/28/asp-net-4-0-mejorando-el-rendimiento-con-viewstatemode.aspx

6. Package-up a SketchFlow Project, http://nickjosevski.wordpress.com/2009/08/27/package-up-a-sketchflow-project/

7. DataBinding in Nested Controls, http://leeontech.wordpress.com/2009/08/27/databinding-in-nested-controls/

8. How to enable Silverlight 3 to run out of the browser, http://alpascual.com/blog/how-to-enable-silverlight-3-to-run-out-of-the-browser/

9. Sketching and Prototyping with Blend 3, http://www.silverlightshow.net/items/Sketching-and-Prototyping-with-Blend-3.aspx

10. 요건 그냥~ WorldWide Telescope And Photosynth In Time’s 50 Best Websites List For 2009, http://www.liveside.net/main/archive/2009/08/28/worldwide-telescope-and-photosynth-in-time-s-50-best-websites-list-for-2009.aspx
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-

와. 신기합니다.
날씨에 따라 핸드폰의 배경이 자동으로 바뀝니다.
구경함 해보세요.^^

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License

'HCI & UX' 카테고리의 다른 글

날씨에 맞춰 변하는 윈도우 컨셉 폰  (0) 2009/08/22
HCI란 학문은?(2)  (6) 2009/07/08
HCI란 학문은?(1)  (0) 2009/07/07
HCI (2)  (0) 2009/04/18
HCI (1)  (0) 2009/04/17
Microsoft UX Platform and Tool Overview By Chris Bernard  (0) 2009/04/11
Posted by -세티-

이번 주말은 오랜만에 가지는 나만의 시간으로 가득한 날이었습니다.

뭘 할까 고민하다가 EBS에서 방영했던 '대국굴기' 를 구해서 봤습니다.



중국의 CCTV가 만들었다고 하는데 일단 앞선 나라를 분석하고, 배울려고 하는 자세가 부럽더군요.

총 12편으로 구성되어 있는데... 포르투갈 스페인 부터 미국 그리고 21세기 강국의 조건까지 매끄럽게 연결되는

다큐멘터리의 스토리와 구성이 저를 몰입하게 만들더군요.^^

개인적으로 보면서 소득도 있었습니다. ^^

다큐멘티리를 보면 강국이 되는 조건이 대충 다음과 같습니다.(절대적인 것은 아닙니다.)


1. 뭔가를 원하는 사람들이 많아진다.(욕망의 분출)

2. 원하는 것을 얻기 위해 조금씩 주변으로 확장해 나간다.(법과 제도의 정비)

3. 주변과의 이해충돌.(타협이냐 전쟁이냐... 하지만 타협은 별로 없음)

4. 싸움에서 이긴다.(지면 서서히 망해감...)

5. 싸움에서 이김으로써 새로운 질서를 창조해 낸다.(나를 따르라~) 

6. 시대가 바뀌어도 흐름은 똑같음. 다만 싸움의 소재가 달라짐. 가령 과거에는 향신료나 금과 같은
    제물이었지만 오늘날에는 과학기술로 바뀜.



강한 기업의 조건도 대충 이와 비슷하다는 생각이 드네요.

더 작게는 단체나 개인도 그러할 듯 하구요....

흠... 그러고보니 1~6번중 내 자신은 몇 번을 거치고 있을지 생각하게 되네요.^^;

수양에 수양을 거듭해야 겠습니다.^^
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License

'General Tech.' 카테고리의 다른 글

Step by Step 기술자료  (0) 2009/09/09
ASP.NET, Silverlight 관련 정보 공유  (0) 2009/08/29
MSDN 웹 캐스트 시리즈  (0) 2009/07/28
데이터베이스 구조 튼튼한지 확인(02)  (0) 2009/04/26
관계형이란(01)  (0) 2009/04/26
사용자 데이터베이스 이전하기.  (0) 2008/12/21
Posted by -세티-

몇 일전에 익스프레션 블렌드 3와 실버라이트 3.0이 발표 되었습니다.
좀 늦은 포스팅 이긴 하지만 관련 자료를 열람할 수 있는 주소를 정리해 보았습니다.

관심 있는 분들은 천천히 읽어보셔도 좋을 듯 합니다.
특히 Visual Kitchen은 한 시간 짜리 동영상 이긴 하지만 말은 잘 못알아들어도 봐두시면 익스프레션 블렌드 3.0의 특징에 대해 잘 아실 수 있게 됩니다. 꼭 보시면 도움이 될 겁니다. 한 시간만 투자하세요.^^

실버라이트 3.0 퀵 스타트 : http://silverlight.net/quickstarts/
실버라이트 3.0 개발툴 관련 사이트 : http://silverlight.net/GetStarted/
실버라이트 3.0 특징 : http://silverlight.net/learn/videocat.aspx?cat=12
실버라이트 3.0 도입 사례 : http://www.microsoft.com/silverlight/
실버라이트 3.0에서 새로워진 부분 : http://silverlight.net/getstarted/silverlight3/default.aspx
익스프레션 블렌드 3에 대한 소개 : http://expression.microsoft.com/ko-kr/dd565875(en-us).aspx
익스프레션 블렌드 3(스케치 플로우)에 대한 소개 : http://expression.microsoft.com/en-us/ee215229.aspx
딥줌 composer 다운로드 : http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=457b17b7-52bf-4bda-87a3-fa8a4673f8bf
익스프레션 블렌드에 대한 새로운 특징과 기능을 상세하게 감상할 수 있는 Visual Kitchen : http://www.microsoft.com/silverlight/seethelight/

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-
Expression Media는 미디어 파일 변경에 대한 버전관리 기능을 제공합니다.
버전관리 기능을 통해 변경된 이미지와 원본 이미지를 선택해서 사용할 수 있습니다.
원본 이미지를 실수로 변경해서 원본 손실에 대한 후회를 조금은 덜 수 있게 되었습니다.

먼저 Expression Media를 실행합니다.
[파일] 에서 [항목 가져오기]로 이동하고 [파일/폴더에서(F)]를 클릭합니다.

사용할 미디어 파일을 선택합니다.

아래 이미지에서 빨간 네모 아이콘은 [라이트 테이블] 이라고 하는 기능입니다.

라이트 테이블선택한 이미지를 보거나 비교할 때 매우 유용합니다.
이것을 통해 간단하게 이미지를 변경하거나 회전을 시킬 수 있고, 또한 이미지의 색 레이블이나, 파일 이름, 크기, 크기 조정 백분율 등이 표시 됩니다.

아래의 이미지 처럼 [이미지 편집기]를 클릭합니다.
이미지 편집기이미지의 색이나 밝기, 선명도, 이미지 보정등에 사용되는 도구 입니다.
이미지 편집기에서 지원되는 다양한 기능을 적용해 보세요.

아래는 이미지 편집기로 변경한 이미지 입니다.

이렇게 변경된 이미지는 버전관리를 해줌으로써 여러가지 미디어 버전을 확보할 수 있습니다.
변경한 이미지가 마음에 들지 않을 경우 버전 폴더에서 이전 이미지를 가져오기만 하면 됩니다.
그러기 위해선 먼저 버전 폴더를 생성해야 합니다.
버전 폴더는 [이미지 편집기]에서 [설정]을 클릭함으로써 생성합니다.

버전 폴더를 생성한 후 이미지를 변경해 보세요.
그러면 아래 그림 처럼 미디어 버전이 만들어 지게 됩니다.

변경한 이미지를 다시 변경하게 되면 이미지 버전이 새롭게 추가 됩니다.

이렇게 생성된 이미지는 버전 폴더에 차곡차곡 쌓이게 됩니다.

이미지를 다시 돌리는 방법은 생성된 미디어 버전을 선택함으로써 편리하게 변경할 수 있습니다.

[참고]
1. OMSS, http://silverlight.net/Learn/videocat.aspx?cat=6
2. Expression Media Help Guide
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-
한국아마추어천문학회 서울/경기 지부에서 개기일식 관측을 위해 중국을 갑니다.
당일날 아프리카 TV를 통해 일식에 대해 생중계를 계획하고 있으시더군요.

관련글 : http://seoulkaas.new21.net/zb-5/?sid=699&article_srl=7798431

한국에서도 조금 보이긴 하겠지만 마침 그 날은 비가 온다는 예보가 있어서 보긴 힘들거 같구요.
중국에서는 날씨가 화창해서 100% 볼 수 있다고 합니다.

중국에서의 개기일식은 약 5~6분간 지속된다고 합니다. 최대의 개기일식은 아니지만 작은 개기일식은 더더구나 아니라고 합니다. 관심 있으신 분들은 위의 채널에 접속해서 개기일식을 생중계로 보시기 바랍니다.

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-
오늘 정리한 내용은 Expression 미디어로 슬라이드 쇼 만들기 입니다.
정리해논 자료가 좀 되는데 시간이 부족해서 올리질 못하네요.^^:

슬라이드 쇼를 만들기 위해 필요한 이미지를 몇 장 선택하고 EM에 추가합니다.

다음엔 메뉴바에서 [만들기]를 클릭합니다.

[슬라이드 쇼 옵션]에는 다양한 슬라이드 속성을 설정할 수 있도록 되어 있습니다.
지속시간슬라이드 전환 시간이고, 배경색이며, 전환은 전환되면서 슬라이드가 표현하는 양식 입니다. 미디어 크기 조정은 슬라이드 쇼 완성 후 보여지는 이미지의 크기 이며, 스테이지 모눈은 전체화면에서 이미지를 몇개로 보여줄 것인가 하는 부분입니다.

취향대로 속성을 설정하고, 마지막으로 재생옵션과 일반옵션을 선택하는데 음성 주석 재생은 체크를 하지 않습니다. 마지막으로 슬라이드 쇼 [실행]을 클릭합니다.

전 전환시 아무 효과가 없도록 했습니다.

메뉴바에도 [Run] 버튼이 있습니다.

아래의 그림처럼 슬라이드 쇼가 진행되면서 현재 보여지고 있는 이미지를 빨간 글씨로 표시해 줍니다.

또한 [텍스트]에서 미디어 파일의 정보를 체크를 통해 볼 수 있습니다.

[정보] 에서는 미디어 파일의 디테일한 메타정보를 확인할 수 있습니다.

이제 슬라이드 쇼를 저장합니다.
굳이 설명하지 않아도 다 아실겁니다. 굉장히 옵션 자체가 굉장히 직관적 입니다.
적절하게 선택하고, [만들기]를 클릭하면 하나의 MOV 파일이 생성됩니다.


생성된 MOV 파일을 클릭하면 아래의 그림처럼 슬라이드 쇼가 완성됩니다.
이미지 뿐만이 아니라 동영상도 이와 같은 방법으로 슬라이드 쇼처럼 만들수 있습니다. 


[참고]
1. OMSS, http://silverlight.net/Learn/videocat.aspx?cat=6
2. Expression Media Help Guide
저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by -세티-