Live data from Hacker News

“This project will only take 2 hours”

web.eecs.utk.edu

31–40 of 279 posts

Re: “This project will only take 2 hours”

#31
post #29

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

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

A naïve url detector isn't hard to write. A good url detector is difficult not because it is hard to code but because it is hard to understand what behaviour a user would expect.

Re: “This project will only take 2 hours”

#32
post #24
post #13

Earlier quoted context omitted.

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.

I think it has a lot more to do with how far away from academia they are. I side job as an external examination for CS students, and the way they are taught to do estimates are some of the most useless ways imaginable.

Have you ever actually seen something like a planning poker session in action amongst only juniors? I have, and while this is very anecdotal, it has always played out like this: the most confident programmer in the group grossly underestimated the task. Often this person has a valid reason to be confident, but because of this, their opinion also weighs much more heavily in the group, so that even if someone throws the 100 card, the task will still end up with a 2.

The longer you work in the real world, the more you realise that estimates aren’t a showcase of you. They are timeline project managers need to implement projects, and if you fail to give a realistic estimate then you fuck with that timeline which is often the worst thing you can possibly do as a software developer.

Even if you “know” how to implement a really simple task, you simply need to make sure there is room for a days worth of searching for something really stupid, and you’re never going to be asked to estimate something really simple. Not as a junior, not as an experienced developer and not as a senior.

I do understand why students are taught to estimate wrongly though. Their projects aren’t very long. But I personally think we are doing them a huge disfavour by making them estimate in hours. Because why wouldn’t they expect that to be the norm if that’s what they’ve learned to do?

Re: “This project will only take 2 hours”

#33
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…

A software project could be "write a web browser" or "write a bug tracker", those are much better since the interface is then an inherent part of the problem to be solved.

> It’s completely reasonable to assume they wanted to practice real world software development,

I've written real world command line utilities used by other programmers. It takes like an hour, I write the code and document how to use it in a readme, then if they have questions they just ask me. A lot of the time trying to do something complex big design up front kinda thing as suggested in this article is just a waste of time. Fiddling with UX on a project that will only ever get used by a few programmers is a waste of time.

Re: “This project will only take 2 hours”

#34
post #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 miss…

I think interpreting the intention of the author and the students should take into account that the author's research is in human-computer interaction and that the students most likely are aware of that fact as well.

Re: “This project will only take 2 hours”

#35
post #19

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.

It's not necessary coding work for someone who intends to use the project themselves and can run tail -f /var/some-log-from-a-clipboard-daemon | grep big-tld-regex They asked for a project idea and he gave them a product idea.

I would be quite happy with this, actually.

I wouldn't even bother with the tld regex and just settle for "http"

The part I'm missing is what to tail?

Re: “This project will only take 2 hours”

#36
post #29

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

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

>being pasted into the browser.

Not just the browser:

>links that I send to people across all the different messenger apps I have installed.

The article does say it might be useful to log where the URL was copied from, and potentially also where it is pasted to:

> I would also expect to know where the URL was copied from. I.e., whatever application is in focus when the clipboard is modified. It probably isn't feasible though to track everywhere it is pasted (maybe it is actually...).

Re: “This project will only take 2 hours”

#37
post #33

Earlier quoted context omitted.

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

A software project could be "write a web browser" or "write a bug tracker", those are much better since the interface is then an inherent part of the problem to be solved. > It’s completely reasonable to assume they wanted to practice real world software development, I've written real world command line utilities used by other programmers. It takes like an hour, I write the code and document how to use it in a readme…

> A lot of the time trying to do something complex big design up front kinda thing as suggested in this article is just a waste of time.

This is one of those things that comes with experience. A junior programmer will make a meal of the simplest task. An experienced developer will, if possible, interpret the problem in a way that makes the implementation trivial while still solving the user's problem. Sometimes this doesn't actually involve writing any code at all.

Re: “This project will only take 2 hours”

#38

>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

This adage forgets the last 90% of development time required after the software is released.

Re: “This project will only take 2 hours”

#39
post #23
post #20

Earlier quoted context omitted.

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

I’m baffled by the level of offence you’re taking at the idea that this is all part of a programmer’s job. Nobody needs to go to college to become a hobbyist programmer, it serves students very poorly to treat them that way. It’s the same reason we teach algorithms instead of just how to google. Code doesn’t exist in a vacuum.

Re: “This project will only take 2 hours”

#40
post #23
post #20

Earlier quoted context omitted.

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

They are studying to become professional programmers. I think the enterprise perspective is correct, you don't want grad students with a hobbyist mindset.
Post reply on HN