Categories
facebook rant

My Thoughts on Facebook as a Public Company

The past two weeks have been filled with opinions from experts on Facebook and its IPO.  I would say about 66% lean towards the negative side and say to avoid them at all costs.  Why?  Because GM pulled their ads.  Because a survey said 40% of their users will never click on an ad.  Because experts on TV, who don’t even understand the web, feel that they are overvalued.

I’m not an expert when it comes to stocks or IPOs.  I’m not going to write about P/E ratios, shares outstanding, or their market cap.  I am going to write about their product and its influence over the web.

Pages Per Visit & Reach

Facebook has roughly the same amount of pageviews as Google per day according to Alexa.  They are the 2nd most visited website on the web, just behind Google.

According to Alexa, Facebook is estimated to have 12.24 pages/visit .  For comparison, Reddit is listed as having 10.6 pages/visit.  So how accurate is this metric?  Reddit’s blog post from January shows 13.00 pages/visit.

This means that Alexa likely undervalues by almost 2.5 pages/visit and Facebook could be closer to 15 pages/visit.  As someone who runs a website and is a web developer, I assure you that 15 pages per visit is absolutely insanely good.  Their users are addicted and love Facebook. Few sites or companies can pull off these kind of metrics.

Social is a Fad

Many experts believe that social media is a fad and/or Facebook could easily be replaced.  I strongly disagree.  Remember when web portals were going to be a thing of the past?

Yes, its true that Facebook is not the first social website.  Friendster and MySpace came way before Facebook.  Unfortunately, their websites lacked innovation and sophistication that their user base was desperately craving.  Facebook forced the social platform to grow up and users graduated from MySpace/Friendster to Facebook.

Keep in mind that when you see commercials, Facebook and Twitter pages are often shown.  Facebook does not pay these companies for the advertising.  They are actually WILLING to showcase these two social networks because that is how important they are to advertising and reaching your customer base.

Today social websites are as important to the web as search engines.  Speaking of search engines…

Google

If Google has taught us anything, it’s that being the first to the market means nothing.  It’s about who innovates and pushes the platform to the next level.  Facebook did that with social and Google did that with search.  Altavista = Friendster.  Excite = MySpace.

The experts did not believe in Google when it IPO’d either:

To see a market capitalization valuing Google as a mature company is assuming a best-case scenario which isn’t a for-sure outcome. It still has a long way to go to justify growing into that kind of market value,” said Michael Cohen, director of research with Pacific American Securities.

Cohen added that in addition to Yahoo!, Google will face increased pressure from Microsoft, which has been stepping up its research and development efforts in its MSN Internet business.

Potential Growth

Does anyone realize how Google makes money?  They make most of their revenue from advertisements.  Guess what other companies makes most of their revenue from advertisements?  Facebook.  Some of my points here piggyback Venture Beat’s awesome article.

Charts here show revenue growth compared to similar IPOs.  Their opinion is that Year over Year growth is going down, not up.  This is obviously a bad sign, however the graph also indicates that Zynga’s growth year over year is better than Facebook.  It’s amazing what you can make a graph do.  That tells me absolutely nothing because Zynga would not exist without Facebook.  Meanwhile LinkedIn has perhaps 1/10th the amount of pageviews of Facebook.  So how much weight should we really put behind something like this?

The truth is that Facebook’s growth potential is insanely high.  They haven’t entered China and their mobile platform is still in its infancy.  Facebook realizes this and already is taking courses of action to correct this, namely by buying Instagram.

Their current revenue numbers could change drastically once they figure out mobile and their platform continues to mature.

Conclusion

What I wrote about here are taken from a web developer perspective.  I honestly don’t care about an investor’s expert opinion when he may have a hard time understanding the product.  He is looking at the revenue numbers and makes a judgement compared to the industry giants.  What he sees on paper simply doesn’t add up to the hype or the valuation.  That is completely understandable.  Software and the scope of the web is not a tangible thing that people can easily wrap their head around.

As I said, I am not a stock expert. I don’t dwell on P/E ratios or shares outstanding.  I don’t know what their stock is going to be at in 6 or 12 months, but I do know that Facebook, as a product, will be as popular as ever.  And that, by itself, has to be worth something on the open market.

 

 

Categories
work

How Many Hours Should You Work at a Start-Up or Company?

