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

GC is relevant because it's indicative of the problem: lots of little things add up to a big thing. It's not annoying, per se, that Norton pops up once a month to remind me that it did a scan, even though it always tries to overplay exactly how useful it's been ("Found a set of tracking cookies and disabled them! Time for virus updates! Etc.") but you do that 50 times with various programs, you got problems. GC is a very real hit in performance when the heap has become fragmented. Like I said, not a problem if you're only running a few programs, but if you're running a bunch -- especially if they are memory intensive or just poorly coded -- and every other program suffers. More to the point, the user suffers.

Going to "Programs and Features" on my Win7 box, I have over 250 programs installed. Yes, a very small number of them I don't need or want. How the heck did the "Ask Toolbar" get in there? Or MS LifeChat? But most of these programs were things I needed to have because either I purchased a piece of hardware that insisted on installing code (and usually a TSR app), I needed a utility that required an install (and might need it again), or wanted some completely other thing and it's install insisted on installing something else (Bonjour anybody?) And if I'm not mistaken, everybody with a little service or a tray icon wants to tell me something at some point in time. And most of the time that's why I'm trying to do something else. Maybe it's just me, but 99% of the time the thing I am doing is more important than the thing they want me to know.

It's easy to say that the user is somehow at fault, and I guess (?) I should vigorously spend a lot of time filtering through all my applications to make sure I always have the bare minimum? But that doesn't make much sense from a user's standpoint, does it?

I don't think of this as a freedom/monopoly thing. This is a display/gui/responsiveness architectural issue. There are simply things you can do now on Windows that you can't do on the web, and while that once was a benefit, it is now becoming a drawback. Windows needs to give the user more control and restrict the types of interactions developers can have with the user if it wants to solve this problem. Web developers have been living with these guidelines for a long time. It's nothing new or onerous. After all, if we're not in this for the users, what the heck are we doing? Perhaps the question could be rephrased: is Windows positioned as a tool for users, or as a tool for developers? Because it's not the same thing.

EDIT: Another anecdote: I bought a Sony Vaio notebook for a family member who doesn't know anything about computers and set it up for them. When you first start up the Vaio, it insists on asking you to register. Now I don't feel like registering, so I just dismissed it. But it keeps asking, and after an half hour of poking around the registry it beats the heck out of me where it's getting a hook to pop up the registration screen on boot. It is probably embedded in some of the proprietary vendor drivers. So it keeps popping up on boot, and he keeps closing the window. Every time. I guess I could spend some time with a low-level debugger and track down and "fix" it, but that's just crazy. He doesn't want to register. Go away already. Can you imagine what it's going to be like if every driver maker starts doing this? And what's going to stop them? (Please don't say windows driver certification. If you make widget X, you're going to own the drivers for it, no matter what kind of little logo you have or don't have on the side of a box somewhere)



Bonjour is the only way (to my knowledge) to get Windows to resolve mDNS (AKA Zeroconf/Avahi) names and services. Without Bonjour, you have to implement your own device and service discovery protocol and application.


MSE is a much better solution than Norton, barely any dialogs except when malicious code is detected.

GC might slow down the computer a notch, but memory leaks are way too common in frameworks that don't use GC.

This is not to say that systems with GC would have zero memory leaks, but it definitely helps.

>I don't think of this as a freedom/monopoly thing. This is a display/gui/responsiveness architectural issues. There are simply things you can do now on Windows that you can't do on the web, and windows needs to give the user more control and restrict the types of interactions developers can have with the user if it wants to solve this problem. Web developers have been living with these guidelines for a long time. It's nothing new or onerous. After all, if we're not in this for the users, what the heck are we doing?

For example, how would your proposed method restrict iTunes(which installs a whole bunch of services, startup items, etc. and tries to trick the user into installing Safari). How will this affect legacy apps? The only real solution is to move to a restrictive approval process like the App store.


Not being an active Windows user I'm not fully aware of the problem, but it sounds like you're building a duct tape defense here. Defending Norton's sins with a less well-known competitor or GC slowdowns because they're a lesser evil are both valid points

But neither approach the deeper observation that the software development community and/or conventions introduce a lot of harm in the user's perspective.

It would probably require Apple to redesign iTunes and institute a large impediment to installing legacy apps. I think that's exactly the point though, right? itunes is doing mildly hostile things and anything that's "legacy" at that point is going to be build during an era of user hostility.




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

Search: