Chris
Sunday, March 7th, 2010
by Chris
Ars Technica have recently put up a post about advertising on their site. They discuss their business reliance on advertising, the effect of running ad-blockers on their site and some trials of methods they’ve used to combat them.
The site has caused a lot of discussion from all sides. Those with an inflated sense of self-entitlement, those that feel that ad-blocking is stealing, and those that want to find a solution that will please both camps…
I used to run an ad-blocker with a very broad blocklist, because ads annoyed me. If I had thought about it I probably would have said “If you don’t want to give it away from free, take it off the web or don’t complain that I block annoying ads”.
However, the more I did think about it, I came to realise a few things…
- Ad-blockers are a product of a market at work. People were able to reduce the cost of viewing a page or site with very little inconvenience to themselves.
- Most of the complaints about ad-blockers aren’t about blocking their ads, rather blocking all advertising without even giving them a chance, as the ad-blocker came with a very broad blacklist
- Ad-blockers also objectify a market failure. The feedback loop between consumer and producer is broken. With no ad-blockers, if a sites advertising was unacceptable, people would stop visiting. With ad-blockers, it doesn’t work like that. Ars’ anti-adblock techniques were a misguided attempt to fix this: If you don’t like the ads, don’t view the content. If the ads are unacceptable, vote with your feet.
Seemingly, a lot of content providers are happy with “Free” or “Freemium” business models… For instance I have no problem writing on here for everybody to read. Where they draw the line is paying. I imagine that the majority of sites that have advertising is to reach break even point.
Most people don’t seem to oppose the idea of advertising on their sites, as long as they are relevant, unobtrusive and useful. I’ve clicked on plenty of Google search ads, along with the better ad networks such as Fusion, The Deck and even ShopStyle.
In my opinion, the best fix for the situation is two-part:
Content producers should not use brute-force, spammy (think of the vibrating “You’re the 999th visitor, you’ve won…”, Evony and the system error message lookalike) and untargeted ads. They should be running ads that are relevant and unoffensive, and their audience may even find useful. Adsense text ads are a good start.
For this to work, however, consumers that insist on running ad-blockers need to be more selective about who they block, and why. Block-by-default is not going to work.
Ars’ move to detect & deny content to people running ad blockers wasn’t a complete backfire – they didn’t convince people that blocking ads is stealing, but they got their members to think about why ads are run and things you can do to view content and still not have annoying ads, resulting in a what seems to be a few subscription sales and a bunch of AdBlock whitelisting. Goes to show what a little engagement can achieve.
I think the solution to this particular problem hasn’t quite materialised yet, but it sure as hell isn’t increasingly intrusive adverts, or paywalls. If I were to guess, I would say that it would look something like Flattr.
Tuesday, February 16th, 2010
by Chris
Firstly, some background. I’ve been an iPhone 3G user for almost 2 years, getting one almost immediately after they were released here in New Zealand. A great phone, no doubt. The app store was wide-ranging, easy to use with quality work for good prices.
As happy as I was with the iPhone, experiencing the “walled garden” when you wanted to escape wasn’t much fun. I wanted to store files, use non-App store applications, tether with more data-friendly networks – but I couldn’t.
A geek at heart, I kept a close eye on what was going on in the world of Android. For the longest time I remembered the worst of my days using Linux, and the reluctance of having that experience on my phone. That, coupled with the fact that the early Android handsets were woefully underpowered (much like the iPhone was) relegated me to the sideline for some time.
Hearing about all the fun my acquaintances were having with their Magic’s – rooting, flashing, tethering and all the other dirty-sounding verbs, I decided I wanted in to the Android world.
A friend of mine signed a contract with their carrier and got a subsidised HTC magic, which he sold to me. The phone was good, perhaps a little limited hardware-wise, but I loved the heavy Google integration and the apps were pretty good. About this time, my iPhone’s screen died – it must have been a sign! No turning back.
So I got myself a Nexus One. I won’t go over the specs, but will go over the subjective things I’ve come across with the phone.
Screen
The screen looks fantastic. The resolution is very high, photos and video’s look stunning. The touch side of things is also very good – sensitive and responsive. The only thing I noticed is that the colour can sometimes seem off – the more brighter colours apear blown out. Also, the phone is difficult to use in direct sunlight. Both these issues are side effects of the AMOLED screen chosen for the Nexus One.
Hardware
The phone is quick. No delays, no waiting, no keyboard lag. All things that were present with the iPhone and the Magic. Web pages render very quick and the radio used in the phone supports the very best connections available in Vodafone NZ’s network.
Operating System
The phone comes with Android 2.1. Android has travelled a long way since 1.x and is a very functional and usable system. Tight integration with Google, Exchange and Facebook brings your life to the phone. It now has multi-touch support in the browser & maps which should help kill the bugbear a lot of switchers worry about.
App store
The Android market has also grown a lot. There are many apps to choose from and most iPhone apps have an equivalent on the Android Market. Albiet a lot of Android apps aren’t as polished as their iPhone counterparts. Android has a lot of problems to solve for it’s developers – having to develop over dozens of different devices is going to start causing problems, and the time they spend on that is the time that Apple’s using to polish and add features to it’s SDK.
So overall, very impressed with the phone and I feel that I’ll be using it for some time – or at least until the new shiny comes along
Monday, October 19th, 2009
by Chris
I had a request today from a customer who wanted to make a list of products he was waiting for, and to be notified when Mighty Ape had them on the site ready to order. I decided that it was going to be problematic to implement this as a Mighty Ape feature, but I did help him sort out something that works just as well, using free tools available already.
Say you wanted to be notified when Mighty Ape makes the Transformers 2: Revenge Of the Fallen Blu-Ray available, here’s how you could go about doing it.
First, construct a Google query that narrows down what you’re after.
Since you’re interested in a product, make sure you add the keyword “site:mightyape.co.nz/product” to the query. That will restrict Google to search within that directory on our site.
We’re only interested in the Blu-Ray version so add that in there, too as “blu-ray“.
Now add some keywords that describe the product. Try and stay away from being too specific, filler words, numbers and punctuation. Something like “transformers revenge fallen“.
Now, using that might turn up some strange results, from other product’s descriptions or similar. Luckily, Mighty Ape stores the product name and format all in the page title, so we can direct Google to match only that by using the “allintitle:” keyword.
So put that all together and we have:
allintitle:transformers revenge fallen “blu-ray” site:mightyape.co.nz/product
Nice. Now all we need to do is put that into a new Google Alert and Google will let you know when new documents turn up matching your query in your E-Mail inbox, or RSS feed.
Enjoy! This can easily be adapted to other sites or other queries. Anybody got any other cool examples of useful Google Alerts?
Tuesday, October 13th, 2009
by Chris
Ars.Technica has a fantastic article up titled “100 years of Big Content fearing technology—in its own words“.
The article basically touches over most major technological advances over the last centry, and digs up what “Big Content” had to say about it at the time. Big Content being Music, Film and Print industries.
Such business-busters as the Xerox machine:
“the day may not be far off when no one need purchase books”
The VCR:
We are going to bleed and bleed and hemorrhage, unless this Congress at least protects one industry that is able to retrieve a surplus balance of trade and whose total future depends on its protection from the savagery and the ravages of this machine.
And of course, MP3:
We’ve come full circle here, as this is the inverse of Sousa; a new technology won’t eliminate the amateurs, it will eliminate all the professionals and leave nothing but amateurs.
Of course, this seems all too familiar. The roadblocks and excuses being thrown up today are the same that were spun up all those years ago, those which failed to come to fruition. The same things are being threatened – the death of industries, the loss of jobs and the destruction of dreams.
However, what can be said of all of these advances is that they caused change. They caused a reshuffle of the industry in question, but eventually everything settled down again to get back to what they were doing: making money. In fact, if I remember correctly, most content industries are in boom, some making more money than they ever had (with the exception of newspapers, but I feel they’re the author of their own demise).
So “Big Content” is quite comfortable where it is, thank you very much, and is apparently quite happy to fight tooth and nail against anything that may cause change. The problem is, these industries have a lot of teeth and too many nails. We have the huge lobby groups, the MP/RIAA and the very prominent spokespeople with their voice in the ear of our politicians.
This is why so many people keep an eye on the laws being passed in our names, on behalf of these industries. We need to watch whats going on in the fields of Copyright and Intellectual Property (don’t even get me started about software patents) before we regulate ourselves out of evolution.
Tuesday, October 13th, 2009
by Chris
Was working on a problem today that required a lot of bulk inserts to a MySQL table. I was getting about 200 inserts/second on my development system, which is OK considering there was some minor processing going on.
Since some batches can contain well over a million rows, I started working on how to optimise these queries so we can get them in there faster.
Firstly, watch your indexes on the table. Obviously the more indexes you have on the table the more work the DB has to do on INSERT to maintain them.
Second, if possible, ditch your ORM. Instead of building and hydrating objects for each row in the table used direct/prepared queries. Most ORMs worth their salt can handle this. i.e. Propel can give you direct access to the underlying PDO connection to use your prepared statements.
/** @var $con PDO */
$con = Propel::getConnection();
Obviously if you have business logic tied up in your objects, it’s best to use them instead of duplicating code.
Third, lock the table for a batch of inserts. Here’s some sample code
$i = 0;
$con = Propel::getConnection;
$con->beginTransaction();
foreach ($rowsToInsert as $row) {
if ($i % 100 == 0) {
$con->commit();
$con->beginTransaction();
}
TablePeer::insertUsingPreparedStatement($row);
$i++;
}
If your using MyISAM you can lock the table using the LOCK TABLE statement
$con->exec('LOCK TABLES table_name WRITE');
$con->exec('UNLOCK TABLES');
Depending on how important your data is you can change the (100) value in the $i % conditional to higher or lower. The reason this speeds up Inserts so much is that MySQL won’t flush it’s write cache to the disk until the transaction is finished, as opposed to every INSERT statement. However, having unflushed data in your cache is dangerous because it may disappear if something happens to the DB server, or get rolled back if your script carks it. Also, since a transaction/lock table call will stop all other access to the table, if it’s frequently read from those queries will be waiting on locks, so it’s good to refresh them frequently.
Using these three methods I almost tripled the performance of my script which now inserts between 550-600 rows per second. Win!
There’s some more tips over here in the MySQL manual and some of the comments are quite helpful too.
Tuesday, October 13th, 2009
by Chris
Uh, yeah, back from my blog-free stupor.
Wednesday, July 8th, 2009
by Chris
Some fairly big news today!
Google has announced that it’s going to compete with Microsoft in the OS wars. Their long-denied Linux-based Google OS is due to be released next year.
Is 2010 the year of the Linux desktop?
TechCrunch has an analysis here and, as usual, quality work from Ars.Technica.
Some interesting tidbits:
Google says the software architecture will basically be the current Chrome browser running inside “a new windowing system on top of a Linux kernel.” So in other words, it basically is the web as an OS.
You may not remember… but Microsoft actually tried this with Active Desktop and IE4. You don’t need to be told that it failed miserably, but if anybody can make it work I think it’s Google. Also interesting to note that this is the way that Palm has gone with their WebOS based smartphone, the Palm Pre. The proof will be in the pudding.
I think what’s going to make all this possible is the standardisation of HTML5. HTML5 has fairly extensive provisions for offline work in web applications (Web Storage) which Google also has in Gears. They also say that any application developed for the new Chrome OS will work on any standards-compliant browser. Microsoft seriously better pull finger with their HTML5 support or they will run the very real risk of being left behind…
All and all, a great development. Lets see where it goes.
Wednesday, July 8th, 2009
by Chris
Moved Nevermind to a new server in the US – because it’s cheaper, of course! Basic VPS so I can run some Rails apps I’ve been hacking on.Also has a decent control panel and DNS manager.
Some weirdness… hopefully not too much, let me know if you find anything strange…
Next step: Setting up automatic installs for the wordpress upgrade and plugins!
Friday, June 5th, 2009
by Chris
National’s handling of this Richard Worth affair has been bad, both ethically and politically. Even worse for them, Labour leader Phil Goff has come out of it smelling like roses, ratcheting his profile up a few notches.
I assume Crosby/Textor are on holiday (celebrating a 2-point clarification from Nicky Hagar, perhaps?) because even John Key himself, who’s spin is usually water tight, is beginning to fall over.
For instance, this interview on RNZ Checkpoint last night is an absolute stunner. Key refuses to answer questions, attacks Goff, attacks the victim, defends Worth and gets caught out lying.
Also, on Breakfast, Paul Henry shakes off his bias and gives a Key hard hitting interview instead of a handjob. He’s been previously guilty of dishing up patsie but he can seemingly smell blood and really tears shreds off him.
Hmmm, as much as Paul Henry gets my goat, the reality is that he grills John Key better than anyone else currently in the media, it’s always as if as a former National Party candidate that Paul has been personally offended by the Prime Minister’s lack of a red neck. –Bomber Bradbury
Also… Textses? Piggy in the Middle? Was also funny to hear him saying “I don’t sack ministers on unproved allegations”, when that was what he was calling Clark to do to Winston last year. What happened to 1-strike you’re out?
Meanwhile, Kiwiblogh desperately tries to spin the issue off National and onto Goff – no surprises there.
Friday, June 5th, 2009
by Chris
Just a quick post but this is definitely worth a read.
Should people with this much influence be more careful about what they’re pushing? Reading a bad book she pushed is one thing, ruining your life with hormone therapy is another… Kudos to Newsweek for this one.
Newsweek: Live your best life ever