2018-12-27

Apocalypse

There are at least 5 main types of civilzation-ending catastrophes. I'll offer some context and mitigations where I can.

Nuclear War

2 cities destroyed (Hiroshima, Nagasaki), and 15000 warheads remaining. At least ten close calls have occurred. MAD only works with rational actors. Vote for anti-war politicians, I guess. I wouldn't bet on first-strike capability. Terrifying and real, unfortunately. Time frame: Mid-20th century through foreseeable future.

Robotic War 

Robotic war directed by evil humans (see drone strikes) or artificial intelligence (Terminator, The Matrix). While this problem seems much smaller than nuclear (for the combination, see WarGames), self-replicating robots could gain numbers quickly. For that matter, viral software can spread instantly. However humans and A.I. share responsibility, robotics and software accelerate war. This is the most complex and open-ended threat. Best bet is serious cyber-security regulations. Internet-connected devices should receive security patches, have offline modes, and be refundable or re-programmable at the end of their support period. This problem is perpetually 5-20 years away, until it's not.

Climate Change

If we can stave off the previous two threats, this will gradually worsen over the 21st century. Flooding, drought, famine, wildfires, and mass migration have already begun. The good news is that nearly all countries now seem open to greenhouse gas emission reduction. China is building 100 nuclear power plants and manufacturing solar panels, so perhaps there is hope. I suggest sanctions on countries with high per-capita emissions, including our own. Lots of low-hanging fruit too: Indonesia, for example. A coal ban seems reasonable, as well as aggressive petroleum taxes to reflect the true cost to the environment. And stop fishing and raising cattle on an industrial scale. The impending loss of the Amazon rainforest will have global consequences.

Pandemic

So far, the most recoverable. I may be underestimating the risk. More risk to regions than civilization. Can also be combined with war.

Cosmic Misfortune

Large asteroid collision or gamma-ray burst. We should always have a few million invested in asteroid monitoring. These are the lowest probability, and thus least likely to occur first.

2014-04-10

GOOG & GOOGL Market Capitalization

Google Finance raises some questions about the market capitalization of Google between its Class A (GOOGL) and Class C (GOOG) shares.

https://www.google.com/finance?q=NASDAQ:GOOGL
Price: 546.69
Shares: 673.29M
Market Cap: 368.08B

https://www.google.com/finance?q=NASDAQ:GOOG
Price: 540.95
Shares: 697.33M
Market Cap: 377.22B

Market capitalization equals shares outstanding multiplied by price. This might suggest that Google's market capitalization is 745.3B, but it didn't double from the split because the share prices were halved. My guess is that the calculation for shares outstanding has not been updated.

Also interesting is the difference between the number of shares. Did Google distribute an additional 24 million shares of GOOG after the split? I suppose that was the point of the split in the first place, to put non-voting stock into circulation. That's 1.3B. That could certainly contribute to the falling stock price.

2009-04-17

Google lacking synergy

So Om Malik thinks that Google is out of big ideas. I'm not sure this is true. What he's noticing is a lot of copycat apps coming out of Google, which is a valid complaint. But Google is so big that it can concurrently churn out clones as well as develop unique products. I'm not concerned that their creativity is lacking. What I do think Google does wrong is missing a bigger picture. It's a safe bet that internally the big picture of a massive collection of user data is going splendidly. There is web browsing habits, video preferences, feed subscriptions, and so much more. Add it all up, and there is no limit to the precision with which advertisements could be directed. But externally, users are left with a bunch of disconnected experiences. None of them are exactly wrong, it's just not getting any of the same synergy. Google should take a step back and devote less effort on new ideas in order to solve this. What they really need to do is start folding several of their old ideas into comprehensive products.

Facebook is a good model. There is not surprisingly a fair amount of overlap with Google. But the difference is that Facebook manages to fit everything into one cohesive site. It's an activity stream, and any page is just a different view of that stream. I'm not saying that Google should necessarily adopt the activity stream as a primary concept, but they would benefit greatly from some way to represent its different services in some kind of homogeneous, combined view. Stop making users distinguish between concepts of email, docs, feeds, news, and such. Just present everything together and let people view and create content. I'm not saying these different concepts of data need to be completely forgotten, but they are abstractions that don't add much benefit. What matters are links, meta data, and read/write permissions.

