Archive for the ‘google’ Category

weird people visit this site.

I was just checking over some google analytics stuff, and checked the keywords that people who ended up on this blog used to search… here’s a quick selection:

  • detour1999
  • 1999.com
  • first time in the ass
  • google and friends and people

ok, ok, wat?, ok…

seriously wtf? hilarious.

-d.

gChartPhp – sometimes life gets the best of you.

yeah..

I haven’t touched gChart in months.

Realistically, I’m not going to…  I’m just way to swamped at work.

If someone wants to take over, lmk.  I’ll gladly add you to the project.

Otherwise…  who knows.

-d.

google product consintency.

I use reader.  A lot.  I love it.

I also use gmail, which I also love.

I hate going to gmail quickly reviewing my unread email and hitting shift-a and  not having it mark everything as read.

I have done so at least five times.

today.

Anyone know of a greasemonkey script that ports the reader keyboard shortcuts to gmail?

-d.

gChartPhp – progress of a sort.

Real quick:
I had less time than I wanted to to work on gChartPhp this weekend.
In that time I fixed a couple bugs (bar chart bar width calculation for one…) and got x-axis labels working.

I plan to get y-axis labelling working asap. The plan is to allow you to put labels for the y-axis, or just specify how many y-axis labels to have and let it calculate what those are.

That will have to wait until tomorrow.

Also:
Dhaval Patel did a bunch of work to version 2 of the code and got a lot more working. I have been stupidly busy and haven’t had a chance to even look at it, but I will probably put that code up (fully credited, of course) on google code when I commit the axis labelling stuff tomorrow.

So, not as much progress as I was hoping, but progress nonetheless.

-d.

gchartphp – progress will happen.

Sorry for the general delay.

Holidays and actual “work” have gotten in the way of getting more stuff done/integrated on gchartphp.

I haven’t forgotten.

More will be happening soon.

(let’s call it a new years resolution…)

-d.

google reader sharing: conjecture or inference.

I’ve been thinking a lot about google reader and the sharing fiasco over the past couple of days.

