Categories
Blogs Bookmarks Computere og Internet Kim Blog (English) Open Source Resources Technology Videnskab WordPress

Weaving an untangled web – The Friend of a Friend (FOAF) project

FOAF Project LogoThe Friend of a Friend (FOAF) project

I really need to “get out more”, since I’ve only just now discovered the Friend of a Friend project (FOAF), and I LOVE it!

The Friend of a Friend (FOAF) project is creating a Web of machine-readable pages describing people, the links between them and the things they create and do.

Say what?

FOAF is an important part of the so-called semantic-web, and FOAF is just a so-called RDF specification of who you are. RDF (Resource Description Framework) is one of the basic technologies of the semantic web, and it’s nothing more (or should I say less) than an XML schema condoned by the W3C for describing resources.

Think of RDF as “the mother of all links”, RSS and Atom actually uses RDF.

The problem with links

So what is that RDF does better than the tradtional link?

When you create a link, you rarely remember to provide important information about what it is that you actually link to. At best you provide an ALT attribute (description) to an image tag. Google actively uses the ALT tag when indexing images, but if the link to an image contained more information, eg. semantics, Google could do a much better job.

Semantics means that you provide information about content and context, not just a link to it. You could call that metadata, abstracts or just “data”.

Many CMSes uses the URI of posts to provide some semantics, it’s often called SEO (search engine optimisation), the URI of this post has FOAF in it, meaning that a link to this article indeed contains some semantics.

A common standard for the WordPress CMS is that it uses year, month, day and the title of the post to generate the URI.

The problem is that this information should be provided in a structured, machine readable and – most importantly – open format, in order to make it possible to provide semantics.

I actually despise the concept of SEO, since it amounts to cheating, the only valid SEO is:
“provide interesting content”

A semantic “you”

A number of standards for providing semantics exists, one of the most interesting, especially in this day and age of social media, is the FOAF format.

FOAF is a format that describes you and your connections to provide semantics about people (you) and your connections (friends), in a standardised way, using RDF.

The FOAF file contains information about who you are, how to contact you, but most interestingly it contains links to your friends, and their FOAF files.

The beauty of FOAF is, that all you have to do, is:

  1. Create a FOAF file, for instance using FOAF-a-matic
  2. Put it on a server
  3. Provide the URI
  4. Make sure that it can be found by others (e.g. by posting a link on a page you know is indexed)

Chances are that the FOAF spiders will have a feast on your FOAF, sooner rather than later.

Create your FOAF file

It’s quite simple to create a FOAF file, all you need to do is go to FOAF-a-matic, fill in a number of fields, generate the FOAF file, copy it to a text-editor, publish it on your web-site.

Below is a screenshot of the FOAF-a-matic page.

FOAF-a-matic screenshot

Take back your profile, it’s…YOURS!

No need to register with social networking sites, your profile is YOURS.

Who owns the information about “who you are”? You do! Should that information be made available in an open format? You bet! RDF and FOAF is the way to go.

And don’t take my word for it, just take a look at the people who are promoting and developing RDF and FOAF…

So how did the chicken cross the road

I’ll provide you with the story about how I found FOAF, since it’s interesting to say the least.

My good buddy Sebastian Lund just recently set up his blog, Silence is deafening, and I’m looking forward to following it, he’s using a beautiful theme, the Dilectio Theme, developed by Design Disease.

Design Disease has a number of free WordPress themes available, and you can test them, when I tried that, their “Lorem Ipsum” turned out to be an article by no other that TBL, timbl, Tim Berners-Lee, Mr. Web himself, and he was writing about blogging and FOAF…

So:

What an untangled web we’re weawing.

Now I need to think of a good URI for my FOAF file, TBL suggests this:

A lot of people have published data about themselves without using a URI for themselves. This means I can’t refer to them in other data. So please take a minute to give yourself a URI. If you have a FOAF page, you may just have to add rdf:about=”” and voila you have a URI http://example.com/Alan/foaf.rdf#ABC. (I suggest you use your initials for the last bit). Check it works in the Tabulator.

Ready, steady FOAF

So what are you waiting for? Create your own FOAF file, and start sharing.

And now I’m moving on to explore Tabulator, more on that later…

Categories
Blogs Computere og Internet Computerspil Historier/Stories Kim Blog (English)

