Category Archives: Uprofile

uprofile: rc0.6.2

Upro­file chegando cada vez mais perto de uma ver­sao “100%” sta­ble, bem por assim considerei.

Andei tra­bal­hando no novo proces­sador do Upro­file. Agora uti­lizando o Mon­goDB para cache rapido e sim­ples. E depois dos testes rapi­dos tive­mos um aumento de 140% em cima da solu­cao pas­sada. Quero uti­lizar ele em out­ros pon­tos. Talvez tornar o sis­tema de “ses­sions” ape­nas nele, ja’ que sao dados de curto tempo e que a client podera’ ter total acesso.

Um ponto legal desse final e sem­ana foi a marca de 0.6, nunca fiquei tao feliz como estou agora com o Upro­file. Chegou em um ponto que nao quero mais mod­i­ficar estru­turas. Acho que encon­trei a solu­cao ideial para o que vinha procurando.

Bem, nao posso deixar de comen­tar que ja’ estou tra­bal­hando em um addon de conec­tivi­dade com Face­book, Twit­ter e Meme. Sim, Meme  da Yahoo!. E quem sabe ainda esse mes nao saia esse addon… =)

Os recurso do Linkaaa ja’ esta’ OK.

2010-02-09

ShakeIt

  • scripts uti­lizando o novo mod­elo (supernova)
  • obje­tos tambem uti­lizando novo modelo

Upro­file

  • scripts usando supernova
  • obje­tos usando supernova
  • API nova OK

Tenho algu­mas ideias novas para o Upro­file e  quero imple­men­tar ao longo de amanha. Mel­ho­rar o sis­temas de msgs e como a API fala com o web-service.

Algumas coisas que fiz hoje…

Hoje ate’ que foi um dia legal.

ShakeIt

  • change­Lo­ca­tion — Agora podemos con­tro­lar loca­tion dos pro­files usando Ses­sion nor­mal, esta’ apli­cado nor­mal­mente na classe, gostei do resul­tado final.
  • search — Sis­tema de busca total­mente ok! [*] Ver Uprofile =)
  • event — recome­cei a escr­ever a class de even­tos e ja’ con­nectei ao OODB

Upro­file

  • search pro­file — Gra­cas ao ShakeIt, agora o search de pro­file gan­hou um ponto a mais em per­for­mace e API pronta para uso do search. Detalhe que ele busca em qual­quer infor­ma­cao basica do pro­file retor­nando assim os encon­tra­dos. Ah, pag­i­nacao esta’ ok tambem e no caso a App tem total liber­dade de escol­her o “limit” da “query”.

VCNews

  • Refiz grande parte da Engine…
  • Novas fea­tures:
    • Men­tion — get —  Retorna info de uma Mention
    • Men­tion — getAll­Pro­file — Retorna todos os men­tions pelo pro­file X
    • Men­tion — Last — Retorna o ultimo mention
  • Come­cei a escr­ever a “cat­e­go­riza­cao” dos posts.…

Uprofile — Profile’s Session (Fetus)

Coisas que modifiquei:

  • cri­a­cao de novo metodo para checkar se existe o Ses­sion indicado
  • ajustes da API para novos os metodos
  • ajustes na API para tratar o novo Session’s service
  • mudanca da classe para uma sub-class do Profile

Bem a grande mudanca foi ter acesso aos Ses­sions ape­nas via o Pro­file, assim nao temos mais aque­les “erros de encon­tro” em cima de ses­sions com share entre apps.

Quero ter­mi­nar logo uma ver­sao nova sta­ble da Fetus para lib­erar para API em PHP, talvez alguem ai queira usar Upro­file em sis­temas PHP. =) E tenho varias ideias de pro­je­tos para usar o Upro­file. No caso, ape­nas dar um con­t­role via web para ele ja’ vira uma “super-agenda” de con­tatos. Ja’ que nao temos lim­i­ta­coes do que guardar no Uprofile.

Uprofile (Fetus) — Friends

Com o novo Design do Upro­file (Fetus) tive de rescr­ever o sis­tema de ami­gos e com isso tive­mos alguns fixeds e new features:

  • nao tem que ter a “amizade” para enviar msgs
  • a class pro­file tem todo con­t­role das amizades
  • podemos colo­car um nick­name para cada amigos
  • podemos dar um block em ami­gos chatos impedindo msgs
  • podemos criar ano­ta­cao a respeito dos amigos

O que mais gostei foi real­mente ter o con­t­role das amizades na class Pro­file, varias ideias de fea­ture ja’ vieram a cabeca como:

  • noti­fi­ca­cao quando um amigo fica online
  • “sis­tema de recados”
  • avatares (para isso quero fazer o sis­tema de fotos)
  • confirmacao/autorizacao da amizade

Prati­ca­mente esses itens e out­ros ja’ estao na minha Todo list. =)

UProfile — Fetus version

Depois de ter “ter­mi­nado” (nunca ter­mino meu ToDo List) o UPro­file Black Hole, come­cei a pro­duzir o pack que iria chamar Child. Mas com o anda­mento do ShakeIt vi que tinha alguns “defeitos” no Child. Resolvi refazer o Design da engine. Dai saiu o Fetus.

