Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

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.


> I’m baffled by the level of offence you’re taking at the idea that this is all part of a programmer’s job.

This is a strawman, I never said these things aren't a part of a programmer's job.

> Nobody needs to go to college to become a hobbyist programmer

Nobody needs to do enterprise programming on hobby projects, you learn that on the job. For a hobby project it is more important that the project is fun, and very few find enterprise coding fun.


The opposite is actually true.

The enterprise programmer thinks nothing of deploying some J2EE monstrosity with "simple" setup scripts and "just change this Windows parameter in registry" and "run this command to create a service to start and stop from Services.msc". That's what they live and breath, that's the bar they are happy to clear.

The hobbyist enthusiast, on the other hand, will only have knowledge of actual consumer-grade software that "just works", so he will be at pains to make installation and execution simple and straightforward. He will take pride in every slick "just works" capability he can add, every tiny bit of OS integration he can squeeze, every line of setup-requirements documentation that can be removed.

One of the problems in the development of modern programming is that half the hobbyists are eventually horrified by the amount of effort it takes to develop on "modern" platforms and principles, and just give up; while the other half fall in love with such complexity, and happily proceed to add more, making the situation worse for the next generation. So development practices get harder and harder for no real reason.


> So development practices get harder and harder for no real reason.

I think it's even worse than that. I think that any time there is a widely adopted platform which is easy to customize without requiring any significant level of skill, there is some subset of people which churns out very simple tools to do popular things well enough, and stuffs those tools with adware / malware / spyware to make money. The platform vendor responds to this flood of crapware by adding new checks and processes to ensure software quality and security, and keeps doing so as long as quality and security is a problem. At a certain point, the platform in question is no longer the easiest target, and the people creating the crapware switch to the next platform, and the formerly-easy-to-deploy-to platform is now a complicated mess to write anything for.


This is probably the most accurate summary of the problems in modern development I have ever read. You're spot on. Thank you.


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


I doubt you find many grad students who spends their free time writing enterprise projects. If this was a class project, sure, but this was for something they would do on their free time for fun.


Everytime a professor has said "do this in your free time", they've really meant that it's an ungraded class project that you need to do to the same high standards. Unfortunately, you get less guidance and zero feedback, but if you don't push yourself to do well on your own you're going to fail the up coming projects that implicitly depended on your "free time" project.

In some ways, school can be more insidious in its demands than enterprise.


At that time, I enjoyed writing software only I would ever use. I can set up auto start myself ; I can log with CSV format and write a tool later to process it ; I can hardcode my exclusion list. I would still get enjoyment from the project doing all of those things. And using the clipboard API could open up my next project idea.

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.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: