nunojob:~ dscape/08$ echo The Black Sheep

Posts tagged ‘XML’

No reason to disapear

Well ever since I started working time for my blog has been less. I really dislike that as this little corner gives me a lot of joy not only in the moment of writing but also for the great joy that is sharing information and enabling others to learn new and exciting technologies. That’s one of the things I want to talk about today. The power of sharing.

Last two weeks I was contacted by people (mostly experienced people) that were using either my k-anonimity algorithm or my open source online testing system. The fact that people are using my silly scripts is rewarding enough but the networking opportunities and being a person enabler is really what thrills me the most. It’s pleasant to see people overcome their difficulties, help them learn a new technology and then seeing the final result. I hope to continue receiving your kind emails about my work. I will always have 5 minutes to help.

I think that if you are a blogger but you don’t share what your doing your missing out. Your code will vanish into some CD or will just remain in some folder, buried forever. Let your code live. Let it enable others. Let it grow. In the meantime it will help you get wherever you want. Actually I got another exciting news just for sharing. But unfortunately I cant disclose them just yet. It involves being invited to help writing a free Ruby on Rails book. Sorry, had to say it :) How cool is that?

Actually, the most boring thing about working at large corporation is the fact that you cannot share what you do. It no longer belongs to you and even if it’s ok to share it you have to follow a complex process to get authorization to do so. So no one does! Everybody is waiting to sue so you simply can’t do things that you assume would be ok. Referring a copyright brand without referring that the brand belongs to x can cost the company a significant amount (and your job :P) and they simply can’t risk it. But oh well. The least you can say is that the good things cancel that out.

I have beenworking on DB2 and I’m widely surprised by the quality of the pureXML support and overall behavior of the solution. The lack of advertising and tools that IBM distributes with DB2 doesn’t give you the same amount of trust that other better advertised and with better tools databases do. But when you get down to business you will realize that DB2 and Oracle are on a league of their own. Just talking to the clients will make you realise that they buy because other databases can’t handle the amount of information. And if you do XML, for the next 6 months at least I’m sure that DB2 will be miles ahead. How much longer will it take for companies to realize that storing xml in clobs ain’t probably the best solution? Anwser: Not much…

Oh, final note! I finally picked the theme for my masters thesis. It will be about data mining in xml databases so if you feel like you have a nice tittle suggestion for it just leave it in the comment box. It will be greatly appreciated.

thetravelhat.com – The Travel Hat Journey Has Begun

So what is the travel hat?

It’s simple. It’s the unique hat of power – my precious – that travels all around the world. There are some simple rules. You are expected to try to give the hat as soon as possible, to a good friend in which you trust. That friend is expected to take it to a new city where the hat has never been before. Diversity is a major factor for the hat so it’s supposed to go to new and exciting places every time he travels. If you can you should choose for the diversity of the destination. Once reached that destination the search for a new owner begins.

This is still a alpha version so there are some known issues like the invalid rss feed (aka the nonexistent rss feed, because the stylesheet is still not implemented)

Upcoming Features:

  • Does not highlight current location.
  • Does not show total miles traveled.
  • Does not show total countries visited.
  • Does not list the nationalities that held the hat.
  • Stylesheet to create the feed from the XML file.
  • Administration system with db2 pureXML.
  • Improve (aka do some) webdesign.

Follow it’s latest adventures on thetravelhat.com.

Rails::ActiveRecord XQuery && DB2::Mac

Most rails developers use OS-X. Mostly because rails is built-in the latest release (Leopard) and TextMate offers a great IDE to use with Rails. Some could argue that it also works nicely on Windows but I really believe that Rails ain’t done to be used on a Windows Platform. Many articles and interviews with rails creator DHH second this statement. Rails is easy to develop in OS X and deploy in a Linux distro of your choice.

In my most recent screen-cast I explored an interesting technique of taking advantage of rails RESTful design and DB2 pureXML features to easily create a web-service that could query a relational databases with XML support (like DB2). As you must know DB2 Express-C is distributed freely and offers no limitation to home users/small companies. So it would be awesome to expand ActiveRecord to support xml elements, if a schema was provided to the database.

I’m aware that a pure xml database stategy would be a bad approach but there are situations when it simply makes sense. And in those situations one would profit greatly of two things wich are missing.

  • XML Support for ActiveRecord – in construction?
  • DB2 for Mac – will this ever exist?

