Internet Archives
While things may look rosy and diverse, under the surface the web's functionality might not actually support diversity.
A few months ago I was having an email back and forth with Chandler from The Barbarian Group about my postmodernism/economics post. One point he made in particular has been sticking around in my head ever since. I wrote, "As the site [brand tags] illustrates, everyone has a different idea of what a brand is, shaped by an infinite number of factors (when they were introduced, how they were introduced, whether they've actually experience it, etc.) and every single person, no matter how different their perception is, is equally right."
His response to the whole post was great, but this part in particular stuck out for me:
I disagree that what brand tags shows is that "everyone has a different idea of what a brand is", but rather that most people have the same idea of what a brand is (at least to the extent to which they hired a good agency), despite the fact that there is no authority for what a brand means, you can't look these things up in a dictionary. This is why folksonomy works, because it leverages the discursive nature of concepts, or if you will "reality". Maybe this is an easier pill to swallow when thinking about something amorphous like a brand, but again the crux of postmodern thought is that this is how all "truth" works, even the truth about planets and air.
His point is a good one, the easy way to explain these things is that everyone has a different take on them, but the reality is that most people have the same take. In fact, it kind of reminds me of something my friend Abe wrote a few years ago about the long tail:
But the long tail, is not a neutral description, rather much like the stances of both sides in the abortion debate it is a deep ideological one. Much the way the abortion warriors are fighting to control the terms of the debate, the long tail is about controlling what the power law distribution is about. "Pay no mind to the 20% with all the power, what's really interesting is what's happening over here under this long tail..."
I think both Chandler and Abe's response include two important similarities. First, they both point to the importance of the way a concept is framed to your understanding and reaction. But secondly, and maybe more importantly, they point to the way we've been trained to assume the power of diversity on the web, when in fact what we're experiencing is actually a lack thereof.
Just recently Michael pointed to a super interesting piece of research highlighting the actual diversity of products offered up by recommendation systems like those at Amazon and Netflix. These systems, of course, have been made famous by the likes of Chris Anderson's book The Long Tail which pointed to their ability to drive individuals to super obscure titles (this is what Abe was referring to in the quote above). When comparing the actual diversity customers experience in an offline and online shop, you'll be surprised to find out that the offline actually wins out. Here's the gist of it:
While each customer on average experiences more unique products in Internet World, the recommender system generates a correlation among the customers. To use a geographical analogy, in Internet World the customers see further, but they are all looking out from the same tall hilltop. In Offline World individual customers are standing on different, lower, hilltops. They may not see as far individually, but more of the ground is visible to someone. In Internet World, a lot of the ground cannot be seen by anyone because they are all standing on the same big hilltop.
In other words, the web is actually working against the diversity with it's networked functionality. The ability to quickly generate massive amounts of attention in a single direction means that while we're seeing more, we're also moving far more in lock-step since we're dependent on the decisions of others.
So, what does this have anything to do with anything? Well, to be honest I'm not entirely sure. I was having lunch a few weeks ago with Tim from Roflcon and we were talking about a bunch of stuff, including the idea of success and failure on the web. Tim made an awesome point, which was that everyone always uses the same few examples for every question about successful internet companies (Facebook, Twitter, Amazon, Netflix at the moment). This happens in every industry, actually, just ask someone to name the best brands and I'll give you $1 if Nike and Apple aren't on the list. But let's put brands aside for a second and focus on the web. The number of successful large scale communities out there is quite small. Now there's nothing wrong with that, but it's the reality of the situation. So maybe, just maybe, that's not what the web is built for. Maybe it's built for small scale communities. Maybe we need to reframe the way we think about this stuff and worry less about "scalability." (I would guess that there really isn't any such thing as scalability within a community since culture is bound to change as the size increases, meaning you are left with a totally different community which you hope is only somewhat less good than the original.)
Leave a Comment
Everyone has different criteria for rating, friending, following ...
Rating systems are something I find myself discussing fairly frequently. Partly because the idea shows up in a lot of projects and partly because I usually end up relating it to the rules people set for themselves within different social networks.
Let me explain. First off, this is all inspired by something Tyler Cowen wrote recently about rating systems:
The old rating system granted up to five stars but now the maximum number of stars is ten. This signals that they wish to start exaggerating the quality of the product. When there are only five stars you know that they are laying their reputation on the line when they grant five stars to a new CD. (Michelin of course won't give a restaurant more than three stars. They don't calculate out to the fourth decimal place along a scale of one thousand.) If the music isn't good you can decide to stop trusting them. But say they give a new release eight, nine, or who knows maybe eight and a half stars? What exactly are they trying to say? Yes they are putting their reputation on the line when they give ten stars, but this will happen so infrequently that it will be harder to judge their overall trustworthiness.
His point is a good one, but one that is made much easier within a single publication. There is no reason that as part of the change Spin couldn't provide a key to go along with the system, one where they lay out what a 10 really means in terms of past album reviews.
With that said, I don't really want to talk about Spin's rating system, I want to talk about mine. When I rate things within iTunes there are specific rules in my head. If something gets one star, it's pretty damn awesome. That's because only songs that I really like get a star. Therefore, a five star song is my very favorite ever (I don't think I currently have it in rotation, but November Rain might get it). Now I'm sure you have some other way of rating things. Maybe 0 stars is the worst song you've ever heard and you work from there. Whatever it is, the point is, it's probably different than mine. This isn't a big deal when we're the ones consuming our music, after all it's pretty easy to keep track of our own criteria, however, it becomes a lot more confusing when more and more folks are exposed to it.
But exposing folks isn't half the problem, the real trouble starts when we start to build systems that aggregate ratings. At that point, everyone's criteria is thrown into a big bucket, stirred around and then shown off to the world in a way that ultimately means very little. What's a five star video on YouTube? Who the hell knows. For me, the only time I ever rate anything I give it five stars. (For whatever that's worth.)
I'm not sure there's a real point to all this, but I'm going to try and get there. First off, it speaks to implicit rating systems. Knowing the stuff people are actually paying attention to (a la last.fm) is a whole lot more effective than asking people their favorite things. People are generally not that good at telling you what they really like or pay attention to. (I don't have anything to back that up, but it's probably true.)
Also, and this is where things get really tangential, I think this relates to the criteria people have for "friending" on different social networks. Who do you connect with on Facebook? How about LinkedIn? How about Twitter? You probably have thought these things through and answered them for yourself. Equally likely is that my answer is different. We all have different criteria for the decisions we make in these places.
Now none of this really matters and we could all go along happily, except people forget that and get upset when they're not friended, followed or connected with. I get a kick when I read things like this from David Pogue on his adoption of Twitter: "One guy took me to task for asking 'dopey questions.' Others criticized me for various infractions, like not following enough other people, writing too much about nontech topics or sending too many or too few messages." That's insane. (Something Evan Williams acknowledges in the article.) The truth with all this stuff is there are no rules. Or, more accurately, there are an infinite number of them.
So yeah, there's that.
Leave a Comment
A few thoughts on Obama's web organization and plans to fix the country.
This post over at Crooked Timber about the possibility of Obama's internet crowd turning against him articulates quite nicely one of the major issues I have with people who talk about the success of web communities (like Obama's) as this amazing democratic victory.
"This goes to the heart of the contradictions that the Obama people successfully managed to straddle during the campaign, but are (I think) going to have increasing difficulty in dealing with going forward. The Obama people combined very tight top-down message control and campaign coordination with a fair degree of openness at the bottom to independent initiatives by volunteers. As long as everyone agreed on the same underlying goal (beating the Republicans), this worked. But as that overwhelming imperative recedes, people are going to start pursuing their own objectives - and the 'open' architecture that the Obama people have constructed provides them with plenty of opportunities to do this."
As usual, the answer is neither top down nor bottom up: It's somewhere in the middle. The reality of the situation is that both sides will likely push back on each other creating what hopefully will be a better result (assuming everyone is willing to compromise a bit).
Writing about this also got me thinking about a piece by David Brooks from earlier in the week about Obama's confidence in his approach to public projects which include (nearly) immediately attacking the economy, "broadband projects, special education programs, a new power grid, new scientific research, teacher training projects and new libraries" as well as social security and medicare.
All of this seems like quite a bit and Brooks is worried: "The problem is overload. Four months ago, no one knew how to put together a stimulus package. Now Obama wants to use it to rush through instant special-ed programs and pre-Ks. Repairing the power grid means clearing complex regulatory hurdles. How is he going to do that in time to employ workers in May?"
That's a fair question, though I couldn't help but think about something I just read in Duncan Watts' Six Degrees
. In discussing a student group called OTPOR, which helped in the overthrow of Slobodan Milosevic, Watts writes:
A traditional social network analysis of the student movement would look at some of the principal players in OTPOR and trace their involvement with each other, their followers, and also outside organizations, and attempt to identify the mechanisms by which they established themselves as central organizing elements. But as we will see ... when it comes to large-scale coordinated social action, hindsight is not 20-20 -- in fact, it can by actively misleading. Rather than leaders determining the events, quite the reverse might have been true, with the particular sequence of events and the peculiarities of their timing determining who it was that emerged as leaders."
Put simply: History tends to write itself in a much more clean and linear narrative than it actually plays out. Let me explain (or at least try to explain) how I see these being connected:
- Obama tries a whole bunch of different stuff.
- People predict and examine it all, trying to figure out what will succeed and what will fail.
- Some stuff succeeds and some stuff fails.
- Obama pays more attention (and money) to the succeeding stuff, letting the failing stuff fall to the wayside (hopefully only for the moment).
- The stuff that's succeeding succeeds more, the stuff that's failing is forgotten.
- We remember that which succeeds and lots of people look back and explain why they knew all along that would work.
Obviously this is a super simplified version, but as I've said in the past: There are way worse strategies than trying a whole bunch of small things, seeing what works and then focusing on that. Now whether or not Obama has the whole small initiatives thing down is yet to be seen, but I generally think trying lots of stuff works better than just trying one thing.
Leave a Comment
Some thoughts on APIs and the different ways to view the same data.
As I've said in the past, I really love making stuff on the internet as much for the thing that's created as watching and learning from the reactions to it. This was most certainly the case with My First Tweet (which is still alive and well, by the way, with 5,370 first tweets in the DB so far). There's one response in particular I want to highlight today, though, because I think it's particularly interesting.
A few days after launching I got an email from someone telling me I must take down their first tweet. It wasn't offensive or anything like that, rather, they just didn't like the idea that they hadn't said it was okay for it to be on the site. While I didn't really understand it, I figured it seemed like a reasonable request and would only take a minute of my time. So I took it down. When they went back to check that I had done what I said, they found their first tweet again. Once again, I took it down.
Then I realized what the problem is. You see, the site is built so that if the user's first tweet isn't already in the database, it queries Twitter's API and grabs it. That means that every time they went back to check if I had been honest, they were actually responsible for their first tweet being in the database.
That, I thought, is a really interesting problem. I went over to read Twitter's terms of service and indeed you the user own everything you create. In addition, they "encourage users to contribute their creations to the public domain or consider progressive licensing terms." However, from a technology perspective there are only two states for Twitter: Public and private.
Let me step back for one second and explain the act of querying Twitter's API for one second. Basically, when someone puts their username into the site, I send a message to Twitter saying, "hey, can I have the information for the user XYZ?" Twitter then sends me back one of two different messages, most often they say, "sure, here's the info you requested," but sometimes they say, "sorry, we can't give you that info because the user you requested have made themselves private." (When you try to look at the tweets of a user that is private on twitter.com you get a little lock icon and a message that says you can only see this person's tweets if they give you permission.)
So basically Twitter is a binary system, you are either public or you are private. If you're private I can't grab your first tweet. However, if you're public, I can, whether you want me to or not.
This is particularly interesting to me for a few reasons. First, it's a good way to explain how outdated the idea of webpages really are. Most people think of them as these hard coded things, like pages in a magazine or something. However, many of the webpages you look at are not created until the moment you look at the site. Brand Tags, for instance, really only consists of about a dozen files. Even though there are 800 brands in the system, all the tag clouds are generated by the same few lines of code which queries the database and returns the formatted results. When I was getting the request to take down the first tweet, I was complying, however, it didn't really matter because it never existed as anything but a database entry in the first place.
What's so interesting about this is that that's actually how Twitter works as well (I believe). The results that the Twitter API returns are remarkably similar to the way the pages are formatted (down to the fact that you can only get to page 160 on both Twitter.com and from their API). That means that the site isn't so much a site as it is a view for the data (of which My First Tweet is one, search.twitter.com is another and Twitter Grader is a third).
Twitter isn't alone in working this way, either. Most sites these days are just skins for the underlying data, which is increasingly being shared with others who are making new skins for it. This isn't new news to those who build things on the web, but I think it is a fundamentally different functionality than the average user understands. Just something to think about.
The second point I wanted to make is around this public/private thing. In a world where everything is just skins for the underlying data, you have fewer and fewer controls over how that data is displayed when you sign up to use a service. Some services (like Flickr) allow you to specify a licensing for your work (full copyright, creative commons, etc.) and they report that to those people who want to work with the data, but even then, the API user can chose to ignore the licensing entirely and just take the photo unless the user has specified that this CAN NOT be used (either because it's private or there is no access to full size).
As someone developing using APIs this kind of flexibility is pretty awesome. I can get access to pretty much anything I want (which is rad). But for some users, clearly this is worrying. I don't know that more safeguards need to be put in place, but I do think that this wholesale data access needs to be better explained (there's a tendency to live in a world where we assume people know what an API is1).
As usual, no hard answers here, just some stuff to think about.
1 While I'm no technician, I do think it's worth trying to explain what an API is, since it's thrown around quite a bit these days. Essentially an API is just wholesale access to the data/functionality from a web service. If you're Google Maps that can manifest itself in letting people send you an address and returning the latitude and longitude or if you're Flickr that can mean returning the URLs for photos tagged with noah. Developers then can find lots of different ways to use the data/functionality. Essentially, with access to the raw data the sky is the limit. In some ways, RSS feeds are kind of like APIs for websites. They provide people with some access to the underlying data (which is separated from the presentation layer that you see when you visit NoahBrier.com for instance). (I don't know if this definition is helpful at all. If anyone wants I can take another shot, or maybe someone else can try to give a better definition in the comments.)
Leave a Comment
All about two of the basics for making web applications.
This weekend I gave a talk at Interesting New York titled, "How I Learned to Make Stuff on the Internet (and You Can Too)." Even though I was a bit rushed (it was supposed to end at 6pm and I went on at 6:10 with two more to go after me), it was super fun. Everyone was really great and it totally lived up to billing. Anyway, I figured I'd put my presentation and a rough version of my speaking points up online for people to enjoy.
Real quick, before I get into all that stuff. The basic idea here is something I've talked about before around here. I really believe that learning to build awesome stuff on the internet isn't that hard and that a big part of the problem is just the mental blocks ("it must have been so hard to learn" people say). The truth of the matter is, after I understood how to pass data between pages, everything else pretty much fell into place. Sure I knew a bit of HTML/CSS, but essentially once I understood a few basics I was able to search for whatever additional information I needed (and if there's one thing that exists in excess on the web, it's information about how the web was made).
So, here's the presentation, followed by some speaking notes. Hope you enjoy. Also, I am seriously thinking about getting some people together in NYC and trying to teach a little class on this. I'm not expert on PHP or programming, but I think that's part of the fun. Let me know if that sounds interesting and maybe we'll make it happen.
- A few months ago I taught myself PHP (yes, that’s a recursive initialism).
- In the process, I think I discovered two big mental barriers that I needed to get over: How to pass information from one page to another and what an online database was ... So, I want to spend some time going through those two things with the hope of inspiring more people to make stuff on the internet.
- So, let’s get started.
- Pretty much every application on the internet relies on forms to get data from users and input it into the system. Gmail, for instance, has a send button ...
- Facebook has “post” for changing your status.
- And Google has “Google Search” to find anything you’re looking for. Essentially when the user hits that button, the information they’ve inputted is sent to a server and handled. The thing is, I didn’t really understand how this happened. Sure, I understood the basic idea, but my question was how do I get it back? Where does the information go?
- The answer, it turns out, depends on what method you use for handling your form. The two most popular are GET (for retrieving information, a la searching) and POST (for sending information to a database, a la an information form). By using one of these two methods in the method=”XX” portion of your form HTML, you chose how you’re going to handle the data that’s inputted.
- How about an example? Google uses GET. The html for the form goes something like method=”GET” action=”/search” (actually they leave out the GET, since it’s the default method for handling form data and they’re all about keeping the file size down on the home page ... or at least that’s why I assume they do it)
- Anyhow, GET works something like this. Ever notice all the crazy stuff up in the URL bar when you search on Google? You know, all the stuff after the question mark ...
- Well, that’s your query (and a bunch of other stuff). Just look before each equal sign and you’ll start to be able to decipher what it all means.
- But the most important piece of it is the “q=”, since q stands for “query” and that’s where they store whatever you are searching for (try changing that in the URL bar next time you search to see how it works). Essentially Google pulls that information down off the URL bar and builds the page off it. Not too shabby, huh?
- POST, on the other hand, passes data without sending it to the URL bar. I’m sure someone with more knowledge of how this stuff works could explain it better, but unfortunately I’m not that man.
- So finally, just in case, here’s a sample of some PHP that shows how you would grab that query from your GET or POST stored values. Note that the language already has GET and POST built right in and all you need to do is grab those values and then do whatever you want with them. Pretty simple, actually.
- Okay, now for part 2: Databases.
- They’re not really as scary as people think they are.
- Basically they’re just like an excel spreadsheet (which I’m assuming you’ve all played with)
- A database is made up of columns.
- And rows.
- And tables (which Excel calls sheets).
- The big difference lies in how you actually pull information out of the database. Unlike Excel, you can’t just highlight a row and grab that data. Instead you’ve got to use some SQL code to grab your information. This is the basic structure of a SQL call to read data from a database. You select the column you want from the table you want where the value for column x is equal to (or less than, or greater than, etc.) whatever value you’re looking for.
- Let’s say we just wanted to grab all the information from rows where the person lives in California ...
- Well, the SQL would look something like this. Select * (which means all columns from that row) from sheet1 (remember, that’s the name of our table, which is basically just a different spreadsheet) where the value in the column “state” equals California. Make sense?
- Thanks to the magic of transparent overlays, we can see that the row that gets returned is just the one we wanted (Fake Fakerton is the only person in our database from California).
- So what about writing data to the database? Well, that’s pretty easy to. You just insert into the table of your choosing the values (x, y, z, zz, etc.) ... The only important point here is that this assumes you are inserting data into every column, if you want to skip any you need to specify that. But let’s not worry about it for now ...
- Here’s a more specific example. Let’s say you want to add Noah Brier’s (that’s me) info to the DB. You would just use the code above (remember, we’ve got to go in order of the columns we have). So that insert into sheet1 (the table of our choosing) the following values (which are all in parentheses).
- And voila, it’s just added to the next row (assuming your DB is set up that way). Simple as pie.
- So that’s it. I know I haven’t gone that deep, but hopefully this will encourage some people to get started.
That's it. If you like this maybe I'll do a few more on the topic.
Leave a Comment
Metcalfe's Law says that the value of the network grows exponentially with each new user. But can it possibly grow forever?
At this point most of us in the geek contingent have heard of Metcalfe's Law. For those that haven't, Metcalfe describes the law named after him like this: "The network effect says that the value of that Ethernet card to the person on whose desk it sits is proportional to the number, N, of other computer users he can connect to. Now multiply this value by the number of users, and you have a value for the whole operation that is roughly proportional to N2." Or as I explained just over a year ago, "If one person has a fax machine it's got no value, if two people have it, it's still got very little value. From there, however, the value really starts to grow for everyone involved and eventually it hits a 'tipping point' where you can't not have one."
It looks like this (taken from Forbes):
The reason most geeks have heard/talked about Metcalfe's Law is because it's become the de facto religion of Web 2.0: A technological revolution that relies on the network effects described by Metcalfe over 25 years ago. Facebook is the simplest illustration of this, after all a social network without any of your friends is hardly worth joining. Even if Joe Corporate could have gotten on the site when it was just filled with students from 11 universities it would have been pretty boring, after all in a closed system like Facebook, just browsing isn't really an option. Looking at Facebook today, however, you find a site where it's harder to find someone you know who's not on it than who is (especially as someone who had heard of Facebook while they were still in college).
Putting it in context of Metcalfe's Law, it all seems logical. The more people on the network, the greater value the network has, which only attracts more people to the network. I've said it before, and I'll say it again: The number one feature of Facebook is the Facebook network. It's not apps or news feed, it's that every single person you know is on Facebook.
But that can be a bit of a gift and a curse. After all we've all spent a bit of time Facebook gardening: Pulling out the weeds, deleting random friend requests and desperately trying to avoid those stupid vampire bites. At some point, probably around the time Facebook apps launched, I realized that I was actually spending more time gardening than I was doing things I found useful/enjoyable on the site. For the occasional acquaintance I reconnected with, I was approving five friends I either didn't care about talking to or already had other, preferred, modes of communication. Facebook became a bit of a drag.
That's when it occurred to me that I was witnessing Metcalfe's Plateau, a place where the value of the network no longer increases with each additional node. In fact, thanks to spam (as deemed by me), the value of the network had started to decline, I was looking for other places to spend my time online.
I've been noodling on this idea for a while and been trying to figure out just what to say. I don't think it's a particularly new problem. Anyone who's "discovered" a new bar can attest to the initial rise, as you tell all your friends and they tell their friends, which inevitably ends with a place that's so full of random folks that everything you loved about it is gone. In the world of email we see Metcalfe's Plateau even more clearly: Spam. When the network hit a point large enough that you couldn't afford not to have an email, it also hit a point where you could afford to reach massive amounts of individuals for little to no money. Thanks to spam filters, we're able to hold back the flood waters. However, I think it's pretty safe to say for me that new additions to the network are unlikely to provide any additional value to me, since everyone I know or likely will ever know (minus those not born yet or too young to have an email) already has an email. Therefore each new email address (node) holds a certain likelihood to be spam or at least some unrequested contact. (I am not entirely sure about what I'm saying there, it's just a theory now. Feel free to tear it apart.)
As Jeffrey Stibel wrote in a piece called Networks Don't Grow Forever (which inspired me to finally get these thoughts down), "Networks do not always grow more powerful with size and scale. To be sure, Metcalfe’s Law applies to networks up to a point, call it a growth phase. But let us stake our claim to a new Law: all networks eventually hit a point of diminishing returns."
Thinking about it further, I think the distinction probably lies in who reaps the benefits of the network. In other words, the value of the Facebook network to Facebook likely does increase exponentially with each new user, as it allows them to attract even more people to the site. However, for the individual users like us, that value isn't necessarily passed. As Clay Shirky wrote in A Group Is Its Own Worst Enemy,
You have to find a way to spare the group from scale. Scale alone kills conversations, because conversations require dense two-way conversations. In conversational contexts, Metcalfe's law is a drag. The fact that the amount of two-way connections you have to support goes up with the square of the users means that the density of conversation falls off very fast as the system scales even a little bit. You have to have some way to let users hang onto the less is more pattern, in order to keep associated with one another.
Or, as Paul Saffo was quoted as saying in the Economist, "The value of a social network is defined not only by who's on it, but by who's excluded."
As should be obvious at this point, I don't know the answers here. Would love to hear everyone's thoughts. I'm also exploring some of this stuff with a mathematician friend of mine because I'm curious to see whether this idea can be worked out with numbers (and goodness knows I can't figure it out myself).
Leave a Comment
A few basics I've picked up in the last few months of building websites.
I've been spending a lot of time learning PHP/MySQL lately (which is part of the reason I haven't been blogging all that much). I've managed to teach myself to be somewhat proficient with the stuff fairly quickly and I thought maybe it would be fun to share a few tips to getting started. I'm sure many aren't that interested in learning this stuff, but for those that are, I hope these will help get you over the hump and give it a try.
So, here are a few things you need to know/understand (and if you understand this stuff better than I do, please feel free to correct me).
Databases
They're basically just big excel spreadsheets. Each table is the equivalent of a sheet in excel. Your goal with a database is to not have a lot of empty cells, so it's important to separate related data into different tables. For instance, on a blogging platform, you need to separate out comments and entries into different tables. That's because different entries can and likely will have different amounts of comments. Therefore, if one gets 100 comments and another gets 3, you'd still need to have 100 columns for comments and on the second entry you'd have 97 empty spaces. Make sense?
GET/POST
This is basically how you pass stuff from one webpage to another. When you click a submit button on a form it is likely doing one of these two actions (I actually don't think it can do anything else). They're both fairly simple: GET puts whatever you filled in the form in the URL (do a google search and take a look at the location bar) and POST passes the variables invisibly (and according to this page should be used if you're doing something like inserting the variables into a database or sending an email because GET is easy to mess with).
Moving Stuff to and From Databases
To do pretty much everything I've needed to do thus far I've only needed a handful of database commands. SELECT grabs stuff from your database. INSERT puts stuff in your database. DELETE (which I've used far less frequently), delete's from the database (surprising huh?). Within those commands you just use WHERE to define the parameters for what row or rows you want to grab (for instance, grab the first name and email for the user with the last name "Brier").
APIs
This is one of those things lots of people talk about, but few actually understand how they actually work (and I can't claim to be an expert by any means). Most APIs work by passing them a URL with the data you want in the syntax they've defined. They then give you back whatever data you requested (most of the time in XML which you then need to parse). Using Google Maps as an example, they make it super simple to get the latitude and longitude for an address (and you can actually try this without knowing any code at all by signing up for a Google Maps API key for free.
So essentially you need to construct a URL with the address and your API key. It works something like this: http://maps.google.com/maps/geo?q=INSERT ADDRESS HERE WITH +'s INSTEAD OF SPACES&output=DEFINE OUTPUT, IN MY CASE I'M USING CSV (COMMA SEPERATED VALUES)&key=YOUR UNIQUE API KEY. They then return a CSV file with 4 values, the latitude, longitude and two other things I can't remember (I think zip is one of them). With varying degrees of complexity that's basically how all the APIs I've experiences work.
So, I hope this is somewhat useful/interesting. Part of what inspired me to write this was a quote I read last night in a little book from Electric Artists (who celebrated their 10th anniversary last night): "If you can't explain it simply, you don't understand it well enough." That nugget comes from Albert Einstein and I couldn't agree more. Obviously there's lots more to it (I haven't really even touched on PHP), but these are a few mental hurdles I had before I got started. Hopefully it inspires a few people to give PHP (or some other web language) a shot. It's really good fun.
Leave a Comment
A list of domain names I own, but have yet to bring to life.
Last night I had burritos with Amit Gupta. One of the topics of conversation turned to domain names we'd purchased and never done anything with. I'm not sure if everyone does this, but both Amit and I have a tendency to buy domains for projects and then not necessarily see it through. All in all I own 29 domains at the moment. Of those about 10 are actually functioning.
Anyway, Amit suggested it might be fun to start a meme of sorts asking everyone to list out their unused domains. I'm going to get it started and if you wouldn't mind writing it on your site and then leaving a comment with a link that would be great. It'll be fun to hear some of the crazy ideas people had.
- backinthehabit.com: Not sure why I bought this other than I thought it was funny. Maybe one day I'll put up a Sister Act 2 fan page.
- endorsemint.com: This was part of an idea to create some kind of system that would help YouTube and Myspace stars find endorsement deals . . . never went anywhere.
- ganggreenblog.com: This is actually built and ready to go, it was going to be a Jets blog similar to Da Bears Blog. Similar to the Jets, it didn't really go anywhere.
- iamwhiteboard.com: Around the office we've got a whiteboard and for a while a new picture went up every day. The idea was to have a site documenting all this . . . we did it for one day.
- mommywhenwilligetmyfur.com: This is a pretty strange one, but a funny story. At one of this year's fantasy football drafts, Jason told us all about what Rosie O'Donnell had said on an episode of the view. Apparently in response to another host saying she bathed her daughter wearing a bathing suit, Rosie responded that she always bathed with her daughter nude. She went on to say the last time they were in the tub her daughter asked her "mommy, when will I get my fur?" Needless to say this became the joke of the draft and eventually mommywhenwilligetmyfur.com became the prize to the winner.
- thejobfilter.com: This was another halfway-completed project. The basic premise is that I hear about a lot of talented people looking for jobs and a lot of companies looking to hire. This was going to be a place to connect the two . . .
- wearespacemonkeys.com: A kind of inside joke with Loren from 1938 Media.
Anyway, that's it. So now it's your turn, what's in your domain name graveyard?
Leave a Comment
Maybe the reason people attack the internet is because they're scared of how efficient it makes us.
I've been wondering for a while when it became socially acceptable to meet people from the online world in meat space. Way beyond the small likemind and coffee morning gatherings are 40 million Americans engaging in online dating. Ten years ago if I told someone I was going to meet an online friend they'd have thought I was nuts, now they only thing I'm a bit mad. That's progress folks.
But why? What's caused this change?
I'm going to use some of the comments from the last post to guide the discussion (and highlight again how much I appreciate the brilliant comments). This is an experiment in post writing, so please bear with me.
. . . the way that we interact with each other - both with our friends and with strangers - is completely changing. There are hardly any lines anymore between what's virtual and what's real, what's digital and what's physical. (Orli)
Our points of access into the online world are expanding. We are becoming more comfortable with the communication that happens there and better able to judge the authenticity of the voice we are reading/hearing. (On a side note, I can't help but wonder if it's just a coincidence that the upswing in my social contact as a result of this blog is directly related to me adding my photo to the homepage.)
But there's another side:
. . . it seems every day the internet is finding new ways to distance people - noah's likemind group not withstanding. It's making people lazy - physically, emotionally, mentally. (Jeff)
A common concern, but as an avid user of social media, Chet responded:
I don't see distancing and lazyness. Personally, MySpace has expanded the surface area of my social life immensely, in a way that has helped me become friends, and see in person, way more people than before (and more interesting people, usually). For example, I just moved to new york, and I instantly had quite a few friends - because of a few connections that were strengthened through the site. This was entirely enabled by MySpace (and as it happens, the job i got here was enabled by blogging). I am also able to stay in contact with my friends in Toronto to a much greater degree. Hell, before I moved, I sent out a bulletin about selling all my stuff, and the next day, all my friends came over to my house (they had seen the photos on Flickr, too). It was a great time. I think that's efficient, not lazy. (Chet Gulland)
And here we come to one of the great dilemmas of social media and the internet: How much efficiency is good? Take online dating, for instance. It's hard not to feel like a bit of serendipity has left the world of dating when you choose someone via profile. The thing is, how often do people actually meet at a bar for the first time? Meeting people is a difficult task and I would guess the majority of relationships are set up in one way or another. So how different is online dating?
A lot of the fear of the internet comes with the idea that when people open their browser they lose their ability to think critically or make decisions on their own accord. I'm not quite sure why this is, but it's not new. I remember being in school and having teachers tell me that there was a limit of internet sources I could cite. Their argument was twofold: Firstly, books are inherently more trustworthy because they've been printed (which is total bullshit). Secondly, I would be lazy and just pull up whatever it was that showed up in Google and use that to support my thesis. Of course there is absolutely no reason I couldn't do the same thing in a library, but that never seemed to register.
At the bottom of all this is a fear of efficiency. We don't like the idea of people working smarter, not harder. Why do something in 15 minutes that could take three hours? I guess it can feel less 'human' to be efficient, but it's not like a human didn't build that efficiency tool in the first place.
We are evolving. I would guess our brains are quite literally changing.
And we're building it as we go . . .
Leave a Comment
What seperates humans and computers is the ability to curate rather than filter.
Don't mean to hang on the word tip for another entry, but this is something I've been thinking a lot about lately.
For a while we've been talking about what all these bloggers and companies are doing online as 'filtering': They are helping bring news I want to me without all the other stuff. In fact, that's how I thought of myself, especially the sidenotes (for those that don't visit the site, they're on the homepage), which are just links to other places that I think are interesting. I've talked about it a fair amount in the past, even suggesting in an iMedia article that marketers need to become filters for consumers.
While I don't deny the value in filtering, I've decided that from here on out I've got a new word.
Curation.
The word suggests I'm actively looking after what I put out there for you guys, rather than just passively filtering by something like title or category.
What's really interesting to me about this idea is that I think it's what separates humans from computers: In the future computers will filter and humans will curate. While the computer will help and be fairly accurate, it won't know the audience well enough to recommend a far out story that doesn't fit in the algorithm.
So, welcome to NoahBrier.com: Carefully Curated Since 2004
Leave a Comment