Posts

Posts uit 2007 weergeven

Huizensite jaap.nl verliest zaak tegen funda.nl

Afgelopen dinsdag op Emerce verschenen: Jaap.nl verliest zaak tegen makelaars.

Interessant uit dit artikel is de volgende passage:

Ook mogen de overgenomen en gepubliceerde gegevens niet meer omvatten dan een tekst met maximaal 155 tekens, daarnaast de adresgegevens en de vraagprijs van het object, plus een bij foto met een formaat van ten hoogste 194x145 pixels. Jaap.nl krijgt 48 uur om de gegevens aan te passen.
Het hele auteursrechtelijke gebeuren met betrekking tot online publiek toegankelijke diensten is erg interessant te noemen. Bijzonder om te zien dat een rechtbank zich uitlaat over details zoals het maximaal toegestane aantal tekens en pixels.

Is deze uitspraak in het voordeel of nadeel van de consument? Wat wil de consument eigenlijk? Dat is met name zoeken in het totaalaanbod. Jaap.nl krijgt vanwege bovengenoemde clausule wel de mogelijkheid om deze functie aan consumenten aan te bieden, maar moet de consument voor verdere detailinformatie doorverwijzen naar de bron. Is dat h…

De Exif Orientation Tag

Enig idee waar ik het over heb als ik zeg "Exif Orientation Tag"? Juist ja, dat is het stukje metadata in de jpegs van je camera waar wordt opgeslagen hoe de foto is genomen. Er zijn in totaal acht vormen van orientation waarvan de populairste "top left side" (portrait) en "right side top" (landscape).

Windows XP heeft er standaard geen ondersteuning voor, foto's worden niet automatisch gedraaid. Google Picasa blijkt er wel standaard ondersteuning voor te hebben. Dat was ook voor mij de aanleiding om op zoek te gaan hoe mijn camera dit zinvolle gegeven door weet te geven aan Picasa. Juist, via de Exif Orientation Tag! Zie ook de volledige Exif specificatie.

Open sociale netwerken

Net een post gelezen van Yme gisteren toegevoegd aan zijn blog getiteld Gemakkelijk netwerken. Yme verwijst hier naar een erg sterk betoog van Marc Canter: The Chess game of social networking.

Marc is de eigenaar van People Aggregator, een open social networking community. Je kunt je profiel eenvoudig van de ene omgeving overzetten naar de andere. Het is een kwestie van tijd wanneer de grote jongens zoals Facebook, LinkedIn, Hyves overstappen op het open concept. Pas als mensen zich massaal gaan realiseren dat hun gegevens achter slot en grendel zitten van hun gebruikte site gaat er pas wat in beweging komen.

In een reactie op Marcs verhaal wordt er verwezen naar een post van Syndeo::media: Portable profiles - Reducing the cost of joining a new social network. Hier worden een paar bestaande technologieën genoemd die mogelijk een basis kunnen vormen voor dergelijke portable profiles:

OpenID: een open authenticatie service à la Microsoft Passport, maar dan gedecentraliseerd. Iedereen kan z…

Payter begint grote Rotterdamse proef mobiel betalen

Vandaag verschenen op Emerce:
Volgende maand begint in het hart van Rotterdam een proef met mobiel betalen. Albert Heijn integreert het betaalsysteem volledig met zijn kassa's, anderen zetten speciale terminals op de balie. Duizend consumenten krijgen een speciale mobiele telefoon die als portemonnee gaat fungeren. Eind 2008 begint initiator Payter met de landelijke uitrol. (Lees verder op Emerce)
De pilot wordt uitgevoerd met gebruikmaking van de Nokia 6131 NFC. NFC staat voor Near Field Communication. Dit maakt het mogelijk dat geïnstalleerde software op de telefoon kan communiceren met een ander apparaat in de buurt van de telefoon. Hiermee kan je bijvoorbeeld het prepaid tegoed op de telefoon dus laten communiceren met de kassa van de Albert Heijn.

