crescendo com software livre e lua

Post on 16-Jan-2017

229 Views

Category:

Software

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Crescendo através de Software Livre e Lua

Etiene Dalcol @etiene_d

@etiene_dFISL 17

Etiene Dalcol

@etiene_d

@etiene_dFISL 17

wooga.com/jobs

@etiene_dFISL 17

A Lua MVC web framework sailorproject.org

@etiene_dFISL 17

@etiene_dFISL 17

@etiene_dFISL 17

@etiene_dFISL 17 luaconf.com

@etiene_dFISL 17

Por que estou aqui hoje?

@etiene_dFISL 17

@etiene_dFISL 17

@etiene_dFISL 17

@etiene_dFISL 17

@etiene_dFISL 17

@etiene_dFISL 17

Alguma vez pensamos em tecnologia?

@etiene_dFISL 17

18 milhões de desenvolvedores ao redor do mundo

@etiene_dFISL 17

@etiene_dFISL 17

Vale do Silício x

Rio de Janeiro

@etiene_dFISL 17

Se o apoio não está vindo das

instituições, do governo ou da

indústria, ele tem que vir de nós mesmos

@etiene_dFISL 17

@etiene_dFISL 17

Nós temos o poder de endossar

tecnologias com a nossa escolha

@etiene_dFISL 17

<video>

@etiene_dFISL 17

@etiene_dFISL 17

• Linguagem dinâmica • Criada em 1993 • Multi-paradigma

• procedural, OO, funcional

• Garbage collection • Coroutines • First-class functions • Lexical scoping • Proper tail calls • Licença MIT • 276Kb

O que é Lua?

@etiene_dFISL 17

@etiene_dFISL 17

@etiene_dFISL 17

Tabelas

Header

key value

“x” 9.2

nil

value

100

200

300

nil

@etiene_dFISL 17

_G _VERSION assert collectgarbage dofile error getmetatable ipairs load loadfile next pairs pcall print rawequal rawget rawlen rawset require select setmetatable tonumber tostring type xpcall bit32.arshift bit32.band bit32.bnot bit32.bor bit32.btest bit32.bxor bit32.extract bit32.lrotate bit32.lshift bit32.replace bit32.rrotate bit32.rshift

coroutine.create coroutine.resume coroutine.running coroutine.status coroutine.wrap coroutine.yield debug.debug debug.getuservalue debug.gethook debug.getinfo debug.getlocal debug.getmetatable debug.getregistry debug.getupvalue debug.setuservalue debug.sethook debug.setlocal debug.setmetatable debug.setupvalue debug.traceback debug.upvalueid debug.upvaluejoin io.close io.flush io.input io.lines io.open io.output io.popen io.read io.stderr io.stdin io.stdout io.tmpfile io.type io.write

file:close file:flush file:lines file:read file:seek file:setvbuf file:write math.abs math.acos math.asin math.atan math.atan2 math.ceil math.cos math.cosh math.deg math.exp math.floor math.fmod math.frexp math.huge math.ldexp math.log math.max math.min math.modf math.pi math.pow math.rad math.random math.randomseed math.sin math.sinh math.sqrt math.tan math.tanh

os.clock os.date os.difftime os.execute os.exit os.getenv os.remove os.rename os.setlocale os.time os.tmpname package package.config package.cpath package.loaded package.loadlib package.path package.preload package.searchers package.searchpath string.byte string.char string.dump string.find string.format string.gmatch string.gsub string.len string.lower string.match string.rep string.reverse string.sub string.upper table.concat table.insert table.pack table.remove table.sort table.unpack

@etiene_dFISL 17

@etiene_dFISL 17

“Já que Lua é uma linguagem tão simples, ela

tende a te encorajar a resolver problemas de forma

simples."

Ragnar Svensson - Lead Developer na King (Lua Workshop 15/10/2015)

@etiene_dFISL 17

http://www.humbedooh.com/presentations/ACNA%20-%20mod_lua.odp Introducing mod_lua by Daniel Gruno

@etiene_dFISL 17

