SlideShare a Scribd company logo
1 of 73
Download to read offline
Building Smart
Web Sites
Responsible Web Development
Francisco Paulo




                                    www.opensoft.pt
                  www.opensoft.pt
Responsible Web Design


              www.opensoft.pt
Web 2.0 == User Experience



                 www.opensoft.pt
O que interessa no design de uma Wep App?


           Apresentação

             Interacção

            Organização

                           www.opensoft.pt
Qual é o objectivo do design?

Comunicar rapidamente...

     “O que é isto?” – Utilidade

     “Como é que eu uso isto?” – Usabilidade

     “Eu quero usar isto?” – Desirability*

   * Pago um café a quem conseguir arranjar uma tradução de jeito para isto...



                                                      www.opensoft.pt
Hierarquia Visual


           www.opensoft.pt
“Don’t make me think.”
- Steve Krug




                     www.opensoft.pt
www.opensoft.pt
www.opensoft.pt
www.opensoft.pt
O que permite uma hierarquia visual bem definida?


               Mensagens

                   Acções

               Informação

                               www.opensoft.pt
Mensagem

      www.opensoft.pt
patientsLikeMe
 Lorem ipsum dolor sit amet, consectetuer adipiscing elit.

                                                                                                   Sign in
                                      Track your progress                                           Username
         Suspendisse in
        ligula. Ut vel
                                      Proin ut pede at pede pretium semper. Donec id
        odio. Sed

                                      orci id felis vehicula ullamcorper.
                                                                                                    Password

                                                                                                                        Sign in
                                      Find people like you
                                      Proin ut pede at pede pretium semper. Donec id                               Forgot your password?
                                      orci id felis vehicula ullamcorper.


                                                                                                   New to patientslikeme?
  ?                        ...        Learn from our network                                          Join Now
                                      Proin ut pede at pede pretium semper. Donec id
                                      orci id felis vehicula ullamcorper.
                                                                                                        Donec scelerisque ultricies felis.
                                                                                                        Cras vehicula nunc.
       Our Network                                                                                      Aenean orci.

        Fusce sollicitudin                       Pellentesque
          Proin ut pede                            eget luctus tortor
          at pede                                  nisl quis nisi
          pretium semper



      Curabitur luctus egestas sapien. Phasellus fermentum nisl et enim. Suspendisse facilisis rhoncus lacus. Sed
      convallis magna at pede.



patientsLikeMe            Nulla risus diam, commodo sed, consequat in, sodales in, elit. Fusce sollicitudin fringilla diam. Nam gravida diam malesuada tellus.




                                                                                                                www.opensoft.pt
patientsLikeMe                                                                       Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
                                      my space                       patients
  our network

                                                                                                    Sign in
                  A new system of medical care
                                                                                                     Username
                             by patients, for patients
            • Donec porttitor                                                                        Password
            • dolor lacinia ullamcorper
            • dui tortor tincidunt                                                                                       Sign in
                                                                                                                    Forgot your password?


                                                                                                    New to patientslikeme?
                                         Track your progress
          Suspendisse in
                                                                                                       Join Now
         ligula. Ut vel
                                         Proin ut pede at pede pretium semper. Donec id
         odio. Sed

                                         orci id felis vehicula ullamcorper.
                                                                                                         Donec scelerisque ultricies felis.
                                                                                                         Cras vehicula nunc.
                                         Find people like you
                                                                                                         Aenean orci.
                                         Proin ut pede at pede pretium semper. Donec id
                                         orci id felis vehicula ullamcorper.


                                                                                                        Curabitur luctus egestas sapien. Phasellus
   ?                         ...                                                                        fermentum nisl et enim. Suspendisse facilisis
                                         Learn from our network
                                                                                                        rhoncus lacus. Sed convallis magna at pede.
                                         Proin ut pede at pede pretium semper. Donec id
                                         orci id felis vehicula ullamcorper.




patientsLikeMe             Nulla risus diam, commodo sed, consequat in, sodales in, elit. Fusce sollicitudin fringilla diam. Nam gravida diam malesuada tellus.




                                                                                                                 www.opensoft.pt
