SlideShare uma empresa Scribd logo
1 de 82
Baixar para ler offline
W ha tis


    SpringSproutSwagger
         2011.01.29
          Outsider
node.jsis
Server-side
JavaScript
“노드가아직은서버사이드
자바스크립트의개념을취한
많은것들중하나로보이지만


                                                          ”
 그것들보다훨씬흥미롭다.

                SimonWillison




                             http://simonwillison.net/2009/Nov/23/node/
Motivation
I/O는다르게
수행되어야한다.
varresult=db.query('select*fromA')
//useresult
varresult=db.query('select*fromA')
//useresult



          왜기다려야하는가?
I/Olatency

     L1                                                                   1ns
     L2                                                              4.7ns
  RAM                                                                 83ns
  DISK                                         13,700,000ns
Internet                                       80,000,000ns
            http://duartes.org/gustavo/blog/post/what-your-computer-does-while-you-wait
싱글쓰레드를이용한
EventLoop가
        더낫다
db.query('select*fromA',
function(result){
//useresult
}
);
동시접속수에따른초당리퀘스트처리수
초당리퀘스트
12,000


                                                                   nginx
 9,000



 6,000

                                              apache
 3,000



     0
         0       500   1000   1500   2000        2500       3000        3500      4000
                                                                               동시접속수

                                     http://blog.webfaction.com/a-little-holiday-present
동시접속수에따른메모리사용량
MB
 40
                                        apache
 30



 20



 10

                                                             nginx
  0
      0   500   1000   1500   2000        2500       3000        3500   4000
                                                                     동시접속수

                              http://blog.webfaction.com/a-little-holiday-present
왜모두EventLoop를
    사용하지않는가?
문화적인이유
우리가
I/O를
그렇게
배웠다
puts('이름을입력하세요:');

varneme=gets();

puts('이름:'+name);
puts('이름을입력하세요:');

gets(function(name){
puts('이름:'+name);
});

                어렵다어려워
인프라적인이유
SingleThreadEventLoop는
non-blockingI/O가필요하다.
대부분의라이브러리가
non-blockingI/O를
지원하지않았다
현재는많은인프라가
 갖추어져있다.
   예:Twisted,eventmachine
블락킹I/O와
넌블락킹I/O를
  섞어서
사용하는것이
  어렵다
EventLoop와non-blockingI/O에대한
               전문지식이필요하다
JavaScript
유니버셜랭귀지
EventLoop를
 사용하도록
디자인되었다
성능을위한
경쟁이붙었다
이제다시....
RyanDahl

09.02.09
V8에기반한프로젝트
아이디어에대한글을올림

09.02.15
Github에프로젝트시작

09.11.08
JSConf.eu2009발표
(v0.1.16)

11.01
현재-v0.2.6,0.3.7
CommonJS기반
JavaScript는더이상
브라우저를위한것이아니다.


                      CommonJS기반
KevinDangoor가만든
  웹브라우저이외의환경에서
JavaScript를사용하기위한스펙

  Modules,System,Filesystem,UnitTesting




                                            CommonJS기반
node.js
 CouchDB
  RingoJS
SproutCore


            CommonJS기반
에서  동작
V 8위
C/C++애드온
직접짠코드외에는
  모두비동기
모두
non-blockingI/O
단하나의쓰레드
 단하나의스택
index.html페이지요청




    node
execution
    stack
                    ev_loop()
index.html페이지요청




                    socket_readable(1)
    node
execution
    stack
                        ev_loop()
index.html페이지요청



                      http_parse(1)
                    socket_readable(1)
    node
execution
    stack
                        ev_loop()
index.html페이지요청

                    load(“index.html”)
                      http_parse(1)
                    socket_readable(1)
    node
execution
    stack
                        ev_loop()
index.html페이지요청



                      http_parse(1)
                    socket_readable(1)
    node
execution
    stack
                        ev_loop()
index.html페이지요청




                    socket_readable(1)
    node
execution
    stack
                        ev_loop()
index.html페이지요청




    node
execution
    stack
                    ev_loop()
메모리에대한두번째요청




    node
