Web2schools – Gerenciamento de escolas com Web2py

Há um tempo atrás a minha amiga Júlia Rizza lançou um projeto pessoal muito interessante, o Web2schools, um sistema de gerenciamento completo de escolas, e feito com Python/Web2py. Com isso fiz uma pequena entrevista para que ela comentasse sobre o projeto, suas ideias, problemas e soluções e diversas outras coisas.

Uma entrevista bem interessante para quem deseja saber mais sobre o processo de aprendizado de programação e como funciona o Web2py em produção.

Júlia, por favor fale um pouco de você e suas experiências.

Meu nome é Júlia Rizza, tenho 16 anos, sofrendo a pressão do 3º ano do ensino médio e comecei a aprender Python há mais ou menos 2 anos e meio. Comecei a me interessar muito pelo desenvolvimento de sites quando tinha 12 anos e, lá pelos 14, descobri que eu poderia fazer aplicações web também. Foi aí que conheci Python e iniciei meus estudos na linguagem, aprendendo web2py assim que senti já ter uma base sólida na linguagem. Iniciei minhas experiências reais em projetos Open Source, principalmente com o pessoal da comunidade Kolaborativa (http://kolaborativa.com), e consegui tirar muito aprendizado deles.

julia

O que te motivou a fazer essa aplicação? 

Minha motivação é a mais comum em quem está incomodado com algo: o que eu utilizava não prestava, então decidi fazer eu mesma. Por ainda estar na escola, sei da realidade do uso de um sistema de gerenciamento escolar, pois eu mesma uso um fornecido pela minha escola e vejo os professores/coordenadores da escola usando também. Ainda assim, todos nós sempre passamos raiva porque falta alguma ferramenta, ou ela existe e não funciona direito, ou não é completa, entre outros problemas.

Por isso, pensei “eu posso fazer algo melhor que isso“. Foi então que da necessidade nasceu um sistema. Mas não, eu não pretendo que minha escola use ele. Ele é focado em pequenas escolas de ensino básico ou cursos técnicos, porque não existe a urgência e nem a cobrança de uma escola imensa como a minha. Em escolas como a que eu estudo, a burocracia é imensa e é preciso ter uma equipe de funcionários treinados e uma disponibilidade imensa para resolver problemas que sequer são do sistema. Ou seja, muita dor de cabeça!

foto_1

Por que escolheu Web2py? Quais foram tanto as facilidades e as dificuldades que essa escolha trouxe?

Uso web2py desde o início da minha aprendizagem de Python para web. Isso se deve ao simples fato de que, quando eu estava começando a aprender, ele era o que tinha uma curva de aprendizado mais rápida e tranquila. Porém, ainda agora, depois de já ter adquirido experiência com o framework, sinto receio de trocá-lo por outro, como o Django (poderoso e popular). Isso se deve a vários fatores.

Um deles é que penso que o web2py segue de melhor forma os princípios da linguagem Python, porque, enquanto o Django segue firmemente a sintaxe, o web2py torna a experiência melhor com o uso sempre objetivo, para manter o código claro (explícito) e não se repetir. Além disso, é com ele que consigo sempre manter uma linha de pensamento clara sobre meu código, ao invés de ter que interromper meu pensamento com erros e peculiaridades do framework, porque até mesmo seu sistema de exibição de erros deixa tudo muito claro.

Quanto as dificuldades, devo dizer que é a documentação. Noventa porcento dos programadores web2py que conheço te responderiam nessa parte, com certeza, a documentação. Vou explicar isso melhor adiante.

Pelo que soube o feedback das pessoas foi muito bacana, quais sugestões por exemplo irá implementar?
Recebi muitos feedbacks legais e fico muito contente por isso. Orgulho-me de constatar que todos que falavam sobre erros no sistema já foram resolvidos! O próximo passo é implementar as ideias bacanas que recebi, e foram muitas.
Uma que achei muito boa e que vai melhorar em muito o sistema é o cadastramento da disponibilidade do professor, para que o sistema calcule e sugira possíveis rotinas de aulas baseadas na disponibilidade de cada professor. Essa é a próxima da minha lista de feedbacks e (novidade) agora tenho um pessoal muito bacana com quem estou trabalhando (http://cacho.la) que está me ajudando na branding do projeto, para deixar ele com uma interface ainda melhor!
foto_2
A aplicação é bem completa, abordando desde as notas dos alunos, gerenciamento de salas e até ocorrências, por acaso alguma escola ou empresa mostrou interesse na aplicação?

Já tive resposta de várias pessoas, sim, que fazem parte da equipe de algumas escolas e mostraram interesse. Por enquanto ainda não houve nenhuma negociação, apenas o início de algumas, até porque estou numa fase delicada na escola e preciso gerenciar bem os meus horários esse ano.

Mas fico muito contente por ter visto interesse ou elogios por parte de várias pessoas e saber que fiz algo que pode realmente auxiliar alguém. O que, aliás, penso que deveria ser o objetivo de muitos desenvolvedores, não só meu. Minha maior alegria é ver que algo que eu fiz pode ajudar ou mudar algo para melhor.

Foi difícil encontrar informações em como desenvolver o projeto assim como na parte conceitual como técnica com Web2py?

Um dos pontos negativos do web2py é que nem sempre a documentação da aplicação está completa ou atualizada. Mas um dos pontos positivos é que com uma aprendizagem básica você consegue desenvolver grandes aplicações. Como eu já tinha alguma experiência com uso de sistemas escolares, o conceito e a lógica do que eu queria desenvolver já estava todo planejado e foi desenvolvido muito rápido com web2py, pois, como eu disse, com pouco de web2py você consegue muito de uma aplicação. As maiores dificuldades, quando eu encontrava uma dúvida e não conseguia uma resposta na documentação, geralmente não levavam muito tempo para serem resolvidas.

No caso da documentação falhar, nada como uma pesquisa no Google ou no StackOverflow (os melhores amigos de um programador, ou meus, pelo menos) para entender o que estava faltando na documentação e continuar o processo de desenvolvimento ainda mais motivada. Dessa forma, não foi realmente difícil encontrar informações, porque parte eu já tinha e outra parte não me custou uma vida para conseguir, e como todo conhecimento é ouro, fico contente mesmo quando a documentação está desatualizada e eu consigo uma solução.

Por que Python?

Bom, a minha história toda com Python resumidamente é a seguinte: eu não fazia ideia de que existia programação, tudo o que eu sabia era que alguém, fazendo bruxaria ou voodoo, talvez por mágica ou com um sofrimento infinito, um dia criou programas para o meu computador (devem ser aqueles hackers de novo haha). Porém, eis que eu descubro, que meu pai foi programador antes mesmo de eu nascer, mesmo que ele trabalhe em uma área completamente diferente disso agora. E foi nessa de “Olha pai, eu tô montando um site” que meu pai me disse “Você já pensou em aprender programação? Pra desenvolver programas e essas coisas.” que eu descobri que programação era possível para gente simples que nem eu. Tudo bem que eu pensei “Noooooossa, vou fazer mágica de computador” e imaginei que seria muito difícil. Meu pai, que era bem mais informado que eu, falou “Tem uma linguagem que está fazendo sucesso recentemente chamada Python, que dizem que é muito boa para aprender programação. Quer aprender?”. Eu aceitei, claro, e ele me passou vários links de apostilas online e livros sobre lógica de programação.

Depois fiz cursos onlines só para reforçar, mas já estava toda empolgada pelo meu primeiro “Hello World!”. Dizem que a primeira vez a gente nunca esquece (sem sentidos obscenos, por favor), então desde então eu me apaixonei por Python, porque mesmo tentando aprender Java ou PHP depois, parecia que nada se igualava a Python, seja por sua praticidade, por sua capacidade ou até mesmo pela sensação que eu sinto quando estou desenvolvendo. É um caso de amor que vêm da infância haha. Mas, tecnicamente, a lista de qualidades de Python é enorme e eu sei que não preciso citá-la aqui, mas posso afirmar que minha decisão se baseia na ideia de que “É simples, prático, funciona bem e muitas vezes melhor que outras mais difíceis e complexas. Então, por que eu devo dificultar as coisas?” (keep it simple).

foto_3

Quais são suas dicas para quem deseja aprender Python?

Minha dica é gostar do que se está fazendo. Porque vi muitos casos de gente que viu que programador Python ganhava bem (até porque eles andavam em falta no mercado) e decidiu aprender sem nem mesmo gostar de programação, porque falaram que é fácil. Realmente é muito fácil e a sensação é ótima ao programar em uma linguagem como Python (I am Superman! /o/), mas é preciso gostar do que está fazendo. É sempre importante definir um objetivo de curto prazo, como “Até o final da semana eu vou desenvolver uma calculadora”. Tudo bem que você pode pegar um tutorial por aí e fazer isso em meia hora, mas antes da velocidade é preciso ter uma prática natural e com objetivos que não sejam impossíveis, porque a sensação de objetivo cumprido só te motiva ainda mais.

Estar sempre motivado te faz aprender cada vez mais, e isso só te dá benefícios e te torna um profissional excelente no futuro. Começando aos poucos, com o que chamamos de baby steps, e fazendo um passo de cada vez é muito mais provável que sua experiência com qualquer atividade seja melhor e menos frustrante.

Deixe os contatos para quem tiver dúvidas ou queira informações a respeito, e também suas considerações.

Fico muito agradecida por poder falar sobre mim, minha experiência com Python/web2py e sobre minha aplicação mais recente (sobre mim nem tanto). Gostaria de poder ver muitas pessoas inspiradas em fazer aquilo que gostam e com objetivos bons, que motivem e sejam prazerosos, independente do que fazem, porque isso é muito importante.

Pessoas que fazem o que não querem, não experimentam nunca a sensação de se sentir realizado por algo, como se aquilo que você faz fosse mudar o mundo (o que eu realmente acredito ser possível). Se quiserem falar comigo, seja por dúvida, elogio, porque está carente e não tem ninguém pra conversar, se quiser me xingar, pode me encontrar por julia.rizza@gmail.com ou webmaster@juliarizza.com ou facebook Júlia Rizza, ou twitter @Outrora_, ou G+ pelo mesmo e-mail do gmail ou pelo mesmo nome do facebook, ou por aí.


Uma das coisas que mais fico empolgado com a linguagem e que já ouvi comentários de muitos outros é a produtividade e agilidade que oferece, construindo desde pequenas a médias aplicações e muito pouco tempo. Se tem o mínimo de conhecimento sobre lógica de programação você acaba criando aplicações fantásticas com pouco esforço.

Infelizmente Web2py é um framework que peca em relação a documentação, porém temos uma comunidade fantástica no Brasil que sempre dá suporte para quem precisa, vale a visita no grupo do Web2py no Google Groups.

A Júlia fez o curso de Web2py que comentei aqui no post de fontes de estudos junto comigo, isso no final de 2012, e vejam, em menos de 2 anos aproximadamente já está criando sistemas profissionais e funcionais em muito pouco tempo.

Fica então a dica pra galera que deseja saber mais sobre o Web2py e também o processo de desenvolvimento desde a criação da ideia até o final do processo, e isso que ela tem apenas 16 anos.

Anúncios

5 comentários em “Web2schools – Gerenciamento de escolas com Web2py

  1. Muito boa a entrevista,algo que é muito bom do Python que foi citado é o foco no problema e não com brigas com a linguagem procurando onde foi que esqueceu um “;” ou outra coisa.Na maioria das vezes quando há um erro possivelmente é de lógica no programa ou má endentação .

  2. Parabéns Julia e ao blog! Muito bom a divulgação de talentos tão jovens como a Julia. Acredito que toda comunidade Python esteja muito feliz com o grande talento que ganhou.

    Parabéns também pela divulgação do web2py que é um framework incrivemente produtivo. Atualmente utilizo em 2 empresas com total sucesso.

  3. Muito bom ver que todo esse projeto, realmente grande, é um sucesso! Parabéns, Júlia! E repito algo que já disse antes: você tem um futuro incrível pela frente! 😀

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s