XECon + PHPFest 2014 XE 프로젝트 이야기

Preview:

DESCRIPTION

XECon + PHPFest 2014 - XE 프로젝트 이야기 http://xecon.xpressengine.com

Citation preview

XE 프로젝트 이야기

김예솔

NAVER LABS, XE Project Manager

2014.11.08 Session 4-3 XECon + PHPFest 2014

“스타트업에서는 어떤 기술을 이용해야 할까? ”

www.venturesquare.net/550216

PHP

- 일단 만든 결과를 빨리 보여주자고 할 때 높은 효율을 발휘한다.– 어떤 것이든 할 수 있는 길이 있는 만큼 한계는 없다.– 깊은 학문적인 이해가 없이도 충분히 접근가능하고 누구든지 쉽게 개발할 수 있다.– 객체지향은 나중에 고려해 볼 대상이다.

PHP는 전세계를 거쳐 꽤 많은 업적을 쌓아 왔다. 무엇보다도 PHP를 이용하면 쉽게 웹을 개발할 수 있었다. 하지만 아마도 굉장히 많은 PHP개발자 인력풀과 커뮤니티를 가지고 있지만 소수의 좋은 개발자만이 좋은 PHP코드를 작성할 수 있다. 그래서 그만큼 많은 예제코드들이 존재하지만 좋은 코드 예제들을 찾기 어렵다. 이런 이유들 때문에 굉장히 안 좋은 예제들과 코드들이 커뮤니티에 돌아다니고 있는데 주로 잘 테스트가 안되었고 보안에 큰 문제가 있는 코드들이 많이 있다. 더불어 가끔 PHP 자체가 자연스러운 문법을 가지고 있는지 의문이 들 때가 있다.

PHP에 경험이 많은 팀들은 물론 좋은 코드 표준과 프로세스들을 가지고 있을 것이고 수준 높은 웹 페이지를 빠른 시간 내에 만들어 낼 수 있지만 역시나 개발 수준이 어느 정도 되는 소수의 팀만 그렇게 할 수 있다는 부분이 있다.

www.venturesquare.net/550216

김예솔NAVER LABSXE Project Manager

제로보드XE

Xpress Engine

오픈소스

naver.github.io/arcus

d2.naver.com

그들만의 문화

덕후

XE Commitor

at XEHub

xpressengine.com/xehub

Full-Time 개발

xpressengine.com/community_developers

XE 커뮤니티 개발 그룹

XE 커뮤니티 개발 그룹

각자가 팀이자 팀장

XE 1.x 개발

XE 3 개발

XE 1.x 개발

XE 3 개발

공식사이트 , 서비스 운영개발

XE 1.x 개발

XE 3 개발

공식사이트 , 서비스 운영개발

오픈 세미나, 오픈 오피스 데이, XECon

XE 1.x 개발

XE 3 개발

공식사이트 , 서비스 운영개발

오픈 세미나, 오픈 오피스 데이, XECon

그리고 끝없는 잡일과 삽질

yobi.io

Yobi는 소프트웨어 개발에 필요한 기능들을 사용하기 편리하게 웹으로 묶은 협업 개발 플랫폼입니다.

버그나 이슈을 관리할 수 있는 이슈 트래커, 각종문서와 정보를 간편하게 공유할 수 있는 게시판,소스코드의 변경내역을 편리하게 관리할 수 있는 형상관리 툴을 비롯하여 팀 개발을 위한 다양한기능을 포함하고 있습니다.

생각나는데로 아무나 이슈 등록

생각나는데로 아무나 이슈 등록

tag ,milestone 지정

생각나는데로 아무나 이슈 등록

tag ,milestone 지정

담당자 지정

생각나는데로 아무나 이슈 등록

tag ,milestone 지정

담당자 지정

업무 흔적 로깅

생각나는데로 아무나 이슈 등록

tag ,milestone 지정

담당자 지정

업무 흔적 로깅

도움/의견이 필요한 경우 @호출

생각나는데로 아무나 이슈 등록

tag ,milestone 지정

담당자 지정

업무 흔적 로깅

도움/의견이 필요한 경우 @호출

처리 및 이슈 닫음

개발 포함 모든 업무

이 모든 과정이 공유

누구나 이슈 참여 가능

XE 공식 사이트/서비스

쉬운설치 서버

우편번호 서버

XE 체험하기

링크 미리보기

메일링, SMS, 모니터링 …

NGINX

PHP-FPMWorker

NFS MariaDB(PM)

되도록 최신 안정된 버전 유지

Dockerdocker.com

Virtual Machines

Docker

NGINX

PHP-FPMMariaDB

memcached

Haproxy

Dev Laptop

Dev Laptop

NGINX PHP-FPM MariaDBmemcachedHaproxy

Stage Real-Stage

모니터링

CPU, RAM,

DISK, Network

Nginx, PHP-FPM, MariaDB

collectd + rabbitmq + graphite

collectd.org rabbitmq.com

graphite.wikidot.com

collectd

collectd

collectd

rabbimq graphite

collectdplugins

다운로드 수

자료 수

회원 / 글 / 댓글 수

Github 지표

XE 1.x

617 개의 PHP 파일 14만 라인

617 개의 PHP 파일 14만 라인

Test 부재

617 개의 PHP 파일 14만 라인

Test 부재

다양한 동작 환경 존제

https://www.flickr.com/photos/ftzdomino/5290609403/

Selenium

seleniumhq.com

XE 1.x 월 단위 배포

이슈등록

이슈등록

마일스톤 지정

이슈등록

마일스톤 지정

담당자 할당 / Pull Request 대기

이슈등록

마일스톤 지정

담당자 할당 / Pull Request 대기

개발 / 처리

이슈등록

마일스톤 지정

담당자 할당 / Pull Request 대기

개발 / 처리

코드 리뷰

이슈등록

마일스톤 지정

담당자 할당 / Pull Request 대기

개발 / 처리

코드 리뷰

코드 프리징

이슈등록

마일스톤 지정

담당자 할당 / Pull Request 대기

개발 / 처리

코드 리뷰

코드 프리징

QA테스트

이슈등록

마일스톤 지정

담당자 할당 / Pull Request 대기

개발 / 처리

코드 리뷰

코드 프리징

QA테스트

패키징

이슈등록

마일스톤 지정

담당자 할당 / Pull Request 대기

개발 / 처리

코드 리뷰

코드 프리징

QA테스트

패키징

배포

Git !== Package

여러 프로젝트

css, javascript minify

zip, tar, diff

github.com/xpressengine/xe-core github.com/xpressengine/xe-core/tree/master/tools

감사합니다.

Recommended