“You should rather buy a new gadget”

Peek-a-boo from Kullaberg, SwedenThis could have been a much more interesting blog post, about a completely different, and important subject, but that happened in an alternative reality, so this is what you get:

In 2007, after somefumbling” around, in a totally, to me, strange element, I got this “advice”:

“You should rather buy a new gadget”

This blog post, painstakingly, documents that that was exactly what I, Kim Bach, aka. “FJUMMER”, did…

Nintendo DS Portable Gaming Console

I had read an article in Wired Magazine about how you, literally, can shave several years off your, perceived, age by training, and changing habits and lifestyle.

The author had, for instance, used the Brain Training software on a Nintendo DS to improve his mental capacity and youth.

I was intriged, but my purchase of the DS was, eventually, a total impulse purchase. It was triggered by general ignorance, fear of growing up and taking responsibility, I really can’t claim stupidity, just foolishness, meditating on my old mantra “if it feels right, then it must be right” – well, let the record show that it never is – will I ever learn?

Interestingly, solving Sudoku puzzles, which I learned using the DS, actually brought me some of the best moments of 2007.

It should also be mentioned that the DS was a stunning success with the children at the school where I worked, the math-problems and the competitiveness of the Brain Training games, really catered to the children, and I’m sure that regular use of the training programs can increase your ability, to do basic arithmetic, dramatically.

Nike+ Kit

2007 also saw me picking up running. The Nike+ Kit transforms the iPod nano into a tool, where you can track your runs. It’s more that a toy, the genius of the Nike+ solution is the great web-site where you can run against other Nike+ users, track your progress, analyse your runs etc. The community is a great motivational factor, and it even worked on me.

In my first month of running I managed to log 40+ kms, and I could feel how my stamina improved, it amazed me how quickly that happened.

Unfortunately I got a little overconfident, and a small injury that caused me to gear down, I have learned that I should not try to do training that involves rapid changes in tempo.

Olympus SP-550UZ Digital Camera

I was tired of not having a zoom-camera, and the Olympus has 18x optical zoom, but I still prefer my Canon IXUS i5, since I can carry it around all the time, while I did take some wonderful pictures with the Olympus, it’s just too bulky for my taste. Eventually I’ll get a DSLR, but it’s not high on my wish-list, it’s more likely that my next camera will be another Canon IXUS.

Nokia N800 Internet Tablet

It looked cool, and I wanted to get one before a friend. The N800 is an interesting concept, with a Linux based OS, but it’s not ready for prime time. Battery life is it’s biggest problem, and the form-factor isn’t perfect, and I very rarely use it.

Nokia 5500 Sports Phone

Mount Vesuvius “killed” my Nokia 6070 – SERIOUSLY that was what happened, and you can’t live without a “presence device”, at least that was what my rather (understatement) confused mind dictated, as I wrote in a previous post “I was not in my right mind”.

The Nokia 5500 is a Symbian S60 based smart-phone with some clever motion based applications, for instance it has a step-counter, and the music player can be controlled by tapping it, to trigger the motion detector.

Telia Navigator

Extremely well designed GPS solution. It integrates with a 411 online directory, meaning that you can perform searches by name and address. It automatically stores the most recent destinations, and the external Bluetooth GPS device, that comes with a good rechargeable battery, works great with all Bluetooth devices.

The strongest feature of the solution is that it downloads the maps dynamically, meaning that the solution runs perfectly on relatively lowly hardware, with limited storage, I’ve used it with the Nokia 5500, and that is a great combination, the only downside I can think of, is that the solution only works with Telia’s accesspoints.

My favourite feature is the compass mode, and since it doesn’t require download of maps, and you often have pre-programmed your way-points, using Telia Navigation in this manner made me feel adventurous.

Lenovo V100 Laptop

For a while I thought that I could switch to Linux, and the Lenovo V100 is a fantastic platform for just that.

I did encounter some stability problems with the wireless networking support, the biggest issue with Linux as I see it, and that was hampering my productivity, so I’m back with my PowerBook

The Lenovo has been donated to a worthy cause, it’s now being used to control the digital whiteboard at the school where I used to work.

Samsung SP-P310ME Pocket Imager

