Visa Kopun blogi kiinnostavista asioista

Tilaa RSS-syöte. Vanhempia kirjoituksia löytyy arkiston ja haun kautta. Yhteyden minuun saa sähköpostilla, visa@visakopu.net.

Arkisto: Koodaus

location: Kyoto; position: fixed;

Keskiviikko 25.5.2005 klo 09:38. Koodaus, Maailmalta, Omat jutut.

Viikonloppuna lähdetään häämatkalle Kiotoon. Hieman jännittää matkustaa niin vieraaseen kulttuuriin. Aikaisemmat matkat eivät ole koskaan jännittäneet näin paljon, mutta nyt on menossa paikkaan, jossa on paitsi ihan eri tasoinen kielimuuri ja vieläpä paljon tapoja, jotka olisi turistinakin kohteliasta osata.

Jonathan Snook on tehnyt hienon uuden leiskan, jossa käytetään position: fixed -tyylimäärittelyä ja JavaScriptiä, joka toteuttaa saman myös Windowsin IE:ssä. Osaisipa sitä itsekin tehdä noin hienoa jälkeä.

Wi-Gear on julkistanut Bluetooth-kuulokkeet iPodille. Kuulokkeiden nimenä on iMuffs. Ehkä muff ei tarkoita kaikissa englannissa samaa kuin joissakin muissa.

3 kommenttia.

Julkaisujärjestelmä haussa

Lauantai 21.5.2005 klo 10:55. Koodaus.

Olen etsimässä julkaisujärjestelmää, jolla ylläpitää saittia, jolla on tuhansia rekisteröityneitä käyttäjiä ja viime aikoina ollut kuukausittain noin 100 000 kävijää ja viisi-kuusi miljoonaa hittiä. Löytyisiköhän tämän blogin lukijoilta kommenttia asiaan?

Alustavaatimuksena on PHP ja MySQL. Järjestelmän ei tarvitse olla ilmainen, mutta se on tietysti plussaa. Lisävaatimuksia ovat:

  • Uutissähke/blogityyppisten artikkelien ylläpito
  • Uutisten järjestäminen eri kategorioihin
  • Uutisten kommentointi
  • Keskustelualue (joko sisäänrakennettuna tai lisäosana)
  • Käyttäjien rekisteröityminen ja kohtuulliset työkalut käyttäjähallintaan
  • Ulkoasun helppo muokattavuus

Toivomuslistalla ovat:

  • Sisältösivujen luonti ja muokkaus
  • Useita (muokattavia) sivupohjia sisältösivuille
  • Kuvakirjasto artikkelikuville
  • Uutis- ja keskusteluhaku
  • Käyttäjien väliset yksityisviestit
  • XML-RPC-rajapinta

Vahvimpina ehdokkaina tällä hetkellä ovat hassusti nimetty Land Down Under ja Xoops. Molempien kehitystyö vaikuttaa aktiiviselta ja niiden peruskokoonpanoon kuuluu suuri osa vaatimuslistasta. Vaihtoehtona on ollut myös Mambo, mutta lisäosana löytynyt keskutelualuemoduuli ei vakuuttanut.

Olin jo joulun alla valmistelemassa tätä samaa päivitystä WordPress–phpBB-yhdistelmällä. Yhdistäminen sujuikin ihan hyvin, esimerkiksi session jakaminen kahden järjestelmän kesken on helppoa, mutta muutama ongelma esiin nousi. WordPressin ulkoasua on helppo muokata, mutta phpBB:n kanssa se on yhtä helvettiä. Sen takia suurin osa phpBB-keskustelualueista näyttääkin lähes samalta kuin default-ulkoasu. Ja koska phpBB on toteutettu aivan eri tavalla kuin WordPress (lue: huonommin), olisi tällä tavalla täytynyt pitää yllä mahdollisia sivupohjan muutoksia kahdessa eri paikassa.

Lopullisesti päätin kuopata phpBB:n, kun huomasin, kuinka usein siitä löytyy kriittisiä tietoturva-aukkoja. Niitä myös käytetään aktiivisesti hyväksi, joten ylläpitäjänä pitäisi olla koko ajan varuillaan ja varmuuskopioita tekemässä.

Julkaisujärjestelmää etsivälle isona apuna on muuten opensourceCMS.com, jossa voi testata eri PHP/MySQL-järjestelmiä käytännössä.

7 kommenttia.

Flickr vaihtoi AJAX:iin

