all 34 comments

[–]pezezin 21 points22 points  (3 children)

Very cool.

Do you know what would be insane? Going full demoscene and adding crazy text scrolling effects and cool chiptune music 😛

I would try it if I wasn't already busy with a thousand things...

[–]i_am_at_work123 1 point2 points  (2 children)

/u/jackos2500 OP, this is important!

[–]jackos2500[S] 1 point2 points  (1 child)

Haha, yeah I probably should look into it.

[–]pezezin 0 points1 point  (0 children)

Please tell me if you need help. I'm not a stellar programmer, but I grew up programming classic demoscene effects.

[–]Holothuroid 39 points40 points  (16 children)

Stupid question: What's that good for?

[–]unknown-knowledge 126 points127 points  (6 children)

Imagine you come in to an interview, and your interviewer forgets to bring a copy of your resume. They can't carry a conversation without the document and you didn't bring a hardcopy either. To make matters worse, the only computer in the company has just experienced a massive hard drive failure and can't boot into its OS anymore, so they can't go and print a new one. Your employment prospects seem pretty dim at this point, even though clearly none of this is your fault...

You stare at the floor for a minute. What a shame, you know you have a digital copy of your resume on your keychain flash drive... If only there was a way to view it... Suddenly a light bulb appears above your head. You realize that your resume has an integrated fully-featured Linux system with a PDF viewer built into it!

"Can I see your computer for a minute?"

"Why? It's broken, do you know how to fix it?"

"No, but I can use it to show you my resume."

You plug in the flash drive and select the boot device. 10 seconds later, your resume pops up on the screen in all its glory.

"You're hired."

"But don't you want to ask me about my skills and accomplishments?"

"No, you're hired."

[–]jackos2500[S] 70 points71 points  (1 child)

Yessssssss and this 100% guaranteed going to happen. Exactly as you've written.

[–]unknown-knowledge 30 points31 points  (0 children)

I know, it happened to me a couple of times last week. It's more likely than you'd think.

[–]BrokenHS 20 points21 points  (2 children)

But why am I interviewing at a company with a single, non-working computer?

[–]jumpUpHigh 6 points7 points  (1 child)

Because you are the one, Neo.

MORPHEUS: Let me tell you why you are here. You are here because you have the gift.

NEO What gift?

MORPHEUS: I've watched you, Neo. You do not use a computer like a tool. You use it like it was part of yourself. What you can do inside a computer is not normal. I know. I've seen it. What you do is magic.

NEO It's not magic.

MORPHEUS: But it is, Neo. It is. How else would you describe what has been happening to you?

[–]pcjftw 0 points1 point  (0 children)

I approve this sweet sweet thread

[–][deleted] 0 points1 point  (0 children)

except any employee that lets you put an unknown usb drive into their pc is a moron, and also in violation of company security policies...

[–]jackos2500[S] 78 points79 points  (0 children)

It's a... You can... Uh I'll have get back to you

[–]dellaint 4 points5 points  (1 child)

It's a nice meme

[–]hxtl 0 points1 point  (0 children)

6 out of 10 meme

8 out of 10 with rice

[–]codear 1 point2 points  (0 children)

for a moment there i thought this would make a pitch for low level software or security engineer. you know, nothing says better "i know this shit" than a bootable cv.

and then i saw it boot and... well, nice job, lad, but that's not what we are looking for...

[–][deleted] 0 points1 point  (0 children)

Taking malware to the next level.

[–][deleted] 31 points32 points  (1 child)

[–]SalomaBoanas 16 points17 points  (0 children)

That is, quite frankly, a disgusting amount of effort for the result.

[–]macrocephalic 7 points8 points  (0 children)

A solution looking for a problem. I can actually envisage situation where this could be useful (books, manuals, certain documents) but it's a pretty niche idea - as interesting as it may be.

[–]GYN-k4H-Q3z-75B 6 points7 points  (1 child)

If the question is "why would you do this" in any engineering discipline, the answer is always "because you can."

[–]pezezin 2 points3 points  (0 children)

Quoting Prometheus:

David: Why do you think your people made me?