My projector lamp burned out, but instead of replacing the lamp, I had to get one of the ultra-compact Samsung SP-P310ME projectors. It’s not really suited as a TV, since it needs a darkened room to operate, but I can now bring a projector everywhere I go, it’s amazingly portable, and can even run on battery power. The good thing is that the long life of the solid state technology of the SP-P310ME, means that it will take a long time until I have to replace it.

Nokia E65

Finally I went on the 3G bandwagon, and the Nokia E65 is a sleek 3G handset handset that even supports WiFi. I use the E65 all the time, it’s the perfect client for the Jaiku online service, that I’m sort of addicted to. Did I need a new phone? No, but it felt right, and it’s actually the only, truly useful, gadget investment of the year.

Making 2008 a healthier year

HEY! There are some signs, that I’m not going to be spending that much money on gadgets in 2008, first and foremost I’m actually feeling (mentally) healthy, and all of the purchases above were based on pure impulse (bordering mania), and right now it’s completely under control. And you know: the “advice” to “rather buy a new gadget” I got was “lost in translation”:

“GET A LIFE – FJUMMER!”

Categories
Blogs Computere og Internet Historier/Stories Kim Blog (English) Technology

No _compiler_ detected errors – but shouldn’t I, at least, have received a warning?

One of the first compilers I worked with, VS-Pascal, had a very “HAL-like” confident behaviour, after it had finished a succesful compile, it wrote:

“No compiler detected errors”

I found that almost rude, but it was also something to keep in the back of your mind, and today I remembered this clearly.

For the last week or so I’ve had a mysterious ASP.NET/C# problem on the back-burner. I’m trying to populate a drop-down list on a webpage. The list is based on a list of documents. For that purpose I had an entity class with a constructor, in the Page_Load code of the webform, I’m initialising the drop-down with a desciption and an id from the document list.

The list was populated just fine, but when I did a post of the form, I was consistently told that the first item was selected, even if I selected item number 2, 3 or 4.

This was very frustrating, especially because I have two drop-downs, and the other was working just fine.

Today I couldn’t postpone the problem any longer, and I tried a number of things, including moving the drop-downs, and finally I started doing websearches for bug-reports, but it’s extremely unlikely that ASP.NET has such a fundamental bug, so I was clearly doing something wrong.

When you’re using frameworks like .NET, a lot is done behind the scenes, luckily I know HTML so I finally hit View/Source, and to my surprise all the option values in the select tag were set to 0, why was that, I knew that my list was initialised to values from 0-4, but it was consistent with the test-results.

I was clearly doing something wrong. Below is the C# source-code for the entity class, can you spot the problem?

public class ShredYearDocument
   {
       private int _shredYearId;

       public int ShredYearId
       {
           get { return _shredYearId; }
           set { _shredYearId = value; }
       }

       string _shredYearDescription;

       public string ShredYearDescription
       {
           get { return _shredYearDescription; }
           set { _shredYearDescription = value; }
       }

       public ShredYearDocument(int ShredYeadId, 
           string ShredYearDescription)
       {
           _shredYearId = ShredYearId;
           _shredYearDescription = ShredYearDescription;
       }
   }

I’ll give you a hint: there are no compiler detected errors, but I’d argue that the compiler should,at least, have generated a warning, because I have something that could be likened to unused, or uninitalised, local variables.

Another hint: Remember that I always had the id set to zero (0), no mater what.

But shouldn’t the compiler generate a warning here?

Categories
Blogs Bookmarks Computere og Internet Hackers Kim Blog (English) Open Source Technology

PHP blues – drawing a blank

Software development can be extremely frustrating, and it might be true that the computer only does what you tell it to do, but these days a lot of people, besides yourself, are telling the computer what to do, a fact that complicates matters “somewhat” (understatement of the year).

The following experience documents a case, where I was sure that I wasn’t doing anything wrong, and you could argue that I didn’t, I just didn’t know any better, but thanks to the community I solved the problem.

The setting

I’ve recently begun doing some PHP programming, and I like it a lot, mostly because of all the wonderful community. it’s my gut feeling that I find answers to my questions much faster when I have PHP related questions, compared to .NET questions.

So I was experimenting with generating some XML code from PHP, but when I gave the URL to the W3C validator, it told me that the XML wasn’t well-formed, and that it was the header that was the problem.

