“This project will only take 2 hours”
71–80 of 279 posts
Re: “This project will only take 2 hours”
#72We had a bunch of .xml files containing some data, and someone wanted a .csv file... sure, an hour max, and it's done. Fire up some perl, loop, xml->hash, take the data needed, print line by line, done... less than an hour.
"Hey, can you add just this and that, and separate folders for this and a total and rolling sum?"
...yeah sure... hour or two.
"and this and that?"
...sure, another hour...
"Can this be made for that department to use.. just add a simple gui"
...and we've gone from an hour or two, to weeks or months of work. Nobody wanted a gui application made for "normal users", with all the checks and verifications and documentation and everything when you made a request... the scope was a simple one-off script, and that actually took an hour or two. This is like requesting a bicycle, than wanting to add a hitch for a boat trailer and making it higway-legal. And the added problem is, that your script never intended to do "all of this", and you either have to rewrite it from scratch, or you software looks like "the Burrow" (from harry potter).
Re: “This project will only take 2 hours”
#73Earlier quoted context omitted.
> Anyone can write a rough command line tool that monitors the clipboard and prints to stdout. There's a good chance that this will solve 95% of all needs. Most of the features suggested in the article beyond the original premise are unnecessary.
>There's a good chance that this will solve 95% of all needs. Most of the features suggested in the article beyond the original premise are unnecessary. The teacher is the client. The client is the one who will better estimate what is necessary or not. If you own a company and someone wants to contract you for work, you start explaining how what the client says it needs is not necessary and how he can manage with les…
In different words: there are tens or hundreds of thousands of people who can describe software that would be very useful for them, but very few of those ideas would be profitable to fully develop.
Opportunity cost! Every stupid idea implemented snuffs out what could have been a good idea.
Re: “This project will only take 2 hours”
#74Reminds me of how some companies give take-home assignments to job candidates. > Here's a task that takes a day to do sloppily and at least two days for you to show your best work. We want to be respectful of your time so please don't spend more than 2 hours on it.
Re: “This project will only take 2 hours”
#75Earlier quoted context omitted.
This was supposed to be a student hobby project, not a company product release. You are thinking of this problem from the perspective of an enterprise programmer, not of a hobbyist enthusiast.
They are studying to become professional programmers. I think the enterprise perspective is correct, you don't want grad students with a hobbyist mindset.
Implementing every feature the Prof listed sounds like something I would only do for money.
Even professionally, there is still use for code that only ever gets run by its original author.
Re: “This project will only take 2 hours”
#76This sounds more like a problem of scope creep than unexpected complexity
Scope creep happens when you discover new requirements after defining a project scope and delivering an estimate. The type of analysis outlined in the article is helpful to define a sane and reasonable scope upfront, to hopefully avoid creep down the line.
The author defined project scope. Student discussed and came up with 4 hour estimate. Then after that estimate was made the author added a lot of requirements and said the student estimate was too low.
Re: “This project will only take 2 hours”
#77Re: “This project will only take 2 hours”
#78I've gone down this rabbitole before, and yes, there are things that take two hours, and there are things that take a lot more. The problem is the scope - ie. are you trying to do what you said you'll do (miniature software to log urls), or are you adding 100s of requirements to the scope (gui, filters, privacy,...). We had a bunch of .xml files containing some data, and someone wanted a .csv file... sure, an hour ma…
Meanwhile, on an Apple or Windows computer it can be literally just plug and print.
The difference is that hiding those arcane input parameters takes work, and a lot of it. There was a quote that it takes 10x as much effort to remove an input parameter than simply leaving it in there and letting the user fill it out.
A lot of people don't get this, and think the simpler-looking software is simple, when under the hood it is probably doing model auto-detection, driver downloads, protocol negotiation, and even firmware updates on the fly!
I face this all the time at work. "Can't you just make a single button to run this task so I don't have to figure out how to use this complicated script?"
"I can, but not with this budget..."
Re: “This project will only take 2 hours”
#79Reminds me of how some companies give take-home assignments to job candidates. > Here's a task that takes a day to do sloppily and at least two days for you to show your best work. We want to be respectful of your time so please don't spend more than 2 hours on it.
I received the task on Friday evening, I spent the week-end thinking about the problem. Monday I had actual work and on Tuesday, I spent a day coming up with a shit implementation. Then, I started improving it for two days until I think it got in a good shape. I basically wanted to transmit that I can start from the base, add functionality and then iterate on the problem by documenting, refactoring, adding tests, evolving the code base etc.
So I'd say I worked for around 24 hours over 168 hours and the feedback I got was:
> Thank you so much for your interest in joining and the time you took to submit the coding challenge. In reviewing your application though, I have decided not to invite you to the next round of interviews as I believe there are other candidates that are a better fit for what needs right now.
This is turning into a subjective rant, part of me wants to delete this but I'm just gonna go ahead and finish it; When I was younger, I used to love take-home assignments because it felt better than just doing algorithms, and then I used to get proper feedback, what I did wrong, what aspects I could improve in the future etc. This feedback gives me nothing. Just the realization I wasted time.
Re: “This project will only take 2 hours”
#80Earlier quoted context omitted.
> The programming parts of this would take 2-4 hours This is, literally, the error that the entire article works on dispelling. Anyone can write a rough command line tool that monitors the clipboard and prints to stdout. Writing a usable GUI application is a lot more work. That’s not project management, that’s coding work. The ratio of project management work to coding isn’t 10:1 or even 100:1 like you’re suggesting.
> Anyone can write a rough command line tool that monitors the clipboard and prints to stdout. There's a good chance that this will solve 95% of all needs. Most of the features suggested in the article beyond the original premise are unnecessary.
As the saying goes: The 90% of the project takes 90% of the time. Remaining 10% takes 90% of the time.