execution
    stack
                         ev_loop()
메모리에대한두번째요청




                    socket_readable(2)
    node
execution
    stack
                         ev_loop()
메모리에대한두번째요청



                      http_parse(2)
                    socket_readable(2)
    node
execution
    stack
                         ev_loop()
메모리에대한두번째요청

                     http_respond(2)
                      http_parse(2)
                    socket_readable(2)
    node
execution
    stack
                         ev_loop()
메모리에대한두번째요청



                      http_parse(2)
                    socket_readable(2)
    node
execution
    stack
                         ev_loop()
메모리에대한두번째요청




                    socket_readable(2)
    node
execution
    stack
                         ev_loop()
메모리에대한두번째요청




    node
execution
    stack
                         ev_loop()
index.html요청에대한응답




    node
execution
    stack
                      ev_loop()
index.html요청에대한응답




                    file_loaded()
    node
execution
    stack
                      ev_loop()
index.html요청에대한응답



                    http_respond(1)
                     file_loaded()
    node
execution
    stack
                       ev_loop()
index.html요청에대한응답




                    file_loaded()
    node
execution
    stack
                      ev_loop()
index.html요청에대한응답




    node
execution
    stack
                      ev_loop()
은가 ?
         엇이 좋
무
이좋 고 빠르다
성능
RealtimeApp에좋다
100동시접속에1MB응답

node822req/sec
nginx708req/sec
thin85req/sec
mongrel4req/sec

                                                                                                                 (클수록좋다)
                                   http://chetansurpur.com/blog/2010/10/why-node-js-is-totally-awesome.html
다른기술과
함께쓸수있다
가쉽 다
 작 하 기
시
“
  node.js는
내가똑똑한것처럼


                                                   ”
느끼게만들어준다

          TobieLagel



               http://twitter.com/#!/tobie/status/8975802142031872
단점은?
아직어리다
멀티CPU/데이터센터간의

   확장성문제
간단한예제들
     fromryan
   node.jsv0.2.6
//helloworld.js
varsys=require('sys')

setTimeout(function(){
sys.puts('world');
},2000);

sys.puts('hello');
//forever_helloworld.js
varputs=require('sys').puts;

setInterval(function(){
puts('hello');
},500);

process.on('SIGINT',function(){
puts('good-bye');
process.exit(0);
});
//tcp.js
vartcp=require('net');

varserver=tcp.createServer();

server.on('connection',function(e){
e.write('hello!n');
e.end();
});
server.listen(8000);
//fileio.js
varstat=require('fs').stat,
puts=require('sys').puts;

stat('/etc/passwd',
function(err,data){
if(err)throwerr;
puts('modified:'+data.mtime);
}
);
//streamhttp.js
varhttp=require('http');

http.createServer(function(req,res){
res.writeHead(200,
{'Content-Type':'text/html'});
res.write('Hellon');

setTimeout(function(){
res.write('world!n');
res.end();
},2000);
}).listen(8000);
//watchfile.js
varfs=require('fs'),
puts=require('sys').puts;

fs.watchFile('./test.txt',
function(){
puts('파일을바꾸셨군요.');
process.exit(0);
});
node.js는서비스할
 준비가되었는가?
“node.js는
무시하기에는
너무쿨하다
            DustinMcQuay
                                                  ”
http://www.synchrosinteractive.com/blog/9-nodejs/22-nodejs-has-a-bright-future
Questions...?

Blog:http://blog.outsider.ne.kr
Twitter:@outsider__
email:outsideris@gmail.com
사진출처(underCCL)

    http://www.flickr.com/photos/41534655@N00/220318384/
    http://www.flickr.com/photos/blank22763/4089949526/
    http://www.flickr.com/photos/arthurjohnpicton/4383221264/
    http://www.flickr.com/photos/75898532@N00/3110092806/
    http://www.flickr.com/photos/f-l-e-x/3092386087/
    http://www.flickr.com/photos/chefranden/4596604619/
    http://www.flickr.com/photos/tjook/5111553020/
    http://www.flickr.com/photos/franksvalli/5163205409/
    http://www.flickr.com/photos/rawryder/5086090931/
    http://www.flickr.com/photos/elvinj/4487097018/
    http://www.flickr.com/photos/ramdac/373881476/
    http://www.flickr.com/photos/gregw/3592153959/

Mais conteúdo relacionado

Mais procurados

Writing robust Node.js applications
Writing robust Node.js applicationsWriting robust Node.js applications
Writing robust Node.js applicationsTom Croucher
 
Building your first Node app with Connect & Express
Building your first Node app with Connect & ExpressBuilding your first Node app with Connect & Express
Building your first Node app with Connect & ExpressChristian Joudrey
 
introduction to node.js
introduction to node.jsintroduction to node.js
introduction to node.jsorkaplan
 
Non-blocking I/O, Event loops and node.js
Non-blocking I/O, Event loops and node.jsNon-blocking I/O, Event loops and node.js
Non-blocking I/O, Event loops and node.jsMarcus Frödin
 
Java script at backend nodejs
Java script at backend   nodejsJava script at backend   nodejs
Java script at backend nodejsAmit Thakkar
 
Introduction to node.js
Introduction to node.jsIntroduction to node.js
Introduction to node.jsjacekbecela
 
Node js presentation
Node js presentationNode js presentation
Node js presentationmartincabrera
 
The State of JavaScript (2015)
The State of JavaScript (2015)The State of JavaScript (2015)
The State of JavaScript (2015)Domenic Denicola
 
Java/Spring과 Node.js의 공존 시즌2
Java/Spring과 Node.js의 공존 시즌2Java/Spring과 Node.js의 공존 시즌2
Java/Spring과 Node.js의 공존 시즌2동수 장
 
node.js: Javascript's in your backend
node.js: Javascript's in your backendnode.js: Javascript's in your backend
node.js: Javascript's in your backendDavid Padbury
 
Node.js and How JavaScript is Changing Server Programming
Node.js and How JavaScript is Changing Server Programming  Node.js and How JavaScript is Changing Server Programming
Node.js and How JavaScript is Changing Server Programming Tom Croucher
 
Using Node.js to Build Great Streaming Services - HTML5 Dev Conf
Using Node.js to  Build Great  Streaming Services - HTML5 Dev ConfUsing Node.js to  Build Great  Streaming Services - HTML5 Dev Conf
Using Node.js to Build Great Streaming Services - HTML5 Dev ConfTom Croucher
 
Node.js API 서버 성능 개선기
Node.js API 서버 성능 개선기Node.js API 서버 성능 개선기
Node.js API 서버 성능 개선기JeongHun Byeon
 
soft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.jssoft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.jssoft-shake.ch
 
How to Write Node.js Module
How to Write Node.js ModuleHow to Write Node.js Module
How to Write Node.js ModuleFred Chien
 
RESTful API In Node Js using Express
RESTful API In Node Js using Express RESTful API In Node Js using Express
RESTful API In Node Js using Express Jeetendra singh
 

Mais procurados (20)

Writing robust Node.js applications
Writing robust Node.js applicationsWriting robust Node.js applications
Writing robust Node.js applications
 
Building your first Node app with Connect & Express
Building your first Node app with Connect & ExpressBuilding your first Node app with Connect & Express
Building your first Node app with Connect & Express
 
introduction to node.js
introduction to node.jsintroduction to node.js
introduction to node.js
 
Non-blocking I/O, Event loops and node.js
Non-blocking I/O, Event loops and node.jsNon-blocking I/O, Event loops and node.js
Non-blocking I/O, Event loops and node.js
 
Java script at backend nodejs
Java script at backend   nodejsJava script at backend   nodejs
Java script at backend nodejs
 
Introduction to node.js
Introduction to node.jsIntroduction to node.js
Introduction to node.js
 
Node js presentation
Node js presentationNode js presentation
Node js presentation
 
The State of JavaScript (2015)
The State of JavaScript (2015)The State of JavaScript (2015)
The State of JavaScript (2015)
 
Node ppt
Node pptNode ppt
Node ppt
 
