본문 바로가기

전체 글

(305)
[ AI /LLM ] Chat GPT의 다양한 기능을 사용해 보자 Chat GPT의 출현과 함께 너무나 빠르게 Chat GPT 서비스도 다양해지고 있다.하여 Deepseek 이후 변화된 간단하게 이해한 내용을 정리해 봤다.  뭔가 새롭게 시작한다면 '새로운 창'을 여세요!한 곳에서 계속 대화를 하면 안 된다. 왜냐하면 정보가 계속 누적되기 때문이다.과거의 데이터를 기반으로 계속 질문에 대한 답을 할 것이고 그것이 내가 원하는 답변의 질을 낮출것이다.이유는 간단하다.현재 이야기하고 있는 창에 정보가 누적되기 때문이다. 아래의 색상들은 토큰(token)이라고 볼수 있다.이렇게 대화를 할 수록 토큰들이 쌓이기 된다. 토큰은 뭘까?인터넷에서 긁어 모은 테스트 정보를 bit를 이용해서 byte로 변환시킨다.그리고 다시 8bit를 활용해서 256으로 정보를 변화시킨다.그것을 토큰..
[expo /Applestore ] resloving App tracking transparency issue 총 3곳에 transparency 확인을 위한 수정 // constants/ads.tsimport { Platform } from 'react-native';import { requestTrackingPermissionsAsync } from 'expo-tracking-transparency';import mobileAds from 'react-native-google-mobile-ads';export const initializeAdMob = async () => { try { if (Platform.OS === 'ios') { const { status } = await requestTrackingPermissionsAsync(); console.log('Tracking permission statu..
[ BE/DB ] SQLlite:기본편 2편 1. IIF (Immediate If)조건식의 참/거짓 여부에 따라 다른 값을 반환하는 함수입니다. SQL 표준은 아니지만, SQLite에서 간편하게 조건부 로직을 구현할 때 유용합니다.구문: IIF(조건식, 참일_때_값, 거짓일_때_값)-- products 테이블에서 price가 100보다 크면 'High', 아니면 'Low'를 반환하여 price_category 열로 표시SELECT product_name, price, IIF(price > 100, 'High', 'Low') AS price_categoryFROM products; 2. AS (Alias)테이블 또는 열에 임시 이름을 부여합니다. 쿼리를 더 읽기 쉽게 만들거나, 복잡한 계산 결과에 의미 있는 이름을 붙일 때 사용합니다.구문:열 별칭:..
[ Skill/Tool ]새로운 인사이트(Insight)를 얻을 수 있는 도구(Feat.Obsidian) 계층구조로 연결되는 것인 아닌 지식의 네트워크적 연결최근 김정운 박사의 영상을 보면서 지식의 네트워크적 연결이 인상적이였다.통상적으로 우리가 학교에서 배운 지식의 체계는 계층적인다.그 가장 대표적인 예가 종(Species)일 것이다.생명 > 역 > 계 > 문 > 강 > 목 > 과 > 속 > 종회사 > 회장 > 사장 > 팀장 > 차장/과장 > 대리 > 주임 > 사원 이제는 데이터의 연결 시대 이제는 더이상 데이터가 계층구조로만 연결되지 않는다. 하나의 구심정을 바탕으로데이터 가 분자적으로 연결된다. 연결이 될 수록 어떠한 맥락과 의미를 연결할 수 있다. ObsidianObsidian의 핵심은 상호 연결된 노트 네트워크를 만들고 관리할 수 있도록 설계된 놀랍도록 다재다능한 무료 애플리케이션입니다.  딱딱한 ..
[ 심리/Apple ] 디바이스의 한계를 넘기 위한 Apple's iPhone UI 노력 이번 글에서는 APPLE iPhone UI의 디자인을 살펴보면서그들의 디자인이 크게 어떻게 변화했는지를 고민해보려고 한다.그들이 어떻게 디바이스(스마트폰)의 한계를 극복하려고했는지더 정확하게는 3D세상에 사람들을 어떻게 2D세상으로 넣으려고 했는지 본 글에서 3D는 우리가 살아가는 현실 세계의 공간감, 입체감, 다양한 감각적 경험을 의미하며, 2D는 스마트폰과 같은 평면적인 화면과 인터페이스를 의미한다.   2007 iPhone 출시최초의 iPhone은 기존의 관습에서 급진적으로 벗어난 제품이었죠. 경쟁사의 물리적 키보드와 투박한 인터페이스를 버리고 대형 터치스크린과 단일 홈 버튼을 채택했다.곡선형 알루미늄 뒷면과 검은색 플라스틱으로 포인트를 준이 미니멀한 디자인은 즉각적인 인기를 끌었다.  최초의 iP..
[ UI / eyes-tracking ] 왜? F자로 홈페이지를 구해야하는가? 인터넷을 종종 검색하다보면 UI를 만들 때, F 형태로 홈페이지를 만들라고 한다.왜 그럴까?결론부터 말하면, 사람들이 컴퓨터 또는 모바일 스크린에서 정보를 습득할 때,"F"형태를 정보를 습득한다는 연구 결과가 나왔기 때문이다. Eyes-tracking 왜 사람은 F자로 글을 읽을까?사실, 사람들 본능적으로 F자로 정보를 습득하지 않는다. 그냥 문화적인 배경이 들어있다.우리가 책읽는 습관을 생각해보면 이해가 빨라진다.우리는 왼쪽 상단에서 오른쪽 하단으로 글을 읽는다. 이러한 문화적 습관이 F자로 정보를 습득하게만든 배경이다. 또한, 신문을 읽을때를 생각해보면 좋다. 신문의 경우는 이미지가 들어있기 때문에가장 website와 유사한 정보구조를 가지고 있다. 따라서, 큰 제목을 읽고 다음에 이미지가 있고 그다..
[ UI ] UI를 그릴 때 고려해야 할 사항 우리는 웹/모바일 UI를 그릴 때 다양한 부분을 고려해야한다.모바일은 2D 세계이고 우리가 사는 세계는 3D 세계이다.따라서, 그 간근에서 오는 부분을 최소화하는 것부터 시작하는 것이좋은 UI의 시작이라고 생각한다. 아래의 원칙 7가지는 고민 및 AI의 도움을 추가 보안된 주간적인 자료임을 말씀드립니다. 고려해야 할 주요 UI 디자인 원칙1. 시각적 계층 구조좋은 UI는 크기, 색상, 대비, 간격을 사용하여 중요한 순서대로 콘텐츠를 사용자에게 안내해야 합니다.연구 근거: 시각적 계층 구조는 게슈탈트 심리학 원리와 인지 부하 이론에서 비롯됩니다. 닐슨 노먼 그룹의 연구에 따르면 사용자는 인터페이스를 완전히 읽지 않고 스캔하는 것으로일관되게 나타났습니다.이유우리의 뇌는 인지 자원이 제한되어 있습니다. 좋은 ..
[ React ] 포트폴리오 상세 페이지 추가하며 고민했던 문제들 포트폴리오 리뉴얼 수행하기.포트폴리오 뉴리얼을 수행하려고 한다. 이유는 내 포트폴리오가 사람들에게설득력이 부족한 거 같다. 하여 설득력을 높일 수 있도록 프로젝트 상세 페이지리를넣을려고 한다.아래는 동기부여를 만든 영상이다.영상 URL은 맨 아래쪽 지금부터 상세 페이지를 만들면서 직면했던 문제를 어떻게 고민하고 해결했는지간략하게 기록해보았다.   고민지점1. React  vs 다른 Framework고민난이도 : ★★★★React 일단 React를 그대로 사용하기로 했다. 이유는 React만 사용하여 서비스를 해 보는 것도좋은 경험이라고 생각한다. 몇몇 개인 사이트는 이미 Next js를 통해서 작동하고 있다.따라서, 일단은 React를 지속적으로 사용하면서 React만 사용할 때 직면하는 문제를해결해 나..
[ 관계/팀 ] 현재 순간 순간 옆에 있는 사람들과 즐겁게(Feat. 호스피스 병실이야기) 경기도 호스피스 병실에서 죽음을 맞이하는 환자들에게 듣는 이야기호스피스 병원은 '임종을 맞이하는 장소' 즉 죽음을 앞둔 환자들이 치료보다는 죽음을 받아들이고 수용하는 공간을 뜻한다.이야기의 핵심은 지금 이순간 옆에 있는 사람 또는 팀원에게 너무 가혹하지말 것.사는 것 순간 순간의 합이고 현재의 즐거움. 이 글은 아래의 기사를 바탕으로 작성됐습니다. "죽기 전 후회하는 10가지' 같은 건 없어…인간관계 좋을수록 편히 눈감아요" | 한국일보경기 용인의 천주교수원교구 동백성루카병원 2층 로비에서 이달 5일 작은 음악회가 열렸다. 관객은 환자와 보호자들. 이곳은 독립형 호스피스www.hankookilbo.com  “고통스러운 생의 소멸 과정에서도 환자에게 환희의 순간을 만들어줄 수 있다는 걸보여줬으니까요. 그런..
[ Next / loading ] Nextjs에서 대표적으로 사용되는 Loading Next js 에는 여러 가지 방식의 Loading 있다. 이것들을 어떻게 작동하는지 간략하게 알아보고 상황별 사용을 알아 보려고 한다.   요약기능 분류기능핵심 특징성능 영향자동 라우트 레벨 로딩폴더- 라우트 탐색 시작 시 자동 활성화 - 자동 제어 방식- 초기 로딩 화면 즉시 표시(TTFB(Time To First Byte) 개선 효과)eg. 간단한 페이지 전체 로딩 화면명시적 컨포넌트레벨 로딩Suspense fullback - 특정 컴포넌트 영역 로딩 상태 격리 및 관리 - 컨포먼트 래핑 제어 방식- 부분 화면 로딩으로 사용자 경험 향상eg. 복잡한 대시보드, 특정 섹션 데이터 패칭, 부분 업데이트스트리밍기반콘텐츠 로딩@defer 디렉티브- 서버 컴포넌트 렌더링 스트리밍 방식으로 개선 - 디렉티브 ..
[ node ] 기초 CRUD (Feat.폴더구조 이해) Node js를 통해서 간단한 CRUD를 해보면서 간단하 폴더구조도 경험해 보기.//주의Javascript엔진은 한 줄씩 읽고 위에서 아래로 내려오기 때문에 parse,config 같은 건 사전에 미리 위쪽에 배치해야한다.npm install express(필수)TipNode를 활용한 백만들기 할 때, 폴더 구조한 프로젝트에서 한 번에 npm 사용하기. project 이름                    ㄴfrontend  ㄴbackend  ㄴnode_modulespackge.json..."scripts: {  "dev" : npm backend/server.js".  },...      Ogranzing : routers + controllerrouter// 폴더 구조backed  ㄴ ...  ㄴ r..
[ BE / DB ] SQLlite:기본 1편 SQL과 NoSQLSQL 계열 :공통적으로 표준 SQL기반.MySQL, PostgreSQL, Oracle의 PL/SQL, MS SQL의 T-SQL 등 각 DBMS마다 고유한 확장 언어를 제공NoSQL 계열:- 문서형: MongoDB의 MQL, CouchDB의 MapReduce/Mango 쿼리- 키-값: Redis의 명령어 기반 인터페이스- 컬럼형: Cassandra의 CQL, HBase(Java API/Hive)- 그래프형: Neo4j의 Cypher, Amazon Neptune의 Gremlin/SPARQL- 기타: Elasticsearch의 Query DSL, DynamoDB의 API/PartiQL  SQLNoSQL데이터 모델데이터를 테이블(행과 열) 형태로 저장합니다.데이터 간의 관계를 명시적으로 정의..