Antonio Cangiano is creating a plugin that revolves around this concepts, but in a DB2 centered perspective. In my opinion it would be best if the rails plugin worked not only for DB2 but for any database adapter with XML support – as long as such is provided.

Let me give you a sample. Imagine that you have a database model for translating you rails application. It could be something like:

Languages

  • ID, int
  • DOCUMENT, XML

Imagine that the xml file is

<language isoname="pt-PT">
  <hello>Olá</hello>
  <bye>Até a próxima!</bye>
</language>
(...)

If this makes sense in your application then you could easily do something like register your model to observe (see observer design pattern) the session['language'] for changes and, if it’s changed, it would get all the XML for that language – it would fall back to default if such was not available – and create the hash with the values. The problem with this approach – besides making no sense for the internationalization problem! – is that in the observer model you would have to:

Language.find :first

And fetch the whole xml and then process it. If the XML document has 10MB, it would take some time. With XQuery support on ActiveRecord we could simply

Language.find :first, 
  :xcondition => ["//language[@isoname==?]", 
    session['language']]

Or, if we simply wanted to say hello in many languages – like flickr in their first page – we could simply

Language.find :first, :xcondition => '//hello'

There are just two problems that prevent rails developers from being able to do this kind of things. And those are the lack of XQuery abilities in ActiveRecord and the fact that Mac developers cannot use DB2.

METS Standard with IBM DB2 Express C using XForms as user-interface and Ruby on Rails as a Rest Web-services

HIGH QUALITY VERSION DOWNLOAD HERE

Well, here is the long promised screen-cast. The amount of topics covered is simply huge. To get you ready for the screen-cast I prepared some other more introductory screen-cast as well as some articles on these subjects. I’m sorry that I don’t have the time to document the REST, but I really advice to invest some time learning it as it’s a very pragmatic way of delivering high quality web services.

I strongly advice you to download this screen-cast from rapidshare as both Youtube and Google Videos quality is really awful. You can download it from here.

This work was really fun to do. So I hope to have the opportunity to develop it further and manage nested rest routes like /mets/1/agents to return the agents of the first submission information package (sip) using some cool DB2 pureXML features. I really feel that with a good plugin to help users take full advantage of DB2 pureXML features and a little of imagination this web-service could be of some use.

I also expect to complete the xforms model as it is not indexing a fileptr to each category when such is selected. I hope to implement this soon enough.

Here are the associated resources I developed:

And here are the other two screencasts I produced to introduce you to XForms and METS:

I also advice you to take a look at this articles. All of them where very helpful to my work.

XmlSimple?

>> xml_plain = %q(<p>Just a <strong>p</strong> on bold</p>)
=> "<p>Just a <strong>p</strong> on bold</p>"
>> xml_hash = XmlSimple.xml_in xml_plain,
  'ForceArray' => true
=> {"strong"=>["p"], "content"=>["Just a ", " on bold"]}
>> xml_plain2 = XmlSimple.xml_out xml_hash, 
  'RootName' => 'p'
=> "<p>\n  <strong>p</strong>\n  <content>Just a </content>\n  <content> on bold</content>\n</p>\n"

Não querendo ser malvado com quem fez esta biblioteca acho que o mínimo expectável para uma operação de marshall/unmarshall é que seja reflexiva. Lá vou eu ler documentação para descobrir como se ensina o XMLSimple – nome curioso não é? – a ser o que nunca deveria deixar de ser. Reflexivo.

Já agora se alguém já programou web services em rails e sabe como transformar os params em xml de uma forma melhor, let me know!

xForms Example (CSS)

Sample Xforms Application using cssSo here comes my first ever XForms sample. If you are interested in testing them out I’ll have to give you some pointers. First off all your browser probably can’t render XForms. So you need to find a specific add-on for your browser to make it work. As this XForms where made in Mozilla Firefox with this add-on I strongly recommend that you use it to get the same results. This is not my fault, XForms is not as mature as HTML or CSS and therefor these things tend to happen. You will see what I’m talking about when I get to the Know Issues! :PNow two short notes:

  • For the load/save button to work you will need to change the path in the code. Just look for xforms:submission and replace the filepath for the one in your computer.
  • You need to comment what’s between this for the load button to work. Why? The bind is interfering with the instance replace. How do you fix it? If i knew I would have. I think that when I do remove the bind and add the schema this behavior will be fixed..

<!– remove this lines to erase load bug. Using a schema will fix this –><!– EOB: End of bug –>

