분류 전체보기 806

개발자가 가져야할 생각

정답이란 없다. 지금 믿고 있는 것을 계속 의심하자. 기술이 목적이 되어서는 안된다. 기술을 배우는데 매몰되지 말고 배우고 있는 기술을 어떻게 사용할지 생각하자. 남이 말하는 좋은 코드, 좋은 도구에 나를 맞추려하지 말자. 내게 주어진 상황속에서 가장 적절한 도구를 다루자. 내 도구 상자에 다양한 도구를 채우자. 주어진 문제를 가장 적합한 도구로 해결할 수 있을 것이다. 비용이 많이 드는 일은 반복숙달을 통해 비용을 절감시키자. 특히 테스트 코드를 작성하는데 드는 비용을, 습관을 통해 줄이자. 문제(도메인)를 이해하지 못하면 해결책(소프트웨어)을 잘 만들 수 없다. 개발자는 도메인을 간과해서는 안된다. 지식의 누락이 비효율과 피해를 발생시킬 수 있다.

2022년 19주차 '확실히 할 수 있는 것들에 집중하자'

Weekly growth 온보딩 마무리 이번 주에 온보딩 기본 과제는 모두 완료하였습니다. 추가 과제로 도커 환경 세팅을 하고 있습니다. 도커는 해본 적이 없는데 생활코딩, 얄코, 책 등을 보면서 익히고 있습니다. 오는 주 초에 온보딩을 최종 마무리 할 것 같습니다. 사이드 프로젝트 벨로그에 쓴 글을 '워드 클라우드'형태로 시각화하는 작업을 하고 있습니다. 유저 아이디를 입력하면 해당 유저의 최근 10개 글을 분석합니다. 스크래핑을 통해 글을 수집하고 불용어를 제거해 명사만 추출합니다. 거기에 단어와 빈도수를 계산하고, 최종적으로 가공한 데이터를 클라이언트에게 반환합니다. *주고 받는 데이터 형식은 앞으로 진행할 프론트의 로직에 따라 변경될 수 있습니다. 프론트 또한 제가 작업하는데 Vue를 배워 진행해..

Coding Meetup #5 - Higher-Order Functions Series - Prepare the count of languages

You will be given an array of objects (associative arrays in PHP, table in COBOL) representing data about developers who have signed up to attend the next coding meetup that you are organising. Your task is to return an object (associative array in PHP, table in COBOL) which includes the count of each coding language represented at the meetup. For example, given the following input array: list1 ..

konlpy _ m1 mac 에서의 JAVA_HOME 경로 문제

워드 클라우드 최근 토이 프로젝트로 '워드 클라우드'를 구현하고 있습니다. 워드 클라우드란 단어의 빈도에 따라 크기를 다르게 보여주는 데이터 시각화 기법 중 하나입니다. 워드 클라우드를 구현하기 위해서는 먼저 조사, 접속사 같은 불용어들을 제거해야 합니다. 저는 불용어를 처리하기 위해 관련 라이브러리를 찾던 중 konlpy를 발견했습니다. (konlpy의 대한 자세한 내용은 아래 레퍼런스에서 확인해주세요.) konlpy 사용법을 간단하게 보자면 아래와 같습니다. >>> from konlpy.tag import Komoran >>> komoran = Komoran(userdic='/tmp/dic.txt') >>> print(komoran.morphs(u'우왕 코모란도 오픈소스가 되었어요')) ['우왕', ..

비전공 신입 개발자로서의 마음가짐 세 가지

1. 남들과 마음껏 비교하자. 흔히 남들과 비교하지 말고 자신과 비교하라고 합니다. 너무나도 좋은 말이지만 그건 불가능합니다. 애초에 사람은 사회적 동물이므로 타인과 자신을 비교하지 않는 건 말이 안 된다고 생각합니다. 그러니, 비교를 할거면 가성비 있게 대놓고 하자고요. 가성비 있는 비교란, 비교의 결과가 언제나 내가 추구하는 행동으로 이어지는 것을 말합니다. 이왕이면 비교도 생산적으로 해야 하지 않겠어요? 예를 들어 다음처럼 생각하는 것입니다. 나는 나이도 많고 개발실력도 형편없어 -> 그러니까 남들보다 더 재밌게, 더 오래 해야지~ 저는 비전공자에 나이도 많고 개발실력도 부족합니다. 그래서 매일매일 열등감, 조급함, 불안감을 달고 사는데요. 그럴 때 이런 생각을 합니다. '열등감은 좋은 거야. 이 ..

FastAPI _ Custom Exception 만드는 방법

코드를 작성하다 보면 특정 상황에 대한 예외처리를 만들고 싶을 때가 있다. FastAPI는 일반적으로 HTTPException을 이용해 예외를 처리하는데, 유사한 예외를 반복적으로 처리해야 한다면 우리가 직접 Exception을 커스텀해서 사용할 수 있다. 이번 글에서는 FastAPI에서 Custom Exception을 어떻게 구현하는지 코드로 설명해보겠다. 구현 시작 먼저 아주 간단한 api를 작성해보았다. from fastapi import FastAPI app = FastAPI() @app.get("/{name}") def home(name:str): return {"detail": f"Hello, {name}"} name을 쿼리 스트링으로 넘겨주면 "Hello, {name}"으로 반환해주는 api..