Java/Spring과 Node.js의 공존 시즌2
Java/Spring과 Node.js의 공존 시즌2Java/Spring과 Node.js의 공존 시즌2
Java/Spring과 Node.js의 공존 시즌2
 
Node.js 0.8 features
Node.js 0.8 featuresNode.js 0.8 features
Node.js 0.8 features
 
node.js: Javascript's in your backend
node.js: Javascript's in your backendnode.js: Javascript's in your backend
node.js: Javascript's in your backend
 
Intro to Sail.js
Intro to Sail.jsIntro to Sail.js
Intro to Sail.js
 
Node.js and How JavaScript is Changing Server Programming
Node.js and How JavaScript is Changing Server Programming  Node.js and How JavaScript is Changing Server Programming
Node.js and How JavaScript is Changing Server Programming
 
Express node js
Express node jsExpress node js
Express node js
 
Using Node.js to Build Great Streaming Services - HTML5 Dev Conf
Using Node.js to  Build Great  Streaming Services - HTML5 Dev ConfUsing Node.js to  Build Great  Streaming Services - HTML5 Dev Conf
Using Node.js to Build Great Streaming Services - HTML5 Dev Conf
 
Node.js API 서버 성능 개선기
Node.js API 서버 성능 개선기Node.js API 서버 성능 개선기
Node.js API 서버 성능 개선기
 
soft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.jssoft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.js
 
How to Write Node.js Module
How to Write Node.js ModuleHow to Write Node.js Module
How to Write Node.js Module
 
RESTful API In Node Js using Express
RESTful API In Node Js using Express RESTful API In Node Js using Express
RESTful API In Node Js using Express
 

Semelhante a What is nodejs

Node.js - A practical introduction (v2)
Node.js  - A practical introduction (v2)Node.js  - A practical introduction (v2)
Node.js - A practical introduction (v2)Felix Geisendörfer
 
OSCON 2011 - Node.js Tutorial
OSCON 2011 - Node.js TutorialOSCON 2011 - Node.js Tutorial
OSCON 2011 - Node.js TutorialTom Croucher
 
Why Nodejs Guilin Shanghai
Why Nodejs Guilin ShanghaiWhy Nodejs Guilin Shanghai
Why Nodejs Guilin ShanghaiJackson Tian
 
Why Node.js
Why Node.jsWhy Node.js
Why Node.jsguileen
 
Nodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredevNodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredevFelix Geisendörfer
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.jsRichard Lee
 
Original slides from Ryan Dahl's NodeJs intro talk
Original slides from Ryan Dahl's NodeJs intro talkOriginal slides from Ryan Dahl's NodeJs intro talk
Original slides from Ryan Dahl's NodeJs intro talkAarti Parikh
 
Node js实践
Node js实践Node js实践
Node js实践jay li
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.jsJack Franklin
 
Future Decoded - Node.js per sviluppatori .NET
Future Decoded - Node.js per sviluppatori .NETFuture Decoded - Node.js per sviluppatori .NET
Future Decoded - Node.js per sviluppatori .NETGianluca Carucci
 
Introducing to node.js
Introducing to node.jsIntroducing to node.js
Introducing to node.jsJeongHun Byeon
 
Server side JavaScript: going all the way
Server side JavaScript: going all the wayServer side JavaScript: going all the way
Server side JavaScript: going all the wayOleg Podsechin
 
Site Performance - From Pinto to Ferrari
Site Performance - From Pinto to FerrariSite Performance - From Pinto to Ferrari
Site Performance - From Pinto to FerrariJoseph Scott
 
JavaScript is the new black - Why Node.js is going to rock your world - Web 2...
JavaScript is the new black - Why Node.js is going to rock your world - Web 2...JavaScript is the new black - Why Node.js is going to rock your world - Web 2...
JavaScript is the new black - Why Node.js is going to rock your world - Web 2...Tom Croucher
 
Introduction to Node.js: What, why and how?
Introduction to Node.js: What, why and how?Introduction to Node.js: What, why and how?
Introduction to Node.js: What, why and how?Christian Joudrey
 
