633 karma · joined May 3, 2012
Obviously, everyone has an opinion. You are entitled to yours.
Mine is mine and that of most UX people I have spoken to. I have used XFCE, I have used CDE, NextSTEP, the Irix UI, Gnome, KDE, Comice OS, Mint Linux, all versions of Windows, all version of Mac OS...and I happen to believe Mac OS X is the culmination of decades of gradual, tedious, laborious, unoriginal improvement. I just happen to believe it's better than any alternative. I may be wrong. I am not a man of great certainties.
My original point stands: People should spend less time repackaging existing distributions with a different logo and background image, and more time coming up with a UI that can compete with something a proprietary, profit-oriented entity came up with.
Hysterical or desperate? I do not know.
[I will get flamed for speaking that way about Gnome and KDE, but they fall a little short, IMHO. This being said, I don't blame the Gnome or KDE teams for it. I blame the gazillions of distributions that add nothing beside a theme or a background picture to the base packages they get from Ubuntu or Red Hat. At least these Haiku guys seem to be adopting a more ambitious approach.]
Why is that?
I think an awful lot of people take on projects solely to make a name for themselves...or because they truly believe they know better than Linus or some other pundit they happen to despise.
A prophecy: The first entity to put a state-of-the-art UI on top of Linux will have an opportunity to compete with Apple directly.
This being said, we know how Apple manages a 50% profit margin: Lots of people can't help themselves, THEY LOVE IT.
So...all discussions can end NOW. :)
PHP is a Web scripting language (which I consider to be very different from a general-purpose programming language or even a scripting language), designed and developed to generate markup.
I have seen a lot of "templating" libraries (Smarty among them) and all they do is mimic the basic syntax of PHP using something else that is not PHP.
I know the theory ("designers don't know how or want to program"), but learning PHP conditional statements or loops is as difficult or simple as any "templating" library that asks you to learn its exotic syntax.
Now, MVC is good and one should avoid blending presentation code with models and controllers, but most MVC frameworks fail when they require you to instantiate a gazillion extra objects, just to render a Web page.
Darn, why do people try to solve everything with technology when there is a simple solution in the physical world!?
No matter how they dice it or slice it (ah ah), it's not going to end up "realistic" for anyone who has used a sword before.
In the movie, Cicero says: "Sometimes I do what I want to do. The rest of the time, I do what I have to."
I love building things and programming, but I love it when it is a process of self-accomplishment, driven by a deep desire to create, discover and learn.
In my job environment, however, these values are irrelevant and what I love to do otherwise becomes what others trample and waste.
So, yes, do what you love to do when you can and do what you have to do the rest of the time. Unless you don't care about living under a bridge.
Clearly, there are building blocks that are useful across most applications. You can gather those into libraries and reuse them over time. But, frameworks...no, there are no silver bullets, no fat-free fat, no sugar-free sugar, etc.
Rails is a permanent train wreck. The other hundred of Ruby-based Web frameworks are adequate for small, CRUD-style applications. (BTW, I like Ruby. It's a neat little language.)
In the end, it's either PHP or J2EE in 90% of the cases for high-uptime, high-traffic Web destinations.
But, I wish for brilliant, hardworking people a better endeavor than a CRUD Web site.
Now I can continue laughing at those outfits that believe their business success is a matter of arranging Ruby, Python, Clojure, CoffeeScript, JavaScript, Scala and other technologies in some semi-magical combination.
And I can return to my review of the state of Ruby on Rails, where, nearly 5 years after Zed Shaw' "Rails is a Ghetto", it's still awfully difficult to install a single open source Rails-based app that doesn't lead you to dependency and packaging Hell.
Now, start working on the real estate site that will allow me to find homes based on price, location, school ratings, jobs, days of sunshine and crime rating. This site should allow a national search and also allow the user to assign weights to the various criteria. Presenting the result of a search as a heat map would also be helpful.
To go back to my question, there are a lot of entrenched players out there who rely on an age-old user base to keep afloat. If you can provide a better implementation without asking them to rebuild their client applications, their customers will have an easy road to migrate towards your implementation.
Let's say a software vendor out there is making a ton of money with a product that exposes a certain API.
Let's say I know a way to implement that API in such a manner that its performance will be improved by an order of magnitude. (without using any patented method in my implementation)
Can I put together that implementation and market it as a competitive product?
In my experience, APIs of commercial products are disclosed under the terms of their licensing agreement. So, one could argue that I cannot market a competitive implementation, if the license terms I agreed to (to gain knowledge of the API itself) prevent me to do so.
Can I go and implement any commercial API and sell my own implementation without having to pay any fee to the original author of the API?
That would be awesome.
So goes the wheel of progress...
I can write great code alone, in my man cave, with a glass of wine or a bottle of beer. It works for me. Coding in more public places also works for me. Coding in the backyard is great as well. Doing pair programming with a friend is also awesome.
But, I would never impose these various ways to code as being better or worse than any other.
Because Facebook got so rich so fast, there is definitely a crowd of people out there, who believe in silver bullets and who now claim that a hacker that won't join hackathons can't be good. That's nonsense.