patientsLikeMe                                                                Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  A new system of medical care
               by patients, for patients                                                                      Join Now (it’s free!)
                                                                                                           Already a member? Sign in
           Find out what surviving patient are trying.
           Learn about new treatments
           Determine what’s right for you




     Track your progress                                   Find people like you                                       Learn with us
                                                                                                                    ?                   ...
                  Suspendisse in
                 ligula. Ut vel
                 odio. Sed




     Proin ut pede at pede pretium                        Proin ut pede at pede pretium                        Proin ut pede at pede pretium
     semper. Donec id orci id felis                       semper. Donec id orci id felis                       semper. Donec id orci id felis
     vehicula ullamcorper.                                vehicula ullamcorper.                                vehicula ullamcorper.


                                                                                                              Nunc tincidunt mi sed dui. Fusce arcu est,
    Nunc tincidunt mi sed dui. Fusce arcu est,
                                                                                                              posuere ultrices, vestibulum eget.
    posuere ultrices, vestibulum eget.


        Curabitur luctus egestas sapien. Phasellus fermentum nisl et enim. Suspendisse facilisis rhoncus lacus.




patientsLikeMe      Nulla risus diam, commodo sed, consequat in, sodales in, elit. Fusce sollicitudin fringilla diam. Nam gravida diam malesuada tellus.




                                                                                                          www.opensoft.pt
patientsLikeMe                                                                  How it works? | About us | Contact links


    Share real results with real patients
                                                                                                     Track
                                                                                         Suspendis


    for real diseases.
                                                                                        se in
                                                                                        ligula.


                                                                                                     Proin ut pede at pede
                                                                                                     pretium semper. Donec id
                                                                                                     felis vehicula ullamcorper.
       Patientslikeme is an entire community striving to make                                        Find out more...
       patients live better each day, every day.

                                                                                                     Share
          Join Now (it’s free!) Already a member? Sign in
                                                                                                     Proin ut pede at pede
                                                                                                     pretium semper. Donec id
                                                                                                     felis vehicula ullamcorper.
                                                                                                     Find out more...

                                                                                               ...
                                                                                                     Learn
                                                                                 ?
   Active communities
       Proin ut pede asd erea        Proin ut pede asd erea                                        Proin ut pede at pede
       At pede donc id               At pede donc id                                               pretium semper. Donec id
                                                                                                     felis vehicula ullamcorper.
       Felis pretium semper          Felis pretium semper
                                                                                                     Find out more...




  patientsLikeMe     About us | Site map | User agreement Nulla risus diam, commodo sed, consequat in, sodales in, elit. Fusce sollicitudin
                     fringilla diam. Nam gravida diam malesuada tellus.




                                                                                             www.opensoft.pt
Acções

     www.opensoft.pt
www.opensoft.pt
www.opensoft.pt
Informação

       www.opensoft.pt
1.53 1.36 2.69 3.64 3.32 3.78 3.66 4.22 3.82 2.41 2.92 2.47
3.17 3.02 3.59 3.90 3.80 3.65 3.80 3.41 3.30 2.88 3.65 3.42
2.01 2.08 2.39 2.85 6.21 9.33 5.70 7.58 7.63 5.64 2.66 1.83
4.35 3.17 3.06 1.37 0.19 0.11 0.03 0.05 0.20 1.22 2.86 3.09
5.35 4.03 3.77 2.51 1.84 1.59 0.85 1.22 1.94 3.25 5.65 6.00
1.53 1.36 2.69 3.64 3.32 3.78 3.66 4.22 3.82 2.41 2.92 2.47
3.17 3.02 3.59 3.90 3.80 3.65 3.80 3.41 3.30 2.88 3.65 3.42
2.01 2.08 2.39 2.85 6.21 9.33 5.70 7.58 7.63 5.64 2.66 1.83
4.35 3.17 3.06 1.37 0.19 0.11 0.03 0.05 0.20 1.22 2.86 3.09
5.35 4.03 3.77 2.51 1.84 1.59 0.85 1.22 1.94 3.25 5.65 6.00
1.53 1.36 2.69 3.64 3.32 3.78 3.66 4.22 3.82 2.41 2.92 2.47
3.17 3.02 3.59 3.90 3.80 3.65 3.80 3.41 3.30 2.88 3.65 3.42
2.01 2.08 2.39 2.85 6.21 9.33 5.70 7.58 7.63 5.64 2.66 1.83




                                            www.opensoft.pt
Precipitação média (mm/mês)

              Jan    Fev    Mar    Abr    Mai    Jun     Jul   Ago    Set    Out    Nov    Dez
S.Francisco   4.35   3.17   3.06   1.37   0.19   0.11   0.03   0.05   0.20   1.22   2.86   3.09
Seattle       5.35   4.03   3.77   2.51   1.84   1.59   0.85   1.22   1.94   3.25   5.65   6.00
Chicago       1.53   1.36   2.69   3.64   3.32   3.78   3.66   4.22   3.82   2.41   2.92   2.47
New York      3.17   3.02   3.59   3.90   3.80   3.65   3.80   3.41   3.30   2.88   3.65   3.42
Miami         2.01   2.08   2.39   2.85   6.21   9.33   5.70   7.58   7.63   5.64   2.66   1.83




                                                               www.opensoft.pt