Generally what I think about things is a different way than the majority. (Talk about a general statement, sheesh)  I haven’t decided if this is a good thing or a bad thing.  However, it’s nice to see that Valve agrees with my opinion that working overtime week after week is generally a bad thing.

Read this blurb from their employee handbook:

While people occasionally choose to push themselves to work some extra hours at times when something big is going out the door, for the most part working overtime for extended periods indicates a fundamental failure in planning or communication.If this happens at Valve, it’s a sign that something needs to be reevaluated and corrected. Ifyou’re looking around wondering why people aren’t in“crunch mode,” the answer’s pretty simple. The thing we work hardest at is hiring good people, so we want them to stick around and have a good balance between work and family and the rest of the important stuff in life.If you find yourself working long hours, or just generally feel like that balance is out of whack, be sure to raise the  issue with whomever you feel would help. Dina loves to force  people to take vacations, so you can make her your first stop

If you are staying at work until 6PM or later every day, then you are doing it wrong.  If your company culture is that working until 6PM or later is the accepted norm then you are doing it very wrong.  There is nothing wrong with having a life outside of work.  To those of you out there who enjoy working long hours every day, then more power to you.  However, I feel as though this far from the norm for the average person.

Go ahead and read Valve’s handbook. Assuming this link stays valid and they don’t track me down with their Spy class.

 

Categories
facebook rant

My Thoughts on Facebook Instagram Backlash

Before I get to my specific opinion, let me voice my opinion of the two companies as separate entities.  Facebook, by itself is a fine service for the average Joe.  I personally don’t use Facebook because I think it’s a waste of my time. Instagram is similar to Facebook, and it pretty much invented the sharing photos game in the mobile space.  They are also popular for their over-the-top styling of photos that makes anyone think they have talent.

So in summary, both services are fine but not for me.  Clearly Facebook is lacking in the mobile department and Instagram is meant for mobile with no desktop penetration.  Sounds like a good fit to me?  Facebook’s mobile app might turn into something pretty awesome after this.  Instagram are going to have a lot more users in their grasp and probably have a vision where they want to take the company.  Being acquired by Facebook was an offer they could not refuse and it’s shocking to see some of these comments:

 

 

And finally:

One of my personal favorites is a story entitled: “Apple should have acquired Instagram” saying:

I would more likely wanted Apple to acquire Instagram. Apple actually needed Instagram much more than Facebook and Google. With a few Apple’s failed attempts to go social(remember Ping), that could actually worked. Instagram has 29M iPhone users. Most of them are very engaged with the application. The combination of Photo Stream + Instagram could be super powerful. I can see myself using it(a lot). Also, by purchasing Instagram Apple could have keept it iOS-only. That would be much appreciated by current iPhone users and for some people might be a reason to switch to iPhone.

Yes, that’s just what we need.  Apple to acquire Instagram, convert it to a pay only app. Charge $2.99 for the iPhone version and $9.99 for the iPad enhanced version. Perhaps throw in a subscription in there someplace for cloud syncing.  Not to mention keep it iOS only because that sounds pretty exclusive and cool.

My brain might explode. . .

Categories
Google

Your Search Engine Sucks

I hear a lot about alternative search engines.  If you do some Googling searching on the subject, then you’ll quickly realize that there are many “alternatives” out there.  I’m not talking about companies such as Yahoo and Bing.  Of course we know that these guys are alright when it comes to search, but even they come up short.  So let’s quickly ponder about the type of challenges a search start-up faces in this space.

DuckDuckGo is the first one that comes to mind.  I see them pop up quite a bit since they constantly appear on hackernews.  The truth is that they would be fortunate if they could capture Bing’s share of search, let alone actually competing with Google.

The real question is why?  Why not at least give it a try, right?  After all, Google Chrome came out not too long ago and has quickly captured a large chunk of the market.  Keep in mind three things about that: 1) The browser market was no longer innovating at a fast pace.  2) Google has an immense amount of resources at their disposal 3) Google saw inefficiencies and knew they could improve upon them. 4) Developing a browser would fit well into their existing business model and future business opportunities.

Recently Google released a video on an internal discussion about search.  Watch that video and let this quote soak in for a moment:

The specific change discussed in this video improves spelling suggestions for searches with more than 10 words and it impacts only .1% of our traffic.

Google’s platform is so mature that these are the current problems that they are solving.  Do you really think that is what is going on at DuckDuckGo and similar search engines?  Hardly.  They are trying to solve problems that were solved years ago and will be playing catch-up for years to come, assuming they are still around.  Keep in mind .1% of Google’s traffic is at least 100 times more than DuckDuckGo’s TOTAL traffic right now.

