NEW

더보기
AI코딩 AI 활용 팁

2026.5 기준 AI를 잘 쓰기위한 팁을 정리해봤다. 프로그래머가 아니더라도 이해할 수 있게 쓰려고 노력했다.이해하기AI의 성능Opus 4.5까지만 해도 AI 아직 애매하다고 생각했다. Opus 4.6에서 크게 좋아졌고 AI를 활용하는 방법에 대한 연구 역시 많이 진전이 됐다.아직도 AI가 멍청하다고 하는 사람이 있다면, 나는 아마도 그 사람이 AI를 잘 못 써서 그런 것이라고 얘기할 것이다. (사실은 속으로만 생각ㅎ)지금(2026.5)의 AI는 굉장히 똑똑하고 빠르지만, 일머리는 하나도 없는 신입사원 같은 녀석이다. 결국 AI를 잘 쓰려면 시스템, 가이드라인 따위가 중요하다. 프롬프트를 이해하자 프롬프트는 AI에게 건네는 요청서다.위에서 AI를 일머리 없지만 일처리는 빠른 신입사원이라고 했다.회의..

AI코딩 Matt Pocock 신규 스킬 4종

개요Matt Pocock의 최근 강연을 보고 그의 철학과 스킬 설계에 크게 감명받았다.마침 몇 시간 전에 따끈따끈한 스킬 소개 영상이 추가되어 이를 다뤄보고자 한다. 이하 AI가 쓴 내용이고 몇번 더 사용후에 글을 다듬을 예정 추가된 스킬은 아래와 같다./handoff/prototype/review/writing/handoff와 /prototype은 새로 추가된 안정 스킬이고, /review와 /writing은 아직 in-progress 영역에 있는 실험적 스킬이다.그리고 /writing은 하나의 스킬 파일이 아니라 writing-fragments, writing-beats, writing-shape 세 개로 나뉜다.유튜브 : https://youtu.be/DNqsMXH6Eog?si=tTp7z2T3dMD..

AI코딩 결국 기초가 중요하다 - Matt Pocock 강의

"Software Fundamentals Matter More Than Ever" — Matt Pocock https://youtu.be/v4F1gFy-hqg?si=1ZYrVgRvvVX__4gc 위 강의를 정리한 것이다.Spec to Code지금 현재 (2026년 5월) Specs-to-code movement가 대세이다.참고 : 2026.03.02 - [AI코딩] - 스펙 주도 개발 (Spec Driven Development, SDD) Spec을 작성하고 AI한테 일을 시킨다. 그리고 코드를 보지 않는다. 근데 결국에 보게 된다. 왜냐면 문제가 생기기 때문이다.문제가 생기면 다시 Spec을 수정하고 컴파일을 돌린다. 그렇지만 이런 식으로 하다 보면 점점 AI는 나쁜 코드를 짜다가 이내 쓰레기 같은..

AI코딩 하네스 엔지니어링

2026년 하네스 엔지니어링 논의 정리2026년 들어 OpenAI, LangChain, Anthropic은 에이전트 관련 글에서 공통적으로 harness를 전면에 두고 있다. 표현은 조금씩 다르지만, 프롬프트만으로 설명하기 어려운 실행 구조, 평가 구조, 정리 루프를 함께 다룬다는 점은 비슷하다.이 글은 각 회사가 하네스를 어떻게 설명하는지, 그 설명을 어떤 층위로 읽을 수 있는지 정리한 메모다.하네스를 어떻게 정의하는가LangChain은 2026년 3월 10일 글에서 하네스를 "모델이 아닌 모든 코드, 설정, 실행 로직"으로 정의했다. 이 정의를 따르면 하네스에는 시스템 프롬프트만이 아니라 도구 설명, 샌드박스, 브라우저, 파일시스템, 상태 저장, 오케스트레이션, 컨텍스트 관리, 재시도 로직, 린트, ..

AI코딩 2026 에이전틱 코딩 트랜드 리포트 by Anthropic

