Archive for the ‘microsoft’ Category

The Catch-22 of contextual advertising

Monday, April 7th, 2008

Wikipedia states the following:

Contextual advertising is the term applied to advertisements appearing on websites or other media, such as content displayed in mobile phones, where the advertisements are selected and served by automated systems based on the content displayed by the user.

As a content publisher I have the possibility to put ads on my blog and earn a few bucks whenever a visitor clicks on the link. Since I’m to small to be targeted by any advertising agency or advertisers directly (which is proven by the lack of text-link-ads on this page) the contextual advertising is the only way to go.

The goal of contextual advertising is to display ads targeted at the reader of the content and in the case of blogs also the creator / owner of the blog. This essentially means that whenever I check my blog to moderate comments, write a new post or just to check what’s going on I’ll see ads that target me directly. When I see such an ad I’m invited to click it and I sometimes do – when the ad is interesting enough. I click on it as I would click on the same banner if I saw it on any other page.

If we try to see this from the other side – the advertising network will pay me for every click anybody makes on any ads on my blog. Actually the advertisers pay for the ads and a part of that money is passed on to me as the content owner. This means that I could easily place ads on my blog and earn money by just clicking on them. Obviously they will want to prevent such action. A local advertising network ToboAds does this transparently – they told me that they registered a few fraudulent clicks and that it constitutes a breach of their TOS – if I continue to do this they’ll throw me out of the system. I wonder what Google does…

So they’re targeting ME and not letting ME click.

As I talked with a guy from the ToboAds team today it made me think whether I could find a favorable solution for all parties. I understand that this might be hard but how about this – I could only use the money I earn from clicking on “my” ads for buying ads on the same network. Of course if the amount is relatively high there need to be other measures – we wouldn’t want ad networks to charge us for clicks some freak did on their own blog.

I’d really like to know how these guys (oh, and these guys) do it.

Zemified

Blogstorming X-UA-Compatible

Monday, January 28th, 2008

I’ve been trying to ignore this issue since I doubted I could have added anything to the debate.

I understand Microsoft, I first saw Chris speak in London and met him later at Mix07 at the POSH table. I can’t say I know what’s going on in his mind but from what I gathered he has a job many of us would not even want. How do you promote standards without breaking the internet – not only stuff other people made but also pages that are made by your own software (think not only FrontPage but also SharePoint) or networks you yourself need to maintain.

What Eric did to prevent a flame war between web developers was amazing. If all the discussions around the development and progress of web related technologies were this civil we’d probably already be using HTML 5 and CSS 3.

Broken by Jeremy Keith outlines the main problem with the technique – you have to use it to disable it. Pardon my language here, but that’s plain stupid.

Or is it?

Reasoning

Microsoft does not want support calls about IE8 breaking pages and they don’t want calls about their SharePoint breaking (believe me, it will). There is no way of knowing when the new IE8 engine should be used. There’s also no way of them saying “Hey guys, change your page for it to work in IE8”, since they’d ultimately be saying “We need to roll a SharePoint update for this.” If you’re making a page for IE8 you can just add this as you make the page.

The ultimate goal

What we need to achieve is that the feature is there to be used but the default for the rendering is IE8 or more generally the latest version of the browser we’re using. To put it another way I think that IE=edge should be the default.

Possible solution #1

IE is famous for it’s yellow status bar. I know people don’t usually see this bar even when it does appear but how about using a semi reliable logic to define whether to render in IE8 or IE7 (think Date header, Generator META tag, HTML features) accompanied with a bar like this:

Page rendered with a legacy display engine. Set the display engine for this domain.

If the META header would be added it would work as described. If it wasn’t it would check a Microsoft provided and internally updated list of set page-rendering pairs (per domain?). If there’s still nothing found we enter the fuzzy logic that is biased to present the page in the latest IE8 rendering. If the fuzzy logic decides that IE7 should be used it displays the infamous yellow bar.

Possible solution #2

Let’s assume that usually pages that are “broken” are broken all over the domain. If this is enough we can use a proprietary solution for this problem. When Adobe Flash wants to make cross-domain requests it first requests a proprietary file called crossdomain.xml. Let’s say that IE8 requests a ua-compatible.xml that contains the URL patterns with corresponding IE rendering engine version. This would defy the idea that there needs to be no change to current pages but I would say that a single file for the whole domain is not too much to ask.

Summary

I know the proposed solutions might not be what we’re looking for (yes, I think I, and all other web developers, have a say in this). What I think we need to do is find other possibilities that might not have the side effects that the current one has. Microsoft might want to elaborate on what they’re looking for – we won’t question their reasons, we’ll just try to find a solutions that suits all of us. So let’s have a brain storming of blog posts (blogstorming?) and we might find the ultimate solution.

More mix

Wednesday, May 2nd, 2007

I hear that other blogs are covering the mix pretty goood, so I’m not even going to try to compete. I don’t have much time to surf the web or open and more importantly read the feeds.