Intro To Node.js
Intro To Node.jsIntro To Node.js
Intro To Node.jsChris Cowan
 
Meetup RomaJS - introduzione interattiva a Node.js - Luca Lanziani - Codemoti...
Meetup RomaJS - introduzione interattiva a Node.js - Luca Lanziani - Codemoti...Meetup RomaJS - introduzione interattiva a Node.js - Luca Lanziani - Codemoti...
Meetup RomaJS - introduzione interattiva a Node.js - Luca Lanziani - Codemoti...Codemotion
 

Semelhante a What is nodejs (20)

Nodejs Intro Part One
Nodejs Intro Part OneNodejs Intro Part One
Nodejs Intro Part One
 
Node.js - A practical introduction (v2)
Node.js  - A practical introduction (v2)Node.js  - A practical introduction (v2)
Node.js - A practical introduction (v2)
 
OSCON 2011 - Node.js Tutorial
OSCON 2011 - Node.js TutorialOSCON 2011 - Node.js Tutorial
OSCON 2011 - Node.js Tutorial
 
Why Nodejs Guilin Shanghai
Why Nodejs Guilin ShanghaiWhy Nodejs Guilin Shanghai
Why Nodejs Guilin Shanghai
 
Why Node.js
Why Node.jsWhy Node.js
Why Node.js
 
Nodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredevNodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredev
 
Node.js 1, 2, 3
Node.js 1, 2, 3Node.js 1, 2, 3
Node.js 1, 2, 3
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
 
Original slides from Ryan Dahl's NodeJs intro talk
Original slides from Ryan Dahl's NodeJs intro talkOriginal slides from Ryan Dahl's NodeJs intro talk
Original slides from Ryan Dahl's NodeJs intro talk
 
Node js实践
Node js实践Node js实践
Node js实践
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
 
Future Decoded - Node.js per sviluppatori .NET
Future Decoded - Node.js per sviluppatori .NETFuture Decoded - Node.js per sviluppatori .NET
Future Decoded - Node.js per sviluppatori .NET
 
Introducing to node.js
Introducing to node.jsIntroducing to node.js
Introducing to node.js
 
Server side JavaScript: going all the way
Server side JavaScript: going all the wayServer side JavaScript: going all the way
Server side JavaScript: going all the way
 
Site Performance - From Pinto to Ferrari
Site Performance - From Pinto to FerrariSite Performance - From Pinto to Ferrari
Site Performance - From Pinto to Ferrari
 
JavaScript is the new black - Why Node.js is going to rock your world - Web 2...
JavaScript is the new black - Why Node.js is going to rock your world - Web 2...JavaScript is the new black - Why Node.js is going to rock your world - Web 2...
JavaScript is the new black - Why Node.js is going to rock your world - Web 2...
 
Introduction to Node.js: What, why and how?
Introduction to Node.js: What, why and how?Introduction to Node.js: What, why and how?
Introduction to Node.js: What, why and how?
 
Intro To Node.js
Intro To Node.jsIntro To Node.js
Intro To Node.js
 
Meetup RomaJS - introduzione interattiva a Node.js - Luca Lanziani - Codemoti...
Meetup RomaJS - introduzione interattiva a Node.js - Luca Lanziani - Codemoti...Meetup RomaJS - introduzione interattiva a Node.js - Luca Lanziani - Codemoti...
Meetup RomaJS - introduzione interattiva a Node.js - Luca Lanziani - Codemoti...
 
Node intro
Node introNode intro
Node intro
 

Mais de JeongHun Byeon

당근 개발자 플랫폼은 어떤 문제를 해결하고 있는가?
당근 개발자 플랫폼은 어떤 문제를 해결하고 있는가?당근 개발자 플랫폼은 어떤 문제를 해결하고 있는가?
당근 개발자 플랫폼은 어떤 문제를 해결하고 있는가?JeongHun Byeon
 
오픈소스에 기여할 때 알면 좋을 개발 프로세스
오픈소스에 기여할 때 알면 좋을 개발 프로세스오픈소스에 기여할 때 알면 좋을 개발 프로세스
오픈소스에 기여할 때 알면 좋을 개발 프로세스JeongHun Byeon
 
