Modelagem 3D

Se sua empresa precisa de ilustrações em 3D, venha falar com a Toca Digital e conheça o nosso trabalho. Mais »

This is default featured slide 2 title

You can completely customize the featured slides from the theme theme options page. You can also easily hide the slider from certain part of your site like: categories, tags, archives etc. Mais »

This is default featured slide 3 title

You can completely customize the featured slides from the theme theme options page. You can also easily hide the slider from certain part of your site like: categories, tags, archives etc. Mais »

This is default featured slide 4 title

You can completely customize the featured slides from the theme theme options page. You can also easily hide the slider from certain part of your site like: categories, tags, archives etc. Mais »

This is default featured slide 5 title

You can completely customize the featured slides from the theme theme options page. You can also easily hide the slider from certain part of your site like: categories, tags, archives etc. Mais »

 

Como conquistar clientes sem sair no prejuízo e sem prejudicá-lo

Bons Negócios

Esta é uma questão bem delicada para se tratar que envolve vários aspectos. Poderia citar e explicar diversos deles, no entanto, seria melhor escrever um livro sobre isso. Entretanto, eu não estou disposto a me dedicar tanto a isso, meu objetivo aqui não é me aprofundar no assunto, mas abordar somente aquilo que envolve a questão interpessoal, excluindo desta forma todos os conceitos de projetos, sistemas e elaborações científicas ou abastratas decorrentes da análise de mercado ou referente à qualidade do produto que será vendido para seu cliente. Meu foco é direcionado neste momento para o cliente, o indivíduo que deseja obter seu produto, ou não. Aquele que tem pouco conhecimento do assunto, mas que tem diversas maneiras de pensar e de visualizar aquilo que ele quer.

1º problema
Isso mesmo, se tivéssemos que construir um sistema orientado a objetos e colocar o objeto “cliente” poderia sugerir que seus atributos seriam: “indivíduo abstrato”, “não declarado”, “imprevisível” e definir várias heranças, ligadas a vários pacotes de dados volumosos, que não teriam fim…” e esse sistema nunca teria fim, pois é justamente isso que seu cliente quer ou espera de nós, algo complexo mas bem elaborado, para que ele consiga usufruir de diversas formas e consiga valer seu investimento.

2º problema
O cliente não sabe que corrigir sempre é um problema, mas sabe que custa mais, e pode sair caro. Na visão dele, tudo pode ser resolvido pagando mais. Mas nós sabemos que a coisa não é assim tão simples, ainda mais quando o prazo não bate com a necessidade do cliente.

3º problema
O cliente sempre tem razão? Será mesmo, no meu entendimento, o cliente tem uma idéia, nos temos a solução baseada nesta idéia, mas as limitações de um sistema ou daquilo que é possível fazer acaba tendo mais razão do que ambos os lados. Por isso, não adianta querer colorir aquilo que não existe. O cliente não sabe disso e muitas vezes ocorre de estar dentro do pacote aquilo que foi prometido para ele, e aí como resolver quando é uma coisa impossível de se realizar. É evidente que o cliente vai discutir e bater o pé.

Pois é, mas não tem porque se desesperar nestas questões, pois para tudo isso existe uma solução, só na morte que não conseguimos dar um jeito…

No 1º problema a solução de resolver é simples, basta construir um desenho do projeto, apresentar para o cliente, ressaltando aquilo que vai ter e aquilo que não vai ter no escopo. Assim fica fácil dele compreender que não existe além daquilo que está no papel.

O 2º problema, é resolvido quando, logo no início do projeto, é esclarecido para o cliente que existe uma certa limitação no caso de alterações futuras do sistema ou no escopo. Salientando que essas mudanças podem ser um problema, pois algumas podem ser feitas e outras não, e isso vai ficar sob critério das limitações do sistema.

