[wp-hackers] Ideas for GSoC

Eric Mann eric at eam.me
Tue Apr 30 17:47:58 UTC 2013


GUID is just an acronym - "Globally Unique IDentifier" very similar to UUID
- "Universally Unique IDentifier"  Yes, Microsoft uses GUIDs more often
than anyone else and has their own proprietary algorithms, but it's a
common standard that's built in to many DB systems as well.

MySQL, for example, even features a UUID() method:
http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html#function_uuid

You can store UUIDs in the database in a Binary(16) column:
http://forums.mysql.com/read.php?98,49626,49922#msg-49922 This will make
queries just about as fast as working with integers.

If you're migrating data from one format (auto-incremented integers) to
another format (a true UUID) then the chances of having an ID conflict from
one system to the other is nil.


On Tue, Apr 30, 2013 at 9:08 AM, Brian Iván Martínez <xangelux at gmail.com>wrote:

> Is there documentation on the GUID? I thought it was a Microsoft closed
> algorithm. About the conflicts, I threw that in in case you wanted to use
> integers (decimal) only (for faster query operations) and in case the
> resulting new UUID (decimal) conflicts with the old id, then that aproach
> can be taken, if that is the case, but if not, the simple new UUID
> conversion is taken with no conflicts.
>
>
> 2013/4/30 Eric Mann <eric at eam.me>
>
> > >
> > > The new UUID would be made out of the username+timestamp from the epoch
> > > and that string would be md5'ed
> >
> >
> > Why not use a true GUID? XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX It's a
> fairly
> > standard and recognizable data structure.
> >
> > The resulting UUID of the users may conflict between on systems with a
> > > large number of users as the new UUID can be the same as the old id of
> a
> > user
> > > on those systems.
> >
> >
> > If this kind of conflict is possible, then there's a flaw in the UUID
> > system you're using.
> >
> >
> > On Sun, Apr 14, 2013 at 1:17 PM, Brian Iván Martínez <xangelux at gmail.com
> > >wrote:
> >
> > > Hello, I'm interested in the GSoC and I'd like to be mentored by you
> > guys.
> > > I like some of the ideas in the GSoC over in wordpress site but I have
> > some
> > > ideas of my own too that I'd like to run by you before submiting my
> > proyect
> > > thing.
> > >
> > > The first Idea is:
> > >
> > > Public/Un-public
> > > Sometimes you are writing something, but then you have to go, so you
> save
> > > it as a draft; then you come back and continue your draft and post it.
> > But
> > > then you realize you wrote something you don't want everyone to see, so
> > > your only option is copy the content and delete the post to write it
> > > somewhere else. It would be really useful to have a big red/blue button
> > to
> > > publish your post or hide it if you don't want everybody to read it,
> > maybe
> > > you have a long post and you plan to post it in a specific date, so you
> > > draft it but if you don't remember to post it then you may post it too
> > > late, this post button may be programmed to warn you to post it or even
> > > post it automatically via a Trigger or php.
> > >
> > > Besides annother idea is create a social circle inside wordpress where
> > you
> > > can create a group for close friends who also public in your wordpress
> or
> > > simply in wordpress.com. This is for the only pourpuse of leave post
> > only
> > > for users on a group. This groups are more important than the blogs you
> > > follow, because you can get a really long feed from all the blogs you
> > > follow and your friends posts get lost in the huge list that some times
> > > becomes too long, didn't read (tl;dr). That adds some interesting
> > features
> > > to wordpress like  friends groups' feed on a list, friends on a group
> but
> > > don't want their feed on the friends feed and a posibility to send a
> > friend
> > > a notification of a post if you know your friend will be interested
> with
> > a
> > > "tag" friend button instead of an email .
> > >
> > > Well, it seems I pured some ideas in the last one, well, the next idea
> is
> > > an implementation of the not public post. A lot of users use wordpress
> > as a
> > > content creation tool but sometimes they write a personal journal and
> > don't
> > > want to share all of it and it shouldn't be on the regular posts stream
> > > because it about their personal life, how about a little journal inside
> > > your admin panel. This journal would have tools to link to posts and
> > have a
> > > preview of the link and the ability to make a todo list. This tool
> would
> > be
> > > very good and useful to content creators that plan their posts or the
> > ones
> > > that are following the development of their site using a todo list to
> > check
> > > for things that they need, program post titles, program series of posts
> > > etc.
> > >
> > > Apart from this I think the UUID for the users is very interesting as
> the
> > > new user tour.
> > >
> > > For the new UUID I would first add a column to the user apropriate
> table.
> > > The new UUID would be made out of the username+timestamp from the epoch
> > and
> > > that string would be md5'ed. If you still want to keep working with
> > > integers I would convert md5'ed string to it's equivalent integer
> value.
> > > New users only have the new column value and 0 on the other to start
> > > conversion. When the last user has been converted, the old id column
> > would
> > > be droped. Obviously before doing such a thing, a lot of precausions
> have
> > > to be taken into acount as every function that has access to or need
> the
> > > user id have to be "hacked" to verify the two numbers before each
> action
> > is
> > > taken. The resulting UUID of the users may conflict between on systems
> > with
> > > a large number of users as the new UUID can be the same as the old id
> of
> > a
> > > user on those systems. For that to be plausible there has to be extra
> > steps
> > > that migrate the users id to UUID in md5'ed strings only and then check
> > the
> > > result for converting the UUID to a integer equivalent if there is a
> user
> > > with that id, if so, first convert that user to new UUID and delete the
> > old
> > > id. Do that check recursively so if that issue repets, firs check the
> > user
> > > down and so on. At the end of the "conversion" drop the extra column
> and
> > > un-hack the functions that you previously hacked.
> > >
> > > For the new user tour I think It would be better to have a meter but
> with
> > > different levels, if you only want to create posts, a quick tour to
> show
> > > you about creation of new posts, basic moderation, notifications,
> select
> > a
> > > theme, change password and where and how to read statistics. If you
> want
> > a
> > > more advanced tour click a button in each part of the admin tools
> telling
> > > which does what and examples or tips to get a better experience.
> > >
> > > I'm studying Computer Science Engeneering in México, Michoacán State
> and
> > > have knolege on databases (MySQL, PostgreSQL mostly), networking
> > > (Intermediate) and programming in C, C++(rusty in that), Java, PHP,
> > > JavaScript (basic, JQuery), learning ruby/RoR.
> > >
> > > If any of my ideas was interesting pleas let me know which to apply to
> > the
> > > GSoC with you guys, if not tel me if I can help with annother one of
> your
> > > ideas.
> > >
> > > Thanks for your time.
> > > _______________________________________________
> > > wp-hackers mailing list
> > > wp-hackers at lists.automattic.com
> > > http://lists.automattic.com/mailman/listinfo/wp-hackers
> > >
> > _______________________________________________
> > wp-hackers mailing list
> > wp-hackers at lists.automattic.com
> > http://lists.automattic.com/mailman/listinfo/wp-hackers
> >
>
>
>
> --
> Ellos se ríen de mi por que soy diferente, yo me río de ellos por que todos
> son iguales-- J. Davis
> _______________________________________________
> wp-hackers mailing list
> wp-hackers at lists.automattic.com
> http://lists.automattic.com/mailman/listinfo/wp-hackers
>


More information about the wp-hackers mailing list