규칙적인 삶
규칙적인 삶의 필요성을 느끼고있다. 따라서 생활패턴을 바꿀 것 이다. 불 필요한 시간들을 남을 위해 너무 많이 소비했다. 목표를 다시 상기시키고 달려야겠다. * 생활표 작성 , 영단어, 알고리즘 풀이, 프로그래밍 공부, 가계부 및 일기 정리
How Browsers Work with Akamai CTO Guy Podjarny
참고 한 것. 네이버D2 브라우저는 어떻게 동작하는가?
소프트웨어 장인
84page 오래 전에 작성했던 코드를 지금에 와서도 고칠 부분이 없어 보인다면, 그것은 그동안 배운 것이 없다는 뜻이다. 1부 이념과 태도 1장 21세기의 소프트웨어 개발 고참 개발자 새로운 현실 2장 애자일 절차적인 관점에서의 애자일 원칙 기술적인 관점에서의 애자일 원칙 애자일을 따른다는 것 게임 체인저 피플 임파워먼트 프로페셔널의 진화 애자일 매니페스토 애자일 매니페스토의 원칙들 애자일 격변기 애자일 행오버 부분적인 전환 애자일 코치 새로운 기술적 실행 관례에 대한 거부감 소프트웨어 프로젝트를 바라보는 편협한 시각 나쁜 소식만 있는 것은 아니다 애자일과 소프트웨어 장인정신 요약 3장 소프트웨어 장인정신 더 나은 비유 위키피디아에서의 정의 좀더 주관적인 정의 짧은 정의 정의 이상의 의미 공예, 사업, 엔지니어링, 과학 또는 예술 소프트웨어 장인정신의 토론 이력 소프트웨어 장인정신 모임 경계를 지나 장인 교환 프로그램 소프트웨어 장인 커뮤니티 소프트웨어 장인정신 매니페스토 매니페스토 ‘동작하는 소프트웨어뿐만 아니라, 정교하며 솜씨 있게 만들어진 작품을’ ‘변화에 대응하는 것뿐 아니라, 계속해서 가치를 더하는 것을’ ‘개별적으로 협력하는 것뿐만 아니라 프로페셔널 커뮤니티를 조성하는 것을’ ‘고객과 협업하는 것뿐만 아니라, 생산적인...
클라우드 IDE Cloud 에 대하여.. (Cloud9,koding,Nitrous,구름 IDE)
이번에 해외 [rails](http://rubyonrails.org/) 프로젝트에 참여하게되었다. 어떤 언어를 막론하고 ATOM 만 사용했는데 어떤계기(환경변수 꼬임)로 인해 Workspace가 필요했고 문득 생각났던게 [C9(Cloud9)](https://c9.io) 이 었습니다. 따라서 해당 포스팅은 [C9](https://c9.io/)에 대한 설명을 목적으로 작성되었지만.. 작성하다보니 클라우드 IDE 서비스들을 대략 정리하게되었습니다..^^; 클라우드 IDE는 장단점이 확실히 있습니다. 호불호도 많이 갈리는 편 이구요. Your development environment, in the cloud 아래에 클라우드 IDE 서비스들을 크게 5개로 추려보았습니다. 현재는 koding이 조금 우위를 선점하는 것 같다. 여러가지 이유가 있겠지만 개인적으로 수 많은 devops tools들과의 연동을 지원하는게 현재의 우위를 선점한 이유가 아닐까 싶습니다. koding 1. Say Goodbye to localhost 2. 현재 1,745,021명의 엔지니어들이 이용중이다. 3. 지원하는 devops tools and another service 목록입니다. 거의 다 사용하고있는 것 들이네요. OpenStack Github Slack DOCKER Cloudflare AWS (Full access to AWS API, EC2, RDS, S3, VPC, SNS, SQS and much more.) CHEF Digital Ocean Cloud9 Nitrous 구름 IDE orionhub 세개모두 UI/UX는 비슷합니다. 또한 여타 다른 IDE들과 비슷합니다. 클라우드 IDE 장점이라면 로컬자원을 사용하지않아도 되고, 어떤 환경에서도 네트워크만...
Environment Variables
Environment Variables 환경변수란 프로세스가 컴퓨터에 동작하는 방식에 영향을 미치는 동적인 값들의 집합 한번꼬이면 머리털 다빠질수있으니 유의. ** ** 확인 Linux시스템에서는 쉘에서 env, export 등의 명령을 통해확인할수있다. 아래 목록은 일반적으로 사용되는 환경변수들이다. HOME : 사용자의 홈디렉토리 PATH : 실행파일을 찾는 경로 LANG : 프로그램 사용시 기본 지원되는 언어 PWD : 사용자의 현재 작업하는 디렉토리 TERM : 로긴 터미널 타입 SHELL : 로그인해서 사용하는 쉘 USER : 사용자의 이름 DISPLAY : X 디스플레이 이름 VISUAL : visual 편집기의 이름 EDITOR : 기본 편집기의 이름 COLUMNS : 현재 터미널이나 윈도우 터미널의 컬럼수 PS1 : 명령프롬프트변수 PS2 : 2차 명령프롬프트이다. 명령행에서 를 사용하여 명령행을 연장했을 때 나타난다. BASH : 사용하는 bash 쉘의 경로 BASH_VERSION : bash의 버전 HISTFILE : history 파일의 경로 HISTFILESIZE : history 파일의 크기 HISTSIZE : history에 저장되는 갯수 HISTCONTROL : 중복되어지는 명령에 대한 기록 유무를 지정하는 변수이다. HOSTNAME : 호스트의 이름 LINES : 터미널의 라인 수 LOGNAME :로그인이름 LS_COLORS :...
Rails work
** 파일/폴더** 설명 app/ 애플리케이션 폴더 bin/ rails, rake 등 ruby 스크립트 실행파일 폴더 config/ route, db등 설정 파일 폴더 db/ 데이터베이스 스키마 보관폴더 vendor/ 서드파티 코드 보관 lib/ 확장모듈 보관폴더 log/ 애플리케이션 로그파일 보관폴더 test/ 테스트 관련 파일 보관 tmp/ 임시 파일 보관저장소(캐시,PID,세션 파일 등)
Debian or Ubuntu Every package “has no installation candidate”
http://packages.ubuntu.com/ 유효한 패키지인데 설치가 안될 때가 있다. 그럴 때 해당 파일/etc/apt/sources.list을 확인한다. 아래와 같이 추가하고. 업데이트(apt-get update) 한다. 이후에 패키지를 다시 설치한다. deb http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse
db 덤프 생성 및 복원
postgresql은 db 백업/복원으로 pg_dump라는 유틸리티를 제공함 https://www.postgresql.org/docs/9.5/static/app-pgdump.html pg_dump is a utility for backing up a PostgreSQL database. It makes consistent backups even if the database is being used concurrently. pg_dump does not block other users accessing the database (readers or writers). pg_dump only dumps a single database. To backup global objects that are common to all databases in a cluster, such as roles and tablespaces, use pg_dumpall. Dumps can be output in script or archive file formats. Script dumps are plain- text files containing the SQL commands required to reconstruct the database to the state it was in at the time it was saved. To restore from such a script, feed it to psql. Script files can be used to reconstruct the database even on other machines and other architectures; with some modifications, even on other SQL database products.
자료 특성별 자료구조
C를 배우기 전에 반드시 알아야 할 것들
입문하는 학생들에게 추천하면 좋은 책 http://book.naver.com/bookdb/book_detail.nhn?bid=9071198 서장 C 프로그램을 배우기 전에 0.1 C를 빨리 배우는 사람 0.2 C 프로그래밍을 잘하려면? 0.3 목표 프로그램 0.4 이 책의 내용 Chapter01 첫걸음 1.1 프로그램이란 무엇인가? 1.1.1 프로그램이란? 1.1.2 컴퓨터의 프로그램 1.1.3 입력, 처리, 출력 1.1.4 0과 1, 그리고 컴퓨터 프로그래밍 1.2 2진수와 정보의 단위 1.2.1 컴퓨터의 기본은 비트 1.2.2 복수행의 2진수 사용법 1.2.3 1바이트는 8비트 1.2.4 자주 사용되는 16진수 1.3 프로그램과 소프트웨어, 하드웨어 1.3.1 하드웨어와 소프트웨어 1.3.2 컴퓨터의 소프트웨어는 2진수 1.3.3 고급언어와 저급언어 1.3.4 소프트웨어는 교체할 수 있다 1.4 C 프로그래밍을 배우기 전에 가져야 할 마음가짐 1.4.1 프로그래밍의 적성 1.4.2 무언가 일을 진행할 때 순서를 꼼꼼히 생각하자 1.4.3 수작업으로 할 수 없는 것은 프로그래밍으로도 할 수 없다 1.4.4 법칙을 발견하자 1.4.5 모든 현상을 숫자로 표현하는 능력 1.4.6 순회하는 숫자 1.4.7 입력과 출력을 통해 처리 과정을 추측해 보자 연습문제 Chapter02 C 프로그램을 관찰해 보자 2.1 C 프로그램을 살펴보자 2.1.1 C 프로그램의 예 2.1.2 C...
Nginx error “conflicting server name” ignored
서버 리부팅하고 웹서버 띄울려니깐 에러나길래 로그보니깐 내가 설정한 서버들이 모두 제외되있음. 설정 경로에 .save이있으면 삭제하고 다시 리부팅하면 됨. 참고 : I assume that you’re running a Linux, and you’re using gEdit to edit your files. In the /etc/nginx/sites-enabled, it may have left a temp file e.g. default~ (watch the ~). Depending on your editor, the file could be named .save or something like it. Just run $ ls -lahto see which files are unintended to be there and remove them
each 메소드에서 break 또는 continue
each A generic iterator function, which can be used to seamlessly iterate over both objects and arrays. Arrays and array-like objects with a length property (such as a function’s arguments object) are iterated by numeric index, from 0 to length-1. Other objects are iterated via their named properties. 상황에 따라서 루프에서 break 또는 continue 조건을 넣어야할 때 가있다. 루프내에서 return 1 일 경우, continue 의 역할을 한다. 반대로 0일 경우에는 break 역할을 한다. We can break the $.each() loop at a particular iteration by making the callback function return false. Returning non-false is the same as a continue statement in a for loop; it will skip immediately to the next iteration. True : This is equivalent of ‘break’ for jQuery loop False : This is equivalent of ‘continue’ for jQuery loop 참고 : Loop Control
Supervisor:: A Process Control System
우선 포스팅하기 앞 서, 해당 포스팅 자체가 혼자 개념을 이해하자는 목적이 강하기에 자세한 설명을 담고있지않습니다. Supervisor 공홈에서 아주 자세하게 설명하고있으니, 입문으로 보는 개발자들이라면 한번 참고해보시길 바랍니다. 추가 읽어보신 분들중에 오타나 잘못된 부분 찾으신 분 있으시다면 댓글 부탁드립니다. “혼자 사용하는 일기” 라 생각하고 작성했기에.. 다소 문장 자체가 매끄럽지 않을 수 있습니다. Gearman 덕분에 Supervisor에 대해 좀 알게되었다. 아래 사진은 최근 주말마다 조금 씩 만들고있는 프로젝트이다. 함수 네이밍은 저게 최선이었다; Gearman을 사용하면서 나름 만족해하고있던 찰나에, 갑작스레 워커가 계속 죽었다. 갑작스레 = 버그심음ㅋ 따라서 워커가 해당 프로그램을 실행시키고 오류구문을 만나 죽은 것 같았다. 로그를 살펴보니 워커가 오류가 발생함에도 지속적으로 띄워서 서버 메모리 상당수를 차지하고있었다. stackoverflow의 해당 버그를 요약 후 검색하다가 Supervisor를 알게되었고 지금은 잘 사용하고있다. 현재는 워커가 죽을때마다 Supervisor를 통해서 해당 프로세스를 다시 띄우는 방법으로 변경했다. 근데 그 (프로세스 = 워커)를 계속 띄워도 어차피 계속 죽는 워커가 있다. 대표적으로 구문에러가 있을 것 같다. 개발자가 이를 발견하고 수정한다면 늦게나마 재 실행되겠지만 그게 아니라면 …...
Mark Twain
Never argue with stupid people, they will drag you down to their level and then beat you with experience
Webserver shut down unexpectedly due to a blocked port
웹핵 문제풀려고 아무생각없이 그냥 작업컴에다 웹서버 설치하고 돌리려니깐.. This may be due to a blocked port, missing dependencies 에러 뜸. Skype 를 사용한다면 아래 순서대로 설정하면되고, 아니라면 현재 네트워크 포트현황보면서 80으로 잡힌거 죽이면됨. 아니면 웹 서버 포트를 좀 바꾸면됨 (EX : 8080,3063) Go to Tools > Options > Advanced > Connection Disable the “Use port 80 and 443 for alternatives for incoming connections” setting Sign Out and close all Skype windows* Start Apache and it should work now