Intel XDK New

É recompensador quando a tecnologia cumpre a sua função e nos mostra resultados no tempo esperado.

“The Intel® XDK NEW development system is designed for developers who want to use their HTML5 expertise to build hybrid HTML5 apps for mobile devices (e.g., phones and tablets) and other platforms that host HTML5 web apps (such as a Google Chrome* extension or a mobile web site).”

No caso deste Intel XDK New demorou mais uns minutos: embora a interface de instalação (install_GUI.sh) diga que apenas o Ubuntu 12.04 é suportado, no arquivo vem um rpm.

O download pode ser feito no site oficial. Depois de descomprimir o arquivo, encontrarão o rpm no directório “rpm” (será qualquer coisa como intel-xdk-0154-2.0-0.x86_64.rpm, sendo que o nome do arquivo depende da versão)

A instalação decorrerá sem problemas: basta executar na linha de comandos

$ sudo yum install intel-xdk-0154-2.0-0.x86_64.rpm

Depois disto são precisos mais dois pequenos truques:

  1. corrigir permissões:
    $ sudo chmod 0755 /opt/intel/XDK/
  2. corrigir o symlink libudev.so.0: no meu caso a correcção passou por
    $ sudo unlink libudev.so.0; sudo ln -s /usr/lib64/libudev.so.1 /opt/intel/XDK/libudev.so.0

Depois disto, a oferta da Intel cumpriu.
Arrancou
interface principal do Intel(R) XDK Newe em poucos minutos deu frutos (Sapo A5)

Screenshot da aplicação a correr num Sapo A5

Para venda – Mini Android 4.0 PC

rikomagic mk802II e comando WirelessRikomagic MK802II

Model: MK802 II
OS: Android 4.0 / Can also run desktop versions of Linux from a bootable SD Card.
Main Chip: Allwinner A10/ 1GHz Cortex-A8
Memory: 1GB
Storage: 4GB
Graphics: MALI 400 Processor
Network: Wireless 802.11b/g/n, WAPI(Ralink8188)
Expansion: Micro SD 2-32GB Memory
IO/Ports: Micro USBX2; USB2.0X1; HDMIX1; MicroSDX1
Keyboard: Supports virtual keyboard, supports 2.4G wireless keyboard, fly mouse
Audio: AAC, AAC+, eAAC+, AMR-NB, AMR-WB, QCP, MP3, WMA, WAV, MIDI, M4A
Video: WMV/ASF/MP4/3GP/3G2M4V/AVI/MJPEG/RV10/ DivX/VC-1/MPEG-2/
MPEG-4/H.263/H.264/1280*720P HD 30 fps, 1080P/720*480 D1 30fps
Apps: Google PlayStore, Youtube, Twitter, AngryBirds, Office, Gmail, Browse, Skype.
HDMI: Output 720P, 576P, 480P, 1080P&2160P
Power Input: Powered by USB port.
HDMI: female to male cable,Power adapter(optional).
Unit Size: 9.7*2.8*1.2cm
Total weight: 0.2kg

Measy RC11

Marca: Measy
Modelo: RC11
Cor: Preto
Material: Caixa de plástico
Método de conexão: Sem fio
Distância de Operação: 10M
Resolução: 1000 dpi
Fonte de Alimentação: 3 pilhas AAA
OS System: Windows 98 / Me / NT / 2000 / XP / Vista / Linux

OpenVPN – Use this connection only for resources on its network

Isto é algo que me tem “tirado do sério”: há um bug no Network Manage (GUI) que não permite definir esta opção para as ligações VPN, o que faz com que sempre que se activa esta ligação, se perca a conectividade “para fora”.

Este assunto já foi reportado há muito e já foi alvo de correcção (por sinal bem simples porque parece que foi apenas uma linha que “desapareceu”).
A questão é que nem todas as distribuições permitem nos seus repositórios as últimas (“ultíssimas” versões) e no caso do meu Fedora 19, esta correcção ainda não está disponível. Felizmente quando é “open” há sempre alternativa Continue reading