Is de volgende stap dat we ons kunnen authenticeren met onze mobiele telefoon ten behoeve van bijvoorbeeld internetbankieren of iedere andere willekeurige (online) applicatie? Kunnen we straks onze toegangspasjes wegdoen en kunnen we m…

Aan de slag met NHibernate in 5 stappen

Wil je aan de slag met Object Relational Mapping?
Ik heb gekozen voor NHibernate, de .NET versie van het populaire Hibernate (J2EE).
Dankzij een paar websites had ik vrij snel een draaiende NHibernate implementatie. Ik volgde de volgende stappen:

Download de NHibernate distribute (ik gebruikte versie 1.2.0.GA);Download het basic example uit het project NHibernate Best Practices with ASP.NET, 1.2nd Ed. gehost op CodeProject;Download de Northwind example database bij Microsoft;Maak een App_Data folder in het example project aan en kopieer de mdf en ldf naar deze map;Pas de connection-string aan in web.config als volgt, vrij overgenomen uit het project Eucalypto - ASP.NET CMS library using NHibernate gehost op CodeProject: <property name="connection.connection_string">data source=.\SQLEXPRESS;Integrated security=SSPI;AttachDBFilename=|datadirectory|northwnd.mdf;User instance=true</property>
Draaien maar!

RunBot leert zelf nieuwe loopjes

Vandaag verschenen op nrc.nl:
De tweebenige robot ‘RunBot’, verbonden aan de universiteit van Göttingen, leert zelf zijn manier van lopen aan te passen aan het terrein waarop hij loopt. Dat is knap voor robots.
Lees meer

Kijk zelf naar het filmpje:

Mobiele telefoon als 'universeel' woordenboek

Verschenen op Emerce.nl, dinsdag 17 juli:
Nederlanders die de Olympische Spelen bezoeken, kunnen zich volgend jaar moeiteloos in het Chinees verstaanbaar maken via hun mobiel telefoon. Het Nederlandse bedrijf Xs2TheWorld publiceerde reeds een handzame Chinees 'sprekende reisgids' en lanceerde vorige week een aantal Europese versies.
Lees meer

Ben heel benieuwd waar deze vorm van toepassingen zich naartoe gaat ontwikkelen. Briljant dat je je gewoon in de moerstaal verstaanbaar kan maken. Zoals in één van de commentaren bij het artikel is te lezen: Probleem blijft het interpreteren van het antwoord. Je zou de Chinees in kwestie eenzelfde toepassing voor hun taalgebied naar het Engels (liefst Nederlands natuurlijk ;-)) moeten voorleggen.

Ik maak zelf veelvuldig gebruik van bijv. Babelfish van Altavista voor het vertalen van teksten van taal x naar taal y. Zo zijn er verder websites die middels spraaksynthese teksten kunnen vertalen naar spraak. In principe hebben we dus alle gereedsc…

.NET User Controls en Internet Explorer: COM visibility

Het heeft me uren van mijn leven gekost, ik snapte maar niet waarom ik mijn eigen user control niet met JScript kon laten communiceren.

Blijkt dat Visual Studio 2005 standaard de COM visibility van assemblies op false heeft staan in AssemblyInfo.cs:

// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]


Zet deze instelling dus snel op true!

Code Access Security zonder signed assemblies

Blijkt dat je ook gewoon codegroups kan toevoegen die van toepassing zijn op url's. Er is dus geen sprake van een verplichting dat online assemblies moeten zijn ondertekend. Voer bijvoorbeeld het volgende commando uit:

caspol -ag All_Code -url http://localhost/controls/upload.dll FullTrust -n UploadCodegroup -d "Toegevoegd middels caspol"

Hiermee geef je te kennen dat de bewuste assembly lid moet worden van de FullTrust permissionset.

.NET User Control en JScript in Internet Explorer

Ben weer verder gegaan met het client-side invoegen van een usercontrol in IE.
Als uitgangspunt ben ik de code aan het bestuderen afkomstig uit MSDN Magazine van januari 2002, artikel DHTML and .NET: Host Secure, Lightweight Client-Side Controls in Microsoft Internet Explorer van de hand van Jay Allen.

Jay heeft een stuk html opgesteld met daarin een aantal JScript eventhandlers:

<script event="BeginUpload" for="upload1">
window.status = "uploading files...please wait";
</script>

<script event="UploadComplete" for="upload1">
window.alert("Upload complete");
</script>

Er komt nogal wat bij kijken om deze eventhandlers te koppelen aan code in je usercontrol. Een hoop COM interface gedoe.

De events zijn in c# netjes gedefinieerd:
public event UploadCompleteHandler UploadComplete;
public event BeginUploadHandler BeginUpload;

De signatuur van de usercontrol ziet er al wat minder transparant uit:

[ClassInterface(ClassInte…

Microsoft .NET 2.0 Code Access Security (3)

OK, zoals je in de twee voorgaande blogs kan nalezen: ik wilde in mijn ASP.NET website een client-side .NET user control toegang geven tot het lokale bestandssysteem. Voor het gemak wilde ik deze assembly dus Full Trust geven. Ik kon daar geen gebruikersvriendelijke manier voor vinden.

De manieren die ik heb op kunnen maken uit de geraadpleegde bronnen om een assembly Full Trust te geven:
Via de .NET Framework 2.0 Configuration MMC snap-in (mscorcfg.msc);Via het uitvoeren van een specifieke caspol.exe opdrachtregel;Via het uitvoeren van een mooi voorbereid Windows Installer Package .MSI bestand;Via het direct toevoegen van je permission rule aan het configuratiebestand security.config.Ik heb ze allevier uitgeprobeerd. 1. MMC snap-in ---De MMC snap-in werkt mbv wizards. Dat is wel zo prettig. Twee wizards zijn hier relevant:Increase Assembly Trust; Create Deployment Package.Ad 1. Geef hier rechtstreeks de url op van de assembly die je Full Trust wilt toekennen. Blijkt dat je assembly wel…

Microsoft .NET 2.0 Code Access Security (2)

Spannend wordt het bijvoorbeeld als de user control het lokale bestandssysteem moet kunnen raadplegen.

Nou heb ik een beetje gekeken naar het Code Access Security model, en het is verdraaid gedetailleerd. Je kunt in principe op assembly-niveau aangeven wat deze assembly mag.

Een paar mooie artikelen die mij op weg hebben geholpen:
DHTML and .NET: Host Secure, Lightweight Client-Side Controls in Microsoft Internet Explorer; verschenen in MSDN Magazine van januari 2002, auteur Jay Allen;Return of the Rich Client: Code Access Security and Distribution Features in .NET Enhance Client-Side Apps; verschenen in MSDN Magazine van juni 2002, auteur Jason Clark;HOW TO: Use the IEHost Log to Debug .NET Object Hosting in Internet Explorer; Knowledge Base artikel 313892, verschenen in january 2004;Are You in the Know? Find Out What's New with Code Access Security in the .NET Framework 2.0; verschen in MSDN Magazine van november 2005, auteur Mike Downen;How to run a user control assembly that is …

Microsoft .NET 2.0 Code Access Security

Ben de afgelopen dagen bezig met het doorgronden van het Code Access Security bouwwerk dat we van Microsoft cadeau hebben gekregen bij de intrede van .NET 2.0.

Wat wil ik namelijk bereiken? Ik wil mijn ASP.NET 2.0 applicatie verrijken met een client-side .NET 2.0 user control, zoals we vroeger gewend waren ActiveX componenten op onze websites te gebruiken.

Misschien word ik zo langzamerhand overigens alweer ingehaald door de tijd, de methode die ik nu probeer te begrijpen stamt al uit 2002. Inmiddels is Microsoft hard bezig met het nieuwe rich internet client platform Silverlight.

Maar goed, altijd al interesse gehad in Code Access Security, dus waarom neem ik mijn huidige doel niet gewoon als case-studie?

Het blijkt enorm eenvoudig om een user control op een dergelijke website te krijgen:
Je bouwt een assembly met daarin een class die overerft van één van de classes die afstammen van de class System.Forms.Control. De assembly zet je op een ASP.NET 2.0 webserver. Je bouwt verder een html-f…