A ver­sao Fetus tem exatas 2 sem­anas de vida como Black Hole. E vi que ja’ esta’ real­mente mel­hor que a Child. Com isso, resolvi mod­i­ficar o server de QA do Upro­file para ver­sao Fetus. Todos os testes foram OK. Bem, vamos colo­car a cara a tapa Fetus esta’ como ver­sao sta­ble do Upro­file desde hoje cedo. Tudos (ShakeIt e mais alguns sites de ter­ceiros) que estao uti­lizando o UPro­file ficaram mais rapido em busca, mudanca de infor­ma­coes do pro­file e cri­a­coes de “sessions”.

Fetus tem cerca de 80 lin­has a menos, usa o frame­work Uni­verse e e’ multi-threads.

ToDo — Upro­file

  • Painel de administracao
  • Criar sis­tema Logger
  • Criar uma solu­cao para “fotos”
  • Criar uma cen­tral de con­fig­u­ra­cao e fer­ra­men­tas para o User
  • Criar algo mais “cool” com opcoes de escolha do user

Uprofile e ShakeIT — primeiro uso…

Depois de con­struir grande parte do que eu imag­ino de um SaaS de con­t­role de pro­file e seu uso pratico, sim estou falando do Upro­file, come­cei a colo­car ele a prova. Uti­lizando o pro­jeto ShakeIt para isso.

O ShakeIt vai usar todos os recur­sos do Upro­file e alguns destaques que acho impor­tantes para o projeto:

  • Bate-papo.
  • Menssagens entre usuarios.
  • Share de informacoes.
  • Stor­age de infor­ma­coes do pro­file (seus gostos/preferencias)

Mas o que eu real­mente gostei foi tro­car toda log­ica de cadas­tro, login, ses­sion, stor­age e log dos users do site por ape­nas uma chamada na API do Upro­file. Claro, como fui eu que fiz o Upro­file tive de fazer todas essas log­i­cas, mas no prox­imo pro­jeto nao terei mais de desen­volver nen­huma log­ica. Alem de fazer uma rede de usuar­ios entre os pro­je­tos. Isso me deixou super moti­vado a trazer mais recur­sos ao Upro­file. O que me fez pen­sar… Porque nao trazer out­ros ser­vi­cos a Upro­file? Come­cei a desen­har alguns recur­sos novos como manip­u­la­cao do Twit­ter e Sta­tus. Uma ponto muito bom porque nao terei de manip­u­lar mais um objeto no banco de dados, toda infor­ma­cao ja’ e’ guardada no Twit­ter mesmo.

E quem gan­hou com isso foi o Uni­verse, que agora conta com API do Twit­ter, ainda em beta na minha opiniao tem de mel­ho­rar e exis­tem ideas para criar fer­ra­men­tas nela.

Bem agora tenho mais uma Todo List para esse .plan:

  • Fechar uma ver­sao da API do Twitter.
  • Finalizar todos os testes do Upro­file, tanto API quanto Engine, para lan­car uma ver­sao publica.
  • Ligar o ShakeIt total­mente ao Uprofile.

Uprofile — Sessions

Os novos recur­sos da Class Session:

  • start — Gera e grava um SID para o user.
  • remove — Remove o SID do user.
  • check — Ver­i­fica se o user esta’ com aquele SID.
  • has­Sid — Ver­i­fica e traz o SID do user.

[Uprofile] New features!

Opa opa!

Depois de uma boa madru­gada pro­du­tiva no Upro­file, venho aqui escr­ever o que temos de novo.

Classe User:

  • self.__checkId__ Verefica se ja’ existe ID.
  • self.__checkUser__ Verefica se ja’ existe User.
  • self.__create__ Criar um User.
  • self.__get__ Pegar infor­ma­coes do user via DB.
  • self.__getSession__ Pegar infor­ma­coes de ses­sion do user via DB (Classe Session).
  • self.change Muda de uma vez so’ qual­quer atrib­uto da classe User no DB, e qual quiser. Claro.
  • self.read* Ler atrib­u­tos do User.
  • self.set* Setar atrib­u­tos do User.

Classe Ses­sion:

  • self.__add__ Adi­cionar infor­ma­cao de Ses­sion ape­nas na classe.
  • self.__get__ Pegar infor­ma­coes do user usando a App do momento via DB.
  • self.add Adi­cionar infor­ma­cao de Ses­sion no DB e classe.
  • self.change Mudar de uma vez qual­quer atrib­uto de ses­sion sele­cionado no DB e classe.
  • self.delete Apa­gar infor­ma­cao de Ses­sion no DB e classe.
  • self.hasName Verefica se existe infor­ma­cao de Ses­sion com nome requerido.
  • self.read* Ler atrib­u­tos da Session.
  • self.set* Setar atrib­u­tos da Session.

Scritps User:

  • change Muda de uma vez so’ qual­quer atrib­uto da classe User no DB.
  • Check.id Verefica se ja’ existe ID.
  • Check.user Verefica se ja’ existe User.
  • cre­ate Cria um User.
  • get Devolve um Obj. User ja’ com suas informacoes.

Bridge.User:

  • Check.id Verefica se ja’ existe ID.
  • Check.user Verefica se ja’ existe User.
  • change Muda de uma vez so’ qual­quer atrib­uto da classe User no DB.
  • get Devolve um XML com infor­ma­coes do User.

A API da Classe User ja’ esta’ toda OK. Fazendo todas as acoes que a Classe User faz no WS.

… Bem e fica o convite…

Quem quer fazer uma API em PHP ou qual­quer outra lin­guagem para Upro­file? So’ falar que eu passo a doc­u­men­ta­cao basica para conec­tar no WS.

E’ isso. =)