Para o 3º problema, é fundamental que exista uma alternativa para apresentar ao cliente, e pode ser desde uma solução externa ao projeto, como um serviço terceirizado que atenda ao requisto. Mas se realmente for impossível de se fazer, deve se esclarecer que houve uma falha no escopo e de que pode ser corrigido apresentando uma alternativa que seja próxima do ideal. Ou ainda oferecer um desconto no orçamento, de forma que se obtenha polidez do cliente. Mas se mesmo assim, ainda for um empasse, recorra a última solução, faça exatamente aquilo que ele quer… mesmo que não funcione, ou que seja inseguro, até mesmo que seja fake. Mas não deixe de incluir no contrato sua isensão da responsabilidade de futuros problemas decorrentes desta opção, que foi justamente a perna quebrada do sistema, e que justamente não houve outra alternativa para resolver o problema, e fim de papo.

Conheça o Windows 8

791070134

Se você já se habituou com o touch do Windows 7, esqueça tudo, a nova versão, o Windows 8 está completamente diferente, além de vir com uma interface voltada para Tablets e Notebooks, está com uma característica mais simplicista, e terá uma flexibilidade muito melhor para seus dedos. O windows ainda está em desenvolvimento e há rumores de que estará pronto entre agosto e setembro, confira abaixo alguns dos recursos:

Como criar programas para Windows (desktop)

5209

Para começar a desenvolver programas, é necessário antes de tudo decidir qual linguagem se deve trabalhar. Uma das mais recomendadas no mercado hoje em dia e a linguagem JAVA. Entretanto iremos apresentar um pequeno exemplo de uma calculadora simples construída através do programa DEV-C++, que pode ser baixado gratuitamente.


#include <windows.h>
#include <stdlib.h>

LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);

int WINAPI WinMain (HINSTANCE hThisInstance,
 HINSTANCE hPrevInstance,
 LPSTR lpszArgument,
 int nFunsterStil)
{
 HWND hwnd;
 MSG messages;
 WNDCLASSEX wincl;

 wincl.hInstance = hThisInstance;
 wincl.lpszClassName = "WindowsApp";
 wincl.lpfnWndProc = WindowProcedure;
 wincl.style = CS_DBLCLKS;
 wincl.cbSize = sizeof (WNDCLASSEX);

 wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
 wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
 wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
 wincl.lpszMenuName = NULL;
 wincl.cbClsExtra = 0;
 wincl.cbWndExtra = 0;
 wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;

 if (!RegisterClassEx (&wincl))
 return 0;

 hwnd = CreateWindowEx (
 0,
 "WindowsApp",
 "Calculadora © Por Toca Digital",
 WS_OVERLAPPEDWINDOW,
 350,
 250,
 550,
 100,
 HWND_DESKTOP,
 NULL,
 hThisInstance,
 NULL
 );

 ShowWindow (hwnd, nFunsterStil);

 while (GetMessage (&messages, NULL, 0, 0))
 {
 TranslateMessage(&messages);
 DispatchMessage(&messages);
 }

 return messages.wParam;
}

#define ID_BUTTONmais 1001
#define ID_BUTTONmenos 1002
#define ID_BUTTONvezes 1003
#define ID_BUTTONdividir 1004
#define ID_BUTTONurl 1005
HINSTANCE g_inst;
HWND EditNum1,EditNum2,EditTotal,ButtonMais,ButtonMenos,ButtonVezes,ButtonDividir,ButtonURL;

void DesenharObjectos(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
 EditNum1 = CreateWindowEx (
 WS_EX_CLIENTEDGE,
 //valor inicial (esquerda): 0
 "EDIT",
 "0",
 WS_VISIBLE|WS_CHILD|WS_BORDER|ES_RIGHT ,
 30, 30, 50, 20,
 hwnd,
 NULL,
 g_inst,
 NULL
 );

 EditNum2 = CreateWindowEx (
 //valor inicial (direita): 0
 WS_EX_CLIENTEDGE,"EDIT", "0",
 WS_VISIBLE|WS_CHILD|WS_BORDER,
 160, 30, 50, 20,
 hwnd, NULL, g_inst, NULL );

 EditTotal = CreateWindowEx (
 WS_EX_CLIENTEDGE,"EDIT", "",
 WS_VISIBLE|WS_CHILD|WS_BORDER,
 220, 30, 50, 20,
 hwnd, NULL, g_inst, NULL );

 ButtonMais = CreateWindowEx (
 0,
 "BUTTON",
 "+",
 WS_VISIBLE|WS_CHILD,
 80, 30, 20, 20,
 hwnd,
 (HMENU)ID_BUTTONmais,
 g_inst,
 NULL
 );

 ButtonMenos = CreateWindowEx (
 0, "BUTTON", "-",
 WS_VISIBLE|WS_CHILD,
 100, 30, 20, 20,
 hwnd, (HMENU)ID_BUTTONmenos, g_inst, NULL);

 ButtonVezes = CreateWindowEx (
 0, "BUTTON", "*",
 WS_VISIBLE|WS_CHILD,
 120, 30, 20, 20,
 hwnd, (HMENU)ID_BUTTONvezes, g_inst, NULL);

 ButtonDividir = CreateWindowEx (
 0, "BUTTON", "/",
 WS_VISIBLE|WS_CHILD,
 140, 30, 20, 20,
 hwnd, (HMENU)ID_BUTTONdividir, g_inst, NULL);

 CreateWindowEx (
 0,
 "STATIC",
 "=",
 WS_VISIBLE|WS_CHILD,
 212, 31, 5, 20,
 hwnd,
 NULL,
 g_inst,
 NULL
 );

 ButtonURL = CreateWindowEx (
 0,
 "BUTTON",
 "www.tocadigital.com.br",
 WS_VISIBLE|WS_CHILD,
 272, 30, 230, 20,
 hwnd,
 (HMENU)ID_BUTTONurl,
 g_inst,
 NULL
 );

 SendMessage((HWND) EditNum1,
 (UINT) WM_SETFONT,
 (WPARAM) GetStockObject(DEFAULT_GUI_FONT),
 (LPARAM) lParam
 );

 SendMessage((HWND) EditNum2,(UINT) WM_SETFONT, (WPARAM) GetStockObject(DEFAULT_GUI_FONT),(LPARAM) lParam);
 SendMessage((HWND) EditTotal,(UINT) WM_SETFONT, (WPARAM) GetStockObject(DEFAULT_GUI_FONT),(LPARAM) lParam);

 SendMessage(
 (HWND) ButtonMais,
 (UINT) WM_SETFONT,
 (WPARAM) GetStockObject(DEFAULT_GUI_FONT),
 (LPARAM) lParam
 );

 SendMessage((HWND) ButtonMenos,(UINT) WM_SETFONT, (WPARAM) GetStockObject(DEFAULT_GUI_FONT),(LPARAM) lParam);
 SendMessage((HWND) ButtonVezes,(UINT) WM_SETFONT, (WPARAM) GetStockObject(DEFAULT_GUI_FONT),(LPARAM) lParam);
 SendMessage((HWND) ButtonDividir,(UINT) WM_SETFONT, (WPARAM) GetStockObject(DEFAULT_GUI_FONT),(LPARAM) lParam);
}
void abreURL(){
char szPath[] = "http://www.tocadigital.com.br";
HINSTANCE hRet = ShellExecute(
HWND_DESKTOP, //Parent window
"open", //Operation to perform
szPath, //Path to program
NULL, //Parameters
NULL, //Default directory
SW_SHOW); //How to open
}

char s_valor1[20] = "0", s_valor2[20] = "0", s_total[20] = "0";
int valor1, valor2, total;

LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
 switch (message)
 {
 case WM_CREATE:
 DesenharObjectos(hwnd,message,wParam,lParam);
 break;
 case WM_COMMAND:

 if ((HIWORD(wParam) == BN_CLICKED))
 {

 SendMessage(
 (HWND) EditNum1,
 (UINT) EM_GETLINE,
 (WPARAM) 1,
 (LPARAM) &s_valor1
 );

 SendMessage((HWND)EditNum2,(UINT)EM_GETLINE,(WPARAM)1,(LPARAM) &s_valor2);

 valor1 = atoi(s_valor1);
 valor2 = atoi(s_valor2);

 switch (LOWORD(wParam))
 {
 case ID_BUTTONmais:
 total = valor1+valor2;
 break;
 case ID_BUTTONmenos:
 total = valor1-valor2;
 break;
 case ID_BUTTONvezes:
 total = valor1*valor2;
 break;
 case ID_BUTTONdividir:
 total = valor1 / valor2;
 break;
 case ID_BUTTONurl:
 abreURL();
 break;
 }

 itoa (total,s_total,10);

 SendMessage(
 (HWND) EditTotal,
 (UINT) WM_SETTEXT,
 (WPARAM) 0,
 (LPARAM) &s_total
 );

 }
 break;
 case WM_DESTROY:
 PostQuitMessage (0);
 break;
 default:
 return DefWindowProc (hwnd, message, wParam, lParam);
 }
 return 0;
}

20 motivos para abandonar o Internet Explorer

IE é Lixo

IE é LixoComo a maioria já sabe, o Internet Explorer veio junto com o Windows e acabou sendo o navegador mais utilizado pelos usuários até então. Mas isso está mudando, justamente por que o IE está deixando de acompanhar o progresso dos demais navegadores e por questões comerciais, também estará proibido de vir agregado às versões posteriores do Windows. Se você é programador, provavelmente já deve estar habituado com o Google Analytics e já deve ter notado que existe uma crescente diferença do uso do IE em comparação com outros navegadores como o Firefox e o Google Chrome, isso vem mudando de alguns meses para cá… O IE está perdendo seu status no ranking. De fato, o Internet Explorer ficou pior, e está cada vez mais cheio de defeitos. O grande problema de do IE é que ele quer ser exclusivo e segue uma linha independente, não respeita a normalização W3C, isso faz dele o que é hoje, um navegador cheio de defeitos e mal elaborado, praticamente o vilão para nós programadores, que temos que recorrer aos hacks, e nos virar por aí para consertar suas falhas. A maioria dos defeitos está relacionada à forma com que ele faz a leitura dos scripts. Além é claro, da leitura das folhas de estilos, estar muito a baixo das espectativas dos usuários. Por esse e tantos outros motivos, decidi manifestar pelo menos 20 motivos para jogá-lo para escanteio:

1º – (versão anteriores ao IE8) Não são compatíveis com o css: border-radius, fica dependendo de um arquivo chamado border-radius.htc que a maioria dos servidores não lêem ou não vem cofigurado o mime-type text/x-component.

2º – As medidas de margin e padding não seguem uma formatação padronizada para a W3C e nem seguem a mesma linha entre suas versões (IE6,IE7,IE8,IE9) – todos são diferentes no comportamento…

3º – Frequentemente dá erro de JavaScript, por questões de dificuldade de leitura quando há excesso de parâmetros e de leituras dos códigos.

4º – É o mais lerdo na leitura das páginas

5º – O download é muito lento, a versão do IE9 (apesar de vir com um gerenciador de download, continua sendo a mais lenta, e agora piorou ainda mais, perdeu a barra de progresso…)

6º – Quando o Javascript dá um erro ele para de ler o restante dos javascripts e faz com que o restante “sem erro” fique dando erro, já o firefox despreza a falha e continua aceitando os scripts que estão corretos na sequência.

7º – As fontes são mais estouradas do que o normal, fugindo totalmente do padrão W3C.

8º – Não aceita variável javascript sem declarar…

9º – Não carrega CSS via ajax, somente se colocar dentro do body… e tem comportamento instável…(ou seja, cada vez abre de um jeito).

10º – Não permite ajuste manual do textarea dos formulários

11º – A janela de alerta não oferece a opção de remoção.

12º – Class e ID tem comportamentos completamente diferentes no IE quando recebem o mesmo parâmetro, enquanto nos demais navegadores o comportamento é igual.

13º – Os parâmetros de CSS: (padding e margin) são menores que nos outros navegadores.

15º – É o único que modifica a cor de linha da tabela por parametrização de tabela, os demais seguem a parametrização por CSS.

16º – Tem tendências desalinhadas em listas (ul, li, ol…)

17º – É o mais inseguro dos navegadores, frequentemente atacado por vírus.

18º – Só roda no windows e as versões IE7, IE8 e IE9 não se instalam em versões anteriores do windows XP.

19º – A maioria dos sites não são carregados com 100% de seus recursos no IE.

20º – Não aceita uso de classe ou ID na caixa de listagem no ‘<option>opção</option>’ e não exibe o texto completo no lista (somente a versão 9 corrigiu o problema)

E para finalizar, devo deixar claro que “por mais que digam que o IE9 é o único que está capacitado para HTML5, isso não é verdade, o Google Chrome já está muito acima disso, e já vem com muito mais frameworks como as ferramentas “canvas”, entre outras. Os atuais navegadores como o Firefox também já estarão se adequando com sua nova versão Firefox 5.0, que acaba de chegar no mercado, assim como a HTML5 que vem caminhando para um novo patamar de evolução da Internet, em breve teremos muito mais dos atuais navegadores, o que não poderemos esperar dessa versão 9 cheio de bugs e falhas. Aguardem.

Ele foi deportado por causa do Twitter

Alberto Azevedo, 28 anos

 

Alberto Azevedo, 28 anos

Nunca foi a intenção de Alberto Azevedo, 28, fazer um “bate e volta” para a Austrália, país localizado do outro lado do mundo, a cerca de 13 mil km. Mas foi o que aconteceu com o paulistano após ser deportado de Sidney por um motivo um tanto incomum: de acordo com a imigração australiana, as mensagens postadas no Twitter e no Facebook do rapaz não condiziam com as informações de seu visto de turista. Acabou voltando para casa sem ver um canguru sequer.

Bebeto Le Garfs, como é conhecido pelos amigos e clientes do albergue que mantem em São Paulo, aterrissou no aeroporto Internacional de Sidney na última terça-feira (5), mas em um primeiro momento foi impedido de entrar no país por ter esquecido a carteirinha que atestava sua vacinação contra Febre Amarela. O fato, porém, levou Bebeto a um impasse ainda maior quando a imigração passou a fazer perguntas e realizou uma busca em seus perfis de redes sociais.

Um dos tuítes do rapaz, que também trabalha extraoficialmente como DJ, indicava que ele iria tocar em uma festa. Escrito em inglês, o texto dizia: “I just got my first gig in Sidney!” (“acabei de conseguir meu primeiro ‘bico’ em Sidney). Após vasculhar seu perfil virtual, a imigração fez perguntas sobre trabalho remunerado na Austrália, algo que seu visto não permitia. Bebeto afirmou que participaria mesmo de uma festa como DJ, a convite de um amigo australiano, mas, segundo ele, não sabia que receberia por isso.

“Em nenhum momento tratamos de grana. Não faço isso pela grana. Se por acaso rolasse algo, eu provavelmente gastaria em bebidas do próprio local. Mas não era essa minha intenção. Aliás, minha viagem era puramente turística. Ia passar por várias cidades e encontrar alguns amigos. Por ser DJ, não me recusaria a tocar em algumas festas se fosse chamado, queria tocar meu som pros gringos e me divertir junto com eles”.

O caso complicou ainda mais, relatou o brasileiro, quando os australianos pediram seu telefone celular. Nele, localizaram o número de telefone do amigo que o havia convidado para tocar na Austrália. Ao atender o telefone, contou Bebeto, o rapaz teria confirmado a história da festa e disse que poderia pagar até 50 dólares australianos, ou cerca de R$ 82, por hora de discotecagem (algo que o brasileiro classificou como “mal entendido”, “brecha”).

Senha
Em uma tentativa de convencer os australianos de que realmente não sabia do dinheiro, Bebeto disse ter oferecido a senha de seu perfil no Facebook para demonstrar que a negociação (feita integralmente na rede social) não envolvia nenhuma quantia em dinheiro. Segundo o paulistano, o Facebook reconheceu que o acesso provinha de um local nunca antes visitado e não autorizou o login por motivos de segurança.

Documento que cancela visto de turista de Alberto

Documento que cancela visto de turista de Alberto

