Thread Fragen für Interessenten im Vorstellungsgespräch (63 answers)
Opened by xwolf at 2006-01-20 00:01

xwolf
 2006-04-19 16:02
#36811 #36811
User since
2005-09-17
51 Artikel
BenutzerIn
[Homepage] [default_avatar]
So...
die Bewerbungsgespräche sind vorbei und die Stellen vergeben.

Deswegen kann ich ja mal meine Perlbezogenen Fragen hier rausgeben. Falls es jemand hilft.
Achtung: Die Fragen sind teilweise hinterlistig gewesen :)


Die Fragen:

1. Szenario: Ein Kunde benutzt folgendes Skript für die Verarbeitung von Formularen auf seiner Website. Er möchte nun, dass es angepasst wird, so dass die Bestätigungsausgabe besser aussieht und in Deutsch ist.

Code: (dl )
1
2
3
4
5
6
7
8
9
#!/usr/bin/perl
use CGI;
%INPUT = ReadParse;
print "Content-Type: text/html\n\r\n\r";
open(DATEI,"$INPUT{'DATEINAME'}");
print DATEI "$INPUT{'EINGABE'}\n";
close DATEI;

print "Thank you.";


Was tun Sie, wie gehen Sie vor?

Bei dieser Frage ging es mir zum einen darum, zu erfahren, ob der Bewerber wirklich Perl kann. Denn jeder der das kann, muss diesen Code interpretieren können ohne das es dazu einen Kommentar gibt.
Zum anderen aber wollte ich wissen, inwieweit der Bewerber die Probleme und Unsinnigkeiten (z.B. Windows-Umbrüche) mit dem Skript erkennt. Ganz besonders heiß war ich darauf, ob die Bewerber die Sicherheitslücke erkennen.




2. Was bedeutet folgende Zeile in Perl:
Code: (dl )
$string =~ s/[^a-z0-9\.\-_]+//gi;


Im Prinzip wollte ich nur wissen, ob der Mensch eine RegExp
erkennt und ob er auch in der Lage ist von sich aus zu sagen, wozu diese RegExp wohl dienen könnte.
Wenn der Bewerber bei der vorherigen Perlfrage etwas nervös war, wäre diese Frage auch ein kleiner Wink mit dem Zaunpfahl gewesen.


3. Was bedeutet der Perlcode:
Code: (dl )
1
2
3
4
5
if ($condition =~ /^\s*[\"\']*([\/%a-zA-Z0-9\-_\.]+)[\"\'\s]+([ (==|!=|<=|>=|<|>|eq|ne|co|ci)]+)[\s\"\']+([^\"\']*)[\"\']\s*$/si ) {
return $1, $2, $3;
} else {
return;
}



Das war eine bewusste Gemeinheit.
Aber eine, die sich als richtig erwiesen hat. Bei einem Bewerber, der aus Nervösität die zweite Frage nicht hinbrachte, hat dann die erfolgreiche Analyse dieses Perlcodes dann doch gezeigt, daß der Bewerber doch Perl kann :)
Ansonsten ging es mir auch darum zu wissen, ob die Leute mit sowas klar kommen und wie sie reagieren, wenn die so einen Code "hingerotzt" bekommen, der keinerlei Erklärung hat und doch kompliziert aussieht.




4. Was bedeutet der Perlcode:

Code: (dl )
vprint  "%2f.%4s\n",$num1, $num2; 


Wieder so eine fiese Trickfrage von mir :)
Ich wollte hiermit etwas die Leute darauf testen, ob die ehrlich sagen, sie kennen oder wissen etwas nicht; vprint gibt es nämlich nicht.
Ansonsten sieht der Code ja richtig aus. Das i-Tüpfelchen liefern die Bewerber, die den Fehler nicht nur erkennen und darauf hinweisen, sondern auch noch sagen, welches Kommando stattdessen richtig wäre.
\n\n

<!--EDIT|xwolf|1145448264-->

View full thread Fragen für Interessenten im Vorstellungsgespräch