Credits for the icons go to famfamfam.Here is the list of known issues (any help is welcome):

  • Not binded to the schema. That’s because I’m lasy and METS is hard work.
  • xforms:select1 won’t hide the scroll on overflow:hidden. I’m not sure this is my responsibility as the add-on doesn’t represent a full XForms implementation.
  • Submission not implemented. That was really not the point.
  • Submission button is relevant when no authorid or workid is given. Anyone?
  • Can’t style ‘add’ and ‘remove’ trigger differently from the other xforms|trigger. I tried creating a class for them having as result a weird inverted triagle. To replicate this bug you need to find a trigger and add style=”border:100px;”.

For now: that’s all folks! Have a nice week.

Creating a User Interface for XML Schema using xForms

We use XSLT all the time to convert a XML document into another format. XML Schemas are XML documents and I think it would be interesting to create the user interface and model for that specific schema using xForms. This would drastically decrease development time and would allow a quick view on what that XML Schema is all about. In other words, this would do for xForms what JAXB does for Java.

Why xForms? xForms is W3C recommendation for creating user interfaces and it’s based on the MVC pattern. This is enough to convince me, I’m all for standards.

While researching I found some works on this subject [here, here] but they are mostly on conference proceedings and therefor I thought no one had really implemented a Generic Schema to xForms transformation engine. Before giving up I asked Vítor Rodrigues about this, as IBM is know for their XML Alphaworks. Guess what? Now I have the solution.

Here’s what you need create an xForm from a Schema:

  • Download Eclipse WTP
  • Open Eclipse and browse to Help > Software Updates > Find and Install
  • Click New Remote Site
  • Name: Emerging Technologies Toolkit (ETTK) Updates
    URL: http://awwebx04.alphaworks.ibm.com/ettktechnologies/updates
  • Select it and click Finish
  • Now select Emerging Technologies Toolkit (ETTK) Updates > Emerging Technologies Toolkit – Technologies > Visual XForms Designer
  • Click next.
  • Accept the license, install the software and restart eclipse.

Now for the Visual XForms Designer I made a little screen-cast. Just click here to see it.

xForms Resources

We will post a xForms/METS/DB2 screen-cast in this website soon. To get you prepared for this I advice you to download this firefox plugin and read the following articles:

In case you are looking for good examples you can visit this wikibook or better yet… Open your console, and create a directory in your home folder. Enter the folder and write this:

svn checkout http://xforms-examples.googlecode.com/svn/trunk/ xforms-examples-read-only

These are some great samples from Google Code. Believe me I’m saving you time with this advice. You won’t need to spend hours on badly executed examples from companies that are supposed to be building xForms implementations. Outch!?

Piada do dia

You’ll also be installing an XForms extension that lets you view XForms documents directly in current versions of Firefox, Internet Explorer, Seamonkey, or Mozilla. If you don’t currently have one of these excellent, standards-compliant browsers installed, now’s a good time to get one.

em: http://www.ibm.com/developerworks/xml/library/x-xformsintro1

O Internet Explorer 8 deverá ser a primeira versão do browser a suportar totalmente os padrões web como CSS e RSS, uma vez que passou no teste de padrões web Acid2 Browser Test.

em: http://www.webtuga.com/Primeira-beta-do-Internet-Explorer-8-devera-chegar-em-meados-de-2008.wtuga

Misturar Microsoft e standards na mesma frase é, para mim, sempre uma boa piada. E, já agora, que raio é o Acid2 Browser Test? Santa ignorância. A minha, claro!

[EDIT: Se estão interessados em saber um pouco mais sobre o assunto podem ler o excelente contributo que o André Luís deixou como comentário]

Ruby on Rails vs Java

Uma pequena introdução as assinaturas digitais XML

De acordo com o RFC2828 uma assinatura digital define-se como sendo um valor calculado com um algoritmo criptográfico e anexado ao objecto de dados de tal forma que se possa usar essa assinatura para verificar a autenticidade e integridade dos dados.Então o que é uma assinatura digital XML (W3C XMLDSIG)? É, como seria de esperar, uma assinatura digital mas adaptada a assinar documentos XML.A forma como funcionam é extremamente fiável.Logo para começar a assinatura não só assegura que a pessoa assinou aquele documento é de facto quem se espera – através de um certificado – como também que o mesmo se manteve inalterado até ao momento em que foi apresentado. Uma mensagem encriptada com uma chave pública apenas pode ser desencriptada com a correspondente chave privada.

Começamos por processar o documento. Para isso precisamos de transformar o ficheiro XML em um ficheiro que seja igual na fonte e no destino. Como sabem em XML ter

<nome>   Nuno Pinto</nome>

É igual a

<nome>Nuno Pinto</nome>

Logo surge a necessidade de criar uma representação única para cada documento XML. A este processo chamamos canonicalização. Numa assinatura digital XML existe a necessidade de explicitamente declarar qual foi o algoritmo usado para criar esta representação. Agora podemos processar o documento XML e criar, através de um algoritmo criptográfico num processo normalmente chamado de digest, uma impressão digital do documento. Em seguida, com a chave privada, encriptamos essa impressão digital e enviamos para o destinatário a nossa assinatura (que contém a chave pública, certificados, impressão digital assinada e os algoritmos que foram usados para o digest e a canonicalização).Ao receber o documento assinado pode-se verificar o resultado do digest do documento (usando os algoritmos contidos na assinatura). Depois podemos desencriptar a impressão digital assinada e comparar os dois valores. Se coincidirem é valido dizer que o documento é autentico e não foi alterado. Fixe!Por fim resta dizer que existem três tripos de assinaturas XMLDSIG.

  1. Detached: O documento XML a ser assinado e a assinatura estão são dois ficheiros distintos, sendo que esta tem uma referência ao documento que se propõe a assinar.
  2. Enveloped: O documento XML e a assinatura surgem no mesmo ficheiro de uma forma sequencial.
  3. Enveloping: O documento e a assinatura estão contidos em um envelope XML.

Se este artigo serviu para vos aguçar o apetite sobre este assunto, podem ler mais sobre o assunto no artigo Programing with Java XML Digital Signature API feito pelo Sean Mullan da Sun.

CAOS: Como usar a API do Google Maps

Cá pelo CAOS andamos a desenvolver uma pequena aplicação que usa a API do Google Maps.

A ideia para este trabalho surgiu quando conheci a Ana numa conversa por email. A Ana está em Shangai e é aluna do antigo curso de LESI da Universidade do Minho. Também costumo falar também muito com o Vítor Rodrigues que está actualmente, se não me engano, na Califórnia e mais alguns ex-LESI que andam perdidos pelo mundo. Então surge a ideia, um mapa com os ex-alunos para que os actuais alunos da licenciatura possam falar com eles e trocar impressões sobre o futuro profissional que os espera.

Estava a escrever um guia que acompanhava as várias etapas de desenvolvimento da aplicação mas depois deparei-me com este excelente guia , muito parecido com o que estava a escrever. Parece que na Internet já se fez tudo. :/

(Contudo esse guia foi feito numa versão anterior da API. Uma versão melhor, pelo menos suportava XSLT. Se esta suportasse não tinha que deitar fora o xsl que criei… E piorar a estrutura do xml brutalmente.)

Se quiserem código relativo a API actual saquem as sources do que fiz e/ou vejam a documentação da API do google maps.

Podem ver o resultado da minha pequena experiência aqui.

Obrigado a todos que me arranjaram as suas informações para usar no exemplo e ao famfamfam pelos ícones. As localizações são, evidentemente, apenas uma aproximação. Se bem que no caso do Ulisses revelam o sítio onde ele deveria realmente estar a programar os seus internacionalmente famosos foldrs. E viva os catamorfismos de listas! :P

A Mais Alta Arvore de Natal da Europa

A Mais Alta Arvore de Natal da EuropaVenho agora da cidade da Arvore de Natal Mais Alta da Europa! Temos o GP Histórico, temos o RedBull Air Race e agora a Arvore de Natal Mais Alta da Europa. É daquelas coisas que dá orgulho de ser portuense! Ter um governante assim dá gosto. Uma pessoa incorruptível, uma pessoa que jamais fecharia a Câmara ao Futebol Clube do Porto se fossem campeões europeus, uma pessoa incapaz de despejar velhinhos que viveram toda a sua vida na mesma ilha, uma pessoa que seria incapaz de emitir um despacho que proibisse todas as pessoas que vivem em bairros sociais de mudarem para outro. Afinal quem mais que ele percebe como é morar na torre 1 do Aleixo com dois filhos com menos de 7 anos. Não percebe senhor Rui Rio? Claro que percebe. (A continuar assim manda alguém dar pancada a uns camionistas na ponte do Freixo e ainda acaba como presidente da republica!)

