I love stories like this. I have one of my own, actually.
When I was first getting into IT I started sending out CVs. Mine was terrible. I had been working in call centres for years at this point and all my "experience" was basically self-taught, so not really experience at all. As a result my CV was void of any actual content a hiring manager in IT would want to read, thus it was binned a lot.
I applied for a job at a nearby network hardware repair place. They needed someone to look after their Cisco kit and about 30 Debian Linux systems. I was attracted to the mix of responsibilities so I applied, sending in me not-so-good CV. I was eventually asked to come in to have a chat after waiting about a week to hear back from the place.
At the end of the interview, Bob (let's call him), said I was more knowledgeable than the RHCEs that were coming through his door. This was nice to hear, but then he said something that really made me smile...
Apparently my CV was worse than I thought. It was so bad, that Bob literally put it in the bin under his desk. About four days later, Bob was reading through a local Linux User Group (LUG) mailing list and he saw a name he recognised: mine. So he opens the email and reads the thread in which I helped another LUG member compile a sound driver for their kernel. The instructions I gave worked.
Bob was impressed but he couldn't quite remember where he had seen the name. At this point the business owner, John (heh...), was standing besides Bob's desk and noticed my CV in the bin. He pulls it out and reads my name across the top. The penny drops for Bob and I get the call to come in and have a chat.
>> Bob was reading through a local Linux User Group (LUG) mailing list and he saw a name he recognised: mine.
I had the opposite happen.
I took a job doing some programming, some Linux administration, some helpdesk. I came across a convoluted database setup, nobody in their right mind would run multiple servers on the same machine this way... After researching the issue, I found that it was totally unnecessary, and likely a holdover from an earlier (like 15 years earlier) version of the software, because now it was natively support.
During my searching, on a mailing list I found a message from my now-boss. Asking how to do the exact thing they were still doing. And a couple messages from developers of the software basically saying, "If you did it this way, it would in theory work, but it won't ever be supported"
When I was younger, I inherited a lot of old PC hardware from my father. One particular motherboard had a massive gouge through the heatsink for the southbridge, and I could never figure out why.
One day, I was trying to get Mac OSX to run on this particular system, and on page six of google search I finally found a guide to configuring the BIOS for this board that actually worked! It was one of the very first boards that supported UEFI (iirc, before the spec was fully ratified), and the documentation was very incomplete.
I dug a few pages deeper in the thread, and the same poster was describing the poor design of the heatsinks and how they interfered with the full length PCI cards that were used in pro audio at the time. The same poster described how they carefully prized the aluminum heatsink off, screwed it to a board and used a dremel tool to make a slot just wide enough for the card to safely fit.
That was strange... I had exactly the same groove cut in my heatsink...
I had a parking light burn out on my car. Went to the car store, and a replacement bulb was $$. Perused the lamps on tags in the aisles, and found one that looked the same but had different "ears" on the side.
Bought it, and filed off the ears so it would fit in my car's socket. Worked perfectly, for a small fraction of the price.
Of course, my car is full of aftermarket parts, so I am used to making "adjustments" to get them to fit.
I came to post this. The offset ears on the bulb base are used to specify either a dual-filament bulb, such as tail lamps and brake lamps combined, or high-resistance, low-wattage parking lamps that are designed to not run down the battery while the alternator is not charging.
> But heck, even a parking light will flatten the battery if left overnight.
Nominal modern car batteries are about 12.6 volts. I wonder if the high-resistance bulbs will completely dim once the voltage drops to a specific threshold, say around 12.0 volts. If they do, then they should leave just enough charge to crank, as most starter motors can safely crank over with about eleven and a half volts (and all the way up to over 14 volts).
I had to look up what a parking light is. It sounds totally unnecessary to me, but I'd say that about a lot of things put in cars after the 90s.
Probably not important in this case since it's just a light for parking, but lights for cars cost more due to having to meet exacting DOT standards/testing. I wouldn't do this with a brake light or real headlight.
True ... we just moved on from a car build in 1999 to one build in 2011 ... got the "non-extra" version which was half the price.
We still got an AC and bluetooth connectivity.
What we did not get was a multimedia center, a panorama roof, seat heaters and fancy front lights.
I can see that you quickly get used to that ... but tbh I think that most of these are just to justify a higher price because the actual service, getting you from A to B, has not changed in 30 years.
Parking lights are a lot older than the 90s. In Riverside, IL, they have "historical" streetlights that inadequately illuminate the streets (or at least did in the 70s). As a result, it was required if you were parking on the street in Riverside after dark that you left your parking lights on.
Apparently the light setting I always skip past is parking lights and I never knew. I always found the headlights/reverse lamps adequate in the dark though.
About every 6-9 months, I'm searching through error logs looking at odd messages, or trying to see why we have some obscure configuration parameters set, when I start reading something relevant-looking on a Blogspot blog.
It becomes uncannily relevant, even to the point of familiar IP addresses or pathnames in the blog, at which point I realize it was written by my predecessor.
The obscure parameters are usually obsolete, and were required because they were running the very latest versions of the software before the defaults matured. The blog was something like documentation at the time.
It once happened to me that I had a really hairy issue with a sound card driver. After half an hour of web search I found a conclusive answer, written by none other than myself, but four years prior.
There was a thread on HN a week ago [1] about "How to write a resume that converts" and the most voted comment starts with a sentence "The importance of resumes has been overstated for many years now, and I look forward to the day they are phased out entirely."...
Last time a headhunter managed snatch me was weird. I wasn't really active before deadline because I was on a holiday trip and the headhunter said "it's okay, let's call after your holidays". I wasn't actually looking for a new job but couple of the buzzwords sounded promising so I ended up having calling one of those chitchat calls with the headhunter which then led to a chitchat with the company guys.
When I was meeting the company guys, I'd updated and printed my puny resume in case they would've wanted it but realised they had "my resume" already. Basically the headhunter had copy pasted my puny LinkedIn profile data into their some sort of resume template and the guys were thinking I was actively looking for a new job.
Weird coincidences but ended up taking the job and haven't regretted after 2,5 years.
I wonder if the headhunter used a geek code[0] to resume generator?
Alternatively I wonder if a modern version of geekcode could be created with a service that automatically compresses a submitted resume into a comprehensible string of Unicode characters?
A geek code based on distributed peer review (no blockchain) could be very elegant. A kind of shared CV encompassing gitlogs, third party reviews, customer satisfaction, and actual "thinking when it matters" ability recognition.
Where are the semioticians when we need them? Syntax, grammar, pragmatics, all develop at a rate of knots, but we still use a subset of ASCII for the vast majority of our symbolic computation. Could we do better than a joke from the nineties?
This is really an unhealthy and flawed understanding of what is a necessary part of life. The problem is how to find good people, and the more society downgrades objective measures of excellence, the more people need to rely on personal recommendations. It's not that people wouldn't take a stranger for a job, but when there is a lot of uncertainty, they can't absorb the risk of the stranger not being qualified. So they will always prefer someone they know is qualified over someone who they don't know is qualified but might be better.
The above is as necessary and unsurprising as rain falling to the ground. There is no other way that things can work. Thus the practical advice you can give someone is not only to learn something but to widen their professional network so that there are many people who know they've learned something.
It is the exact same thing in a big bureaucracy. You have to know how to sell yourself, which just means you need to successfully communicate your accomplishments. Too many people do great work, but they don't communicate their accomplishments, and then they are surprised that less qualified people are promoted over them, and they grow cynical or resentful when it is really their failure at communication that has caused the problem. Like many things in life, it's better to be mediocre at two necessary things rather than excellent at one and skipping the other. But no amount of righteous anger about the unfairness of life is going to change the fact that people are not omniscient and that talent is hard for strangers to evaluate.
> the more society downgrades objective measures of excellence
I'd really rather go with "the more society discovers that we don't know how to obtain objective measures of excellence". We really don't have good tests that can fit in the interview slot for a lot of software engineering jobs.
You can say this over and over again, but that doesn't make it true. It is just a wish of how you want reality to be, and the US is sufficiently wealthy that people can indulge in these delusions and still put food on the table. For a while - there is a lot of wealth and human capital to destroy before things start to break down. These types of delusions are what makes it harder for newer people to enter fields and so inhibits human capital formation. Getting rid of grades in schools or giving different races different grades, getting rid of standardized tests, etc, this all destroys information and human capital. It also makes the nation less competitive when it competes against the (majority) of the world which does not suffer from these delusions and is more interested in acquiring human capital than destroying it for the sake of some equality myth.
You wrote a lot about the issue in general without actually addressing the claim. We don't have an objective measure while interviewing software engineers. Any too specific test will fail on some good hire during an interview. On the other hand generic tests need to adjust as you interview so they're subjective.
People always say that, but only one of the full-time jobs I've had in my thirty-year career has come from networking. In one other situation I was the guy who got several former co-workers hired, all at once, a frankly freak occurrence I still don't quite believe actually happened. My current job, I was contacted out of the blue by the team's manager on LinkedIn. Most of my jobs have come from being active on the Internet, or else from applying cold.
* I co-founded my first company with people I met at university.
* We got our first investor thanks to a chance encounter between said investor and one of my co-founders at a bar.
* When we exited that company, our investors lawyer arranged a meeting for us with another of his clients, who hired us.
* One of the execs at that company hired me for his next startup, and introduced me to his brothers, so I could work part-time for them until he got funding.
* One of my co-workers at that company was one of my co-founders at my next company, and our other co-founders were friends of that person. One of them had worked for the VCs who invested in our first round.
* [I went to Yahoo for a couple of years -- no connections there.]
* The general counsel at my last pre-Yahoo startup pulled me into my next startup.
* [I then went to a web dev agency, no connections there]
* The co-founder of the company I worked at before the web-dev agency contacted me about some contracting, and I ended up joining full time (my current job)
So Yahoo and the web dev agency are the only places I've worked over the last 26 years where my resume has mattered. Even then, at the web-dev agency I name-dropped one of people who'd hired me previously, and it impressed them, so who knows how much my resume really mattered there either.
>People always say that, but only one of the full-time jobs I've had in my thirty-year career has come from networking.
Funny, only one of the gigs I've gotten in my 30 year career has come from not networking...my first one. Every job after that has come about because of people I know recommending me for the job.
This has been super helpful over the past 15 years as I've been an independent consultant. In fact, I went indie because I had a network.
I don't need to look for gigs anymore, people come to me. I turn down way more gigs than I can take. And I haven't had to have an actual interview for a job in over 20 years.
I'm sure this isn't the norm, but it certainly makes work life a lot easier.
> People always say that, but only one of the full-time jobs I've had in my thirty-year career has come from networking.
Does that not just imply that your network wasn't that good but not necessarily that the adage "who you know more is more important than what you know" is actually false?
Many people do get hired cold, but it is the last choice of anyone hiring. If you know the right person you skip to the front of the line with no competition.
My first summer jobs were with people my dad knew. The first actual programming job I got because I happened to be tagging along with my friend who had a job interview.
From there on in I got jobs mostly because I had a friend inside vouching for my talents.
This also goes the other way, I wouldn't join a company where I don't have inside information on how shit actually gets done.
I have the opposite experience. I have never landed a job that I didn't already have a good contact and recommendation for, of course that is probably because I have never tried.
I think that is often true, but I work for a Fortune 500 company and did not know anyone who worked there before getting hired. In the 20 years I’ve worked there I’ve been involved in tons of interviewing potential hires. Every single one got their foot in based on their resume. I’ve never seen anyone hired because they knew someone at the company. I’m sure it happens, I’ve just never met anyone it has happened to.
I have had mediocre experiences, at best, with people bringing in people that they knew from outside the company. There were positive exceptions but usually it ended up being a kind of weird political move that increased divisions in teams. Like there was the group that knew each other from outside and everybody else. something to be wary about
I think the issue is rather that many people have a hard time of communicating the skills they have in a way the other side actually gets the level you are at via simple text.
If they already know you, you can skip that step and the risks involved. Depending on your personality and flaws however it might also be a negative thing if people know you : )
Ha! My first job was effectively through a LUG as well. In the early 2000's, I moved to a new city and joined the LUG there. A few months go by and I'm chatting with someone in the room and they ask what I do. I replied that I was going to college but also looking for part-time work. The next day, another LUG member who owned a small consulting company called me up and said he overheard what I said and pretty much just offered me the job right over the phone.
In fact, looking back at my employment history, only one of my jobs was a direct result of someone seeing my resume before they even met me.
As someone currently wading through resumes and kinda worried about missing some one like this, here's a tip to anyone else like you: The purpose of a resume is to get you hired. If you have something like an incredible technical sound driver support email chain like that... put a link to it in your resume. Yeah, your resume has standard fields, and those are indeed sorted on by HR, so don't leave out the skills & experience... but otherwise, the resume is free form. Generally not prose exactly, but free form. Link to ANYTHING you think will help you get the job.
And don't just say "I participate in some LUG"... that can mean you show up to the meetings once every couple of months to eat the free food. Show your helpfulness in an email chain. Show a project that you did with them with a link that explicitly says you did a big portion of it. If no such link exists, get one created!
By no means do I promise wonders if you do this. HR filters may still eat your resume. But if you do get through to a real human, they may look at those things, and the ones who will understand what this means are the ones you want to work for anyhow.
If you've got the skills to pay the bills but your resume looks like any other high school dropout's, I can tell you, from the other side of the desk, you've given me no way to tell any different. It may stink that all we have are resumes in the initial process... but at least that resume is under your control. (Mostly. Sometimes it gets chewed on. But speaking for myself, I'm looking at raw resumes straight from the candidate and that's not uncommon.) Don't be afraid to use it, and don't be afraid to toot your own horn, that's the whole point of this particular document.
(Similarly, to the extent possible without lying, don't say "I participated in some project" as your work experience. Write something you did in the project. Don't say "I participated in a billing system upgrade", say how you rewrote the UI in React to conform to accessibility standards and made it run 10 times faster than before and customers uniformly loved it and paid lots more money or whatever. "Participation" could be "I had my hand held for every bug as I struggled to keep up" and it could be "I stepped up and took more responsibility than anyone expected and almost single-handedly completed the project, freeing up the other developers" or anything in between. Unfortunately, based on experience, I kinda have to assume the worst because it's usually right. If "the worst" interpretation of that phrase isn't right, don't leave it open to me!)
Believe me, if you're doing Linux support on a mailing list, or anything even remotely like that, you stand out, at least to the right people. Do whatever it takes to work that on to the resume somehow. The "standard resume form" is a skeleton to be fleshed out, not a straightjacket of form.
This. This is why I always encourage people who I mentor to have a skills section.
My first job I got the interview because at the time I was attempting to turn a snowmobile into a hovercraft. I had plans and everything.
I put this on the resume.
The first question in the interview? "Look, if nothing else we had to bring you in to ask. How the hell are you planning on turning a snowmobile into a hovercraft?!?"
The project never went anywhere, but it got me the job.
When you are involved in hiring, it's surprising just how bad most resumes are. Have a single page of highlights that are going to make me want to talk to you. The interview is the time to go deep on details, if that's how the conversation goes.
It's really hard for somebody to know what's going to appeal. Maybe "planning on building a hovercraft" looks great to you; maybe it looks like somebody padding their resume. Maybe "had a really cool email thread" catches your eye; maybe it looks like an irrelevant detail.
A resume page isn't very long, especially presented as bullet points as expected. And especially when you have absolutely no idea who it is will be reading it. I can tell you great stories about every project I've ever done, but not in a bullet point.
I have no doubt that most resumes are incredibly bad. But I'd venture to say that a substantial fraction of the resumes you think are very good will be considered very bad by the next hiring manager over.
Yup. That's life. But if you make a resume like everyone else's, you're going to get everyone else's results. That's life too. I don't have a magic solution that will guarantee you a resume so awesome that literally every hiring manager in the world will break down in tears and hire you on nothing more than your resume.
You can turn this to your advantage, which I alluded to in my original. If you want to work with people who thing making hovercraft out of snowmobiles is awesome, put it on there. If you want to work with people who think that is a strange distracting thing to put on a resume, by all means leave it off. I'm sure HN is largely biased towards the first, so let me say I'm not being snarky at all about the second and I'm totally serious; if you are interested in a banking or government job you may well have those sorts of external interests yet find it a bad idea to put it directly on your resume.
Really my main message here is, take advantage of the fact that the resume is free form and don't just thoughtlessly put your name, work and educational experience, and three one-word bullet points about your hobbies or something on your resume, and then stop, because "that's what a resume is". Put whatever will get you hired. If there isn't a standard category/heading for whatever that is, make one.
> I can tell you great stories about every project I've ever done, but not in a bullet point.
If you can figure out some way to distill an important project down to a point or two, it's definitely going to work in your favor. A resume is not the place for great stories but it should make me want to ask.
I agree with your last sentence, although I don't think you will find anybody wanting a long resume from you. You could always provide a link to your online CV that is complete while the one you submit is an edited down version tailored to the company and position you hope to interview for.
As an outsider how sends resumes, it is difficult to know what a good resume is because one has not had the on hands experience of actually knowing what others are doing. Some searching on the internet may be helpful in the end but the jobs I got so far felt like blackboxes in the hiring process.
It wasn't awful. I was a new grad though, so I had a grocery store job, some volunteer experience and then fluffed up with whatever skills were on the job posting.
Second this. And especially the "I participated in" bit - that almost immediately makes me heavily discount the value of that experience because it tells me nothing and it's exactly what someone who has had only peripheral involvements but wants to play up their importance would say.
If they get through to an interview, fine, they'll get a chance to be specific, but failing to be specific might well get them filtered out before that.
HR might not even understand what the link is about, but if they see something technical they don't understand but is related to the job, they will ask some technical person.
I got a call when I was younger because I was the maintainer of a package with several million downloads on RubyGems. It wasn't even a Ruby job, but the HR person's rationale was that "at least he's making stuff people are using".
I have seen some awful resumes, including for people with PhDs and long records of accomplishments. Even people who have been through resume writing seminars at job search organizations.
It was 1992 and I was a high school senior. My teacher got me a job at the local DPW in the electical department. I was to work in the warehouse under a guy named Al who was an old timer and lost his hand in a forklift accident 30 years prior. My job was to clean the warehouse, and when I was done Al told me to 'go hide somewhere' which I did, at the top of the shelves 20' in the air, which I had also cleaned.
This got boring and so I wandered into the main office where people were huddled over a computer. They were doing a mail-merge with quick basic to inform customers that their power would be out, and it wasn't working.
I looked over their shoulders and it was exactly what I had been doing to send out mailings to companies for free stuff as I had read in Radio-Electonics magazine.
I fix the problem, and the Chief Engineer said 'come with me' and takes me to the (air conditioned!) sub-station and into an even colder computer room where they had just setup the SCADA system to control the towns breakers and monitor the power.
Nobody knew how to program it, so he pointed to a 3' pile of manuals and said this was my new job. By the end of the summer we saved the town millions by siphoning power from the local college at peak power demand. I still hung out with Al, and helped him in the mornings. The linesmen still made fun of me, even more so when I accidentally turned off half the towns power for 15 minutes.
This is pretty much exactly how I got my first job programming. The only student job I could get at college was working for the HVAC department: organizing filters in warehouses around campus, taking out the trash, etc. I got a very similar "go hide somewhere" from one of my bosses at the time, and so I started reading about the control system(s) HVAC used.
Eventually word got out to the controls department that some student worker knew a ton about the controls system, and I got moved there. They had an issue that they wanted to know the forecasted weather, so we could get the central plant going before demand started kicking in, and the vendor kept telling them custom development was coming in a couple of years. I ended up writing a server for BacNET/C that did it for them, and it ran under the desk for years.
> saved the town millions by siphoning power from the local college at peak power demand.
I'd like to hear more about the details of how this worked. Did the college have its own power source like a research reactor? Was this technically legal or in some part of a grey area?
I think it is more common than you are expecting. The University of Connecticut has its own co-gen plant on campus. It has capacity to power the actual school facilities, not just research.
I think cogeneration (cogen) plants are fairly common for colleges / universities. In addition to generating electricity for the camps, they often generate heated and chilled water for building heating and cooling purposes. That water is pumped throughout the campus and into the HVAC system for individual buildings. I've worked for two of the larger universities in my state and both were largely dependent upon the local cogen plant for all of these services.
A lot of universities have their own power plants, especially of a certain age. The U of M in Ann Arbor has a plant and uses the waste heat to keep the relevant sidewalks free of ice and snow in the winter.
We could always see where the steam tunnel broke from the sidewalk and went into the building because there was a patch of bare grass growing in the heat the steam gave it underground.
The university I attended had large smoke stacks that old maps said belonged to the power plant. I never saw anything come out of them, so I assume by the 90s they had switched to using city power, but I wonder now if it was common for universities in the old days to have their own power plants?
This is one of the best things that I've read here. It's awesome that you got the opportunity, figured it out, saved energy and money, and still helped out on the physical work. Unrelated, Woods Hole does great work.
I have a kind of similar story when I started studying in the late 2000s years. There was a company that had a specialized and really expensive measurement device. But the vendor went out of service. They changed part of their system but kept the measurement device only to find out it could not talk to the new system because the file system of the data was proprietary to the measurement device.
I got a student job at that company and one of my first tasks (and that of several students before me) was to open measurement results on the device and type them into excel spreadsheets. I did this for an hour or so until I became totally bored so I started to tinker around. The measurement device had it's own PC that booted Windows (I think it was 95 or 98) and autostarted their software in full screen/some sort of . This was easy to bypass via the task manager and running explorer.exe. I found out that the proprietary file format was simplay an MS Access file with a different extension. I tried to open it, but the file was password protected.
At this time I had little to none experience with programming or anything else that was "low level" computer stuff, but I occasionally stumbled about writeups about hacks and exploits and skimmed over them. So I was pretty sure that there had to be a hardcoded password somewhere. I started to open every file I could in a text editor with no luck. Then I got a hex editor and opened the binaries and finally, in a dll there was a password.
The next few days at this job I spent teaching myself enough Python to read the Access files and write the contents into an Excel file.
This worked and I used the free time to study/eat/sleep while getting paid for it but then one of my supervisors found out that I wasn't doing anything but still got results and wondered how I did it. He immediately put me onto another problem they had, thus starting my career as a software engineer.
Its weird how luck plays a part in all this - I remember as a Student temping for the giant Audit firm, Arthur Andersen (become accenture eventually). I was doing something like typing from one system to another. I think I found VBA and demonstrated how I could do a weeks work in a lunch hour.
My boss took one look, freaked out and I was back at the Temping agency.
We are still very far from a Software Literate society.
My dad did this for someone's whole team as a favour because he overheard what they were doing over lunch or something like that. Later, he met the manager of the team he'd done it for and asked if they were going to transfer any of the employees that got freed up for the work and she said "no, there's still lots of work to do and the speedup, while helpful, wasn't major."
Went to her retirement party a year later and got the truth: Her pension was tied to her salary as a manager as an average of her last three years, and her salary as a manager was directly tied to her number of reports. If she'd have given up half the team as she could have, she would have lost hundreds of thousands of dollars over the rest of her life.
There was a lot of that type of stuff going on when computers first came in and hackers here and there started optimizing things. Individual interest and politics doesn't disappear.
It wasn't the humble beginnings of my programming career (far from it), but I still ran into a similar situation in an internship at a recycling company, just a couple of years ago. "Hey we got all these daily excel sheets that someone needs to sit down and aggregate into these monthly balance sheets." A couple hours of VBA later and I had automated it.
Then a few days later, I happened to talk to someone from the accounting side about this experience. She mentioned that they were actually also tracking these same numbers and apparently had an automated system already. The production floor just knew nothing of it and had been doing the same task by hand forever. I guess the realization how inefficient organizations can be was probably the greater learning experience for me there.
Same story here. Was working for a manufacturer doing help desk/support. One of two people in the dept. First task was to help someone in a different dept sort through PDF files, and rename them to the company standard format. I wrote a python script to do this instead of renaming one by one.
Got reamed because "there's no way that is accurate and it might mess something up".
They where renaming the file based on the date of review, and the creators name.... Both of which were in the damn metadata.
If your position was independent enough, you could maybe get by with a "show me a mistake, and I'll acknowledge and fix it and eat crow. If you are just guessing, go look for an error."
Or if there was storage space enough, make a mirror directory with copies renamed, so there was obviously no loss of original files, then invite them to check as many as they wanted.
I do understand that many people don't trust automation like this, I've been there too.
I have a rule that helps me be a decent human being. Automate to make my jobs easy, never automate someone else's job. Too many hot shot software developers think that putting someone out of a job is a good thing
Your story is probably the more common one by far. Most employers and managers (especially for starter/entry-level jobs) are incredibly insecure, and any sign of intellect or creativity scares them. I've learned the hard way to never ruffle feathers by trying to think or solve problems at full power on a job. Just do what's expected and move on.
It's also why the nimble newcomer can often disrupt and slay the giant incumbent. It's a lot easier to create high-performance environments when you have teams small enough for all members to know each other personally than when you have hordes of people and have to use lowest-common-denominator bureaucracy to manage them in bulk.
I'm doubt much of this behaviour is driven insecurity / fear of intellect and creativity - it's mainly an incentive problem IMO. If I'm incentivised to keep an inefficient manual system going, I'll fight for that inefficient manual system until the bitter end. Sending a smart but non-business-savvy temp back to the temp agency is small potatoes.
I don't think it's insecurity all the time, although I have run into people who refuse to trust an automated process because they can't see the work getting done...
I think a lot of resistance is due to, like others have said in this thread, unexpected incentives.
If someone's career progress, financial incentives, or work politics require the status quo, no changes will be welcome, and might even be perceived as an attack. (Yep, been there.)
If you miraculously can get the incentives changed, then you can make progress...
This is super similar to my start. I was hired at 17 one summer to do data entry for a surveying company, by putting timesheets created in Excel into a central system for billing clients. That got boring after a day, so I figured out how to use VBA (Excel on Macintosh System 8!) and wrote a macro that I linked to a button and put on the spreadsheet template, hidden off in the corner somewhere. When I got the next set of sheets back I hit the buttons and my job was done.
I showed the bosses, and was immediately put to work on some much more interesting stuff linking Lotus Notes with SQL Server for reporting and dashboarding, and then I was off to the races.
(The previous year I'd spent the summer making concrete garden ornaments with a group of ex-cons in a shed in the back of a farm - an experience which certainly made me appreciate the comforts of doing spreadsheets in an air-conditioned office, though my muscles were never quite as good.)
Apparently this is the "story time" thread, so here's mine, of how I hacked the Linux kernel without ever having written more than maybe 50 lines of C code.
This was in early 2001, I was an exchange student in Japan, and I'd bought a really cool gadget in Akihabara that almost nobody had heard about: a hardware MP3 player. For storage, it used MMCs (precursor of SD cards), affordable ones held 32MB. To get music onto those cards, I also bought a USB card reader.
And there I ran into problems: the PC in my dormitory room was a used Pentium Pro desktop I'd gotten very cheaply without an OS, and I'd installed Linux on it. But at that time, USB support on Linux was still rather spotty, and while the card reader was in principle supported as a mass storage device, the USB driver would reproducibly freeze up after a short time accessing it.
As mentioned above, my C skills were basically non-existing,
but compiling your own kernel was at that time still a pretty common thing for Linux users to do, so I had some experience with that. And I was motivated. I enabled kernel debug output, and discovered that just before freezing up, the driver would report that it had received an event with a certain ID. I found the code that handled events, and I found the code that handled the problematic event. I looked at it and realized that I was many months of learning away from being able to fix it.
So instead, I deleted it. I simply made the driver ignore that type of event.
It worked. I could use the card reader to put MP3 files on the MMCs and listen to them on the player.
I felt a strange mixture of achievement and embarassment.
This story I believe, largely because there's no money or fame involved, and because it's the software equivalent of "hit it with a hammer until it works again."
Ha, reminds me of overclocking the Tegra 2 in some Toshiba tablet. People were saying it's impossible, with various modified files linked by people saying it should work but it doesn't, must be something hardware related.
Being a naive dumbass, that did not stop me, I looked through the source files and thought "why not just edit the voltage/frequency tables in all of the files?"
And it worked. Could've easily bricked the device, but it didn't. I believe I had the same feeling as you. Yay for ignorance, I guess :D
That's like a scene in some old TV series about a startup I only vaguely remember. It's important demo day, but a bug is threatening to ruin everything. Everybody is trying to find the bug. Somebody yells out "I found it!" and everybody rushes over. For a long moment, they all stare quietly at a big red flashing line of code on the screen. Then somebody blurts out "delete it!" and the person at the keyboard deletes the bug with a single keystroke. Everybody cheers. The startup is saved!
This reminds me of something, too. My siblings and me often play a (now) old RTS - Battle for Middle Earth II - against AI. When these matches go on a while, sometimes it crashes when defeating an AI.
Well I looked at where it crashes, and simply nopped out the code where it crashes (it was a null pointer access I think) ... and we haven't noticed any weird effects of that so far ... one of these days I'll get around to making it an if (ptr) fix and see that happens then, but it is not this day!
No, I don't think I ever shared it outside of personal acquaintances.
Diffing the game.dat we use vs an "untouched" cracked one there are a few more differences than I expected (I at one point fixed the random version number and the 3:30 auto defeat if the game thinks you copied the game illegaly).
If you send me a mail to the email in my profile, I'll send you the binary!
Brings back the days of my youth in about the same era. We had a recession on in my country at the time that made student jobs in the tech industry scarce and I ended up working in landscaping during the summer to try to meet the tuition bills. One of our jobs was at the site of a rapidly expanding local tech firm (the telecom monopoly had just been forced to open the market to allow competition and the industry was beginning to boom). I remember digging holes for planting trees and looking through the tinted glass windows at a couple of guys in their white shirts and ties sitting at a terminal and thinking "some day I'll be on that side of the glass". Sure enough, after 40 years, I work for a company with offices that overlook that same building. The trees I planted are large and mature, I managed to eventually pay for my education, and I never forget my roots as I sit down at a terminal window.
The classy way of handling puns is to avoid them if they're not intended and leave them unstated if they are. It's funnier to everyone who notices that way, and less distracting to people that are just there for the content.
Instead of puns, you can substitute the synonym for the word you're punning. So instead of "I never forgot my roots" you can say, "I never forgot my tree butts" or whatever word silly rephrasing you can imagine.
Same here, thanks Ned, this really touched me. I was 9 yo on a hot Italian summer day of 1985 when my dad bought his first computer for the bag-handcrafting company he still has with mom. I had my C64 since 1983 and I was also quite fluent in Basic at that point, so I was super curious to see the new IBM XT 8088D in action.
The sales agent from this "big" Italian company arrived, unboxed the PC, and started to explain to my dad the default MS-DOS commands. I was sitting there sneaking the prompt commands he was typing when, while installing the accounting software (which was the selling reason) the installation utility failed with an error twice and the sales guy was in a panic. A new version of the software was shipped early that week, and this was the first live installation of it. He tried some commands, started to screw up turning the PC OFF and ON, and at the end, he was completely clueless.
That's when I've stepped in - I've gently asked him permission to touch the keyboard and once got access, I started to play with MS-DOS and found the batch file that was responsible for the installation. The guy was looking at me with an expression that mixed surprise and hope when I've found out this file was a script that was similar to Basic and I've found a way to edit it. After poking for 1 hour in tests and trials, I've finally fixed a bug on a conditional that was bringing the data loading to a dead disk path.
The guy talked with his department the same day, and a manager from the company called me to understand what I did. They were so thankful! Nobody paid me a cent for this but after that phone call, I realized my passion could also be my future job and life, and 36 years later is still true. Thanks again!
Thanks, yep I think you are right about Olivetti, but in this case the company was Buffetti, a national-wide office supplier company that moved into software in the '80s to surf the PC era, cooperating with IBM for the hardware. I think at that point that was the first version of their software, and the department didn't last a long time.
I love this. When I was 17 my dad got me a summer job on the plant he worked at. 40 hours a week in the parts shop, ordering parts, getting parts, and running around to different places to pickup parts. Actually I didn't mind it, but it was hot and dirty and my dad was my boss.
They had a computer system there to keep the inventory, running dBase III and hooked up to a NetWare network.
First day: No reports could be printed. Reloaded the various drivers, re-ran the reports.
Second day: They told me about a bug that caused the counts to be off so after checking things in, I had to manually add the right answers to the totals. Fixed the bug in dBase app.
Third day: The pull me to the front office, I'm working in the IT department and somebody's else kid is working in the parts shop.
I have a story similar to many of the others here. Mine was in the mid 90s when a kid could make good money developing websites. The hardest part was the client interactions, which is not something a 14 year old is particularly good at.
But the real take-away is that this era of computing was a true green field for the kids growing up in it. My cousins, who are over 10 years younger than me, grew up in a totally different world and, despite having used computers their whole life, have no idea how they work or how to build stuff with them.
A childhood spent writing batch files in order to run DOS X-Wing is very different than one spent loading a CD into the 1st gen Xbox.
I feel bad for my own kids, who are surrounded by technology that is walled off and inaccessible. Even 'View Source' on web pages is virtually useless now-a-days. It's a lot harder to get into the internals of systems than it used to be.
I had a long conversation about this a week ago. My worry is that "hacking" things — in the sense of "finding a way to use a program in a way that the developer didn't directly intend" — is getting harder every year and that this may have implications for the next generations of developers and indeed power users.
"View source" is not only virtually useless on many pages, but also unreasonably difficult to access in the first place (if not completely impossible) on systems like iOS.
UX, generally, seems so rigid now that, especially if it's on a more locked-down platform or a web-app, it seems there's often almost no way to use an app in any way other than the developer intended. The barrier to entry for hacking seems incredibly high now.
I don't know when the concepts of batch processing and scripting — or even keyboard shortcuts — came to be seen as a hindrance to UX, but I have a feeling it developed in parallel with touchscreens and the ever-increasing incentive to make apps addictive. In that respect it seems like we haven't really evolved in the last 10 years (at least), but actually regressed to some pre-computer, pre-automation age.
Perhaps everything I've just written is a load of rambling nostalgia. These thoughts come to me almost on a daily basis though.
Absolutely. I want to make products that are accessible under the hood. It‘s not for computers any more, but then there are many other objects we’re adding computing to.
In the meantime, I’ll start the kids on my old Apple ][e if I can smuggle it by my spouse.
Again we see similar issues that motivated RMS to create the free software movement. The buy bought a program but did not had the ability to read or edit it, today you will get a DRM on top of the program and some TOS that would say it is illegal to even attempt to get pass the DRM. Video game crackers show this DRMs will eventually get broken so the industry switch to services instead, now you are really screwed , you can't flip a bit to fix an issue or you can wake up and the software is now updated with nice new bugs or pointless UX changes.
Under questions you’re unprepared for, years ago at a Wall Street job a couple of weeks after a re-org my new boss calls me into his office and asks me what sort of bonus I was expecting. Caught completely off guard I quoted him the real number I had been expecting.
He smiled and said great, which let me know I had absolutely left money in the table. A trusted colleague then told me if that situation ever came up again, take your real, reasonable expectation, double it and add 20. The situation has never come up again.
Probably you meant 20%. So that's X * 2 * 1.2. Or X * 2.4. Or make it easier and say 2.5. And 2.5 is 10 /4. So another way to say this is "take your reasonable expectation, multiply it by 10 to become really unreasonable then make it reasonable again by divide it with 4".
Loved this one. When I was mid-20’s I found myself in a “how much” situation as well. Thankfully I had the gumption to “go for it.”
I had found a solution to save the business 100k+ when another contractor charged 10k+ and failed to complete a job because the business couldn’t pay them any more. The thing is, once I started digging into it, the other contractor had done 95% of the work; It just needed a nudge to get finished. But As far as the business was concerned, it was 0% done because it was an all-or-nothing situation (either it worked or didn’t).
I did the final 5% and charged $3,000. I presented it as “I can fix the problem for 3k.” Was that completely fair to them I sometimes wonder? I don’t lose any sleep over it — they had a problem and I fixed it. I think it was wrong for the first contractor not to finish the work up and deal with a final invoice rather than insisting on pay in advance and abandoning them that close to the finish lone.
As far as the business was concerned I was a very cheap solution, and I made an hourly rate of about $2k per hour.
That's just economics. It's just like Apple or Samsung "magically" deciding that the price to fix your broken screen is just slightly under what it costs to buy the same phone used.
The business was pretty strapped for cash (they had to pay me $3k over two payments).
But yeah, it was a 100k problem. All or nothing. Either it was fixed or not. The previous contractor had completed 97% of the work, had billed $10k, and then left when the company wouldn't pay any more.
I swooped in, finished the last 3%, got all the glory, and charged 3k. The business thought I was a miracle worker.
To be clear, the previous contractor did a crap job communicating with the business to explain how things were progressing and made it look like this would be a black hole the business was throwing money into. Had the previous contractor said "we're really close, we just need a little bit more money" the whole thing likely would have resolved without my intervention. But communication matters, I suppose.
It's crazy sometimes the gap between an appropriate hourly pay and the monetary value of the output. I'm sure OP would have come up with something in between as well, but being put on the spot and caught completely off guard like that for the first time I think the $100 was a fine deal.
I had two jobs in high school and learned a lot from them.
In the first, I was a temp worker for a P&G re-packaging facility. This means some temp agency was paid $12/hour and they passed on $9/hour to me. The job was backbreaking, in intense heat, and with very strict management rules (e.g. no lunch break, sitting down for even a moment was grounds for being fired).
In the second, I did lawn mowing for individual families for $20/hour. I found them by referrals and networking, and could control my schedule for when I went to do jobs.
This taught me that being creative to find good jobs was super important.
In college, I found a series of high-pay, flexible or comfortable jobs. A few examples:
$1000 for one week's work to hand out 2 pallets worth of coke zero to college students. I was allowed to keep the extras and ended up with a 1 year supply of coke zero for myself and all my friends. Oh, they also gave me coupon for 1,000 free burritos and despite a very diligent effort to hand out as many as humanly possible was left with ~300 burritos and told to just keep them. Qdoba was my primary diet for quite some time.
A job selling cameras on eBay for a camera shot that went out of business. They paid me a 25% commission and had one of the largest private collections of highly collectable cameras (I sold one for $8,000). I only did it for a summer, and probably should have taken a semester off college to just do this full time and could have made enough money to significantly reduce my college loans.
A freelance role, for a German re-insurance company to write white papers for $50/hour and could create my own agenda for what I needed to write, and work whenever I wanted.
>> should have taken a semester off college to just do this full time
This is very adjacent to what you're saying, but every time I hear this idea, I can only think that it's really taking an entire year off. Most of my courses were structured in a way that if you took a term out of the normal hierarchy, you'd have to wait until that course came around again at the same time the next year.
It's definitely highly variable by university and major. I know all the chem e people I went to school with suffered through the same track together, for the most part. But the comp sci program was much bigger and most core courses were offered both semesters or weren't serious blockers for other courses. And there were plenty of non-core classes to choose from to satisfy the in-major credit requirement.
On the other hand a friend's brother had to do an extra semester at a state school because a class he needed to graduate filled up before he got a chance to register.
Definitely con considering back then all "zero sugar" soft drink had Aspartame as replacement and there are studies that link Alzheimer to Aspartame. I'd say OP has a very big chance to develop Alzheimer if he drank so much in such a short time.
My first job was at a local computer shop. I literally got out the phone book and called them all in order. The one that finally hired me was called ZAM.
My first tech job was web dev at a small local shop. I also got out the phone book (and performed extensive google searches) to find all of the local web development companies.
I emailed them all, and wound up with two interviews. One was a wordpress sweat shop, and the interview went poorly--the owner had not even read my resume, started my interview while on a conference call, and told me my job responsibility was to "make her happy." When she said that, I politely declined to finish the interview.
The next went fantastically, and I wound up landing that job in a 3-person shop. I loved those people, and I'm very grateful for the opportunity they provided me. I also think we provided a lot of value for some important causes, which makes me remember the work very fondly, despite being in way over my head many, many times.
1. Would this still be possible today? It's a certain timeframe (for software) where this was possible. Today it's things like SAP, integrated systems and DMCA on top of it (or Excel).
2. I did the menial route and am still happy for it. Flipping burgers, cleaning dishes, repairing truck tires and cleaning office buildings. It's a different sort of grit and stamina than the one that gets you far in your office career, but I still look back fondly on the lessons about hard work. It was also an introduction into diversity. I've met people on those jobs the 16-year old me never met before, and since. For me the lesson is: whatever my kids will do in jobs on the side, it pleases somebody enough to give them money and them enough to do the job it's a worthwhile lesson.
I run a "CTO-for-hire" service with about 25 devs, product managers, and designers. I'd say at least a quarter of what we do is dropping in to rescue projects that have gone bad.
We're often treated like gold just for showing up, doing decent work, and bailing them out of a problem.
There's tons of work out there like this if you grow a reputation for being good and trustworthy, and you're willing to work through those really hard moments of everything being broken with no reason why yet. I'm 40 years old, and still just got the rush of excitement last week as I solved a major production problem for a company after a string of late nights. It's just fun.
2. Totally agreed about the value of other types of jobs as well. I will treasure my teenage and early 20s experiences as a Pizza Hut cook, Grocery cashier, and bet-taker at a race track for what I learned about those industries, how people work together, and the differences between intellectual and manual labor. As a salesperson, I also STILL reference knowledge from my experience in those industries when talking about new projects.
> Would this still be possible today? It's a certain timeframe (for software) where this was possible. Today it's things like SAP, integrated systems and DMCA on top of it (or Excel).
There's still a lot of utterly awful, sloppy business software around, especially for SMBs.
I beg to differ.
Using a rare and specialized skill to fix critical business software is "actual work". The example in this story created a fantastic amount of value. It was also probably the model for the author's entire professional life.
Maybe a more accurate headline would be
"Deciding not to take a job filling potholes was a good move"
"Show up and be being willing to try to fix difficult problems"
Other things of note: Character matters. If he'd lied to his mom about the outcome of the highway department job she wouldn't have known to connect him to the used car shop. She helped make a safe place for him to tell the truth. He made good by admitting a difficult thing.
Gaining skills and learning to solve problems pays off.
Being poised to take an opportunity that arises is probably a sound life strategy.
$100 was actually a reasonable number. It recognizes that computer work is not equivalent to minimum wage labor, is a significant discount off of professional software work and gives the client room to make a compelling offer for continued engagement.
People ask if we'll ever run out of software jobs. My answer is, "will we ever run out of business problems to solve? Opportunities for efficiency, laborious tasks to automate?" Not in any future I can imagine. Maybe when AI learns to code. But at that point the world as we know it is over anyway.
Here's mine. I'd just coming to take my GCSE's and decided to audit the school's website which was a Frontpage '97 powered site. I found the passwd file in the _vti_cnf dir (iirc) and ran it through a brute forcer. Found the password quite easily but instead of defacing decided to inform the webmaster. They were impressed and ended up getting me some paid work experience at ICL for the summer, working on an NT4 rollout (those were the days). If I'd defaced the site or done something a teenager would have perhaps done to impress his peers then I wouldn't have had that experience which definitely helped to get another job. It's funny how so much of life can pivot on quick, seemingly insignificant choices.
For me, the key take-away from this story is right at the end, where he contemplates whether he short-changed himself. If you look at it on a per-hour basis, he got paid decently ($100 for a few hours work in the 80s? Incredible!). However, if you look at it from the perspective of the business value he delivered to Jim in that transaction, it was a bargain for Jim ($100 once-off to fix a problem taht was costing many multiples of that each month? Hell yes!).
And therein lies a fantastic reminder that if you can frame tthe cost of your work in terms of the value you will provide to your customer, rather than a flat labour rate for your time, you stand to earn a lot more.
On the other hand, I'm not sure the author would have been offered a job had he named a higher price, so that could be seen as some kind of investment too!
it reminds me of the time I "hacked" a strip poker game on my C64. I noticed some files on disk had a number after them and assumed they were images. I just reversed the numbers and voila, I started out with a naked lady that gradually got clothed. I didn't really care to learn poker anymore after that.
This part resonated with me and took me back to when I was picking up PHP on my own and breaking apart a Wordpress installation, file by file, line by line, method by method. Has some good "first principle" vibes to it.
Reading this reminded me of a humorous Onion video titled "Report: 95% Of Grandfathers Got Job By Walking Right Up And Just Asking" [0].
Scrolling around the comments, I'm not seeing any stories newer than the 90's. Given the layers of HR rules, proprietary software shenanigans, and corporate management, I expect similar stories are rare today.
Depends on the size of a firm. If you rock up to a small firm and talk to the owner, you could well get a job, they don't have HR rules and corporate management.
One day, when I was 18 or 19, I was invited to a Mercedes dealership to try and fix a problem they were having with their site. I went there with the same mindset as the OP: I'll investigate for free, but a solution would cost money.
Unfortunately I didn't have the experience or perseverance to actually work my way through a highly custom CMS, one that seemed to be forced on most dealerships. I went in thinking there'd be a blob of PHP somewhere, or some code to look into. There was none, only an endless series of silver-tinted forms.
I gave up, said this was way out of my depth, and despite their insistence refused to bill them for the time. It was enough for me, as a young whippersnapper, to say that I worked for Mercedes (for a day).
Good to see OP had a similar-ish run-in but managed to see it through.
The luck and the postscript really resonated with me. For more than 30 years now, I've been telling people I hit the jackpot: Computer programming is something I'm really good at, that I enjoy doing and that pays really well. Very few people get all three.
I had to work summer jobs though, starting at 15: road crew, pounding spikes on the railway, lumberjack. I'm not sure I would have been better off for not having those jobs though. I learned a lot about what the average person does to get by and about how much alcohol gives me minor alcohol poisoning.
The author said in a postscript that he was worried about seeming elitist. I didn't think it was elitist at all, and I completely understand why it was a good choice for him to write BASIC code.
However, I also did manual labour in the summer when I was ~20. There was nothing wrong with it. I would certainly recommend a brief stint of it to a young person, especially if you are training towards a sitting down/talking type job.
You are outdoors, you end the day physically tired but with mental and emotional energy for other things. You gain skills and improve your health and fitness. There's usually a good atmosphere among the workers. And you get to point at something concrete and say 'I helped put that up/knock that down/repair that'.
My parents made a similar deal with me, when I was 18.
"Manual work" for all but 3 weeks of the summer was indoors for me, in factories -- mostly cleaning and assembling. There was a good range of jobs, from boring, tough work more-or-less alone, to a place where everyone seemed to chat while they worked slowly as the summer was usually a quiet period.
In the final job, I took a half-day off to collect my exam results. Going into work afterwards, people naturally asked what they were -- all A grades. It was difficult not to feel apart from many of the staff from that point. The owner's daughter was the same age and also working the summer at the factory, and her results weren't good enough to go to university.
I only had phrases like "look at you with your fancy words", which (in Britain, depending on tone) can mean something from "I'm impressed you remember words like that", to "I don't understand you" and "you seem to think you're better than me".
Part of why it didn’t come off as elitist for me is that everyone had their own story; his dad was relatable, his mother supportive and he wanted to not disappoint them. The car dealer guy sounded awesome and not at all like someone he looked down on.
I love this story because the story has a an unwritten and deeper title "Do what you love and love what you do". True, while the unwritten title may not have grabbed most of those here who really appreciated it (myself included), it underlies what arguably really motivates a lot of teens to work any job, which is working a job doing what they like.
I was "tricked" or "crimped" into my first job the day before my 16th birthday. I accompanied my dad on a shopping trip, and he asked the manager there if he was hiring, gesturing to me. I didn't have a chance to express my own point of view in the course of this conversation. And by the time we left the store, I was supposed to show up the next day to be hired.
I wasn't thrilled to work there, but the first paycheck I received motivated me to continue working. It funded my evenings out and my sci-fi and comic book collecting, and let me save for my first car, a '71 red Buick Skylark with powerful V8.
But I would have liked it better if the story of my first job was more like this story.
Age 14, I worked 2 hours a day, 5 days a week at the local fish market doing clean up and end of day work. Nasty stuff. I worked the summer before college at a friend of my parent's warehouse basically relabeling overstock canned goods with a white label for use in restaurants. Hot, loud, and smelly job. During my sophomore year, I thought I wanted to drop out. My dad said he could probably get me into the plumber's union, and no disrespect to plumbers (they probably make more money than I do), but the memories of that work made me go back and give college one more shot. It all worked out in the end. I graduated, found work, and am still in the industry happily three decades later, but it all could have gone the other way if not for those hard manual work summer jobs.
Undergraduate shenanigans in the 1980s: The IBM PC was underclocked at 4.77MHz (as I recall) but rated at 8.00MHz, thus the "turbo" switch on many clones. Our little company had secret early-access IBM AT to develop software on as part of IBM's Scientific Software Suite. IBM paid to have a security system installed in our rented suite, and required that the machine be in my windowless office in a larger windowless back room. Was the AT also underclocked? The system frequency was controlled by a two-legged crystal soldered in, so I purchased a number of such from an electronics surplus outfit, soldered and unsoldered until I reached the maximum stable speed. It was quite a boost (I seem to recall that it was the video subsystem that was the ultimate bottleneck). When the AT eventually went public I made a few bucks hot-rodding them. Oh, and when IBM wanted their loaner back I did put the original crystal back in--only one coworker knew about this, and certainly not my bosses.
I started working at my town’s library during the summer, putting books away. When I later started to learn about algorithms and data structures, I kept thinking back to pushing that cart of books around the stacks (sorting them ahead of time was faster), rebalancing the distribution of books among a shelf, etc. Tons and tons of CS concepts are made physical in the library.
I really liked this story, and it resonated with me. My programming career began in much the same way, at about the same time.
The only non-computer job I've ever had was my first, a six-week stint at a Burger King, and I was desperate to never do that again. I undersold my skills often, and got in over my head just as often.
It was a great, if sometimes painful, learning experience.
If by "change" you're asking, "when did I stop underselling myself and getting in over my head" then I am not sure I could identify a single point in time where that happened. It's been an improvement on a continuum.
Those early years certainly felt painful but in retrospect provided valuable concrete experience in negotiating, marketing, and self-assessment. I learned how to figure out what others really wanted, how much they should be willing to pay to achieve their goals, and (probably most importantly) whether or not I could deliver. That period of time, when computers were exploding into small businesses, was a little magical when it came to freelance programming.
Now, ~40 years later, I find myself applying those learned skills at my current job every day. I got lucky.
My apologies if I misunderstood your question and blathered on about something else.
I worked in the hot Florida outdoors, with children, for about 7 years through high school and after. Minimum wage. It's the part of my life I'd most want to re-live, though I can't say things have gotten harder or anything.
I had everything I wanted. Fitness, a rewarding job, a running vehicle, friends (via coworkers), and a decent set of fishing gear.
The bogus file header was causing them to be interpreted as a different kind of file when opened by the viewer-editor (what we might consider an IDE today). The code wasn't encrypted at all and nothing prevented the author from reading it:
> In the editor, I could also clearly see the text of the BASIC source code for all the programs. It was there, not encrypted.
Incidentally, I find the various copy/read protection schemes of yesteryear absolutely fascinating. It seems like it always comes down to some brand of cleverness, and gives credence to the idea that there is always someone smarter than you.
Also “Never underestimate a time-rich, money poor kid”
The fact that it's a single bit confuses me. If it was a full null byte (0x00) it would be easier to explain. C strings are null terminated, so you could assume the editor stopped reading when it hit "the end of a string" but BASIC still executed it?
Or if it was some unreadable ASCII character, maybe it worked like an EOF in the editor? But the fact that he switched it from an F to an E gives me no clues. This stuff is unfortunately before my time, I'm sad I never got to play around with stuff like this in my youth.
Some older filesystems, like ADFS[1] which I'm familiar with, have a "type" attribute, along with the read/write/execute (etc.) bits, as part of the directory node [2].
On RISC OS, as that page says, a BASIC file has type FFB. I remember a plain text file had type FFF.
The byte apparently was not part of the file contents but part of a file header that was interpreted by the editor; probably encoding some kind of "file type" that was displayed differently when opened.
However, technically, switching an 'E' for an 'F' is flipping *two* bits :/
The RDOS file system provided means for protecting files by setting attributes. Because RDOS, not being a multi-user system, had no notion of file ownership, attributes applied to all programs that accessed a file. The sense of the attribute bits was, in most cases, the opposite of that in Unix; if the bit was set, the operation was prohibited. Files were by default created with all attribute bits cleared, permitting all operations. The attribute bits, as identified by the letters used to identify them in a file listing, were:
'R': prohibited reading
'W': prohibited writing
'P': "permanent file"; prohibited renaming or deleting the file
'S': identified a "save" file, that is, one that contains an executable program.
'N': prohibited symbolic links from linking to this file
'A': attributed protected; prohibited any further changes to the file's attributes. (A file that had both P and A set became un-deletable, except by reformatting the disk.)
'I': Prohibited reading or writing by means other than direct block I/O. (This was removed from later versions of RDOS.)
'?' and '&': User-defined attributes, ignored by RDOS
thanks for this! I've always wondered what the deal was, and teen me did not do any research on why the hack worked- once I got the files visible I just moved on. It was almost certainly this RDOS attribute stuff you show here I was playing with (also I took some artistic license in the post, not really sure it was 'F' vs. 'E'.)
Just as a random tangent from a great story, the Data General Eclipse was the machine designed and built in Tracy Kidder's excellent book The Soul of a New Machine.
Really fantastic book for anyone interested in the history of computers, captures its moment in time perfectly and won a Pulitzer for it. If you liked Halt and Catch Fire you'll love it.
I really liked this story. Im much too young to have been around for it, but I feel like this era of computing must have been kind of magical where there was a lot of access and no walled garden nearly to the scale of a google or apple where the obfuscation just requires a flipped bit.
I'm old enough that my heart fluttered when he mentioned the "ELF II" development board! That's some serious old school magical stuff. That used car salesman was incredibly lucky to snag such a hacker, who had no fear of jumping into hex dumps and flipping bits around, for solving problems.
Some things were also pretty hard back then (a few years later but still). When you were too young for university and your environment was not academic, getting access to information was so difficult. I remember when we made a school trip to London and I spent all my savings for programming and computer graphic books. There was no wikipedia, no scihub, no blogs, no Github. New coding or hacking e-zines were treated like gold and sometimes I spent multiple months of my savings to get 1 book!
Early days of programming were sure facinating. Small businesses using other small businesses to write custom software. Lots of tinkering and hacking. Interesting times.
The most interesting thing is probably that in 1982 or whatever you could find a nice summer gig, work 20h/week for the summer, and pay a full academic year and a computer.
This resonated with me. I actually took that road construction job as a flagger. I stood there turning that stop sign back and forth, directing traffic, for a whole summer. I felt, and still feel it was the lowest point of my career. My brain was starved in the truest sense of the word and it gave me new fire to complete my college degree.
Which was Electrical Engineering. I didn't learn that I really should have gone for computer science, computer engineering, or something along those lines until after 5 years of work in the industry. I was just carrying the family flag of engineering.
I contracted with a friend's company after telling them that I needed a change of work and was interested in software. After telling them I had zero professional experience writing code (two CS classes in college), they assured me they would get me up and running.
Now here I am as a full stack engineer just over a year later. I really don't know how I got here. But I do know that this type of work is incredibly gratifying and I should have pursued it early on.
Somehow as I grew up I got the idea in my head that work should be your personal crucible and that loving work was really a sign of workaholism. So I always took those jobs that were miserable just to get a paycheck. I hope I can help my kids find work best suited for them.
I should mention that coding had been an early interest of mine. In middle school I put custom firmware on my PSP so that I could use a homebrewed version of YouTube to watch a series of "Learning C++ From Scratch" videos at night. Had somebody noticed that interest I could have been encouraged early on that that interest could actually be a profitable job and not just a hobby.
Given you were so interested in programming as a kid, how did you rationalize a career in engineering?
I'm only asking because I'm doing something similar - I was mostly interested in computers/programming growing up, and am now in my second year of Mechanical Engineering (w/ CS Minor, which doesn't mean much) and wondering if I should just bite the bullet and switch over to CS all the way.
It was that 'carrying the family flag of engineering' thing. This notion that engineering was a safe bet and I should do it if I could. Very little to do with my actual interests. Not to say I don't enjoy electrical engineering. I just don't enjoy the work.
After creating many tools for the companies I worked for it became clear to myself that I should have done that in first place. My advice to you would be to take more CS classes to see if that's really what you want to do. A small price to pay now and will give you a better idea of what you want to do.
That being said, my experience (electric utility manufacturing, military truck electrical systems) was very valuable to my broader understanding of how software is consumed.
What a nice story :) Reminds me of how I got my first job!
It was 1994 or 1995, I was probably 14, I had outgrown the ZX Spectrum and had a 486 at home. My dad and I were in a computer parts shop, and near us was this guy my dad's age having trouble with his own computer. He was having random crashes, and nobody at the shop seemed to figure out what it was.
My dad suggested I offer my help. We approached the guy, an architect like my dad. They chatted, and in the end I got the guy's computer home. In theory this was about "reinstalling Windows" or something.
Reinstalling Windows didn't help, and I don't know how, but I figured out that one of the four 1 MB SIMMs (this was before DIMMs!) was bad (I think by trying different combinations of 2 SIMMs at a time until I isolated the one that caused the crashes). I triumphantly announced this to the guy, got paid some trivial amount, and he took the machine away. I was proud, my parents were proud.
A couple of days later, the guy calls again. He had gone to the seller, gotten new SIMMs, and the machine was still crashing. My dad told me he had an "oh, fuck" moment right there (but he didn't tell me).
I stood by my diagnosis. I must have sounded confident enough, because the guy took the machine back to the seller again - and they confirmed that the new SIMM was also bad!
Everyone was suitably impressed. The guy offered me a super part-time job, I think 2 or 4 hours a week. He ran a small architecture/building studio, himself and an architecture student.
I was "the computer guy" for a while. I set up the LAN (all coaxial cable and T-junctions - we're talking prehistory here). I designed a logo in MS Paint. Later I got my most ambitious task: to write a system to track the monthly payments for the flats they were building.
My C++ knowledge was extremely limited, having only recently outgrown QBasic. But I took Borland C++, wrote a text-mode windowing system (with mouse support!), and the payment tracking system, which even printed invoices. Sounds impressive, it worked, and it looked OK, but under the hood it was an abomination. Off the top of my head: I didn't understand dynamic memory, so each "window" had a hardcoded limit of 10 edit fields, 10 buttons, 10 labels,...; I didn't know the first thing about databases, so the state was serialized to disk by writing the raw contents of the structs to a file ("works on my machine!"); I was oblivious to the idea of event-based anything, so the whole thing was polling constantly and possibly using 100% of the only CPU in the system - but it was the DOS time, there wasn't anything else running on the computer, so why not? :)
I kept that job for a couple of years, I believe until I started university and got a part-time dev job, then got a full-time dev job, then quit it to start and run my game development company, which I quit 10 years later to leave South America behind, and make the jump to Google Zürich.
After my sophomore year in high school, I had a summer job doing some IT work for a very small company that organized medical research. I was very familiar with Excel, which was a huge strength, but also my weakness. I hadn't truly programmed before, but was an expert at throwing together absurdly long, chained together formulas in Excel that could sanitize some data - After a few weeks of work, I ended up making a really poor Excel VBA code that had a time complexity of O(n!). It would take a few hours to churn through the dataset.
I went back this year to visit some of my old coworkers - some of whom I'm still good friends with - and saw they were using the same macro from years ago. I sat down, wrote a small Python CSV script in about 5 minutes that did what I was trying to do back then which ran in about a minute or so.
I was incredibly surprised that they were still using that from so long ago, but they explained that they just hadn't had anyone bother to fix it because they didn't know it could be done better. I'm sure your DOS program was the same, and that they didn't know any better. I wouldn't be surprised if that system was in use for another 10 years or so.
I had a similar story. A search for internet access in high school (which wasn't common in mid-1990s Australia) led me to working for a ISP, then working for a company that ported bits of NEXTSTEP to other Unices, then interning at Apple, then starting my own company. I was cheap labour but I was surrounded by great people who were happy to answer my endless questions. I hope I can do that for someone else someday.
Amusing anecdote from first ISP job: you only ever rm -rf the root filesystem on your employer's sole server (with no backup) once in your life. Fortunately it ate had only chewed through most of the operating system before I called them in a panic, and we were able to power the machine down. They were very understanding and I spent the next day or two (in the middle of final year of high school) cleaning up the mess. They did buy a tape drive after that! (The cause was a Perl script that concatenated two strings which owing to a typo happened to be empty.)
Tried his "hastyhex" binary to hex filter which claims to be faster than alternatives. In tests I ran, it was much faster than hexdump, and even faster than xxd, but was not faster than lesser known public domain code, which was about 2x faster for small files and slightly faster for large ones. See, e.g., [1]
I feel like honestly these days it's very hard for a similar story to happen. Software and computing is both much more sophisticated and locked down that you can't just open something and flip a bit and fix the world's problems. Modern software is too complicated. That aside, cheap programmers are a dime a dozen assuming you even need one. No used car salesmen need a custom hacker, they'll just buy quickbooks and pay up the wazoo for subscriptions or whatever.
That said, it probably hasn't been ever easier for kids and young people to pick up programming in general.
My summer job is a lot like the job that he avoided - it requires "manual labor." But I know Java so... if you know of a computer-related job that's remote or in northern Colorado, let me know.
Nice stories. I just did the physical labor and hacked on my C64 as a hobby. Luckily I did the "unpleasant" physical labor and I learned to push through hard work.
Actually after 20 years working in IT I hade some successful own companies worked as contractor for others. It was nice but now I'm longing back to a honest days of work. I'm preparing to retire soon and building out a self sustainable farm, providing most needs I have. Hope to go back to "hacking" stuff for fun.
Dammit. I was just browsing commercial database protected by one inverted bit. Map tile coordinates are integers, but XORed by 010000 producing weird and mysterious errors.
When I was a sophomore, I applied for and got a summer job at Kodak. My father said to not be disappointed if it was driving a fork lift because that's usually what they are. But I showed up and was directed into an accounting office where on desks, next to stacks of IBM punch cards, were some brand new IBM PCs. I spent the summer hacking Lotus 1-2-3. They had seen on my application that I was familiar with computers.
>> And in reviewing this one, it comes off to me as a little elitist. Like it is about how this guy, using his great hacker skills, avoided the ‘menial labor of the commoners’ or something. I hope that is not the impression it gives - it is not my intention, anyway.
No, it's fine. It doesn't come across as bragging about your awesome hax0034 skilz0 and I was even kind of surprised about how little it brags at all. I would have bragged more.
And I was decent at programming in BASIC, after many hours of time spent trying to write games on the neighbor’s TRS-80 computer.
I bet lots of people have stories like this. Does it still happen? Someone in the neighbourhood has some unusual piece of technology, other people hang out there and learn how to use it.
Great story, and that approach to troubleshooting ought to be familiar to anyone that worked in IT and seemed to "magically" figure out problems (at least to anyone observing them).
One note on editing - you use the phrase "to be honest" in two consecutive sentences in the first paragraph.
I was hoping this was going to be about avoiding actual work.
In grad school I wrote a PHP script to automate the manual grading of students excel sheets and fully automated my 15 hour a week TA job that paid me cash plus free tuition.
The comments here are full of delight. So many people who had others over a barrel and could have charged so much money but didn’t! And it actually still seemed to have worked out great in the long run.
When I was very young my parents got a computer to help my mom finish writing her Master's thesis and for my dad to use for work and to use for home accounting. I learned to program and to modify games, got into MUDs, IRC, Usenet, and all sorts of things similar to that. My parents allowed me to go to an A+ certification course when I was 11 over the summer instead of going to Bible camp, which was motivated by having the middle school IT guy as sort of a mentor. Thanks to that I got into building computers and really focused on desktop hardware, troubleshooting, and the types of things you'd now consider "helpdesk" work. I, of course, helped take care of the family computer as well.
Along the way, I had gotten into the habit of visiting the homes of people in the neighborhood and just sitting and talking with the people that lived there, almost all of whom were older retired couples or widows, and often made food at home with my mom and brought it over for lunch. I noticed that nearly all of these people had a home computer that they used for emailing their grand kids but didn't really have a lot of knowledge about, and many were in horrible disrepair (infected with malware mostly). When my parents told me I needed to get a job at 14, they figured I'd do what everyone else did and mow lawns over the summer, but instead I printed out flyers with strips to tear off and my phone number and posted them around the neighborhood advertising computer help at significantly cheaper rates than usual (I think the going rate was $100 for diagnosis and I charged $20).
The most important tool I made for myself was burning a CD that just had a bunch of free tools on it and a handful of batch scripts I wrote to help me find and remove malware. I'm eternally thankful to all the much more capable people who were kind enough to put the tools they'd made online for free, folks like Steve Gibson (GRC) and Mark Russinovich (SysInternals) made it possible for a lot of small town techs to help real people get actual value from computers in the early days.
By the end of that first summer I was on a first name basis with several small business owners in town and made four times what my school friends made mowing lawns. By the time I was in college, I had retainers for doing IT with several companies in town and leveraged it into a short-term contract through a larger contracting firm in the closest proper city, dropped out of college to do IT contracting full time, and converted that into a full-time role as a sysadmin and from that went into DevOps, and the rest is history.
I credit most of my success to having a handful of mentors and having parents who were willing to let me guide my own education, as well as the wonderful free resources that were all over on the Internet in the early days to learn anything you wanted to know about computers. I'm also incredibly lucky that something I just thought was cool as a kid turned out to create a set of skills that I could build a career on.
Ah, that good ol' rescue disk! I did something similar in high school. Had a cd binder full of various rescue tools, including a few bootable rescue floppies and such.
Even made some money building custom PCs and doing lighting/window mods for people from my school.
What I love about this story is that feeling of tinkering with a logical system and solving problems with clever hacks. For many, it's the reason why they ended up working in tech, I guess.
Who are these people who write software locks. Can anyone here justify it for me? It's seems to be just plain evil. But maybe i'm attacking a straw man. I don't know.
I’d be curious to hear opinions on how much he should have asked for—what could he have gotten away with and still landed the job? Would $1,000 (in 1982 money) have been too much?
I think he picked a good number. It clearly wasn't $1000 of effort. Jim may not have been interested in hiring someone who, like his previous software guy, was looking to shake him down for as much as possible.
$100 in 1982 is about $275 today. $1k ($2.75k today) feels high to me because of the combination of unknown teenager and the fact that programmer pay was relatively lower in 1982. And if you scale that up to $4k per week that’s $11k per week in today’s money which feels pretty crazy for a teenager. $400 per week in 1982 is a salary of like $60k in today’s money. At 20 hours per week that sounds like a good deal.
In the late 1980s I did computer work for a small business and was paid about $9/hr. It wasn't really programming though, more of an operator job with some hardware maintenance/troubleshooting mixed in as needed. My first job as a programmer, in the early 1990s, paid $32k base plus overtime and a yearly bonus.
These stories are are always fun to read, and this one was especially well-written, so I'm glad it was posted. At the same time, there's a fair bit of survivorship bias and mythology in the "wiz kid teen helps out a clueless adult and starts a great career in tech!" story.
For starters, this was largely a phenomenon confined to a narrow strip of time from the late eighties to the late 00s. Before that, computers were too expensive and restricted for most teens to have access to, even fairly well-off ones. After that, smartphones hit, people moved away from desktops and local computing/admin to phones and consolidation in the cloud(SaaS etc), and a generation that didn't grow up with computers was replaced with a generation that did. So the days of "Hey, I know how to do that computer stuff!" "Great! Get in here!" are largely over.
Second, even in that time period, most teens that knew their way around a system never managed to hook up with one of these sweet deals. You'd (begrudgingly) provide support for friends and family for free, and maybe make a few bucks off some extended work for a friend of a friend, but nothing large or ongoing. It's like hitting sports really hard in high school and college: some will go pro. Most will not.
I'm not trying to be a downer with any of this. But the story of the wiz kid who makes it big by accident has essentially become an archetypal story by now in some circles, and it's important to remember it's more mythology than reality. Most teenage nerds who liked messing with computers as a hobby didn't spin it up into an explosive career overnight. Some decided to get more formal training, and gradually built a career in the traditional way. For many more, it never became anything more than a hobby, in part because the labor demand for people who are just "pretty good" with computers is actually fairly small, and has shrunk dramatically over the past two decades due to consolidations (SaaS again), offshoring and outsourcing.
I don't think this phenomenon is quite "over," nor do I think it will ever be. I actually got my current job because of a similar situation:
During high school, I worked two summers as a lifeguard and didn't really care for it. It was boring, hot, and didn't pay particularly well, especially for what we had to put up with (read: incompetent management and being sorely understaffed). There were days where we had so few staff that we had to get untrained gate staff/food&bev to run slide dispatch since that didn't require a lifeguard license, but I digress...
My senior year, I decided to do something different– tutor online for computer science and math. Pay was much better and I definitely enjoyed the work more. One of my returning clients was working on his Master's and was taking a class that was central to his major involving python scripting. He didn't know much Python, but found me online and I taught him the basics and we had a good relationship going.
After he finished his course, he was very happy with the work I had done, and he actually offered me a job! I've been working for his company for several months now and just recently converted into full time for the summer.
So, yes, the era of "wiz kids" might be over, but getting jobs that you might not technically be "qualified" on paper for through strange connections absolutely still happens.
> this was largely a phenomenon confined to a narrow strip of time from the late eighties to the late 00s.
OP dates from 1982. I actually had a comparable experience in 1982 as well, with a Commodore PET-like. There are similar stories dating back earlier, with minicomputers. And I don't think it has stopped, if you know where to look for it. The days of BASIC may be over, but there are more business critical spreadsheet macros around than ever.
> So the days of "Hey, I know how to do that computer stuff!" "Great! Get in here!" are largely over.
I'd say there are more low grade computer problems out there waiting to be fixed than ever. You could probably ring a random person's door and they'd have a dozen issues with their computer / smartphone / WiFi / Universal Remote bugging them.
> Most teenage nerds who liked messing with computers as a hobby didn't spin it up into an explosive career overnight.
And I don't think the story was about that, in the sense of turning that job into a business as such. It was more about the insight that there was gold in them thar hills.
My 1982 experience was that an acquaintance of my parents got kicked off his mainframe account, and needed a different way to process the responses to a questionnaire he needed for his work. His program was written in some "real" programming language like PL/I or Fortran that was not readily available on the CBM machines that were available at school, so I wrote a replacement in BASIC for him. No exciting or sophisticated technical details, I'm afraid.
Details of payment were not worked out in advance, so I was quite pleasantly surprised to earn a multiple of the hourly wage I had made in a factory vacation job earlier. It was then I realized that this might be the right profession for me.
That acquaintance with the questionnaire happened to be a school guidance counselor, so he actually found me a career without even trying to do so…
You make an interesting point. I was a teenager during that critical period myself, or perhaps just after.
However, those who love tinkering with computers and technology of their own accord have far more opportunities and resources than we did when we grew up.
If you love tech, you've been teaching yourself for years -- it will shine through during those first interviews and through all the years of your career.
I'm going to use this story in the future for describing what Computer Associates (CA) business strategy for rolling up custom line of business applications contracts effectively amounts to, or did.
I was seventeen in 1990 and my girlfriend was throwing me out unless I got a job that week and I decided to cover myself and apply for a bunch of commission only telephone sales jobs that I felt that I could rely on one offer from the booby prize if I couldn't find better or a possibility that would buy me time. The first Monday afternoon interview I found myself talking to the manager of a magazine in the fastest growing quoted B2B publisher and I am thinking that I have blown it the conversation is faltering so I ask what format are media packs sent in and receive the most strained look so much to tell me I'm really done here and should make my excuses. Then I spot the pile of faxes overflowing the adjacent desk and work up the courage to inquire if the hard copies are needed for legal reasons and am I looking at a representative period of sales, spying the dollar invoices. This isn't helping me. The manager lifts up a nearby pile to reveal the first of many fax machines I am suddenly realising festoon every desk about 2 per 5 people. The room spins as I have flashbacks to my last summer job eternally loading and desnagging thermal fax rolls for my local pharmacy. Realising that I was done without a gambit I've still no idea what impetus was the cause but I blurted out "email doesn't have gophers in between you and your customers they'll answer your offers directly!" the cover sheets for every single fax had fluttered when the manager lifted them..Group Company... Operating Company... Country Region... Division... Department... Title...Recipient.... "URGENT ACTION REQUIRED TIME LIMITED QUOTATION ENCLOSED ACCORDING TO REQUEST "... and the longest paragraph of legal disclaimer insisting the recipient imdemnifies the sender for all sins expressly and especially in relation to the offered business contained within. "YOU mean I can sell through these things here!?!?!" the manager agitatedly pointing to the email address attached to the corporate address given by a display advertising page in his magazine. "Individually not only to some waste bin mailbox drop nobody cares about?". The total experience I held in any way whatsoever related to this was a blissful month using the Byte magazine exchange until C&D'd by my father on principle that I never told him about ancillary and necessary costs for a effectively essential second phone line he was certainly not putting in. I wasn't sure if I was right when I pointed to the ampersand @ sign and totally winged the dots were machine designation separators (thinking about bang paths) but in that very second my out reached and gambling hand found itself being shaken heartily and the smiling owner of this animated appendage was confirming "if I hire you you can't tell anyone else what you just told me - I hired you because I wanted someone who understands this not because you explained anything to me OK?". I was very OK indeed. I held my 18th birthday party in this office a few weeks later and I have just entered my 4th decade of finding computing knowledge goes very far indeed in the media industry.
Basically some greedy jerk didn't want to pay living wages to some programmers. Due to his position of already being rather well off he was able to put off (through even more cheap labor) until he found a naive sucker to do the work basically for free. In this case a college kid.
Its the reason I really want to get out of tech. Its a goldmine for spineless knowledge workers to get "put over the barrel" as the story says for a fraction of what they are worth. Then those of us that know what we are worth have to navigate
I don't see a heroic story here. I see someone that took off their armor and walked into battle to be slaughtered.
I'll let you in on a secret: understanding what you understand there, go back and take a look at hacker culture fan favorites like _Hackers: Heroes of the Computer Revolution_.
All the stories are like this. Either adults taking advantage of some naïve rich kids who don't understand what money is worth, or the same rich kids using their status-induced naïveté to get away with computer fraud without consequences. A lot of the "wholesome" tall tales of those rich white kids would have ended very differently for poor Black "youths" but we don't talk about that here.
And it's the same for most "success" stories you hear about where the punchline isn't simply another "rags to FAANG employee" non-miracle: all the billionaire wonderboys already started out wealthy and with access to the right social circles. Even the ones that will tell you they came from poverty.
We need to kill our heroes (figuratively speaking) and realize that programming is just a job like any other. Collectivize and develop solidarity with your peers, don't chase dreams of becoming the next tech billionaire (unless you're already in the right spot, in which case, just don't be as much of a jerk as the last guy, okay?). It's okay to love what you do but that doesn't mean it's okay for you to be exploited, even if you personally are doing well enough not to have to care about the exact size of your paycheck.
>wholesome" tall tales of those rich white kids would have ended very differently for poor Black "youths"
That was pretty much my point. This kid undermined someones livelihood by doing what he did. The only reason he was able to do that was coming from a place of privilege and depressing naivety. He was weaponized in a battle of these two companies for a pittance.
This is an interesting take — I don't disagree that these sorts of things happen, but in this case, the author clearly felt his work was paid for fairly.
I think one's own perspective is a pretty key regulator of what's fair and what's not. Perhaps not in the macro level, but on a case by case basis. Is the author's point of view incorrect in your eyes? Who else should be able to decide that, other than the person who experienced it?
The very story tells upfront that he only needs money to pay college living expenses. This kid was almost certainly taken advantage of and used as a "weapon" against whatever company was making this software.
The company that made the software obviously felt that whatever they charged was the correct price for them to afford to live and continue doing business and pay their employees. This was more money than what this guy charged him, though its not stated exactly how much(that by the way is a clue). Also that they guy didn't offer him money but made him "choose" his price because he knows a young college kid is going to choose some random round number $100,$1000 ect. Which is less than a company needs to stay in business.
I've done plenty of tech business over the years and while I cannot prove it I know from experience this kid screwed over this company that was almost certainly getting nickle-and-dime'd by this man from the story. The writer says he was exactly stereotypical of a car sales guy, would you trust a car salesman?. They probably already did work he never paid for(again knowledge from past experiences). This guys description fits that behavior to a "T"
When I was first getting into IT I started sending out CVs. Mine was terrible. I had been working in call centres for years at this point and all my "experience" was basically self-taught, so not really experience at all. As a result my CV was void of any actual content a hiring manager in IT would want to read, thus it was binned a lot.
I applied for a job at a nearby network hardware repair place. They needed someone to look after their Cisco kit and about 30 Debian Linux systems. I was attracted to the mix of responsibilities so I applied, sending in me not-so-good CV. I was eventually asked to come in to have a chat after waiting about a week to hear back from the place.
At the end of the interview, Bob (let's call him), said I was more knowledgeable than the RHCEs that were coming through his door. This was nice to hear, but then he said something that really made me smile...
Apparently my CV was worse than I thought. It was so bad, that Bob literally put it in the bin under his desk. About four days later, Bob was reading through a local Linux User Group (LUG) mailing list and he saw a name he recognised: mine. So he opens the email and reads the thread in which I helped another LUG member compile a sound driver for their kernel. The instructions I gave worked.
Bob was impressed but he couldn't quite remember where he had seen the name. At this point the business owner, John (heh...), was standing besides Bob's desk and noticed my CV in the bin. He pulls it out and reads my name across the top. The penny drops for Bob and I get the call to come in and have a chat.
I got the job.