

The power of "no" - jacobian
http://jacobian.org/writing/the-power-of-no/

======
chime
Feature-creep is definitely something to be careful of but I absolutely love
the features that were slowly added to apps like Excel over time. Same with MS
Project and even Windows. Why do so many people in the OSS and startup world
think that good apps must be minimalist? For web-apps, it makes sense to keep
things simple but I would rather have a dedicated icon and keyboard shortcut
for the tons of different tasks that I regularly do in Office apps.

It seems to me that a lot of the developers have never seen real users use
commercial software on a day to day basis and I don't even mean real power-
users. The customer service manager at my work breezes through Excel, Outlook,
and Dynamics Nav while on the phone with a customer to give them estimates on
product lead-times and changes the sales orders on the fly. She uses tons of
shortcuts and keyboard shortcuts in all the apps but in no way would be
considered a geek or techie. She's a user who has been doing this for a long
time and while she doesn't care about DB2, she is glad to have a toolbar that
can refresh external data in an Excel sheet with a single click. It makes her
life easy and enables her to take orders worth tens of thousands of dolalrs
daily. Commercial software exist not to win design or elegance awards but to
increase productivity. Also they tend to support integration with Active
Directory/LDAP, Terminal Server, Office, Outlook, and tons of Microsoft apps
that makes my life as an IT admin really easy and thus productive.

Honestly, I think us developers/designers have it wrong when it comes to UI.
We think there is only one kind of right interface and it must be a clean-cut
page with a big green call-to-action button that says "Sign Up". Anything
other than this is a mess and confuses users. Maybe this is true for webpages
visited by grandmas but I think in typical business environment, it's quite
the contrary. Users are accustomed to words and icons and expect them to work
in a similar way in every application. So if there is a Print icon in Firefox
or Excel, it must do only one thing and that is print the current document.
However, while we developers think that the 100 other icons in the same window
confuse the user, I've noticed that users don't even notice the icons they
don't immediately recognize. What does that mean? It means Office and such
feature-rich apps aren't mess but rather have a lot more functional icons that
users recognize and can immediately access. The extra icons i.e. the feature-
bloat is invisible to the user.

Also his point about not having to be bullied by management makes no
difference to anyone other than him. The users and junior developers are still
at the whim and mercy of someone who says "no" based on their own personal
opinion, no matter how technically correct it might be. I'm not saying
commercial software is superior to OSS or vice versa. I'm just saying I find
it hard to believe that OSS is getting better while closed-source software is
getting worse based on these arguments.

~~~
GrandMasterBirt
I believe minimalist approach is wrong and right at the same time. Wrong in
it's incarnation, right in it's philosophy.

1) Do one thing, do it REALLY REALLY well.

being open source, other projects can take parts of your project and build on
top of it to create a different projects (say you create a widget, and widgets
have utility functions which are useful for creating sprockets, so the
sprocket project depends on the widget project, but still remains it's own
thing.)

Often the mentioned above fact can go overlooked "I can do it better" vs "what
can I take away from that project to make a better one for my needs"

2) We still need the overarching giant featureful project. So if you create a
bunch of tools which when working together can make a web framework, why not
put some effort to make a good web framework that borrows from multiple
projects?

As a response to the article: Create the Django Complete project. In it you
integrate Django, migration, DB2 support (say a new project that gets
started), The Django bar, but in the end you don't actually get the feature
creep going into Django EVER to incorporate everything period. Instead you
have multiple specialized independent projects, all meeting together in one
project to make it better for the community.

------
barrkel
Funny thing is, in my experience, commercial software gets better with time.

I, for one, am not pining for the days of Windows 95, Office 95 and IE 3.0.

Open source, on the other hand, gets more incompatible with time. To keep up
with it, you need to constantly rewrite / re-architect your apps, or stick
with an ancient but maintained setup, if you can find one, and probably pay
for it too.

~~~
btilly
That strongly depends on which open source community you are dealing with. For
instance I know people running Perl applications that I developed a decade ago
without any changes on current versions of Perl. On the other hand I've heard
that migrating Drupal applications to a newer version can be fun.

