Aaron Wormus' Blog:  Rewriting your Platform
607777
Sometimes developers just don't think about how much trouble they'd cause with a rewrite of existing software. They think that moving up to the latest and greatest is the way to go, and that it makes perfect sense to say out with the old and in with the new. Aaron Wormus disagrees. Well, sometimes - it depends on the circumstances, really.   At ZendCon I talked about "Planning a PHP 4 to PHP 5 codebase rewrite, a practical approach". The talk was based on my own experience, as well as famous discussion of the topic such as Joel Spolsky's "Things you should never do" and the examination of "famous" platform rewrites.   Aaron gives an example of a large company making a move from a COBOL system out to C for a mission critical system. Based on his tale, they didn't put the thought needed into making this move - new development time, keeping old developers on staff, etc - besides the fact that customers don't like change and making a move to another platform is almost definitely going to be noticed by them.
369995
New .mobi and .jobs, a shift in the ownership of .net
485277
I've been saying this ever since I started blogging.  When you have a product to announce, start a blog (if you don't already have one) and announce it. Before there were blogs, I wished Infoworld or PC Week would give space to the lead developer of the product, whether he or she is a marketer or technical, even the CEO if they wouldn't assign a former reporter or ad guy to write it, and tell us what you meant when you designed this product. Who were you thinking of and what would they do with it. And where does it go? What does 2.0 look like if it's 1.0 or 3.0 if it's 2.0.  I like it when people like Zuckerberg, Andreessen or Canter write a blog post that tells you without pulling any punches what the intent of the product is, in their own words. I'd like to hear what they said to the team that worked on it. I'd like to use my imagination. That's why I don't like Steve Jobs' keynotes, he's telling you what Eddie Haskell would say about the product to Mrs. Cleaver. You never get the intent when it's filtered by the press. And many of the people that call themselves bloggers, love them and bless them, aren't anything like bloggers, and they're everything like the bored hired writers that used to work at CNET and Fortune. In fact, many of them are exactly like them (because they are them).  We live in the age of DIY, that means if you have something to say, just say it. PS: Here's a picture of three child actors from Leave It To Beaver, taken when they're in their fifties. From left to right, Eddie Haskell, Beaver and Wally. Time Waits for No One.
389639
There is an interesting post on OnLamp.com that mentions the search for a good wiki system. Read the post to find out why the author thinks that the wiki world "needs the kind of vision that will make the product more accessible, more polished, less prone to abandonment or neglect...", and the several comments that follow.
609491
Watching various people get on an airplane to go to Hawaii to an insider invite-only Silicon Valley conference (on Twitter), and thinking about the various business ideas the valley is floating these days, advertising, and how valuations work, and how unaccustomed the insiders are at having their ideas challenged, I came to a few rapid-fire conclusions last night on Twitter. (One good reason to follow me on Twitter is I tend to blurt out things there that would get me in trouble here on my blog.) Twit #1: "I have a theory that 'user generated content' is a last-gasp of the regal outlook of silicon valley, where we're all chumps or slaves." (Before UGC we were just supposed to be eyeballs, consuming their shovelware, buying stuff we see in ads. They had to adjust their thinking when it became apparent that we were also interested in creating.) Twit #2: "The role of the tech industry is to create tools and players. To enable creativity, not harness and control it." (I think this is when it all works best.) Twit #3: "If you're scared to hear what people really think you're not prepared for the world you live in." (I finally figured this one out. The reason why so many people in SV say I can't be trusted (it's observable) is because I'm equally likely to say your product sucks as I am to say it's great. This is a culture raised on Gee Whiz editorial coverage, the adulation of MSM. When blogs came along they had to hear that not everyone thinks they're so wonderful all the time. Who would you hate most but the guy who pushed the tools that made everyone with an opinion so audible. And would you expect such a person to keep his opinion to himself? Heh.) Even though I think this, I know I'm actually full of shit... Guy Kawasaki asked me once why so many people say I'm not a nice person, when in fact I am. If I saw you on the street I'd smile and say hello. I stop when someone is in the crosswalk. Nothing makes me happier than making a tool that people enjoy. I try to listen to everyone, and I don't care how much money you have. I never answered Guy's question, but here it is. If you asked me why some individual person thinks something, I'd say you'd have to ask them. That's basic respect. Let people speak for themselves. If you ask me why 100 people think something, I'm even more clueless.  BTW, Guy and I weren't friends for a long time after being good friends for a long time. I much prefer having him as a friend, I missed his company while we weren't talking. He doesn't suffer fools, and he's the first person to question his own thinking if someone says he's wrong. I've seen him do it, and I was totally impressed. People like that figure stuff out. People who don't want to learn about bugs in their thinking go through life with a lot of bugs. Today, and beyond, everyone has great tools for saying what they think. If you can't stand to hear it, you're not going to like the future very much, sorry to say.
328638
Blog: TypePad gets improved publishing features. Movable Type gets community and goes open source.
259923
Chris Hartjes has a quick post (but complete with code) about moving files around a bit differently than the norm - it's his method for using a HTTP-PUT to push a file out.   A work project is getting close to 0.1 status. Pretty underwhelming, I know. One of the last 'milestones' for 0.1 is taking these wonderful XML documents that my web app creates and sends them to an internal web service. This web service will accept documents via an HTTP PUT [...] so I dug around a bit on the web and put together some code.   The code is a generic "publish" method that opens a stream to the remote server and, in a binary format, pushes the contents of a local file and parses out the response.
185572
On the ProDevTips.com website, there's a new tutorial (part one of a series) that walks the developer through the integration of the Zend Framework, some Ajax functionality and Smarty to create a feed reader.   In this series I will walk you through the code of a site that uses only Ajax and Scriptaculous to handle it's completely windowed interface. Making an interface like this is not really good design, it's only done here for the sake of teaching. It is kinda cool though. Especially if you have a big screen.   The source code is available for download and having it makes the installation and setup of the system much simpler. With it, you're only about fifteen steps away from getting the application up and running.
396172
Alexey Zakhlestin gave a talk for the PHPThinktank IRC channel recently on the topic of YAML, PHP, and some of the work that he's done combining the two.   It happened a bit of spontaneously, so noone was invited. It was my first try, to make introduction to yaml for php prgrammers, and if there is more interest I will give another talk which will cover more details, this time with proper scheduling :)   You can check out the log of the discussion for his entire talk (covering topics like what YAML is, where to get more information on it, some of its features, and a mention of the Syck library for parsing it).
562776
A different sort of abstraction layer project has been started up and has already seen a few releases - Forage. As mentioned on Rob Young's blog:    Recently I've been working on a search abstraction library for PHP called Forage. The idea is to bring to search what we've had for relational databases for quite a while, abstraction.    On Friday I put up a preview release with three backends; Solr, Xapian and Zend Search Lucene. At the moment it has the bare minimum of features but there will be more soon. In this post I'm going to talk a little about the motivation for the project and then walk through a short example.    He talks about the need for search abstraction (integration and resilience to change) before getting into an example of some code that grabs the data from an RSS feed, passes it in to the Xapian search engine and stores it before looking it over for thier search terms ("yahoo microsoft").   You can download the library if you'd like to try it out for yourself.
746444
Josh Sharp has posted a new article to his blog advocating something that there's still a lot of controversy around in the PHP community - frameworks (when to use them and when to not).   PHP's ease of use is also its downfall. Because there are less restrictions on the structure of the code you write, it's much easier to write bad code. But there is a solution: use a framework. [...] Of course, if you're not taken with any of the packages above you can also write your own framework, which I've done and will talk about in the next few posts. But for now, let's have a look at the common benefits of a framework.   He's broken it out to talk about the usual framework structure, MVC and how a framework can enforce good code standards. He also mentions some happy side benefits of their use including making for "pretty URLs" and the helpers that most of the frameworks come with.
431571
Can computers get along fine without writers? Word is they just might. [Missing Link]
274000
Open source is changing the game by making software free.  About time.
661935
In this new post to his blog, Richard Heyes talks about an example he's come across of PHP being used as backend behind a large marketing project:    I recently read an interesting example at Neil Shearing's internet marketing strategies blog of combining .NET desktop software with a PHP backend.   We all know PHP is often slated by "real programmers" as a scripting language only useful for kiddie's home pages, and its nice to see a serious marketer choosing PHP to power the backend to a serious piece of viral software with the potential to go load-mad.    Richard also points out some of his experience trying to market his software and which of his customers are the ones that would provide the most return (the ones looking for updates) and how he can gather their information more productively to further his project's goals.
106705
The core code for Windows is undergoing a rewrite to make it slimmer for use in a wide range of future products.
366947
Lukas Smith is sending a wakeup call to the internet providers and web hosters out there - get involved in the PHP community!   We do not seem to have any ISP's active inside the PHP community. This is kind of odd, considering that PHP seems to be driving the business of hosters quite a bit. Why have none of them decided that PHP is important enough for their business that its worthwhile to ensure that their interests are taken into account?   He makes the suggestion of passing along the suggestion to bosses/co-workers/anyone who'll listen about getting involved. Suggested places to start would be as a part of the testers group or even contributing to the migration guide.
611529
Evan Williams, the Blogger guy and Twitter co-founder, gave a talk at LeWeb3 about keeping software small, and how sometimes you can create a product by removing features from an existing product. He showed how Twitter is less than Blogger, no permalinks, titles, comments, templates, etc. It's almost nothing compared to Blogger, but we're using it and liking it. It's not a new story. When I was coming of age in computer science, the newest computers were minicomputers. They were called that because they were smaller and did less than the mainframe computers that came before. They were followed by microcomputers which did even less and were a lot more popular than minicomputers (which of course were more popular than mainframes). Scaling things down can make them more useful. But it's a paradox because once a feature is in a product you can't take it out or the users will complain so loudly that you put it back in right away. I know, I tried, a number of times to back out of features that I thought of better ways to do. You can always add features to products, it will make the existing users happy. But it often comes at a cost of making the product more complicated for first-time users, and they don't have a voice, they can't complain, they just go somewhere else, usually quietly.  So Evan has a point. Software design, if you're creating wholly new products, is like haiku. Find the smallest subset of a mature product that will attract people and ship it.  But there are certainly features they could add to Twitter that would have no impact on the steepness of the learning curve (i.e. how easy it is for a new user to get started). For example users are good at skipping over prefs they don't understand. But you have to think carefully about what the default should be, so there's no penalty for not caring.  Also features that only appear in the API have no cost in complexity of the user interface. They might make it possible for a developer to build a new product on top of the existing one. Since the user of the base product can't see the feature, it can't make it harder to learn.  Some users say they don't want new features, but I bet most of them would be very happy to use a new feature that made Twitter more fun or useful. And there are  alot of users who don't say anything about it, and don't think much about it. Most people aren't interested in theories about why products catch on, they like it or they don't, and don't know why they do or don't.  It's always good to ask questions about why things work, but if I could offer the Twitter folk any advice, I'd say don't hesitate too much to put in new features that will make users happy. Ultimately users like new features in products they use a lot. There's a reason why products tend to bloat over time, it's because users demand it. The trick is to not compromise too much on ease of learning.