I saw this news story today about Verizon updating BlackBerries so that their browser default search engine is Microsoft Bing (adjustable).
Of course - indignation in forums and blogs. Tons of anger. "Microsoft is evil". "How dare they". "They don't beleive in fair competition".
I know, this can be pretty annoying when your phone silently gets updated with some new settings (iPhone does that by the way). And I'd hate it if I was forced to use one search engine over another. I would even probably change my cell provider. But if I may just remind you that Verizon is a private company. The software installed on the phone is probably licensed and the license is proprietary. This sucks, but they have all the right to do what they do. No violation here.
Ok, now I'm gonna lose all our customers here, but let me just say that if I'm a private company - I can do anyhing I want with my software, as long as it fits the law and the license. For instance, if we want Firefox to be the only browser that works with our Hosted CRM software - we can do this. Actually, sometimes we wish we could do this... You can't imagine how painful it is to support both Firefox and Internet Explorer 8. And Internet Explorer 7. Not to mention Internet Explorer 6 (would someone please shoot it in the head already). And as a customer you would have all the right to say "this CRM software sucks. Never buy it. Jitbit are as##oles."
Ok, so Verizon is in an alliance with Microsoft. And? Google is in an alliance with Mozilla Foundation. Look at the Firefox's default homepage after you first installed it.
British Airways are in an alliance with American Airlines. And the British Airways website allows me to book tickets for American Airlines flights. But not, say, for Air Canada flights. So? Is this a "violation of fair competition"? Does it infringe my rights as customer? Should I sue them?
The long tail is dead Dec 20, 2009
The long tail is dead. Period. That's what The Economist says, that's what I've been saying for a long time.
This popular idea that there will be no more "blockbusters" and "bestsellers" with millions of niche-oriented products instead - is just an idea. Long live blockbusters and bestsellers. Look: everyone is watching "Avatar". Just after they stopped watching "Twilight". I mean - everyone - from Los Angeles, California to Moscow, Russia.
Everyone is buying Susan Boyle CD's. Everyone's using Twitter.
And from thousands of niche-oriented TV-channels you still pick the ones that air "Lost" or "House M.D".
The UK-based music community website "Spotify" reports that 80% of its users listen to the 5% of the tracks. And the most of their library just lies untouched. 80 percent! Seriously, the rest 20% does not look like a "long tail" to me.
We're under pressure. Tons of gigabytes of information. We are tired of picking and filtering.
Another social Internet-radio website offers me some new music that "I might like". No thanks. I'll pass. I think I'll visit the U2 gig instead.
This popular idea that there will be no more "blockbusters" and "bestsellers" with millions of niche-oriented products instead - is just an idea. Long live blockbusters and bestsellers. Look: everyone is watching "Avatar". Just after they stopped watching "Twilight". I mean - everyone - from Los Angeles, California to Moscow, Russia.
Everyone is buying Susan Boyle CD's. Everyone's using Twitter.
And from thousands of niche-oriented TV-channels you still pick the ones that air "Lost" or "House M.D".
The UK-based music community website "Spotify" reports that 80% of its users listen to the 5% of the tracks. And the most of their library just lies untouched. 80 percent! Seriously, the rest 20% does not look like a "long tail" to me.
We're under pressure. Tons of gigabytes of information. We are tired of picking and filtering.
Another social Internet-radio website offers me some new music that "I might like". No thanks. I'll pass. I think I'll visit the U2 gig instead.
SEO Website Analyzer from MS Dec 15, 2009
Did you know that Microsoft offers a free tool called "SEO Toolkit"? I did not. Just stumbled upon it.
The tool analyzes your website for common SEO issues and generates a comprehensive report that includes content analysis, speed report, link-depth etc. The tool is great. It's hard to believe a tool this useful is actually from MS. And is actually free.
To any mISVers reading this blog: go ahead and spend 5 minutes of your time right now (!) to download and install this tool and test your website. The tool uses MS Web Platform installer, so it's practically a one-click installation.
The tool analyzes your website for common SEO issues and generates a comprehensive report that includes content analysis, speed report, link-depth etc. The tool is great. It's hard to believe a tool this useful is actually from MS. And is actually free.
To any mISVers reading this blog: go ahead and spend 5 minutes of your time right now (!) to download and install this tool and test your website. The tool uses MS Web Platform installer, so it's practically a one-click installation.
Two month trials for our hosted products! Dec 12, 2009
We are happy to announce that the free trial period for our hosted products - Hosted Help Desk and Hosted CRM - has been increased, it's now two-month.
Google Chrome AD Dec 11, 2009
A new, great Google Chrome advertising:
All our team has Chrome installed and tests it with all our web-apps - Help-Desk, ASP-Net-forum and CRM. And personally, I love Google Chrome.
All our team has Chrome installed and tests it with all our web-apps - Help-Desk, ASP-Net-forum and CRM. And personally, I love Google Chrome.
Simulating "jobs" in MS SQL Express Dec 8, 2009
Another post for ASP.NET developers reading this blog. If you think these posts do not belong here, please leave a comment, and I'll consider moving my development articles to a separate blog.As you might know MS SQL Server Express Edition does not include the SQL Agent service and, therefore, offers no jobs. So if you want to schedule, for instance, your backups, you... can't.
When we first started offering our Hosted Help Desk software to the public, we were running SQL Server Express to minimize our costs (we're self-funded, no VC). But we needed scheduled backups for the help desk database. I started looking for a solution and found a stupidly simple one: use "sqlcmd" along with the Windows Task Scheduler.
- Create an SQL script that you want to run periodically and save it to your hard-drive.
- Create a batch file like this:
sqlcmd -i c:\folder\backup.sql
- Add a scheduled task that runs this bat-file
Web-app performance: SQL Dec 1, 2009
Nothing is more annoying than a slow and unresponsive application. Especially a slow and unresponsive web-application. Which are the hardest to tune, by the way. As opposed to desktop tools, where the only thing to optimize is your source code - web-applications have three things to tune:
As you might have already guessed, we spent the last couple of days tuning the response times for our hosted help-desk. Including the database. And here's a great SQL-script that I wanted to share with you, that lists the top 25 resource-intensive queries executed during the last 5 minutes. You can tune this script a bit, the code is self-explanatory:
- server performance (database, web-server and, finally, the application itself)
- network performance (latency, bandwidth, amounts of data being sent)
- client performance (HTML & Javascript speed)
As you might have already guessed, we spent the last couple of days tuning the response times for our hosted help-desk. Including the database. And here's a great SQL-script that I wanted to share with you, that lists the top 25 resource-intensive queries executed during the last 5 minutes. You can tune this script a bit, the code is self-explanatory:
SELECT TOP 25
creation_time, last_execution_time, total_worker_time,
total_worker_time / execution_count AS 'Avg worker Time',
last_worker_time,
execution_count,
SUBSTRING(st.text, (qs.statement_start_offset / 2) + 1,
((CASE statement_end_offset
WHEN -1 THEN DATALENGTH(st.text)
ELSE qs.statement_end_offset END
- qs.statement_start_offset)/2) + 1) as 'statement_text'
FROM sys.dm_exec_query_stats as qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) as st
where last_execution_time>dateadd(minute, -5, getdate())
ORDER BY total_worker_time / execution_count DESC
