Live data from Hacker News

“This project will only take 2 hours”

web.eecs.utk.edu

21–30 of 279 posts

Re: “This project will only take 2 hours”

#21

>The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time. - Tom Cargill, Bell Labs

I really wish this weren't so true....

Re: “This project will only take 2 hours”

#22
post #9

> A few students came to me asking if I had any ideas for a software project that they could work on outside of class. > I explained an idea for a utility that I had been wanting: A desktop program that monitors my clipboard for URLs and logs them automatically. I think this person misunderstood the students, the student wanted a project to practice programming, not a project to practice project management. The progr…

> 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.

Re: “This project will only take 2 hours”

#23
post #20
post #14

Earlier quoted context omitted.

I could write it to properly log it to a user file, with reasonable default limits and take some of those as command line parameters etc, in a few hours. Running the program at start isn't programming, it is putting it in a "run on start" location, helping users do that is a part of managing the project and not programming. Figuring out what settings a user would want for it is also project management and not program…

> Running the program at start isn't programming, it is putting it in a "run on start" location, helping users do that is a part of managing the project and not programming. I'm confused by this. Any program that doesn't automatically set up this 'autostart' capability in an OS/architecture independent manner is much more of scriptkiddie solution than a real program. If a program isn't made to run on any OS and any a…

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.

Re: “This project will only take 2 hours”

#24
post #13
post #6

Honestly I learned this lesson as a young engineer, as I suspect many others did, by giving a project manager an off the cuff answer to "how long will this take". The next month of embarrassingly explaining why I was late every Tuesday and Thursday was enough for me to now take a serious amount of time, come up with a realistic estimate, and then add a lot of buffer. Better to under promise and over deliver.

There's an old saying that you can tell developer maturity by the units of time they use for estimating code. Only brand-new developers (and Sith?) estimate things in hours. Experienced devs estimate in days, but senior developers won't give you a number in increments smaller than weeks. Also, any manager who trusts an estimate from a new employee or especially a new developer is an ass. They should have known better…

Only brand-new developers (and Sith?) estimate things in hours. Experienced devs estimate in days, but senior developers won't give you a number in increments smaller than weeks

That just reflects the size and complexity of stories they're asked to estimate.

Re: “This project will only take 2 hours”

#25
post #9

> A few students came to me asking if I had any ideas for a software project that they could work on outside of class. > I explained an idea for a utility that I had been wanting: A desktop program that monitors my clipboard for URLs and logs them automatically. I think this person misunderstood the students, the student wanted a project to practice programming, not a project to practice project management. The progr…

> I think this person misunderstood the students, the student wanted a project to practice programming,

I think you misunderstood the students. The person whose was actually present at the time the words were spoken says the students wanted ideas for a “software project”, not some extremely minimalistically defined “programming problem” It’s completely reasonable to assume they wanted to practice real world software development, not just how to implement the most pedantic set of requirements possible.

Re: “This project will only take 2 hours”

#27

>The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time. - Tom Cargill, Bell Labs

I really wish this weren't so true....

Why? This is true in most processes that involve building things. It doesn’t take very long to finish the foundation and frame of a house either, but making it liveable takes quite a while.

When we build a new city hall (under time and budget by the way), the actual building was finished after a year. It took another two years to make it useable as a city hall.

Why would software engineering be any different? The only real difference is that you have to do all the parts rather than specialising in brick laying, electrical stuff, plumbing and so on. Yes, this is really how little I know about construction and I still managed all the parts of the project concerning IT and networking (without really knowing anything about the instalment sides of that beyond the blueprint and trusting my operations guys either).

So maybe I’ve talked myself into agreeing with you, but perhaps not for the same reason. Because I wish it wasn’t true either, but mainly because I wish the software development industry wasn’t still so infantile that it still can’t predict and distribute the workload in a manner so that projects can be delivered under time and budget more often than not.

Re: “This project will only take 2 hours”

#28
post #9

> A few students came to me asking if I had any ideas for a software project that they could work on outside of class. > I explained an idea for a utility that I had been wanting: A desktop program that monitors my clipboard for URLs and logs them automatically. I think this person misunderstood the students, the student wanted a project to practice programming, not a project to practice project management. The progr…

Yep, I remember telling a interviewer the multiples of 15 on FizzBuzz was project management not programming which is why it didn't do it.

Its like the programming parts of Facebook is only a weekend, the hard bit is the project management. I assume, since I don't do project management I can't calculate how long the programming parts of Facebook would take.

Re: “This project will only take 2 hours”

#29

Earlier 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.

Except it isn’t supposed to log things that aren’t urls being pasted into the browser.

Re: “This project will only take 2 hours”

#30
Was curious if I could pull this off, and managed to get a Mac version "working" at an "acceptable" (there isn't even a quit button yet) level to serve as a starting place.

Was embarrassed by the quality, since it's just 5-6 snippets (of various style) pasted together...but I might as well share it anyway to prove the point: https://github.com/owenfi/clipboardcopies

The article does strike me as "scope creep" or missing the point of the question...I've taken this super crappy version and added it to my startup items, I think I might find it useful, and if I do it might grow over time. The polish can happen later if needed. I was able to accommodate a bit of the polish out of the gate by saving to individual files based on the time. The granularity roughly corresponds with the polling frequency. (Turns out there isn't a clipboard did change notification?)

To me the "complexities" are those things lurking beneath the surface, that a newbie doesn't know how to resolve, and an expert forgets to even point out. In this case the complexities I saw were: - Getting it to run required revoking and updating my provisioning certification (could've been solved another way I'm sure), this was fast because I've done it plenty of times in the past but things like this often throw up unnecessary roadblocks that aren't foreseen in the scope. (luckily I already had Xcode installed.) - Writing to the directory I wanted (~/.clipboards) proved futile due to sandboxing, and after 5-10 minutes I just gave up, since I want to consume this in terminal I can just cd into the app bundle documents area (or fix later). - How do you get git to merge up 2 repositories that were started independently (maybe I should've started from github in the first place, but I didn't think I would be saving or sharing it).

I'm not saying it's not worth thinking those things through or practicing project management...just that the first student was right.

Post reply on HN