Tenho muito orgulho em dizer que quando estava no décimo segundo ano e era representante dos alunos da minha escola me recusei a estender a minha mão e cumprimentar este senhor. Valeu a pena o raspanete que levei do director, a minha mãe sempre me ensinou a não me dar com escumalha.

Mas afinal quem é que quer saber da merda da maior arvore natal da Europa? Quem??? Quero Eu. Tenho aulas amanhã e tive que ir até Campanhã apanhar o comboio para Braga porque os parolos todos sairam a rua para ver o raio da arvore. É um pinheiro pessoal, atinjam, um pinheiro. Falso ainda por cima. Um pinheiro! Querem que soletre? Não tem duendes mágicos, não oferecem rebuçados, não estão lá as meninas da netcabo, nem sequer os famosos Microsofties talibans de quem o Mário Lopes tanto gosta. É apenas e só um pinheiro. Falso.
Agora que não venha agora alguém da câmara com chantagens para o meu email, isso é so-last-week. Actualizem-se.

Pelo menos na viagem tive a oportunidade de acabar o The Semantic Web da Wiley. O livro aborda muitos dos temas que são leccionados no meu mestrado, na unidade curricular de Engenharia de Linguagens. É uma leitura porreira para quem não saiba rigorosamente nada dos standards do W3 consortium, nem de ontologias ou abordagens à inteligência artificial. Mas se o vosso objectivo era o mesmo que o meu, ver algumas aplicações da tão famosa Sematic Web, comprem/requisitem outro livro. Neste não vão ver nada disso. O que tirei daqui foi que misturar soap/xml/xsd/svg/xforms da para muita coisa. E eu vou fazê-lo para o meu projecto de mestrado!

Entrentanto vou dando feedback aqui no blog.

As voltas com os estudos

Acho que já se notou que não andava muito feliz com o mestrado. Como se costuma dizer, quem está mal que se mude. Foi o que fiz.

Troquei a unidade curricular de especialização de Análise e Concepção de Software pela de Criptografia e Segurança de Sistemas de Informação.

Primeiro aula (para mim claro) andamos as voltas com o JBoss. A conclusão que cheguei foi que no meio de tantos xmls de configuração qualquer um se perde e mais vale usar o Apache Tomcat! Será que não aprendem com o Ruby on Rails? Convention Over Configuration! :P Não gostei muito da forma como se criam estes webservices. O facto de termos que andar com ficheiros de configuração para trás e para frente (cliente/servidor), sermos quase obrigados a programar em Java. Era bem mais fixe se estes webservices servissem xml como respostas a pedidos, por exemplo, e que depois fossem enclapsulados numa classe de forma a responder para cada linguagem de programação. Não que perceba nada disto, ainda estou muito verdinho.

De qualquer forma fica um pedido. Se alguém conhecer um bom guia para iniciantes em JBoss diga qualquer coisa. A gerência agradece!

Telemoveis Ajudam Idosos

cp2-sleeping.jpgJá sei que a está horinha já devia andar na terra dos mémés mas aqui o bichinho anda com alguns problemas e estou a dar-lhe um defragzito. Chamemos-lhe um pequeno miminho.. :)
Caso se perguntem que caralho é esta foto aqui ao lado, trata-se de um individuo (provavelmente sobre praxe, ou todo janado) que se deitou na relva a beira do prometeu a apanhar sol. Não sei porque mas achei que esta imagem iria acompanhar bem este texto.

Leram o Correio do Minho ontem? Tinha uma noticia sobre como se tinham dado telemóveis a 170 idosos de Braga. Perguntei-me porque. Será que se avizinham eleições? Provavelmente.. Será que alguém têm interesse nestes negócios com dinheiros públicos? Duhh.. Mas quis ler qual a razão que se dava aos contribuintes para tal oferta tão generosa mas ao mesmo tempo estranha. A noticia intitulava-se:

Telemóveis ajudam idosos

roflcats.jpgAjudam a fazer o que? Pronto eu compreendo, como tem pouco tempo de vida não vão morrer por exposição a radiação. Mas considerar isso uma ajuda, epá, isso já é abusar que se farta. Estou mesmo a imaginar a Dona Florinda a tentar mudar o canal com o telemóvel.. Realmente dá jeito.. Agora a sério, ajudam os idosos a fazer o que? Resposta: Exactamente o mesmo que as outras pessoas logo, não faz sentido nenhum andarem a dar telemóveis só porque, vá… É giro..