I really thought iGoogle was going to accomplish this. In fact, I formed many of these ideas by misinterpreting an article about iGoogle (not sure where it was, probably TechCrunch). iGoogle is not living up to its potential, but it is a decent start at a true Google suite that is more deeply integrated than apps connected by navigation links. It is a test of modular, uniform JavaScript widgets (called gadgets here) in a useable layout. The main widget displays feeds and resembles Google Reader. Gmail is here too and works fine. Yet it has not caught on. Is this a marketing problem, or is iGoogle failing in some way? Well, both are a problem, but it might be a lot more popular if it stopped sucking so much. For one, the branding and UI are sub par. Also, the choices are overwhelming. It would be useful to be able to share layouts and configurations so that people could instantly satisfy niche cravings for content or functionality, or have an intelligent layout in the same vein as Microsoft's ribbon menu, that morphed to fit your usage. iGoogle's downfall is that it replaces Google's beloved spartan landing page. Imagine if Windows Live replaced the Windows Start Menu! iGoogle needs to slim down in order to wear the home page bathing suit, both in load time and graphical clutter. I think iGoogle may still be salvageable and get closer to some sort of all-encompassing interface. I don't know how active development is on it, though.

Another avenue is embedding more into the search results page. The contextual results with extra facts and functionality are great. It might be interesting to take this to the extreme. What if you could read and write email from the search results page? Currently, you can search your email or the web. Might as well just mix the results together to see what happens. The caveat here is that it has to practically read your mind so that you still get plain search results when you want. This is a serious problem, as seen with the controversial search wiki features. That clutters the interface as it is.

So all Google needs is one more big idea--to put their wonderful apps into one usable interface. Google already has a huge social graph, like Yahoo does, and would do well to capitalize on it. So far, they have been pretty disorganized: Gmail contacts, Open Social, Google Reader Shared Items and the mini-profile that goes with it. All of these provide marginal benefit, but it would be so much better to get one social plug-in that for all of these uses. A few months ago, Yahoo pulled the switch and made their user base into a giant social network, so I see no reason Google can't. Given that you have a clear view of who you're interacting with, shouldn't you have a clearer view of what you're doing? We currently hack existing apps for new uses, such as blogging by email or taking polls on Twitter. But you still have to jump around because not everything is accessible through any one technique. What I'm proposing is to jam all the functionality of different services, in this case a number of Google's, into one page. Widgets (HTML, JS) are the obvious solution, but what would really seal the deal is to have ways for all the widgets on the page to interact and share data. And that is pretty hard and pretty much has to be done case-by-case. Put a map and an image in an email. Put an email and an image on a map (inside another email). Working with the API it is possible to combine data objects in custom ways, but users often don't get a chance like that in the official app. It's a tall order, but it would be incredibly useful to have the best of Google's apps available to use across each other on the same page in an intuitive UI. Mozilla's Ubiquity accomplishes something in this neighborhood fairly well today. It provides a single interface for a number of utilities, such as search, translation, and bookmarking. It's easy to just throw a bunch of things next to each other, like iGoogle, and there are merits to that. But if Google's goal is to organize and display (and create) the world's information, they should figure out how to show it all together.

2009-03-13

Jon Stewart is wrong about the markets

The Daily Show with Jon Stewart had an interview with Jon Cramer of CNBC today, as you may have viewed or at least heard mention. While it convinced me that Cramer and his network are not worthy of sainthood, I felt that Stewart had some ideas about stock markets which clashed with my own.
CNBC could be an incredible tool of illumination for people who believe that there are two markets--one that has been sold to us as long term--put your money in 401ks, put your money in pensions and just leave it there. Don't worry about it. It's all doing fine. Then there's this other market, this real market, that's occurring in the back room, where giant piles of money are going in and out, and people are trading them and it's transactional, and it's fast, but it's dangerous; it's ethically dubious, and it hurts that long term market.