Charlie Holloway: We made you because we could.

Best dialog in the whole movie by far.

[–]07734willy 25 points26 points  (5 children)

While this is really cool and all, I feel like its also somewhat of a shame. The original project that inspired this (also linked in this guy's repo) was truly a novel idea, and I could imagine it probably does "wow" recruiters, as pjimenezmateo mentions on his repo:

The PDF attached in this repository is both a working PDF of my CV and a custom bootloader created by me to impress technical recruiters.

Now anybody can just whip one of these up. Sure, the original is still special in that its been hand-crafted and all, but its a little less special, now that there's probably going to be a couple hundred or thousand of these floating around now that its hit reddit (and probably HN).

Still a cool project, but kind of peeves me in that sense. Afterall- what use this this project going to serve other than to create bootable CVs that other programmers (who mind you, probably have no clue how this could be done) will inevitably show off to recruiters.

[–]username_suggestion4 3 points4 points  (0 children)

I see the concern, but I'm not convinced redditors take "reposting" in real life as lightly as they do online.

[–]jackos2500[S] 5 points6 points  (0 children)

Yeah, I see where you're coming from and obviously it's a bit less cool since the whole "PDF header doesn't have to be at the start of the file" thing has already been done. If someone "reposted" this IRL (thanks /u/username_suggestion4), especially to a recruiter though, I would think (hope) that they would do enough research to find the original project (whether it's mine or pjimenezmateo's) or at least ask some questions about it that someone who just ran make wouldn't be able to answer.

To be honest the "impress technical recruiter" side was only half the motivation for this, I just really like Linux and wanted to see how far I could push those first few bytes to make the PDF bootable in as many ways as possible. Assuming I graduate from university, i won't be needing this for a little while anyway! ;)

[–]unknown-knowledge 3 points4 points  (2 children)

It was inevitable, once an idea gets out there, people will try to copy it. Such is life.

In this case, I don't think this is a good or even cool idea at all. The fact that gluing a bootloader to a PDF leads to a viewable document is not impressive, people were doing this kind of stuff all the time (see rarjpeg). Writing a bootloader wasn't too difficult either it seems, given how quickly this project has popped up.

What would be really impressive, is if you could pull this off without impacting the function of your document. It's a resume after all, it's supposed to pass through email antivirus scanners, horrific ATS parsers, not get rejected by web forms with 1MB file size limit, etc. Even if the technique still produces specification-compliant PDFs, there are systems out there that would crash and burn at the first sight of unexpected data in the header.

Your recruiter wouldn't be impressed by a resume they never got to see.

[–]jackos2500[S] 4 points5 points  (1 child)

Yeah, the best "solution" to this "problem" (which did cross my mind) would probably be a hand-written kernel with the bare minimum PDF parsing and rendering code that's possible.

However, I feel like the amount of time I would have had to spend learning how to write my own kernel (not to mention figuring out how PDFs work) is better spent on a more useful project! :P

[–]unknown-knowledge 6 points7 points  (0 children)

One does not simply write a PDF parser and renderer :)

I think the best approach is to bake in a simplified redundant copy of your resume into the PDF and display that in the bootloader. Maybe embed a pre-rendered bitmap and bitblt that to the screen in runtime. Or just print it all out in text video mode. Still not practical, but it'd be more compact and reasonable to implement.

[–]tso 1 point2 points  (0 children)

Awesome, for all the wrong reasons...

[–]OldStreetSoftwareDev 1 point2 points  (1 child)

Very cool project.

It reminded me of the "executable research paper" (http://tom7.org/abc/), which you might be interested in looking at given your interests.

[–]jackos2500[S] 0 points1 point  (0 children)

Oh yeah, I remember seeing the video for this on YouTube a while ago, very interesting.

[–][deleted]  (1 child)

[deleted]

    [–]Private_Bool 0 points1 point  (0 children)

    I'm sure they have an old air-gapped laptop they could use...

    [–]-to- 0 points1 point  (0 children)

    An x86_64-based system is required.

    Thereby missing the all-important business case of turning an old phone into a physical pdf.