Joyoung Han

Portfolio

About

사람들과 소통하며, 사람들을 즐겁게 하는 개발자

프로그래밍을 공부하고 소프트웨어 개발의 기초를 다지며 사람들에게 어떠한 도움을 줄 수 있는 개발자가 될 것인지 많은 고민을 거듭하였고, 제가 지금까지 해 온 것을 돌아보게 되었습니다. 초등학생 때 로보키트로 제작했던 두더지 잡기 로봇, 중학생 때 스크래치로 간단하게 구현했던 플랫포머 게임, 고등학교에서 C언어를 처음 접한 뒤 제작한 슈팅 게임, 최근 진행한 연구인 실감 나는 피드백을 제공하는 인터페이스에 이르기까지 저의 개발에는 항상 즐거움이 있었습니다. 그리고 이러한 즐거움을 저 자신뿐 아니라 가족, 친구, 연구실 구성원과 나누며 보람을 느꼈다는 것을 깨닫게 되었습니다. 대학원 과정과 연구실 생활을 하며 수행했던 설문조사, 인터뷰, 사용 패턴 분석, 통계 분석 등 다양한 유저 스터디 경험을 기반으로 하여 앞으로 더욱 많은 사람들에게 즐거움을 줄 수 있는 개발자가 되고 싶습니다.

Skills

Projects

양방향 시선 공유 (2020. 05. ~ 2021. 07.)

한 가지 주제에 대해 다양한 생각과 시도를 한 경험

