1. 데이터를 csv파일로 다운받도록 하기 이번 프로젝트에서 통계를 csv 파일로 내려받게 해야했었는데, react-csv 라이브러리로 정말 간단하게 쉽게 끝냈다. 근데, 라이브러리없이 다운받도록 할 수 있는 방법이 없을까? 궁금해졌다. 먼저 react-csv 코드를 까봤다. 놀랍게도 여기에서는 저번 주에 포스팅했던 blob을 이용하여 변환하고 있었다. 왜 그 생각을 못했을까? 저번 주에 blob 테스트해본다고, 이미지 파일 확장자를 변형시켜서 다운로드까지 받게했었는데.. 후 ^^..이런 망각의 동물... 뇌에 제대로 입력해놓자. 확장자 변경은 blob! 이 라이브러리에서는 확장자가 변경된 blob을 저장시키기 위해 window.navigator의 메서드 중 하나를 사용하는데, window.navigat..
이번 프로젝트에서 웹 내에서 이미지를 다운받을 수 있도록 해야했어서 찾아보다가 blob을 알게되었다. blob은 이미지, 사운드나 비디오같이 멀티미디어 데이터를 다룰 수 있고, 데이터의 크기와 MIME 타입(image/png, image/jpg...)을 알 수 있고, 데이터를 재가공할 수 있다. 방법은 그냥 간단한데 new Blob() 이렇게 생성자를 통하여 만들 수 있다. const blob = new Blob(fileObj) blob의 기능은 아주 많지만, 그 중에서 후에 필요하겠다 생각드는 것들 몇가지를 정리해보았다. 필요하다면 아래의 mdn문서를 읽어보자! https://developer.mozilla.org/ko/docs/Web/API/Blob blob데이터는 읽을 수 없기 때문에 안에 들어있는..
1. 프로젝트의 끝이 보인다AAA 1월부터해서 끝내야하는 프로젝트 4개 중, 2개를 끝내고 이번주에 3번째 프로젝트를 시작하고있다. 지금까지 끝은 있냐고, 끝이 보이지 않는다고 생각했던 프로젝트가 끝이 보이니 내적댄스를 추고있다 (ง˙∇˙)ว(ว˙∇˙)ง 각 프로젝트가 서로서로 데이터가 연결되어있어야 했고, 계산 + 계산 + 계산, 항목 추가 ... 등등.... 내 정신과 체력을 야금야금 좀먹으며 끝을 향해 달려가고 있다. 조금만 힘내자 끝이 보인다. 2. 요즘은 어떤걸 쓰나요? 이번프로젝트부터는 아예 redux를 빼버리고, zustand로 모든 상태를 관리하고있다. 기존 redux와 zustand의 차이점은 단일 스토어냐 아니냐이며, zustand를 사용하고 나서는 수많은 redux의 보일러플레이트에..
1. 안녕, 오랜만이예요 거의 두달만에(직전 달 포스팅에는 소식이랄게 없었지..) 나의 소식을 블로그에 녹여내고자 한다. 최근까지 나는 몸 컨디션이 나빴다 괜찮았다를 반복하며, 그간 상태가 좋은 적은 없었다. 들어오지 얼마되지않은 햇병아리 주니어가 덩어리가 큰 프로젝트에 참여하면서, 머리가 박살나고 있다. 뽀각뽀각. (아직도 진행중이다.) 그간 힘들어서 눈물도 많이 흘렸다만은 지금에서보니 두 달 전 내가 짰던 코드를 보며 더 많은 눈물을 흘리고있다. 이 때까지는 어떻게서든 결과를 만들려고 어거지로 짠 코드를 내 온 몸으로 받아내며 리팩토링 하고 있다. 그래, 아마 그때로 다시 돌아갔어도 이렇게 코드를 짰었겠지. 후회는 없다. 두 달동안 죽을만큼 했더니, 뒤로 갈수록 코드가 낫더라. 그 대신 내 건강을 잃..
1. 4기 멘토, 그리고 5기 기술 매니저 4기가 진행되는 와중에 5기가 시작되었다. 3기, 4기 멘토를 통해 겪었던 생각들을 다시 리마인드하고 마인드셋을 했다. 월요일에는 각 기술매니저들을 만나는 자리를 갖고, 화요일과 목요일에는 5기 수강생들의 첫 프로젝트에서 멘토링을 담당했다. 내가 조언한 것들을 거의 모든 사람들이 적용해서 나름 뿌듯하기도하면서, 한 마디 한 마디에 더욱 신중을 가해야겠다는 생각을 했다. 항상 가장 힘든 사람들은 말이 없는 법. 그런 분들을 놓치지 않고 대화로 이끌어내었다. 늘 그렇듯, 수강생들의 힘을 복돋아주고, 공감해주며, 방향을 찾지 못하는 사람들에게 등대가 되어줄 것이다. 매번 멘토링하면서 내가 생각하고 행하는 일이 항해의 모토에 맞는 것인가? 고민할 때마다 성륜매니저님한테..
1. 새해 기념 주저리주저리 2022년! 벌써 한 해가 시작되었다. 내 블로그보면 꽤나 정보를 얻기위해 검색을 통해 들어오는 것을 확인할 수 있다. 이때까지는 내가 공부하면서 남기고 싶었던 내용들을 적었었는데, 그러다보니 포스트 양이 참 많다... 조금 정보들을 정돈할 필요성을 느꼈다. 잘못된 지식은 바로잡고, 포스트 중 정리할 것들은 정리하고, 개선할 것들은 개선해 나가보자! 그리고 내 일기장이나 다름없는 WIL가 의외로 재미가 있는지, 포스팅을 올릴 때마다 많이들 보시는데, 어떻게 알고 들어오시는걸까? 구독자는 없는데, 매주마다 찾아서 들어오는 걸보니 신기하다. 2. 항해 5기 기술매니저 발탁 항해99 2기를 수료하고, 항해99 3기, 4기 멘토를 거쳐, 이번 5기에서는 기술매니저로 활동하기로 했다...
1. 월요일은 강릉 여행 일요일 근무에 마음에 쓰이신 우리 진저님 ... 월요일 휴무를 주셨다. 너무너무 힘들었던 나에게 보상을 주기위해 여행을 계획했다. 역시, 유목코딩은 최고다. 항상 제일 내가 코딩을하면서 제일 신경을 많이 쓰는 것은 '코딩을 싫어하지 않게하는 것'. 사람은 하루의 대부분을 일로 소모하고, 나는 앞으로도 코딩으로 평생 먹고 살건데, 이 평생할 일을 싫어한다고 하면 삶이 얼마나 슬픈가. 사실 일 or 공부를 하다보면 지치는 경우가 생기는데, 그 때마다 유목코딩을 떠나면 현재 내가 코딩하는 것에 스트레스를 받지 않고 반대로 힐링하게 된다. 그럼 결국, 나는 평생 좋아하는 일을 하게 되는 거지. 2. 최고의 복지는 진저님! 진저님께서 대전출장 다녀오시는 김에, 선물을 챙겨주셨다 ㅠㅠㅠ 역..
1. 항해 3기의 끝 내가 항해 멘토로서 맡았던 3기가 결국 끝난 걸보니 마음이 찡했다. 예전 항해 2기 때, 내가 힘들었었던 기억이 있어서 도와주고 싶었다. 개인적으로 항해 기간 동안 주변에 방향을 잡아줄 키잡이가 없어서, 우왕좌왕 발전속도가 더딘 크루원들도 보았기 때문에 더 도와주고 싶었다! 무척이나 애정이 많이갔던 우리 항해3기 크루원들.. 덕분에 근무 외 Gather방문을 자주했었지... 게다가 나와 실전프로젝트까지 함께했었던 8조 꿀조합팀! 말해뭐해~ 99일동안 폭풍 성장한 우리 3기 크루원들! 정말 수고많았어요! 꼭 다음엔 나랑 개발자로 만나자구요! 2. Task ... Task ... 이번주는 거의 야근을 밥먹듯이...! 큼큼. 맞다 내가 잘 못해서 그런거지뭐. 애초에 구조를 잘 잡고 들어갔..
1. 반성 당장 눈 앞에 있는 일을 쳐 내겠다고, 뒷 일 생각안하고 코드를 짜버린 내 모습을 반성한다. 이것 저것 일 다 벌려놓고, 모든 걸 다 해내겠노라하던 나의 오만함을 반성한다. 내 자신은 돌보지 않은 채, 앞만보던 나를 반성한다. 조금 내려놓기로 했다. 하나라도 제대로 하자. 정신없이 이것도하고 저것도하는 것 말고, 집중하자. 한 줄이라도 제대로 적자. 내가 가야할 곳을 제대로 직시하자. 롱런해야지. 다시 하나 둘 계획을 세우자. 2. 3기 실전프로젝트 발표회 업무 중, 현재 항해의 튜터님인 진저님과 멘토인 나는 함께 발표회에 참석했다 :-) 애정하는 나의 8조 꿀조합팀 😍모든 시련을 이겨내고, 발표회까지 왔다. 너무 대견하다. 우리 팀원들한테 당근보다는 채찍을 많이 준 것 같은데, 허허.. 그래..
1. Cherry-pick 이번에 풀리퀘 꼬임이 생겨서 알게 되었는데, Git에 Cherry-pick이 있지모야? 이름도 너무 맘에 든다. 내가 구구절절 체리픽에 대한 포스팅을 올리는 것보다 아래의 포스트가 너무 잘 설명해주고 있어서, 포스트 소개로 그친다. https://itzjamie96.github.io/2020/12/10/git-cherry-pick-basics/ [Git] cherry-pick으로 원하는 commit 가져오기 - Code with Jamie 최근 새롭게 알고리즘 스터디를 꾸리게 되면서 git의 cherry-pick 기능을 써보게 되었다. git은 add, commit, push 명령어만 아는 git알못이었는데, 스터디 덕분에 새로운 git잘알에 한 발자국 다가가게 된 itzjam..