DevOps를 가속화하는 플랫폼 엔지니어링
DevOps를 가속화하는 플랫폼 엔지니어링DevOps를 가속화하는 플랫폼 엔지니어링
DevOps를 가속화하는 플랫폼 엔지니어링JeongHun Byeon
 
클라우드 시대에 맞는 사이트 신뢰성 엔지니어
클라우드 시대에 맞는 사이트 신뢰성 엔지니어클라우드 시대에 맞는 사이트 신뢰성 엔지니어
클라우드 시대에 맞는 사이트 신뢰성 엔지니어JeongHun Byeon
 
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척? : GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척? : GitHub Copilot, 어디까지 알아보셨나요 디자인에 이어 코딩까지 AI가 프로그램 개발을 척척? : GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척? : GitHub Copilot, 어디까지 알아보셨나요 JeongHun Byeon
 
오픈소스 뒤에 메인테이너 있어요
오픈소스 뒤에 메인테이너 있어요오픈소스 뒤에 메인테이너 있어요
오픈소스 뒤에 메인테이너 있어요JeongHun Byeon
 
오픈소스에 기여할 때 해도 되는 일과 하면 안되는 일
오픈소스에 기여할 때 해도 되는 일과 하면 안되는 일오픈소스에 기여할 때 해도 되는 일과 하면 안되는 일
오픈소스에 기여할 때 해도 되는 일과 하면 안되는 일JeongHun Byeon
 
Lessons from maintaining Mocha, an open source project
Lessons from maintaining Mocha, an open source projectLessons from maintaining Mocha, an open source project
Lessons from maintaining Mocha, an open source projectJeongHun Byeon
 
개발 관련 기술 블로그 운영하기
개발 관련 기술 블로그 운영하기개발 관련 기술 블로그 운영하기
개발 관련 기술 블로그 운영하기JeongHun Byeon
 
Terraform을 이용한 Infrastructure as Code 실전 구성하기
Terraform을 이용한 Infrastructure as Code 실전 구성하기Terraform을 이용한 Infrastructure as Code 실전 구성하기
Terraform을 이용한 Infrastructure as Code 실전 구성하기JeongHun Byeon
 
오픈소스 생태계 일원으로서의 개발자(자막 버전)
오픈소스 생태계 일원으로서의 개발자(자막 버전)오픈소스 생태계 일원으로서의 개발자(자막 버전)
오픈소스 생태계 일원으로서의 개발자(자막 버전)JeongHun Byeon
 
오픈소스 생태계 일원으로서의 개발자
오픈소스 생태계 일원으로서의 개발자오픈소스 생태계 일원으로서의 개발자
오픈소스 생태계 일원으로서의 개발자JeongHun Byeon
 
더 나은 개발자 되기
더 나은 개발자 되기더 나은 개발자 되기
더 나은 개발자 되기JeongHun Byeon
 
블로그 주도 개발
블로그 주도 개발블로그 주도 개발
블로그 주도 개발JeongHun Byeon
 
Front-end Development Process - 어디까지 개선할 수 있나
Front-end Development Process - 어디까지 개선할 수 있나Front-end Development Process - 어디까지 개선할 수 있나
Front-end Development Process - 어디까지 개선할 수 있나JeongHun Byeon
 
Node.js 현재와 미래
Node.js 현재와 미래Node.js 현재와 미래
Node.js 현재와 미래JeongHun Byeon
 
Nodejs Production 적용기
Nodejs Production 적용기Nodejs Production 적용기
Nodejs Production 적용기JeongHun Byeon
 
Sublime Text tips & trikcs
Sublime Text tips & trikcsSublime Text tips & trikcs
Sublime Text tips & trikcsJeongHun Byeon
 
Popular Convention 개발기
Popular Convention 개발기Popular Convention 개발기
Popular Convention 개발기JeongHun Byeon
 

Mais de JeongHun Byeon (20)