I couldn’t see anything wrong, until I took a closer look. There was a mysterious space prefixed the output when I did a View/Source, a space that I for sure knew I didn’t echo. Hmm…

I tried several things, including flushing the output, but nothing helped.

Then it dawned on me: it’s very likely that someone else has had this problem, and if they did, for sure they would have the generosity to share it, so Google to rescue.

I googled: problem php output leading blank, and hit number two yielded this article:

Script for removing blank spaces before and after PHP tags « memento

The solution

It turns out that PHP is quite sensitive if you, by accident, leave prefixed or sufficed blank spaces outside the starting and ending php tags.

So I went through my PHP files, luckily I only have two, made sure there were no leading or trailing blanks og lines, and I get well-formed XML now.

This is a rather annoying bug in, or should I say feature of, PHP, and it exists in both PHP4 and PHP5.

Once again the community came through, without it I’d still be drawing blanks.

And I love the drawing on the memento site, it doesn’t get geekier, and I think I’ll remember to strip leading and trailing blanks now.

I’m still looking for a modern development environment for PHP development (e.g. sourcecode debugging). PHPEclipse, a plug-in for the Eclipse development environment, should provide a relatively modern development environment, even though it’s not up to the standards set by Microsoft VisualStudio, that I’m so accustomed to, Microsoft has spoiled me.

Categories
Blogs Kim Blog (English) Music

You know loud’s my diagnosis

OK, you’re on your own, it’s late
Your girlfriend is on another date with the hero in your dream
Turn around, ask yourself. So, you think you’re gonna win this time Manchild?

Is it the pain of the drinking
Or the Sunday sinking feeling
The car never seems to work
When it’s late your girlfriend’s on a date
And the hero with her in your dream
In your sleep it seemed like you
Turn around ask yourself
Turn around ask yourself

Chorus:
Manchild, will you ever win
Manchild, look at the state you’re in

Could you go undercover
And sell your brand new lover (could you)
Be someone else for a night
Maybe someone else will love you
You’d sell your soul for a tacky song
Like the ones you hear on the radio
Turn around ask yourself
Turn around and ask yourself

Chorus:
Manchild, will you ever win
Manchild, look at the state you’re in
Manchild, he will make you cry
Manchild, Manchild, Manchild

From Monday down to Friday
You’re working on another man’s car
Or is it in the factory?
It doesn’t matter where you are

Just turn around and ask yourself is this communication
Accentuate the positive to give some illustration
See Manchild, you’re no one, I turn the microphone on
Control communication when I’m kickin’ it and so on
To the point that I need, the air that I breathe
Into an audience that’s waiting and ecstatic to receive
For the meantime another mean rhyme, I keep on sayin’ it
I know what the time is in the crowd we’ll keep on playing it
Through the speaker boxes loud’s my diagnosis
‘Cause I believe in miracles and words in steady doses.
Enough R-E-S-P-E and C-T
Respect yourself express no stress the mike is easy
Just believe that all you need is the air that you breathe.
(Turn around ask yourself)

Chorus:
Manchild, will you ever win
Manchild, look at the state you’re in
Manchild, he will make you cry
Manchild, Manchild, Manchild
He’s the apple of your eye

Once bitten twice shy, why don’t you bite me again
Just take it in the right and go tell your friend
Are you ready for the words I turn the microphone on
A figure of speech to reach you at the back and so on
The style I’m stimulating dance floors
Raise your body temperature now and
This demands for power in the amp you know loud’s my diagnosis
‘Cause I believe in miracles and words in heavy doses

Categories
'i dag' (Danish) Blogs Historier/Stories Kim Blog (English)

hmm…den først grønne, så røde bjælke under dig, forsvandt lige…

hmm…den først grønne, så røde bjælke under dig, forsvandt lige…

kunne du også se det?

grøn blev rød!

Categories
Blogs Bookmarks Computere og Internet Design Kim Blog (English) Resources Technology

iPhone Dev Center – Apple opens the iPhone and iPod touch for developers

Iphonedevcenter Loginbanner
iPhone Dev Center – Apple Developer Connection

Apple means business with their promise to open up the iPhone and iPod touch platform to developers with the launch of the iPhone Dev Center, and it looks quite impressive, even though it’s mainly information on how to develop web-applications, and links to already existing information for Mac OS X.

