One Hundred Pushups

사는 얘기 2009. 1. 6. 14:59 Posted by galad
푸쉬업 100개 라는 이름의 운동방법?

http://krang.tistory.com/177
위의 블로그에서 보고 해보자고 생각.

아래는 실제 이 운동을 주도하는 외국 사이트.
http://www.hundredpushups.com/what.html
http://hundredpushups.com/hpu_pocket.pdf

최근엔 싯업 200개라는 것도 진행하고 있는 중..

중간중간 쉬는 시간 측정을 위한 스탑워치 사이트
http://www.online-stopwatch.com/full-screen-stopwatch/

2009/01/06 도전 시작~!!

Initial Test
Week 1
Week 2
Week 3
Week 4
Week 5
Week 6
Final Test
위 순서로 진행되며, 중간에 테스트가 2번 더 있어서 중간점검을 하도록 해놓았다.

나의 경우는 Initial Test에서 연속30개 하고 스톱. 버티면서 했으면 조금 더 했을듯도 싶지만 어차피 거기서 거기.
그리고 이 운동은 자세를 매우 중요하게 여기고 있어서, 제대로 된 폼으로 하는 게 중요!



Age < 40 years 40 - 55 years > 55 years
Rank *
number of pushups performed
1 0 - 5 0 - 5 0 - 5
2 6 - 14 6 - 12 6 - 10
3 15 - 29 13 - 24 11 - 19
4 30 - 49 25 - 44 20 - 34
5 50 - 99 45 - 74 35 - 64
6 100 - 150 75 - 124 65 - 99
7 150 & above 125 & above 100 & above

Initial Test에서 30개였으므로 랭크 4~

Week 1 - Day 1
rest 60 seconds between each SET (longer if required)
  up to 5 push ups 6 - 10 push ups 11 - 20 push ups
set 1 2 6 10
set 2 3 6 12
set 3 2 4 7
set 4 2 4 7
set 5 max (at least 3) max (at least 5) max (at least 9)
Day 2
rest 90 seconds between each SET (longer if required)
set 1 3 6 10
set 2 4 8 12
set 3 2 6 8
set 4 3 6 8
set 5 max (at least 4) max (at least 7) max (at least 12)
Day 3
rest 120 seconds between each SET (longer if required)
set 1 4 8 11
set 2 5 10 15
set 3 4 7 9
set 4 4 7 9
set 5 max (at least 5) max (at least 10) max (at least 13)

따라서 Week 1은 빨간 글씨로 표시한 코스를 따라하게 되었다.
위의 리스트는 Week 1의 Day1/2/3으로 각각의 Day는 월수금/화목토 처럼 하루 걸러 하는 걸 추천해주고 있다.

2009/01/07 Week 1 - Day 1
을 하려고 봤더니, Initial Test에서 20개 이상 한 사람에게는 Week 3부터 하길 추천하고 있다.
그래서 가능하면 Week 3부터 시작하는 걸로 급변경!

Week 3 - Day 1
rest 60 seconds between each SET (longer if required)
  16 -20 push ups 21 - 25 push ups > 25 push ups
set 1 10 12 14
set 2 12 17 18
set 3 7 13 14
set 4 7 13 14
set 5 max (at least 9) max (at least 17) max (at least 20)
Day 2
rest 90 seconds between each SET (longer if required)
set 1 10 14 20
set 2 12 19 25
set 3 8 14 15
set 4 8 14 15
set 5 max (at least 12) max (at least 19) max (at least 25)
Day 3
rest 120 seconds between each SET (longer if required)
set 1 11 16 22
set 2 13 21 30
set 3 9 15 20
set 4 9 15 20
set 5 max (at least 13) max (at least 21) max (at least 28)

Week 1 - Day 1
14 - 18 - 14 - 14 - 최하 20개이상 최대한 할 수 있는 데까지.
각 세트 사이 60초간 휴식.
실제 나의 횟수는... 14 - 18 - 14(우왓 생각보다 힘들다..) - 14(폼이 슬슬 망가지기 시작..) - 20(헥헥)
마지막 것 솔직히 20개 훌쩍 넘게 할 줄 알았는데 안되더라 ㅡ.ㅡ;;
일단 하루 쉬고 다시!!

