- About DMCI :
- Larry Ullman :
- Books :
- Forum :
- Contact :
- Newsletter Signup :
- Newsletter Archives :
- Blog :
Newsletter Archives
What is Larry Thinking? #26 (March 18, 2010)
In this edition...
- About This Newsletter
- On the Blog => The First Rule of User Interface
- On the Blog => The Economics of Publishing
- On the Blog => What's New in Yii 1.1
- On the Web => EasyPHP
- On the Web => PHP in Facebook
- Q&A => With the availability of so many PHP frameworks, what is the role of PEAR? Is it still useful?
- Q&A => From your perspective, as a PHP expert, do you think more and more computer people are learning applications (Drupal, Joomla, osCommerce), and not learning "core PHP language" stuff?
- Q&A => Where is PHP headed? Is there a future for PHP and if so do you see it becoming more widespread or being superceded by other newer technologies?
- What is Larry Thinking? => Starting a New Business, Follow Up
- Larry Ullman's Book News => Effortless Flex 4 Development
About This Newsletter
First, in my previous newsletter, I mentioned how lame the title of this newsletter was: "Larry Ullman's Newsletter". One reader, Chris, pointed out that the title is actually "What is Larry thinking?", which he thought pretty good. Apparently I did too, at one time, but I am shamefully forgetful, even about what I've written! So "What is Larry thinking?" it is, and what I'm currently thinking is that I'm at least 20% less smart since I had kids. Anyway, thanks to everyone for their responses and questions. Here's some more stuff that I thought was notable over the past month, with a heavy PHP bias (which I gather is what most subscribers prefer)...
On the Blog => The First Rule of User Interface
A little while back I posted a brief discussion of what I'm calling "The First Rule of User Interface". I've been thinking about UI so much for the past year and a half: I'm not sure why, maybe I'm just tired of running into terrible, live examples online (there's one mentioned in that post). The rule is simple: a proper user interface sets the user up to succeed. For more on that, see the post. I've got a few more posts on this subject in the pipeline as well.
On the Blog => The Economics of Publishing
A good New York Times article and a couple of blog posts from other writers has led me to a couple of posts on the economics of publishing (first and second). This particular topic seems to be even more pressing these days with the increased interest in e-books. Many people, apparently, think e-books should be way cheaper, because there's no physical printing and shipping costs involved. Still, there are legitimate costs with even electronic editions of books and no one--the publisher or the writer--is making nearly as much money as many seem to think. It reminds me of the uproar when compact discs first came out because they were cheaper to manufacture than audio tapes. However, in that case, the music companies charged more for the CDs than they did for the tapes: justification indeed for the outrage!
On the Blog => What's New in Yii 1.1
Version 1.1 of the Yii framework came out in January and I finally made the time to post about the changes and to update my "Learning the Yii Framework" series.
On the Web => EasyPHP
A reader in the forum had mentioned that EasyPHP now has a PHP 6 installer available. This is an all-in-one Apache, PHP, and MySQL package for Windows. Of course they offer production-quality PHP 5 versions, but if you'd like to play around with PHP 6 (and are using Windows), EasyPHP is an, um, easy way to make that happen. It's available for free but donations are requested.
On the Web => PHP in Facebook
In response to my last newsletter, someone referred me to this article on how PHP is used to run Facebook. The article is detailed, although a bit technical, and walks through how Facebook created an internal system that turns PHP code into C++ so that it can run even faster. It always amazes me that some people think PHP doesn't scale well or isn't a "big-time" development tool when sites like Facebook and Yahoo! run using PHP. You really can't get any more demanding than that! And my thanks to Steve for sending this along.
Q&A => With the availability of so many PHP frameworks, what is the role of PEAR? Is it still useful?
This is a very good and interesting question, in my opinion. PEAR, in case you're not familiar with it, is a public library of PHP code that can be used piecemeal as needed (like CPAN for Perl). I've used and written about PEAR for years. Often, the right PEAR package is the perfect solution for a task, such as Geo IP Location (looking up a user's location in the world based upon their IP address), HTML form creation and validation, using Web services, and much more. There are two things that distinguishes PEAR from most frameworks. First, an entire site isn't written in PEAR the way it is in a framework. Second, you can use individual PEAR modules as needed. Most frameworks, the exception I know of being Zend, require you to use the entire framework for everything. If I was already using a framework, I would probably turn to it for solutions to problems. In fact, if I'm going to choose a framework for a site, I'd probably do so while considering if that framework has the built-in features I'll need. If I'm not using a framework but have a few more complex needs, I'd definitely still consider PEAR. You can, if you need, use PEAR within a framework, doing so will just take some extra effort.
Thanks to Daniel for the question.
Q&A => From your perspective, as a PHP expert, do you think more and more computer people are learning applications (Drupal, Joomla, osCommerce), and not learning "core PHP language" stuff?
I've seen this question, in different forms, a couple of times now, both with respect to Drupal et al. and frameworks like Yii. Personally, I can't imagine using software like Drupal, let alone a framework, without an understanding of the underlying technologies but I admittedly have difficulty using things from a higher vantagepoint when I'm used to being on the ground getting my hands dirty. That being said, it seems that there are plenty of people out there using Drupal, Joomla, and others without being able to write PHP code themselves. Most importantly, I'm a big proponent of accomplishing what you want to accomplish, and if some tool makes that possible without learning PHP, more power to you. The person who sent in this question (thanks, Rick!) said he spends more time learning Drupal and not that much time learning PHP, but that it's working for him, which is all that really matters, I think.
Q&A => Where is PHP headed? Is there a future for PHP and if so do you see it becoming more widespread or being superseded by other newer technologies?
Predicting the future of technologies isn't my strong suit, I should start by saying. PHP has been around for more than 15 years now and I've been using it for over 10 (which seems amazing to me as I write this). I generally tend to think that something newer and better is inevitably around the corner, just as PHP replaced CGI scripts (written in C or Perl) as the best way to dynamically handle Web user interactions. On the other hand, Perl and C weren't really intended for the Web, whereas PHP was, so replacing them made sense. According to the TIOBE Programming Community Index, a fascinating study, if you're not familiar with it, PHP is now the number 3 most used language (what the index actually measures isn't that simple but...). So I guess I'd start by saying that I'd be surprised if PHP wasn't still a prominent force in Web technologies in 5-10 years from now. The numbers indicate that PHP's usage remains quite strong and I don't think Web-related technologies are changing quite as fast as they once did, especially on the server side of things. I do wonder if server-side JavaScript is going to make a good showing, but that's another topic.
As for where PHP is headed, support for Unicode in PHP 6 will be a major change. By supporting Unicode, PHP 6 will be able to work with any language in many ways. Not only will PHP be able to handle and manipulate strings in any language, but you'll also be able to write function and variable names in your native tongue (as an English-only person, I can only imagine how nice that will be for others). I'll also be curious to see if changes in HTML 5, which will come out some decade, will impact PHP, too.
My thanks to Jason for the question.
What is Larry Thinking? => Starting a New Business, Follow Up
In my previous newsletter, I wrote about creating new business and some advice I have towards that end. I received a couple of poignant responses to that thread, and I thought I'd share what Ross had to say in particular.
Ross first relayed an amusing anecdote about a business venture he and some partners started some time back. One business partner thought it imperative that a good impression would be made by having really flashy business cards, so they spent $800 (US) on professional cards...before they had a fully working site or any customers! When the business shuttered its doors some time later, without ever getting any customers, that $800 represented half of the expenses they put into the project. I find this particularly amusing because I don't even have business cards. When I'm about to go to a conference or something, I print out a few totally cheap cards using my inkjet printer. If anything, people now remember when they met me because I'm the guy with the crap business cards. As an aside, this also kind of reminds me of the search engine optimization techniques (SEO) you hear about. The fact of the matter is that good content is by far the biggest factor in SEO; everything else is trivial in comparison, just like flashy business cards are nothing without a good, working product.
On the other side, Ross also mentioned a successful venture he created: an online gaming site. He developed most of the site for no money, cobbling it together. Once it was ready enough to go live, he started with "super-cheapo" hosting. For a few months he was able to use that cheap setup while testing, debugging, and improving the site. Once its usage and demands exceeded the hosting environment, he moved to a dedicated server and, by that time, he had enough paying users to offset those costs. In time usage spiked, so he added another dedicated server. Ross says "Still, it was only a few days of bad service, and it was again a sure sign I had enough paying customers to be able to afford the upgrade. All in all not too much risk, and it always seemed pretty obvious when an upgrade was needed."
This is an example of exactly what I would advise people to do: develop a site, as completely as possible, on your own computer for little to no cost. Then put it online, using a relatively inexpensive hosting company. When the demands of the site outgrow the hosting environment, upgrade. In Ross's experience, switching hosts wasn't always easy, so you can minimize the potential problems by trying to stay with one host as much as possible. That isn't always possible--for example, a cheap hosting company isn't also likely to provide dedicated servers (or, even if they do, maybe they shouldn't). Over time I've come to truly appreciate the peace of mind of good hosting, so perhaps I would recommend starting with a cheap plan with a good company (which, comparatively, would be an expensive plan for a cheap company), so that you can upgrade to that company's bigger plans when/should that time come.
Larry Ullman's Book News => Effortless Flex 4 Development
I'm continuing to work on my next book, still titled Effortless Flex 4 Development. I've finished the first six chapters (out of maybe 15 or 16) and it should still be coming out in May or June. I'm in the thick of Part 2 now, which focuses on data: displaying it using Flex, different data formats, and transmitting data between the client and the server. Fun stuff! Right now I'm trying to choose which Web services I'll demonstrate: Amazon, Google, Yahoo!, Flickr, etc. I believe Peachpit Press is going to put an excerpt of the book on their Web site next week, and it'll be made available through their Rough Cuts series shortly thereafter.
Read Current Newsletter
Past Issues
#1 (June 25, 2007)
- About this Newsletter
- On the Web => PHPSecInfo
- In the Forums => Preventing Spam through PHP
- What is Larry Thinking => Creating a Successful Web Site, part 1
- Book Giveaway Update
- My Book News
#2 (July 10, 2007)
- About this Newsletter
- Q & A => Why not do a blog instead?
- On the Web => Improving MySQL Performance
- What is Larry Thinking => Creating a Successful Web Site, part 2
- Book Giveaway Update
- My Book News
#3 (August 8, 2007)
- About this Newsletter
- On the Web => The End of PHP 4
- What is Larry Thinking => Spam, Spam, Spam
- Book Giveaway Update
- My Book News
#4 (August 26, 2007)
- About this Newsletter
- Q & A => What kind of Web hosting do I need?
- What is Larry Thinking => Finding a Good Web Host
- Book Giveaway Update
- My Book News
#5 (October 1, 2007)
- About this Newsletter
- Q & A => What is a JavaScript-free, universally accessible no-spam solution that allows people to contact you through a Web site?
- What is Larry Thinking => Introducing Adobe AIR
- Book Giveaway: Building a Web Site with Ajax: Visual QuickProject
- My Book News
#6 (November 7, 2007)
- About this Newsletter
- What is Larry Thinking => Introducing "PHP 6 and MySQL 5 for Dynamic Web Sites: Visual QuickPro Guide (3rd Edition)"
- Book Giveaway: "PHP 6 and MySQL 5 for Dynamic Web Sites: Visual QuickPro Guide (3rd Edition)"
- My Book News
#7 (November 27, 2007)
- About this Newsletter
- On the Web => QuickSilver
- What is Larry Thinking => About Apple, Macs, and Mac OS X
- What is Larry Thinking => My Favorite Applications
- My Book News
#8 (December 19, 2007)
- About this Newsletter
- Have you done work for readers? Are you available for hire?
- How do you manage your time/workload? How long does it take to write a book?
- How did you teach yourself PHP? MySQL?
- When you get stuck with a php problem or other language problem, where do you turn to for help?
- Is there any thing that you still consider hard to do on the computer, or that you've had trouble doing, or have had trouble learning?
- What are your favorite tools of the trade, editors and such?
- Besides your books, what other authors do you respect and recommend?
- What is Linux and what makes it better than other OS's? Which version of Linux do you recommend?
- Do you feel that it's best to build a project with an open source resource or to start from scratch and why?
- What should I do/learn/pursue?
#9 (January 17, 2008)
- About this Newsletter
- On the Web=> Sun to buy MySQL
- Q & A => How do you install PHP 6 when it hasn't yet been released?
- In the Forums => Developing an E-Commerce Site
- Book Giveaway Update => "PHP 6 and MySQL 5 for Dynamic Web Sites" Books Have Been Mailed
- My Book News => "Adobe AIR: Visual QuickPro Guide" Available in Rough Cuts
#10 (February 18, 2008)
- About this Newsletter
- Q & A =>What are some of your favorite hobbies, outside of computers?
- Q & A =>When should I use OOP vs procedural programming?
- Q & A =>When should I use a framework?
- Q & A =>What mailing list software do you recommend?
- What is Larry Thinking=> The Story of My Dryer
- My Book News => "Adobe AIR: Visual QuickPro Guide" Update
#11 (March 23, 2008)
- About this Newsletter
- On the Web => Larry Appearing at the Voices That Matter Web Design Conference
- What is Larry Thinking=> The Adobe Air Experience
- Book Giveaway => "Adobe AIR: Visual QuickPro Guide" and others
- My Book News => "Adobe AIR: Visual QuickPro Guide" Update
#12 (May 5, 2008)
- About this Newsletter
- On the Web => Larry Appearing at the Voices That Matter Web Design Conference
- On the Web => Q&A Session with MySQL's CEO
- Q & A=> What security measures do Adobe AIR applications take?
- Q & A=> Is it still that important for programs to be efficient?
- Q & A=> What technologies do you prefer to use?
- Book Giveaway => "Adobe AIR with Ajax: Visual QuickPro Guide" and others
- My Book News => "Adobe AIR with Ajax: Visual QuickPro Guide" Published!
#13, Mac Edition (June 15, 2008)
- About this Newsletter
- On the Web: Other World Computing
- What is Larry Thinking => Leopard
- What is Larry Thinking => My Favorite Applications
- What is Larry Thinking => Stickies and Notes
- My Book News
#14 (July 9, 2008)
- About this Newsletter
- On the Web => Adobe AIR Chapter Available Online
- On the Web => Ruby is on the Rise
- On the Web => Ruby on Rails Screencasts
- What is Larry Thinking => Five Seconds on Ruby
- Book Giveaway => Foreign Editions
- My Book News
#15 (August 6, 2008)
- About This Newsletter
- In the Forum => Online Poll
- What is Larry Thinking => The Business of Business
- What is Larry Thinking => Contracts
- My Book News
#16 (October 23, 2008)
- About This Newsletter
- In the Forum => Online Poll
- On the Web => MoWeS Portable
- On the Web => Adobe MAX 2008
- On the Web => Ruby on the Rise
- Q&A => How do I protect my Web site's copyright?
- Q&A => How do I get new business?
- Q&A => How do you learn new technologies?
- What is Larry Thinking => Contracts Revisited
- Book Giveaway
- My Book News
#17 (December 3, 2008)
- About This Newsletter
- On the Web => My Blog
- On the Web => Learning the Linux Shell
- On the Web => Web Design Resources
- Q&A => What newsletters do you subscribe to?
- Q&A => How do you get a book published?
- Q&A => What browser do you recommend?
- Q&A => How do Google Gears, Microsoft's Silverlight, and Adobe AIR compare?
- Book Giveaway
- My Book News
#18 (January 8, 2009)
- About This Newsletter
- On the Blog => User Interface
- On the Web => Sitepoint
- On the Web => Less known SQL syntax and functions in MySQL
- On the Web => Essential Bookmarks for Web Designers and Developers
- Q&A => How do you argue for PHP?
- Book Giveaway Preview
- My Book News => Announcing the E-Commerce Book!
#19 (January 29, 2009)
- About This Newsletter
- On the Blog => Comments for My Forthcoming E-Commerce Book
- On the Blog => Speeding Up Your Web Site
- On the Web => MaxMind JavaScript Web Service
- Q&A => About Adobe AIR
- What is Larry Thinking? => Finding a Graphic Designer
- What is Larry Thinking? => Rich Internet Applications
- Book Giveaway
- My Book News => My E-Commerce Book!
#20 (March 3, 2009)
- About This Newsletter
- On the Blog => An Introduction to jQuery
- On the Web => Building RIA's with the Adobe Flash Platform
- Q&A => How do I make a Web site easily administratable?
- Q&A => How can I generate static HTML-pages from database content?
- Q&A => How do I prevent spam form submissions?
- Q&A => What should I learn next?
- Q&A => The Ruby vs PHP Debate
- Q&A => How can I convince clients to actually follow through with their deliverable commitments in a timely fashion (without nagging them to death)?
- What is Larry Thinking? => Getting Things Done
- Book Giveaway
- My Book News
#21 (April 22, 2009)
- About This Newsletter
- On the Blog => An Introduction to jQuery, Continued
- On the Web => Yii Framework
- On the Web => Linux GTD Apps
- Q&A => How does one learn JavaScript and/or jQuery?
- What is Larry Thinking? => PHP Frameworks, Revisited, in Relative Detail
#22 (May 30, 2009)
- About This Newsletter
- On the Blog => PHP Variables: Passing by Value or Reference
- On the Web => Larry Ullman's Blog Available Through Kindle
- On the Web => Sign-Up Forms Must Die and the $300 Million Button
- Q&A => How do I dynamically generate pages using a MySQL table's columns?
- Q&A => How can I generate static HTML pages from dynamic content?
- What is Larry Thinking? => The Yii Framework, Continued
- Book Giveaway => Ruby: Visual QuickStart Guide
- Larry Ullman's Book News => E-commerce, JavaScript
#23 (October 30, 2009)
- About This Newsletter
- Newsletter E-mail Address Change!
- About My Situation
- On the Blog => Understanding MVC
- In the Forum => Being Self-Taught
- On the Web => Best of Open Source Software Awards
- On the Web => Git: Your New Best Friend
- On the Web => Titanium Desktop
- Q&A => How do I improve my programming skills?
- Q&A => How do you organize your code library?
- What is Larry Thinking? => Mac's Snow Leopard Release
- Larry Ullman's Book News => E-commerce, Flex, JavaScript
#24 (December 17, 2009)
- About This Newsletter
- On the Blog => Learning the Yii Framework
- On the Web => Adobe's BrowserLab
- On the Web => Zend Interviews
- Q&A => What do I need to know about SSL?
- Book Giveaway => PHP for the Web: Visual QuickStart Guide and Translations
- Larry Ullman's Book News => Effortless Flex Development
#25 (February 2, 2010)
- About This Newsletter
- On the Blog => Access Control and Authentication in Yii
- On the Web => HTML Purifier
- Q&A => How do I go about learning Ajax?
- Q&A => PHP vs ASP.NET vs ???
- Q&A => Do you do any social networking?
- What is Larry Thinking? => Starting a New Business
- Book Giveaway => PHP for the Web: Visual QuickStart Guide and Translations
- Larry Ullman's Book News => Flex
#26 (March 18, 2010)
- About This Newsletter
- On the Blog => The First Rule of User Interface
- On the Blog => The Economics of Publishing
- On the Blog => What's New in Yii 1.1
- On the Web => EasyPHP
- On the Web => PHP in Facebook
- Q&A => With the availability of so many PHP frameworks, what is the role of PEAR? Is it still useful?
- Q&A => From your perspective, as a PHP expert, do you think more and more computer people are learning applications (Drupal, Joomla, osCommerce), and not learning "core PHP language" stuff?
- Q&A => Where is PHP headed? Is there a future for PHP and if so do you see it becoming more widespread or being superceded by other newer technologies?
- What is Larry Thinking? => Starting a New Business, Follow Up
- Larry Ullman's Book News => Effortless Flex 4 Development
#27 (April 24, 2010)
- About This Newsletter
- On the Blog => A Simple Approach to Site Security
- On the Web => BumpTop, the Snazz Desktop App
- On the Web => Excerpt from “Effortless Flex 4 Development”
- On the Web => DMC Insights, Inc. Reaches a Million Hits
- Q&A => What's your current development setup?
- Q&A => How do I get published?
- Q&A => How do I automatically backup my databases?
- What is Larry Thinking? => Coming Full Circle
- Larry Ullman's Book News => Effortless Fles 4 Development
What is Larry Thinking? #28 (May 29, 2010)
- About This Newsletter
- On the Blog => HTML5 Video
- On the Web => Second Excerpt from “Effortless Flex 4 Development”
- On the Web => Google “recursion”
- On the Web => Editra Editor
- On the Web => Google's Ajax Libraries API
- Q&A => What are the dangers with PHP's allow_url_fopen setting?
- What is Larry Thinking? => Partly Cloudy with a Chance of Savings
- Larry Ullman's Book News => “Effortless Flex 4 Development” and more
What is Larry Thinking? #29 (June 24, 2010)
- About This Newsletter
- On the Blog => “E-Commerce with PHP and MySQL” Table of Contents
- On the Web => “Five Flex/Flash Builder Tips in Five Days” Blog Posts
- On the Web => The Open Standard Media (OSM) Player for HTML5
- On the Web => A Roundup of 15 Mobile Web Design Tutorials
- Q&A => What are the practical benefits of learning JavaScript for a hobby web developer?
- Q&A => What is the target group of Flex and why would one start with Flex?
- What is Larry Thinking? => Testing the Waters: Self-Publishing
- Book Giveaway=> “Effortless Flex 4 Development”
- Larry Ullman's Book News => “Effortless Flex 4 Development” and More!