원문: Anthropic, 2026 Agentic Coding Trends Report — How coding agents are reshaping software development 전문이 아닌 일부만을 발췌 소프트웨어 개발이 "코드를 직접 쓰는 일"에서 "에이전트를 오케스트레이션하는 일"로 바뀌고 있다. 그렇다고 AI가 사람을 대체하는 건 아니다. 연구 결과에 따르면 개발자는 업무의 60%에 AI를 쓰지만 "완전 위임"이 가능한 작업은 0~20%에 불과하다. AI는 대체가 아니라 긴밀한 협업 도구다. Anthropic이 2026년을 정의할 트렌드 8가지를 정리했다. 머리말 — 보조에서 협업으로개발자들이 AI와 실제로 어떻게 일하는지 연구해보면 중요한 뉘앙스가 드러난다. 이 변화는 본질적으로 협업적이..

AI코딩 스펙 주도 개발 (Spec Driven Development, SDD)

Context Engineering이 전부다AI에게 코드를 작성하게 하려면, 결국 맥락(Context)이 전부다.같은 AI 모델이라도 주어진 맥락의 품질에 따라 결과물이 천지차이다.예를 들어, AI에게 "적 AI 만들어줘"라고만 하면 AI는 대충 Update()에서 Transform.LookAt()하고 MoveTowards()하는 코드를 뱉어낸다. 하지만 이런 맥락을 알려주면 어떨까?우리 프로젝트는 NavMesh 기반 길찾기를 쓴다적 상태 관리는 FSM으로 하고 있다감지 범위는 Physics.OverlapSphere로 처리한다공격 판정은 서버에서 한다전혀 다른 수준의 코드가 나온다.이게 바로 Context Engineering이다. AI에게 올바른 맥락을 설계하고 전달하는 것. 프롬프트 엔지니어링이 "어..

ECS(Unity) ECS Hybrid - Companion GameObject

ECS 관련 기초 글 :ECS (Entity Component System)DOTS 1.0 - 기본 (Component, System, Aspect, Job)Entities - 컴포넌트 구조왜 Hybrid가 필요한가ECS는 성능이 좋다. 데이터가 청크에 연속으로 저장되어 캐시 친화적이고, Burst 컴파일 + Job 시스템으로 병렬 처리도 된다. 그런데 문제가 있다.유니티의 모든 기능이 ECS로 제공되지는 않는다.Animator, ParticleSystem, Light, VFX Graph, AudioSource 같은 것들은 모두 MonoBehaviour 기반이다. 이것들은 managed 객체이며 ECS 청크에 struct처럼 넣을 수가 없다.예를 들어, ECS로 적 유닛 1000마리를 시뮬레이션한다고 치..

ECS(Unity) ECS에서 Behavior Tree 구현하기 (ft. xNode)