2009/01/09 Week1 - Day 2
20 - 25 - 15 - 15 - at least 25
각 세트 사이 90초 휴식.
음 힘들어 보인다.... 컨디션도 별로고만..
실제 횟수는...
20 - 25 - 15(힘들어진다...) - 15 - 25(힘드넹....)
전날 좀 제대로 쉬어야겠다...

2009/01/14 Week1 - Day 3
컨디션 조절이란 명목하에 넘 쉬었군. ㅡ.ㅡ;;
22 - 30 - 20 - 20 - 최소 28
각 세트 사이 120초 휴식
실제 횟수는...
22 - 30 - 20 - 20 - 28 갯수는 맞추는데 쉬는 시간이 길어졌다...
열심히~

week 4: pick the same column as you did in week 3
Day 1
rest 60 seconds between each SET (longer if required)
  16 -20 push ups 21 - 25 push ups > 25 push ups
set 1 12 18 21
set 2 14 22 25
set 3 11 16 21
set 4 10 16 21
set 5 max (at least 16) max (at least 25) max (at least 32)
Day 2
rest 90 seconds between each SET (longer if required)
set 1 14 20 25
set 2 16 25 29
set 3 12 20 25
set 4 12 20 25
set 5 max (at least 18) max (at least 28) max (at least 36)
Day 3
rest 120 seconds between each SET (longer if required)
set 1 16 23 29
set 2 18 28 33
set 3 13 23 29
set 4 13 23 29
set 5 max (at least 20) max (at least 33) max (at least 40)

Week 2 - Day 1 = 2009/01/16
목표: 21 - 25 - 21 - 21 - 최소 32 휴식 60초
실제: 21 - 25 - 21 - 21(헥헥) - 32
날이 갈수록 잘해야 될 것 같은데, 왠지 힘든 부분은 그대로다 ㅡ.ㅡ;;;
이래서 100개 한 번에 할 수 있으려나...

Week 2 - Day 2 = 2009/01/21
목표: 25 - 29 - 25 - 25 - 최소 36 휴식 90초
실제: 25 - 29 - 25 - 25 - 36
휴... 규칙적으로 해야겠다...


--> 넘 대충해서 다시 시작하기로 ㅡ.ㅡ;;;

'사는 얘기' 카테고리의 다른 글

마인드맵이라...  (0) 2009.01.09
세상에 공짜란 없다?!  (0) 2009.01.07
나도 어른인걸까  (0) 2007.12.04
[펌] 삶에서 가장 좋은 것들  (0) 2007.11.29
[펌] ☆사랑을 위한 13가지 마음가짐☆  (0) 2007.11.27

HttpURLConnection 사용례

프로그래밍/Java 2009. 1. 6. 13:29 Posted by galad
일반 자바 어플서 특정 URL로 request를 날리는 방법
###########################################################################################
package test.xml;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;

public class XMLSend {
    private String targetUrl = null;
   
    public XMLSend(String targetUrl) {
        this.targetUrl = targetUrl;
    }

    public void send(ArrayList<String[]> dataList) throws IOException {
        URL url = new URL(this.targetUrl);
        HttpURLConnection uc = (HttpURLConnection) url.openConnection();
       
        uc.setDoOutput(true);
        uc.setDoInput(true);
        uc.setUseCaches(false);
        uc.setRequestMethod("POST");
       
        StringBuffer sb = new StringBuffer();
       
        for(int i = 0; i < dataList.size(); i++) {
            String[] s = dataList.get(i);
           
//            uc.setRequestProperty(s[1], s[2]);
               // 0 = 찾을 노드의 xpath, 1 = SAP에 보낼 파라미터명, 2 = 찾은 데이타 // 왜 안되는가?
           
            sb.append("&").append(s[1]).append("=").append(s[2]);
            // 0 = 찾을 노드의 xpath, 1 = SAP에 보낼 파라미터명, 2 = 찾은 데이타
        }
       
//        uc.connect(); // 이 방식은 왜 안되는가??
       
       
        PrintWriter pw = new PrintWriter(uc.getOutputStream());
       
        pw.write("url="+url);
        pw.write(sb.toString());
       
        pw.flush();
        pw.close();
       
        BufferedReader br = new BufferedReader(new InputStreamReader(uc.getInputStream()));
        String str = null;
        while((str = br.readLine()) != null) {
            System.out.println(str);
        }
    }
}
###########################################################################################