Perjantai 13.5.2005 klo 21:17. Internet, Koodaus.

Valokuvien arkistoimiseen ja jakamiseen tarkoitettu Flickr on tehnyt merkittävän muutoksen saitillaan. Aikaisemmin yksittäiset valokuvat näytettiin Flashilla, koska saitin alkuperäisillä tekijöillä oli siitä parhaiten kokemusta ja se oli ainoa tapa, jolla he saivat tehtyä käyttäjille mahdollisuuden laittaa siirreltäviä merkintöjä kuviensa päälle. Merkinnät toimivat eräänlaisina digitaalisina postit-lappuina, joista kuvan katsoja voi myöhemmin lukea tarkemmin kuvan jostakin yksityiskohdasta.

Flashin huonona puolena oli hitaus. Vaikka sivu latautuikin usein nopeasti, jäi Flash latailemaan kuvaa turhan pitkäksi aikaa. Nyt tekijät ovat julkistaneet blogissaan uuden ajan alkaneen Flickrissä. Kuvat näytetään normaaliin tapaan sivulla ja merkintöjen lisäämiseen ja näyttämiseen käytetään DHTML:ää. Ainakin Safarissa nopeuseron huomaa selvästi.

Lisäksi Flickrissä käytetään nyt AJAX:ia, joka on ehdottomasti päivän sana www-sovelluksissa. AJAX on lyhenne sanoista Asynchronous JavaScript and XML ja sillä tarkoitetaan HTML:n, CSS:n, JavaScriptin ja XML:n liittoa, joka mahdollistaa monenlaisten entistä reaaliaikaisempien sovellusten toteuttamisen. Flickrissä AJAX näkyy esimerkiksi kuvan yläpuolella olevaa Blog This -nappia painaessa. Lista käyttäjän blogeista ladataan vasta kun nappia on painettu ja sisältö muuttuu ilman, että sivua tarvitsee erikseen ladata uudestaan.

Wikipedia kertoo lisää AJAX:sta.

1 kommentti.

Safari läpäisee Acid2-testin

Torstai 28.4.2005 klo 10:03. Apple ja Mac, Internet, Koodaus.

Dave Hyatt, yksi Applen Safari-selaimen pääohjelmoijista, kertoo blogissaan, että Safari läpäisee nyt Acid2-testin, ensimmäisenä selaimena maailmassa.

The Web Standards Projectin (WaSP) kehittämässä Acid2-testissä testataan, kuinka hyvin selain tukee uusimpia CSS-tekniikoita ja kuinka se reagoi virheelliseen koodiin.

Here are the patches for all of the problems fixed in Safari to make the test pass.

  • Fix parsing of the REL attribute on links.
  • Disallow TABLE inside P in strict mode.
  • Add support for min/max-width/height for positioned elements.
  • Fix the rendering glitch that causes the reference page to paint garbage.
  • Make sure that percentages that go to auto don’t mess up the self-collapsing block check.
  • Implement SGML-style comment parsing for HTML in strict mode.
  • Make sure empty tables honor CSS-specified height in strict mode.
  • Fix baseline alignment within table cells to use the bottom of empty blocks. Fix floats to not grow if child floats overhang but the height of the outer float is auto.
  • Make sure percentage min-height goes to 0 and not auto when the percentage does not apply.
  • Implement fallback content for the object element and fix intrinsic sizing to work properly when images are specified in the object element.
  • Disable antialiasing for the drawing of polygons.

Vielä ei ole tiedossa milloin tehdyt korjaukset näkyvät käyttäjille.

5 kommenttia.

Olion tyypin tutkiminen JavaScriptissä

Torstai 17.2.2005 klo 14:51. Koodaus.

Olion tyypin tutkiminen on yllättävän vaikeaa JavaScriptissä. Muuttuja voi sisältää minkätyyppisen olion tahansa eikä kielessä ole isArray()- tai isString()-funktioita.

Planet PDF:n artikkeli kuitenkin auttoi asiassa. Tässä hieman mukailtu versio, jossa ei käytetä regexejä:

function isArray(obj)
{
   if (typeof obj == "object")
   {
      var criterion = obj.constructor.toString().toLowerCase() == "array";
      return (criterion != null);
   }
   return false;
}

Ei kommentteja.

Apple Storeen linkittäminen

Torstai 10.2.2005 klo 10:17. Apple ja Mac, Koodaus.