So what it feels like to us (and I'm speaking purely as a layman)--it feels like we are capitalizing your adventure, [...] but you go on television as a financial network and pretend it's not happening.
People routinely underestimate risk, and this apparently holds true with retirement plans. These were advertised as safe, but it didn't turn out that way this time. So, Stewart is right that average workers are being treated like piggy banks for investments, and this is wrong. But I see no problem with day-trading "giant piles of money". That's the awesome part of computerized financial markets. It allows capital to flow where it's needed, instantly. Sure, risk can be high, but it's perfectly within the rights of a trader to make investments with his idea of acceptable risk. The capital has to go somewhere, and even treasury bills, oil, and gold are not immune to drop in value. And the workers expect a decent return; otherwise they could have taken the original retirement capital and stuck it in a bank (and hoped it didn't fail). So you have to invest somewhere. When everything goes down, the people and the companies are screwed. Whoever sold earliest in the crash won. The winners may have moved to cash, bonds, Netflix, or Walmart. You may ask, "But who won? Where did all the money go?" I don't know the answer to that. It wasn't a zero-sum game it seems. I suspect most of the money was fake, all the CDS-related* borrowing creating the illusion of more money than was actually issued. Maybe it goes nothing like this:

A: "Sure, I'll pay you the 2 trillion next quarter!"
B: "OK. I'll write that on the company balance sheet."
...
A: "So, about that money."
B: "Oh, sorry. I don't have it on me, but here, take this CDS, I just created it as a package of a few other CDSs I had lying around. It's just as good. 'Po-tay-to'?"
A: "Yeah, yeah, 'po-taw-to'. But I want 4 trillion next year."
B: "No problem, Mr. A, sir!"




I don't believe that there was anyone who didn't see there was a problem. Real estate values were skyrocketing, coinciding with people over-leveraging on mortages. What many did not know about was the crazy credit default swap fiasco*. The downturn was going to come, but there was no way to tell exactly when, because it is only eventually triggered by someone coming to the conclusion that is about to happen. You want to pull out of an investment when you think it is rising slower than something else, within your preferred trading time frame. If you can stand to be in the market for another 50 years, you might as well stay in so that you don't miss the eventual upturn. But shorter term, if your portfolio is about the same as the Dow Jones or the S&P 500, when it reaches a peak and is about to crash, you would want to get out and switch to something that's not going to fall as much. So, enough people sell, and it's a chain reaction as sellers accept decreasing prices for the opportunity to get out, and the remaining bullish investors buy up bargains (maybe they're just looking for a rally the next day).

Now, I have never watched CNBC, not being a subscriber to cable, so I don't know how bad it is, other than the fact that it employs Cramer, who bragged three years ago about spreading baseless rumors for profit, as shown in a clip during The Daily Show's interview. But is the network really in a position to predict unlikely events correctly and remain believable? Wouldn't it end up affecting the market with its uncanny accuracy? Trading is based on knowing information that will affect the future value of an asset. If everyone knows and takes it into account, the market price will reflect its proper future value.

Or the doomsday predictions come too early and CNBC looks crazy, so everyone stops watching, and the network folds. I'd love to have CNBC reporters be tougher on mismanaged firms, but it already has a formula for what works to stay on the air, so I can't imagine them changing it. But surely I can't be more cynical than Stewart? He's probably not serious at all. He knows Cramer and the rest will never change, but it makes for a nice episode that could boost ratings and ad revenue for the show. (This revelation was found in an unabashed graphical prelude).

But what if all the companies in a sector are corrupt? Say some heavy-hitting strikes a serious blow Bank A's stock price. Maybe Bank B, that's just as bad or worse, is now in a position to buy Bank A. It would almost be better to have two bad banks running around than one. Stewart was right when he said that CNBC is not a regulatory agency. It is up to the F.T.C., S.E.C., Congress/President, and whoever else is in charge, to protect these companies from themselves so that the working class does not have to bear an unreasonable risk. And this includes some unfortunate bailouts so that we can still have working ATMs and get responsible loans. Bailouts are terribly inefficient, but I there are some companies that if brought down today would take swathes of others with them (some say this has already happened). It would also be nice if eventually companies could figure it out themselves, but our trust in them needs to be earned back before they are given the chance. And don't ever let them get too big to fail again!

Jon Stewart is appealing to a populist sentiment that plays well with his fans and others who are frustrated with the poor economic situation. But it would be irresponsible to outlaw day trading, in essence setting a speed limit on money. This would reduce total wealth in a way, since it is can be described as a function of the total amount of capital and the speed at which it changes hands**. Only the person controlling the money and the regulatory bodies can determine what the actual investment should be, and bad choices can and will frequently be made in the pursuit of reward.



*Look it up if you don't know what what on earth a CDS is. Wired had a good article on it.

**Ex. You and your friend each have a farm and pass a dollar back and forth in exchange for 80 of your onions and 100 of his beets per year. If you start passing it twice as fast, all of a sudden you can afford 200 beets. Score!

2009-03-07

Facebook Lives

In a previous post, I worried for the health of Facebook but acknowledged its role as a phone book and for possibly becoming the unifying form of online identity. Slowly, it appears to be coming true. People are usually more comfortable with an alias, but there are situations where it's more appropriate to use your legal name.

The Facebook Connect sign-in process is just one click if you stay signed in to facebook.com, which is much more convenient than the redirects and typing involved with OpenID. This is a huge advantage. Also, Facebook Connect is easier to implement for developers. It's quite convenient to have a way to get your visitors' real faces and full names to appear along with their comments with no extra work on their part. People might be more thoughtful when posting under their real name.

You may have also heard that new users are flocking to Facebook. This bodes well for Facebook as an uber phone book. People who haven't met in years can exchange a few instant messages. Facebook contains the feature sets of so many sites and apps that it is probably the closest thing to a Web OS. I could have written this post as a note. Every page and group gets its own message board and image gallery.

It's just too bad that it all has to be under the umbrella of facebook.com. I have not seen any usage of the APIs to make use of all of this communication on the rest of the web. This is partially because Facebook does not allow saving this data due to privacy concerns, and it's not as appealing to query it every time. But it just wasn't designed for this sort of thing. The idea is to pump data in, not to let it out.

So, Facebook is alive and well, albeit not out of the woods as far as turning a profit. It has scaled. The layout and functionality is all there. The people are there and available to talk to. The disappointment is in the apps and API, because these play second-fiddle to the things that really matter. I appreciate the social value of Facebook today, but I would love some decent competition in the spirit of OpenID and OpenSocial. (I say "spirit" because in their present and foreseeable forms, they're just not going to cut it.)

2008-11-05

The song that delayed LittleBigPlanet

The publisher found out that it contains lyrics from the Quran. Muslims seemed fine about this, but the game was delayed to take the song out regardless. The song is "Tapha Niang" by Toumani Diabaté.

2008-08-21

Amazon's second cloud-based storage product

S3 is probably suited for static files, as it is afflicted with latency. The new Elastic Block Store (not in any way related to books), is integrated with EC2 to provide dynamic storage that is better for databases. Notably, the space can be shared between different EC2 instances. You can also back up your data onto S3.

Kudos to the Amazon engineers for what appears to be another home run. I, for one, welcome our new Skynet overlords.

Facebook is dead

As you may know, the new Facebook hides the apps away on a page called "Boxes", which is listed 4th in the user page sub menu. But, the natural order of profiles has not been restored. Your activity stream is merged with the wall to become the default profile view, with your profile info (i.e. your actual profile) pushed to second.

It's pretty smart. Facebook has morphed into a Friendfeed or a Twitter. Your bio or other personal info is mainly static and therefore irrelevant, whereas your activity is fresh and interesting. Even less appealing is a list of personality quizzes you've taken, which is what passes for apps.

The Facebook team has done such a good job hiding the apps that I realized that I hadn't seen any in weeks. I thought a proper goodbye was in order, so I headed over to my friend Chase's profile to reminisce about the platform. He is probably one of its biggest fans, installing everything possible. I found this particularly amusing:

I mean, it's a steal! You'd be a fool to not take a 99.7% discount.


I just worry about the health of Facebook. The miniscule font size is particularly troubling. It's not too bad if you bump it up to double its original size, but come on. Also, the conversation seems to have died down. A lot of people are moving on and it's becoming apparent that Facebook is not much more than a phonebook. The saving grace will be if it can become the internet's single sign-on, which will be tested on Digg soon.

2008-08-17

Is AppJet the next big web framework?

I just got a tip from AppJet front-end developer, Aaron Iba, about plans for self-hosted AppJet instances. "We're thinking about releasing this soon." This was also just added to the FAQs page. What this means is that one could download the backend that runs the apps and install it locally, on servers, or even Amazon Web Services. Why would someone want to do this when everything is already hosted by default for free? The answer is that it allows an app to use more resources, namely storage space and processing time. An avenue for intensive apps, such as Agglodex, is desperately needed. Some people also get a kick out of DIY projects. The self hosting option appeals to experienced techies, whereas the recent beginner's programming tutorial was an outreach to fledgling or even non-techies. This suggests either a lack of targetted focus or a quest for ubiquitous dominance for the AppJet team.

The prospect of achieving a serious foothold in the web framework space is intriguing. The prejudice against JavaScript might be just too much, in which case it will never gain traction. Although, AppJet is not the only company toting a JavaScript web framework. Aptana Jaxer has an interesting approach that blurs the line between client and server code even further. With over 2 million downloads, the market is clearly there.

To explore the degree of success the AppJet platform can achieve, we need to consider the business style of the team. We know they are Y Combinator funded, which historically seems to take a less bottom-line focus (although the latest round seemed much more commercial). Note that AppJet has been public for over three quarters with an apparent revenue stream of zero, with only polls about desired premium features. It would almost seem that they aren't interested in money at all! This is a very good sign for driving adoption, as long as they stay in business. (The one thing that worries me is the coddling of beginning programmers. This is good for PR, but wasting valuable time for the 3 employees. The point of a framework is to coddle the application structure. Syntax help and programming theory is a job for the community.)

Let's face it: web platforms have to be free and open. LAMP is the reigning king. Ruby on Rails and Django are the up-and-coming challengers. All three are open source and 100% free. Microsoft's ASP.NET--not so much. So to have any chance at all, AppJet needs to be open too. Luckily, the FAQs indicate that exact plan.

Or maybe not? Maybe AppJet is part of the new-wave sandbox hosting, such as Google's AppEngine, that doesn't directly compete against traditional web frameworks. It's analogous to Reddit vs. Slinkset. Do you want to DIY or get up and running right away? As time rolls on, it is clear that the level of abstraction increases. It is even getting to a point where dealing with virtual instances of computers on Amazon Web Services is too much work, if code can just run on one huge platform. The cowboy era is ending and the mesh is beginning.

And this is where AppJet comes in. If they have the business sense, they will host the runtime on AWS and charge a slight premium over Amazon's rates. All of the server configuration can be handled with zero human interaction. This simplifies hosting for app authors just as now, the difference being that it is now scalable. Also, using AWS plays to the current paradigm of having all data cached in RAM.

So, is AppJet the next web framework? Could it be something bigger?

2008-08-14

Fancy File Uploader

This is a reworking of an example file uploader. I've thrown in my typical user accounts, pagination, and tagging to make it really powerful. Feedback is welcome. I will also answer questions about how the code works.

2008-08-08

Tagging Library for AppJet

The original and current versions of Vortices, have an only slightly more flexible category system than Reddit. On Reddit, you have to explicitly create a category, whereas Vortices had ad hoc categories with an option to explicitly create one. But this isn't quite what I had in mind. I want tagging, as Flickr and Delicious have, loose groupings that emerge naturally.

So, I built a tagging library that does exactly it. Then I built an example app to test it out. Surprisingly, it worked after I changed a few typos. What took the most time was all of the initial rewrites. I was having a hard time structuring it because I wanted to track who was doing the tagging and how many times an item was tagged with something, but in the end I decided it was too much effort as well as an impact on performance.

2008-08-05

fbFund oddity

Facebook is having a contest for new app ideas on their platform, with huge grants awarded to the winners (more information). Oddly, there isn't even anything that says you have to actually make the app. But the strangest part wasn't even that. Reading the terms and conditions for the fbFund, an odd phrase jumped out in the middle of page 3:
(2) Effective Use of the Android Platform (17%)
So let me get this straight. Facebook copied Google's Android developer challenge and didn't even bother to change the branding? This is beyond lame.

2008-08-04

Adding audio enclosures to feeds with Yahoo Pipes

I just finished my second "pipe" using Yahoo Pipes. If you haven't looked into Pipes, I strongly recommend it, because it is a testament of capabilities the web just didn't have until recently. It's main use is manipulating RSS feeds to create new feeds. Also, a pipe can make feeds from scraping web pages. Instead of editing source code as text, you insert graphical modules and fill in values to configure them. Then, whatever a module outputs can flow into the next module and the next, until finally the output is produced. Both of the pipes I created solve the same problem, adding audio enclosures to a music feed that was lacking them. I had to identify a pattern between the information in a feed entry and the URL of the MP3 file. The first one, Newgrounds weekly audio winners (original feed, my version, pipe page), was easy. All I had to do was copy the link and change "listen" to "download".



An experienced Pipes developer could make this in 2 minutes. But I have no idea what I'm doing, so it took me a couple hours of trial and error. The second one, remix.kwed.org (original feed, my version, pipe page), was a little more complicated. The link is http://remix.kwed.org/?search={id}. The MP3 is located at http://remix.kwed.org/{id}/{title}.mp3. Still not too bad, though, since all of the information was right in the feed, so no page scraping was necessary.

I still don't think I understand how to really use Pipes, as I am used to textual coding rather than visual. Maybe they will make it even easier to use in successive versions, assuming Yahoo isn't disbanded, with all of its cool apps sent to the scrap heap. But for now, if there's a quick hack you wish for involving feeds, and you don't feel like opening up a new programming project and figuring out how to host it, Pipes is your best bet.

2008-07-30

AppJet databases now faster and more powerful.

Good morning, everyone. You might like to know that AppJet, the cloud-based JavaScript framework that nobody knows about, just released an update, making it more efficient for the CPU and easier on the coder, a win-win. There are new methods that make it easy to filter and paginate and data sets. See the AppJet change log for specifics.I have prepared an example to show the new features in action.

Suppose you have a collection, storage.threads and each object has a property, text, that you want to display. But it would be unreasonable to display every single thread at once, so some sort of pagination is in order. SQL has a handy LIMIT command, and now AppJet has an equivalent, skip() and limit().
//Pagination variables
var start = parseInt(request.params.start) || 0
var items = parseInt(request.params.items) || 10
The first step is to figure out where we're starting and how far to go, using request parameters found at the end of the URL. If not specified, we fall back to the front page (0) showing 10 items.
storage.threads
.sortBy('-timestamp') //sort first so we skip the right ones
.skip(start)
.limit(items)
.forEach(function(thread){
printp(thread.text)
})
Then we make the database query and print the output in one shot. In order for this to work, each thread has to have been given a timestamp property when it was created. The obvious thing to use is a Date object, which is really convenient because it easily casts itself to an integer when needed. So sortBy() sorts things from least to greatest, and since time always increases, it would sort in chronological order. All it takes to reverse this is prepending a minus sign to the argument. Now we simply skip anything before we want to start printing and limit the query to a certain number of items. It reads a lot like English. Finally, at the end we loop through the results of the query and print paragraph tags with the text inside.

You can see a more advanced version of this example running live on http://post.appjet.net/, with the source code available. Next time I'll show you how to generate the links for pagination.

Please Solve Comment Fragmentation

Friendfeed is a leap in communication. Using RSS and proprietary activity stream APIs, you can track what people are doing across the web instead of just on one site. Facebook has some inklings of this as well. Whoisi adds wiki functionality which is parallel to imaginary friends on Friendfeed, where you can follow an activity stream of someone who didn't sign up or import a certain stream. XMPP will make the stream real-time and less intensive on networks.

This is all well and good, but there is still a problem. Comments. For one, Friendfeed doesn't thread the comments, which makes it too hard to have a conversation. But even worse is the fragmentation. Other sites, such as Reddit, will maintain a single page of comments for any particular URL. But Friendfeed can create several, and there is no way to find them all. There could be the original import of the item (maybe a blog post or image on Flickr) from the content creator, followed by any number of others' links to that item from Google Reader, Twitter, Digg, and the rest. And when those actions appear on Friendfeed, they all have the potential to create yet another silo of comments. You may see something interesting and be completely oblivious to a huge discussion happening around it. An app built on top of Friendfeed, Noiseriver, is trying to fix this. But Friendfeed is just a microcosm of a data siloing problem that the entire web faces. We're seeing a huge movement for something called "data portability", but this seems to have nothing to do with comments and everything to do with profile information and friends lists.

This is important too, but not the same goal. Sure, it's great to meet up with your friends on a completely different site, but does nothing for helping you connect with complete strangers. The real key to connecting people digitally is unifying the conversation. The argument against this is wanting to talk exclusively with one's friends, but this is unfounded since the program could easily bubble friends' comments to the top and only display other comments upon request. So I'm asking for a solution to comment fragmentation. We need an open API for posting threaded comments across the web. Any site choosing to accept open comments should accept a POST request stating,

"I am commenting on this URL in reply to that comment, and here is the text or URL of my comment".

And then of course you could GET for the current set of comments. Now anyone or any app involved in the discussion around a URL will be on equal footing and have access to all that is being said about it, because the silo now has a series of tubes running through it. Perhaps we can't realistically expect arbitrary sites to handle this kind of load, so some kind of glue, such as Gnip, may need to get involved. But this is the solution, and it will kick ass when it is created and people start using it. There is so much that the internet makes possible, so there is no reason to believe that what we have now is as good as it gets.

2008-07-29

Empire Maintenance

I finally got around to refreshing the layouts of my various web properties, namely my web site and this blogger template. Let me tell you, both were in bad shape. The banner now reads "vortices" whereas before it was "Vezquex's Vortices". The branding change doesn't really make sense. The domain is vezquex.com, after all. But it was the best logo I have at the moment. It looks pretty sweet over the fantasy space background; don't you think? I lifted it from a Russian guy, but let's keep that between you and me ;). The menu has some new items and should be easier to navigate.

The image used to make the menu bar is now monochrome and transparent so that it can be an arbitrary color using a background color, plus it looks cool over an image. I took out the Friendfeed widget from my home page and moved to the blog's side bar. I adopted their technique of many favicons linking to profiles. I still want to better integrate this blog into the site, but I haven't decided exactly how to approach that.

I've also been doing a lot over on AppJet. The concept of throway apps is great. I wrote a two libraries, lib-subdomain and lib-style, just for making my other libraries look nicer. I've bundled some pretty useful things into lib-general. But I haven't forgotten about the apps. One I recently made is an anonymous (for now) message board with support for external images and mp3s. I'm actually trying to write a user account library, but there are some bugs in it that I haven't quite solved, so it's not finished. There is of course an existing library that does the same thing, but I don't like its execution. (My main gripe is that it sends you to a separate page to log in.) On the lighter side of things, I have rewritten the PHP Novebruary script in JavaScript on AppJet, with added support for Septogust, so mark your calendars. I'll reimplement the widget too.

2008-07-25

Comments weren't working. Turns out they were turned off. But no longer!

I somehow got the idea that to use the Disqus commenting system comments had to be turned off on Blogger. That makes sense, because surely Blogger comments should be disabled so that they are not competing with Disqus. Maybe the way Disqus or Blogger works changed at some point because the commenting feature has been missing for a quite a while. And yet, it was working just fine on my other blog, so I investigated. I went to the comments section of Blogger settings for both blogs and looked for any differences. Oh! Comments were turned off for new posts on the Vezquex Blog. I toggled this setting and then went back through the old posts to make sure each one allowed comments. It would have been easier if Blogger had a toggle box for comments on the Manage Posts page so that you could handle it all at once. But I don't post that much, so it didn't take too long.

2008-07-24

U.S. Politics: Will things really be different when the Democrats control Congress and the Presidency?

We've seen how corrupt Republican control can be--spending out of control, perpetual wars, holding prisoners without fair trial and condoning torture. Even life long Republican voters are losing faith in their party. They are tired of war and scared of recession.

The probability of an electoral Republican win is low, and gaining net seats in either house of Congress is also highly improbable. Whatever the reasons, the support just isn't there this year, and it could take over a decade for the Republican Party to rebuild.

So let's assume a triple crown for the Democratic Party in the 2008 election: control of the Presidency, House, and Senate. I wonder how good Democratic control will be. Many of the Democrats in Congress vote for bills unpopular with Democratic voters, such as FISA, including Obama in this case [ www.senate.gov]. One problem is that there is simply too much to do. There is the of fixing and possibly nullifying poor legislation from years past (the Patriot Act comes to mind) and also new projects such as universal health care, which I don't even think they'll get to. Congress trails public opinion, therefore health care will come well after most people are clamoring for it, which they aren't yet.

One thing is certain: stuff will get done. Fast. There will still be enough Republicans around to filibuster, but that's only in the Senate. Now, more legislation typically means more unnecessary spending, but in this case that is not true. It is tempting for Congress to pass bills that sound good but are out of budget, and it is tempting for the President to sign them into law. Hell, the bill may be terrible in principle and cost. It's going to take some impassioned legislators to convince the others that the money simply isn't there, but it is not impossible. This is a tough issue because money seemingly grows on trees, but there is a reasonable limit to debt that the U.S. Treasury has surpassed. You can ignore it, but it's still there, devaluing the currency and siphoning tax dollars to pay interest. The flip side of this problem is that if Congress and the President were to cut spending and raise taxes and just pay off debt for years, they would look like they weren't even trying to do anything.

The prospect of Democratic control this term is quite appealing. America's economy, world image, and constitutional rights will all benefit from it. But the hole has been dug pretty deep, so don't be surprised if you get less change than you hoped for.

2008-06-12

Minority Report input on the cheap


Nintendo's Wii controller is pretty swell. You wave it around and the movement is translated into actions for whatever metaphor there is in the current game. Now take the controller away. Replace it with any random object or just a piece of tape on your finger. Take the Wii console away. Replace it with your normal computer and a cheap web cam. Viola. Nintendo is screwed.

And it's all thanks to a tiny startup in Israel. This works on any game. All it takes is someone to invent and bind a control scheme.

2008-05-24

Friendfeed Awesomeness

Friendfeed is getting a lot of attention. I find the site quite interesting, but actually using it bores me to tears. Maybe I'm using it wrong, not using the "hide" feature enough or simply having the wrong friends. Although the site is innovative, there is a lot of work to be done to bring parts of it up to par with other sites, namely the commenting system and categorization. It is not too much to ask for threaded discussion that allows line breaks. Grouping the discussions in some way would reduce repetition. But few are too worried about these minor annoyances which will be amended soon enough. Bare bones functionality is fine for now, with fine-tuning on the way.

The Staff
They're freaking ex-Googlers. What could possibly stop these rockstar developers? The designer of Friendfeed was behind Gmail and Google Reader. The simplicity of the interface just puts me at ease. Plus, there's knowledge of scaling and search. Friendfeed is the envy of Google, the social network they pine after with the Friend Connect initiative. I wouldn't be surprised if an acquisition happens. Wouldn't it be strange to get bought buy your former employer?

Competition

Some see it as the Twitter-killer, or at least want it to be. Sure, why not? Twitter was important historically because it opened our eyes to an on-demand worldwide conversation but it did not invent status updates nor could it expect to have a lock on them. Friendfeed is sneaky, because its gaining popularity from indirect posts makes it an increasingly attractive place to post on directly.

Digg-killer?
Digg is one of those silly sites that requires the extra step of submitting a link, completely ignoring the marvel of feeds in a hope to get better quality content. It doesn't work, because people race to manually submit every story from the major sources. Friendfeed is much more passive, even throwing out the CAPTCHA. Minding their own business around the web, Friendfeed users are streaming all of their links and posts effortlessly. Laziness is king.

Clones
With the web turning to soup, clones and parasites are sure to emerge. I don't know if Friendfeed can fend them off long enough to reach a state of dominance. Foreign-language clones are always a stickler. But if Friendfeed is open enough, with their API, feeds and widgets, potential competitors would be more inclined to work with it rather than actually compete.

Summary
Friendfeed is awesome. The development team has done most everything right, yielding a clean, efficient experience. Friendfeed takes up where Twitter left off in aggregating a global conversation. It is looking more and more like the end-all social network, at least for this week.