Application Development - eWeek


Battery 500 Project Charged Up over All-Electric Cars
Charting the Final Frontier--Google Maps for Indoors
Get Smarter Technology on Your Mobile!
  Application Development


Testing Web Apps




x}ks6*Q3{L=RJmlki;[HHbL\Ǔ|9u_zP﹙ĶD th4I"nZ΄\ܦdÀ>}O$wB}NUQR #7,(bP<HwO7n[Y0Ra᳙*,Q  tjOt0]2d6;k6!o4ekOh cߨ_X``1Zt|R!j 9iݑ |i @I>R(ޗ#Ѻ!QQy_HږyD6GǮJQL NZ] Z3ˆ辥$)5= \o4QL1H6}~8MZ QM%$7 .mqVRk0~b[4Ip\.*!}=-:ҍۉ}4 .j.9am S /dRr-2YʲnMw3a[mѡlطGZ4jjC)7+{1 2+[ٹRU5MQ ? n8uh;ZCJy]JZ{rs~Nnx9vty/ȯ;YJMD߀j0QEVKY/ ZHsو&lXaV|[kUV1?&w@"rVJz!~8 >_u4>wOHA҉,N?> . !_w nr@ i/]"/KŗG)LY4C ! ,6ɌSHu t:9AsEjୱJ+Ҕ& 9B:A`ܺkN49,8蟩$m4@r5XSl؅ ROFo4| ~ަ,-|y"brݢHPsnSEI7#DL vxr!DKI 88g^R]E1\apY<<~uwެ-Ujմ_ӲKwI|UO~S3G#вnZsV61y+YE*GEX@8ʍ85m!SGñA S&s;,y8`;}FwgԴHwH<: M/G˥ ucj>; ä +pw>-Fv1s{Q {>0iCkFY`GIE 6]LR}t 9q HhQ0|s0Y[3aP#[ѽ:Fz?a= 0.ZmAe^~}¢!1y@XȁbtG &SsnPBxx?ɜ+) 'C/0" EEKy3@ $h-az.? ŊݑvZ)JPl=!ԑtNܡZ|MfJ9cb -d[b}IlΌ eV&vϏaZLbo7], Sl?-'Z Xk5UKZ%m *МLBO+FEQ S#U^?])xXL9}pp* 7R'>~X /-ÂI{¦uS9}L{"z [I37?`b< c~3ˀ)4+9pPwg >`|=-0Xհݹ2q|}I4o5+=;dp7 Ry v|;pG9#rUϚX 5<9.&B#5MSʚLqUUIYhJ ~ŠptjKCݼ~h"é;hqNNSНB#D9zQځӬXKuoo[1Tۥa]hk%R:?![r5}a׼6F]RYRKHDlHfc/XK+ezlӇ8&e6LG%E?7еۡ`5p?\Re` }dҶlMjG֨rv'`ܲK(Ք6 [IF|t|ꟸMKߵ("}r3C6Ola2ې 7uJ[Y*,b3)4j+zF 烊7@E30kŠ%lDc*t퇙grpuה=- Υ_8gםy+U}=8`GLmRǖMB{ӞW+H>Z3YClX(%UMhj"yd\s˰e0|j}]v)+ܸ~ QK!VȅC@:*Y#V "IJkYPzP* `k_.{]9 ܉ ܕVR5󀻬3wdlrKxJrE} l{b Sքc'MXtSyEWӐap‘"}j0 hs}!T0|,Wԫ5H`mS@AkSU ӄ.E^q~ VWK aE"'1ڧ>s!a*/7+ )Z;z^*k 9ЪZZs8]et5MQ1pʐkӘG2gdY hVz\ g2|]>?/i)Ձ",߸X֪̑g~hJJ]aQn6=IT\S=@Q>M|ݤ1p Nu 2.izIROs{@&:Lpz]'Qd:)nQ{{k7÷ GL)߭~*9WIH5 ]Uj{_ s 4G\0BRֿbEOp?n ]^*RvQ *s>PV9۷BlpH75 SXp| ޠ[PHe, ,"z⨵J+)=2a7ZTe#111u?|qq`zE+oRo(0h_hCm$\auv1g +f[i)37+Eu{:pHJۦ>]E!2a^= W~w]ab>":qa^kq ,}U^vqH*G-}<~1LAIP 4 7="Y#OeU{^0lg睳Ahy# 84+ǽw!\w/ŗlOzk~w/;R AJ`&=}}yңU4*$y}|hq\3MF 1S 36Q B@I˸O;לY0z!BZOUc)zF E0֢>V   k@JA=Vo8۟Y%D[( `E/Щ caHFrI'zZG>gu3_fIgxDwDn/Er}#w8/wbBQr 7?%E٦z:7dj&ubNL5W"v-{t1èQLwʩt e~=m3겨uC%L<1GтN)gtJē(=)jښIմg"8I5F4A2 uID? Mt4DPW Hقڗ5=ܻ8]ҽxs<:RpE2à{>&B}XyKw8Ťb%h4eW:Bzc? H-@N fP ߼=oq>p]Qz AC~gM}\0n7~v߶bO07)۽l9nia[nǡ8 0^l"4P$EUՊZƶFr,WU $]eOFfpZt>2&\%3ٌ՛wD/ Z2fP:;f׍[qGecf0Xo{U"t?h3i8~JM;isVD)]Kĵ"vKJIymQzSDDKh#i>R_{+!bidOc@/ulvk)輳2O a[#ؖrLp`-ݺܭ)“g$`DI@RgigA j(l3Z0\f>V2OJc+YT^?1;hV6֊ v™+[ &/5;S&5ŷ.%_h3[QO(^ hލ|"t(u©Kt[:`8[&?5#d,Ge6ՒVQ `.fşn&??z9/ǜ,"58sxtH룻yc#[O!BWF7Йֶ8 Y苪!Th6ƘgrNuܯ:fxK |-<vxkErjM,Xݓ﷞ E)UѪidG>bkšDF?,. sC|AdTR fcLF2[ Q8|z+n -1xsv(phG>FC+x4;-Ʉb;9|'Cq$eX-u"1u#@$NjƬw9Dib":2jav4p[H& M\`]*iGU7a89yEY²> F-p(L#x!;{bG-> z,-, MvX:qgޜeA[:(~ ,'/%^O֣VKjYIȄcG_f&Dp$ғY@5{Ȼaȗ)+s4֖ o 0I)I6}zE,R%<R8 RQi+9D$ @aJM86Tؑ3TEҔm9\dI=):tLC]NɖJW'Ry2Apn@"pDUp`7[;UߕTIoO⧔ ڮX1 {}˾ ^0RS)iHYa yEI 2)3rh"@ {1z-si=՗KsH&/N>hvɢQGIz SkpȝA"q@H"fĝQbk[ܝP/fjA(u}j/^#Ĥ#Wj" V?H')`^;)b[l{[}mPb Hh$]V*>x@I^ 8KhxJZQ-aI@9P똑z t-nmY%RI(D$d90uK oIuE-U*'Ds1*ǘ)*0 H֣^{ mw/DH}S-._3-ۮ;5Y` ɠ|G˴>rm+JF\k,5Tˇ7pPZּlVo}Nz2*ź։SI)[:۰J`6aY &1nt=g1:`ͩ낺QKjZ]Õm€38#~d>3@@0%_xݞN֓Alɘf̬W.`n#vBR3/fGʯԅR)׷Ӟ111" |`km_kөzn[m_,2^S`C'2X L#xa"l&[ǽ9߈v79U *[m6S#K~SG_DÕ]a1Z(4Dx<Z~uK橾b膁9(%ںn}/|)Ny@oV M6TrDk/3WVh}Et-![B&c[AN`|X@I}wI'MSk1{ IJN܀jkcuM5c66ŗ ֨Wŕŕk0]Kw>7-]%lup>?re\7m찱$“*HWu"[DFv<#aZSx $]ẃKNtGo>loZ*p',ǫ_Wkk:ضյMxwt)ۼRrWjpLufc~CP2o2@44kI/NIM&8Ǧpu=8cYXYBgEgKS ,çNqJ5%=D/]/V>צܹϺx'|-^/Ym/^ݷ$!̫꿓$}UW1n9),C$&Hm91䅸j#(+8 4-~7N~Ge:S9gG8P`܀ )ZWIY#;sO %<{qBtI#$:[^"1f?C* O2ū\OX~lnXpìfmo0I_nm|y+1uGa),*8I6 ߋhg¤ZYt'O|L'dQ?L8Mx8n uK g{i=b$؆eOyv=qٍQnT#=t!Ykj}ۏo TQܕ; 5|5XsH4#zeg i^]я T.-~/yOtXTi.`W0mpO]E a!/(/$ƽ"O~3&G/h+jj5VA^ybj=="@Ÿ Rxc) +hWSۏAE!Ljڡee3-t{ (M"ΙTh,ZNtAĥkc.TZMi%` Zk^gYJ+Șz~j=! cmkTAN9-S5ySo-DZ!դG9^`Ÿkrcs !Vi ԴzYM'_hE']XӃR'9ǜnik<,T_Huvü`lRʥz5yG6]x kH1v; kF%.`|XKǏ>HP)%$Fv/[ |tPnq\oz8A:`J8hkH㽻WԄm%5DXcE]fs' !th'&n* 6V*t|?H-g:w:Il峎#1/׷Wٜm/0̊ۊRo5Jۅ]aYJܰS;ca#X ⸓G Ki~RJn%:* W"Y`6ي۳jmz|$TPIibjJیh-;Q5&/2S/ L-! J!,՟.GG>L{S7Wq+TՕG?ɺextܐJ"rG-i7%xtMt;#7+ 8C$\Бܟޔj@*oSw5Ri4<~}A6ڄyiǥ4Y0c3&wtd.4<~yp 2'&ΐŪ!,EE|z['AU}>l1dn+62 1jLl3cG:7/9;A纏Vyp稯-d9-`#'U B YQS3y9asH ]\W\Afx3;#x7tT$l.c|XZC8ްn?Ĉo9fkHג s;{%|k4;7\_R¬KHe Ft883)9ҊF2*mM />nr霦[ք ၰ 5"  Bb٤) 0װÞ1;@3 %6:U?r@>WLQXj*!b3wاX,o |,Y@TT (aU OTZP,(Ϗpk2ꧦH0^Hdnc .X`,r_jࢯJ2ϼy?]&0Ln̂ٚzy6t(YS1U&FnS*n ѱryLR ] 4Bq0hQJ+U K;:B"DILv]a]M-#Y8AaP8Z  +z+uT'I]WP)9#{˪<>nV?,4W PRx 4 V cv(Cd2`f:,B}uuI]w:rݽt{r<m[4z?N9~>]}>^vBa&hL/湾,Ǜ,# rvپ0;eNq(g:ͅfUw;'һZIJ/ρs_r_sʯz}I8Sރ^N9r`})ഓS~'π>g9yBCw}yC9CL2/B~Ng(ٮu3>E">"@\9_^E^ ?9_@EN9e^\%e@rOK/G\\5u~}o@?֗_S^9)O@O9rߛorڿ\'I9s} S)Ju/*苼k Oy射<)o@y>*P/nr ث:WKs9^}NNV&ݫiz]!,.5PW[k3/Y;3ݲI  r𞫫i@Lwe<-cENz).~QFxdB$h{U2 3ƴVb>sr)'DŽn`z[<G4q=Pޫ.v)npK|SG0nsOkz>s"[~r^<^ȬuVlNAm,P0Oaf>N-؇ ߊč,yq %h00(\?|Ղo@/kOgM>كo ҹl;35K쓭?M}f`ͼTB$pF;w0<_P`26UF` Ԋz!OJ1=4`­tK1;BDO"OӉ4:fӤw*ۼx7lTy Nd@?o 7Xi- 2gW+C<C+4Xmou1*m {{[dךe:`LI$S{C#KфwY"Dۼ&hbУmwhĉr(9PǏ2Da tOЫoaXKgDr&ߢjF0PYn&XC-&lyjmbӿ+ Hr9rX {oCJ9=fGydaw.kz>kZ么 ps1q.`/]ಓ_b'cEy&fb P|_ |n9/XU곣='̄0QtrrgG4WB&+wpna`a?=N@U~O=G"2cT =xS4E)VlkՂ[#rɖ)W B㑸| ,*-Ŋ]rI巻R%B]qSumTT`x.^| Њg/dgm|c9*3>S3m-(E'r}7 |I^[zQڗ@1aҧQg*Yů}_M?PɕX)Isŧ|om|B,[kl`Iշ $ϣa6^XWI3v3C@_v܅eUhJl;9uh2- \E&xvMw؆;q^Gd9a7e#+nv˧T'>5ك|2h}́!Xs#Q%7` |(7ܨNaEVb0yM&.q?d|;b[p?pM5g2QTĻ )Yj%xd휙(@P W91"u6٠^:yl뎮EcuݍüȶJW{%!Ү\)Vcʥ.Sܟ?Bbx҇fFHEP`y%K@ W 78ǩk Vmxtzj{ݾX 瘻k3HUgwz*)ufe6r!* XGڦZmQaWAn`P{zwn}c\91V`=suVRdGB LnHl^^kti( aaɗX6k+[ȀHY;D5Ra&(/z0~ \\KkÐüpaf#3/& Ax =`#hxj"nRh1)Lb'k%I''60̈́׏Ä -"+roq3}[יJ؏pZxq{ϢQəȩ8vU_|JѬd;j +sOg |I>":xqeQ  T*7;KwbA; <]E!$o~V;y!:yvډ1Jbq')t(>od-/=nT*(K- Qw}ɂ`RXi}"ӳ/ .A|>hy6n&_1!?[e6URA$ᑝ7}M1uc*륭{Q'b(5lS2G4K_hjvcϦO*LΗ +q>lgLp -ϱ=RZ`'l/Z[5