• 1976 - Reserva de mercado • 1985 - EUA ameaça sanções • 1992 - Fim da reserva de mercado • 1993 - Lua é criada no Tecgraf • 1996 - Artigo de Lua na Dr. Dobbs • 1997 - Lua-l • 1998 - Lançamento do Grim Fandango • 1999 - Lua mencionada no GDC • 2003 - Programming in Lua • 2008 - TIOBE linguagem do ano • 2011 - Lua chega a no. 12 no TIOBE • 2015 - Programando em Lua

História

@etiene_dFISL 17

Estratégia de carreira através de comunidades locais de software livre

@etiene_dFISL 17

@etiene_dFISL 17

English

@etiene_dFISL 17

Resultado: programadora tardia

@etiene_dFISL 17

Lições do mundo da música:

valorize as suas origens

@etiene_dFISL 17

Mais popular x

Menos popular x

Early adopter x

Local adopter

@etiene_dFISL 17

Conexões locais, Hisham, LabLua &

Sailor

@etiene_dFISL 17

@etiene_dFISL 17

Conexões locais, Hisham, LabLua &

Sailor

@etiene_dFISL 17

@etiene_dFISL 17

• Acesso ao centro da informação • Networking com especialistas • Acesso a vagas de emprego • Menor custo • Documentação no idioma local • Acesso próximo à comunidade • Tecnologia adaptada pra realidade do local

Tecnologia Local

@etiene_dFISL 17

Instalando Lua

• lua.org > download

• OS package manager • apt-get install lua • brew install lua

LuaRocks

• luarocks.org > install

• OS package manager • apt-get install luarocks

@etiene_dFISL 17

• Hardware • eLua: http://www.eluaproject.net/ • nodemcu: http://nodemcu.com

• Matemática e computação científica • Torch: http://torch.ch • SciLua http://www.scilua.org/ • GSL Shell: http://www.nongnu.org/gsl-shell/

Ferramentas em Lua

@etiene_dFISL 17

• Desenvolvimento de jogos • Corona: https://coronalabs.com • Love2D: https://love2d.org/ • Defold: http://www.defold.com/ • Cocos2d: http://www.cocos2d-x.org/

• Web development • OpenResty http://openresty.org • Lapis: http://leafo.net/lapis/ • Luvit: https://luvit.io/ • Sailor: http://sailorproject.org/ • Moonshine: http://moonshinejs.org/

Ferramentas em Lua

@etiene_dFISL 17

• IDE • ZeroBrane Studio: http://studio.zerobrane.com/

• Testes • Busted: http://olivinelabs.com/busted/

• Gerenciador de pacotes • LuaRocks http://luarocks.org

• Misc • Moonscript: http://moonscript.org/ • Awesome Lua:

https://github.com/LewisJEllis/awesome-lua

Ferramentas em Lua

@etiene_dFISL 17

• Livros • Programming in Lua: http://www.lua.org/pil/ • Programando em Lua • Lua Programming Gems • Coding Places

• Tutoriais • Lua Style Guide:

http://lua-users.org/wiki/LuaStyleGuide • Lua Missions: https://github.com/kikito/lua_missions

• Misc • CodeCombat: https://codecombat.com

Referências

@etiene_dFISL 17

• Comunidades • Lista de email: http://www.lua.org/lua-l.html • Blog comunitário: http://lua.space • Subreddit: http://reddit.com/r/lua • Canal IRC: irc.freenode.net #lua • Grupo no FB: https://facebook.com/groups/lua.br • Lua Ladies: http://lualadies.org • London Lua: meetup.com/London-Lua-User-Group • Lua Ceará: https://facebook.com/lualang.ce

• Eventos • LuaConf: http://luaconf.com • Lua Workshop: https://www.lua.org/wshop16.html • Bay Area Lua Devs: meetup.com/lua-devs

Comunidade

@etiene_dFISL 17

O que você consegue fazer aqui que não

conseguiria fazer em outro lugar?

Obrigada!

etiene.net github.com/Etiene/

dalcol@etiene.net

@etiene_d

Obrigada!

Perguntas?

etiene.net github.com/Etiene/

dalcol@etiene.net

@etiene_d

top related