Below is a quote from the mail I just received from ADC:

Available to all ADC Members, the iPhone Dev Center is your complete source for technical information, resources, and expert advice on how to design, code and optimize web applications for iPhone and iPod touch. Take advantage of the iPhone Reference Library, web development guidelines, and sample code to build or optimize your web application. Through ADC on iTunes, you can watch iPhone experts discuss everything from user interface design to optimizing your web applications and content for iPhone.

Once your app is ready, or if you have an existing web app, submit it for possible listing on the Apple web apps page. Log in now and access all the resources of the iPhone Dev Center today.

Unfortunately I don’t think Apple is going to make the platform available to other hardware manufacturers, which is typical Apple, but wouldn’t it be great with Mono ported to the iPhone and iPod touch? And I’m confident that Mono and even Silverlight/Moonlight will be ported to the iPhone platform.

Another brilliant touch (pun intended ;-)), is that the developer resources only is available to registered ADC users, something that the open source communities would barf at, but Apple will get away with it, as usually, and I think that the open source communities should take lessons from Apple.

I think ADC will receive a huge influx of registered users because of this, and it’s a direct path to marketing of the WWDC, which will see an unprecedented surge in attendance next year, which I predict will force Apple into move towards two WWDCs every year, one for mobile and non-mobile devices.

This is yet another brilliant move by Apple – and is that a Steve Jobs version of “the monkey dance” I see on the horizon? Developers, Developers, Developers!

Categories
Blogs Bookmarks Computere og Internet Hackers Historier/Stories Kim Blog (English) Open Source Resources Technology

BarCampCopenhagen: Ça plane pour nous!

BarCampCopenhagen Logo
BarCamp wiki / BarCampCopenhagen

Ça plane pour nous! …. Ça plane pour nous! … Ça plane pour nous! … Ça plane pour nous! Nous! Nous! Nous! Nous! Ça plane pour nous! uh-u-u-uh! Ça plane pour nous!

I går holdt 3/4 af folkene bag den næste BarCampCopenhagen, planlægningsmøde.

Planlægningsmødet var rigtig hyggeligt (som videoen vist viser) og hvis i kigger derovre, så er der bonus: det var nemlig også produktivt (som det faktum, at vi “sådan set” er klar, viser).

Først og fremmest fik vi lagt skinnerne, i form af to højglanspolerede spor, der kommer til at hedde:

  • Geeky sh*t
  • Kangagoo?

Temaet for de to spor bliver hhv. et teknisk (Geeky sh*t) og et ikke-teknisk spor (Kangaroo?). Emytlogien for Geeky sh*t skal findes i den forrige BarCampCopenhagen, for Kangaroo? Siger jeg: FGI!

Hvis du vil “svæve” med os, så sig til! Vi har plads til i alt 50, og det tal nærmer vi os, hvilket vi er benovede over – TAK for interessen.

Ellers har vi brug for stole, sponsorer (mad, drikkevarer, t-shirts, wi-fi udstyr, gaver) og talere (vi er sådan ca. halvt besat).

Næste BarCampCopenhagen afholdes den 25-januar-2008 hos Beaconware, Gl. Kalkbrænderivej 10, kld. 2100 kbh Ø. BarCampCopenhagen afholdes i overensstemmelse med retningslinjerne for afholdelse af en BarCamp, men sådan generelt er de:

The Rules of Bar Camp

  • 1st Rule: You do talk about Bar Camp.
  • 2nd Rule: You do blog about Bar Camp.
  • 3rd Rule: If you want to present, you must write your topic and name in a presentation slot.
  • 4th Rule: Only three word intros.
  • 5th Rule: As many presentations at a time as facilities allow for.
  • 6th Rule: No pre-scheduled presentations, no tourists.
  • 7th Rule: Presentations will go on as long as they have to or until they run into another presentation slot.
  • 8th Rule: If this is your first time at BarCamp, you HAVE to present. (Ok, you don’t really HAVE to, but try to find someone to present with, or at least ask questions and be an interactive participant.)

by Tantek Çelik as parodied from The Rules of Fight Club.

Categories
Blogs Computere og Internet Hackers Kim Blog (English) Open Source Technology

Drupal:Reloaded: Upon this “rock” I will build my “church”