The only hope a company has is to appeal to a specific niche or hope Google implodes.  A company that prides itself as a general all-purpose  search engine is wasting everyone’s time because you will not come close to Google in terms of accuracy.  Your best bet is that Google beats itself and does stupid things like implementing changes that appear to hurt accuracy, or favor their properties, or break referral data that is critical for SEO.

So which alternative search engines are worthwhile?  Obviously Twitter’s search performs better with real-time search queries than Google.  For example, if I want to know if Firehost is having issues, then I would turn to a Twitter search.

So what solution does DuckDuckGo solve?  Privacy concerns?  I’m not so sure.  People who complain about privacy are the same ones who use Twitter and Facebook on a daily basis.  Five years ago searches based on your previous search history were “revolutionary” and “the future”, but now they are “invasive”.  Interesting how perceptions change, isn’t it?

Agree or disagree? I’d love to hear it.

Categories
cloudflare

Speed Up Your Site & Disable Cloudflare

My apologies for the sensationalist title, but there is a problem with Cloudflare that is not being reported on tech blogs, or their status page. My intention of this post is to simply get the word out to other developers. Enabling the cloudflare proxy can cause severe delay in response times.

Delaux.com experienced similar problems, way back in October of 2010:

I get 20 ms ping from my home and sub 10 ms from work, when the name servers run directly. After the switch-over to CloudFlare, I started getting ping in the range of 260ms – 300ms, they were unstable and over ten times my normal ping.

With Cloudflare proxy enabled I saw the occasional bad response time with FantasySP and thought nothing of it.  Over time, response times seem to have continued to drop.  Now it’s gotten so bad that Ajax POST requests would take up to 1 minute to respond.

I began getting complaints from my users.  I figured it was something on my end.  Maybe my host was having issues? Is my caching having issues?  I spent a day trying to track down the problem. Every other server monitoring metric suggested that they should be just fine.

It turns out the culprit was Cloudflare.  Once it was disabled, pages no longer took 100ms+ to connect.  Ajax requests no longer hung for up to one minute.

The issue with Cloudflare is worth mentioning.  There is a chance Cloudflare is slowing down your site and you don’t even know it, especially your WordPress Dashboard.

My advice to Cloudflare users is to disable the orange cloud and test out your site for a day or so.  Did response times improve?  If they got worse, simply re-enable Cloudflare.  (Keep in mind disabling the Cloudflare Proxy takes about 10 to 20 minutes to go into effect, so look in the Header Requests for “Server” and wait until “cloudflare-nginx” is gone.)

I hope Cloudflare fixes their issues because I will be the first one to jump back on the bandwagon.  Do they serve too many users?  Do they realize their service has degraded over time?  Perhaps there was a problem from the start, and I didn’t even notice it?

I have an open support ticket with Cloudflare and will update this post with anything worth noting.  So far they have acknowledged some type of problem and are looking into it.

If you have experienced similar issues, let me know.

Categories
developer

New Theme

It’s time for a new theme here.  I was looking for something simple, clean, easy to read, and fluid.  Oh yea, and free.  So this is it.  The designer did an incredible job with this one.

Categories
apache cpanel how-to php

APC Uptime Restarts Every 2 Hours

Do you happen to have a really bad uptime for PHP’s APC, and it seems to randomly restart after 2 hours or so?  Well, chances are that you are running cPanel/WHM on this server as well?

The problem is that you need to enable Piped Loggin for Apache.   This can be found under Apache Configuration in WHM.

It says:

Configure Apache to use a single log target for all virtual host access and bandwidth logs. The combined logs will be piped to a helper application where they can be split based upon domain. This option will reduce the number of log files Apache manages freeing up system resources. Piped logging is recommended for systems with a large number of domains. By default this feature is disabled, and Apache will create distinct log files for each virtual host entry.

Once you do this, your log files will be processed (it defaults to every 2 hours), without APC restarting.  For even more information, head over to this post on the cPanel forums.

This problem is obviously very frustrating and it took me quite a while to dig up the solution.  Hopefully this helps others out there.

Categories
rant

As the web gets smarter, your privacy will continue to decrease over time

Here goes another rant, but this time about privacy.

