True hacker resume: CV as Python unit test
dibon.homelinux.org
dibon.homelinux.org
this should be a lesson: if you're going to do a "hacker" resume, it should be perfect and actually parse/compile and run. otherwise it looks like some lame gag.
and is putting things in "code" ever cute, clever, or funny? i submit it is not.
Wow...
The point I am trying to make is that there are certain minimum requirements I have of any employer, just as almost every job ad I've seen has a list of expected minimum skills. Would you work on software for a company that doesn't use version control? Being on HN is enough to convince me that you're smart enough not to.
What is important to me, however, is that you demonstrate a little pragmatism about us using Mercurial over Git, Hudson over CC, Jira over Bugzilla, <insert tool we use> vs. <your favourite tool this week>.
Although it would reflect better on you if your unit test were valid given an appropriate companies module, I really don't think you should be to worried.
It does parse/compile and run. Try it.
Traceback (most recent call last):
File "/tmp/resume.py", line 2, in <module>
from companies import YourCompany
ImportError: No module named companies
Am I missing something?(And yes, I'm 100% serious. Your reply is the dumbest thing I've ever seen on this site.)
Because companies doesn't actually exist there is an import error. If you were to create a class to substitute in you'd need something like:
class YourCompany:
def unit_tests_code():
return True
...I've noticed the line number issue with certain browsers myself. I haven't determined if it is the css/html from pygments (the library I used to generate the html) or something I'm doing. Needless to say since I am still trying to flush out the idea, matching line numbers was low on my list, but if you can give me your browser/os I can see if it can test it out and possibly drop a patch to pygments.
It would be much better if the resume was in code, that would be a cute gimmick. (i.e. self.knowsLanguages( ['Python', 'C++', 'Ruby'] ) )
However, tricks like this are great if other programmers are reading it, but can confuse HR people and easily get the resume tossed out.
Im all for redoing the whole CV as commenter suggests here and targeting the right people with it whilst making the "real" CV shorter and easier to read.
Point here is that both CV's should stand out from the stack, but in different ways based on the recipient
company = YourCompany()
boilerplate at the top of each test method be factored out into def setUp():
self.company = YourCompany()Say that you mean to do:
if (something == 2)
If you forget an equal sign, the resulting code can lead to subtile bugs: if (something = 2) // Not what we meant
If you are using a Yoda condition and forget an equal sign, you'll get an error right away (so that you can correct it): if (2 = something) // Error
There are other use cases, particularly related to nil values, but this should show you the gist of it.Not in Python. Assignments as anything but stand-alone (potentially chained) statements are syntax errors.
The parser will not let you write
if something = 2:
in the first place.Putting the constant left in a conditional means you will never miss an accidental = instead of ==.
That's only useful for dumb languages
>>> a = 5
>>> if a = 3: print 'ok'; else: print 'nok'
File "<stdin>", line 1
if a = 3: print 'ok'; else: print 'nok'
^
SyntaxError: invalid syntax
Python simply does not allow assignments in conditional contexts.The difference between theory and practice is smaller in theory than in practice.
I carefully weighted my words, and I rest my case.
The compilers/interpreters I know that don't do this are PHP and Perl (C/C++ will do it if you use -Wall, which you should be using anyway).
So yeah, you're pretty much right. /snark
Don't be an idiot in the first place and you won't have to do idiotic things to prevent damage from your idiocy.
Good judgement is the result of experience.
Experience is the result of bad judgement. <-- You are hereAlso: the downloadable CV is more incomprehensible than the code. Bullets, people. Good employers are looking at hundreds of resumes for good jobs. If that one landed on their pile, they would not read it.
On a more serious note, not sure this resume would have made it past our HR person, who is not a programmer and wouldn't have understood this at all.
Or maybe it's a clever filter for people who focus on the wrong thing. ;-)
If you are reading this, fix the spelling!
(sorry, cheap shot!)
This page comes of to me more as "Are you good enough for me"? which to be very honest sets the wrong tone to me when I wear my employer hat.
I'm not suggesting that shouldn't be a part of the process, but as an opening line it's a little off-putting even if we do meet the standard.
* http://en.wikipedia.org/wiki/Whitespace_%28programming_langu...
Creativity is often the reason one is hired.
I liked it!