당근 개발자 플랫폼은 어떤 문제를 해결하고 있는가?
당근 개발자 플랫폼은 어떤 문제를 해결하고 있는가?당근 개발자 플랫폼은 어떤 문제를 해결하고 있는가?
당근 개발자 플랫폼은 어떤 문제를 해결하고 있는가?
 
오픈소스에 기여할 때 알면 좋을 개발 프로세스
오픈소스에 기여할 때 알면 좋을 개발 프로세스오픈소스에 기여할 때 알면 좋을 개발 프로세스
오픈소스에 기여할 때 알면 좋을 개발 프로세스
 
DevOps를 가속화하는 플랫폼 엔지니어링
DevOps를 가속화하는 플랫폼 엔지니어링DevOps를 가속화하는 플랫폼 엔지니어링
DevOps를 가속화하는 플랫폼 엔지니어링
 
클라우드 시대에 맞는 사이트 신뢰성 엔지니어
클라우드 시대에 맞는 사이트 신뢰성 엔지니어클라우드 시대에 맞는 사이트 신뢰성 엔지니어
클라우드 시대에 맞는 사이트 신뢰성 엔지니어
 
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척? : GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척? : GitHub Copilot, 어디까지 알아보셨나요 디자인에 이어 코딩까지 AI가 프로그램 개발을 척척? : GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척? : GitHub Copilot, 어디까지 알아보셨나요
 
Citizen 개발기
Citizen 개발기Citizen 개발기
Citizen 개발기
 
오픈소스 뒤에 메인테이너 있어요
오픈소스 뒤에 메인테이너 있어요오픈소스 뒤에 메인테이너 있어요
오픈소스 뒤에 메인테이너 있어요
 
오픈소스에 기여할 때 해도 되는 일과 하면 안되는 일
오픈소스에 기여할 때 해도 되는 일과 하면 안되는 일오픈소스에 기여할 때 해도 되는 일과 하면 안되는 일
오픈소스에 기여할 때 해도 되는 일과 하면 안되는 일
 
Lessons from maintaining Mocha, an open source project
Lessons from maintaining Mocha, an open source projectLessons from maintaining Mocha, an open source project
Lessons from maintaining Mocha, an open source project
 
개발 관련 기술 블로그 운영하기
개발 관련 기술 블로그 운영하기개발 관련 기술 블로그 운영하기
개발 관련 기술 블로그 운영하기
 
Terraform을 이용한 Infrastructure as Code 실전 구성하기
Terraform을 이용한 Infrastructure as Code 실전 구성하기Terraform을 이용한 Infrastructure as Code 실전 구성하기
Terraform을 이용한 Infrastructure as Code 실전 구성하기
 
오픈소스 생태계 일원으로서의 개발자(자막 버전)
오픈소스 생태계 일원으로서의 개발자(자막 버전)오픈소스 생태계 일원으로서의 개발자(자막 버전)
오픈소스 생태계 일원으로서의 개발자(자막 버전)
 
오픈소스 생태계 일원으로서의 개발자
오픈소스 생태계 일원으로서의 개발자오픈소스 생태계 일원으로서의 개발자
오픈소스 생태계 일원으로서의 개발자
 
더 나은 개발자 되기
더 나은 개발자 되기더 나은 개발자 되기
더 나은 개발자 되기
 
블로그 주도 개발
블로그 주도 개발블로그 주도 개발
블로그 주도 개발
 
Front-end Development Process - 어디까지 개선할 수 있나
Front-end Development Process - 어디까지 개선할 수 있나Front-end Development Process - 어디까지 개선할 수 있나
Front-end Development Process - 어디까지 개선할 수 있나
 
Node.js 현재와 미래
Node.js 현재와 미래Node.js 현재와 미래
Node.js 현재와 미래
 
Nodejs Production 적용기
Nodejs Production 적용기Nodejs Production 적용기
Nodejs Production 적용기
 
Sublime Text tips & trikcs
Sublime Text tips & trikcsSublime Text tips & trikcs
Sublime Text tips & trikcs
 
Popular Convention 개발기
Popular Convention 개발기Popular Convention 개발기
Popular Convention 개발기
 

Último

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 

Último (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

What is nodejs