Funções de distribuição de probabilidade e o Python

Este artigo aborda a construção de um programa escrito em Python capaz de calcular funções de distribuição de probabilidade (PDF) a partir de arquivos *.txt ou *.csv contendo uma ou duas colunas de dados. Essas informações estatísticas são importantes para compreensão de diversos problemas complexos que usualmente são representados, de forma equivocada, via uma abordagem Gaussiana simples. Assim, esperamos que a ferramenta aqui apresentada seja tão útil para toda a comunidade, como é para o nosso grupo.

Continuar a ler

Sistema de chat público em PHP

Introdução

chat_publico_0.3Embora a base deste sistema seja o PHP, também serão utilizadas outras tecnologias. A nossa “caixa de ferramentas” tem, então, o seguinte conteúdo e a respetiva utilização:

  • PHP: Linguagem de programação base;
  • HTML: Estrutura das páginas;
  • CSS: Design das páginas;
  • jQuery/JavaScript: Utilização do AJAX;
  • MySQL/MariaDB: Base de dados;
  • Apache: Servidor web;

Objectivo

No fim deste artigo o leitor terá uma visão abrangente do que é essencial para criar aplicações web e a ajuda necessária para começar a desbravar este mundo com o PHP.

Continuar a ler

O meu primeiro Jogo em MonoGame

Muitos programadores chegaram ao mundo da programação através do fascínio do desenvolvimento de jogos. Desde as cassetes de ZX Spectrum, que demoravam eternidades a carregar e a criação de jogos era uma tarefa muitas vezes hercúlea, até aos dias de hoje, a criação de jogos percorreu um longo caminho e hoje podemos encontrar várias plataformas dedicadas ao seu desenvolvimento.

Para facilitar a criação de jogos para múltiplas plataformas foi criada a framework MonoGame, baseada na framework XNA da Microsoft, que apresenta uma grande facilidade de aprendizagem. Seguindo o princípio “Escreve uma vez, corre em todo o lado”, ao desenvolvermos um jogo com MonoGame, ele irá correr em iOS, Android, Mac OS X, tvOS, Windows, Linux, Playstation4 e mais.

Neste artigo vamos criar um jogo do princípio ao fim, passo a passo, desde a criação do interface de utilizador até ao adicionar da lógica de jogo.

Continuar a ler

Introdução ao Arduino

Está na moda o conceito Internet of Things, que se refere à capacidade de interagir com dispositivos físicos, obtendo informação/métricas (e.g., temperatura, humidade, etc.) e enviando comandos/acções (e.g., abrir porta, ligar ar condicionado, etc.).

O conceito, que não é novo, implica colaboração entre profissionais de electrónica, programadores e até DBAs. Este workshop é adequado para programadores e DBAs que têm poucos conhecimentos de electrónica, dando-lhes uma introdução à utilização de Arduino (actualmente referido como Genuino na Europa), uma das mais conhecidas plataformas de electrónica utilizada nesta área.

Continuar a ler

O silêncio e os interrupts

Ainda que possa parecer o título de um “filme de tercei- ra categoria”, qualquer semelhança é apenas mera coincidência fruto de um qualquer infortúnio das palavras! Passando as brincadeiras, e mudando para o verdadeiro assunto do artigo, todos ouvimos falar de interrupts (sinal emitido pelo hardware ou software enviado ao processador, indicando que um evento necessita de atenção imediata), para os mais “vintage” da tecnologia que passaram pelos “tormentos” de configurar os interrupts nas BIOS cada vez que se acrescentava uma placa num PC, o conceito será certamente mais familiar, mas não se trata de interrupts de hardware ou software que escrevo! Trata-se antes das “interrupções” no trabalho de um programador e na relação das interrupções com a produtividade.

Continuar a ler

Android: Desenvolvimento de Aplicações com Android Studio

Introdução

Hoje em dia os dispositivos inteligentes estão cada vez mais enraizados nas nossas vidas. A evolução da tecnologia é cada vez mais crescente e os utilizadores tornaram-se mais exigentes, contactando cada vez mais com estes dispositivos. O Android é um dos sistemas operativos mais utilizados nos dispositivos móveis e foi desenvolvido pela empresa Google.

Este livro que revemos nesta edição é constituído por 11 capítulos e explica como desenvolver aplicações Android usando o Android Studio, sendo o público-alvo os programadores de software.

Continuar a ler

SQL Server 2014: Curso Completo

Tempo é dinheiro, portanto fica já aqui a minha opinião: Gostei do livro e recomendo.

Queres saber porquê? Continua a ler!

Quando me pediram para fazer a review/análise/crítica deste livro, decidi considerar os dois cenários típicos:

  1. Alguém que nunca usou SQL Server (iniciante) e gostava de aprender; e
  2. Alguém que já é profissionalmente experiente (médio/avançado) com SQL Server numa versão anterior e pretende aprender mais sobre a versão 2014.

Este livro responde às necessidades de ambos, focando a administração e manutenção.

Continuar a ler

A Vida na Cloud

O que é a Cloud? Onde está? Todos já ouvimos falar dela e muitos utilizam-na sem sequer saberem. Em termos simplistas a Cloud consiste em armazenar e ter acesso a dados e aplicações na internet, em vez das mesmas estarem no nosso próprio computador. A Cloud, ou a nuvem, foi uma metáfora para a internet desde sempre, já que representa os diferentes cenários nos quais recursos computacionais são disponibilizados por uma rede. Mais do que disponibilizar recursos de hardware e/ou software, a Cloud permite disponibilizar uma gama de recursos virtuais ou físicos remotamente, por oposição ao acesso a esses recursos locais em discos rígidos, o que se denomina normalmente por armazenamento local.

Uma das principais vantagens da Cloud é a escalabilidade, ou seja, a capacidade de uma aplicação em se adaptar a um novo contexto em que sejam necessários mais ou menos recursos. Imaginemos um portal web que a partir de certa altura devido ao seu crescimento precisa de mais memória ou CPUs para dar resposta aos pedidos, ou então a situação inversa em que se chega à conclusão de que não são necessários tantos recursos para a aplicação funcionar. Com a Cloud é possível aumentar e diminuir esses recursos, sendo que o utilizador apenas paga o que está a usar ao invés de uma situação em que tem de manter a infra-estrutura física e virtual, independentemente se esta está ou não a ser utilizada.

Continuar a ler

A Industria Alimentar Aliada às T.I.

Para esta edição da Programar, aceitei o desafio de escrever um artigo que pretende relacionar a indústria alimentar com o sector das Tecnologias de Informação. Todos sabemos que por trás de um sistema informático, está pelo menos um programador. E um programador é por si só, um facilitador de processos. O exemplo prático que irei apresentar ao leitor reflete a ascensão que os sistemas informáticos estão a ter na indústria alimentar. Este é um dos temas em que estou a trabalhar atualmente na minha dissertação de Mestrado em Engenharia Alimentar (Instituto Superior de Agronomia). Ao estagiar numa pequena empresa que se encontra na fase de implementação é fundamental perceber o impacto que um sistema informático pode causar no dia-a-dia da produção, pois este permite uma melhor gestão e um acesso praticamente imediato à informação.

Continuar a ler