“Eu queria que eles vissem o histórico. Se eles quisessem que eu desbloqueasse o Facebook, eu teria desbloqueado. Pretendia resolver a situação, mas aparentemente eles não quiseram mais perder tempo comigo e não quiseram checar”, afirma Bebeto.

Resultado: depois de uma série de entrevistas, Alberto Azevedo, que saiu de sua casa em São Paulo na manhã do dia 4  de abril e só retornou 62 horas depois, no dia 6, perdeu o visto de turista para entrar na Austrália e amargou um prejuízo de R$ 2.000, o preço da passagem. Antes de ser deportado, ele passou a noite no centro de detenção com pessoas de outras nacionalidades, onde – como faz questão de dizer – foi muito bem tratado.

Procurada, a embaixada da Austrália no Brasil disse que está averiguando o caso, mas ainda não se pronunciou oficialmente.

Tuíte em que Alberto comemora festa em Sidney

Twitt em que Alberto comemora festa em Sidney

“Em nenhum momento senti que houve preconceito. Acho que houve um exagero da parte deles e uma negligência em entender o que eu estava tentando explicar. Mas aprendi a lição: vou deixar meu Twitter pessoal sempre privado e levar todos os documentos necessários da próxima vez.”

 

Fonte: UOL Tecnologia

Para que server afinal nossa contribuição?

Imposto

O dinheiro que sai dos nossos bolsos para pagar impostos deveria estar contribuindo para a melhoria da cidade. A prefeitura não aproveita nosso dinheiro, não entendo por que devo pagar impostos se esse dinheiro é somente para enriquecer o bolso dos políticos, destes vereadores que só se apresentam em campanha, eu nunca tive apoio de nenhum vereador na minha região, nunca vi reformas, não vejo melhorias, só vejo o lixo que é jogado na calçada todo santo dia, ele está lá apodrecendo. Também não vejo crescimento na qualidade do Estado, continua tudo a mesma porcaria de sempre. Enquanto lá fora, eu consigo obter notícias de melhorias, aqui na cidade eu só vejo políticos aproveitadores. Desonestos, corruptos, a bandidagem comendo solta… Por que neste País, as coisas tem que ser assim? Até quando meu Deus!

O caos urbano

Cidade de São Paulo

fonte: www.spositostudio.com

A cidade de São Paulo não muda, as pessoas não mudam, só quem muda são os paulistanos, uma grande parcela de pessoas legais está migrando para fora do país ou saindo do Estado, isso porque todo mundo que vive aqui hoje só está querendo levar vantagem ou está acostumado com a má educação. Se você cidadão que vive no meio deste caus urbano como eu e que enfrenta este cotidiano mal servido, já deve ter notado que a população que fica na cidade pouco se importa com o próximo, ou se importa mais com o próprio bem estar, é esta gente que está dominando a cidade, você pode notar isso nos ônibus, no metrô, nas ruas, essa cultura podre de funk com palavras vulgares, que hoje a criançada aprende logo cedo e já sai falando por aí como se fosse a coisa mais natural do mundo. Veja se isso acontece nos países de primeiro mundo? Pois é… E pra não dizerem que a coisa não piorou, a cidade está cada vez mais porca, o trânsito mais caótico, as igrejas mais vazias. Ah, mas é claro, as igrejas se disseminaram em várias tribos agora, tem a Igreja Universal, a Pentecostal de Deus, a Internacional do Reino de Deus, e todas as outras terminadas com Deus que começam com a palavra terminada por “al”… o charlatanismo virou um modismo, e os fiéis nem se fala.

Eu só não saí da cidade porque gosto muito da minha casa, mas se não fosse isso, já teria mudado com certeza. Ainda estou decidindo o que é mais sensato. Mas por enquanto, eu vou levando essa rotina mesmo, enfrentando essa cidade dia-a-dia, onde o mal humor impera.

São Paulo é uma cidade que acorda doente, com gente saindo às pressas, que não oferece lugar para os idosos, que não se importa com a mãe grávida, que tumultua na porta do metrô para conseguir sentar 1 minuto no banco (que ridículo). Também tem a turma do fundão no ônibus, aqueles que ficam prensados na porta atrapalhando a decida dos demais, vai entender, isso porque a maioria vai descer só no final (como pode?).