Adeus Mint 12, bem-vindo Fedora 19

Para “celebrar” a chegada do Samsung SSD 840, actualizei finalmente o sistema: Fedora 19 com gnome3 em detrimento do Linux Mint 12 (excelente experiência).

Houve algumas leituras iniciais interessantes, relativamente ao particionamento dos SSD e optimização das escritas:

Uma abordagem suave aos objectos em JavaScript

Nota introdutória: este texto foi escrito para um público alvo muito específico, sendo o objectivo principal o de introduzir o paradigma OO em JavaScript. Muita da beleza do paradigma e até da própria linguagem serão eventualmente matéria de desenvolvimento mais adiante.

A Programação Orientada a Objectos (do inglês Object-Oriented Programming – OOP) é um paradigma relativamente recente, introduzido no início dos anos 60.

Na génese deste paradigma está a noção do universo compostos por objectos que interagem entre si. Como o software visa resolver problemas do “mundo real”, a programação por objectos pretende simplificar a representação da realidade onde os objectos têm características (propriedades) e acções (métodos) que são capazes de realizar.
Continue reading

Varnish + WPML

Um nota mental sobre a utilização simultânea destas duas ferramentas:

  • WPML (WordPress Multilingual) – É um plugin para o conhecido motor de publicação WordPress;
  • Varnish (caching HTTP reverse proxy) – Uma ferramenta open source, dita “web application accelerator”.

Mesmo usando domínios diferentes por língua (configuração do WPML), o plugin usa ainda um cookie (_icl_current_language) para controlo.

Daí ser necessária alguma atenção aquando da manipulação dos cookies na configuração do varnish.

Depois de algum esforço na identificação do problema, acabei com:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
sub vcl_recv {
    if ( ! (req.url ~ "wp-(login|admin)"))
    {
        set req.http.Cookie = ";" req.http.Cookie;
        set req.http.Cookie = regsuball(req.http.Cookie, "; +", ";");
        set req.http.Cookie = regsuball(req.http.Cookie, ";(_icl_current_language)=", "; \1=");
        set req.http.Cookie = regsuball(req.http.Cookie, ";[^ ][^;]*", "");
        set req.http.Cookie = regsuball(req.http.Cookie, "^[; ]+|[; ]+$", "");
 
        if (req.http.Cookie == "")
        {
            unset req.http.Cookie;
        }
    }
}
 
sub vcl_fetch {
    if ( ! (req.url ~ "wp-(login|admin)"))
    {
        set req.http.Cookie = ";" req.http.Cookie;
        set req.http.Cookie = regsuball(req.http.Cookie, "; +", ";");
        set req.http.Cookie = regsuball(req.http.Cookie, ";(_icl_current_language)=", "; \1=");
        set req.http.Cookie = regsuball(req.http.Cookie, ";[^ ][^;]*", "");
        set req.http.Cookie = regsuball(req.http.Cookie, "^[; ]+|[; ]+$", "");
 
        if (req.http.Cookie == "")
        {
            unset req.http.Cookie;
        }
 
    }
}

Sendo que as linhas 6 e 22 podem ser modificadas, permitindo a especificação de mais do que um cookie que pretendam preservar:

set req.http.Cookie = regsuball(req.http.Cookie, ";(cookie1|cookie2)=", "; \1=");

Ensaio – Engenharia de Requisitos no contexto startup de base tecnológica

Resumo

Este ensaio pretende correlacionar as características típicas duma empresa tecnológica em início de
actividade, apostada no desenvolvimento de sistemas de software, procurando perceber a forma como
a Engenharia de Requisitos está ou não presente no processo de desenvolvimento. Como objectivo
último pretende-se ainda enumerar um conjunto de técnicas desde o planeamento à documentação
de requisitos que possam satisfazer as necessidades de empresas neste estágio, justificando a sua
adequabilidade.

Lembro que os conteúdos são publicados ao abrigo da licença licença Creative Commons byncsa 2.5 Portugal.

Download