Currently browsing oscon
Thu, 24 Jul 2008 23:38 UTC
Here are my slides for the memcached presentation I gave at OSCON this year. I experimented with a new slide template, which turned out for the worst, since the contrast of the type on the screen was very poor, making it difficult for attendees to read. I apologize for this. In addition, I was completely distracted during my entire talk by loud music coming from the room next door. Nevertheless, the majority of my audience was still around even after I ran 5-10 minutes over schedule, eating into their free beer time, so I suppose that says something and that they were learning.
Thanks to all who attended!
Give Your Site a Boost With Memcache
Today’s high-traffic websites must implement performance-boosting measures that reduce data processing and reduce load on the database, while increasing the speed of content delivery. One such method is the use of a cache to temporarily store whole pages, database recordsets, large objects, and sessions. While many caching mechanisms exist, memcached provides one of the fastest and easiest-to-use caching servers. This talk will cover memcached and the memcache extension for PHP from setting up a memcached server to using it to provide a variety of caching solutions, including the use of memcached as a session data store.
No Comments
Permalink
Tags: memcache, memcached, oscon, oscon08, presentation, talk
Mon, 21 Jul 2008 23:50 UTC
I find myself once again in Portland, OR at the O’Reilly Open Source Convention. This year, I’m giving a talk on memcached. The talk is on the PHP track, but the concepts can apply in any of the other languages represented at OSCON, so if you’re interested in memcached and how to use it, stop by on Wednesday at 5:20pm.
In previous years at OSCON, I’ve stuck mainly to the PHP track. This is because I have a lot of friends who are speakers, and so I’ve attended their talks to learn from and support them. This year, though, I’ve decided to focus on some of the other languages represented here, particularly Python and Erlang. This morning, for example, I attended Steve Holden’s Python In 3 Hours tutorial. Tomorrow, I’ll be attending the Practical Erlang Programming tutorial, and later this week, I’ll get Just Enough C for Open Source Projects.
So, today, one of the more interesting features I learned that Python supports is the concept of closures. Here’s a simple example from the tutorial:
def adder(n):
def add(m):
return m+n
return add
add20 = adder(20)
print add20(2)
l = []
for i in range(100):
l.append(adder(i))
print l[13](22)
FYI: There’s been some discussion surrounding a recent patch proposal to add closures and lambda functions to PHP.
At any rate, it’s good to be back at OSCON this year, catching up with old friends, making new friends, and expanding my knowledge of open source languages.
By the way, I’ve brought along with me 10 elePHPants who need good homes. If you want one, it’s yours. You just have to find me in person and let me know. They’re first-come, first-serve.
3 Comments »
Permalink
Tags: closures, erlang, memcached, opensource, oscon, oscon08, python
Sun, 24 Feb 2008 18:10 UTC
As you may have already noticed, I’ve started focusing a lot of my attention on XML, specifically with regard to the Atom Publishing Protocol. Now, please don’t confuse this attention with the giddy excitement of a newbie encountering XML for the first time and thinking of it as the greatest thing since sliced bread. On the contrary, that moment happened for me back in 2001 when I bought the first editions of Learning XML and XML in a Nutshell. Rather, I’ve simply come full-circle to a renewed appreciation for the syntax. In these days when people are singing the praises of JSON and other data interchange formats, I still think XML is the best format for exchanging data between disparate systems.
This year marks the tenth anniversary—or birthday, if you will—of the Extensible Markup Language. Version 1.0 of the W3C recommendation was published on February 10, 1998. In a press release covering this occasion, Tim Bray said:
There is essentially no computer in the world, desk-top, hand-held, or back-room, that doesn’t process XML sometimes. This is a good thing, because it shows that information can be packaged and transmitted and used in a way that’s independent of the kinds of computer and software that are involved. XML won’t be the last neutral information-wrapping system; but as the first, it’s done very well.
According to the press release, there will be “a variety of activities and events” planned throughout the year “to recognize and thank the dedicated communities and individuals responsible for XML for their contributions.” Since this is also the tenth anniversary of open source and the tenth anniversary of OSCON, I wonder if there will be any XML “birthday” festivities at OSCON this year. It already sounds like it’s going to be one big 10th anniversary party; I can’t wait to see who shows up for the fun.
No Comments
Permalink
Tags: birthday, oscon, oscon08, w3c, xml
Fri, 27 Jul 2007 20:22 UTC
As OSCON winded to a close today, I attended the morning’s keynotes, which I found to be some of the better keynotes I’ve seen at OSCON. They were entertaining, thoughtful, and weren’t filled with marketing drivel.
Jimmy Wales of Wikia (Wikipedia) announced Wikia’s acquisition of Grub and their intent to release it under an open source license. The concept is that Grub will run as a distributed search system, using the idle computers of people who have installed it to index Web pages in much the same way SETI uses CPU cycles during idle times. The goal is to make Internet search a more open and transparent process so that everyone can see how the search data is collected and used. Since it’s open, it can potentially be improved by the community and fine-tuned to perform better searches and return more accurate results.
Following Jimmy Wales, Simon Wardley spoke about “Commoditisation of IT and What the Future Holds,” a talk that would have otherwise been dull and boring had Simon not presented it in such an entertaining way. The basic gist is that, as new ideas develop and become more ubiquitous, they become commoditized, which is better for everyone because of the competition involved as businesses and communities compete to create better versions of the ideas/products.
Finally, the keynotes rounded out with Nat Torkington giving three keynotes in about fifteen minutes and James Larsson giving the humorous presentation “Pimp My Garbage” in which he showed numerous hilarious hardware hacks.
Now, I’m sitting in the airport enjoying PDX’s free wi-fi (commoditization done right!) and waiting on my flight. So, I’ll leave you with this moment of Zen:
Yesterday, I remarked about the free beer served at the Mozilla party that “someone should fork the beer and make it better.” As a result, a hilarious conversation and observation about open source ensued. Enjoy!
1 Comment »
Permalink
Tags: oscon, oscon07
Thu, 26 Jul 2007 23:35 UTC
I didn’t get a chance to post yesterday, so today’s post will include my thoughts on sessions I’ve attended for the past two days, but I’ll try to keep things short. If you know me, you’ll understand how difficult this can be.
I’m trying to attend many of the community talks and panels, especially because of my involvement in Atlanta PHP and the #phpc IRC channel. So, the first talk I attended yesterday was How to Herd Cats and Influence People by Jono Bacon. I actually have a lot of notes on this, but I won’t share them here, but the one big quote I took home from this talk was: “Always be flexible; when you stop being flexible, that’s when bureaucracy kicks in.” The bottom line about dealing with an open source community is: you want to encourage people to accomplish things quickly. Getting newcomers involved right away and accomplishing things helps them to get involved right away achieving and contributing. This gets them excited about contributing, and they’ll move on to do more, and they’ll become effective members of the community. If anyone has to ask questions about how to get involved, then you’ve lost. You need to have all this stuff documented so it’s easy for them to figure out how and where to get involved.
Afterwards, I attended the panel Who Gets to Decide What Open Source Means?, Rob Richard’s Who Am I? The Age of the Digital Identity, and Patrick Reilly’s Improving Performance by Profiling PHP Applications.
The day ended with the Mozilla party off-site. The band was good, but the free (as in “free beer” and “freedom”) beer was awful. Someone should fork the beer and make it better. After the Mozilla party, we descended upon Sun’s OpenSolaris party. In years past, the OpenSolaris party was small and held in one of the suites at the DoubleTree Hotel. This year, it was held in the hotel’s garage, and it was huge and loud. I prefer the more personable parties they’ve had in the past; they were quiet, and the Sun representatives were fun to hang out with. I didn’t see any Sun representatives at the party this year, but perhaps I wasn’t looking.
Today, I attended Andrei Zmievski’s VIM for PHP Programmers, A Resource-Oriented Approach on Data Services by Mike Pittaro of SnapLogic, Accessibility for Web 2.0 by Eric David, the Art of Community panel, and Brenda Wallace’s PHP Add-ons for Fun and Profit.
For the “Resource-Oriented Approach” talk, Mike Pittaro described SnapLogic’s method of returning resources through the use of “pipelines.” Basically, as I understood it, the client would request data from one particular URI, which would send the request through a “pipeline,” do something with the data, and return a new URI from which the data can be fetched. For example, if you request a sorted representation of data, you would send a request to the sort URI, which would return a URI that represents the sorted data, but this URI is temporary and is no longer valid after a time.
Now, a group of us are sitting around in the hallway trying to figure out our dinner/party plans for the evening. My flight leaves tomorrow, and I can’t wait to get home to my wife and son, so I’ll miss the brewers’ fest, but I’ll be glad to be home.
(On the board next to me is a place for people to list software tools they wish they had. Someone put in one of the blocks that they want a “virtual girlfriend.” Beside it, a note was added in a different handwriting: “that doesn’t suck.”)
3 Comments »
Permalink
Tags: oscon, oscon07, php
Tue, 24 Jul 2007 23:51 UTC
Yesterday, I mentioned a “super secret” announcement party that Intel was throwing for bloggers and the press. So, what did they announce? Well, in short, they are releasing a fully open source version of their Intel® Threading Building Blocks (TBB) C++ template library. It’s under the GPLv2 (and not an Intel OSS license). The TBB simplifies development of software running on multiple cores (in parallel).
The announcement itself doesn’t really apply to me and the work I do. I am a PHP programmer, and I rarely hack at the PHP core. Even if I did contribute to the PHP core, it’s all in C, so using TBB, which is for C++, isn’t an option. Still, TBB might be useful for PHP extensions written in C++, so there is that.
Today, I sat in on the OpenID Bootcamp and Simple Ways To Be a Better Programmer sessions.
The latter was by far the most entertaining session I’ve attended thus far, and it wasn’t anything that I expected. It focused more on “people hacks” than programming principals. The basic gist was to be a better programmer by being a member of the programming community, communicating more effectively in the community and with your co-workers, looking in the right places for help, taking part in community discussions, and meeting other members of the community. I can attest from experience that these all do really make you a better programmer.
Tomorrow the official conference begins with opening keynotes and regular sessions. Lots of great sessions to attend, but, for now, I’m heading to the Zend/MySQL party.
1 Comment »
Permalink
Tags: intel, oscon, oscon07, parallel, php, tbb, threading
Mon, 23 Jul 2007 23:44 UTC
Hi, all. It’s been about a month since my last post, and, for those who know me, I’ve been off of IRC and IM for nearly a month, as well. It’s been very busy around the office, but now that things have slowed down a little, I plan to be around a bit more.
So, now I’m breaking my “radio silence” to write about OSCON. I’ll be here all week, and I hope to blog consistently about the goings on.
Today and tomorrow are the tutorial days, and, at times, tutorials can be too long because the speakers are often dry. The information is great, but the delivery is not always very engaging. Nevertheless, I did enjoy the two tutorials I attended today: Rasmus’s “You Got JavaScript in My PHP! And…” and Theo’s “Scalable Internet Architectures” tutorials.
I’ve also had the chance to catch up with some old friends, and I ran into Cal Evans in the hallway today wearing the t-shirt below. On the shirt, it reads: “PHP is the new BLACK.” Anyone want to enlighten me as to what that means?

