OpenID for small sites

June 1st, 2009 No Comments »

Hi there, this is another post motivated by my newest personal project, substitutefor.com. By definition pet projects are the ones you cannot afford giving much time to, essentially because you already have a life and a job with their respective schedules. So when it comes to taking design decisions, it’s very likely that you end up using your guts instead of the analytical process you’d use in your daily work.

It’s also very likely that at least you try to gather some information, which is usually the easy part, and then blog about it: Let’s see what other people thinks about the matter.

And the matter here is OpenID, would you use it as default registration/login schema for your website? I will even go further, would you remove any other login mechanism in favor of it?

There are three issues that make me worry about the adoption of OpenID:

  1. Usability problems
  2. Only known by tech savvy users
  3. Convenience of having a user’s database

The first document I’ve found about the matter comes from the yahoo developer network [1]. And from a quick overview my worries about usability got confirmed. Ey, a good suggestion from these guys:

Promote the utility, not the technology

The fact that’s only known by tech savvy user’s is something that from now I can only suppose, but assuming it’s true, the main advantage of avoiding the user the need to register losses it’s value. Even more, if your website is the responsible of making a user create a new openID account, the process will be longer and more confusing for him than simply creating a local account in your site. You’re not only asking to register, but to learn something else first. And also diverging the attention of the client to a third party provider in the process.

The third issue, on the other hand, is probably less problematic, since there is still the possibility of storing local user’s data or preferences in your site and link them to its openID. There are also some interesting developer’s opinions here [2].

[1] Yahoo! OpenID Usability Research

[2] Stackoverflow: What reasons are there NOT to use OpenID?

So, this is it, third post about substitutefor and no official presentation yet, :-). Ah by the way, my guts taken decision was to discretely allow openID, but use native registration/login as default option.

One personal project pt. II (was I)

May 11th, 2009 No Comments »

Substitutefor.com was presented the other day as a side-effect of the shocking news that the Ra-Ajax people was being sued, precautionary removing all of its files from download sections.

But that wasn’t an appropriate presentation and neither is going to be this one :-). I’ll leave that for the pt. III, you know what they say: third time lucky.

So what’s this post about? Let’s present the not-really-five-but-four objectives of this pet project.

  1. Make money: Err… not really. Would have gone this way in that case.
  2. Have something to blog about: Yeah, that’s important. Synergistic approach, discretia.org and substitutefor.com will benefit from each other.
  3. Give a try to some web technologies I haven’t played with as a developer: I’m not a web developer, designer or whatever position related to the web but in *every* project or job that I’ve been involved I’ve had to deal with web technologies. So I guess it’s a good point.
  4. Have a place to try new things, where things are either ideas, or bad ideas, or even good ideas!
  5. Measure the time to market of this kind of ideas.

One personal project and Ra-Ajax, an interesting case

May 11th, 2009 4 Comments »

Some months ago I had an idea –ey that’s a great start for a post! Let’s better say that I thought one of my ideas was worth trying to make it real.

I thought about a community –what else, these days– of questions and answers around the best substitute for something. The idea was to organize them into categories and let people vote for the answers and popularity of the questions.

The idea isn’t extremely innovative, in fact it gets things from forums, ask.com, digg, stackoverflow and many more. But I started to see a lot of funny categories and uses.

In my case, it all started from the need of a substitute for a cooking util in a recipe I was trying to prepare :-). But it would be also very interesting to know who people thing would be the best substitute for Harrison Ford in Indiana Jones, or confirming the most popular substitute for sex is chocolate!

It wasn’t until February that I started working on it, since it’s only a project I can devote my spare time at home. But it’s ok, the main idea was not to have a great success but to demonstrate that it was possible to create something from an idea in the shortest period of time. I gave it my free time for three weeks and then let it apart until now, 3 months later. But this is another post, what I wanted to comment now is something that really shocked me today.

The people from Ra-Ajax, which obviously is the framework I intend to use in this project, have been sued. Apparently Thomas Hansen, one of the authors, worked beforehand for Gaiaware and they are suing him. I won’t go deeper there since I don’t have the details, but their framework has been removed from its website as precautionary measure.

Good news is, apparently I can use its Stacked platform as the base for my project with the LGPLv3 license, since I downloaded it before the measure. Phew!

By the way, this is my new project, substitutefor.com. A lot of changes are expected, but I decided to go public early as a motivational measure, after months of doing nothing related to it. Now I have an excuse also to publish a lot of interesting things here.

Surveillance soundtrack

December 20th, 2008 4 Comments »

I’ve been looking this evening for the soundtrack of this movie, just after enjoying watching it. But I really couldn’t find it, seems to me that it’s not been published so at least I’d like to have a list of the songs that compose it. Here you are:

Speed roadster - David Lynch
Carry me away - Michelle Boudreau
Bottom of a dream - Hugh Dillon Redemption Choir
Perpetual state - Hugh Dillon Redemption Choir
Liar liar - David j Taylor
Add it up - James Gano

I think it’s really worth a playlist in your iPod. And here’s the proof, you can freely listen to liar liar from David j Taylor in online music stores, like this one. Or some other songs from the last great album of Michelle Boudreau in its website. And also some stuff from the Hugh Dillon Redemption Choir in its myspace.

And yeah, this is not an IT-related post.

Discretia on Prison Break

September 9th, 2008 2 Comments »

… as viagra-like pills. Hi there, it’s a long time since my last post and this one is not going to be related to IT. As I say in the title, discretia was mentioned in yesterday’s episode of the famous TV series Prison Break. They made it up as some kind of pills, you can see it in the next screenshot.

discretia.jpg

As you know, I own the discretia.org domain name and I like it. I remember how I got to it, and it sure doesn’t sound like a pill’s name to me. I was looking for a name for a supposed computer security company and I even used it in an exercise at the university :-).

By the way, the discretia.com domain was already bought in 2004 by one of those companies who try to resell it afterwards, so that’s with whom I’d have to fight if I want it in the future. And now it comes the IT-part of the post (I was lying about this post not being IT-related… sorry).

If you want to know who owns a domain name, there is a whois service and some other useful links for that matter at internic.net. And as a matter of fact I can check that my domain is not owned by me, but my hosting company. And it is also marked as Client Transfer Prohibited, which means that they locked it so I cannot transfer it to another register. Nice uh?

Another chance for Eclipse RSE

March 27th, 2008 No Comments »

In my previous post about remote development I complained that Eclipse RSE wasn’t ready to be considered a tool for remote development of mid-sized projects.
Well, is it? The more I try to find out about this DSDP project, the more I like it. But it’s all a bit blurry, no simple howto or real experience gives a point about what you can/can’t do with RSE/TM.

The guys at the DSDP seem to be doing a great work, there are many presentations explaining their work, some members have a blog, but from the end user perspective: messy. What can I expect from the project?

Perhaps I overlooked some of its features, I just started to use it for small-projects, college assignments and web development. Useful experiences will be posted.

I found this other blog RSE World, which seems end user oriented (just not actively updated), one case of use in it.

Remote development paradigm

March 22nd, 2008 1 Comment »

During this Easter holidays I was hoping to get some time to work on my project, just a little… no abuse. Therefore I made a copy of my files from my workstation to my laptop. But then I started working in my not-so-bleeding-edge-but-adorable powerbook G4 12″ and it felt sooo slow…

Compiling such a big C++ project is not a friendly task, specially while Eclipse is eating almost all of your main memory. Once the compilation is done, I need to do some testing, but even for small runs, my laptop isn’t powerful enough for an execution-driven computer architecture simulator. That was obvious, I already planned to connect via ssh to my workstation to do the testing and to a cluster of computers to do some more serious testing.

What if I could do all these things in a much more simple way. I had an idea rounding my head, which someone must already have implemented: I work locally in my powerbook, changes are updated to my workstation and then compilation/testing is done via ssh: tada!

The little sysadmin in my brain told me a couple of rsync scripts should make the deal. But given there are so many big brains in the eclipse development team I was hoping there was a solution already integrated into the IDE. My search began with this old document which represents *exactly* what I want: Eclipse Remote Development

This is only a recommendations and guidelines document btw, but it’s old… There must be some work done. And it does: RSE and TM are their names. TM and RSE FAQ

RSE allows you to access some *remote* resources from your workbench, as well as managing ssh sessions. You can even create a remote project. But let’s have something clear: remote=slow, local=fast. And I want fast! I want a local project synchronised with a remote one to compile and execute remotely.

Besides, the RSE approach disables C++ indexing and the outline because there is no local project. Not what I wanted. As far as I understood TM is aimed to deploy on embedded systems and there are some incompatibilities with CDT right now… but I got it a bit blurry. So you better look somewhere else for more information. I think RSE/TM is close to what I need but since compilation is made locally you still need a cross-compiler. That’s what I understood from an IBM presentation about RSE.

Conclusion

RSE is a cute piece of software. It’s nice to edit some remote perl scripts, web development and the like, but it’s not a solution for general remote development paradigm with replicated resources. The TM project members in Eclipse (IBM project, I think) are actively working in something promising, everything seems very professional in their development documents, plans, etc. but it’s a bit messy for the end user right now.

fuser: you are helpful

January 15th, 2008 No Comments »

Today I met a unix utility I didn’t know of. Not because it was new, I simply didn’t know it. Found it useful so I’m blogging about it before I forget it :)
fuser tells you which processes are using some file or socket. Interesting when you try to disconnect something but it keeps insisting someone is still using it. Another occasion is when VMWare is unable to activate sound because /dev/dsp is busy and you *need* to watch this football match in your virtual windows machine with sound (that was my case :P) .

In case you are an action guy and only knowing who uses it doesn’t feel good enough, you can signal those processes. And I’m sure the best signal is -9 so use -k flag and kill ‘em all.

Just two restrictions, from its Linux manpage:

fuser may only be able to gather partial information unless run with privileges. As a consequence, files opened by processes belonging to other users may not be listed and executables may be classified as mapped only.
fuser cannot report on any processes that it doesn’t have permission to look at the file descriptor table for. The most common time this problem occurs is when looking for TCP or UDP sockets when running fuser as a non-root user. In this case fuser will report no access

Of course these both could be bypassed activating SUID bit on fuser, but that doesn’t sound like a good idea from security point of view.

Webcam support in OS X

July 25th, 2007 1 Comment »

Videoconferences have proven to be a pain to me. Some years ago I used netmeeting, which worked fine almost 50% of the times I needed. Afterwards, I made some changes to my network and there was no way of making it work… Besides I’m a Linux user in my workstation, so it was time to change but neither gnomemeeting nor Ekiga gave me good impressions.

Probably Ekiga is nowadays a pretty good videoconference client, but I didn’t manage to configure both my webcam and microphone quite well. And even more difficult was to ask my friends and relatives to install it. So I couldn’t dedicate enough time to enjoy it.

So I remembered I’m also a MacOS X user :) and many people around me were using Skype… Yes there is also a Linux version but it doesn’t support videoconference. So it was time to give it a chance. The problem was that Apple doesn’t allow third-party manufacturers to add support for OS X in their cameras (generally)… You know, it’s all about hardware control and minimum quality requirements. And I wasn’t going to spend more than 25€.

But there is this project: macam, which is a collection of drivers for hundreds of webcams to work in OS X. There is a compatibility list, so it seems to be an easy task to choose the right one. Well, not that easy. Some webcams have different revisions and the product id is not printed on the box so…

After some time looking in the store I decided myself for the Creative Webcam Vista rev. A, since it was on the compatibility list, but it didn’t work! The problem was that the rev. A printed in the box was the one listed in the list as Webcam Vista (D)… Ovislink 519 chip, which seems to be supported for some cams but simply not that one.

Creative Webcam Vista rev. a (D)

This guys at Creative have a passion for making hundreds of revisions of the same products… There is no way of identifying exactly the model without opening the box so I searched for another brand. There were almost 20 webcams in the store and finally the Hercules Classic webcam was in the list, no revisions, only one version… And the same chip!!! The OV519, but this time it works.

Hercules Classic webcam

So this time, being an OS X user hasn’t saved me from the hardware incompatibilities which we Linux users have to suffer. Lucky me it has saved me from the software incompatibilities :)

Upgrading to VMware Player 2.0

July 15th, 2007 2 Comments »

These days I’ve been doing some upgrading/tuning tasks in my workstation that I had previously postponed because of exams and other projects. One of them being the upgrade of vmware player, which felt more responsive and finally features usb 2.0 support. I really like this virtualization software and the freely available player version joint to the ability of QEMU for creating vmware images allows me to test new OS versions, multiplatform software, etc. Since I cannot afford the workstation version.

The installation was really straightforward, I downloaded the 64-bit version from its website and executed the vmware-install.pl script. It overwrote my previous version and asked only for installation directories, which by default matched the ones of my previous install in /opt. The difficult part in vmware installations usually comes now with the vmware-config.pl script, specially when it comes to the compilation of the kernel modules, but this time everything worked fine! Default options were right, it detected my kernel source libraries and compiled against them.

The previous time I had to install vmware-player there was no way of doing it without patching both configurator and kernel, I’m sure some of you have heard about the vmware-any-any patches :) So everything felt quite good, I just ran vmware as always, accept the license agreement and…

saburo virtual # /opt/vmware/player/bin/vmplayer
/opt/vmware/player/lib/vmware/bin/vmplayer: symbol lookup error: /opt/vmware/player/lib/vmware/lib/libvmwareui.so.0/libvmwareui.so.0: undefined symbol: _ZN3Gtk13RecentManager11get_defaultEv

Symbol lookup error… cool, time to google a bit. Lucky me, having waited for some time to upgrade let time for others to go around this problem and there are already fixes posted in vmware forums. It’s got something to do with GTK libraries for the user interface and the fix is as easy as adding the following line before the exec command in the /opt/vmware/bin/vmware script:

export VMWARE_USE_SHIPPED_GTK=yes

And that’s all…