4 ms·
Author here: First off, thank you all for the comments! Also, thank you Paul for posting this and helping me articulate my thoughts while writing it! Finally,
by Me1000 14y ago
Author here:
First off, thank you all for the comments! Also, thank you Paul for posting this and helping me articulate my thoughts while writing it! Finally, thank you to everyone who has wished me success in my future endeavors.
Although I expected this post would step on some toes and anger several people (although I tried my best not to), I'm happily surprised by the reaction in general. HN tends towards the negative, by the Twitter feedback has sparked some great discussion.
I can't respond to each thread, but I'd like to take a moment to address some misunderstandings about the post. First off, I'm not trying to sell you on Cappuccino. The project as just as strong as it has ever been and the people doing the day to day work are very dedicated. I'm also not upset that Cappuccino wasn't a massive success or that it didn't dominate the world. The use of Cappuccino in my post was purely to illustrate my point of view. We built some great software, and I'm really proud of that.
The post is more about the stagnation of the community as a whole.
It's very difficult to write this kind of post without sounding defensive or like I'm bitter because my projects weren't massively successful. I tried my best, but ultimately you read the result. The tone of the post should read more as disappointment rather than anger. I'm disappointed in what hasn't been accomplished in the last 3 years. Many of you saw how great 280 Slides was when it was first introduced, and it's regrettable that it's not available today.
I want my friends to be very successful and I have no animosity towards them. The tools exist to build great things on the web and I hope this post inspires someone to make use of them.
Many of you disagree with my assertions, and that's fine. But I'm not the only person who feels this way. Paul Irish an avid web evangelist and Tom Dale of the Ember project share my concerns. And while we might disagree on the role of the web, I think many people agree that it should empower developers to build great things.
I've seen a lot of really great developers move on to other things because they share my frustrations and disappointments.
… and yes, the bits vs bytes line about dial up was my mistake. :) but I don't think it really changes the point.
[edits for clarity and spelling]
- romain_dardour 14y agoWhile I agree about the "no reinventing the wheel" part (after all that's one of the benefits of our product), I think Cappucino had made some choices that the random developer could not come to terms with. I don't think that this is due to laziness or rouded-corner cravings (although the "new shiny toy" effect is very much existing). I think this has more to do with the different timelines web developers face when building apps. Not all of them can afford the long learning curves required by Cappucino and the fact that objective-J is only useful for Cappuccino. Not all of them need to build app-looking apps or spend lots of time bending the defaults to look like something else So the web community turns to low learning curve libraries as a side effect of not having the time to commit (as opposed to not wanting), better ones coming out all the time (things moving at a whole order of magnitude faster than in other software development areas), and using only 10% of the power brought by cappuccino. This encourages more quick, single feature libs, which in turns brings more developers into that worldview. Note that this argument is not about wether this is right or wrong. More about the why. One can note that making those micro libraries work together is getting harder and harder, and that some folks (full disclaimer, we are one of those) are building glue layers and light architectures to guide developers and ease integration and make those libraries interact together seamlessly. Take http://github.com/aurajs/aura http://github.com/aurajs/aura (that's the one we're working on). It acknowledges both the fact that small, single-feature libraries are the way the web is heading, and that making those interoperable, and easy to load (a clean module system is central to aura) needs work. Maybe small, badly written, non interoperable, single use libraries are just a step on the way to a truly modular, flexible and light web development process.
- Get404 14y agoYou and all the really great developers are welcome back to the web anytime you wish. Take a break. Enjoy your new job, and hopefully you'll gain new insights and ideas -- and share them...maybe even in new web technology. It's called burn out, and all great people experience it. If you truly love the web, it has to be unconditional, just like real life. 280 slides is gone, just like Google Reader is gone, and somebody out there will fill the gap if there is one. Web technology may be somewhat stagnant (I say it's "hindered"), but look at where the focus on technology has been since about...oh....2008. That also means there's opportunity ahead...you just have to see it. Calm before the storm, man. Now is the time to build and prepare. There won't be time to build solid technology once the next "sprint" comes. Right before the next wave, you will stop hearing people say "web and mobile." P.S. I learned Objective-C because I needed to. It was essential to my goals. Objective-J/Cappuccino never filled a need for me or my goals. It was as simple as that...with no emotions attached.
- Joeri 14y agoIf there was no iOS, objective-c would be a niche language. People learn it because they have to, not because they want to.
- Joeri 14y agoThe best of luck to you in what comes next. Personally i don't really agree with this perspective of a stagnating community. There was never this age where the majority of web apps were properly engineered, in fact they used to be much worse, and before that desktop development was an even bigger mess (visual basic, anyone?). I see a definite progression. The current "average" architecture is some sort of client-side mvc layer on top of a set of web services. That's immensely better than yesteryear's php messes.
- ajsharp 14y agoThank you for writing this. You said about 90% of what I've been thinking about the web development community, and especially the client-side JS community for a while. So many of these problems have been solved, and a lot of them were solved with Cocoa, the iOS SDK and it's approach to building rich, complex user interfaces. But, a lot of the js community is simply childish about it's approach to web development. They don't like static typing, they don't like the obj-c syntax, they're OBSESSED with micro -- they hate a framework (just use backbone!). Yet, as you point out in your post, so many of the problems we solve over and over again on the web were solved years ago by cocoa. But you know, they don't need all that "complexity". Please. I'll stop now before I get a little too hand-wavy :) The modern js developer is something akin to the antithesis of the architecture astronaut -- the architecture minimalist, or maybe the astro-hipster ;) Thanks for writing this man, looking forward to see what you build next at Google. Thanks for your contributions to Cappuccino and other open source.
- cleverleap 14y agoConservative part here :). What's good about polyglot programming? Abstracting JavaScript with Objective-J? Or even abstracting HTML with JavaScript? I do not understand these tendencies to bring desktop software development practices to the web. It is different environment. You will never get to level of precision when hacking prebuilt widgets. On the other hand I think that if the front-end is written in HAML instead of HTML, Coffee Script or Objective-J instead of JavaScript will not make application any better. It's often good usability and backend services which matter.
- espivi 14y agoStagnation of the community ? The reason why I did not consider about cappuccino is that I heard of another "new awesome framework which solves all problems" three days later. I would be delighted if the community could stagnate so I can catch up. You told about "reinventing the wheel", and that is exactly what you have done with Cappuccino no matter what you were thinking when designing it. It may be great stuff, developers have no time for this. I can't afford losing 2 weeks of work learning a new framework which hypothetically makes me a bit more productive. Micro libraries are not a "trend" and file size is not the problem. We just want to know quickly what is behind the tools we are going to use and why using these tools matters.
- dylanks2 14y agoI've been feeling similar to the way you feel for about 9 years, but with Dojo rather than Cappuccino. I stopped worrying or caring about fighting trends I cannot control years ago because it doesn't matter. I focus on building a toolkit that people use to build apps that require solid architecture and APIs. If I spent all of my time listening to or worrying about every critic or every person that doesn't get the power of having something more robust, then I would never make progress and would fail our users. You're not alone in your perspective. And yes, we were indeed all impressed with 280 Slides when it first launched.