Fugindo um bocado ao assunto aqui ao lado temos um desenho dedicado ao site ROFLCATS que o tretas tanto adora ver quando estamos a ter aula de Engenharia de Linguagens. A arte é responsabilidade minha e do Mik, mostrando toda a inspiração que o XML nos passa.

Continuando. Quis ler o que tinham os intervenientes a dizer sobre o assunto, nomeadamente quem deu os telemóveis. Eis uma citação tirada directamente do jornal acima citado.

Uma das funções que estes telemóveis permitem realizar, é a possibilidade de contactar rapidamente os serviços de saude.

books.jpgEra também referido que o custo das chamadas era suportado pelo governo civil – Claaaaaroo.. Iam pagar vocês não? – e que vinham equipados com a fantástica funcionalidade de quando se carrega tecla 3 – DEF – é efectuada uma chamada para o centro de saude. 112 XAU AI, que venha o DEF. E já agora ligar para o centro de saude? Aposto que metade desses 170 VIVE no centro de saude. Vão ligar para dizer o que? Só se for pra pedir panquecas. Enfim. Não, eu não odeio os velinhos. Mas andam a gozar com a nossa cara porque, dar telemóveis? Isto nem para a Microsoft faz sentido.. Ok, para a Microsoft faria sentido, tudo o que implica gato por lebre é, no entender deles, espectacular. Que se lixe. Por fim fica uma foto do ultimo livro que li (UML qualquer cena) e dos que tenho para ler. E também a prova que a cama nunca está feita.

Se tivéssemos a cama em programação OO a cama teria um método chamado Cama.FazerCama. Infelizmente o que se passa é Nuno.FazerCama, o que é uma merda. Vou por aqui uma citação do UML Distilled sobre este assunto. Neste livro chamam CentralizedControl ao Nuno.FazerCama e DistributedControl a cama fazer-se a ela mesma (fixe!)

Both styles have their strengths and weeknesses. Most people, particularly those new to objects, are more used to centralized control.

Claro, não fazer a cama é uma grande vantagem! Agora a sério. Se são novatos em OO como podem estar habituados a uma noção que faz parte deste paradigma? Martin, Martin..

In many ways, it’s simpler, as all the processing is in one place.

Realmente professor, este livro é genial. Centralized, in one place? Ninguém diria. Mais simples? Naaah.. Achas mesmo?

With distribuited control, in contrast, you have the sensation of chasing arround the objects, trying to find the program.

Isto parece ser óptimo realmente. Nem vou discutir os pontos de vista que este senhor vai apresentar em seguida já que concordo inteiramente com eles – até agora estive só a gastar tempo pro defrag acabar, eheh – mas acho gritante que as provas cientificas na nossa área sejam tão reduzidas; e que sejam quase sempre juízos de valor (aquilo que parece evidente) a fazer com que uma teoria seja considerada mais certa que outra. Depois acontecem bugs como o do ano 2k.

Deviamos aprender com outras ciências que existe uma necessidade de provar aquilo que fazemos, não apenas dizer coisas (e bem) e não fazer os testes que corroborem a nossa hipótese. Até nos nos enganamos pessoal!

Despite this, objects bigots like me strongly prefer distributed control. One of the main goals of good design is to localize the effects of change. Data and behavior that accesses that data often change together. So putting the data aand the behavior that uses it together in one place is the first rule of OO design.

Ou seja, qual é a conclusão disto tudo? Deus não sabia programar.

Se quiser aprender pode falar com o senhor Martin Fowler.

Software Engineer at Critical Software?

Last Monday I attended an job interview at Critical Software. Had some troubles finding tecmaia facilities and got there 30 minutes late! (I know, need a GPS)

They started the interview with some general questions about my background and the work I did at Mobicomp. Then a more technical part, where I was to respond (like if it was an exam) to some questions about object-oriented design, database, Threading, Linux, C++, XML, UML, mySQL. Then a final part of the interview was reached, where my psychological strengths were measured, and I was able to speak for myself and tell them what I like to do.

This is the second interview I’d been in since summer break, the first was at Edigma.com, but that one did not went so well. It’s a shame, as I feel I would be a very good addition to that team. I know the responsibility was not entirely mine, as the interview was very bad. Had no structure, they didn’t take a single note about what I said, they didn’t have a script to follow. I could continue this list as I feel strongly disappointed with them. Don’t get me wrong what they do is cool, but the recruiting process is not.

Follow

Get every new post delivered to your Inbox.