Setup
2. 나쁜 설계의 탄생 과정
2. 나쁜 설계의 탄생 과정
2026.01.011. 목표더보기학습 목표동작하는 프로그램과 운영에서 살아남는 시스템의 차이를 이해한다.성능 문제는 코드의 문제가 아니라, 분석·설계 단계에서의 사고 오류에서 시작됨을 체감한다.시스템은 코드 위에서 동작하는 것이 아니라, 현실의 운영 환경 위에서 동작한다는 사실을 인식한다.현실을 이해하지 못한 설계는, 구현이 아무리 잘되어도 반드시 실패한다는 점을 이해한다. 개발자 관점 이해초보자의 시선카페 키오스크 앱을 만든다모바일 주문 앱을 만든다화면을 만들고 API를 연결한다실제 개발자의 관점카페 주문 업무 전체를 디지털 시스템으로 옮긴다즉, 개발자가 만드는 것은단순한 앱이 아니라 현실의 업무를 대신 수행하는 디지털 시스템이다. 2. 나쁜 설계의 탄생 과정└─ Step 1. 현실 매장 환경 파악 (출발점) 더보기매장..
3. 프로그래밍 학습 관점
3. 프로그래밍 학습 관점
2025.12.311. 의 목적→ "프로그래밍 언어"와 "S/W 개발 기술"은 프로그램을 만들기 위한 것입니다.더보기신입 개발자 지망생에게는 안타까운 사실이지만,프로그래밍은 학생, 초보자, 신입를 고려한 교육 영역이 아닙니다. "프로그래밍"은 프로그램을 만들기 위한 것입니다.그리고 좀 더 효율적으로 프로그램을 만들기 위해, 기존 기술을 개선하고, 새로운 기술이 등장합니다. 여러분이 배워야 할 프로그래밍 기술은 "현장의 개발자"를 위한 것 입니다. 여러분이 접하는 모든 프로그래밍 자료는 초보자를 위한 것이 아닙니다. 2. 을 만들어야 합니다.→ 이론 학습 >> 실습 >> 체득더보기- 프로그래밍 문법은, 실제 프로그램을 만드는 방법이 아닙니다. 영어 문법만 열심히 공부했다고 해서, 영어 소설을 쓰고, 영어 에세이를 쓰고..
1. 프로그래밍이란?
1. 프로그래밍이란?
2025.12.310. 목표더보기제 목표는 여러분이 엔지니어로 성장을 꿈꾸게 하는 것입니다. 이를 위해 3단계 로드맵을 목표로 합니다.1단계 (단기 목표): Student to Developer학생의 시선을 버리고 현업 개발자의 관점을 장착합니다.개발자의 진짜 업무를 이해하고, 기업이 원하는 방식대로 취업을 준비합니다.일반인 관점 → 개발자 관점 전환 → 개발자 업무 이해 → 포트폴리오 준비로 연결2단계 (중기 목표): Developer to Engineer취업 후에, 소프트웨어 개발자를 넘어 문제를 해결하고 견고한 시스템을 구축하는 소프트웨어 엔지니어(S/W Engineer)를 목표하도록 하는 것입니다. Engineering, 문제를 해결하기 위해 시스템 전체를 설계하고 구축하는 사람 3단계 (장기 목표): Engine..
4. 개발자, 소프트웨어, 하드웨어
4. 개발자, 소프트웨어, 하드웨어
2025.12.31개발자 ↔ 소프트웨어 ↔ 하드웨어ㄴ 관계더보기 하드웨어는 스스로 움직이지 않는다.소프트웨어가 명령하고,개발자가 그 명령을 만든다.ㄴ 전제 1. 하드웨어란?더보기기계다컴퓨터 시스템을 구성하는 물리적인 장치다.예시CPU, 메모리(RAM)저장장치(HDD, SSD)키보드, 마우스, 모니터네트워크 장비ㄴ 전제 2. 소프트웨어란?더보기소프트웨어란 하드웨어가 무엇을, 어떤 순서로, 어떻게 처리해야 하는지를 정의한 명령의 집합이다.소프트웨어는 하드웨어를 직접 바꾸지 않고,하드웨어의 동작 방식을 논리적으로 제어한다.운영체제(OS)응용 프로그램펌웨어서버 프로그램ㄴ 전재 3. 개발자란?더보기개발자는 하드웨어를 직접 조작하지 않는다.→ 소프트웨어를 통해 간접적으로 제어한다.개발자는 소스 코드를 통해 로직(소프트웨어 동작)을 ..
1.4 프로젝트 산출물 가이드
1.4 프로젝트 산출물 가이드
2025.12.311. SW 개발 표준 산출물 가이드더보기1. 코딩은 결과다. [1] 연애에서, 고백이 관계의 시작이 아니라, [2] 관계의 확인이듯 [1] 프로그래밍에서, 코딩은 프로그래밍의 시작이 아니라,[2] 분석·설계(UI·Logic·Data)를 통해 확정된 결과를 코드로 옮겨 프로그램을 완성하는 단계이다. 개발자가 하는 일은, 컴퓨터로 문제를 해결하는 것이지, 코드를 작성하는 사람이 아닙니다. 2. 프로그램의 본질과 분석 설계 단계프로그램은 본질적으로 Data(데이터)와 Logic(로직) 그리고 UI(사용자 인터페이스) 가유기적으로 연결되어 있기 때문에분석과 설계를 단계별 나누어 진행할 수는 없습니다. 경험이 쌓인 개발자가 되기 전까지, UI(사용자 인터페이스) 를 확정지은 결과를 기반으로 많은 프로그램을..
1.2 개발자의 업무
1.2 개발자의 업무
2025.12.310. 목표더보기1단계 (단기 목표): Student to Developer일반인 관점 → 개발자 관점 전환 → 개발자 업무 이해 → 포트폴리오 준비로 연결 1. 비즈니스 관점: 회사와 개발자의 관계 이해:개발자가 만든 결과물이 시장에 판매되어 회사에 수익을 가져다주고,그 수익이 다시 나의 급여로 돌아오는 '선순환 구조'를 이해합니다. 단순히 코드를 짜는 사람이 아니라,회사의 이익 창출에 기여하는 파트너로서의 공정한 계약 관계임을 인지합니다.2. 직무 관점: 소프트웨어 개발 프로세스(SDLC)의 전체 흐름 파악업무 범위 확장:'개발 = 코딩(구현)'이라는 편견을 깨고, [계획 → 분석 → 설계 → 구현 → 테스트 → 유지보수]로 이어지는 전체 과정을 이해합니다.단계별 과업 숙지:카페 앱 예시를 통해각 단계..
1.3 프로그램의 본질과 산출물
1.3 프로그램의 본질과 산출물
2025.12.310. 목표더보기1단계 (단기 목표): Student to Developer일반인 관점 → 개발자 관점 전환 → 개발자 업무 이해 → 포트폴리오 준비로 연결프로그램을 만드는 과정과 업무에 대해 감을 잡았다면,프로그램의 본질을 살펴보고, 프로그램에 어떤 업무 문서가 필요한지 이해합니다. 그리고 이를 통해 신입 개발자가 어떻게 준비해야 할지 알아봅시다. 1. 프로그램의 본질더보기 프로그램은 본질적으로 Data(데이터)와 Logic(로직)으로 이루어진다.Data프로그램이 저장하고 관리해야 할 정보(예: 사용자, 상품, 주문, 설정값) Logic데이터를 어떤 규칙과 순서로 처리할지 결정하는 판단 체계(예: 조건문, 계산, 흐름 제어) 여기에 실제 사용자 프로그램에서는 UI(사용자 인터페이스)가 추가되어 3요소 ..
공포 마케팅
공포 마케팅
2025.12.31명심해야 할 것더보기기술보다 먼저 오는 것은 인간의 필요 입니다. 현실에서 기술은 그 자체로 가치가 있는 것이 아니라,기술이 인간의 명확한 필요를 충족시키고실질적 이득을 제공할 때비로소 널리 받아들여지고 지속적으로 사용될 수 있습니다.이를 몇가지 예시를 확인해 봅시다. 사례1) Tesla FSD 실제 사용자 비율더보기Tesla의 FSD는 기술적으로 많은 기대를 모았지만, 실제 시장에서는 극소수의 차량 소유자만 선택하거나 활용하고 있습니다. 프리미엄 모델(S/X): 약 **50~60%**가 FSD 선택. Notatesla App대량 판매 모델(3/Y): 약 12~18% 수준. Notatesla App전체 Tesla 차량 평균: 약 13~19%. Notatesla App실제 자주 사용 비율: 구매자 중 15..
1.1 개발자 관점
1.1 개발자 관점
2025.12.310. 목표: 일반인의 관점과 개발자 관점 분리더보기1단계 (단기 목표): Student to Developer일반인 관점 → 개발자 관점 전환 → 개발자 업무 이해 → 포트폴리오 준비로 연결간단한 질문 하나로 확인해 보겠습니다. Q. "개발자가 되려면 무엇을 해야 하나요?" 이 질문을 받으면 대부분의 학생들은 반사적으로 이렇게 대답합니다. A. "C, Java, Python.. 문법과 이론 공부부터 해야죠" 이는 매우 자연스러운 답변이지만, 동시에 철저히 '학생'의 관점에서 나온 답변입니다.과연 현업 개발자들도 똑같이 대답할까요? 바로 이 지점이 수많은 개발자 지망생이 잘못된 방향으로 노력하게 만드는 모든 문제의 출발점입니다. 따라서 우리는 오늘,이 착각을 바로잡기 위해 '일반인의 관점..
현실 문제의 디지털화
현실 문제의 디지털화
2025.12.310. 목표: 개발자 관점으로 접근더보기프로그램은 1. 프로그램을 사용하는 이유: 개발자 관점으로 접근더보기프로그램은 현실 세계의 어떤 대상이나 행위를디지털 기술로 디지털화(Digitization) 하여인간의 편리성과 효율성을 향상시키기 위해 만들어집니다. eg) 인터넷, 이메일, 문서 프로그램, 버스 요금, 온라인 강의 즉, 현실에 존재하던 대상이나 절차를소스 코드로 구현된 프로그램으로 대체하는 것입니다. 2. 프로그램은 어디에서 출발하는가?: 더 많은 사례를 통해 프로그램의 본질을 이해합니다. 더보기프로그램은 기술이 먼저 등장해서 만들어진 것이 아닙니다.출발점은 항상 "현실"입니다.사람이 반복적으로 수행하던 행동비효율적이던 절차사람이 직접 처리하기엔 느리거나 위험한 작업→ 이러한 현실의 문제가 먼저..
<Win> 도커 설치
<Win> 도커 설치
2025.12.24
[Ubuntu] Arduino IDE 설치
[Ubuntu] Arduino IDE 설치
2025.08.14Step 1. Arduino IDE 2.x 설치더보기 Arduino IDE 2.x 특징Electron 기반:Arduino IDE 2.x는 Chromium과 Node.js를 기반으로 하는 Electron 프레임워크를 사용해 개발보안상 웹 콘텐츠와 시스템 자원을 격리하기 위한 샌드박스(sandbox) 환경을 기본 활성화하여 Linux 환경에서 권한 문제와 실행 오류가 발생함무거운 리소스 사용: Electron 기반으로 인해 기존 1.x 버전에 비해 메모리와 CPU 자원을 더 많이 사용합니다.현대적 UI/UX: VSCode와 유사한 현대적이고 직관적인 인터페이스를 제공합니다.자동완성 및 실시간 오류 검사: 코드 작성 시 문법 오류와 제안 기능이 향상되었습니다.내장 디버거 지원: 하드웨어 디버깅 기능이 추가되..