So… now, I’ve heard tale of some secret announcement party for bloggers and the press to attend. Gotta make my way there and see what the hoopla is all about.
2 Comments »
Permalink
Tags: oscon, oscon07, php
Thu, 27 Jul 2006 21:28 UTC
Right now, I’m sitting in Greg Stein’s A New Google Service for the Open Source Community presentation at OSCON where he has just announced project hosting on Google Code starting today for open source projects. This service is similar to Sourceforge, but it’s done the Google way. Here are my quick notes from the presentation:
Unique features:
- Simplicity, scalability, reliability
- Rebuilt Subversion on top of Bigtable (instead of using Berkley DB or filesystem)
- Complete re-think of issue tracking (simple system with labels on each of the issues, using the Google search infrastructure to easily search across the labels, titles, and descriptions without the need for complex workflows to track issues)
It’s located at: http://code.google.com/hosting/
There’s no project approval process; project goes live right away. They are working with existing projects right now to ensure that project names are not all grabbed up. They will be running a number of different analyses on project patterns to ensure that tons of bogus projects are not created. There are lifetime limits of project creation. They don’t use a CAPTCHA when creating your first project in a day, but if you try to create more than one project a day, you will receive a CAPTCHA on all subsequent project creation pages.
Sample project located at: http://code.google.com/p/hostingdemo/
There will be emphasis on e-mail messenging for issue tracking, but RSS feeds will also be available for issue tracking as an alternative. Projects can have links to Google Groups, blogs, mailing lists, etc., all of which will be reflected on the project summary page. The Subversion repository can be viewed through the Web browser.
An Open Source license must be selected when created a project, and Google is limiting this to a short list of seven licenses because Google doesn’t want to encourage license proliferation. These seven licenses are: Apache, Artistic+GPL, Mozilla, MIT, New BSD, GPL2, LGPL. (Google’s code for this service will not be available on their own service, nor will it be available through an open license.)
They will be working on how to best integrate the service with other Google services. They will be working on APIs to access and/or dump the data. However, Greg is hesitant about opening up an API because it sort of locks them in. They may think about ways to connect with Sourceforge, but, again, this means they need an API.
The service is still (surprise!) in beta.
7 Comments »
Permalink
Tags: google, oscon, oscon2006, sourceforge
Thu, 8 Jun 2006 17:43 UTC
Geoff Young posted a note on his use.perl blog about how he’s going to reply from now on when someone asks “Did you test it?” He says that, unless he has actual tests for the application, he’ll now respond, “I poked it and it seemed to work, but it doesn’t have tests.” His point being that actual tests “count for a lot, while a few mouse clicks really don’t.”
I’ll take this as a reminder and teaser for the tutorial he and Chris Shiflett will be co-presenting at OSCON: Power PHP Testing.
I’m registered for OSCON and this tutorial. Are you?
2 Comments »
Permalink
Tags: oscon, php, testing
Tue, 14 Sep 2004 22:05 UTC
I’m looking for any notes or slides for the OSCon session “Chasing the Dragon: Compiling PHP to Run on Parrot.” If anyone has anything related to this session, please send it to me ASAP.
I will be indebted to you for life . . . or, at least, a long time . . . or, really, for about a month. I’ll buy you a beer if we ever meet up at a con.
Thanks!
1 Comment »
Permalink
Tags: oscon, parrot, php