Veja se isso acontece no 1º mundo??? Aí você me pergunta, “Você gosta de São Paulo?” Mas é claro que gosto, eu adoro minha cidade, eu não gosto é dessa atitude grotesca, dessa gentália que transforma a cidade numa verdadeira “Casa dos Horrores”. Se você pode melhorar como ser humano, faça sua parte, contribua para que nossa cidade seja melhor, não alimente esta cultura podre, não jogue papel pela janela do ônibus ou nas ruas, não queira ser o primeiro de todos, não se ausente à ajudar o próximo, não deixe de se importar com o próximo, assim a cidade agradesce e a população vive muito melhor.

“Uma boa ação, promove várias boas ações”.

Seja um programador de sucesso

Programador de Sucesso

Programador de SucessoSe você pretende começar a trabalhar com criação de páginas na internet, deve se preparar para um mercado bastante competitivo. Isso ocorre porque a internet evolui rapidamente  e abandona aquilo que se torna incompatível com o gosto do seu usuário. Por este motivo, é preciso estar preparado para acompanhar todas estas mudanças. Não me refiro a mudanças de versões de software, ou de tecnologia da internet, embora isso também seja fundamental,  o mais importante que se deve trabalhar é o pensamento focado para o cliente, e principalmente no universo que o circunda. A medida que seus esforços são canalizados para esta sinergia homem-máquina, as chances de resultados positivos são muito mais propícias de acontecer.

Quando falamos do universo, estamos nos referindo ao cotidiano de cada usuário, de cada pessoa que hoje acessa a Internet em busca de algo e que em grande parte desta busca, o resultado é quase satisfatório. Hoje o usuário enxerga a internet basicamente como um meio de se comunicar com o mundo, mas são poucos que vêem nesta atmosfera, um meio de sobrevivência. Estes poucos, nós programadores, somos responsáveis por construir este universo, este palco de histórias e co-relações com os nossos usuários. Por este motivo, é importante pensar na internet como uma verdadeira biblioteca de informações, e antes de tudo, tratar cada assunto de forma organizada e compreensiva.

Ao construir um site, não basta ter conteúdo, é preciso evoluir para novos conceitos ou novas implementações. Ter algo a mais, é sempre bom como cartão de visita, é preciso pensar que o usuário é um verdadeiro telespectador que nos assiste. No caso do comércio eletrônico, se você pretende vender algo pela internet, seu usuário só irá comprá-lo se for confiável, de seu interesse e se estiver com a qualidade que ele imagina, a partir de modelos que já visitou ou já conhece, como Submarino, Saraiva etc.

Assim, você pode se basear nestes modelos funcionais para proporcionar ao seu usuário aquilo que eles esperam.

Em geral, um site deve oferecer aquilo que o usuário deseja, com as características e facilidades que outros sites já ofereceram para ele.

Se seu site é só mais um, no meio, ele provavelmente não irá retornar. Para obter uma frequência é necessário oferecer algo de produtivo ou interessante, de preferência, algo que interaja com suas necessidades e gostos.

Desta forma, é preciso pensar nas possibilidades dos caminhos felizes e dos caminhos infelizes, quando se trata de comunicar alguma coisa a alguém; o bom gosto é fundamental, entretanto, cada um veste uma cor de camisa diferente, por isso, deve ser pensado que esta camisa deve agradar aos dois times. O branco, o preto, enfim…

A tendência da internet é seguir uma linha cada vez mais “clean”, transparecendo idéias e facilitando o acesso de seu usuário à informação que ele procura.

O envolvimento que seu usuário tem com seu site, dependerá também da frequência que você o atualiza. Desta forma, é importante estar sempre criando condições para que seu usuário não se sinta abandonado dentro dele, e mais importante ainda, é dar ouvidos à ele. Afinal, você não vai querer que seu usuário entre no seu mar de informações e não tenha um bibliotecário para atendê-lo. Justamente, isso faz toda a diferença.