However there is similar variation within closed source. For example the AS
400 remained binary compatible for 20 years across multiple CPUs and even a
migration from 48-bit CPUs to 64-bit CPUs. (And your applications still run
today on IBM hardware, but they've changed the name.) However if you developed
an complex application in VB 5 a decade ago, have fun porting it to any
language supported by Microsoft today!

So backwards compatibility is orthogonal to the question of open vs closed
source software.

~~~
gaius
Your VB app will still run perfectly happily on the latest Windows, even if
it's 16-bit, it's worth mentioning. I'd be willing to bet the VB5 toolchain
could too, or at least run in a VM.

~~~
btilly
The VB 5 code may run, but Microsoft doesn't support it. And migrating VB 5 to
a platform that Microsoft does support can be challenging. Which is why I
said, "...any language supported by Microsoft today!"

Furthermore the rationale for a lot of that VB 5 code was integration with MS
Office software. But that software isn't compatible with current offerings.
Therefore if you were integrating that VB into your office workflow, the fact
that it still could run doesn't stop you from being under pressure to port.

~~~
gaius
How is including a Win16 thunking layer in the OS not supporting it?

Try running an app compiled for a 1.x Linux kernel on 2.x... Or even a
different libc!

~~~
btilly
According to <http://msdn.microsoft.com/en-us/vbrun/ms788707.aspx> VB 6 was
end of lifed in March of 2008. You can no longer buy support or licenses for
VB 6. Microsoft is trying not to break running applications in Windows 7, but
has officially said that this will be the last version of the OS with support.

On the Linux example, didn't I just say that attention to backwards
compatibility is orthogonal to the source being open? I didn't use Linux as my
poster child for good reason! And even within Linux, you'll find wide
variation between distributions. (Debian being an example that is pretty good,
Red Hat being mediocre at best, and Gentoo being infamous for regularly
breaking things.)

------
fnid
The open source is heaven and closed source is hell propaganda is getting
really tired. The irrationality of many members of the open source community
hurt its image in the larger world outside.

When you say things as wrong as those said in the blog post, it makes people
skeptical of other arguments in support of open source.

~~~
GrandMasterBirt
Its not about open source vs closed source, its about corporate development in
which you are a developer with non-developers deciding what is important VS
the developer has the last say.

There are times UI suffers from this, this is why we need some non-developers
involved in these projects, we need to reach out to them.

However this is not just about "open source r0x0rs, close source s0x0rs"
argument.

~~~
fnid
This part was:

    
    
      Closed-source software gets worse with each release
      (Microsoft, Adobe, …). Open-source software gets better
      (OOo, Ubuntu, …). Discuss.

~~~
kiiski
Actually, no, it wasn't. The author made a statement and asked people to
discuss it. He never claimed it to be correct.

------
scottjackson
I'd argue that, in general, _all_ software gets better over time. I'd also
argue that there are as many exceptions to that rule in commercial software as
there are in open-source.

~~~
jparise
Software that doesn't improve over time is generally forgotten and replaced by
software that does. Given that, the software we are using at an arbitrary
point in time is likely to be in the latter category.

------
nraynaud
I strongly disagree, OpenOffice and firefox are just trying to drag their
weight, and they still try to integrate shiny stuff even when they're still
far from the par. Moreover, a bunch of dev saying "no" to a marketing team and
choosing technical stuff first is not the same as a product manager saying
"no" to everybody, being developer or marketer or customer or presales. I used
to be in this position of saying "no" (even to my boss), and you have no
friends there.

------
alex_h
I don't really see how the comparison to commercial software is useful. Of
course there are different pressures when deciding on the feature sets of
Photoshop vs Django. Would Adobe make more money, for example, if they gave
all their developers veto power over their products' features?

~~~
mncaudill
Jacob didn't bring money into the equation.

His point was that the quality of open-source software tends to go up, while
major closed-source projects' declines. Profit margin and quality don't always
correlate, especially in software.

~~~
ams6110
You are right that some crappy software is highly profitable, but to say that
Microsoft's software products have gotten worse with each release is to have a
very non-standard definition of "worse". You still might not like Windows or
Office, but on the basis of stability and usability, two attributes that most
people would correlate with quality, there is really no question that relative
quality improved from one release to the next.

~~~
selven
That's a lot more debatable than you think. Vista was crashing all over the
place back before they added some patches and service packs, and from a
usability standpoint many people despise the new ribbon interface.

~~~
JBiserkov
Vista was crashing because Microsoft finally changed the video driver model
and nVidia, Intel & ATI couldn't keep up.

The ribbon was yet another dramatic change that was long overdue. Everybody
loves it once they 'get it'.