양방향 시선 공유 프로젝트는 교사와 학생이 물리적으로 떨어진 AR 환경에서 시선 정보를 활용하여 효과적으로 수업을 진행하는 것을 목표로 하였습니다. FoV, FoE, gaze ray, gaze point 등 다양한 시선 정보 공유 방법을 시도했고, 가장 distraction이 적은 gaze point 방법을 채택하였습니다. distraction을 최소화하기 위해 필요한 곳에만 gaze tag를 남길 수 있도록 발전시켰으며, 자연스러운 tag 생성을 위해 음성인식, 손 제스처, 감정, 표정 등 다양한 방법을 시도하였습니다. 실험 결과, 사용자들은 gaze tag를 긍정적으로 평가하였으며, 학생은 교사의 시선을 대체로 따라갔음을 확인할 수 있었습니다. (실험 참여 인원: 12명)

  • C#
  • JavaScript
  • Unity
  • Hololens 2
  • Tobii
  • VR/AR
  • Funneling (2020. 07. ~ 2020. 10.)

    여러 사람이 쉽게 사용할 수 있도록 프로그램을 설계하고 인터페이스를 구성한 경험

    Funneling 프로젝트는 AR 환경에서 인터페이스를 사용할 때 손가락이 인터페이스에 담기는 느낌을 전달하는 것을 목표로 하였습니다. 장갑에 부착된 2~3개의 진동 모터를 이용하여 손가락 전체에 느낌을 전달할 수 있도록 phantom sensation을 이용하였습니다. 효과적인 피드백 제공 방법을 탐색하기 위해 작동 모터 수, 진폭 조절 함수 및 계수, 피드백 발생 기준 등을 세부적으로 설정할 수 있도록 구현하였습니다. 프로그램은 장기 프로젝트에서 계속 사용될 예정으로, 여러 사람이 쉽게 사용할 수 있도록 인터페이스를 직관적으로 구성하였습니다. (실험 참여 인원: 4명, in-lab)

  • Arduino
  • C#
  • WPF
  • d-Feedback (2020. 10. ~ 2022. 02.)

    진행 중인 프로젝트를 개선한 경험

    d-Feedback 프로젝트는 스크린 표면의 grain feedback을 이용한 compliance illusion을 실제 제품에 적용하기 위해 필요한 세 가지 design parameter인 진동 파형, 딜레이, 방향을 결정하는 것을 목표로 하였습니다. 어느 정도 진행되었던 프로젝트를 크게 개선하여 새로이 완성하는 역할을 담당하였습니다. 형태를 크게 개선한 스마트폰형 하드웨어를 설계 및 제작하였으며, 기존에 작성된 코드를 더 가독성이 높고 효율적으로 작동하도록 수정하였습니다. 실험 결과, 진동 방향과 딜레이에 따른 느낌의 차이를 확인할 수 있었으며, 진동 파형은 어떠한 영향도 미치지 않음을 알 수 있었습니다. (실험 참여 인원: 67명)

  • Arduino
  • C#
  • WPF
  • SPSS
  • dF/dt (2021. 05. ~ 2021. 12.)

    수행했던 프로젝트를 확장하여 또 다른 가능성을 탐구한 경험

    dF/dt 프로젝트는 앞서 소개한 d-Feedback 프로젝트에서 사용했던 grain feedback의 bumpy하고 buzzy한 느낌을 개선하는 것을 목표로 하였습니다. 장치에 가해지는 힘이 일정 세기 이상 변화할 경우 짧은 진동 피드백을 주는 grain feedback 방식에서 나아가, 장치에 가해지는 힘의 변화량에 따라 연속적인 진동의 세기를 조절하는 dF/dt 방식을 제시하였습니다. 새롭게 고안한 방식의 효과를 확인하기 위해 사인파와 화이트 노이즈 두 종류의 진동 신호를 사용하였습니다. 실험 결과, 사인파를 이용한 dF/dt 방식은 bumpy하고 buzzy한 느낌을 줄이면서 compliance illusion을 전달한다는 것을 확인할 수 있었습니다. (실험 참여 인원: 22명)

  • Arduino
  • C#
  • WPF
  • SPSS
  • Mini Projects

    Void (2014 상반기)

    고등학교 1학년 때 C언어를 처음 접한 뒤 제작한 슈팅 게임입니다. 메뉴, 옵션, 도움말, 레벨, 점수, 콤보, 라이프, 아이템 등이 구현되어 있습니다.





  • C
  • C Poker (2014 하반기)

    컴퓨터와 1대1로 플레이하는 포커를 제작했습니다. 오픈 카드 선택, 베팅, 손패에 따른 컴퓨터의 자동 베팅, 결과 확인 등이 구현되어 있습니다.





  • C
  • orz (2018 상반기)

    4명이 팀을 이루어 제작한 강의 과제 및 일정 관리 애플리케이션입니다. 강의 관리자 역할로 가입할 시 강의 등록 및 과제 추가 기능을 사용할 수 있습니다. 학생 역할로 가입할 시 강의 구독, 강의 과제 및 개인 일정 관리, 일정에 대한 알림 설정 등의 기능을 사용할 수 있습니다. 수행한 역할은 회원가입, 로그인, 강의 등록 및 가입, 일정 등록, 스케줄 타임테이블 및 중요도 순 정렬, 스케줄 상세 정보 및 알림 기능의 구현입니다.


  • Java
  • Android Studio
  • Pose Neopjuk (2019 상반기)

    사람의 포즈를 카이스트의 마스코트인 넙죽이로 변환하여 그려주는 로봇을 5명이 팀을 이루어 제작하였습니다. 프로그램은 사람이 찍힌 사진을 입력으로 받아 캐릭터 이미지로 변환하며, 해당 이미지를 로봇으로 전송하여 그림을 그리도록 구현하였습니다. 수행한 역할은 관절 키포인트 인식 방법 탐색, 키포인트를 이용한 캐릭터 이미지 생성 구현, 라이브러리 형식에 맞춘 이미지 변환 코드의 구현입니다.


  • Python
  • My Workout Buddy (2019 상반기)

    자연어 처리를 이용한 운동 관리 챗봇을 2명이 팀을 이루어 제작하였습니다. 별도의 설치 없이 사용할 수 있도록 Heroku 서버를 이용한 페이스북 챗봇으로 제작하였으며, 루틴 추천, 루틴 변경, 운동 설명, 운동 후 피드백 등의 기능을 구현하였습니다. RASA를 이용해 자연어를 처리하였고, 한글을 사용하는 방법이 명확하게 정리되어 있지 않아 그 내용을 정리하여 다른 팀에도 도움을 주었습니다. 수행한 역할은 Heroku를 이용한 RASA 한글 서버 구축 및 페이스북 연결, ClearDB를 이용한 데이터베이스 구축, 사용자 대화 front-end, 데이터베이스 오퍼레이션 등 프로그래밍 전반입니다.

  • Python
  • RASA
  • User-Centered Design (2020 상반기)

    사용자 중심 디자인을 위한 다양한 조사 방법을 세 명이 팀을 이루어 탐색하였습니다. 자율 주행 자동차에서의 엔터테인먼트 설계를 위한 focus group interview, 자동차 운전자의 입장을 고려한 엔터테인먼트 설계를 위한 ethnography, 초보 운전자의 운전 경험 향상을 위한 cultural probe를 수행하였습니다. 추가로, 글과 실제 형태를 오가며 다양한 디자인 가능성을 탐색할 수 있는 Room for Interpretation 방법을 제안하였고 자동차 수리 및 문제 해결 애플리케이션 디자인에 적용해 보았습니다.

  • Non-programming
  • User study
  • Education

    KAIST 전산학부, HCI Lab

    석사

    사람들에게 직접적인 도움을 줄 수 있는 개발자를 목표로 하여, 인간의 직접적인 사용이 개발의 주요 목표가 되는 HCI (Human-Computer Interaction) 연구실로 진학하였습니다. 하드웨어와 소프트웨어 개발에 이어 사용자 실험을 설계하였으며, 정성적인 피드백을 통해 시스템을 개선하고 정량적인 결과를 통계 분석하여 유의미한 결과를 이끌어내는 연구를 수행하였습니다.

    KAIST 전산학부

    학사

    더욱 심도 있게 프로그래밍을 공부하기 위해 KAIST 전산학부로 진학하였습니다. 다양한 과제와 프로젝트를 통해 스스로 문제를 발견하고 해결하는 능력을 길렀습니다. 또한, 단순한 코딩을 넘어 소프트웨어 개발 프로세스와 데이터베이스 설계 방법 등에 대해서도 공부하며 소프트웨어 개발자가 되기 위한 기본적인 지식을 습득하였습니다.

    경기북과학고등학교

    고등학교 시절은 처음으로 C언어를 접하며 본격적으로 프로그래밍에 관심을 갖게 된 시기입니다. 수업에서 배우는 것 이외에도, 게임을 제작하고 로봇 동아리에서 활동하는 등 다양한 프로그래밍 경험을 즐겁게 쌓아 나갔습니다. 친구들과 함께 준비한 연극에서 주인공 역할을 맡거나, 게임을 제작하는 친구와 서로 정보를 공유하기도 하며 원만한 교우관계를 형성하였습니다. (로봇신문 학생칼럼)

    Publications

    Finding a More Pleasant Compliance Illusion Method for a Hand-Held Device

    IEEE Access (Link)

    J. Han and G. Lee

    Effect of Waveform, Time Delay, and Vibration Axis on Vibrotactile Compliance Illusion

    IEEE Transactions on Haptics (2022.02.20 제출, 심사 진행 중)

    J. Han*, J. Jung*, K. Park, and G. Lee

    (공동 제1 저자)

    Contact

    010.6770.0127

    hjyoung001@gmail.com