Live data from Hacker News

“This project will only take 2 hours”

web.eecs.utk.edu

121–130 of 279 posts

Re: “This project will only take 2 hours”

#121

I'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…

I vaguely remember a rant some famous Linux developer went on about how setting up printing in Linux requires a dozen parameters, half of which are arcane nonsense that the printer manufacturer themselves probably doesn't know how to set up correctly. 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 o…

When you make one part simpler, you move that complexity to another part.

Re: “This project will only take 2 hours”

#122
It's always two rules...

- 80/20. Yeah, much of it goes quicly. But the devil is in the details, and those add up, especially when you're staring into the abyss of an unknown.

- I learned this early on in my career. It applies to just about all projects, not only software.

"It'll take twice as long (and cost twice as much) as your original back of the envelope estimate."

I wish I had $20 for everytime I saw this come true. With that kinda money Bezos and Zuck would be working for me :)

Re: “This project will only take 2 hours”

#123

I'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…

> "...just add..."

"It's just..." are the two words you never want to hear :)

Re: “This project will only take 2 hours”

#125
Encryption? A GUI for pausing rather than just stopping the process when you don't want it? Server synchronisation?

I can see why this project will take longer than 2 hours if you introduce new requirements.

I have a bash alias that almost solves the problem as stated. I'm not on my PC at the moment, but it's something like (forgive formatting on mobile, space inserts keyboard suggestions so even this much indentation involves a bunch of copy-pasting).

    while :; do
        x="$(xclip -out)"
        if [ "$x" != "$lastx" ]; then echo "$x"; fi
        lastx="$x"
        sleep 0.5
    done
If you pipe that function (I call it whilepaste) into |grep https?://, you've solved the problem as stated. If you want more, if it's not just for yourself (the author literally said they just wanted the program to use for themselves) and it needs further usability features, automatic run on startup, etc., that's a different set of requirements that you apparently didn't mention when the student posed the clarifying questions. But even so, making a tray icon and automatic startup on windows is probably approximately two hours if you're experienced in coding and just need to look those two things up. I remember doing both as a teenager back in the game maker 7 days using a DLL, so I have a vague memory of how much work this was.

I don't disagree with the general point that some problems are deceptively hard and that, if you're making this for someone else (even this tech-savvy coding teacher), you'll probably spend an afternoon with polishing and extended testing included, and that gets longer the bigger the initial estimation (the famous one-weekend project). Still, a problem like replicating Twitter is probably a better example of something that seems very simple and the amount of time needed only becomes clear once you realize how much work it is to setup all the stuff around the core function of showing short messages to followers.

Re: “This project will only take 2 hours”

#126

I'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…

I vaguely remember a rant some famous Linux developer went on about how setting up printing in Linux requires a dozen parameters, half of which are arcane nonsense that the printer manufacturer themselves probably doesn't know how to set up correctly. 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 o…

I have not experience this fool-proof plug and play on windows or mac os. I just last year replaced a printer because it wasn't working with my wife's Macbook Pro, it worked one day and just dropped of the face of the earth the next (was able to print over USB from my linux laptop still). The printers were I work constantly have issues working with the windows PCs.

Moral of the story, printers are a necessary evil and what is wrong with the world.

EDIT: For future readers if you don't see the responses. The home printer was a Brother.

Also, this is not a statement that Linux is better. Think of it as the experience of using printers in general is pretty shitty regardless what your computer is running.

Re: “This project will only take 2 hours”

#127

I'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…

I vaguely remember a rant some famous Linux developer went on about how setting up printing in Linux requires a dozen parameters, half of which are arcane nonsense that the printer manufacturer themselves probably doesn't know how to set up correctly. 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 o…

> The difference is that hiding those arcane input parameters takes work, and a lot of it.

One of the things I say often, too often, is, "Making it look easy is very very hard."

Re: “This project will only take 2 hours”

#128

A good friend was working in a scientific model for controlling weeds on farms. He couldn't code so he asked me to make it into a program: "it is very simple, only 8 steps at most". The 8 steps turned out to be a 2000 lines code after 6 months of work. Later he changed the model a few times and added a few new steps. We could only finish the prototype 16 months after starting, and after a few rewrites, with 3500 line…

Just curious - why would you use python if you don't know it?

Re: “This project will only take 2 hours”

#129
I often say that I can write a fairly acceptable, full-featured app in a couple of days, but, if I want it to be a shipping app, then expect it to take a couple of months.

I believe that schedule crunches aren't just management's fault. They are often exacerbated by engineers, not "playing the tape through," and giving unrealistic estimates, or agreeing to unrealistic estimates.

Re: “This project will only take 2 hours”

#130
post #79
post #66

Reminds 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 wonder if that's why I wasn't a good fit for a recent company I interviewed with using a take-home assignment... bear in mind it's been at least a decade since I last took a take-home, so things might have changed. 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 improv…

I had a take home a couple months ago. I'll spare you the details but if the output was to be non-hacky it was 4 or 5 days of work. I put in ~20 hrs, sent it back and said, "Here's where I'm at. I'd love to finish it but it's not reasonable to expect so much time if the final answer might be 'No thanks.' I'm not into such waterfalls..."

To this I'll add, I have a saying: "How you hire, is who you hire."

40 hrs? Waterfall? 2021?? And we all have been led to believe dinosaurs are extinct :)

Post reply on HN