E isso pode ser construído de diversas formas, desde sistemas automáticos, como de comunicação direta, o que é mais recomendável.

Acredito que não se dá para automatizar respostas às pessoas, pelo menos não tenho conhecimento de sistemas perfeitos que façam este trabalho por nós. Veja a Telefonica por exemplo, quando você liga para a central de relacionamento do cliente speedy vem uma gravação pedindo para você dizer algo, e sempre que você responde a palavra: “suporte”, ela te joga para outros setores aleatoriamente, é completamente “burra”, aliás o sistema em si é burro, ou seja, ele prepara o cliente para ficar nervoso para depois ser atendido. Não seria melhor atendê-lo pessoalmente e depois comunicar a informação através de um sistema automático… Ou mesmo ter um atendimento direto. Mas acredito que o melhor já foi abandonado a muito tempo por estas empresas, porque afinal de contas, quanto mais eles conseguirem atrasar o atendimento, mais fácil do usuário desistir.

Enfim, construa seu site com a qualidade que o cliente quer que você terá o retorno que deseja.

Como criar popup em div box

Popup

Hoje em dia os navegadores já vêm com a funcionalidade de bloqueio de pop-ups, ou janelas sobressalentes, porém existe uma forma de evitar que o navegador bloqueie uma informação ou algum conteúdo que seja importante ser aberto com uma mensagem atual, ou uma propaganda… ou o que quer que seja. Esta forma é através das DIVs, você pode fixar uma div sobre seu site, para isso, basta criar uma div fixa na tela, com um botão flutuante à esquerda para que seja fechada.

Uma forma de fazer isso, é justamente através de uma simples função em Javascript, que você pode definir a abertura e o fechamento da mesma.

Então, para fazer a sua div, vc deve definir as regras para que ela esteja visível ou invisível (defina em seu CSS o parâmetro: display:block; ou display:none, também pode ser usado visibility:hidden, ou visibility:visible), isso vai depender do comportamento que você deseja para sua div.

Então sua html ficaria mais ou menos assim:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Teste de Popup</title>
<script type="text/javascript">
// abre a DIV
function abreJanela(id){
var obj = document.getElementById(id);
$(obj).style.display='block';
}

// fecha a DIV
function fechaJanela(id){
var obj = document.getElementById(id);
obj.style.display='none';
}
</script>
<style type="text/css">
body {
	background: #000000;
}
#popup {
		font-family:Arial, Helvetica, sans-serif;
		display:block;
		position:absolute;
		width:300px;
		height:450px;
		left:50%;
		top:30px;
		border:1px solid #000000;
		padding:6px;
		color:#000000;
		background: #fff;
		z-index:300;
       }
#popup p{ line-height:18px}
#popup a.fechar {
                 color:#000033;
				 text-align:right;
                 float:right;
                 text-decoration:none;
				 font-family:Arial, Helvetica, sans-serif;
				 width:20px;
				 }
#popup a:hover.fechar { color:#003399
				      }	

</style>
</head>

<body>

<a href="javascript:;" onclick="abreJanela('popup')">Abrir Popup</a>

<div id="popup">
<a href="javascript:;" onclick="fechaJanela('popup')" class="fechar">X</a>
<!--//aqui entra seu conteúdo-->
<p>teste de mensagem</p>
</div>
</body>
</html>

Porém você pode implementar ainda mais seu código javascript, usando recursos do jQuery:
conforme abaixo:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
// abre a DIV
function abreJanela(id){
         var obj = document.getElementById(id);
         $(obj).fadeIn("slow");
         }
// fecha a DIV
function fechaJanela(id){
         var obj = document.getElementById(id);
         $(obj).fadeOut("slow");
         }
</script>

Projetos

Abas - Guia de Compras Online

Atualmente estou trabalhando em um projeto de site de sistema de publicação de trabalhos por autor.
Já está quase pronto, em breve irei publicá-lo aqui.

Também tenho outro em andamento, que deverá sofrer algumas alterações solicitadas pelo cliente:

Confira o projeto através do link:

http://www.abas.org/guiadecompras/