I’ll just mention a few things I find interesting. The first one would be the DLR or the possibility to run dynamic languages in the .net environment. They’re saying that Iroonpython is much faster than the defaul implementation because of the platform. I guess this should give hope to Ruby developers that one day Ruby’s gonna be fast. They even wrote a new JScript parser for it.

Sitting in the biSitting in the big Palazzo M room waiting for the last keynote also gives me time to comment on a few other things. It’s really hard to be thirsty or hungry around here. There’s free stuff everywhere – lots of it. The breakfast and lunch are full meals, not only quick bites or fingerfood, which is also great.

As I said in the previous post it is a bit cold though. The fiifth floor where I’m at now is ok, but the fourth where most of the sessions happen is less comfortable. It’s too cold for short sleeves but not cold enough that a sweater would be a perfect solution.

The conference staff is really friendly, not only the Microsoft but all the others as well. What is lacking is more charging stations which forces users to squat the hallways where you can plug yourself into the matrix directly.

Another thing I noticed was that a lot of people have tablet or tablet convertible portable computers. I find this very interesting since there aren’t really that many different models available. Also there aren’t may macs here, which was expected since that’s the competition. I sometimes feel a bit out of line with my linux powered Nokia N800.

More tomorrow. If you want to read more about the conference visit technorati and search for mix07. If you don’t like to read or want to ask something visit Spletne urice @ Kiberpipa on wednesday, May 9 2007.

Going to Vegas

Monday, April 30th, 2007

This is my trravel log written on airports on my N800. Any spelling errors might really be errors or are just the consequence of typing on a small onscreen keyboard with a pen.

Munich, 0810 CET: We successfully landed at Munich after a short flight from Ljubljana. It was a pleasant Adria airways flight with a croisant and juice (I don’t care much for cofffee or tea) for breakfast. It would have took even less time if it weren’t for the taxying around the Munich airport.

A fun thing happened when we arrived. I was among the first to leave the bus that drove us from the aircraft to the terminal. Since I was catching a connecting flight I was directed to a different ‘exit’. Other passangers didn’t know this and followed me. Fortunatly they were stopped before they went too far.

I’m currently waiting for my next flight towards Denver. It will be my first travel overseas, not counting London, and the first with significant jetlag issues. I’ll try the Meyer technique and try to sleep as if I was already in Vegas. We’ll see how that works. See you in Denver.

Denver, 1420 local time: I had so little time between flights I had to run, literally. We completed the boarding, taxied away and stood on the taxiway for some time. The pilot informed us that we’re overweight and we have to go back to unload some. More later..

Vegas, 1830 local time: I finally got to the conference registration, got my badge and the goodies. I need to fill in the gaps though. The Lufthansa flight to Denver was great. It was loooong but that aside it was a pleasant experience. I sat next to a lady from Krakow, now a US resident. I learned that if you have low blood preasure problems, you should drink coffee and cognac (but then add two glasses of water to your normal daily dosage which should, by the way, be your weight in kg divided by 30 in litres).

The Ted flight to Vegas was much scarier though. We were late (175lb overweight so we had to ditch a passanger from the waiting list), half of the movie was played without sound and the plane was shaking all the time. After getting the baggage I took a cab (and waited for it in the biggest queue ever) to TI, where I got my no-view room (pictures when I return).

And now I’m at Mix07 wearing a ‘business’ tag.

WPF/E competition

Thursday, March 29th, 2007

Yesterday was a fine day that ended with a talk about the WindowsVista.si website (now offline). It’s made with WPF/E technology and is made to mimic the look & feel of the real Vista operating system. A great showcase of the technology.

There’s been much talk about WPF. The whole Windows Foundation Platform seems to be competition to the Adobe Apollo platform. They’re both made to create desktop applications. Apollo seems to be on top with the cross-platformness while Microsoft is putting its hopes on the size of the Windows developer community.

When we come ‘down’ to WPF/E (the E stands for Everywhere), the competitor everyone is talking about is Adobe (formerly Macromedia) Flash. They both solve a lot of common problems – animation, multimedia, drawing – stuff that you can’t do in HTML. But when you look under the hood of WindowsVista.si you’ll find there’s a bunch of JavaScripts that seem to do all the magic. And the code looks much like when you’re working with the infamous <canvas> tag.

This was also confirmed by the developer of the page – due to the limitations of the current plugin and it’s work with XAML everything on the page is dynamically created with JavaScript and is not present in the source XAML file. Since there are no components available he actually wrote all the controls himself – tabview, scrolling, panes, menus, windows,…

Two things come to mind:

  1. Direct3D vs OpenGL battle that went on about a decade ago
  2. document.layer vs document.all and the time of the DynamicDuo

Seems like a good idea would be to write a library that will seamlessly switch between WPF/E, and Flash whether they’re present or not. Especially since the tag will obviouslly never be trully cross platform (at least for a while) and that WPF/E doesn’t yet have a plugin for all platforms & browsers. Then again – what’s wrong with Flash?