ECS Behavior Tree ECS환경에서 Behavior Tree를 구현하려면 마땅한 패키지(에셋)이 없다.나는 xNode를 이용하여 손쉽게 구현했다. (https://github.com/Siccity/xNode, 무료임) xNode 만들기public abstract class BTNode : Node { [Input] public BTNode parent; [Output] public BTNode children; public float randomWeight = 1f; public virtual NodeType Type => NodeType.Action; public virtual int GetNodeData() => 0; } 우선 기본이 ..

유니티 각종 패키지 설치모음

기본적으로 git URL로 받음VContainerhttps://github.com/hadashiA/VContainer.git?path=VContainer/Assets/VContainer UniTaskhttps://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTaskNuget For Unityhttps://github.com/GlitchEnzo/NuGetForUnity.git?path=/src/NuGetForUnity R3 먼저 Nuget For Unity 설치 R3 설치https://github.com/Cysharp/R3.git?path=src/R3.Unity/Assets/R3.Unity 그다음 R3 패키지 설치 (nuget에서 r..

ECS(Unity) BlobAsset의 개념

상황 ECS로 심리스 오픈월드를 구현하고싶다. 자연스럽게 지역과 지역을 넘나드려면 로딩 속도가 생명이다. 게임 데이터에는 여러가지가 있겠지만 NavMesh만 우선 생각해보자. 게임 속에는 공중유닛, 수영할 수 있는 유닛, 지상유닛 등으로 나뉘어져 각각 NavMesh가 필요하다. NavMesh는 굉장히 간략하게 보자면 폴리곤의 집합과 인접 데이터의 모음이라 할 수 있으며 이 데이터들의 길이는 제각각이다. 그럼 이걸 어떻게 구현할 것인가? DynamicBuffer?public struct NavPolygonElement : IBufferElementData{ public int StartVertexIndex; public int VertexCount; public int NeighborS..

C# Parallel.Foreach

2022.04.24 - [언어/C#] - CLR 스레딩3 - 태스크(Task) CLR 스레딩3 - 태스크(Task)2022.04.17 - [언어/C#] - CLR 스레드 단순 계산 작업 태스크 앞선 글에서 계산 중심의 비동기 작업을 주행하기 위해 ThreadPool 의 QueueUserWorkItem을 호출하는 방식을 소개헀다. 그러나 이 방법은 작업 완료tsyang.tistory.com Parallel 예전에 책에서 보고 이런 거 까지 쓰겠어? 하고 넘어갔다. 근데 꽤 유용하다. Parallel은 자체적으로 좋은 로드밸런서, 스케줄러, 파티셔너를 포함하고 있으며 예외 처리도 수월하게 해준다. Parallel엔 Invoke, For, Foreach 메서드가 존재하는데 얘네는 전부 동기 메서드이다. 즉..

유니티 Native Memory (ft. NativeList)

Native Memory기본Native Memory란 무엇인가? 유니티 엔진 내부의 C/C++ 코어가 쓰는 메모리 영역이다. 엔진 내부에서 쓰는 데이터들이 올라간다. 당연하게도, GC에서 자유롭다. 보통은 텍스처, 메쉬, 물리엔진, 오디오, 에셋로드 등이 Native Memory 영역을 이용한다. 메모리 세팅Project Settings -> Memory Settings를 가면 다양한 메모리 관련 할당 정책의 값들을 정할 수 있다. XXXBlockSize라는 값들이 많은데 이는 유니티가 힙 메모리에 자리가 부족할 때, OS에 메모리 추가 할당을 요청하는 단위이다. 만약 메모리가 제한적이라 최대한 알맞게 써야한다면 이 값을 줄일 수 있고, 대규모 메모리 사용이 가능하다면 이 값을 키워서 불필요한 요청을..

ECS(Unity) ECB + sortKey

ECB 유니티 ECS에는 EntityCommandBuffer(ECB)라는 개념이 있다. 엔티티의 생성/파괴, 컴포넌트 추가/제거 등은 구조변경(Structural Change)및 Sync Point를 만들어서 성능에 악 영향을 준다. 특히나 병렬 Job에서는 구조 변경 자체가 불가하다. 그래서 여러 Job등에서 구조변경을 유발하는 명령들을 ECB에 모아두고 한번에 Playback한다. 이렇게 하면 병렬 Job에서도 구조 변경이 안전하게 가능해지고, Sync Point를 한 번만 만들어내서 성능에도 좋다. ECB는 두 가지 방법으로 사용할 수 있는데, 다음과 같다.그때그때 직접 만들기이미 있는 걸 쓰기 아래와 같이 체력이 0이하인 Entity를 파괴하는 Job이 있다. 이 Job은 병렬로 실행할거라 ..

C# C#의 메모리 정렬 (StructLayout)

2021.04.18 - [이론/일반] - 객체 메모리, Object Alignment 객체 메모리, Object Alignment#include class AAA { private: int intA; int intB; double doubleA; }; class BBB { private: int intA; double doubleA; int intB; }; int main() { AAA a; BBB b; std::couttsyang.tistory.com 메모리 정렬 및 False Sharing에 대한 내용은 위 글 참고 StructLayout StructLayout 어트리뷰트를 struct/Class에 달아서 레이아웃을 지정해줄 수 있다. [StructLayout(LayoutKind.Sequentia..

C# 성능 측정 - DotnetBenchmark 퀵세팅

DotnetBenchmark 프로젝트에 설치하기프로젝트 폴더 (csproj있는 폴더)에다가 cmd를 켠다.다음을 입력한다 'dotnet add package BenchmarkDotNet' DotnetBenchmark 사용하기Build Configuration을 Release모드로 바꿔준다.Test할 메서드에 [Benchmark]어트리뷰트를 달아준다.메모리 사용량도 측정하고 싶다면 MemoryDiagnoser도 달아준다.[MemoryDiagnoser]public class SomeTest{ private const int TestSize = 1024; [Benchmark] public void TestAlloc() { var list = new List(); ..