Electron은 오래전부터 알고 있었다. github에서 atom을 만들때 사용한 플랫폼을 공개한 것이다. nodejs에 그리 관심이 크진 않아서 무시하고 있었는데 한동안 react를 사용하다보니 자연스레 node에도 다시 관심이 생기고 그러다보니 electron에도 다시 관심이 생겼다. 시작 일단 시작은 몹시 쉽다.npm install --save electron으로 모듈을 불러오고 app을 위한 코드만 만들어두면 데스크탑앱이 떡하니 뜬다. 사실 처음 보이는 모습은 무슨 브라우저 같다. 예제가 'Hello, world!'를 말하는 index.html을 불러오는 거라 더 그렇다. 하지만 나에겐 react가 있지. 그리고 미리 만들어둔 editor 비스므레한 코드도 있다. 코드를 그대로 가..
요새 50여대의 서버에 소스를 배포하는 것이 너무 오래 걸려서 배포 방법에 대해서 알아보는 중이다.처음 개발을 시작하면서는 이런 배포에 대해서 잘 알지 못했다. 프로그래밍만 배웠지 서버에 배포하는건 학교에서 가르쳐주지 않는다. 심지어 선배들도... (요새는 다를 수도 있겠다) 그래서 회사에 와서 접해본 것이 아는 것의 전부인데 오래된 서비스를 하다보니 배포 방법도 오래된 방법만 배웠다.처음 본 배포스트립트는 perl로 만들어져 있었다. rsync로 파일을 복사하고 서버를 재시작했다. 그 다음은 webistrano를 사용한 것인데 webistrano는 파일을 tar로 묶어서 전달한다. rails를 이렇게 배포했었는데 이후 서비스에서는 java를 webistrano로 배포하고 있었다.이제와서 생각하는 거지만..
작업 중인 php 서비스의 서버는 php 5.3을 사용한다. 그리고 나는 5.6을 사용한다. 이로 인해서 개발 과정에서는 겪지 못한 문제를 배포 후에 겪었고 이를 몇가지 정리하려고 한다. constructor namespace를 사용할 경우 constructor를 class명으로 사용할 수 없다. 다음의 코드는 둘 다 같은 결과를 얻을 것이라 기대하지만 test1쪽은 아무것도 출력하지 않는다. // Test/App.php namespace Test; class App { function App() { echo "hello\n"; } } // class_test1.php use Test; new App(); // class_test2.php class Test { function Test() { echo ..
webpack-dev-server는 webpack 빌드를 테스트할때 유용한 http 서버다. 문서에도 간단히 설명되어 있지만 Express의 심플버전이라고 보면 된다. 결과물을 file로 쓰지 않고 메모리에서 빌드해서 테스트해 볼 수 있다. 사용법 먼저 webpack 설정을 다음과 같이 만든다. output.publicPath는 클라이언트가 빌드된 파일에 접근할 수 있도록 서버가 제공할 path이다. // webpack.config.js var path = require("path"); module.exports = { entry: { app: ["./app/main.js"] }, output: { path: path.resolve(__dirname, "build"), publicPath: "/asset..
아이폰을 쓰기 시작하면서 내 생활에서 많은 것이 바뀌었는데 가장 많이 바뀐 것 중 하나가 종이 성경책을 더이상 가지고 다니지 않게 된 것이다. 20대를 거의 교회에서 보내서 그런지 가방엔 늘 성경책이 있었다. 전공책이 너무 무거워서 어떻게든 무게를 줄이고자 했을때는 포켓 성경책을 가지고 다녔었다. 그런 내게 아이폰은 혁명과도 같은 것이었다. 책을 아이폰안에 넣고 읽을 수 있다니! 물론 처음부터 그렇게 된 것은 아니다. 아이폰에 뭔가를 넣으려면 앱을 만들어야 하는데 난 아이폰 개발을 할 줄 모른다. (지금도...) 어쩔 수 없이 내가 할 수 있는 유일한 방법인 웹으로 이걸 해결하고자 했다. 당시엔 웹사이트를 모바일에 최적화하는 것이 겨우 시작되고 있었는데 나도 이렇게 하나 만들고 싶었다.구글 앱엔진, Ap..