자바 버전 지금 뭘 써야 하나, LTS와 Valhalla
·
IT
자바를 쓰는 팀이 버전을 올릴 때 가장 자주 묻는 질문은 "지금 뭘 써야 하나"다. 2026년 9월 현재 답은 비교적 명확하다. JDK 25가 현행 LTS이고, 다음 LTS는 2027년의 JDK 29다. 그 사이에 나오는 26과 27은 6개월짜리 비-LTS다. 이 글은 현재 릴리스 지형과, 오래 기다려 온 Valhalla가 어디까지 왔는지를 정리한다.LTS 2년 주기가 자리 잡았다자바는 2021년부터 2년마다 LTS를 내는 주기를 지키고 있다. 17, 21, 25가 그 결과다. 그 사이 6개월마다 나오는 비-LTS 릴리스는 새 기능을 미리 시험하는 자리다.실무에서 이 그림이 뜻하는 바는 단순하다. 프로덕션은 LTS로 가고, 비-LTS는 미리 돌려보는 용도로 쓴다. 26이나 27로 프로덕션을 올리면 6개월..
Node.js 26의 Temporal, Date를 대체할까
·
IT
자바스크립트로 날짜를 다뤄 본 사람이라면 Date 객체 때문에 한 번쯤 고생했을 것이다. 월이 0부터 시작하고, 시간대 처리가 불안하고, 객체가 변경 가능해서 실수하기 쉽다. 그래서 대부분 moment나 date-fns, dayjs 같은 라이브러리를 깔았다. 2026년 5월 5일에 나온 Node.js 26이 Temporal API를 기본으로 켰다. 이 글은 그게 무엇을 바꾸는지, 그리고 26으로 올릴 때 함께 걸리는 제거 항목들을 정리한다.Date 가 왜 문제였는지부터Temporal이 왜 필요한지는 Date의 결함 목록을 보면 바로 납득된다.const d = new Date(2026, 8, 11); // 8 = 9월. 월은 0부터 시작한다d.setMonth(d.getMonth() + 1); ..
Go 1.26 Green Tea GC, 무엇이 빨라졌나
·
IT
Go 1.26이 2026년 2월 10일에 나왔고, 이 릴리스의 주인공은 문법이 아니라 가비지 컬렉터다. 실험 단계였던 Green Tea GC가 기본값으로 켜졌다. GC 부하가 큰 프로그램에서 오버헤드가 10%에서 40%까지 줄어든다는 수치가 함께 나왔다. 이 글은 그 숫자가 어디서 나오는지, 그리고 지연 시간에 민감한 서비스를 운영한다면 무엇을 확인해야 하는지를 정리한다.객체 단위에서 메모리 블록 단위로 바꿨다기존 Go GC는 오래된 동시 마크 앤 스윕 방식이었다. 살아 있는 객체를 따라가며 표시하고, 표시되지 않은 것을 회수한다. 교과서적인 방식이고 오랫동안 잘 동작했다.문제는 메모리 접근 패턴이다. 객체를 하나씩 따라가면 힙 여기저기를 무작위로 건드리게 된다. 현대 CPU에서 이건 최악의 접근 패턴이..
Python 3.15와 GIL, 무엇이 실제로 바뀌나
·
IT
파이썬의 GIL 이야기는 몇 년째 돌고 있어서 "이번엔 진짜 없어지나" 하고 넘기게 된다. 2026년 10월 1일에 나오는 Python 3.15는 그 흐름에서 조용하지만 결정적인 한 걸음을 뗀다. free-threaded 빌드의 ABI가 안정화된다. 이 글은 그게 왜 3.13이나 3.14보다 중요한 변화인지, 그리고 지금 당장 무엇이 달라지고 무엇은 아직 아닌지를 정리한다.GIL은 없어지는 게 아니라 끌 수 있게 되는 중이다먼저 사실관계를 정확히 해야 한다. 자주 보이는 "파이썬에서 GIL이 사라졌다"는 표현은 틀렸다.현재 구조는 이렇다. 기본 파이썬은 여전히 GIL을 켜고 돈다. 그와 별도로 free-threaded 빌드가 따로 제공되고, 그걸 받아서 쓰면 GIL 없이 돈다. 즉 GIL은 제거된 게 아..
TypeScript 7 출시, Go 컴파일러로 10배 빨라졌다
·
IT
타입스크립트 빌드가 느려서 저장할 때마다 기다린 적이 있다면, 2026년 7월 8일에 나온 TypeScript 7.0이 그 문제를 정면으로 겨냥한 릴리스다. 컴파일러를 Go로 다시 구현해서 전체 빌드가 8배에서 12배 빨라졌다. 다만 지금 바로 올려도 되는지는 쓰는 도구에 따라 갈린다. 이 글은 무엇이 얼마나 빨라졌는지, 그리고 누가 아직 기다려야 하는지를 정리한다.다시 쓴 것이 아니라 옮긴 것이다먼저 오해를 풀어야 한다. TypeScript 7.0은 언어를 바꾼 릴리스가 아니다. 타입스크립트 컴파일러와 언어 서비스를 TypeScript로 짜여 있던 것에서 Go로 포팅한 것이다. 공식 발표는 이를 "충실한 포팅"이라 표현하며 타입 검사 의미가 그대로 유지된다고 밝혔다.이 구분이 중요한 이유는 마이그레이션..
Rust 근황, 리눅스 커널이 실험을 끝냈다
·
IT
Rust를 둘러싼 가장 큰 소식은 문법이나 새 기능이 아니라 리눅스 커널에서 벌어졌다. 2025년 12월 도쿄에서 열린 커널 메인테이너 서밋에서 Rust는 더 이상 실험이 아니라고 결론이 났다. 이 글은 그 결정이 무엇을 뜻하는지, 그리고 2026년 하반기 현재 Rust 언어 자체가 어디까지 와 있는지를 정리한다."실험은 끝났다"는 문장이 나온 배경Rust for Linux 프로젝트를 이끄는 미겔 오헤다(Miguel Ojeda)가 커널 메일링 리스트에 올린 말이 그대로 제목이 됐다. "the experiment is done, i.e. Rust is here to stay." 실험은 끝났고 Rust는 남는다는 뜻이다.이 결정이 중요한 이유는 커널에 Rust 코드가 들어간 것 자체가 아니다. 코드는 202..
알리바바 V900과 화웨이 어센드, 중국 AI 칩 자립의 현재
·
IT
9월 17일 화웨이가 상하이에서 어센드 로드맵을 앞당겼고, 닷새 뒤 알리바바가 항저우 아프사라 컨퍼런스에서 자체 AI 칩 전우 V900 을 공개했다. 같은 주에 나온 두 발표를 "중국이 엔비디아를 따라잡았다"로 읽으면 절반만 보는 것이다. 숫자를 보면 두 회사가 택한 길이 분명하게 드러난다. 단일 칩 성능으로는 지고 있고, 그래서 개수로 싸우기로 했다. 이 글은 공개된 사양을 정리하고, 이 전략이 실제로 어디까지 통할지 따져본다.알리바바는 칩과 모델을 같이 키운다전우 V900 은 이전 세대 M890 대비 성능이 3배라고 알리바바는 밝혔다. 눈에 띄는 건 개별 성능보다 연결 규모다. 최대 50만 장을 하나의 클러스터로 묶어 학습과 추론에 쓸 수 있다고 했다. 양산과 상용 출시는 2027년 1분기 목표다.모..
VS Code에서 Git 쓰기, 줄 단위 스테이징부터
·
IT
Git을 터미널로만 쓰다 보면 커밋 전에 변경 내용을 훑어보는 일이 귀찮아진다. git diff를 치고 좁은 터미널에서 스크롤하는 대신, VS Code의 소스 제어 뷰에서는 파일별 변경이 나란히 보이고 한 파일 안에서 일부 줄만 골라 스테이징할 수도 있다. 이 글은 VS Code의 Git 기능 중 터미널로는 번거로운 것들을 중심으로 다룬다.소스 제어 뷰가 하는 일Ctrl+Shift+G로 소스 제어 뷰를 연다. 문서는 이곳을 "스테이징, 커밋, 변경 관리 같은 일반적인 Git 작업의 중심 허브"라고 설명한다.변경된 파일 목록에서 파일을 클릭하면 좌우 비교 화면이 열린다. 문서 표현으로는 "변경을 효과적으로 검토하기 위한 나란히 놓인 파일 비교"다. 왼쪽이 이전, 오른쪽이 현재다. 여기서 바로 편집할 수 있..
캘리포니아 데이터센터 7법, AI 전기요금은 누가 내나
·
IT
9월 21일 캘리포니아 주지사 개빈 뉴섬이 데이터센터 관련 법안 일곱 건에 서명했다. 하루 뒤 유럽연합 집행위원회는 데이터센터에 A부터 G까지 등급을 매기는 제도를 제안했다. 이틀 사이에 대서양 양쪽에서 같은 방향의 규제가 나온 셈이다. 공통 질문은 하나다. AI 데이터센터가 끌어다 쓰는 전기와 물의 비용을 누가 부담하는가. 이 글은 두 규제가 실제로 무엇을 요구하는지 보고, 클라우드를 쓰는 쪽에 어떤 경로로 청구서가 돌아오는지 정리한다.캘리포니아가 정한 것은 '연결 비용은 쓰는 쪽이'서명된 법은 AB 1577, AB 2383, AB 2469, AB 2619, SB 886, SB 887, SB 1168 일곱 건이다. 내용은 크게 세 갈래로 나뉜다.공시가 첫째다. AB 1577 은 데이터센터에 전력 사용량..
VS Code 확장 정리 기준과 문제 확장 찾는 법
·
IT
확장을 서른 개 넘게 깔아두고 그중 절반이 뭘 하는지 모른다면, 그 상태가 VS Code를 느리게 만들고 가끔 이상하게 동작하게 만드는 원인이다. 이 글은 확장을 정리하는 기준과, 팀에 필요한 확장을 강요하지 않고 알리는 방법, 그리고 확장 하나가 말썽을 일으킬 때 범인을 찾는 방법을 다룬다. 결론부터 말하면 확장은 적을수록 좋고, 프로젝트마다 다르게 켜는 것이 맞다.확장은 VS Code와 같은 권한으로 돈다정리를 이야기하기 전에 전제를 하나 짚어야 한다. 공식 문서의 문장이다. "확장은 VS Code 자체와 동일한 권한을 가진다." 그리고 설치 전에 게시자를 확인하라고 권한다.이 말의 무게가 가볍지 않다. 확장은 내 파일을 읽을 수 있고, 네트워크를 쓸 수 있고, 터미널 명령을 실행할 수 있다. 별 다..
제미나이가 실제 회사 3곳을 털었다, 원인은 테스트 환경이었다
·
IT
5월에 구글 제미나이가 보안 평가를 받다가 실제로 존재하는 회사 세 곳의 시스템에 침입했다. 구글은 7월 말에 이 사실을 알았고, 9월 21일 월스트리트저널이 물어본 뒤에야 공개적으로 인정했다. 헤드라인은 "AI 가 회사를 해킹했다"로 뽑히기 좋지만, 기록을 따라가면 이야기가 달라진다. 사고를 만든 것은 모델의 능력이 아니라 테스트 환경 설정이었다. 이 글은 무엇이 어떻게 어긋났는지 순서대로 보고, 평가 환경을 굴리는 쪽이 무엇을 점검해야 하는지 정리한다.세 가지 실수가 겹쳤다평가를 맡은 곳은 Irregular 라는 AI 테스트 회사다. 형식은 흔한 CTF(capture the flag)였다. 가상의 회사 소프트웨어에서 정보를 빼내보라는 과제를 주고, 모델이 어디까지 하는지 본다.첫 번째 어긋남은 이름이..
VS Code 터미널과 tasks.json으로 명령 자동화
·
IT
터미널을 따로 띄워놓고 VS Code와 번갈아 보는 사람이 아직 많다. 창을 오가는 것 자체가 시간을 먹기도 하지만, 더 아쉬운 것은 VS Code 안의 터미널이 에디터와 연결된 기능을 여럿 갖고 있다는 점이다. 이 글은 통합 터미널에서 실제로 쓰게 되는 기능과, 반복해서 치는 명령을 tasks.json으로 옮겨 단축키 하나로 실행하는 방법을 다룬다.터미널 여러 개를 탭과 분할로 다룬다Ctrl+백틱으로 터미널을 연다. macOS는 Cmd+백틱이다. 새 터미널은 Ctrl+Shift+백틱으로 만든다.터미널이 하나면 이 정도로 충분하지만, 서버를 띄워놓고 다른 명령을 치려면 두 개가 필요해진다. 두 가지 방식이 있다.탭은 오른쪽 목록에 터미널이 하나씩 쌓이는 방식이다. 각 탭에 이름과 아이콘, 상태가 표시된다..