Everyone worries about what is collected about them from big companies like Google, Apple, Amazon, and Facebook.  Back when I first started using the internet, it was a time where you NEVER used your last name for anything.  In fact, few even knew my first name (hello xpose).  The last thing I wanted was someone to know my full name, let alone anything else about me.

Well, times have changed.

Many people use social websites that you sign up for and intentionally post your thoughts, photos, job status, and other personal information.  You think nothing of this, as its the norm nowadays.  Yet you complain when Google bases advertisements or customized search results on your browsing habits.

So what?  What are you afraid of?  What’s the worst thing that can happen?  Are they amasing a database with the entire population in hopes to one day sell your data and steal your identity?  Hardly.  You’re not that important.

Zuckerberg was right when he said the age of privacy is over.

People care, but I don’t think they know why exactly.  I am not giving these companies a pass for collecting data and not telling its users.  What I am saying is that you shouldn’t be surprised.  If you want your information to remain private then stop using these sites. In-fact, unplug your ethernet cable and turn off your wireless.  You aren’t going to find many places to visit that respect your standards on privacy.

As the web gets smarter, your privacy will continue to decrease over time.

But something tells me you won’t.  You’d rather still use these services, complain about their irresponsibility, then check-in to foursquare.

Categories
rant

The internet is our playground. We are its users.

Don’t look now, but the internet user has an increasing amount of influence over how or what is consumed online. Early on, only the geeks held some influence, but it is quickly moving towards the masses.

Geeks Force Legal Issues to Forefront

Roll the clock back to around 1997, way before the technological wonders of today’s world.  The mp3 was invented a few years earlier and the distribution of mp3s slowly began underground on places like IRC. (I’m sure elsewhere as well, but that was my primary method)  I never thought mp3s would ever make it to the average user, but boy was I wrong.  We didn’t know it at the time, but music would never be the same again.  At first the music industry was scared of something they did not understand.  Fast forward to today and mp3s outsell physical disc copies.

Also in the late 90s, the DVD was created to consume movies in a digital format.  Soon, a way to circumvent protection schemes on the DVDs, called DeCSS, was created.  Fair Use? Freedom of Speech?  The source code was printed on tvshirts and spread across the internet.  Geeks came in-defense of one of its authors and the internet was actively backing one of its own.

Fast forward a few years to the advent of HD-DVDs and the HD-DVD key fiasco on Digg.  I was a part of that, and we actually got Kevin Rose and Digg to change their stance and it felt pretty remarkable.  I thought this is about as big as it could get by having a voice online.  Boy was I wrong.

The Masses Get Involved

As the internet user base continued to grow, the average user became much more knowledgeable about the internet world around them.  Privacy started to become a key issue online and what is or is not appropriate.  Google had one of their first blunders when it came to Google Buzz and privacy.  Facebook too had their run in with privacy concerns (facebook beacon anyone?) again and again and forced some real change when the FTC got involved.

Average users also influence how websites evolve over time.  Twitter is a great example of this, as the hashtag was invented by one of its users.  Now we can see the hashtag across multiple websites and platforms that are incorporated in various ways.

Conclusion

Never before has an online following or action resulted in a pre-emptive strike against legislation until SOPA happened this month.  The blackout on Jan 18th was a great idea and major players across the internet were leading the charge.  Everyone should be proud of what was accomplished.  My prior examples have had their fair share of change and influence, but this is the first time I think that Congress has actually realized that we have power too.

Continue to be proactive.  Learn about the services you use online and the media you consume.  Learn about how the internet works and appreciate the work and sacrifice geeks did to transform the internet into what it is today.  In 25 years, don’t be surprised if high schools across America make the history of the internet mandatory curriculum.

The internet is our playground. We are its users.

(For more discussion, head over to hacker news)

Categories
guide how-to php

FantasySP, Building a Better Upgrade Flow

A few weeks ago I came to the realization that my current implementation of upgrading and billing users on FantasySP using Paypal was pretty terrible.

It was a clunky process where the user left my site to go to paypal, then they could sign in and/or input their credit card information.  After that, they get directed back to my site to a “success” page.

The user was unable to upgrade from a monthly subscription to a yearly subscription, if he so chose.  I never implemented automatic membership downgrades/upgrades because I thought I would be leaving paypal sooner rather than later.  To top it off, the design of the page was just plain bad.

Talk about a mess.  This is what my upgrade/billing page used to look like:

 

Old Billing Page

Simplicity is Key

