본문 바로가기

분류 전체보기293

여름을 나기위한 내돈내산 선풍기들 리뷰(feat.목풍기/손풍기) 기본형선풍기, 중형선풍기, 탁상용 미니 선풍기, 손풍기, 목풍기까지 리뷰를 해보려고 한다 1. 기본형 선풍기* 큰버튼일단 발(?)로 키고 끌수있도록 매우 큰 버튼으로 구성되어있다직관적이게 왼쪽이 끄는것, 오른쪽이 키고, 계속 누를수록 바람세기가 변한다기본으로 키게 되면 중에서 시작한다 * 소버튼그리고 바람종류는 일반풍, 자연풍, 수면풍이 있다일반풍: 계~속 꾸준히 같은 바람을 쏴주는것 - 비추자연풍: 자연바람처럼 자기가 알아서 어느정도 조절해준다 - 평소 이걸로 두고 사용수면풍: 잠잘때 쏴주는 바람으로, 진짜 감기는 안걸리는데, 덥지는 않을정도로 얘가 세기를 또 조절해준다 사실 자연풍하고 수면풍은 크게 차이를 못느끼는데 그래도 보통 자연풍으로 두고 잠잘때만 수면풍으로 두고 쓴다일반풍은 왜 안쓰냐? 사람이.. 2022. 7. 20.
Mixed Content: Let's Encrypt! 등으로 Https를 적용 후 api요청을 http로 보내면 발생하는 브라우저 보안 에러이다 HTTS는 HTTP의 TCP/IP 통신에 SSL(Secure Socket Layer)를 한층 더 위에 얹은 것이다 공개키알고리즘으로 CA(인증 기관)과 암/복호화를 통해 본인인증이 맞는지 검증을 한다 브라우저 내의 자물쇠 모양을 클릭하면 알수있다 우선 이 Mixed Content에러는 https에서 http로 요청을 보낼때 발생한다 해결방법은 4가지가 있다 1. API 요청을 http://~~~ 가 아닌 https://~~~ 로 요청해서 처리하기 2. 페이지의 meta 태그에 내용 추가 -> 아래의 의미는 안전하지 않은 요청들을 https로 업그레이드 해서 요청하겠다는 뜻이다 1번은 하나.. 2022. 6. 27.
예전 블로그에 있던 화면가리기 For Windows 파일 티스토리로 넘어오기 전 운영했던.. 지킬 블로그에 올린 C# 윈폼으로 만든 간단한 프로그램이다컴퓨터를 종료해도 마지막에 저장한 크기값을 저장하기 위해 registry값을 새로 만드는 정도랑썸네일/닫기/창 크기조정/글자 크기조정 을 할 수 있는 프로그램이다항상 모든 창 위에 떠서 동작하기때문에 불필요하게 보여주고 싶지 않은 화면의 정보가 있다면 유용하다유튜브에도 설명을 올려놨는데 음질도 구지고, 유튜브 운영을 하지않아서 그냥 써보는것을 추천한다..깃허브에 코드를 올려놓을껄.. 졸업하고 심심풀이로 그램 노트북 쓸때 만든거라 지금은 프로젝트 파일도 없고 맥이라 실행할수도없다 하하  실행하면 이렇게 검은색 작은 화면이 뜨고, 4가지 기능을 사용할 수 있다  https://lsb530.github.io/2020/.. 2022. 6. 26.
6월 18일 주말 난 우리 직군이 IT, 공대 직군이지만 마음의 양식을 쌓을 필요가 있다고 생각한다이두를 운동하면 삼두도 운동해주고, 가슴을 운동하면 등운동을 해줘야 하듯모든 것에는 균형이 필요하다고 생각한다정신도 건강해야 몸도 건강하고 몸도 건강해야 정신도 건강한 법이니 말이다 그래서 한달 전쯤에 구입한 시집을 어제 드디어 다 봤다제목은 [ 문득 사람이 그리운 날엔 시를 읽는다 ]이다[ 박광수 엮음 / 박광수 그림 ]이다책에서 나온 인상깊은 시들을 몇개 적어보려고 한다 동질이른 아침 문자 메시지가 온다- 나지금입사시험보러가잘보라고해줘너의그말이꼭필요해모르는 사람이다다시 봐도 모르는 사람이다 메시지를 삭제하려는 순간지하철 안에서 전화기를 생명처럼 잡고 있는절박한 젊은이가 보인다 나도 그런 적이 있었다그때 나는 신도 사람도 .. 2022. 6. 19.
애플제품 고속충전 80% 이후부터 느려지는게 진실? 진실입니다...!!AI가 사용자의 행동패턴을 파악해서 수면시간때 80%까지는 고속충전으로 충전되게하고(사실은 AI보다는 빅데이터처리에 가깝지만)일어나는 시간-(1~2) 시간정도 해서 그때부터 충전을 100%향해 간다고 적혀있네요 제가 7시 정도에 일어나는데, 5시 30분까지 20%남은거를 천천히 충전하겠다고 알림으로 오네요..ㄷㄷ이거 애플 정품 고속충전기라서 한 20분 두면 100% 금방되는 충전기인데애플 기기 자체에서 이렇게 막네요 신기신기 ㅇㅅㅇ 증거사진 2022. 6. 9.
회사에서 발표.... 예전에 내가 구현한 로그인 로직(JWT, SSO, WebClient)을 PPT로 만들어서 교육용으로 신입이나 나랑같은 연차인 사람들한테 보여주기용으로 발표한적이 있다.. 이번에는 CI/CD 발표준비에 당첨이 되어서 PPT로 gitlab-ci/도커/쿠버네티스/ArgoCd... Onprem등등 CI Script와 배포 방식과 플로우를 또 신입과 연구소 직원들 모두한테 발표를 하는 1인으로 당첨이 되었다 매일하는 CI/CD지만 모든 스크립트와 다른 방법/전략을 다 아는 것은 아니기때문에 공부할게 많다...ㅠㅠ아직 모르는거 투성이지만... 음.... 좋은것도 있고 어려운것도 있는 것 같다 이런걸 준비하면서 모르는걸 많이 알아가고 성장하는 기회라고 생각한다!! 아자아자아자 2022. 6. 9.
DTO 돌려막기 멈춰!(feat. jackson annotation) 짧게 글을 써보겠다 글 제목처럼 가끔 예전에 만들어졌던 DTO를 활용하는 경우가 있다 이럴때 사용할 수 있는 어노테이션이 있다! @JsonIgnoreProperties({"xxx", "yyy"}} private UserRes user; @JsonIgnoreProperties({"xxx", "yyy"}} private UserRes user; user 안에 xxx와 yyy는 json response 필드에 포함하지 않는다는 어노테이션이다 매우 유용하게 활용할 수 있다..! 애초에 null인지 아닌지까지 보여주고싶지 않은 필드에 사용할 수 있다 추가로 리스트의 정보는 ToString을 할때 위험한 부분이 있다. exclude 어노테이션을 잘 사용해서 로그를출력할때나 값을 가져올때 순환참조를 피해야 한다 @T.. 2022. 5. 30.
.js 와 .jsx의 차이점 그리고 문법 설명 JSX(JavaScript XML) : 자바스크립트에 XML을 추가한 확장 문법 대표적인 차이점 * 자바스크립트 내에 html을 쓸 수 있다 const element = Hello, world!; 구글에 이렇게 검색을 해보면... What is the difference between JavaScript and JSX? 스택오버플로우에서 이런 정보들을 얻을 수 있다 어느게 더 가독성이 있고 읽기 좋은 코드인가? 난 jsx에 한 손을 들어주고싶다 또한 리액트 공홈인 https://ko.reactjs.org/docs/introducing-jsx.html 에서도 jsx에 대한 정보를 얻을 수 있다 또한 리액트로 개발할때 사용하며 공식적인 문법 형태는 아니다 바벨이 브라우저에서 실행 되기 전에 자바스크립트 형태.. 2022. 5. 30.
내 생일 D-1일날 겪은 최악의 스토리..ㅠ 1. 생일 D-2BirthDay D-2에 작년 6월부터 취준을 달려오고 1월에 면접에 합격하고나서도 연차 1일도 안쓰고 내 자신에게 휴식도 못주고 일생을 보내다가토요일에 혼자 놀려고 방을 잡았다 토요일에 보컬 수업을 끝내고 코노에 가서 혼자 놀고올리브영에 가서 배쓰밤을 2개 사서 호텔로 향했다아 호텔 앞에서 스파클링 와인인 로드캡션 꾸베 로제와 오프너를 구매하고 들어갔다그리고 프라닭에서 콘소메이징과 블랙치즈볼을 시켰다!들어가기전 보컬쌤이 혼자 노래부르는거 넋놓고 감상...ㅎ2. 생일 D-1아니 오전에 카페와서 맥북 떨어뜨리지도 않았고.. 화면에 먼지가 많길래 손수건으로 닦고있던 와중에 화면이 맛이 갔다 ㅡㅡ;;;;진심 내가 뭘했다고 화면이 이리되냐고.....ㅠㅠ 너무 맴찢이다 진짜.....일요일이라 수리.. 2022. 5. 29.
JetBrains IDE && Styled-components code 색상입히기 InetlliJ나 WebStrom으로 개발할때 Styled-component를 설치하면 아래처럼 색깔이 입혀지지 않아서 나온다 어디까지가 속성(attribute)이고 어느게 value인지 확 와닿지 않는다..!! 그럴때는 이 플러그인을 설치하자 그러면 결과는....!! 알아보기 쉽고 옆에 색상도 나온다!! 굿 2022. 5. 29.
IntelliJ Honey Tips 3 여러 꿀팁들을 모아모아 한번에 올리고 싶었지만, 짧은 1줄 이지만 너무 유용한것 같아서 미리 올린다(22.05.220 나중에 추가로 아래에 몇개 더 올릴 것이다 1. 어떤 객체의 하위 or 상위 객체 보기(구현체 or 인터페이스 or 추상 클래스 등등 전부 다) 일단 IDE 내에서 import를 시켜서 빨간 줄을 없애준다 그리고 이 변수에 갖다 대고 단축키 (Ctrl + H를 누른다 - 맥/윈도우 모두 동일) 그러면 오른쪽에 Hierarchy(계층 구조) 탭이 열리는데 이 안에서 상위 또는 하위 객체들을 볼 수 있다 예를 들어 Map을 먼저 보겠다 맵에 커서를 둔 채로 컨트롤 H를 누르면 이런 친구들이 나온다 맵 형태로 이루어진 인터페이스, 구현클래스, 추상클래스 등이 싹 다 나온다 아이콘마다 마우스를 .. 2022. 5. 22.
PostMan Honey Tips 2 1. 요청 및 결과 저장하기 개발을 할때 api를 수정을 해야 될 때가 있다 이럴때 디버깅을 걸면서 하거나 요청 결과나 응답 결과를 메모장에 복붙하거나 그렇게 하지 말고 포스트맨의 req/res 저장하기를 활용해보자 EX) 개발된 api가 있는데 프론트 팀에서 json데이터를 보내며, 이 요청일때 오류가 뜬다는 메시지를 받은 경우 프론트 팀에서 말한다 Post /api/test/res 요청으로 { "name": 123, "age": "thel" } 를 보내면 오류가 뜬다고 (물론 실전에서는 훨씬 더 복잡할것이다. 서비스 로직을 타고 디비를 거쳤다 나오고 해야하니깐) 오류메세지를 디테일하게 내보내주는 경우, 프론트가 알아서 처리할 수 있지만 우리 백엔드 개발자입장에서는 이 요청을 저장하고 싶을 수가 있다 .. 2022. 5. 22.
폰으로 쓰는 짧글 DTO 클래스를 Map으로 변환해보면 LinkedHashMap이 된다- 순서를 보장하며 해시의 시간복잡도를 가지는 맵이다 나중에 인터페이스 자료형. 구현체의 차이 해시테이블 해시맵 멀티스레드에 안전한 형태 자바에서는 해시충돌을 이중함수로 해결하는데 어떻게 해결하는지.. 사이즈별 리스트는 어떻게 변하는지 등 자료구조에 대한 재밌는 글도 쓰려한다 2022. 5. 17.
2022.05.16 (일) 주말의 일상 건대 호수를 바라보며 카페에서 코딩하면서 놀다가홍대 개미가서 맛있는 밥먹으며 개발자의 진로, 개발자의 수다를 떨다가녹음실에 가서 보컬을 배웠다..!!오늘은 1일차 호흡법!!내 버킷리스트 중에 하나는 내 앨범 내보는것...!!ㅎㅎ선생님은 강은아님이라고 고음보컬로 유명하신분! 2022. 5. 16.
내 피가되고 살이 될 언젠가 다 볼.. 책들... 추가로 요즘 보는 책 2개 저자님들의 허락이 있다면 내용도 좀 쓰겠지만,,, 아마 책 내용 요약 & 후기 정도로 포스팅을 작성할것같다(현직자 시간 거의 zero...ㅎ..) 2022. 5. 16.
개발자의 숙명.......주-말-대-응 물론 비대면으로 방화벽 뚫어서 작업했지만휴우.. IT 인들이여 모두 힘내요! 2022. 5. 8.
IntelliJ Honey Tips 2 1. 서비스 탭이 안보일때 (못 찾을때) Alt + 8 Command + 8 번 누르면 바로 튀어나오니 걱정 ㄴㄴ 2. IPv6를 IPv4로 보고 싶을 때 기본적으로 IP 로깅을 하면 IPv6로 인식이 되어서 출력된다 테스트할 컨트롤러를 만들어준다(그냥 Rest 방식으로 테스트 해도 무방) 보시다시피 0.0.0.0.0.0.0:1 이라고 나오는게 IPv6 형식의 주소입니다 사실 현재는 4와 6를 혼용해서 쓴다고 하지만 실제로 우리는 4자리수 체제가 익숙하죠? 127.0.0.1 == localhost 인텔리J에서 IPv4방식으로 볼 수 있는 방법 Help - Edit Custom VM Options... 를 선택 -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4.. 2022. 5. 7.
공백이 2칸 이상일때 정규식 공백이 1칸 이상일때의 정규식으로는 특정 필드값을 받을 때 유연하지 못하다 (Ex: 닉네임을 입력해주세요: 티스토리 개발꾼(X) 난 사실 1자리 수의 공백은 허용해주고 싶다 ) 이럴때는 checkSpace를 이용하면 된다 입력값 사이에 2칸 이상 있을 시 true를 뱉는 정규식 패턴이다 그리고 Single Value / Array Value를 모두 판단해주기 위해서 isError로 Validation을 하면 된다 const isError = (v) => { const values = Object.values(v); for (const item of values) { if (checkSpace(item)) { console.log('입력값에 공백이 2칸 이상 있습니다'); return true; } if .. 2022. 5. 5.
프론트단을 지원한 후기 개인적으로 백단보다 프론트단이 더 신경쓸게 많은것 같다 각 폼의 입력값에 대한 검증(앞단 valid), alert창 등등ㅋㅋ 백단에서는 참조형인 경우(사실 참조형인 경우 Null을 받기때문에 값 형태로는 처리를 안하는것으로 알고있다)null or not null만 체크하면 되지만 프론트엔드는 null, '', undefined등을 다 봐야하기때문에 귀찮다 어찌저찌해서 백/프론트 둘다맡게되었고내가 직접 여러 사람들을 설득해서 ES5->ES6 code style, ajax->axios로 바꾸고 코드는 점점 리액트스러워지게 만들어놨다아직 주니어개발자인데 이렇게 하는게 맞나싶다하지만 소스코드의 최적화와, 재사용성을 위해 모두가 다 좋은 길로 가야하는게 맞는 것 같다 2022. 5. 5.
백엔드 개발 시 테스트 코드가 있어야 하는 이유 아직까지도 테스트코드가 없는 회사들이 많다 여러 이유들을 들어보면 개발 속도가 느려진다, 실제 서비스개발을 하는 것이 아니다 등등을 이유로 댄다 난 주니어 개발자이다. 개인적으로 TDD를 하면 좋겠지만, TDD까지는 바라지 않는다 (TDD란 Test Driven Development이며 실패하는 테스트 코드를 만든 후 성공을 위한 코드를 만든다) 실제로 개발을 하면 개발자가 모든 입력값을 검증할 수 없다 프론트 단에서 null이 넘어올지 ''(empty string)이 넘어올지, undefined가 입력값으로 넘어올지 모르는 일이다 어느날 프론트 직원이 나한테 물어봤다. "이 입력 폼을 123에서 ''로 비워놔도 동작이 되나요?" MSA 프로젝트라서 그 모듈 api를 열어서 컨트롤러로 가고 입력값 DTO.. 2022. 5. 5.