Drupal.OrgAfter a while being away from Drupal CMS, and struggling with a, IMHO, buggy version 5.0 earlier this year, I’ve come back to visit this old friend, and I’m very happy to be back.

Firstly: I must say that the current version 5.3 of Drupal is rock solid, and that I have renewed confidence in Drupal.

My revisiting Drupal has, in part, been sparked by a rather depressing talk on the Drupal Denmark mailing list. The community seemed to be withering away, and I was sad to hear that.

Personally I’m back from a long break from ICT work, and I think that I did a fair share of volunteer work, while we were trying to set up the group last year.

Another reason I’m back, is that I have a number of web-projects coming up, and I’ve long considered making Drupal the foundation of a majority of my future web projects, you might not notice, since my projects, most likely, won’t look much like Drupal.

You might also want to check my del.icio.us links tagged with Drupal, I’m currently looking into integration issues, but I’ll also be sharing module recommendations, and I’ll, most likely, contribute localisation files back to the community – it’s good to be back.

Drupal: Upon this “rock” I will build my “church”

Categories
Blogs Bookmarks Computere og Internet Humor Kim Blog (English) Music Open Source Resources Technology

Pink Dildo Records’s Label Page – Music at Last.fm – Now I manage a record label

Last.fm logoBeneath Contempt Logo

Pink Dildo Records’s Label Page – Music at Last.fm

Yes, I love Last.fm, and after registering as a solo artist on Last.fm (no I’ll not remind you by linking to it – for YOUR own good), I’m now managing a Record Label.
Beneath Contempt Wurst 2

It’s of course Pink Dildo Records I’m managing, and so far I’ve uploaded the non-copyrighted tracks by Beneath Contempt.

In 2000 I investigated the possibility of issuing a CD with Beneath Contempt, called Digital Comeback 2000, with copyrighted covers-tracks, but that was too cumbersome and expensive, so I gave up on it, and the cover-tracks aren’t available on Last.fm either – it would only result it us getting promptly banned, but all the tracks has been made available in FULL and as FREE downloads. N-Joy. Be advised it’s guaranteed to be in GLORIOUS LO-FI.

But it’s quite ridiculous that I can’t make the number one hit by Beneath Contempt, a spoof on Pippi Longstockings called Hippie Longhair, available due to the copyright rules. If you know Danish, and even if you don’t, just follow the link, and make your own version instead – the ultimate in DIY.

“These” limitations will eventual disappear, but only because we now are beginning to make music available for free.

Great Label Manager

As expected the process of uploading material to Last.fm is smooth. The material has to be submitted at 128K MP3 files, and you have to bundle your uploads into releases (e.g. albums). I found it easiest to package your release into a single ZIP file, and then upload it as one release.

After you’ve uploaded the file, Last.fm validates it and I did of couse have some hidden resource forks, that I could iron out, and you’re given the opportunity to change to artist and title of the tracks. The info is read directly from the MP3 file, so remember to have it tagged before uploading it, I had no problems with the process, and considering how much time I just spend uploading pictures to a Share Point Server, this was really easy and productive.

Last.fm also offers to upload the material for you, you just have to send them the CD and they’ll take care of it for you – great customer service.

Last.fm also offers integrated promotion tools, buing of including banner ads, co-marketing deals etc. It’s really quite impressive, and it looks very easy to use.

The traditional music publishers should take note, “Houston: YOU have a problem!”

ps. Trouble in “paradise”

And then I ran into one of the “limitations” of Last.fm’s Label manager.

Oh No - It HurtsI tried to upload the works of another of our “artists”, Oh No, and that name was already taken by, no other, than the brother of Madlib, so now my label and the content is put in an automatic moderation queue, quite understandable, let’s see how that works, and I’m not allowed to manage my label for the next three days, while the account is being scrutinised by the Last.fm staff.

I expect no problems, despite the controversial name of the label and the LO-FI, in mono, no less.

What I expect is than we’ll be told to find another name for the “artist” when publishing on Last.fm, or keep “Oh No” away from Last.fm, which would be a “shame” ;-).

I think the policy of Last.fm makes good sense, but the ambiguty of artist names, especially short and cathcy ones like “Oh No”, is a major problem, and Last.fm could be better at handling that.

If you can’t wait to go back to mono with “Oh No”, you can listen to the tracks we have available on pinkdild.org.