When it comes to designing and implementing the new upgrade flow, I knew I wanted something extremely simple and easy to use:

  1. User should stay on the fantasysp.com domain during the process (SSL would have to be installed)
  2. Only 2 subscription choices to pick from with a suggested audience.
  3. Able to upgrade from monthly to yearly with a prorated cost.
  4. Able to apply a coupon code during selection BEFORE he checks out.
  5. Easily see the breakdown of features.

For me, Stripe seemed like the best option.  There are countless posts out there detailing what Stripe is all about and why its cool.  During the checkout process, stripe uses a javascript library that handles the form submission and processing of credit card information.  If it all checks out, then the form is submitted to my server with an authenticated token that stripe recognizes to perform the transaction, create a new customer, or subscribe them to a plan.  Therefore no credit card information is actually handled by my server.

Design the Page

Instead of hiring a professional designer, I decided to take a crack at this one myself.  If what I made looked like shit then I would bite the bullet and hire a pro.  I would never say that I am a designer, but I can pretend to be one.   I looked at quite a few checkout pages ranging from 37signals to Old Navy.  I skipped the Photoshop process of a mockup and went straight to designing in HTML/CSS because I knew what I wanted in my head:

User Upgrade Options

The boxes look pretty much like Monopoly cards, right? Instead of smashing everything together, I wanted to make sure I utilized the entire width of the website.  The user is presented with a CLEAR option of free, monthly, or yearly plus.   Underneath the price suggests who would benefit best from the plan.  Monthly is for the seasonal fantasy player, whereas Yearly is for hardcore players, and Standard is for the casual player.  When mousing over each box, the background turns yellow.

You may notice that I decided to use different fonts (via Google Fonts) because I think it makes it appear and feel more unique.  Arial gets boring real quick.  I also wanted to make sure that the page relied solely on CSS for styling.  Everything you see there are some fairly simple and common CSS techniques to add a bit of flare to each box.

The coupon code is shown just below the choices WITHOUT a button.  My site will analyze the text as the user types or pastes the coupon into the box.  In order to proceed to the next page, the user must click a box.  If a valid/expired coupon code is detected then it gives a message like so:

Coupon Code Entered

But of course, the user needs to see the full breakdown of the features.  The user also needs to see what the site would look like as a Yearly Plus subscriber, which means the top banner of the site will show Player Trends instead of banner ads:

More of the Page

The user can mouse over the bottom 4 choices and see more information about each via tooltips powered by qTips.  Now lets move onto the actual form to submit the subscription order:

 

Checkout Form

Thanks to Stripe, I don’t need their billing address or even full name to process an order.  We want the bare minimum here so the user can quickly move on.  Next to the plan is an option to change their plan.  There is also an option to “Go Back” incase the user changes their mind. The “Submit Payment” button is BIG and BOLD because the user should be able to quickly find the “Submit” button.

Again, clicking the “Submit Payment” button sends the information to Stripe and then responds back with a token if valid.  Once that happens, then communication between Stripe occurs and the user is upgraded to their selected plan.  If all goes well, the form is finally submitted and the user is presented with a Success page.

But Wait, There’s More

You thought that was it, huh?  That is the basic checkout process, but the user needs to see an email invoice to ensure they have something for their records.  Sounds like something else I have to design that also needs to look just as good and be just as simple.  Luckily I recently redesigned the email newsletter that goes out, so I used that template for the invoice:

Email Invoice

Looks like I should be nearly done with the design of the billing process, but there are a few more possibilites to take into account.  What about Cancelling memberships?  What about Upgrading from a Monthly subscription to a Yearly Plus?

Enrolled in Monthly
Clicked to Upgrade

As you can see, choosing to upgrade a subscription prompts the user with a new box via jQuery UI.  After clicking yes, the user is shown the price and is sent a new prorated invoice. Similarly, if the user wishes to cancel, then a similar box would pop up.

Wrap Up

Revamping a billing page takes a lot of planning, testing, and fine tuning.  Just the design implementation alone took about 2 weeks with lots of tweaking.  Lots of frontend technologies are used including jQuery, jQuery UI, Google Fonts, Stripe, and qTip.  There are still a few things that need to be tweaked on the frontend and backend, but overall the new billing is exactly what I envisioned and is light-years better than what I had.

Hopefully this post will help others who are thinking about revamping their upgrade flow. Nearly 3 weeks of hard-work launched a few days ago and it was great to see a few users already go through the process with no problems.  Merry Christmas to me.