목록분류 전체보기 (492)
규도자 개발 블로그
항상 vendor, sources, src, images, lib 등 자주 쓰이는 디렉토리 이름에 신경이 쓰였다. 용도도 궁금하고... 종국에는 개인적으로 프로젝트를 하는데 유지보수에 도움이 될까 하는 이유로 많은 사람들이 쓰는 디렉토리 이름들을 찾아봤는데 아무리 해도 위에 썼던 이름들 혹은 내가 작업하며 봤던 만들어져있던 디렉토리 이름 그 이상은 찾을 수가 없었다. 그러던 와중 내가 쓰는 IDE인 Jetbrain사의 IntelliJ Idea에 디렉터리나 파일 아이콘을 atom의 것으로 만들어주는 플러그인을 발견하였다. 이것을 보니 특정 이름의 디렉토리만 atom의 디렉토리 모양으로 바꿔주는 것으로 보아 이 소스코드를 보면 어떤 디렉토리이름을 많이 사용하는지 역추적할 수 있겠다 싶어서 뒤져봤다. 이곳이 ..
나는 코딩이나 프로그래밍이라는 작업에 있어서 그 범주가 어디에 속해있냐고 정의해야한다고 하면 지극히 사무적인 업무와 예술 같은 창의적인 행위 그 사이의 어느쯤으로 둘 것이다. 데이터의 정제와 전송은 꼭 일정한 규격을 맞춰야 하는 사무적인 일 같지만 그 내부의 코드는 만드는 사람마다 제각각이기 때문이다. 개인적인 지론이지만 프로그래머의 최종 아웃풋은 서비스나 정제된 데이터가 아닌 코드라고 생각한다. (원할한 서비스나 데이터는 응당 있어야할 요소이므로) 결과값은 같아도 구현하는 방식은 프로그래머마다 천차만별이다. 당장에 알고리즘 풀이사이트를 가봐도 알 수 있다. 정해진 문제에 대해서도 그렇게 많고많은 방법과 해결책을 제시하는데 딱히 정해지지 않은 답을 찾아가는 데에 있어서 프로그래머의 창의력만큼 중요한 요소..
정수(Integer가 아닌 Essence). 내가 좋아하는 말이다. 내가 프로그래밍을 처음 배워 c언어로 콘솔창에 "hello world"를 찍었을 때부터 들어왔던 생각이 있다. 경력도 짧은게 혓바닥만 길다고 뭐라 할까봐 떠들진 않았지만 "삼인행필유아사"라고 가끔씩 순수한 어린아이의 말이 어른들의 사상을 꿰뚫는 것처럼 그냥 내가 느낀 바를 써보려 한다. 프로그래밍이라는 건 결국 두 가지 개념으로 함축할 수 있다. 첫번째, 데이터의 정제.두번째, 전송. 정확성과 효율성은 제하였다. 정확하다는 것은 프로그램의 성질에 따라서 때때로 정의가 모호할 뿐더러 효율성은 구현하는 사람의 재량과 하드웨어의 성능, 그리고 특성에 달렸기 때문이다. 세상 수많은 프로그램이 있지만 위 두 개의 범주에서 벗어나는 건 없는 것 같..
프로그래머들에게는 이렇게 표현하는 게 더 와닿을 수 있겠다. 사람은 모듈이 아니다. 이 말을 들었을 때 머릿속에 떠오르는 이미지 그대로가 내가 전하고자 하는 의도이다. 세상에는 자신에게 완벽한 자리도 없을 뿐더러, 자리에 완벽한 사람도 없다. 이 자리라는 것은 정말 말 그대로 '위치'의 개념이 아니라 사람과 사람 사이에도 해당하는 말이다. 세상에 완벽한 팀은 없다. 완벽을 추구하는 정도의 차이만 있을 뿐이다. 결국엔 누군가 모양을 깎아서 모듈끼리를 걸맞게 하는데(세간에서는 이것을 희생, 혹은 사회화라고 한다) 이것은 블록 스스로의 노력과 경영진, 혹은 관리자의 노력이 같은 방향을 향했을 때 이뤄진다. p.s : 나에게 하고 싶은 말이라 적어봤다.
[JavaScript/자바스크립트] 숫자를 만, 억, 조, 경 등 만 단위 한글로 찍기 + 자바스크립트 연산의 한계값 간단한 함수이다. 어떠한 숫자가 주어졌을 때 해당 숫자를 만, 억, 조, 경 등 만 단위 한글로 찍는 자바스크립트 함수이다. 사실 이 함수를 만들기 전에 항상 그래왔듯이 다른 사람들이 만들어놓은 걸 찾아봤지만 만족스러운 것이 없었다. 함수 자체가 30~40줄을 넘어버린다던가 의미를 알 수 없는 부분이 많이 있다던가 혹은 출력이 3억 0305만 0050 이런식으로 중간중간 0에 대한 예외처리가 안돼있다던가... 만족스러운 게 없어서 직접 만들었다. 코드샌드박스에서도 확인할 수 있다. : https://codesandbox.io/s/wopm3v546w ※간단하게 뒤에 '원'만 붙이면 숫자를 ..
간단한 react JS + Django 어플리케이션 만들기 일단 프로젝트를 시작하기 전에 서론이 길다. react와 django가 동작하는 방식에 대해선 관심 없고 단지 어떻게 만드는 지에 대해서만 관심있는 사람이라면 이 텍스트블록들은 과감하게 넘겨도 좋다. 하지만 제대로 만들기 위해선 react와 django를 이용한 웹어플리케이션이 어떻게 작동하는지에 대해서 간단하게나마 알아둘 필요가 있다. 그럼 시작하겠다. react는 Single Page Application을 위해 만들어진 Javascript라이브러리이다. 페이스북에서 만들었는데 딱 페이스북이 어떻게 동작하는지 보면 이 용도를 이해할 수 있다. 페이스북에서 좋아요를 누르고 댓글을 달고 페메를 보내는 건 전부 한 페이지에서 이뤄진다. 넷플릭스 또..
윈도우(windows)에서 파이썬(python) 2.x버전과 3.x버전 동시에 쓰기 나는 파이썬을 시작한지 얼마 되지 않아서 3.x버전만 다뤄왔었다. 하지만 리눅스 환경에서 기본값으로 깔려 있는 파이썬은 대체로 2.x버전이었다. 리눅스환경에서야 symlink로 각 명령어에 대한 구분이 가능하지만 윈도우같은 경우에 파이썬3버전과 2버전을 동시에 깔면 무조건 python이라는 명령어에 python 2.x대가 붙는 현상이 있다. 나의 경우에는 python3.x로 작업을 하다가 node.js를 깔면서 위의 현상을 겪었는데 node.js의 npm이 python2.7을 사용하고 있기 때문이다. node.js를 깔기 전에 콘솔 창에 python -V를 치면 3.7.x가 떴는데 이제는 2.7.15가 뜬다. 환경변수 설..
php의 단점을 발견하였다. 바로 쓰레드에 대한 부분이다. 큰 부하를 처리하는 php코드를 일정시간마다 실행해야해서 해당 php코드를 실행하고 있을 때 다른 사용자들에 대해서 서비스품질저하를 방지하기 위해 php로 구현하는 쓰레드와 관련하여 많은 것들을 찾아봤는데... php공식문서에서 단호하게 안 된다고 정의했다. 심지어 현재 서비스 중인 플랫폼은 전부 7.0.x대의 php에서 돌아가고 있다. 뭐 애초에 사용할 수도 없지만 말이다... 그래서 관련 자료를 더 찾아보니 애초에 php라는 언어 자체가 싱글스레드로 실행되는 것을 전제로 만든 언어라고 한다. 관련 자료를 같이 첨부하려 했는데 다시 찾진 못하겠다. 해서 멀티스레딩이 필요할 때 사용할 수 있기 pthread라는 것이 만들어져있긴 한데 역시나 아직..
react js 시작하기 시작하기에 앞서 일단 시작하기에 앞서 나는 웹 백엔드 개발자이다. 하지만 개인프로젝트를 진행하려는 과정에서 불가피하게 다른 js라이브러리를 사용해야했고 그 과정에서 react js에 흥미가 생겨 검색해보던 찰나 다른 언어나 라이브러리들과는 다르게 react는 시작하려는 사람들에게 친절한 가이드가 좀 모자란 느낌이었다. 그래서 나도 react에 대해 완전 모르는 생초짜인 상태에서 개인 프로젝트에 react js를 적용하며 다른 react를 적용하는 사람들에게 이정표가 되고자 글을 남긴다. 그래서 angular js는 어떻고 vue js는 어떻고 왈가왈부할 생각은 없다. 그렇다면 시작하겠다. 1. node.js 설치 react js를 하려고 했는데 웬 node.js냐 하겠지만 pyt..
나는 동영상 강의가 싫다 이 생각이 고등학교때 쯤 들었던 것 같다. 사실 그 계기는 굉장히 유치하다. 바로 원피스 때문이었는데 원피스 만화책은 애니메이션에 비해서 한 권에 많은 내용이 집약돼있다. 따라서 애니메이션 1화 분량과 같은 20분동안 만화책을 읽으면 거의 애니메이션 3~4편의 분량을 흡수할 수 있었다. 이때부터 동영상강의가 싫어졌다. 싫은 이유는 위에서 얘기했던 것과 궤를 같이 한다. 바로 분량을 흡수하는 데에 있어 수동적인 자세가 되기 때문이다. 책이나 글, 혹은 스스로 구글링해서 실습을 하다보면 내용에 대한 취사선택이 가능하지만 동영상 강의는 그것이 불편하다. 어디에 무엇이 나와있는지도 소리로 파악해야하기 때문에 그 범주를 알기 힘들고 일일히 돌려가며 확인하는 수밖에 없다. 싫어버릇 때문인지..