It seems to me that the new sharing feature doesn’t really work for anyone. For some, (who communicate primarily through their @gmail.com account) it was way too easy to share with their contacts [NB: I said "Contacts" not "Friends", that's a rather important semantic distinction.] For others (who don’t really use their @gmail.com address as their main email address) it became a series of emailing actual friends for their @gmail.com account. Personally, I had already bothered my friends once (a while back) for their shared items address… I didn’t need to bother them again for their gmail address.

In theory, better integration of friend’s shared items is an awesome idea. I was (and still am to an extent) incredibly excited about it. The problem is in the definition of friend.

The criteria for “Friend”ship in google reader is the ability to chat user@gmail.com to user@gmail.com. That ability comes about either by explicitly choosing to allow chat between users; or by exchanging emails. That is really the core problem with google’s implementation. Conjecture.

I’ve been wrestling with the idea for a while. In my mind, google’s implementation is based on flawed logic, but that flawed logic seemed to stem directly from trying too hard to apply DRY principles.

Say I had a dataset representing a person. I wouldn’t want to store both birthdate AND age. Age can conclusively be inferred by birthdate.

Say I had a dataset representing social interaction. I wouldn’t want to store social connectivity if it can be inferred from existing data, right?

In this case, no.

Given the age example, age can ALWAYS be calculated given a birthdate. Friendship can NOT be calculated based on email exchange. For example, 60% of my “friends”, according to google reader, are people I have bought used volkswagen parts from. Exchanging emails about buying used headlights does not infer friendship. Interaction, yes. Friendship, no.

Inference is good practice. Conjecture is not.

If you can’t get reproducible results ALWAYS (or at the very least, most of the time) it’s not inference… it’s conjecture.

Google Reader… sharing and such.

Oh google
Sometimes you piss me off with how you tease me.


As you might have heard (it’s all over the interwebs!) google integrated shared items with your friends. Like this social networking thing I’ve heard so much about…

Which is cool.

I mean, I’ve been reading certain friend’s shared items for a while now… but it’s cool that it’s so much easier to do it…

…only it’s not.

Now here’s the rub. The three people whose shared items I actually want to see everyday are not my friends.

Wait, what?

That’s not right. I’d venture that they are three of the people I talk to the most…

But, according to google, they aren’t my friends. (um… fuck you google, I’m self conscious enough as it is…)

So I checked out that handy link to “manage friends” and it said I had to be able to chat with my friends…

WTF?

So, I chatted (via google f’n chat…) with Harper about why he had friends and I didn’t (at least as far google is concerned…)

I was bothered all day about this.

While I was pissed about my lack of online friends (how sad…) I had an interesting conversation with Atkins and Harper about how anyone that would want to be taken seriously in the tech arena can’t really use a “major carrier” email address. detour@detour1999.com makes me more real (like in real life…) than detour1999@gmail.com. So, yeah… detour@detour1999.com is me on the interwebs…

And, I’m not an idiot… so I’m using google apps for email etc. Why? ’cause I love integration.

Most of my friends are the same way… they have their own domains and they (generally) have google apps handling the email (and here’s here this sideline starts to make sense) and thereby, the chat.
Now, in general we all have (one or several) domains and emails (usually collected into one main account), and a couple of jabber accounts… and 1 google account that is generally used ONLY for reader and google code. Why, because you need a google account for each of those things.

Oh, shit. That’s why I have no friends….

Yeah, google kicked some ass with integration. I can chat all day long with Harper or Bryan, but their not my friends… because I’m chatting with the wrong version of them.

So, yeah. I have no friends because even though me and all my friends all use google as the back bone for our online communication, apparently we are using the wrong flavor.

So, what the fuck was the selling point of google apps for domains? Oh, right… integration.
Well, realistically, I have 4+ (or something like that) google accounts. (work, this, a couple other sites, my companies site, my google account)… apparently integration isn’t a big deal there.

SHORT VERSION:
Google Reader will only recognize friends that you can chat with google account to google account.
Seriously… why can’t I associate my other google apps accounts with my main google account?

better charts than yesterday.

word.

More playing with the google chart API.

Second cut is somewhat more usable (at least for me).
Check out the “demo” (quotes, as it’s not much of a demo…)

    Limitations as it currently sits:

  • no support for lxy, venn, or scatter-plots. lxy and scatter should be available soon… I’ll go into the venn diagram stuff later…
  • scaling is in place, but kinda useless until I get axes marked correctly. That’s tops on my priority list for this.
  • Some extras still need implementation (chart background, image background, data point markers, etc.)

werd it up.

I am kinda pleased with how the code is shaping up. I haven’t had much of an opportunity in the past to play with inheritence and polymorphism in PHP (blah, blah, blah…).

Currently I have it set up where like so (in terms of inheritence):

    gChart (the base chart class)

  • gPieChart (has a simple set3D(bool) function)
  • gLineChart
  • gBarChart
    • gStackedBarChart
    • gGroupedBarChart

I will probably refactor that sometime soon. But, I’m happy with how it works currently.

I was concerned for a bit about how I would be losing the ability to change the chart type with one line of code (as I could [and did] with the first draft) by breaking chart types out into separate classes. The fact of the matter is that really, no one is very likely to be doing that anyway. So, better code at (perhaps) the sake of some usability…

My plan for next week: axes labeling, those last three chart types, and what’s left of the “extras”.

I put the latest class (gChart2.php) up on google code if anyone wants to see. I’m sure there are plenty of ugly things in there… I’m still getting used to a bunch of things.
-d.

ps.
Venn Diagrams. WTF?
according to the docs:
Supply one data set where:

* the first three values specify the relative sizes of three circles, A, B, and C
* the fourth value specifies the area of A intersecting B
* the fifth value specifies the area of B intersecting C
* the sixth value specifies the area of C intersecting A
* the seventh value specifies the area of A intersecting B intersecting C

Couple things…
Always three circles? No matter what? WTF?
The three circles are relatively sized, but the intersections are not? So nothing is to scale?
Like so: A=300, B=200, C=250, A∩B=10, B∩A=10, C∩A=0, A∩B∩C=0

…fucking nevermind.

those first three values (A, B, C) NEED to be scaled by the user. Anything over 100 will be 100. so, that example above, if those circles look equal, that’s cause they are. I should be able to have Venn Diagrams knocked out soon. UGH. Way too much time wasted trying to figure out wtf that “the relative sizes of three circles, A, B, and C” was supposed to mean.


Update: 12/9/07 21:26
Venn Diagrams are working and on that demo page.
I’m still non-plussed with the implementation. Whatever.
-d.

more charting…

alright.

I’ve been playing with a php wrapper for the google chart API.
My first cut of it kinda sucks. But here it is…

    Limitations as it currently sits:

  • only 1 data series per chart (yeah… I’m working on it…)
  • scaling is not in place yet (had it working, then introduced a bug in arithmetic somewhere…)
  • colors and “extras” haven’t been implemented yet. (They will be.)

werd up.

I will admit, it’s nice to use as an object.

More to come. My plan for tomorrow is: proper scaling, multiple data series, and all the “extras”.

(I put together a project on google code… I don’t have an SVN client on my mac yet, so I haven’t committed anything yet. I put the basic class in the downloads section, if anyone actually wants to see it.)

werd.
-d.