Precipitação média (mm/mês)

              Jan    Fev    Mar    Abr    Mai    Jun     Jul   Ago    Set    Out    Nov    Dez
S.Francisco   4.35   3.17   3.06   1.37   0.19   0.11   0.03   0.05   0.20   1.22   2.86   3.09
Seattle       5.35   4.03   3.77   2.51   1.84   1.59   0.85   1.22   1.94   3.25   5.65   6.00
Chicago       1.53   1.36   2.69   3.64   3.32   3.78   3.66   4.22   3.82   2.41   2.92   2.47
New York      3.17   3.02   3.59   3.90   3.80   3.65   3.80   3.41   3.30   2.88   3.65   3.42
Miami         2.01   2.08   2.39   2.85   6.21   9.33   5.70   7.58   7.63   5.64   2.66   1.83




                                                               www.opensoft.pt
Precipitação média (mm/mês)

              Jan    Fev    Mar    Abr    Mai    Jun     Jul   Ago    Set    Out    Nov    Dez
S.Francisco   4.35   3.17   3.06   1.37   0.19   0.11   0.03   0.05   0.20   1.22   2.86   3.09
Seattle       5.35   4.03   3.77   2.51   1.84   1.59   0.85   1.22   1.94   3.25   5.65   6.00
Chicago       1.53   1.36   2.69   3.64   3.32   3.78   3.66   4.22   3.82   2.41   2.92   2.47
New York      3.17   3.02   3.59   3.90   3.80   3.65   3.80   3.41   3.30   2.88   3.65   4.42
Miami         2.01   2.08   2.39   2.85   6.21   9.33   5.70   7.58   7.63   5.64   2.66   1.83




                                                               www.opensoft.pt
Precipitação média (mm/mês)               4+    3-4 2-3 1-2 < 1
               Jan   Fev Mar Abr     Mai    Jun   Jul   Ago     Set       Out Nov Dez
S.Francisco

Seattle

Chicago

New York

Miami




                                                        www.opensoft.pt
Acessibilidade


          www.opensoft.pt
www.opensoft.pt
99% das aplicações web
  não são acessíveis.




                         www.opensoft.pt
99% das aplicações web
 que dizem que o são,
   estão a “mentir”.




                         www.opensoft.pt
Percentagem do gráfico
 que se parece com o
       Pacman.




                         www.opensoft.pt
Checklists
Web Content Accessibility Guidelines 1.0, 2.0 e 3.0
                www.w3.org/TR/WCAG10/




                                        www.opensoft.pt
“
Use quot;altquot; for the IMG, INPUT, and APPLET elements, or
provide a text equivalent in the content of the OBJECT and



                  ”
APPLET elements.



                 <img src=“...”/>

        <img alt=“Mapa” src=“...”/>

            <img alt=“” src=“...”/>

                                       www.opensoft.pt
User                                    Aplicação Web
                                          Acessível




                            WAI - AAA

                 WAI - AA
       WAI - A

                                                               Developer
                                                         xx




                                             www.opensoft.pt
Checklists
       vs
User Experience

          www.opensoft.pt
www.opensoft.pt
Tableless Web Design


             www.opensoft.pt
www.opensoft.pt
Tabelas dentro de tabelas dentro de tabelas...

  O markup estético ultrapassa o conteúdo.

  O consumo de         largura   de     banda           aumenta
desnecessariamente.

  O parsing da página por screen readers torna-se
caótico.

 Dificulta o trabalho de web crawlers.


                                      www.opensoft.pt
header




menu        content




       footer




                      www.opensoft.pt
<table>
   <tr>
       <td colspan=quot;2quot;>
              header
       </td>
   </tr>
   <tr>
                          <div>header</div>
       <td>
              menu
                          <div>menu</div>
       </td>
                          <div>content</div>
       <td>
              content
                          <div>footer</div>
       </td>
   </tr>
   <tr>
       <td colspan=quot;2quot;>
              footer
       </td>
   </tr>
</table>


                           www.opensoft.pt
<div class=“header”>    .header {
       header
</div>                  }

<div class=“menu”>      .menu {
       menu                    float:left;
</div>                  }
<div class=“content”>   .content {
       content                 float:left;
</div>                  }

<div class=“footer”>    .footer {
       footer                  clear: left;
</div>                  }




                              www.opensoft.pt
