This was actually said to me around 2010, but instead of amazon they wanted to be Visa. That's right, they wanted to be a payment gateway and payment processor sending ACH batches every day to a bank. I knew how to do it and they were actually computer system adminstrators, but that company had no idea of the sheer magnitude of what he was asking for. LOC, fraud, DoS, audit, fedgov, talking to the fbi when something goes down,..and so on and so on. They got deeper building up funds and trying to access other CC networks and the fees, memberships, bonds, insurance, and money debts scared them away. They had no clue. I told them no, but I would consult to them where to go. They chose to quit after 8 months.
At my old gig, I was the only engineer building an HPC cluster in the cloud to run our production system. I also developed all the software to run the stuff there, and wrote the terraform to deploy the resources. I got bored so I got an offer from another company and submitted my resignation. My company gave me a 60% raise and a $50k retention contract to stay another year to finish the project and disseminate knowledge. I stayed for a year after the contract ended and then got a different job. It was worth it.
That's a great payday and good for you(not being sarcastic). However, do you take any responsibility in ensuring that you are not the single soul responsible for managing such critical components? (yadayada bus factor and all that) In essence; should the IC raise this potential issue whenever management becomes completely oblivious to it? > Whether they 'can' or 'want to' fix it is another question..
@@hermanplatou Business leadership is responsible for risk management. Even if they know nothing of software development, they definitely understand a 1-man team running their underlying infrastructure is a high risk.
Sometimes writing code translates the complexity of a business so that the dumbest employee in the company "the computer" can understand it, then you realize what is important and what is not, but at that point technology and programmers become part of your business
@@NeilHaskins Fast,Free and good. If you bill at 8$ dollars an hour for 300 hours. That's really cheap, next to nothing and basically free. But I doubt these types of people would pay 2400$ for a working product. Instead they want you to build RUclips, Amazon or twitter from scratch for free. I got an "offer" last year to create a crytocurrency, a crypto marketplace, a website for trading and database for FREEEEEEEE.
@@NeilHaskinsyeah sounds like they want their cake and eat it too and not consume any calories (read: become fat) as well. I wonder how that's supposed to work.
I've noticed in recent years how hard it is to impress non-technical people. Last year I spent upwards of 150 hours programming an iOS app (web dev is my day job), and spent another 50 hours crash learning how to build the same thing in Kotlin/Android. I was very proud at what I created but when I showed it off to people they were genuiingly surprised the project took more than a week or two to build. This is in stark contrast to the late 90's early 2000s where people thought you were a wiz kid if you could code a up a basic website. That said, I find that the technical work is far less difilcult than design (both product and UI). Nothing can bring a personal project to a halt faster than indecision on what features should be included or how things should look on the screen. I beleive I could make just about anything if handed a folder with all the functionality clearly defined and all the screens and UI elements already designed with production ready assets.
In this case, creating a wireframe of the UI could help spark the client's imagination. This helps get the dialog rolling, bringing up features and flows needed before you started digging into the code logic.
Coz devs don't raise or COMMUNICATE issues in stand up, or sprint retrospectives. Not sure why people think keeping quiet about problems is "cool". If you think this is a "behind the scenes only" type of job and you don't like speaking up you're going to have problems. I've literally complained about spaghetti code on several teams and explained the concept of technical debt and how it would it only make it harder to add new features for example. Got time approved to refactor and optimise (and offended some loser devs who took it personally when I showed their bad code and ask how the fuck it ever got approved in code review). Anyways you have to TALK. Actually share your screen and show the code and the issue, and the proposed solution if that helps. Dev culture is weird. The amount of BS devs silently tolerate with is just strange and hilarious.
@@TerriTerriHotSauce 100% agree with this take. I'm as introverted as they come. I learned about 4-5 years into my career, that I have to speak up when I see stuff going sideways or even to ensure everyone is on the same page. Too many times, I'll see two devs nodding in agreement on a plan of action, and in my head, knowing they are not at all on the same page. I used to think they'd sort it out, but after seeing one too many projects blown up by this sort of poor communication, I became the guy to start interjecting and inserting myself into conversations when needed. Nowadays, people think I'm Mr Social at work. No, I just don't like having to fix problems that could have easily been prevented by better communicating in the meetings that everyone hates.
I recommend to never try to impress anyone with your programming skills. Remember: these people - if not developers themselves - don't understand the gibberish that is code or architecture. They only see the visuals and if those don't impress them, it's because they feel like it looks the way it's supposed to. They don't know and don't care what it took you to design and implement it. Customers are even worse, which is why I do love software engineering, but I hate dealing with people and sadly if you want to progress, this is often the direction you'll have to be exploring most of the time, because rarely anyone values narrow specialists enough (especially in financial terms).
Whenever they say "It's easy to do". Then just say "Great, you can go and do it then". Never do these things for friends. Your friends turn into clients and you get next to no compensation for it.
Electrician here. This thinking is super common. "I just need a car charger installed". Ok well I need to upgrade your service, upgrade your sub panel, double the size of the feeders into the sub panel, double the size of the underground conduit running from your house to garage, or we can run the new cables at a min height of about 10 feet above ground because it's above a driveway. It's not just screwing a box to the wall and plugging it in.
I got this idea for building a simple spacecraft to exit this universe. All I need is a space engineer who can make it happen. All you need to do is just create a faster than light warp drive and then attach it to a spacecraft and then write the code... Cake walk indeed 😂😅
I got this idea for a blood tester that can diagnose every disease with one drop of blood. I just need a few billion dollars and some doctors to whip it up.
My favourite example of this kind of thinking is all the people who have tried writing software and are terrible at it who then claim that the reason they are so terrible at it is because it's below them and they operate at some sort of higher businessy level where the real important work happens.
@@JeremyAndersonBoise More like most illustrative of how insane the "reasoning" is. It's amazing how deeply engrained anti-intellectualism has become in the world.
That and people who studied to be programmers, but never could really do it) they know the keywords, know it’s all just variables, functions and ifs and loops) they can go fuck themselves
I did have a boss/PO who dabbled in Python scripts and then ventured his scripts as a solution for a new business case. "Here, it's already done, I did it in 20 minutes".
@@Titere05I think you're clearly implying that your boss was wrong, though depending on the specifics of the problem it very well could have been solved in a python script that took 20 minutes to write. My organization tends to be on the extreme other end. Everything needs to be "enterprise" or it'll just never work. I at least once I can immediately think of wrote a tiny script in a couple of minutes that solved a major organizational issue. It just did some config to dramatically simplify the usage of a legacy piece of software. The script wasn't added everywhere just locally in the region I worked at at the time. There was a desire to roll it out throughout the entire organization but that never happened. Years later the legacy app was modified to more or less do what my script did but it did so in a very counterintuitive and inefficient way.... I'm guessing that your boss was just bad at everything and didn't actually properly conceptualize the scope of the required solution and the user training / usage requirements which I've also seen. Nothing worse than someone who can do some things, but just doesn't quite "get it" and then they become a high up manager through non technical work and just create disfunction by butting into things they don't understand every now and then.
Manager logic. Had one that thought programmers are interchangeable and someone working on a project for years could just be replaced with some other random coder and he'd immediately take over at 100% productivity. Nice reminder that to some managers, you're just a trained monkey hacking away at a keyboard and then the almighty Computor makes magic happen and software falls out.
To be fair, they have no way of knowing. They can have empathy, they can trust your statements. But apart from that its impossible for them to grasp the true nature of the job.
They think it's like a factory conveyor belt of solving simple equations that are unrelated to each other or something. Like no, I'm holding 1000 different variables and functions in my head in order to continue expanding on what already exists.
Just after I started working, I was approached by someone who needed some bespoke software to run their business and automate several processes that were being done manually using Excel. After looking at the needs I gave an estimate of how many months it would take and was told immediately they'll look for someone competent. I said it's no easy feat and can't be done quicker or cheaper. The gentleman told me he'll talk to someone who had come in and "programmed" all of Microsoft Office for him in 30 minutes. It had to be a skill issue if I needed months. Explaining the difference between installing pre-written software and building it from scratch was futile because his mind was made up. He was going to get the person who can do it in 30 minutes.
Well yeah. Guess some people are so blind to their stupidity, that they need to land - nose first - on the floor before realizing they've been in the wrong. It's okay though. These are the people, who don't need good software, but someone wasting their time. Eventually they'll learn.
@@igordasunddas3377 It's a wrong assumption that these people will ever learn, even if they fall flat on their noses. They usually blame something or someone else every single time. I've seen enough of this type of people to know that they are never going to learn anything for the rest of their lives and will thus always underperform in whatever they touch. Just stay away from those people and don't let yourself get dragged down into their pit of sh*t
I had one task at a company to add a checkbox on the website for "Tax Exempt"... Day after I started on the owner of the ticket asked if it was done yet I said NO. She was like it's only one checkbox. That one checkbox made changes to at least 50 files in the application, then the backend too, and then database modifications. I wish I could just put a checkbox on a webpage and it would know what I wanted it to do. LOL
Game development is even worse, my fav part is when people assume tech that has been done before is accessible to every other game. if "X GAME" can have 1000 players at the same place why can your game only have 4.
Oh, and to make it worse, these are the same types of people that want your game to be incredibly unique. As if it isn't time consuming as shit just to get the bare essentials working, now they want the game to do a million different unique things ONTOP of the highly immersive multiplayer experience.
While living with my parents, my older sister had more respect regarding her study hours and everything else. Heard too many times "dont make noise she is studying/resting/sleeping. Dont interrupt!" She is graduated in law and philosophy now but never liked law and only works and progressed her career with philosophy nowadays teaching... I could be interrupted anytime by any reason because tgere was the assumption that Im just in the computer (was graduating in CS at the same time as her :) ). Im not even saying that CS is harder than philosophy or the other way around. Now that they realized how profitable it is, she even recently tried a quick course (a 2 year graduation) but dropped despite her being an excellent student in other areas. The general idea and concept of what I study and work with is soooooo alien to my parents that I never got any prestige with them and she just thinks that this is just not meant for her ... :D
@@SandraWantsCoke oh... I do love them... Im just illustrating based on my experiences how people does not even have a glimpse of what CS and software engineering is and well, we are really close. Imagine society which, in general, does not care enough to have deep knowledge about anything. My sis also does not need me and is pretty succesful in her own field of expertise. She just had the wrong assumptions about CS thinking that what I have been studying even before starting any degree was easy. While not really a rocket science to do basic stuff, acquiring vast experience and research in our area does take a lot of effort which she was not prepared for but again, this happens because people just assume that since technology makes life easier, it must not be that difficult at all. Specially now that generative AIs are hot and sexy I ve been asked a couple of times by other relatives if Im worried about not having a job. :)
I'm kinda lucky my mom had programmed back in the days of Fortran and Assembler. I ended up writing my first real application, that helped sell a 100$ laptop for 400$, when I was 11 (it was a Batch script with some choice, auto starts and such for someone, who programmed car keys). Starting then even my dad, who had no clue what I was doing there, tried to ensure I've got a good computer, though he was pragmatic and just opened a book (Windows for Workgroups 3.11 back then) and asked me something, because he thought I play games on my computer all the time. After figuring out I knew what was in there, he supported me as well as he could.
Don't sweat it. Most parents are in it for the ride and doing it because everybody else was doing it. They probably still love ya. Like most parents they just know what the average Jack and Jill knows (which is usually average just to get by (and save a little cash)).
@@SandraWantsCoke In this case maybe, but I don't agree with it as a blanket statement. One does not choose his family and some parents don't deserve any love from their children.
We have got an idea for a residential skyscraper, we just need a mason, everything is pretty much figured out, we already have whole floor plan designed
These are the business types that say AI is going to replace programmers. He should have told them to use chat gpt to build it for them. Practice what you preach.
They didn't want to bother with it nor pay anything and even ChatGPT costs about 25$ a month. These kids haven't been serious to begin with and whenever I encounter something like that, if it's not coming from a friend, I don't even bother replying - there's no money to make. If it's a friend, I'll possibly make a brief deep dive into the complexity, asking questions, that my friend certainly won't know how to respond to. Then I'll tell him, that that's just the tip of the iceberg and that it takes time and thoughts to do the job of a requirements engineer as well and I am most likely not interested, especially not for free.
@@ThePrimeTimeagen Hey Prime i'm new to programing learned a lot from your this channel and also i watched your Developer productivity course on Front End Masters such an amazing course i'll try to learn more and use the linux core utilities more and more to solve simple problems if any chance you make a course about tooling it would be great
While developing a complex product with a ton of security and performance requirements, my PM wondered out loud why do things take so much time (estimations were absolutely reasonable for what needed to be done). She then proceeded to tell us that she's a technical person and she knows it can be done faster. When asked about said technical background she said she did some stuff in intro to programming during her business degree.
Such people need to learn themselves. I'd give her a simple task and tell her to go ahead and that it's a task I'd usually do in say 1SP or half a day + tests. If she takes longer, she'll come to realize, that she knows sh!t about the work and it'd probably be the last time she did that. Gotta educate these kids, who think anything during some business degree can actually match up with real life software.
I’m the only automation engineer at my company. I manage our internal automation infrastructure, CO/CD Pipelines, and our framework. I took over the framework from the previous developer and built an entire suite around it. Was being underpaid and got the mythical 30% raise and now I’m interviewing for lead Automation Architect.
Well, to be perfectly honest, this isn't as ridiculous as it sounds. Imagine Plex or Jellyfin or something. Basically you host your movies yourself and play them on devices at home. Technically though these "websites" would most likely end up being completely different.
People also underestimate how much actual work a wordpress website is. Sure I can have a wordpress website up in x amount of time and you can install any program in x amount of time. For example it takes a few minutes to install Excel. It takes a lot longer to make something useful with it.
"Having a good relationship requires danger" this is surprisingly good advice for other relationships. Putting ur emotions out there is dangerous but it's the only way to get good friendships/relationships.
I disagree on Prime's take that programmers are interchangeable unless specialized. Programmers are not interchangeable until they have "ramped up". On some code bases that ramp up period is days/weeks, on larger code bases it is months/years. For example, how many people can jump into Prime's role from off the street and be just as effective? Citation lacking, but a reading I ran across stated a theory that the main value of developers is their mental model of the system. If you know the system and need to update it - it's not bad: update A, update B, and watch out for hack C. If you don't know anything about the system, finding all of those places, debugging why Hack C no longer works, let alone being aware of it - those take a lot a time - way more than someone that is ramped up. Ergo, ramped up developers are interchangeable provided they have the specialization needed, it's not just a function of specialization but also of having a comprehensive mental model of how the system is structured.
I had a family friend say they couldn’t afford what I quoted them. I agreed to the lower price. Now, I charge per day what they paid me. Never agree to work for peanuts or even nothing, it will never end well. The only exception is perhaps for your portfolio but then what you build must be on your terms.
If they're dead to your explanations, let them have their way. They'll find out what a crappy idea that was within days or weeks. And once they're done, you can negotiate with the higher up and also suggest data migration - and bill it additionally.
My response to "Software something something... is easy" from a "business" person I always respond with: "Oh that's great to hear that it should be easy, you could probably take care of it yourself then right?"
For physical products, no one would ever even think about asking something like that. "Me and my buddy have a great idea for a new Jeans. We just need someone to sew the the stuff together, could you do that as a favor?“
If it easy as they thought , so they can just make it with MS Word then database and hoping this will work as their imagination, plus praying daily, wishing them site not being DDos attacked
I've felt that there is a sort of conflicting view of software development by non-technical people. They both think it is hard to learn to write code, but if they roughly understand a change in abstract (add a new database, add a new column to a table) then they tend to vastly underestimate the totality of the work involved.
It's not just software development. When I worked in construction (roofing in particular), it was difficult for a home owner to understand why we needed to raise the price of the job after we started tearing the roof off and saw that the entire decking underneath was completely rotted and that some of the support beams were compromised. They thought that they just needed to replace the roofing to stop the leaks and missed the point that they were lucky to alive since the entire roof could have collapsed at any moment.
That's because we got used to explain technical things in ways non-technical people could understand : that chips away a lot of the complexities of what our work is. "We just added buttons that do X" vs explaining what "X" is or how "X" works And people also forget that we, as dev, either have to translate other people's expertise in our software or ourself be the expert in that said field (My best example here are Audio programmers: gotta understand how sound waves work in order to simulate, abstract it and manipulate them digitally)
I face this not only in programming (game dev), but in my previous art career. People make the same assumptions about artists. "It's just doodles bro, just draw something up real quick, how hard can it be". Well, you do it then.
Oh, I definitely experienced this in the field of music as well, to the point where my skills are far more appreciated in the field of programming. So many want creatives for such a low payment, that I'd much rather code and potentially apply my musical skills towards the niche areas of programming (anything audio programming related). It's esp egregious for music producer jobs, which lack an understanding of timeline to get shit done. You see all these "I was able to get x amount of art done in 24 hours" videos and then people assume that you can just apply this to workers in a field as time limited as art. The fact that art focused careers don't pay similar to programming jobs is abysmal.
As a programmer, I get an unsolicited idea thrown at me every week. Just say "12 grand for one month at 5 hours a day and 4 days a week." I like the marathon metaphor, so true.
I for about a decade lived in china and i never had shortage of poeple who had business ideas they just need a guy in china who will do literally all of the work and help them fail in their most original drop shipping business ideas. Transitioning to software developments ive doubled the number of people that reach out now lol
I love when they say It is just “ something so simple” I thought you can do it for cheap If it’s so simple please do it yourself instead of wasting everyone time
As someone who has been professionally programming since 1995... I've heard this so many times. The response "I see 2 programmers..." is the correct response. "More manpower = more progress" is the fallacy that is taught in management school. It doesn't apply in R&D. "Rockstar" programmers DO exist, but they wouldn't call themselves that. There are a lot of projects/products produced by one person (whole project on their backs) and are successful. It's atypical. But they do exist and if you asked them "Would you consider yourself a Rockstar 10x er?" they would reply "No, I'm in desperate need of coding help and no one else will do it".
"Rockstar" programmers need other "Rockstar" programmers too in order to balance the work load. I often find myself in the situation that I decide to do this small thing myself that takes me 10 minutes, but explaining the whole entangled ball of system dependencies to someone else who has little to no grasp of what's going on, will cost me hours or days instead. If you work in a company where many people have become single point of failures in their own respective domains, "knowledge transfer" becomes impossible without convincing the management to double the work force first and give everyone months of uninterrupted onboarding time. You know this never happens though and you're just in for the ride before you jump the ship that is inevitably going to crash and burn. It's sadly how many companies work.
6:02 - The author meant millstone. As in the stone circle with a hole in the middle, commonly used for grinding wheat and grains into usable forms. It's great metaphorical imagery to illustrate that a business would not be able to 'keep it's head up' with a heavy stone weighing it down by the neck such as a bad website or bad app that doesn't always function correctly or crashes frequently.
Love this one. I've heard this so many times. I really hate the ""can't you just use the code you wrote for X do to Y, it's just copy and paste and change a few things, right?". So many variations on this. Great takes all around on this one. Loved the end about job security, how to bring value and interviewing/salary stuff. That stuff is super important too, not just our tech skills. Glad you cover that aspect.
A: Can you reuse the code you wrote for X to do Y? B: No, but let's discuss what we want, and we can make something reusable. A: Never mind, then. ... A: Can you reuse the code you wrote for X to do Z?
Actually the hardest people are sometimes those who "did" some programming - some even just in basic in the 80s and now think they now code is simple. Or even more later they did like some wordpress or php and now they imagine everything should be super easy even when not.
This. Beware of people who stopped on top of "Mt. Stupid" and became "business" people. Completely clueless people at least accept when you explain them that it's more complex that they think it is.
Honestly, as a developer, we have to recognize we are to blame for allowing this to happen. We have even been accomplice to it in the Scrum teams fostering this 'cogs' mindset and validating managers preconception of developers.
If you feel like you're to blame, that's fine. It's a free world I guess. I am a senior software engineer and have been working in various roles for over 13 years now (and wrote my first application when I was 11). The managers basically force us to stay concise in meetings and explain stuff using words that others can understand, possibly allowing them to imagine your progress or issue without looking through all commits and PRs. If your clients don't understand something, it's your job to break it into smaller pieces and explain those - if you're a consultant. As a team lead and support lead, I usually don't allow our clients to just say we should do x or y or z since it's so simple. We usually have business processes for that - which is where I kindly redirect them to and usually just by expressing their ideas in the initial ticket, they start to understand, that it's far from easy and CAN become simple, but only if properly designed, implemented and so on. In my presence people usually don't get to say "just adding a button" is simple without me responding to it.
I think we often underestimate the "creativity of kids" and how "kids should learn to create things". Creating is an iterative process that teaches you what to expect down the line, and people just don't have that. It's painful! When someone implies they know how long a project will take, or when they imply they've predicted everything, something makes me lose hope. They've survived 20 years in this miserable world and haven't figured out something as basic as how to make stuff.
When suits express points along the lines #3, programmers are interchangeable, I can't help myself from immediately testing that logic by quitting and watching the blaze from afar.
If the company is unlikely to be able to replace you with someone as talented, then I don't think it makes sense to say that "you're replaceable". In what sense are you replaceable if your employer needs luck, money, and time to replace you.
I really do think that building a website with a database is a simple thing, matter of fact, I think of almost any project as simple, the question is whether I'm willing to spend even a day working on it without pay, while I have quite a few projects I want to work on myself, but don't have the time for.
Yeah but is it really a website with a database? (and crud forms for the database, I assume). If it's really a website, I would unironically just create a wix account for him and tell him to watch a 15 minutes tutorial on wix's page. If it's not that, then it's not just a website and a database (and it's never just that)
Websites are super easy especially if you learned through the times of 2000-2010. I remember having to right a token-ring to remember http sessions and store them in mariadb/mysql. You don't have to do any of that today. You can just [apt-get install go] now. The new guys don't know that stuff. Instead they only use JS for the front and back end; its like java all over again.
You totally forget what happens afterwards and who will be knocking on your door if they have a successful start with their business and have customers who request stuff. They will also blame you if it inevitably stops working at some point a few months in. You will also be in for a big surprise that they still don't want to pay you as from their perspective, it's not a big deal to just add or fix "the thing". It's better to just save yourself the trouble, but whatever floats your boat. :)
One of the worst things is actually taking the job but 1) no reviews/little to no interest and/or 2) they don't end up using it. Kinda shitty when you're first trying to start your freelancing portfolio
This is a really great car engine you've designed here. Just add an extra cylinder and we'll be done. What do you mean? It's just one additional cylinder, I don't see the problem.
I'm a platform/infra guy. I deal in python and go for tools or scripts. I am never as intimidated or feel as small as when I have to work with the actual software engineers who know the language "for real". Writing terraform feels like playing in the kiddie pool. It's crazy to me someone thinking software development is easy.
15:25 I really need to write down this as a script for my next talk with my manager .... Just say: "hey I feel like I'm being really underpaid. Can you please review this for me cuz I I've been delivering all this value" (Give your big checklist) "and yet I feel like I'm not being paid adequately for this. I want to stay here. I really enjoy my job and I would like to continue to do great work for you guys"
If in the case you do decide to pick up a project from people like this, give them what they're asking for: A splash page click funnel contact form website. Make it glossy and stamped with their Logo. That immediately peaks interest without having to burn hours of software building. Stage #2: Get them to 'build out' their data structure and features in some sort of flow chart or spreadsheet. If they can't even manage this step, they aren't really business minded people, just some kids that likes to hear themselves talk.
10:00 I think this would be a prime example of a functionality that can be drastically simplified by using rust macros. But then again, why choose a more complex approach if, as you said, this is likely to be replaced with structured logging in the future? This is something I've been thinking for a while. For things that are very likely to change in the future, don't abstract more than necessary.
1. Most ideas are not unique and if they are unique, they are risky almost by definition. Probably a reason why nobody did it. 2. If I don't like them, the answer is no immediately. You do not want to work with people who will make you hate life. 1 Red flag, I'm out. 3. Compensation should be based on the opportunity costs of the developer. If all you offer is equity, then compensation should take into account the foregone salary and a risk premium based on the potential payout and probability of success (this are usually wildly overstated). Personally, I wouldn't settle for less than the largest share, take it or leave it. 4. This ain't no free ride. They don't get to eff off and do nothing, they need to earn their equity too, real value not just shuffling paper. 5. They are not my boss, this is a partnership. I will not tolerate domineering behaviors and disrespect of any kind. I don't take it even from peers, so why would I with non-techies.
solution for this is to give them a firebase site or show them shopify(for ecommerce) and let them know how much it might cost. if they have a custom idea ask them to come up with all the steps/requirements the site/app should do. and then if they say "we want users to sign up/login" reply with how do you want to store what a user has done.... make sure they are doing all the thinking and by this time most of them give up.
You know how many acquaintances tell me I should go into business with them on a tech product? Too many. Their ideas are usually garbage and they think they’re revolutionary, like a food app. I wouldn’t do this even for 500k so my answer is always no and forever no.
Worked at a place that had a ridiculous bureaucratic slog for even implementing short-term fixes. They shot down every single one of my proposals for building an actual inventory control system. I left and they are still working out of shared Excel files to manage 15000+ assets.
Love the analogy at 3:50. Simple yes. Easy no. If I explained to you what my code does, then you would be shocked at how easy it is to understand it, but to write it sometimes takes a lot of debugging.
I am a RF hardware engineer (electromagnetic designs, MCM designs) and even in our field, it is true that one who develop tools (whether that means you develop piece of software or create a design flow or develop effective simulation methodology, etc) are the one who gets more appreciation. 🙂
I think we all get these all the time. While I don’t get upset at it, it also shows how little knowledge they have, because if they were truly prepared, then they’d understand the tall order they just asked. IMO it’s also my issue with mbas in general and why a lot of business heads tend to gloss over their workers. While raising funds, speaking contracts, inking deals, and running a company is hard and stressful work (especially when it’s your own money), it’s only a small part of the larger equation…and that’s actually writing the damn thing. It tends to takes conversations like these at lot more seriously when they ask for my insight or already come prepared with the numbers “we gathered x and figured y, here’s our case study and gross estimates based on similar businesses models. We’re looking to have x features delivered to get a round of funding by y and already n prospects. We would need these many hours/programers and have raised enough for hosting costs, but need to review with a consultant”. Now THATS an opportunity we hate to miss
If your light goes on your dashboard and you find out you forgot to add a quart of oil, glad the car's program worked in time. But if you ignore it then throw a rod, then you need a GOOD MECHANIC to fix it. Sometimes in Software if display has misspelled words a simple change in the program can be simple. but if you crash a Mainframe Production with something wrong in your code then You need a talented Computer Engineer/Programers to figure it out (this is not a simple thing as remembering to add oil to your car engine and not Ignore the warning message). We used to work for hours looking at hex code dumps in the old days printed by printers and often the failure happened nowhere where the error was in the code ...
im a 10x dev, all the PRs, all the 5 mins video chats during the day, all my super smooth code makes the project happen ngl. If anything, Im very understanding and let people make some mistakes because no point in going hard on other devs, let them code and fix their bugs, everyone wins with a few bugs, the devs learn, the testers learn, its all good if the product isnt perfect,
I just read the title and saw the thumbnail and immediately knew that I would relate so hard to this video. The number of times people asked me to make a website for them. If I went through with it, I would probably barely know how to code and be a wordpress specialist.
0:25 i hate this effing statement so much "we have everything important figured out, we just need...." that would mean you do NOT have everything figured out , or that you dont consdier what the programmer's contribution is to be important...yet you dont have a functional business..strange isnt it.. the 2 "buddies" are idea men and their response shows that this string of though is just the equivalent of " im gonna pay you in exposure"
My sales manager (who views mandatory scheduled OS updates as a waste of time) recently told me that automating his reports was "not that hard". To automate his reports I needed to use Selenium and a bunch of helper API's. I got it done after several days of agonizing testing and debugging. He has no idea and never will.
Not just true for software engineering but any kind of engineering. It's something that generally only five to ten percent of the population can do it well. Management or others don't like to pay people more than they are getting paid, but often times that's how much top tier engineers are worth. On the other hand, what makes for a good manager or a good "idea" man is a greater percentage of the population, so these people just aren't worth as much, and resentment develops.
I regularly get cornered when I'm out in any social situation with alcohol by my parents friends who find out my a developer and try and drunk pitch me their amazing "app" ideas and I have to politely sit and listen for them to never message me again until I accidentally run into them at the next event and I have to hear about it all over again.
Back in 2009-ish, I had something similar happen to me. Old friend from back when we were in high school gets my phone number from another friend. (This is ~8yrs after we left high school; already had my undergrad, job, etc.) He calls me up, out of the blue, to ask that I write a game engine for him... long story short, I _didn't_ write a game engine for him 😂
When somebody asks for a rockstar programmer, I assume they're looking for somebody who wants to show up late, contribute 8 hours a week in high intensity flawless work, followed by a heroin binge and two weeks recovery. Rinse repeat
"Making internal tooling makes you more valuable" I've been trying to convince my company for a year now to give me a few weeks of EP to dramatically improve our tooling, and unfortunately it gets shut down every time.
To be fair. A website and a database are very easy to setup. You could set one up in a couple of hours. Building the underlying infrastructure was never discussed.
The optimal response would've been Prime's initial response as the second reply. "If there's not much to do and it's not worth money, then you can throw it together very quickly yourself and skip scheduling a professional's time."
Auto tech here, it usually takes longer than you'd think to fix something because the manufacturers are deliberately making things more difficult to repair. Some of this is done because of new EPA regulations that make things more complicated, some of it's done out of sheer malice. The most absurd case I've seen is on certain BMW sedans there is a little clip that secures the parking brake cable to the top of the differential. Problem is the top of the differential to the bottom of the gas tank has about 1 inch of clearance so you have to take apart the entire rear drivetrain to pull the diff. 13 hour job to replace a single little clip.
University of Kentucky started majoring in Physics, dropped out to get a job to pay for more college, got one then 3 Years in the Army, 1 in I core in Vietnam forward observer for 155 Artillery battery, Left Army I got a job then back to: UK but thought switching to Computer Science was a better choice than Physics ... for me for my interest and JOBS ... eating, etc.
it pretty much sums up all professions. If you are developing software for some professions, you mostly need better then average understanding of it on top of programming skills...
It's very common among people who do stuff on computers all the time. They use and know excel, word, have written some scripts (VB, maybe bit of python.)and that's their reference, how they imagine everything works.
I used to run a software house, and this was a common scenario. We'd have an idea for an app with an estimated operational time of one month. 'It's simple,' they said. 'We've figured everything out. All we need to do is import these Excel rules, integrate with a third-party system, enable offline functionality, and ensure syncing capabilities. The only thing you need to focus on is making it user-friendly.' But then: 'Oh, you want to meet for some diagramming and to understand our workflow?' 'Well, developers are expensive, so we'd like just one, but a good one. What? $12,000 for a month? How about two juniors instead?' 'Our total budget is actually just $10,000. You're saying we need to pay for servers, too? Are you kidding me?' And optionally: 'Okay, we'll pay more, but we require a detailed Gantt chart, and we want penalties for any delays included in the contract.' And then: 'What? Why don't you want to continue discussions with us? We're willing to PAY! WE DEMAND TO CONTINUE!'
A client once told me "My budget for the website is $5k. I want something simple, .... like Amazon".
This was actually said to me around 2010, but instead of amazon they wanted to be Visa. That's right, they wanted to be a payment gateway and payment processor sending ACH batches every day to a bank. I knew how to do it and they were actually computer system adminstrators, but that company had no idea of the sheer magnitude of what he was asking for. LOC, fraud, DoS, audit, fedgov, talking to the fbi when something goes down,..and so on and so on. They got deeper building up funds and trying to access other CC networks and the fees, memberships, bonds, insurance, and money debts scared them away. They had no clue.
I told them no, but I would consult to them where to go. They chose to quit after 8 months.
This isn't even unusual
Right click -> Save as...
@@kovacsemod🤣🤣🤣🤣
My brother once told me that he didn't like paying eBay's fees for listing, and asked me to "make him one" instead. He wanted his own eBay.
Me and my buddy have an idea for a spacecraft. We just need an engineer to build it.
They'd source all raw materials, machines & wouldn't get compensated since it's done as a favor.
@@echoman_underscoreThe funny part of this is that "idea of a spacecraft" would be the design you'd actually hire the engineer to do.
@@Murvnot only that they'd make him sign some shady disclosure papers cause this genius idea no one thought of
I have a welder and an angle grinder. If you bring some of those big metal trash cans and 170 tons of rocket fuel, we can get a prototype together.
@@Murv Nah, my buddy is very much the "ideas guy". We just need an engineer to throw something together.
When you think about it, Netflix is just a website, amirite
Tom Nook
Just a website with a database, nothing more. Easy.
Super easy, I mean I used dreamweaver, photoshop, and access back in high school. Remember MySpace? I mean we all were programmers back then.
And a database. Don't forget the database
A website, database, and oh it needs to be hosted using AWS.
At my old gig, I was the only engineer building an HPC cluster in the cloud to run our production system. I also developed all the software to run the stuff there, and wrote the terraform to deploy the resources. I got bored so I got an offer from another company and submitted my resignation. My company gave me a 60% raise and a $50k retention contract to stay another year to finish the project and disseminate knowledge. I stayed for a year after the contract ended and then got a different job. It was worth it.
That's a great payday and good for you(not being sarcastic). However, do you take any responsibility in ensuring that you are not the single soul responsible for managing such critical components? (yadayada bus factor and all that)
In essence; should the IC raise this potential issue whenever management becomes completely oblivious to it?
> Whether they 'can' or 'want to' fix it is another question..
@@hermanplatou Business leadership is responsible for risk management. Even if they know nothing of software development, they definitely understand a 1-man team running their underlying infrastructure is a high risk.
@@hermanplatou Yea definitely not the responsibility of the IC.
@@hermanplatouirrespective of the replies, I did and they didn’t.
And they were able to afford that raise and contract due to underpaying you for all that time beforehand
Being a software engineer has taught me to respect every other job. I now believe there is complexity I don't understand in every profession
Based take
That's a great default assumption.
It's more often true than not.
it's humble, but probably false for 99% of other professions.
Well, yeah, because software supports every other job so you see the gears under it all.
Sometimes writing code translates the complexity of a business so that the dumbest employee in the company "the computer" can understand it, then you realize what is important and what is not, but at that point technology and programmers become part of your business
"just a website with a database" is peak compression of information. AGI would be in shambles :)
They forgot to add "and no bugs pls", common beginner mistake.
Fast, cheap, AND good.
@@NeilHaskins Fast,Free and good. If you bill at 8$ dollars an hour for 300 hours. That's really cheap, next to nothing and basically free. But I doubt these types of people would pay 2400$ for a working product.
Instead they want you to build RUclips, Amazon or twitter from scratch for free.
I got an "offer" last year to create a crytocurrency, a crypto marketplace, a website for trading and database for FREEEEEEEE.
@@NeilHaskinsyeah sounds like they want their cake and eat it too and not consume any calories (read: become fat) as well. I wonder how that's supposed to work.
god damnit I had to do this as the only coder in a team of 5 people for my final project in uni. absolute shitshow the whole way.
I've noticed in recent years how hard it is to impress non-technical people. Last year I spent upwards of 150 hours programming an iOS app (web dev is my day job), and spent another 50 hours crash learning how to build the same thing in Kotlin/Android. I was very proud at what I created but when I showed it off to people they were genuiingly surprised the project took more than a week or two to build. This is in stark contrast to the late 90's early 2000s where people thought you were a wiz kid if you could code a up a basic website.
That said, I find that the technical work is far less difilcult than design (both product and UI). Nothing can bring a personal project to a halt faster than indecision on what features should be included or how things should look on the screen. I beleive I could make just about anything if handed a folder with all the functionality clearly defined and all the screens and UI elements already designed with production ready assets.
In this case, creating a wireframe of the UI could help spark the client's imagination. This helps get the dialog rolling, bringing up features and flows needed before you started digging into the code logic.
You lost me at "technical work is easier than design", no offense
Coz devs don't raise or COMMUNICATE issues in stand up, or sprint retrospectives. Not sure why people think keeping quiet about problems is "cool". If you think this is a "behind the scenes only" type of job and you don't like speaking up you're going to have problems.
I've literally complained about spaghetti code on several teams and explained the concept of technical debt and how it would it only make it harder to add new features for example. Got time approved to refactor and optimise (and offended some loser devs who took it personally when I showed their bad code and ask how the fuck it ever got approved in code review). Anyways you have to TALK. Actually share your screen and show the code and the issue, and the proposed solution if that helps.
Dev culture is weird. The amount of BS devs silently tolerate with is just strange and hilarious.
@@TerriTerriHotSauce
100% agree with this take. I'm as introverted as they come. I learned about 4-5 years into my career, that I have to speak up when I see stuff going sideways or even to ensure everyone is on the same page.
Too many times, I'll see two devs nodding in agreement on a plan of action, and in my head, knowing they are not at all on the same page. I used to think they'd sort it out, but after seeing one too many projects blown up by this sort of poor communication, I became the guy to start interjecting and inserting myself into conversations when needed.
Nowadays, people think I'm Mr Social at work. No, I just don't like having to fix problems that could have easily been prevented by better communicating in the meetings that everyone hates.
I recommend to never try to impress anyone with your programming skills. Remember: these people - if not developers themselves - don't understand the gibberish that is code or architecture. They only see the visuals and if those don't impress them, it's because they feel like it looks the way it's supposed to.
They don't know and don't care what it took you to design and implement it. Customers are even worse, which is why I do love software engineering, but I hate dealing with people and sadly if you want to progress, this is often the direction you'll have to be exploring most of the time, because rarely anyone values narrow specialists enough (especially in financial terms).
Whenever they say "It's easy to do". Then just say "Great, you can go and do it then".
Never do these things for friends. Your friends turn into clients and you get next to no compensation for it.
That’s when you say, I charge 300 an hour but if it’s easy you can find someone for 15 on upwork lol
Electrician here. This thinking is super common. "I just need a car charger installed". Ok well I need to upgrade your service, upgrade your sub panel, double the size of the feeders into the sub panel, double the size of the underground conduit running from your house to garage, or we can run the new cables at a min height of about 10 feet above ground because it's above a driveway. It's not just screwing a box to the wall and plugging it in.
I got this idea for a pill, I just need a chemist to whip it up.
call that old guy what's his name?
@@ea_naseer He dead
I can't believe no one has made a pill to grant immortality yet! How hard cant it be - you only need to stop the body from aging!
I got this idea for building a simple spacecraft to exit this universe. All I need is a space engineer who can make it happen. All you need to do is just create a faster than light warp drive and then attach it to a spacecraft and then write the code... Cake walk indeed 😂😅
I got this idea for a blood tester that can diagnose every disease with one drop of blood. I just need a few billion dollars and some doctors to whip it up.
My favourite example of this kind of thinking is all the people who have tried writing software and are terrible at it who then claim that the reason they are so terrible at it is because it's below them and they operate at some sort of higher businessy level where the real important work happens.
And by “favourite” you mean “most horrible,” right?
@@JeremyAndersonBoise More like most illustrative of how insane the "reasoning" is. It's amazing how deeply engrained anti-intellectualism has become in the world.
That and people who studied to be programmers, but never could really do it) they know the keywords, know it’s all just variables, functions and ifs and loops) they can go fuck themselves
I did have a boss/PO who dabbled in Python scripts and then ventured his scripts as a solution for a new business case. "Here, it's already done, I did it in 20 minutes".
@@Titere05I think you're clearly implying that your boss was wrong, though depending on the specifics of the problem it very well could have been solved in a python script that took 20 minutes to write. My organization tends to be on the extreme other end. Everything needs to be "enterprise" or it'll just never work. I at least once I can immediately think of wrote a tiny script in a couple of minutes that solved a major organizational issue. It just did some config to dramatically simplify the usage of a legacy piece of software. The script wasn't added everywhere just locally in the region I worked at at the time. There was a desire to roll it out throughout the entire organization but that never happened. Years later the legacy app was modified to more or less do what my script did but it did so in a very counterintuitive and inefficient way.... I'm guessing that your boss was just bad at everything and didn't actually properly conceptualize the scope of the required solution and the user training / usage requirements which I've also seen. Nothing worse than someone who can do some things, but just doesn't quite "get it" and then they become a high up manager through non technical work and just create disfunction by butting into things they don't understand every now and then.
I love most of your videos Prime but this one was so good and filled with advice that I think it might have becomes my favorite
oh dang! i thought this was going to be an insult due to the first couple words! what a turn around
appreciate it :)
Manager logic. Had one that thought programmers are interchangeable and someone working on a project for years could just be replaced with some other random coder and he'd immediately take over at 100% productivity. Nice reminder that to some managers, you're just a trained monkey hacking away at a keyboard and then the almighty Computor makes magic happen and software falls out.
We programmers are to blame for that perception, even more so in SCRUM teams which are dehumanizing and fosters the "interchangeable cogs" mindset
To be fair, they have no way of knowing. They can have empathy, they can trust your statements. But apart from that its impossible for them to grasp the true nature of the job.
@@pudiciogives more of a reason for the manager to at least have some experience being a programmer
They think it's like a factory conveyor belt of solving simple equations that are unrelated to each other or something. Like no, I'm holding 1000 different variables and functions in my head in order to continue expanding on what already exists.
@@pudicio I think that's a bit too generous--if they don't know, then they shouldn't be making such assumptions or claims
Just after I started working, I was approached by someone who needed some bespoke software to run their business and automate several processes that were being done manually using Excel. After looking at the needs I gave an estimate of how many months it would take and was told immediately they'll look for someone competent. I said it's no easy feat and can't be done quicker or cheaper. The gentleman told me he'll talk to someone who had come in and "programmed" all of Microsoft Office for him in 30 minutes. It had to be a skill issue if I needed months.
Explaining the difference between installing pre-written software and building it from scratch was futile because his mind was made up. He was going to get the person who can do it in 30 minutes.
LMAO! XD
Hahhaahhah
Well yeah. Guess some people are so blind to their stupidity, that they need to land - nose first - on the floor before realizing they've been in the wrong. It's okay though. These are the people, who don't need good software, but someone wasting their time. Eventually they'll learn.
@@igordasunddas3377
It's a wrong assumption that these people will ever learn, even if they fall flat on their noses. They usually blame something or someone else every single time. I've seen enough of this type of people to know that they are never going to learn anything for the rest of their lives and will thus always underperform in whatever they touch.
Just stay away from those people and don't let yourself get dragged down into their pit of sh*t
I had one task at a company to add a checkbox on the website for "Tax Exempt"... Day after I started on the owner of the ticket asked if it was done yet I said NO. She was like it's only one checkbox. That one checkbox made changes to at least 50 files in the application, then the backend too, and then database modifications. I wish I could just put a checkbox on a webpage and it would know what I wanted it to do. LOL
lol. be like, well I can add a checkbox labeled tax exempt.. but do you want it to do anything?
Game development is even worse, my fav part is when people assume tech that has been done before is accessible to every other game. if "X GAME" can have 1000 players at the same place why can your game only have 4.
Gamedev is peak “I’ve got a great idea for a game and just need a programmer to throw it together.” And it’s always an MMO
Oh, and to make it worse, these are the same types of people that want your game to be incredibly unique. As if it isn't time consuming as shit just to get the bare essentials working, now they want the game to do a million different unique things ONTOP of the highly immersive multiplayer experience.
I completely agree.
Moral of the story: say “go do it yourself” the moment you detect “it’s just a website with a database” attitude
While living with my parents, my older sister had more respect regarding her study hours and everything else. Heard too many times "dont make noise she is studying/resting/sleeping. Dont interrupt!" She is graduated in law and philosophy now but never liked law and only works and progressed her career with philosophy nowadays teaching... I could be interrupted anytime by any reason because tgere was the assumption that Im just in the computer (was graduating in CS at the same time as her :) ). Im not even saying that CS is harder than philosophy or the other way around. Now that they realized how profitable it is, she even recently tried a quick course (a 2 year graduation) but dropped despite her being an excellent student in other areas. The general idea and concept of what I study and work with is soooooo alien to my parents that I never got any prestige with them and she just thinks that this is just not meant for her ... :D
You should still love your parents and your sister, no matter what
@@SandraWantsCoke oh... I do love them... Im just illustrating based on my experiences how people does not even have a glimpse of what CS and software engineering is and well, we are really close. Imagine society which, in general, does not care enough to have deep knowledge about anything. My sis also does not need me and is pretty succesful in her own field of expertise. She just had the wrong assumptions about CS thinking that what I have been studying even before starting any degree was easy. While not really a rocket science to do basic stuff, acquiring vast experience and research in our area does take a lot of effort which she was not prepared for but again, this happens because people just assume that since technology makes life easier, it must not be that difficult at all. Specially now that generative AIs are hot and sexy I ve been asked a couple of times by other relatives if Im worried about not having a job. :)
I'm kinda lucky my mom had programmed back in the days of Fortran and Assembler. I ended up writing my first real application, that helped sell a 100$ laptop for 400$, when I was 11 (it was a Batch script with some choice, auto starts and such for someone, who programmed car keys).
Starting then even my dad, who had no clue what I was doing there, tried to ensure I've got a good computer, though he was pragmatic and just opened a book (Windows for Workgroups 3.11 back then) and asked me something, because he thought I play games on my computer all the time. After figuring out I knew what was in there, he supported me as well as he could.
Don't sweat it. Most parents are in it for the ride and doing it because everybody else was doing it. They probably still love ya. Like most parents they just know what the average Jack and Jill knows (which is usually average just to get by (and save a little cash)).
@@SandraWantsCoke In this case maybe, but I don't agree with it as a blanket statement. One does not choose his family and some parents don't deserve any love from their children.
I hate the type of person that asks you to work for free, you get this constantly as a mechanic too, unbelievable.
I'm not that kind of person. I'll give you my wife for free for 2 weeks, deal?
We have got an idea for a residential skyscraper, we just need a mason, everything is pretty much figured out, we already have whole floor plan designed
My mate Dave is a builder. He could probably throw something together. I mean, it's just a tall concrete house.
These are the business types that say AI is going to replace programmers. He should have told them to use chat gpt to build it for them. Practice what you preach.
That will be my go to response now, thanks for the idea
My god, this is perfect. I'm also stealing this.
But can we replace the company leads
They didn't want to bother with it nor pay anything and even ChatGPT costs about 25$ a month. These kids haven't been serious to begin with and whenever I encounter something like that, if it's not coming from a friend, I don't even bother replying - there's no money to make. If it's a friend, I'll possibly make a brief deep dive into the complexity, asking questions, that my friend certainly won't know how to respond to. Then I'll tell him, that that's just the tip of the iceberg and that it takes time and thoughts to do the job of a requirements engineer as well and I am most likely not interested, especially not for free.
They literally have no idea, I don't think I could've restrained myself in the response.
Feels the same
@@ThePrimeTimeagen Hey Prime i'm new to programing learned a lot from your this channel and also i watched your Developer productivity course on Front End Masters such an amazing course i'll try to learn more and use the linux core utilities more and more to solve simple problems if any chance you make a course about tooling it would be great
While developing a complex product with a ton of security and performance requirements, my PM wondered out loud why do things take so much time (estimations were absolutely reasonable for what needed to be done). She then proceeded to tell us that she's a technical person and she knows it can be done faster. When asked about said technical background she said she did some stuff in intro to programming during her business degree.
Such people need to learn themselves. I'd give her a simple task and tell her to go ahead and that it's a task I'd usually do in say 1SP or half a day + tests. If she takes longer, she'll come to realize, that she knows sh!t about the work and it'd probably be the last time she did that. Gotta educate these kids, who think anything during some business degree can actually match up with real life software.
I’m the only automation engineer at my company. I manage our internal automation infrastructure, CO/CD Pipelines, and our framework. I took over the framework from the previous developer and built an entire suite around it. Was being underpaid and got the mythical 30% raise and now I’m interviewing for lead Automation Architect.
Who needs a programmer these days when you have Snapchat AI bot?
Someone once asked me to build a Netflix clone that doesn't use the internet 💀
You ended up buying a DVD player? :D
Well, to be perfectly honest, this isn't as ridiculous as it sounds. Imagine Plex or Jellyfin or something. Basically you host your movies yourself and play them on devices at home.
Technically though these "websites" would most likely end up being completely different.
@@SandraWantsCoke should have thought of that 🤣
I mean to be fair that exists -- plex and/or jellyfin
People also underestimate how much actual work a wordpress website is. Sure I can have a wordpress website up in x amount of time and you can install any program in x amount of time. For example it takes a few minutes to install Excel. It takes a lot longer to make something useful with it.
"Having a good relationship requires danger" this is surprisingly good advice for other relationships.
Putting ur emotions out there is dangerous but it's the only way to get good friendships/relationships.
I admire Prime's perseverance and skill in always selecting all but the first and the last letter in a sentence
also leaves out the first one
ideas are dime a dozen. i have tons of those and never implemented any of them lol
5:53 Not to mention the time spent to make the software support and define the SOP( Standard Operating Procedure ) of the company.
I disagree on Prime's take that programmers are interchangeable unless specialized. Programmers are not interchangeable until they have "ramped up". On some code bases that ramp up period is days/weeks, on larger code bases it is months/years. For example, how many people can jump into Prime's role from off the street and be just as effective?
Citation lacking, but a reading I ran across stated a theory that the main value of developers is their mental model of the system. If you know the system and need to update it - it's not bad: update A, update B, and watch out for hack C. If you don't know anything about the system, finding all of those places, debugging why Hack C no longer works, let alone being aware of it - those take a lot a time - way more than someone that is ramped up. Ergo, ramped up developers are interchangeable provided they have the specialization needed, it's not just a function of specialization but also of having a comprehensive mental model of how the system is structured.
I had a family friend say they couldn’t afford what I quoted them. I agreed to the lower price. Now, I charge per day what they paid me. Never agree to work for peanuts or even nothing, it will never end well. The only exception is perhaps for your portfolio but then what you build must be on your terms.
The phrase "but I can build that in Access in 20 minutes" has become a mantra in my company
If they can do it in Access in 2 minutes, then they should do it in Access in 2 minutes and stop bothering you.
I heard that since 2016
@@evancombs5159 If they build it in Access, then somehow it becomes your responsibility to fix, when it breaks. You cannot win.
At least they’re not suggesting Excel!
If they're dead to your explanations, let them have their way. They'll find out what a crappy idea that was within days or weeks. And once they're done, you can negotiate with the higher up and also suggest data migration - and bill it additionally.
My response to
"Software something something... is easy" from a "business" person
I always respond with:
"Oh that's great to hear that it should be easy, you could probably take care of it yourself then right?"
For physical products, no one would ever even think about asking something like that.
"Me and my buddy have a great idea for a new Jeans. We just need someone to sew the the stuff together, could you do that as a favor?“
It's just a website with a database, Brah.
wheres the lie
The Hoover Dam is just a big wall with some valves.
If it easy as they thought , so they can just make it with MS Word then database and hoping this will work as their imagination, plus praying daily, wishing them site not being DDos attacked
I've felt that there is a sort of conflicting view of software development by non-technical people. They both think it is hard to learn to write code, but if they roughly understand a change in abstract (add a new database, add a new column to a table) then they tend to vastly underestimate the totality of the work involved.
It's not just software development. When I worked in construction (roofing in particular), it was difficult for a home owner to understand why we needed to raise the price of the job after we started tearing the roof off and saw that the entire decking underneath was completely rotted and that some of the support beams were compromised. They thought that they just needed to replace the roofing to stop the leaks and missed the point that they were lucky to alive since the entire roof could have collapsed at any moment.
That's because we got used to explain technical things in ways non-technical people could understand : that chips away a lot of the complexities of what our work is.
"We just added buttons that do X" vs explaining what "X" is or how "X" works
And people also forget that we, as dev, either have to translate other people's expertise in our software or ourself be the expert in that said field (My best example here are Audio programmers: gotta understand how sound waves work in order to simulate, abstract it and manipulate them digitally)
I face this not only in programming (game dev), but in my previous art career. People make the same assumptions about artists. "It's just doodles bro, just draw something up real quick, how hard can it be". Well, you do it then.
Oh, I definitely experienced this in the field of music as well, to the point where my skills are far more appreciated in the field of programming. So many want creatives for such a low payment, that I'd much rather code and potentially apply my musical skills towards the niche areas of programming (anything audio programming related). It's esp egregious for music producer jobs, which lack an understanding of timeline to get shit done. You see all these "I was able to get x amount of art done in 24 hours" videos and then people assume that you can just apply this to workers in a field as time limited as art.
The fact that art focused careers don't pay similar to programming jobs is abysmal.
As a programmer, I get an unsolicited idea thrown at me every week. Just say "12 grand for one month at 5 hours a day and 4 days a week."
I like the marathon metaphor, so true.
I for about a decade lived in china and i never had shortage of poeple who had business ideas they just need a guy in china who will do literally all of the work and help them fail in their most original drop shipping business ideas.
Transitioning to software developments ive doubled the number of people that reach out now lol
I love when they say
It is just “ something so simple” I thought you can do it for cheap
If it’s so simple please do it yourself instead of wasting everyone time
As someone who has been professionally programming since 1995... I've heard this so many times. The response "I see 2 programmers..." is the correct response. "More manpower = more progress" is the fallacy that is taught in management school. It doesn't apply in R&D. "Rockstar" programmers DO exist, but they wouldn't call themselves that. There are a lot of projects/products produced by one person (whole project on their backs) and are successful. It's atypical. But they do exist and if you asked them "Would you consider yourself a Rockstar 10x er?" they would reply "No, I'm in desperate need of coding help and no one else will do it".
"Rockstar" programmers need other "Rockstar" programmers too in order to balance the work load. I often find myself in the situation that I decide to do this small thing myself that takes me 10 minutes, but explaining the whole entangled ball of system dependencies to someone else who has little to no grasp of what's going on, will cost me hours or days instead.
If you work in a company where many people have become single point of failures in their own respective domains, "knowledge transfer" becomes impossible without convincing the management to double the work force first and give everyone months of uninterrupted onboarding time.
You know this never happens though and you're just in for the ride before you jump the ship that is inevitably going to crash and burn. It's sadly how many companies work.
Adding programmers on a LATE project, makes it LATER.
fact!
My friend reached out to me to get me to build an Uber app copy with a bunch of changes that he wanted and the pay would be $800.
wild
😂😂😂
Per hour? Take it!
6:02 - The author meant millstone. As in the stone circle with a hole in the middle, commonly used for grinding wheat and grains into usable forms. It's great metaphorical imagery to illustrate that a business would not be able to 'keep it's head up' with a heavy stone weighing it down by the neck such as a bad website or bad app that doesn't always function correctly or crashes frequently.
Love this one. I've heard this so many times. I really hate the ""can't you just use the code you wrote for X do to Y, it's just copy and paste and change a few things, right?". So many variations on this. Great takes all around on this one. Loved the end about job security, how to bring value and interviewing/salary stuff. That stuff is super important too, not just our tech skills. Glad you cover that aspect.
A: Can you reuse the code you wrote for X to do Y?
B: No, but let's discuss what we want, and we can make something reusable.
A: Never mind, then.
...
A: Can you reuse the code you wrote for X to do Z?
Reminds me on an old youtube talk from 2013 called "programming is terrible". There is a section where he describes the "idea guy".
All the hard stuff is figured out! Just need manufacturing, warehouse, marketing, sales, distribution, and admin, and we are done!
Besides doing it the project is all done ... this is what we use to say.
@@Axel_Andersen lol way more succinct than what I had. Absolutely perfect.
Actually the hardest people are sometimes those who "did" some programming - some even just in basic in the 80s and now think they now code is simple. Or even more later they did like some wordpress or php and now they imagine everything should be super easy even when not.
This. Beware of people who stopped on top of "Mt. Stupid" and became "business" people. Completely clueless people at least accept when you explain them that it's more complex that they think it is.
Me and my buddy have thousand of web dev hours to bill, just need a businessperson to pay.
Honestly, as a developer, we have to recognize we are to blame for allowing this to happen. We have even been accomplice to it in the Scrum teams fostering this 'cogs' mindset and validating managers preconception of developers.
If you feel like you're to blame, that's fine. It's a free world I guess.
I am a senior software engineer and have been working in various roles for over 13 years now (and wrote my first application when I was 11).
The managers basically force us to stay concise in meetings and explain stuff using words that others can understand, possibly allowing them to imagine your progress or issue without looking through all commits and PRs.
If your clients don't understand something, it's your job to break it into smaller pieces and explain those - if you're a consultant. As a team lead and support lead, I usually don't allow our clients to just say we should do x or y or z since it's so simple. We usually have business processes for that - which is where I kindly redirect them to and usually just by expressing their ideas in the initial ticket, they start to understand, that it's far from easy and CAN become simple, but only if properly designed, implemented and so on.
In my presence people usually don't get to say "just adding a button" is simple without me responding to it.
I think we often underestimate the "creativity of kids" and how "kids should learn to create things". Creating is an iterative process that teaches you what to expect down the line, and people just don't have that. It's painful! When someone implies they know how long a project will take, or when they imply they've predicted everything, something makes me lose hope. They've survived 20 years in this miserable world and haven't figured out something as basic as how to make stuff.
Never work for someone who devalues you.
When suits express points along the lines #3, programmers are interchangeable, I can't help myself from immediately testing that logic by quitting and watching the blaze from afar.
If the company is unlikely to be able to replace you with someone as talented, then I don't think it makes sense to say that "you're replaceable". In what sense are you replaceable if your employer needs luck, money, and time to replace you.
I really do think that building a website with a database is a simple thing, matter of fact, I think of almost any project as simple, the question is whether I'm willing to spend even a day working on it without pay, while I have quite a few projects I want to work on myself, but don't have the time for.
Yeah but is it really a website with a database? (and crud forms for the database, I assume). If it's really a website, I would unironically just create a wix account for him and tell him to watch a 15 minutes tutorial on wix's page. If it's not that, then it's not just a website and a database (and it's never just that)
Websites are super easy especially if you learned through the times of 2000-2010. I remember having to right a token-ring to remember http sessions and store them in mariadb/mysql. You don't have to do any of that today. You can just [apt-get install go] now. The new guys don't know that stuff. Instead they only use JS for the front and back end; its like java all over again.
You totally forget what happens afterwards and who will be knocking on your door if they have a successful start with their business and have customers who request stuff. They will also blame you if it inevitably stops working at some point a few months in. You will also be in for a big surprise that they still don't want to pay you as from their perspective, it's not a big deal to just add or fix "the thing".
It's better to just save yourself the trouble, but whatever floats your boat. :)
One of the worst things is actually taking the job but 1) no reviews/little to no interest and/or 2) they don't end up using it. Kinda shitty when you're first trying to start your freelancing portfolio
This is a really great car engine you've designed here. Just add an extra cylinder and we'll be done.
What do you mean? It's just one additional cylinder, I don't see the problem.
hah, that is really great way to put it
I'm a platform/infra guy. I deal in python and go for tools or scripts. I am never as intimidated or feel as small as when I have to work with the actual software engineers who know the language "for real". Writing terraform feels like playing in the kiddie pool. It's crazy to me someone thinking software development is easy.
“My brother in Christ, seek help” is the only appropriate response to anyone on linkedin
15:25 I really need to write down this as a script for my next talk with my manager .... Just say: "hey I feel like I'm being really underpaid. Can you please review this for me cuz I I've been delivering all this value" (Give your big checklist) "and yet I feel like I'm not being paid adequately for this. I want to stay here. I really enjoy my job and I would like to continue to
do great work for you guys"
If in the case you do decide to pick up a project from people like this, give them what they're asking for: A splash page click funnel contact form website. Make it glossy and stamped with their Logo. That immediately peaks interest without having to burn hours of software building.
Stage #2: Get them to 'build out' their data structure and features in some sort of flow chart or spreadsheet. If they can't even manage this step, they aren't really business minded people, just some kids that likes to hear themselves talk.
2:00 my answer:
either "what"
or "Then do it yourself lol" i would literally say "lol" irl.
10:00 I think this would be a prime example of a functionality that can be drastically simplified by using rust macros.
But then again, why choose a more complex approach if, as you said, this is likely to be replaced with structured logging in the future?
This is something I've been thinking for a while. For things that are very likely to change in the future, don't abstract more than necessary.
1. Most ideas are not unique and if they are unique, they are risky almost by definition. Probably a reason why nobody did it.
2. If I don't like them, the answer is no immediately. You do not want to work with people who will make you hate life. 1 Red flag, I'm out.
3. Compensation should be based on the opportunity costs of the developer. If all you offer is equity, then compensation should take into account the foregone salary and a risk premium based on the potential payout and probability of success (this are usually wildly overstated). Personally, I wouldn't settle for less than the largest share, take it or leave it.
4. This ain't no free ride. They don't get to eff off and do nothing, they need to earn their equity too, real value not just shuffling paper.
5. They are not my boss, this is a partnership. I will not tolerate domineering behaviors and disrespect of any kind. I don't take it even from peers, so why would I with non-techies.
solution for this is to give them a firebase site or show them shopify(for ecommerce) and let them know how much it might cost.
if they have a custom idea ask them to come up with all the steps/requirements the site/app should do.
and then if they say "we want users to sign up/login" reply with how do you want to store what a user has done....
make sure they are doing all the thinking and by this time most of them give up.
You know how many acquaintances tell me I should go into business with them on a tech product? Too many. Their ideas are usually garbage and they think they’re revolutionary, like a food app. I wouldn’t do this even for 500k so my answer is always no and forever no.
Worked at a place that had a ridiculous bureaucratic slog for even implementing short-term fixes. They shot down every single one of my proposals for building an actual inventory control system. I left and they are still working out of shared Excel files to manage 15000+ assets.
Love the analogy at 3:50. Simple yes. Easy no. If I explained to you what my code does, then you would be shocked at how easy it is to understand it, but to write it sometimes takes a lot of debugging.
I am a RF hardware engineer (electromagnetic designs, MCM designs) and even in our field, it is true that one who develop tools (whether that means you develop piece of software or create a design flow or develop effective simulation methodology, etc) are the one who gets more appreciation. 🙂
I've written *good* internal tools at every employer. Not once did it help me out-stay my peers.
I think we all get these all the time. While I don’t get upset at it, it also shows how little knowledge they have, because if they were truly prepared, then they’d understand the tall order they just asked.
IMO it’s also my issue with mbas in general and why a lot of business heads tend to gloss over their workers. While raising funds, speaking contracts, inking deals, and running a company is hard and stressful work (especially when it’s your own money), it’s only a small part of the larger equation…and that’s actually writing the damn thing.
It tends to takes conversations like these at lot more seriously when they ask for my insight or already come prepared with the numbers “we gathered x and figured y, here’s our case study and gross estimates based on similar businesses models. We’re looking to have x features delivered to get a round of funding by y and already n prospects. We would need these many hours/programers and have raised enough for hosting costs, but need to review with a consultant”.
Now THATS an opportunity we hate to miss
If your light goes on your dashboard and you find out you forgot to add a quart of oil, glad the car's program worked in time.
But if you ignore it then throw a rod, then you need a GOOD MECHANIC to fix it.
Sometimes in Software if display has misspelled words a simple change in the program can be simple.
but if you crash a Mainframe Production with something wrong in your code
then
You need a talented Computer Engineer/Programers to figure it out (this is not a simple thing as remembering to add oil to your car engine and not Ignore the warning message).
We used to work for hours looking at hex code dumps in the old days printed by printers and often the failure happened nowhere where the error was in the code ...
im a 10x dev, all the PRs, all the 5 mins video chats during the day, all my super smooth code makes the project happen ngl. If anything, Im very understanding and let people make some mistakes because no point in going hard on other devs, let them code and fix their bugs, everyone wins with a few bugs, the devs learn, the testers learn, its all good if the product isnt perfect,
I just read the title and saw the thumbnail and immediately knew that I would relate so hard to this video. The number of times people asked me to make a website for them. If I went through with it, I would probably barely know how to code and be a wordpress specialist.
0:25
i hate this effing statement so much
"we have everything important figured out, we just need...."
that would mean you do NOT have everything figured out , or that you dont consdier what the programmer's contribution is to be important...yet you dont have a functional business..strange isnt it..
the 2 "buddies" are idea men and their response shows that this string of though is just the equivalent of " im gonna pay you in exposure"
My sales manager (who views mandatory scheduled OS updates as a waste of time) recently told me that automating his reports was "not that hard". To automate his reports I needed to use Selenium and a bunch of helper API's. I got it done after several days of agonizing testing and debugging. He has no idea and never will.
'Running a marathon is simple' - from the bottom of my heart, thank you for this one.
Not just true for software engineering but any kind of engineering. It's something that generally only five to ten percent of the population can do it well. Management or others don't like to pay people more than they are getting paid, but often times that's how much top tier engineers are worth. On the other hand, what makes for a good manager or a good "idea" man is a greater percentage of the population, so these people just aren't worth as much, and resentment develops.
I regularly get cornered when I'm out in any social situation with alcohol by my parents friends who find out my a developer and try and drunk pitch me their amazing "app" ideas and I have to politely sit and listen for them to never message me again until I accidentally run into them at the next event and I have to hear about it all over again.
2:00 “My brother in christ,” is a great way to sarcastically address someone LMAO
I swear to god, if one more rando annoys me with their "amazing app idea they just need a programmer for" imma lose it.
Back in 2009-ish, I had something similar happen to me. Old friend from back when we were in high school gets my phone number from another friend. (This is ~8yrs after we left high school; already had my undergrad, job, etc.) He calls me up, out of the blue, to ask that I write a game engine for him... long story short, I _didn't_ write a game engine for him 😂
When I was about to graduate with BS in mechanical engineering, a friend asked if I could design and build her a plane...
next time I'll just send this video as a reply
When somebody asks for a rockstar programmer, I assume they're looking for somebody who wants to show up late, contribute 8 hours a week in high intensity flawless work, followed by a heroin binge and two weeks recovery. Rinse repeat
Great video with a lot of excellent information, thanks!
this video is just really good one!! thank you prime for doing it
Loved that marathon analogy. Going to have to borrow that next time.
"Making internal tooling makes you more valuable"
I've been trying to convince my company for a year now to give me a few weeks of EP to dramatically improve our tooling, and unfortunately it gets shut down every time.
"Me and my body have and idea no one ever had." Google'S first 100 hits show exactly the never seen idea.
To be fair. A website and a database are very easy to setup. You could set one up in a couple of hours. Building the underlying infrastructure was never discussed.
The optimal response would've been Prime's initial response as the second reply. "If there's not much to do and it's not worth money, then you can throw it together very quickly yourself and skip scheduling a professional's time."
Just ask them to write down the requirements for their simple business idea. Then wait 3 months for a response.
Auto tech here, it usually takes longer than you'd think to fix something because the manufacturers are deliberately making things more difficult to repair. Some of this is done because of new EPA regulations that make things more complicated, some of it's done out of sheer malice.
The most absurd case I've seen is on certain BMW sedans there is a little clip that secures the parking brake cable to the top of the differential. Problem is the top of the differential to the bottom of the gas tank has about 1 inch of clearance so you have to take apart the entire rear drivetrain to pull the diff. 13 hour job to replace a single little clip.
The mistake is to work on BMW cars in the first place. The customers are usually as annoying as the car itself too.
@@Asto508 It's an industry-wide issue, not just BMW
@@Andoxico BMW is literally doing it on purpose in order to ramp up service costs. It's part of their business model.
@@Asto508 Like I said in the OP, they're all doing that lol
University of Kentucky started majoring in Physics, dropped out to get a job to pay for more college, got one then 3 Years in the Army, 1 in I core in Vietnam forward observer for 155 Artillery battery,
Left Army I got a job then back to: UK but thought switching to Computer Science was a better choice than Physics ... for me for my interest and JOBS ... eating, etc.
Never work for people who fundamentally don't value your profession and skills.
it pretty much sums up all professions. If you are developing software for some professions, you mostly need better then average understanding of it on top of programming skills...
“My buddy and I have an idea for a business” - *let’s get people to work for us and not pay them* that’s not a novel idea but definitely ballsy.
It's very common among people who do stuff on computers all the time. They use and know excel, word, have written some scripts (VB, maybe bit of python.)and that's their reference, how they imagine everything works.
I used to run a software house, and this was a common scenario. We'd have an idea for an app with an estimated operational time of one month. 'It's simple,' they said. 'We've figured everything out. All we need to do is import these Excel rules, integrate with a third-party system, enable offline functionality, and ensure syncing capabilities. The only thing you need to focus on is making it user-friendly.'
But then:
'Oh, you want to meet for some diagramming and to understand our workflow?'
'Well, developers are expensive, so we'd like just one, but a good one. What? $12,000 for a month? How about two juniors instead?'
'Our total budget is actually just $10,000. You're saying we need to pay for servers, too? Are you kidding me?'
And optionally:
'Okay, we'll pay more, but we require a detailed Gantt chart, and we want penalties for any delays included in the contract.'
And then:
'What? Why don't you want to continue discussions with us? We're willing to PAY! WE DEMAND TO CONTINUE!'