위에서 날린 request를 서블릿서 처리하는 예시
###########################################################################################
package test.xml;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class DIServer extends HttpServlet {

    protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//        String a = request.getParameter("//DATETIME[@type='T' and @qualifier='DOCUMENT']/YEAR");
           // 이건 특수문자에 띄어쓰기까지 있어서 데이터를 념겨받을 수 없다
//        String a = request.getParameter("sap_element_01");
//        String a = request.getParameter("sap_element_02");
//        String a = request.getParameter("sap_element_03");
       
//        System.out.println(a);
       
        PrintWriter w = response.getWriter();
        w.println(request.getParameter("sap_element_01") + " " + request.getParameter("sap_element_02") + " " + request.getParameter("sap_element_03"));
        w.flush();
        w.close();
       
//        System.out.println(a);
    }
}
###########################################################################################

'프로그래밍 > Java' 카테고리의 다른 글

[HttpURLConnection] HttpURLConnection 에서 GET / POST 방식 사용상의 주의  (0) 2009.02.19
CLASSPATH  (0) 2009.01.06
[펌] HttpURLConnection 을 이용하세요  (0) 2009.01.02
04 UDP  (0) 2007.11.27
03 졸려....  (0) 2007.11.27
// 해당 URL을
URL url    = new URL( "http", host, port, dir + "?member_id=" + memberID );
// 연결하고
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
// 응답이
int responseCode = connection.getResponseCode();
                
String line    = "";
// 성공이면
if ( responseCode == HttpURLConnection.HTTP_OK )
{
BufferedReader  br      = new BufferedReader( new InputStreamReader( connection.getInputStream() ) );
    // 해당 URL의 끝을 볼때까지 라인을 읽어서                
    while ( ( line = br.readLine() ) != null)
    {
        result    += line;
    }                    
}

result 값을 파싱하시면 될겁니다.

출처: http://www.javanuri.com/devforum/boardView.jsp?menuId=137425&Id=303830&gb=qna

'프로그래밍 > Java' 카테고리의 다른 글

CLASSPATH  (0) 2009.01.06
HttpURLConnection 사용례  (0) 2009.01.06
04 UDP  (0) 2007.11.27
03 졸려....  (0) 2007.11.27
02 2일째....  (0) 2007.11.27

홍대 나고미 라멘 和らーめん

요리/음식점 2009. 1. 2. 16:52 Posted by galad
나름 괜찮았다. 그래도 일본서 먹었던 것에 비하면 5% 부족하다 느꼈지만...
뭐랄까 내 입맛에는 좀 담백했던 것 같다.
동경서 먹었던 라멘은 확실히 느끼~했던 것 같은데...

뭐 그래도 종업원이 시끄러운 것 빼고는 상당히 괜찮다.
나중에 또 가봐야지...

[펌] OLAP & DataWarehouse