O standard W3C recomenda a utilização deste tipo de
design.

  Praticamente todos os browsers suportam CSS para
controlo de layout.

  Facilita modificações ao design.

  Melhora substancialmente a acessibilidade.

  Elimina muito código desnecessário.

   Torna mais fácil aos motores de pesquisa indexar o
site.
                                     www.opensoft.pt
Unobtrusive Web Design


              www.opensoft.pt
HTML




   CSS




JAVASCRIPT   www.opensoft.pt
HTML

CSS
        JS




             www.opensoft.pt
<span style=quot;border: 1px solid red;quot; onmouseover=quot;alert('O hai! I can haz msg?');quot;>
          Point your mouse here.
</span>




                  Point your mouse here




                                                         www.opensoft.pt
HTML
                        JS




       CSS




             www.opensoft.pt
<script type=quot;text/javascriptquot;>
     function showMsg(){
          alert('O hai! I can haz msg?');
     }
</script>

<style type=quot;text/cssquot;>
     .msg {
          border: 1px solid red;
     }
</style>

<span class=quot;msgquot; onmouseover=quot;showMsg();quot;>Point your mouse here.</span>




                                                  www.opensoft.pt
Isto é o melhor que
conseguimos fazer?

            www.opensoft.pt
CSS                       JavaScript
design                      behavior




class                          id



         XHTML/HTML
           content/data




                            www.opensoft.pt
<link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“.cssquot; />
                                                           .css
                                                            .css
                                                             .css


           .html


                                                            .css
                                                             .css
                                                               .js
         <script type=“text/javascript” src=quot;.js“/>


            language=“javascript”


                                                        www.opensoft.pt
