728x90

목동코딩:코딩교육

연극을 관람한 적이 있었나 싶을 정도로 오랜만에 대학로를 가게됐습니다.

대학때는 돈이 없어서 초대권을 구해서 가려다 보니, 관람한 기억이 없나 봅니다. 아무래도 제가 대학을 다니던 80년대에는 연극 공연을 관람한다는 것도 제게는 사치였던거 같습니다. 그러다가 직장을 다니면서 식구들을 부양하다 보니 역시 관람할 기회를 가지지를 못했던거 같습니다.

이번에도 모처럼 이대영교수님이 연출한 연극을 보러가려 했는데 자리가 매진 됐다고 해서

포기 하려다가 자리가 있다는 애기를 듣고 대학로에 가서 공연을 관람했습니다.

일찍 도착을 해서 지나 다니는 젊은 사람들을 부러워하며 두리번 거리면서 앉아서 기다렸습니다.

예전에 정말 예전에 여기 대학로옆에 서울대 문리대가 있었을때, 구경을 왔던 기억이 납니다. 아마도 그때가 대학로라는 호칭이 생기기 전이었을 겁니다.

기다리던 친구가 도착해서 같이 공연장으로 들어갔습니다. 연극 말미에 가슴을 울리는 감동에 눈을 자주 깜밖이는 순간도 있었습니다.

연극을 마치고 밖으로 나왔는데 , 연극을 관람한 거의 모든 관람객이 아쉬운 마음에 집으로 가지 못하고 웅성웅성 모여서 아쉬움을 달래는 장면을 사진에 담았습니다

다음에 연극 좋아하는 친구가 생기면 종종 관람을 와야겠습니다.

코로나로 갈곳이 없어서 더욱 아쉬운 하루 였습니다....

2021.9.2 목

목동코딩 연극관람

 

목동코딩 연극관람

 

목동코딩 연극관람

 

목동코딩 연극관람

 

목동코딩 연극관람

 

목동코딩 연극관람

 

목동코딩 연극관람

 

목동코딩 연극관람

 

목동코딩 연극관람

 

 

목동코딩: 어느 탈북 대리운전자 이야기를 다룬 연극공연

728x90
728x90

목동코딩:

이번에 9인치 탭에 맞추어진 안드로이드 프로젝트를 완료한뒤, 고객의 요청으로 스마트폰에서 사용하게 앱을 변경해야 했다.

잘 마무리된 앱을 그대로 수정하기에는 부담이 있어서 다른 버전으로 만들 필요가 생겼다. 그전에 해보기는 했지만 잘 기억이 나지 않아서 , 이번에는 작업 과정을 남기기로 했다.

 

 

1. 폴더 복사 붙여넣기

원하는 프로젝트가 있는 폴더를 그대로 복사하여 수정 작업할 폴더이름으로 변경한다

 

 

2. Android Studio Import

Android Studio 에서 작업할 폴더를 import로 불러들인다.

목동코딩학원 코딩교육상담

 

 

3. 패키지명 변경

목동코딩학원 코딩교육상담
 

 

4. settings.gradle 변경

settings.gradle 파일의 가보시면 rootProject.name = "(변경할 프로젝트명)" , 이걸 현재 프로젝트 명의 맞게 변경.

 

 

5. app_name 변경

AndroidManifest.xml 파일에 가면, android:label="@string/app_name" 이렇게 되어 있습니다. @string/app_name를 찾아 들어가서, app_name을 변경.

 

 

6. applicationId 변경

마지막으로, build.gradle(Module: app) 를 찾아 들어가면 defaultConfig 안의 applicationId가 있습니다. 이 applicationId 를 현재 프로젝트의 맞게 변경.

7. Sync를 진행한다.

8. 앱의 수행을 테스트한다음 , 앱 수정을 진행한다

목동코딩학원 코딩교육상담

728x90
728x90

목동코딩: 우리가 배워야할 코딩은 실전이어야 합니다...

코딩교육을 원하는 분들이 많아 졌습니다. 교육을 원하는 대상도 넓어졌습니다.

초등, 중등, 고등, 대학이상 성인 등등 입니다.

배우고자 하는 이유도 서로 다릅니다.

1)코딩을 배우라니까

2)코딩을 배워야 하니까

3)코딩으로 취업을 하고 싶어서

4)코딩으로 수업을 하고 싶어서

5)프로그래머가 되고 싶어서

6)자신의 업무에 활용하기 위해서

7).....

이 이외에도 코딩을 배우고 싶은 더많은 이유가 있을겁니다.

제가 열거한 이유 중, 어는 거를 배우더라도 전문적인 지식이 필요합니다. 배워야 하는 목적에 부합하기 위해서는

그 분야에 대한 전문적인 지식이 있어야 합니다.

우리가 학원에서 국,영,수 를 배울때도 나름 좋은 학력을 가진 선생님에게 배우기를 원합니다.

왜 일까요? ㅎㅎ 이유는 설명하지 않겠습니다.

코딩도 마찬가지 입니다. 참 그리고 모든사람이 코딩을 좋아하지는 않습니다. 그리고 배울 수도 없습니다.

만화영화를 제작하기 위해서, 시나리로를 만들고, 장면을 이미지로 만들고, 누군가는 색칠을 하고, 마케팅하여 판매를 합니다.

각자의 능력에 따라 급여도 각기 다릅니다. 예전에 우리나라 수준이 낮을때는 일본이 그려준 이미지에 색칠만해서 싼가격에 보내주면, 일본은 만화영화로 되팔아서 큰 돈을 벌었다고 합니다.

코딩도 마찬가지입니다.

개발할 내용을 업무협의 하고, 시스템을 디자인하고, 프로그래머를 구성하여 개발을 합니다. 어떤 개발자 레벨은 ctrl-c, ctrl-v 를 반복하는 일을 합니다.

이 중에서 어느 파트를 진행할 능력이 되는냐에 따라서 본인의 연봉이 천차 만별입니다.

예전에 제 아들이 4살인가 5살때, 한글 선생님이 방문하여 교육하는 장면을 우연히 목격하였습니다.

"자 이글자는 수박할때 '수', 이 글자는 노래할때 '노' " 이런 방식으로 교육을 하기에, 제가 수업 마친뒤,

한글의 원리를 토대로 설명을 했더니 , 다음날 부터 뜻을 몰라도 한글을 읽기 시작했습니다. 아마 그대로 수업하도록 했으면 , 한 1년은 한글을 배워야 했을지도 모릅니다 ㅎ.

이런식의 수업이 혹시라도 코딩학원에서 진행되지 않기를 바랍니다.

코딩 수업도 코끼리 만지듯이 이건 코다, 이건 꼬리다 등등 으로 체계적이지 못하게 수업을 하면, 그 코딩 교육은 몇년을 배워도 아무 의미가 없습니다. DB, 하드웨어, 통신등 연관되도록 시스템을 알아야 합니다.

산을 오를때 그냥 여기 저기 헤메다 오르는 방법도 있지만, 최소한 산 모양이라도 알고, 좋아하는 길을 선택해 오르다 보면 , 효과적으로 코딩이라는 산을 오르게 될겁니다.

해본적이 없는 과제를 수행할 수 있는 방향으로 교육이 진행되어야 합니다.

이제는 서울에 안 가본 사람의 억지에 그러가 하고 넘어가는 일이 없길 바랍니다....

목동코딩 코딩교육상담

728x90
728x90

유니티사이트의 튜토리얼을 따라하다가 Projectile Standard에 걸려서 고생하다가

해결이 되어서 블로그에 올립니다.

Asset 에서 FPS 마이크로 게임 을 다운받아서 설치하면 잘진행이 됩니다. 이것을 모르고

Add Component에서 찾는라고, 구글 검색도 하고 조금 고생했습니다

FPS Mod: Customize weapon projectiles

1. 처음부터 새로운 발사체 만들기

1. 먼저, 새로운 프리 팹을 만들어야합니다. 이를 위해 , 현재 씬에 새로운 GameObject 를 추가하는 것으로 시작하겠습니다 .

목동코딩학원 유니티로 메타버스 수업

2. 원하는대로이 개체의 이름을 바꿉니다.

목동코딩학원 유니티로 메타버스 수업

이 예제에서는 이름을 NewProjectile로 지정합니다.

4. 그런 다음 Assets> Utech> FPS> Prefabs> Projectiles 폴더 의 계층 구조 창에서 프로젝트 창으로 새 객체를 드래그해야 합니다.

5. 이 GameObject 에서 프리 팹 을 만들었습니다 .

목동코딩학원 유니티로 메타버스 수업

6. 이제 더블 클릭하여 엽니 다.

목동코딩학원 유니티로 메타버스 수업

7. 계층 구조 창 에서 객체를 선택하고 인스펙터 창 에서 변환 구성 요소를 마우스 오른쪽 버튼으로 클릭하십시오 . 그런 다음 재설정을 클릭하십시오. 이 GameObject의 위치, 회전 및 스케일에 대한 기본값을 설정합니다 . 그렇게하지 않으면 발사체가 올바른 위치에 생성되지 않거나 다른 회전으로 생성되지 않을 수 있기 때문에 중요합니다.

목동코딩학원 유니티로 메타버스 수업

8. Add Component 버튼을 클릭 한 다음 Projectile Standard 를 선택하십시오 . 구성 요소 이름의 시작 부분을 입력하여 결과를 좁힐 수 있습니다.

목동코딩학원 유니티로 메타버스 수업

9.이 작업이 완료되면 개체에 두 개의 새로운 구성 요소가 나타납니다. 발사체 표준 구성 요소는, 당신은 단지 추가 한, 및 발사체 자료 당신이 추가 할 때 자동으로 추가됩니다, 발사체 표준 .

목동코딩학원 유니티로 메타버스 수업

10. 이제 발사체에 메쉬 (3D 모델)를 추가하겠습니다. 에서 프로젝트 창에서에서 당신이 원하는 것을 메쉬, 드래그를 찾을 계층 구조 창을여십시오. 자산> UTech> ModAssets> 모델> NatureProps로 이동하여 몇 가지 옵션을 찾으십시오. 예를 들어 FirTree 메쉬를 계층 창으로 드래그 앤 드롭합니다.

11. 메시가 이제 장면 뷰에 나타납니다 . 팁 : 장면 뷰 위로 마우스를 가져 가면 키보드에서 F를 눌러 현재 선택된 계층 구조 (이 경우 FirTree)에 카메라를 중앙에 놓습니다.

목동코딩학원 유니티로 메타버스 수업

12. 이제이 메시 의 Transform 컴포넌트 에서 일부 값을 변경 하여 발사체의 시각으로 사용합니다. 이 특정 메쉬의 경우 다음 값이 효과적입니다. 다른 메시를 사용하는 경우 발사체의 앞면이 파란색 화살표 (정방향)와 정렬되고 발사체의 길이가 대략 0.5 미터 미만인지 확인하려고합니다.

목동코딩학원 유니티로 메타버스 수업

13. 이제 발사체 매개 변수를 설정합니다. Hierarchy 창 에서 루트 GameObject 를 선택하십시오 .

14. Inspector 창에서 반지름을 0.2로 변경합니다

목동코딩학원 유니티로 메타버스 수업

15. 그런 다음 메시를 계층 구조 창 에서 발사체 표준 구성 요소 의 루트 매개 변수로 끕니다 . 이 프로세스는 메시의 Transform to Projectile Standard 컴포넌트에 대한 참조를 제공합니다 .

16. 마찬가지로, 발사체의 끝을 발사체 표준 구성 요소에 대한 참조를 제공해야합니다 . 그러나 먼저 만들어야합니다.계층 구조 창 에서 메시를 마우스 오른쪽 버튼으로 클릭 한 후 빈 생성 을 클릭합니다 .

17. 방금 생성 한 새로운 빈 GameObject의 이름을 지정하십시오 .

18. 그런 다음 이동 도구를 선택하십시오 . 새 게임 오브젝트 를 메시 끝 으로 옮길 것 입니다.

19. 장면 뷰 에서 화살표를 드래그하여 개체를 이동하십시오.

목동코딩학원 유니티로 메타버스 수업

20. 15 단계 에서했던 것처럼 Tip GameObject 를 Hierarchy 창 에서 Projectile Standard 컴포넌트 의 Tip 매개 변수로 드래그합니다 .

목동코딩학원 유니티로 메타버스 수업

21. 이제 발사체가 무언가와 충돌 할 때 생성 될 오브젝트를 선택합니다.Impact VFX 필드 에서 아이콘을 누르십시오 .

22. 방금 나타난 창에서 자산 탭을 클릭 하십시오.

목동코딩학원 유니티로 메타버스 수업

23. 원하는 개체를 한 번 클릭하십시오. 이 예제에서는 쿠키 메시를 사용합니다.

목동코딩학원 유니티로 메타버스 수업

24. 발사체가 무언가와 충돌 할 때 재생할 소리를 선택할 수 있습니다. 인스펙터 창에서 Impact SFX Clip 필드 의 아이콘을 누릅니다 .

25. 원하는 소리를 선택하십시오

목동코딩학원 유니티로 메타버스 수업

26. 발사체가 준비되었으므로 자동 저장 이 활성화되지 않은 경우 (“저장”옆의 확인란) 아래 이미지에 표시된대로 프리 팹을 저장하십시오.

2. 새로운 발사체를 무기에 할당

1. Project 창에서 Assets> UTech> FPS> Prefabs> Weapons 로 이동하여 선택한 무기의 Prefab 을 두 번 클릭하여 엽니 다 .

2. 이제 계층 에서 무기가 선택되었으며 Inspector 에서 해당 정보를 볼 수 있습니다 . 인스펙터 에서 Projectile Standard 컴포넌트 아래 Projectile Prefab 필드를 찾습니다 . 생성 한 발사체를 프로젝트 창 에서 해당 필드로 드래그해야합니다 . 따라서 생성 한 발사체를 찾은 다음 한 번 클릭 하고 발사체를 Projectile Prefab 필드 의 Project 창에서 Inspector 창으로 끕니다 .

3. 자동 저장 이 활성화되어 있지 않은 경우 (“저장”옆의 확인란) 무기 프리 팹을 저장하는 것을 잊지 마십시오 .

4. Play를 누르고 쿠키 블래스터를 확인하십시오!

3. 추가 크레디트 : 생성 된 메시에 물리 추가

1. 쿠키 메시에 물리를 추가하여 발사 할 때 공기 나 벽에 달라 붙지 않고 충돌하고 넘어 지도록합시다. Impact VFX 로 간단한 메시를 사용하는 대신 이전과 같이 만들 프리 팹을 사용합니다.

먼저, 프로젝트 창 에서 이전에 사용한 메쉬를 계층 창 으로 드래그하십시오 . 현재 장면 의 루트 위치 에 놓을 수 있습니다 . 아래 예제에서 쿠키 메쉬는 계층 구조 창 에서 GameObjec t입니다 .

2. 프로젝트 창에서 자산> UTech> FPS> 프리 팹으로 이동하십시오. 쿠키 게임 오브젝트 를 클릭 하여 계층 에서 프로젝트 창으로, 프리 팹 폴더 로 드래그하십시오 . 팝업 창에서 Original Prefab 을 선택하십시오 .

3. 프리 팹의 이름을 적절한 이름으로 바꿉니다. 이제 열 수 있습니다 (두 번 클릭).

4. 루트 GameObject 의 변형을 재설정하십시오 . 그렇게하려면 Transform 컴포넌트를 마우스 오른쪽 버튼으로 클릭 한 다음 Reset 을 클릭하십시오 .

5. 스케일을 (50, 50, 50)으로 설정하십시오.

6. 구성 요소 추가를 클릭 하십시오 . 서로 다른 두 가지를 추가해야합니다. Mesh Collider 구성 요소와 Rigidbody 구성 요소를 추가합니다 ( Rigidbody 2D가 아닌 일반 Rigidbody 구성 요소 선택 ).

7. Mesh Collider 컴포넌트에서 Convex 상자를 체크하십시오 .

목동코딩학원 유니티로 메타버스 수업

8. Project 창에서 앞에서 만든 발사체 프리 팹 을 찾아 엽니 다.

목동코딩학원 유니티로 메타버스 수업

9. Inspector의 Projectile Standard 구성 요소에서 Impact VFX 필드 의 아이콘을 클릭 하여 새 Prefab 을 할당합니다 .

목동코딩학원 유니티로 메타버스 수업

10. 새로운 프리 팹을 선택하십시오.

목동코딩학원 유니티로 메타버스 수업

11. 자동 저장 이 활성화되어 있지 않은 경우 무기 프리 팹을 저장하는 것을 잊지 마십시오 .

12. Play를 누르고 스폰 된 메시에서 새로운 물리를 확인하십시오.

728x90
728x90

목동코딩에서 스터디카페 IoT프로젝트를 하면서, 어떤 보드로 테스트할까 고민을 하다가 , 전파인증이 되어있는 라즈베리파이를 사용하기로 했습니다. 제품 가경이 저렴한 아두이노에 이런 저런 모듈을 연결하여 테스트나 제품 개발도 가능하지만, 제품의 개발이 완료되고 나서 전파인증 이나 적합성 인증에 대한 부담이 커서 조금 가격은 비싸지만 라즈베리파이로 개발하기로 마음을 먹고 테스트를 하였습니다.

현재까지 제가 원하는 제품을 만드는데 별다른 문제는 없어보입니다.

라즈비안 설치도 쉬웠도 파이썬 프로그램 구동도 수월했습니다

현재까지의 과정을 담음 영상입니다

 

 

목동코딩학원 파이썬IoT프로젝트

 

 

 

목동코딩학원 파이썬IoT프로젝트

 

 

 

목동코딩학원 파이썬IoT프로젝트

  •  

 

목동코딩학원 키오스크 개발을 위한 라즈베리테스트 영상

 

728x90
728x90

SELECT [col1,col2] FROM table WHERE 조건절.... LIMIT 인덱스 값(0부터 시작)

페이지당 10개씩 표시하는 방법

// 1페이지

SELECT * FROM page_table LIMIT 0, 10;

// 2페이지

SELECT * FROM page_table LIMIT 10, 10;

// 3페이지

SELECT * FROM page_table LIMIT 20, 10;

전체 게시물을 Count한뒤, 10개씩 나누어서 게시물을 가져와서 페이지에 표시한다

예전에 직장생활을 하면서 COBOL이라는 언어로 업무시스템을 개발하면서, 장부를 출력하는 업무를 개발할땐는,데이타베이스의 도움을 받기 어려워서 프로그램으로 장부를 인쇄할때 페이지당 20줄씩 프로그램으로 나누어서 프로그래밍을 했는데 , 요즘은 데이타베이스 엔진이 출력에 도움이 되는 기능을 많이 제공하고있어서 프로그램이 정말 많이 편해졌다.

90년대초에는 장부를 출력할때 소팅기능도 직접 프로그램하여 사용했던 기억이 납니다

 

 

목동코딩,드론개발을 위한 자이로센서 PID테스트영상

 

728x90
728x90

SELECT [col1,col2] FROM table WHERE 조건절.... LIMIT 인덱스 값(0부터 시작)

페이지당 10개씩 표시하는 방법

// 1페이지

SELECT * FROM page_table LIMIT 0, 10;

// 2페이지

SELECT * FROM page_table LIMIT 10, 10;

// 3페이지

SELECT * FROM page_table LIMIT 20, 10;

전체 게시물을 Count한뒤, 10개씩 나누어서 게시물을 가져와서 페이지에 표시한다

예전에 직장생활을 하면서 COBOL이라는 언어로 업무시스템을 개발하면서, 장부를 출력하는 업무를 개발할땐는,데이타베이스의 도움을 받기 어려워서 프로그램으로 장부를 인쇄할때 페이지당 20줄씩 프로그램으로 나누어서 프로그래밍을 했는데 , 요즘은 데이타베이스 엔진이 출력에 도움이 되는 기능을 많이 제공하고있어서 프로그램이 정말 많이 편해졌다.

90년대초에는 장부를 출력할때 소팅기능도 직접 프로그램하여 사용했던 기억이 납니다

 

 

목동코딩,드론개발을 위한 자이로센서 PID테스트영상

 

728x90
728x90

목동코딩:

오늘은 청라에 가서 무인 스터디카페 시스템을 종합 테스트를 진행했습니다. 그중에 입실.퇴실과 동시에 각각 회원의 자리의 전등제어를 하기 위해서 Sonoff의 펌웨어를 커스터마이징을 하였습니다.

이번 시스템은 중앙 집중적인 서버 방식에서 벗어나, 로컬방식으로 진행했습니다.

간혹 중앙 집중적인 서버에 문제가 생기면, 전체 스터디카페 프랜차이즈가 문제가 발생하는 것을 방지 하기 위하여, 로컬 방식으로 진행을 했습니다. 그리고 인터넷으로 인한 문제를 최소화 하기 위해서 3중 인터넷 방식으로 준비 하였습니다.

전등제어 전체 모듈에 펌웨어를 업로드 한후 , 자리예약, 입실, 퇴실을 테스트 해보니 다행스럽게 잘 동작 하였습니다.

이제 본격적으로 무인 스터디 카페가 오픈을 하면 , 조금 더 모니터링을 하면서 혹시 수정 사항이 있는지 , 다시 한번 체크할 예정입니다. 경험상 시스템의 가(假) 오픈에서 발견되지 않던 오류가 , 실제 오픈에서 발견되는 경우가 종종 있으니 신경을 더 많이 써야 하겠습니다 ㅎ.

 

 

목동코딩학원 무인스터티카페 전등제어 펌웨어 커스터마이징

 

728x90

+ Recent posts