While in some aspects I agree, there are a few where I veer away from this concept. I like having my computer and OS, having a private area to do things like manage my photos, manage my bank accounts (not online, but via software), and do my work related tasks with the proper software. Privacy is a big part of it. I don't want all of my photos online, even if licensed or protected, they can easily find their way into the wild. The web simply is not secure enough for me to trust it with an array of things.
It does let me manage simple things like communication with friends, bookmarks, RSS, etc - and all of that is fine - but I have yet to see something on the web that compares to the tools I use for my daily work related tasks.
What are your thoughts about the privacy and concern of the control of your data?
I am still trying to convince myself that Twitter is cool. Everyone uses it, but I still can't force myself to use it on a regular basis. I use it in spurts.
Sometimes those spurts come at bad times as I get errors every 2 seconds and the make the UI worse.
I definitely understand there needs to be a consistency. There are just so many issues with Alexa, that it makes it hard for me to count it as a legitimate source of traffic. For instance, does Alexa track the following:
- RSS feeds. Twitter makes heavy use of RSS feeds to keep up to date. Now they can check the statuses from their favorite feed reader - never having to access the website.
- IM services. Again, Twitter makes heavy use of IM so that people don't even have to visit the website to get their fix.
- API services. There are many people out there making use of the Twitter API, some are caching the results - others are giving the load to the Twitter servers. Again, this is not an explicit visit to the Twitter website.
- SMS services. Twitter allows you to post/view updates via your cellphone.
If Alexa is tracking those (not sure how they could do that), then maybe its a legitimate comparison against the likes of Yahoo! or other larger sites - but without that, its missing some very important traffic. Alexa is way too narrow, which is why in this instance I would render it useless - it simply isn't a good indicator. The one true indicator is the raw server logs that can track where traffic is coming from (including the services listed above). Unfortunately, this is not always readily available for the public.
I definitely agree that there needs to be a balance, hands down. And each client will have different needs, goals, and timelines. So - that balance is taken case by case. I apologize for not stating that earlier.
I am not saying the rant is a bad thing, I have had my fair share of 'rants' that didn't cover all of the bases of my discussion. This is the Internet, communication is much tougher than if it were a conversation face to face or with a group of people. Taking that into consideration, I don't think everything he said was bad. I took the time to read it, all of it. In spite of the fact that I use both Ruby/PHP (And frameworks), I found many parts to be humorous.
I think you hit the nail on the head with:
If anything, I think it's an attack of the naive community and the illusion of perfection that hinders progress.
I understand his objection to Jeremy, as I read his post earlier in the week as well.
First off, alexa stats as your foundation? Thats a poor foundation - they simply aren't a reliable set of stats (im on a mac and don't have the toolbar, count me out of any statistics). So to _thrust_ with those as your weapon, it's pretty weak.
There are way too many other variables to the argument that he simply doesn't cover - which makes it a rant at best.
A framework that will scale? Is that just the framework or the environment that the framework sits on? I could use CakePHP on a windows box and it could perform like total crap. I could take that same application, place it on a linux server and have it perform like a charm (not to mention the server hardware itself). Claiming just a framework is a weak claim. Again, I am not anti-PHP by any means, I love it and use it on the majority of projects - but I have also worked on Rails projects and have not had issues.
Scaling is relative. Get something done, get it out the door - then worry about scaling (this can always be done later, it doesn't have to be at launch time). I think this hinders people from launching things, because they try to cover all bases of problems that don't yet exist - while never getting anything done. I am not saying to build a shoddy website for a client - but unless you are planning immediate growth, then address problems as necessary. Twitter didn't start out slow, it just gradually got worse. As I pointed out earlier, Truemors, which is running off of wordpress, what dog slow from the very beginnings. Again - there are many other variables that need to be assessed here.
I would never build something for a client knowing that it would crash the next week. But I WOULD get something done and out the door, and gradually make enhancements or improvements as necessary (whatever that may be, server hardware/software, caching, load balancing, etc). I am not proposing leaving a client high and dry - I am just proposing to get things done.
That is the beauty of frameworks, such as CakePHP and RoR. They allow you to abstract the mundane and get things done in a quick manner. Both are tools. Ruby is a beautiful language. PHP is an excellent language. Pissing in the developers or community has no linking to the language/framework itself. As I pointed out earlier -PHP has its fair share of idiots as well.
Again, I just get sick of the pissing matches. His article was a rant - a very LONG rant.
I have been using rails for a few projects recently and I really like it. Takes a little getting used to some different things, but coming from developing CakePHP apps - its pretty easy to grab on and go. I understand the criticisms, and I appreciate both languages. I think both sides have 'ego' issues - both good and bad (think: steffan esser, smart yet can't interact with people on an adult level).
I think that there are SO many variables that come into deploying an application - that comparing A versus B based only on speed isn't really a good comparison. There are some extremely slow PHP apps out there (think: the new truemors website by Guy Kawasaki - slower than Twitter - running on Wordpress). Also, compare a language for a langauge - and a framework for a framework. Anyone can pick up a framework, but not everyone can built it efficiently. This is not to say the framework/language is bad - but the developer behind might not really know how to optimize the application.
So, I think it comes down to an array of factors - not just the outside speed of a website. Server software, programming, database, caching, etc - these all come into play.
They are both tools, and when used properly can be effective. RoR is still a young framework. I love CakePHP - but it is still young and has some major improvements on the way.
I guess I just get tired of the bashing war. Do all of his stats assume you want to create the next biggest site? What if it is just about getting a job done for a client in an effective manner? Is it worth worrying about problems that don't yet exist?
I have many more thoughts on it - and please don't think im going one way or another - I enjoy both languages/frameworks - I just get tired of all of the pissing matches.
AJAX is everything flashy. It is web 2.0. It is animations. It is rounded corners. It is gradients.
Oh....wait...
My definition is pretty much what you use. It isn't anything 'special' by any means, its just another level to communicating with the server. Its a middle layer.
I think too many people associate all of the JS libraries (Prototype, Scriptaculous, Jquery, DEDchain, etc) as 'AJAX'
CakePHP has some custom routing built into it, be sure to check that section out - it will allow you to map your URLs to the structure you prefer (most of the frameworks allow custom routing).
Where it fails, and so do some of the other frameworks, is if you want multiple 'doors' (urls) that point to one base (as I discussed above). So, if I wanted www.example.com/promo/ (an easier to 'speak' or 'print' url) to point to www.example.com/2007/01/new-item-offer/ (something much more machine friendly and information friendly) or something like that, then it is a little bit trickier to achieve by just using the Framework routing options. I have found this to be true in Cake, Zend, Code Igniter, and Symfony. The option you would have goes back to mod_rewrite - which is what I have found to be the best option - simply rewrite your doorway pages to your custom routed URL inside of your framework. This way you can send the proper HTTP code with the request (301, 302, etc). This will keep your URLs neat and tidy, while still giving you great flexibility.
And, I think we can all understand getting a blog up and running, I am in the middle of re-building mine from scratch as I havent been happy with it for quite some time. Hope you can get it up and running soon!
I previously wrote about this topic as well. I consider myself very particular when it comes to URL structure. I want to be able to accommodate friendly and descriptive links - but I also want to keep them short and to the point (easy to repeat to a friend). This is why I usually allow several different structures for my URL - but make the URL friendly link the main link. My new site will house this structure better than other sites I have done.
Personally, I don't think it is any slower because I index the post slug (unique key) in the database. If you build your database structure accordingly then it will still be quick to respond.
I work for a book publisher and I use multiple URLs in several ways. I want our books to have a friendly url, but I also want our bookstores and customers to be able to find a book by an ISBN. So, I have both URLs available to them, they can type in http://www.barbourbooks.com/book/detail/{ISBN}/ which will then apply a 301 redirect to the SEF url. Having one central location is key to maintaining a nice index (as well as avoiding looking to serve up duplicate content on 2 urls). This just gives your visitors multiple doors into your website - short and sweet URLs.
I think the key is to have the proper database structure, map out the possible doors to the website, decide on a 'main' page that will be the end landing page, and then understand your HTTP codes to send the proper code with the proper request (301, 302, etc).
And, though I hate the www. as well, I have all requests routed to use the www no matter where they come in, so its not important one way or the other - this was just a piece that was used on our site for previous years (and is in our printed marketing material).
Last 10 Comments
1
2
3
4
5
6
7
8
9
10