jQuery.fn = jQuery.prototype = {
       init: function( selector, context ) {
                // Make sure that a selection was provided
                selector = selector || document;

              // Handle $(DOMElement)


               ( JQuery )
              if ( selector.nodeType ) {
                       this[0] = selector;
                       this.length = 1;
                       return this;
              }
              // Handle HTML strings
              if ( typeof selector == quot;stringquot; ) {
                       // Are we dealing with HTML string or an ID?
                       var match = quickExpr.exec( selector );

                                             www.opensoft.pt
HTML

       <span id=quot;testequot; class=quot;testequot;>Point your mouse here.</span>




       .teste {
CSS




          border: 1px solid red;
       }




                                           var teste =
       $(document).ready(function() {      document.getElementById(”teste”);
          $(quot;#testequot;).click(function() {
JS




            alert(quot;Hello world!quot;);         teste.onclick = function() {
          });                                alert(quot;Hello world!quot;);
        });                                }

                                                www.opensoft.pt
<html>
   <head>
     <script type=quot;text/javascript“ src=quot;jquery.jsquot;></script>
     <script type=quot;text/javascriptquot; src=quot;example.jsquot;></script>
     <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=quot;example.css“/>
   </head>
   <body>

      ...

    <span id=quot;testequot; class=quot;testequot;>Point your mouse here.</span>

      ...

   </body>
</html>




                                         www.opensoft.pt
Reboot


         www.opensoft.pt
Os browsers não carregam uma página
          a partir da mesma base.



   Isto leva a comportamentos inesperados.



O nosso objectivo é minimizar estas diferenças.


                               www.opensoft.pt
html, body, div, span, applet, object, iframe, h1, h2, h3, h4,
h5, h6, p, blockquote, pre, a, abbr, acronym, address, big,
cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small,
strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td
{
          margin: 0;
          padding: 0;
          border: 0;
          outline: 0;
          font-weight: inherit;
          font-style: inherit;
          font-size: 100%;
          font-family: inherit;
          vertical-align: baseline;
}



                                               www.opensoft.pt
<html>
    <head>
        <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=quot;reset.cssquot; media=quot;allquot;/>
        <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=quot;page.cssquot; media=quot;screenquot;/>
    </head>

    <body>
        ...
    </body>
</html>




                                                     www.opensoft.pt
Browser Specific CSS


             www.opensoft.pt
www.opensoft.pt
.center {
     text-align: -moz-center;
     _text-align: center;
}




                       www.opensoft.pt
<html>
    <head>
        <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“main.cssquot; media=“screenquot;/>
        <!- - [if IE]>
                     <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“ie.cssquot; media=“screenquot;/>
        <![endif] - ->
    </head>

    <body>
        ...
    </body>
</html>




                                                            www.opensoft.pt
<!- - [if IE 6]>
             <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“ie.cssquot; media=“screenquot;/>
<![endif] - ->


<!- - [if lt IE 8]>
              <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“ie.cssquot; media=“screenquot;/>
<![endif] - ->


<!- - [if lte IE 8]>
             <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“ie.cssquot; media=“screenquot;/>
<![endif] - ->


<!- - [if gt IE 6]>
             <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“ie.cssquot; media=“screenquot;/>
<![endif] - ->




                                                          www.opensoft.pt
Liquid vs Fixed


           www.opensoft.pt
www.opensoft.pt
50px

                       .logo {
                           margin-top:50px;
                           margin-left:50px;
                50px
                           height:50px;
50px
                           width:50px;
                       }

       50px




                       www.opensoft.pt
www.opensoft.pt
body {
        5em
                       font-size:62.5%
                    }

                    .logo {
              5em
                        margin-top:5em;
5em
                        margin-left:5em;
                        height:5em;
                        width:5em;
                    }
      5em




                    www.opensoft.pt
www.opensoft.pt
Responsible Web Design
   Hierarquia Visual
    Acessibilidade
 Tableless Web Design
Unobtrusive Web Design
       Reboot
 Browser Specific CSS
    Liquid vs Fixed
                  www.opensoft.pt
www.opensoft.pt
Obrigado pela vossa presença.

                       Francisco Paulo
           francisco.paulo@opensoft.pt




        www.opensoft.pt
                      www.opensoft.pt
Áreas de Actuação:

E-Government - Desenvolvimento de Portais Transaccionais
SIMN – Sistema Integrado de Métodos Notariais - aplicação informática
desenvolvida de raíz para os Cartórios Notariais Portugueses;
Contact – Gestão Integrada de Actos e Contratos - aplicação informática
desenvolvida para advogados e solicitadores;



Principais Clientes:




                                                         www.opensoft.pt

More Related Content

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Recently uploaded (20)

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Featured

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 

Building Smart Web Sites

  • 1. Building Smart Web Sites Responsible Web Development Francisco Paulo www.opensoft.pt www.opensoft.pt
  • 2. Responsible Web Design www.opensoft.pt
  • 3. Web 2.0 == User Experience www.opensoft.pt
  • 4. O que interessa no design de uma Wep App? Apresentação Interacção Organização www.opensoft.pt
  • 5. Qual é o objectivo do design? Comunicar rapidamente... “O que é isto?” – Utilidade “Como é que eu uso isto?” – Usabilidade “Eu quero usar isto?” – Desirability* * Pago um café a quem conseguir arranjar uma tradução de jeito para isto... www.opensoft.pt
  • 6. Hierarquia Visual www.opensoft.pt
  • 7. “Don’t make me think.” - Steve Krug www.opensoft.pt
  • 11. O que permite uma hierarquia visual bem definida? Mensagens Acções Informação www.opensoft.pt
  • 12. Mensagem www.opensoft.pt
  • 13. patientsLikeMe Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sign in Track your progress Username Suspendisse in ligula. Ut vel Proin ut pede at pede pretium semper. Donec id odio. Sed orci id felis vehicula ullamcorper. Password Sign in Find people like you Proin ut pede at pede pretium semper. Donec id Forgot your password? orci id felis vehicula ullamcorper. New to patientslikeme? ? ... Learn from our network Join Now Proin ut pede at pede pretium semper. Donec id orci id felis vehicula ullamcorper. Donec scelerisque ultricies felis. Cras vehicula nunc. Our Network Aenean orci. Fusce sollicitudin Pellentesque Proin ut pede eget luctus tortor at pede nisl quis nisi pretium semper Curabitur luctus egestas sapien. Phasellus fermentum nisl et enim. Suspendisse facilisis rhoncus lacus. Sed convallis magna at pede. patientsLikeMe Nulla risus diam, commodo sed, consequat in, sodales in, elit. Fusce sollicitudin fringilla diam. Nam gravida diam malesuada tellus. www.opensoft.pt
  • 14. patientsLikeMe Lorem ipsum dolor sit amet, consectetuer adipiscing elit. my space patients our network Sign in A new system of medical care Username by patients, for patients • Donec porttitor Password • dolor lacinia ullamcorper • dui tortor tincidunt Sign in Forgot your password? New to patientslikeme? Track your progress Suspendisse in Join Now ligula. Ut vel Proin ut pede at pede pretium semper. Donec id odio. Sed orci id felis vehicula ullamcorper. Donec scelerisque ultricies felis. Cras vehicula nunc. Find people like you Aenean orci. Proin ut pede at pede pretium semper. Donec id orci id felis vehicula ullamcorper. Curabitur luctus egestas sapien. Phasellus ? ... fermentum nisl et enim. Suspendisse facilisis Learn from our network rhoncus lacus. Sed convallis magna at pede. Proin ut pede at pede pretium semper. Donec id orci id felis vehicula ullamcorper. patientsLikeMe Nulla risus diam, commodo sed, consequat in, sodales in, elit. Fusce sollicitudin fringilla diam. Nam gravida diam malesuada tellus. www.opensoft.pt
  • 15. patientsLikeMe Lorem ipsum dolor sit amet, consectetuer adipiscing elit. A new system of medical care by patients, for patients Join Now (it’s free!) Already a member? Sign in Find out what surviving patient are trying. Learn about new treatments Determine what’s right for you Track your progress Find people like you Learn with us ? ... Suspendisse in ligula. Ut vel odio. Sed Proin ut pede at pede pretium Proin ut pede at pede pretium Proin ut pede at pede pretium semper. Donec id orci id felis semper. Donec id orci id felis semper. Donec id orci id felis vehicula ullamcorper. vehicula ullamcorper. vehicula ullamcorper. Nunc tincidunt mi sed dui. Fusce arcu est, Nunc tincidunt mi sed dui. Fusce arcu est, posuere ultrices, vestibulum eget. posuere ultrices, vestibulum eget. Curabitur luctus egestas sapien. Phasellus fermentum nisl et enim. Suspendisse facilisis rhoncus lacus. patientsLikeMe Nulla risus diam, commodo sed, consequat in, sodales in, elit. Fusce sollicitudin fringilla diam. Nam gravida diam malesuada tellus. www.opensoft.pt
  • 16. patientsLikeMe How it works? | About us | Contact links Share real results with real patients Track Suspendis for real diseases. se in ligula. Proin ut pede at pede pretium semper. Donec id felis vehicula ullamcorper. Patientslikeme is an entire community striving to make Find out more... patients live better each day, every day. Share Join Now (it’s free!) Already a member? Sign in Proin ut pede at pede pretium semper. Donec id felis vehicula ullamcorper. Find out more... ... Learn ? Active communities  Proin ut pede asd erea  Proin ut pede asd erea Proin ut pede at pede  At pede donc id  At pede donc id pretium semper. Donec id felis vehicula ullamcorper.  Felis pretium semper  Felis pretium semper Find out more... patientsLikeMe About us | Site map | User agreement Nulla risus diam, commodo sed, consequat in, sodales in, elit. Fusce sollicitudin fringilla diam. Nam gravida diam malesuada tellus. www.opensoft.pt
  • 17. Acções www.opensoft.pt
  • 20. Informação www.opensoft.pt
  • 21. 1.53 1.36 2.69 3.64 3.32 3.78 3.66 4.22 3.82 2.41 2.92 2.47 3.17 3.02 3.59 3.90 3.80 3.65 3.80 3.41 3.30 2.88 3.65 3.42 2.01 2.08 2.39 2.85 6.21 9.33 5.70 7.58 7.63 5.64 2.66 1.83 4.35 3.17 3.06 1.37 0.19 0.11 0.03 0.05 0.20 1.22 2.86 3.09 5.35 4.03 3.77 2.51 1.84 1.59 0.85 1.22 1.94 3.25 5.65 6.00 1.53 1.36 2.69 3.64 3.32 3.78 3.66 4.22 3.82 2.41 2.92 2.47 3.17 3.02 3.59 3.90 3.80 3.65 3.80 3.41 3.30 2.88 3.65 3.42 2.01 2.08 2.39 2.85 6.21 9.33 5.70 7.58 7.63 5.64 2.66 1.83 4.35 3.17 3.06 1.37 0.19 0.11 0.03 0.05 0.20 1.22 2.86 3.09 5.35 4.03 3.77 2.51 1.84 1.59 0.85 1.22 1.94 3.25 5.65 6.00 1.53 1.36 2.69 3.64 3.32 3.78 3.66 4.22 3.82 2.41 2.92 2.47 3.17 3.02 3.59 3.90 3.80 3.65 3.80 3.41 3.30 2.88 3.65 3.42 2.01 2.08 2.39 2.85 6.21 9.33 5.70 7.58 7.63 5.64 2.66 1.83 www.opensoft.pt
  • 22. Precipitação média (mm/mês) Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez S.Francisco 4.35 3.17 3.06 1.37 0.19 0.11 0.03 0.05 0.20 1.22 2.86 3.09 Seattle 5.35 4.03 3.77 2.51 1.84 1.59 0.85 1.22 1.94 3.25 5.65 6.00 Chicago 1.53 1.36 2.69 3.64 3.32 3.78 3.66 4.22 3.82 2.41 2.92 2.47 New York 3.17 3.02 3.59 3.90 3.80 3.65 3.80 3.41 3.30 2.88 3.65 3.42 Miami 2.01 2.08 2.39 2.85 6.21 9.33 5.70 7.58 7.63 5.64 2.66 1.83 www.opensoft.pt
  • 23. Precipitação média (mm/mês) Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez S.Francisco 4.35 3.17 3.06 1.37 0.19 0.11 0.03 0.05 0.20 1.22 2.86 3.09 Seattle 5.35 4.03 3.77 2.51 1.84 1.59 0.85 1.22 1.94 3.25 5.65 6.00 Chicago 1.53 1.36 2.69 3.64 3.32 3.78 3.66 4.22 3.82 2.41 2.92 2.47 New York 3.17 3.02 3.59 3.90 3.80 3.65 3.80 3.41 3.30 2.88 3.65 3.42 Miami 2.01 2.08 2.39 2.85 6.21 9.33 5.70 7.58 7.63 5.64 2.66 1.83 www.opensoft.pt
  • 24. Precipitação média (mm/mês) Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez S.Francisco 4.35 3.17 3.06 1.37 0.19 0.11 0.03 0.05 0.20 1.22 2.86 3.09 Seattle 5.35 4.03 3.77 2.51 1.84 1.59 0.85 1.22 1.94 3.25 5.65 6.00 Chicago 1.53 1.36 2.69 3.64 3.32 3.78 3.66 4.22 3.82 2.41 2.92 2.47 New York 3.17 3.02 3.59 3.90 3.80 3.65 3.80 3.41 3.30 2.88 3.65 4.42 Miami 2.01 2.08 2.39 2.85 6.21 9.33 5.70 7.58 7.63 5.64 2.66 1.83 www.opensoft.pt
  • 25. Precipitação média (mm/mês) 4+ 3-4 2-3 1-2 < 1 Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez S.Francisco Seattle Chicago New York Miami www.opensoft.pt
  • 26. Acessibilidade www.opensoft.pt
  • 28. 99% das aplicações web não são acessíveis. www.opensoft.pt
  • 29. 99% das aplicações web que dizem que o são, estão a “mentir”. www.opensoft.pt
  • 30. Percentagem do gráfico que se parece com o Pacman. www.opensoft.pt
  • 31. Checklists Web Content Accessibility Guidelines 1.0, 2.0 e 3.0 www.w3.org/TR/WCAG10/ www.opensoft.pt
  • 32. “ Use quot;altquot; for the IMG, INPUT, and APPLET elements, or provide a text equivalent in the content of the OBJECT and ” APPLET elements. <img src=“...”/> <img alt=“Mapa” src=“...”/> <img alt=“” src=“...”/> www.opensoft.pt
  • 33. User Aplicação Web Acessível WAI - AAA WAI - AA WAI - A Developer xx www.opensoft.pt
  • 34. Checklists vs User Experience www.opensoft.pt
  • 36. Tableless Web Design www.opensoft.pt
  • 38. Tabelas dentro de tabelas dentro de tabelas... O markup estético ultrapassa o conteúdo. O consumo de largura de banda aumenta desnecessariamente. O parsing da página por screen readers torna-se caótico. Dificulta o trabalho de web crawlers. www.opensoft.pt
  • 39. header menu content footer www.opensoft.pt
  • 40. <table> <tr> <td colspan=quot;2quot;> header </td> </tr> <tr> <div>header</div> <td> menu <div>menu</div> </td> <div>content</div> <td> content <div>footer</div> </td> </tr> <tr> <td colspan=quot;2quot;> footer </td> </tr> </table> www.opensoft.pt
  • 41. <div class=“header”> .header { header </div> } <div class=“menu”> .menu { menu float:left; </div> } <div class=“content”> .content { content float:left; </div> } <div class=“footer”> .footer { footer clear: left; </div> } www.opensoft.pt
  • 42. O standard W3C recomenda a utilização deste tipo de design. Praticamente todos os browsers suportam CSS para controlo de layout. Facilita modificações ao design. Melhora substancialmente a acessibilidade. Elimina muito código desnecessário. Torna mais fácil aos motores de pesquisa indexar o site. www.opensoft.pt
  • 43. Unobtrusive Web Design www.opensoft.pt
  • 44. HTML CSS JAVASCRIPT www.opensoft.pt
  • 45. HTML CSS JS www.opensoft.pt
  • 46. <span style=quot;border: 1px solid red;quot; onmouseover=quot;alert('O hai! I can haz msg?');quot;> Point your mouse here. </span> Point your mouse here www.opensoft.pt
  • 47. HTML JS CSS www.opensoft.pt
  • 48. <script type=quot;text/javascriptquot;> function showMsg(){ alert('O hai! I can haz msg?'); } </script> <style type=quot;text/cssquot;> .msg { border: 1px solid red; } </style> <span class=quot;msgquot; onmouseover=quot;showMsg();quot;>Point your mouse here.</span> www.opensoft.pt
  • 49. Isto é o melhor que conseguimos fazer? www.opensoft.pt
  • 50. CSS JavaScript design behavior class id XHTML/HTML content/data www.opensoft.pt
  • 51. <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“.cssquot; /> .css .css .css .html .css .css .js <script type=“text/javascript” src=quot;.js“/> language=“javascript” www.opensoft.pt
  • 52. jQuery.fn = jQuery.prototype = { init: function( selector, context ) { // Make sure that a selection was provided selector = selector || document; // Handle $(DOMElement) ( JQuery ) if ( selector.nodeType ) { this[0] = selector; this.length = 1; return this; } // Handle HTML strings if ( typeof selector == quot;stringquot; ) { // Are we dealing with HTML string or an ID? var match = quickExpr.exec( selector ); www.opensoft.pt
  • 53. HTML <span id=quot;testequot; class=quot;testequot;>Point your mouse here.</span> .teste { CSS border: 1px solid red; } var teste = $(document).ready(function() { document.getElementById(”teste”); $(quot;#testequot;).click(function() { JS alert(quot;Hello world!quot;); teste.onclick = function() { }); alert(quot;Hello world!quot;); }); } www.opensoft.pt
  • 54. <html> <head> <script type=quot;text/javascript“ src=quot;jquery.jsquot;></script> <script type=quot;text/javascriptquot; src=quot;example.jsquot;></script> <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=quot;example.css“/> </head> <body> ... <span id=quot;testequot; class=quot;testequot;>Point your mouse here.</span> ... </body> </html> www.opensoft.pt
  • 55. Reboot www.opensoft.pt
  • 56. Os browsers não carregam uma página a partir da mesma base. Isto leva a comportamentos inesperados. O nosso objectivo é minimizar estas diferenças. www.opensoft.pt
  • 57. html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; outline: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; } www.opensoft.pt
  • 58. <html> <head> <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=quot;reset.cssquot; media=quot;allquot;/> <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=quot;page.cssquot; media=quot;screenquot;/> </head> <body> ... </body> </html> www.opensoft.pt
  • 59. Browser Specific CSS www.opensoft.pt
  • 61. .center { text-align: -moz-center; _text-align: center; } www.opensoft.pt
  • 62. <html> <head> <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“main.cssquot; media=“screenquot;/> <!- - [if IE]> <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“ie.cssquot; media=“screenquot;/> <![endif] - -> </head> <body> ... </body> </html> www.opensoft.pt
  • 63. <!- - [if IE 6]> <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“ie.cssquot; media=“screenquot;/> <![endif] - -> <!- - [if lt IE 8]> <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“ie.cssquot; media=“screenquot;/> <![endif] - -> <!- - [if lte IE 8]> <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“ie.cssquot; media=“screenquot;/> <![endif] - -> <!- - [if gt IE 6]> <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“ie.cssquot; media=“screenquot;/> <![endif] - -> www.opensoft.pt
  • 64. Liquid vs Fixed www.opensoft.pt
  • 66. 50px .logo { margin-top:50px; margin-left:50px; 50px height:50px; 50px width:50px; } 50px www.opensoft.pt
  • 68. body { 5em font-size:62.5% } .logo { 5em margin-top:5em; 5em margin-left:5em; height:5em; width:5em; } 5em www.opensoft.pt
  • 70. Responsible Web Design Hierarquia Visual Acessibilidade Tableless Web Design Unobtrusive Web Design Reboot Browser Specific CSS Liquid vs Fixed www.opensoft.pt
  • 72. Obrigado pela vossa presença. Francisco Paulo francisco.paulo@opensoft.pt www.opensoft.pt www.opensoft.pt
  • 73. Áreas de Actuação: E-Government - Desenvolvimento de Portais Transaccionais SIMN – Sistema Integrado de Métodos Notariais - aplicação informática desenvolvida de raíz para os Cartórios Notariais Portugueses; Contact – Gestão Integrada de Actos e Contratos - aplicação informática desenvolvida para advogados e solicitadores; Principais Clientes: www.opensoft.pt