프로그래밍/읽을거리 2008. 11. 26. 09:56 Posted by galad
DataWarehouse는 기업내의 의사결정을 지원해 주는 애플리케이션으로
정보제공을 위한 통합된 데이터 저장공간, 또는 의사결정지원과정에서 효과적으로 사용될 수 있도록 추출/변환/통합되고 요약된
읽기 전용데이터베이스를 가르킵니다.
데이타는 각 부서의 거래처리(TP: Transaction Processing)
시스템들에서 전달되어 통합되는데, 데이터는 날짜나 부서, 거래가 아니라 고객을 위주로 배열되며 보고서 작성기, 질의 도구, 데이타 검색 도구,
OLAP 서버, 기업정보시스템(EIS: Enterprise Information Systems) 등을 통해 유용한 정보를
만들어 냅니다. 즉 기업의 의사 결정 과정을 향상시켜주는 정보기술입니다.
DataWarehouse는 다양한 형태의 data를 포함하게 되는데, 이를 통해 특정 시점의 기업환경에 대하여 일관적으로 관찰할 수
있게 됩니다. 또한 업무 운영보다는 정보제공의 성격을 띠고 있습니다. 기업의 현업 실무자들이 주로 사용하는 OLTP 시스템과는 달리, 의사 결정권자들이
주로 사용합니다. 다시 말하면 OLTP 시스템이 업무 절차를 자동화시킨다면, DataWarehouse는 의사결정을
지원하는 것을 말합니다.
 
또한 별도의 하드웨어 플랫폼의 저장소를 말합니다. 데이터베이스의 개념과 비슷하지만 차이점은 이미 저장되어있는 데이터를 재가공, 추출하여
별도로 저장하는 곳이라 할 수가 있습니다. 즉 기업의 다른 시스템(보통 운영계 시스템이라 합니다.)으로부터 추출된 정보의 저장소를 가르킵니다.
 

이 지식은 삼성경제연구소에서 공유해주셨습니다.



출처 Think Alexandros the Great. Macedonia | 엔터프라
원본 http://blog.naver.com/edufuture/60021707433

OLAP : On-line Analysis Processing (온라인 분석 프로세싱)
 
분석과 관리 목적을 위해서 다차원데이터를 모으고, 관리하고, 프로세싱하고 표현하기위한, 응용프로그램 및 기술들의 종류


정리 요약되어있는 데이터를 유연한 방법으로 추출하는 방법론을 OLAP라고 한다.


대규모 데이터에 대한 실시간 분석처리. 정보시스템 사용자가 다차원 정보에 직접 접근하여 저장된 데이터를 추출, 가공하여 사용자의 질의어를 대화식으로 처리하고 추출된 정보를 분석하며 이를 의사결정에 활용하는 작업

 

 

===========================================================================================================

 

 DataWareHouse


지금은 Siebel의 사장님으로 계신 장동인씨가 한국 오라클 기술 본부 이사님으로 있을 때 지으신 책 중에 실무자를 위한 데이터 웨어하우스라는 책을 보면 이런 말이 있습니다.

내용을 그대로 옮겨보면....

데이터 웨어하우스란,
- 수년간의 (historical data)
- 기업의 운영계 시스템에서 생긴 내부 데이터와 (internal data)
- 외부 데이터를 (external data)
- 주제별로 통합하여 (subject-oriented)
- 별도의 프로그래밍 없이 (end-user computing)
- 즉시 (on - line)
- 여러 각도에서 분석을 가능케 하는 (mylti-dimensional analsys)
- 통합 시스템 (integrated system)이다.

.... 라고 설명하고 있습니다.

따라서 DW란 것은 고객에 편중된 것이 아닌 매출, 고객, 생산, 수주 등 기존의 운영계 시스템에서 발생하는 기업 내부의 데이터 및 경쟁사 정보, 인구 정보, 해외 정보 등 기업 외부의 데이터 까지 모두 통합되어 있는 시스템이라는 겁니다.

이런 개념은 오래전 부터 있어왔으나 실제 성능 및 가격에서 도저히 구축할 수 없는 가상의 시스템이었다가, 하드웨어의 성능 향상과 가격의 하락, 대용량 및 병렬 컴퓨팅을 지원하는 데이터 베이스의 개발로 DW는 본격적으로 막을 올리게 되었는데요..... 이는 이전에 존재하던 작은 규모의 데이터베이스 시스템들끼리 서로 통합을 할 수 있는 배경을 만들어준 셈이죠.

그러나 통합을 하기에 앞서 서로 다른 여러 데이터베이스 속에는 분명히 중복되는 데이터가 존재하기 마련이고, 불필요하거나 잘못 들어가있는 데이터들도 많다는 것입니다.
따라서 데이터 클렌징이라는 과정을 통해 데이터를 정제하는 작업을 필요로하게 됩니다.

데이터 웨어하우스를 구축하게 될때는 회사의 전략에 따라 얼마만큼의 범위를 어느 기간내에 만들어야 하며, 데이터 웨어하우즈의 위치는 어디에 둘 것이며(로드, 추출의 문제가 중요 안건이겠죠), 어떠한 모델로 얼마나 많은 사람들이 접근 할 것인가를 결정 해야 하며 이를 통해 데이터 웨어하우징의 범위를 결정하게 됩니다.

이때, 너무 성급한 목표, 전략 그리고 무엇을 어떻게 볼 것인가에 대한 자료의 정의가 필수적인데 이에 대한 해답을 외부에서 찾으려고 하거나 자신의 기준으로만 판단하는 경향이 강하기 때문에 DW 작업이 원활하게 이루어지지 않는 경우가 많습니다.

이를테면 구축 업체에게 모든 문제의 해결책의 제시를 요구하거나, 재촉을 한다던가, 계속되는 요구의 변화 및 확대, 요구사항 불이행, 확고하지 않은 의지 등은 큰 장애가 됩니다.

말이 너무 이상한 방향으로 흘렀는데요, 저는 데이터웨어하우스란 시간적 개념이 포함된 사용하기 쉬운 통합된 데이터베이스라고 정의하고 싶네요.
그리고 이 과정에 데이터 정제 작업이 들어간다고 말씀 드리고 싶습니다.


[펌] MySQL 사용하기

프로그래밍/DB 2008. 11. 25. 17:46 Posted by galad

MySQL에서 root 암호 설정

mysqladmin을 이용하여 root 암호 설정

MySQL을 처음 설치하면 root 암호가 설정되어 있지 않기 때문에 반드시 설치 후 바로 root 암호를 먼저 설정해주세요.%%% root 암호를 설정하기 위해서는

 $ mysqladmin -u root -p password new-password

이러한 명령을 실행하면 됩니다. 실행하면 패스워드를 입력하라고 하는데 처음 root의 패스워드는 없으므로 그냥 엔터를 치시면 root 패스워드가 변경됩니다.

update문을 이용하여 root 암호 설정

 $ mysql -u root mysql

 mysql> update user set password = password('new-password') where user = 'root';
 mysql> flush privileges;

set password를 이용하여 root 암호 설정

 mysql> set password for root = password('new-password');

마지막으로 패스워드가 재대로 변경되었는지 테스트를 합니다.

 $ mysql -u root -p

MySQL에서 Database 보기와 생성

데이터베이스 보기

 myslq> show databases;

데이터베이스 생성

 mysql> create database DB명;

MySQL에서 새로운 사용자 추가

MySQL에서 사용할 Database를 만든 후에 사용자를 추가하려면, 일단 root로 접속한 후

 $ mysql (?h localhost) ?u root ?p
 Enter password: *******

 mysql> use mysql
 mysql> INSERT INTO user VALUES('%', '사용자', PASSWORD('비밀번호'),
     -> 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y');

이렇게 해서 사용자를 하나 만들었습니다. 맨 처음 ‘%’ 가 붙은 것은 다른 어느 호스트에서도 접속이 가능하게 하기 위해서 입니다. 간단하게 추가 하는 방법이 있습니다.


'GRANT' 명령을 이용하면 쉽게 사용자 추가 및 권한 설정이 가능합니다. (MySQL Manual 4.3.5)

  • 일반 사용자 추가
 mysql> grant all privileges on dbuser.* to dbuser@localhost identified by 'password' 
with grant option;

  • 특정 이름의 데이터베이스에 대한 모든 권한을 가지는 사용자 추가
 mysql> grant all privileges on `dbuser_%`.* to dbuser@localhost identified by 'password' 
with grant option;

'dbuser_'으로 시작되는 데이터베이스에 대한 모든 권한을 가지는 'dbuser' 사용자 계정 추가%%% 이런식으로 계정을 만들면 새로운 사용자에 대한 개별적인 데이터베이스 권한 설정을 생략할 수 있습니다. -- 이현진


사용자에게 Database 사용 권한을 주기

 mysql> INSERT INTO db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv, 
Create_priv, Drop_priv)
     -> VALUES('%', 'DB명', '사용자', 'Y', 'Y', 'Y', 'Y','Y','Y');

모든 권한을 준다면 아래와 같은 방법을 하는것이 더욱 편리힙니다.

 mysql> GRANT ALL on DB명.* TO id@'localhost'  ;
 mysql> GRANT ALL on DB명.* TO id;
 mysql> GRANT ALL on DB명.* TO id@'xxx.xxx.xxx.%';

첫번째 localhost?로컬 호스트 (DB가 자기컴퓨터에 깔려 있는경우..에만 접속을 허용하겠다는 뜻입니다.

두번째 문장은 로컬 호스트를 제외하고는 모든 ip에서 접근을 시키겠다는 내용입니다.

세번째는 c클래스만 허용하겠다는 의미 입니다. xxx.xxx.%.% 면 B클래스 xxx.%.%.%면 A클래스로 제한을 할수 있습니다.

그리고 변경된 내용을 메모리에 반영하기 위해 다음 명령을 실행합니다.

 mysql> FLUSH PRIVILEGES;

이렇게 MySQL을 설정해 놓으면 사용자가 다른 호스트에서도 접속할 수 있고 테이블 추가 삭제 등도 할 수 있습니다.


이렇게 수동으로도 가능 하지만 요즘은 툴을 많이 사용합니다. 툴은 DB에 대한 기본적인 지식만 있으면 무리가 없이 사용 되는 녀석이죠 ^^%%% 저같이 쿼리에 약한 사람들에게는 정말 유리 합니다. 아래 페이지에 가셔서 다운로드를 받으세요 :) 한글 사용에 약간의 제약이 있습니다.%%% 다른 여러가지 DB관리 툴이 있지만 상당히 고가의 툴이랍니다 :) 암흑의 루트에서 돌고 있는 녀석들이 종종 있습니다.

http://www.mysql.com/downloads/mysqlcc.html


출처: http://www.gpgstudy.com/gpgiki/MySQL%EC%97%90%EC%84%9C%20%EC%82%AC%EC%9A%A9%EC%9E%90%EC%99%80%20%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4%20%EB%A7%8C%EB%93%A4%EA%B8%B0

'프로그래밍 > DB' 카테고리의 다른 글

ORLCLE->MSSQL  (0) 2009.01.14
[펌/DB관련팁] 일간/월간/연간 통계 시  (0) 2009.01.09
[펌] mysql root 암호 분실 시  (1) 2008.11.25
[펌]PLSQL 초보  (0) 2008.01.10
PL SQL문제  (0) 2008.01.10

[펌] mysql root 암호 분실 시

프로그래밍/DB 2008. 11. 25. 17:19 Posted by galad


1>암호 초기화
# killall mysqld (데몬을 죽입니다)

# cd /usr/local/mysql (mysql이 깔린 곳으로 갑니다)

# ./bin/safe_mysqld --skip-grant &

여기까지가 초기화


2>새 암호 넣기
# ./bin/mysql (sql 실행)

mysql>use mysql

mysql>update user set password=password('새암호') where user='root';
(root 암호 변경합니다. '새암호' 자리에 새암호를 넣으세요
예>update user set password=password('1234') where user='root';

mysql> FLUSH PRIVILEGES
mysql> exit

# ./bin/mysql -uroot -p1234 으로 들어와지면 성공입니다

출처: http://kurapa.com

'프로그래밍 > DB' 카테고리의 다른 글

[펌/DB관련팁] 일간/월간/연간 통계 시  (0) 2009.01.09
[펌] MySQL 사용하기  (0) 2008.11.25
[펌]PLSQL 초보  (0) 2008.01.10
PL SQL문제  (0) 2008.01.10
DBMS_LOCK 사용 시 에러  (0) 2008.01.10