Showing entries 38876 to 38885 of 44044
« 10 Newer Entries | 10 Older Entries »
Can I get your name?

So I go to my favorite coffee place, Starbucks, pretty much every day. I always get the same thing which recent has been: tall vanilla latte, %, no foam. And they always ask me for my name which I always respond by saying: Sunny. Most of the time, not all, they get my name wrong. I don’t understand why is it so hard for people to write down Sunny. I am ok even if they just write Sonny, which is the most common misspelling of my name, but Starbucks staff always find creative ways of spelling “Sunny”.

I have seen following names.. and I am not kidding or making up any of them. All the people who go with me to Starbucks know this! Here is the list I have so far: Sunny, Sonny, Suni, Sunee, Suuniee, Suney, Suny and the one I have in front of me which made me blog this, Sunni.

So if any Starbucks staff reading this, could you explain to me how come you guys are so bad with spelling names? Is quality of hiring staff is so low that …

[Read more]
iPhone, a developer's thoughts

Unless you have your head under a rock, you know that Apple has finally released their iPhone today.

http://www.apple.com/iphone/

According to the press information this phone is running OSX.

Does this mean that I will be able to write an application via Xcode using Objective C for the device?

Cell phones are a pain to program for. Even my Treo, which may soon sit in the bottom of a trashcan if Apple's phone is any good, is a pain to program for. Palm was never that friendly for developers. It certainly is better then what a lot of other providers have made available, but it is not as easy as writing a standalone GUI on a Mac, or coming up with a web interface.

But Objective C and Xcode? Widgets?

Now that would be a pretty incredible development platform to use with cell phones. Porting MySQL to …

[Read more]
It's All About Great Software

What did we learn from 2006? For me, it's the realization that our job as developers is simply to create "great software"--software that can address the needs of real users, whether it's open source or commercial.

The open source model has several strong advantages in creating better software. It allows us to stay close to our users, listen to them, and incorporate features as they are really needed. The flexible development style and collaborative (rather than adversarial) relationship between users and developers could create better results at dramatically lower costs. In addition, our users often can help us to innovate in wholly unexpected directions.

But commercial software also has its advantages. The biggest advantage of the commercial software model is being able to spread the development costs across a large number of users. It can also support a more focused development approach and, if properly directed, …

[Read more]
MySQL automatic data truncation can backfire

I had a fun case today.

There is set of cache tables which cache certain content in MyISAM tables and queries for these tables such as:

PLAIN TEXT SQL:

  1. SELECT DATA FROM cache0003 WHERE `key`=2342526263 AND real_key='cp_140797_6460aad5d2e50d3e859e8649007686ac';

The "key" is CRC32 of the real key which is used to keep index size as small as possible so if we have a cache miss we can in most case learn it without going to the disk.

So far so good.

The problem I discovered however is some of these queries would take enormous amount of time while CRC32 conflicts are really rare.

Looking deep into the problem I found out PHP and MySQL are both to blame. PHP is to blame because in 32bit PHP version result of crc32() function was returned as signed integer, in 64bit build of same PHP version it became signed.

The system worked on 32bit platform initially …

[Read more]
New Federated "CREATE SERVER" for MySQL

One of the features not yet mentioned that is in 5.1 is Federated's new "CREATE SERVER" command.

The synopsis?

Tired of typing URL's for Federated tables? AKA:

CREATE TABLE A (
`a_id` int(20) NOT NULL,
`some_string` varchar(128) NOT NULL default ''
)
ENGINE="FEDERATED" CONNECTION='mysql://joe@foo.example.com:3306/ schema_a/A';

With 5.1 you have a new option, the "CREATE SERVER" command.

CREATE SERVER 'master_database' foreign data wrapper 'mysql' options
(HOST '10.0.2.128',
DATABASE 'schema_a',
USER 'joe',
PASSWORD '',
PORT 3306,
SOCKET '',
OWNER 'root');

For the create table all you then need to do is:
CREATE TABLE A (
`a_id` int(20) NOT NULL,
`some_string` varchar(128) NOT NULL default ''
)
ENGINE="FEDERATED" CONNECTION='master_database'; …

[Read more]
MySQL Can?t Use Index With Uncorrelated IN Subquery

Today is the first time I had to look at MySQL performance. Tiny database as web application back-end was having significant performance issues with spikes of CPU workload. After identifying problematic queries, I found a pile of statements using IN subqueries. Typical example is: SELECT * FROM t1 WHERE c1 IN (SELECT c1 [...]

The best way to boost your career...

...is by going to work for an open source company. I get people asking me all the time for career advice (Not sure why they ask me - it's not like I have a "career." I think that's what older folks have... :-). My advice is always the same:

"Work for an open source company."

The reason is simple economics. The market will basically pay you what it thinks you're worth, and your worth goes up exponentially when you have open source expertise. Open source, according to Gartner and nearly every sane person on the planet, continues to be one of the top three trends in technology. Consequently, if you're an enterprise (i.e., IT person) or an ISV, you want open source people.

And thus, if you're a would-be employee, you want to be wanted. You want open source experience.

It's an fact that every person I hire has their salary rate go up …

[Read more]
Oracle SQL Developer 1.1 Supports MySQL

Being quite tied up in my daily job, I totally missed the that Oracle has been developing a database application development tool, SQL Developer. In fact, this tool was previously known as "project Raptor" and has now matured to version 1.1. The -to me- interesting news is that:


  • It's free of charge.
  • It runs on Linux, Mac OS/X and Windows
  • Besides the Oracle database, it also supports other databases, including MySQL


Ok - I know all free software adepts will probably have left by now for three reasons, being that the title of this blog entry contains "Oracle", the tool is "free as in beer" and of course because the tool runs on Microsoft Windows. But let's not be distracted. Let's …

[Read more]
MySQL sources from development tree

I just want to write few tips how to get MySQL from development BitKeeper tree, as there are several tricks.
First of all you need a fresh free client - bk-client2.0 http://www.bitkeeper.com/Hosted.Downloading.html .
Once you get it, you can clone latest tree:
bkf clone bk://mysql.bkbits.net/mysql-5.0 mysql-5.0

New client supports "changes" command, so you can look latest changes
bkf changes in mysql-5.0 directory.
It may be useful to get sources related to specific release. MySQL build team marks tree by TAG
with each new release. What I have looking by existing TAGS:

bkf changes | grep TAG
TAG: clone-5.0.32-build
TAG: mysql-5.0.30
TAG: clone-5.0.30-build
TAG: mysql-4.1.22
TAG: clone-4.1.22-build
TAG: mysql-5.0.28
TAG: mysql-5.0.27
TAG: …

[Read more]
MySQL Camp T-Shirts


For those that attended the MySQL Camp at Google HQ late last year you may have seen me with my own T-Shirt designs. A number of people inquired about getting them. I’ve finally got around to make them available online, so anybody that would like one can order online.

There are two different shirts. If you want your name on the shirt, you need to make sure you choose the correct one.

  • Early Adopters - For those that were the first 48 that signed up, your name as well as position and company are on the shirt.
  • The Herd - For everybody that registered on the website, your name is on the shirt.

Ok. I’ve …

[Read more]
Showing entries 38876 to 38885 of 44044
« 10 Newer Entries | 10 Older Entries »