Apple ei anna mitään helppoa tapaa linkittää yksittäiseen tuotteeseen nettikaupassaan. Linkin voi kuitenkin kehittää itse. Linkkiin tarvitaan tieto tuotteen varastokoodista. Varastokoodin saa selville lisäämällä tuotteen ostoskoriinsa ja sitten katsomalla ostoskorin sisältöä. Siellä jokaisen tuotteen alla on viisimerkkinen koodi kohdassa “Part Number”. Sen avulla voi luoda tarvittavan linkin, esimerkiksi näin: Tucano Second Skin dark grey for PowerBook 15” (esimerkissä varastokoodi on TA760).

1 kommentti.

Sirkesalolta levy ja saitti

Keskiviikko 9.2.2005 klo 10:30. Koodaus, Musiikki.

Aki Sirkesalolta ilmestyy postuumisti albumi “Sanasta miestä” parin viikon päästä. Levy on äänitetty syksyllä, mutta laulaja ei itse pääse julkaisusta iloitsemaan Thaimaan ikävien tapahtumien jälkeen.

Sonera Plazan uutisen mukaan Sirkesalo oli tiiviisti mukana myös levyn ulkoasun ja saitin suunnittelussa. Koodaajanörttejä kiinnostaa, että kyseinen saitti, www.akisirkesalo.com, on toteutettu validilla XHTML:llä ja CSS:llä ilman taulukoita.

Ei kommentteja.

TheServerSide Java Symposium 2005

Tiistai 8.2.2005 klo 10:00. Duuni, Koodaus.

Onko tämän blogin lukijoista joku mahdollisesti osallistumassa TheServerSide Java Symposiumiin maaliskuussa? Jos on, niin ota yhteyttä! Olen itse osallistumassa kyseiseen tapahtumaan ja voisi olla hauska tavata muita suomalaisia siellä.

3 kommenttia.

Finski

Maanantai 24.1.2005 klo 22:29. Internet, Koodaus.

Ostin Finnairilta lentolippuja. Meinasi jäädä pelkäksi aikomukseksi, sillä vasta kolmas www-selain kelpasi Finnairin varausjärjestelmälle. Taloudellisesti olisi Finnairille kannattavaa, että varausprosessi hajoaisi vasta maksamisen jälkeen, mutta Finnairilla kaikki meni hyvin kunnes juuri ennen maksamisvaihetta näytetty Jatka-nappi ei reagoinutkaan klikkauksiin Safarissa eikä Firefoxissa. Onneksi vanheneva IE/Mac löytyi vielä kovalevyltä ja tilauksen sai tehtyä.

Finnairin sivujen mukaan Mac OS X -käyttäjien tulisi käyttää Microsoft Internet Explorer 5.0:a, Netscape Navigator 6.0:a, Mozilla 1.4:ä tai uudempaa versiota jostakin näistä selaimista. Todellisuus kuitenkin on, että ainoastaan IE toimii. Syynä on Browser050112.js-tiedoston rivit 22 ja 24, joissa sanotaan:

var elements = theForm.elements;
// ...
if (browser.mac) elements = document.all;

Kaikki Mac-selaimet siis pakotetaan käyttämään document.all-taulukkoa, vaikka se on olemassa vain Internet Explorerissa.

2 kommenttia.

Kaistan varastamista, tietokantaan tunkeutumista ja salaisuuksien vuotamista

Torstai 6.1.2005 klo 20:05. Apple ja Mac, Koodaus.

Kalamuki neuvoo, miten Apachessa estetään kaistan varastaminen suojaamalla tiedostot suoralta linkittämiseltä.

Unixwiz.net puolestaan kertoo esimerkkien avulla, kuinka SQL-tietokantaan voidaan tunkeutua. Kannattaa siis aina käyttää PHP:ssä mysql_escape_string()-funktiota (tai versiosta 4.3.0 alkaen mysql_real_escape_string()-funktiota) ja Javassa PreparedStatementejä.

Ameriikassa Apple on haastanut Think Secret -huhusaitin oikeuteen liikesalaisuuksiensa paljastamisesta. John Gruber analysoi tapausta artikkelissaan. Olen samaa mieltä Gruberin kanssa: Think Secret todennäköisesti voittaisi oikeudenkäynnin, koska sen ei tiedotusvälineenä tarvitse paljastaa lähteitään. Kalliiksi oikeudenkäynti jättiyhtiötä vastaan kuitenkin tulee.

Ei kommentteja.

Näytä uudemmat kirjoitukset ja vanhemmat kirjoitukset.