Thursday, March 21, 2013

myVidster PRO is back and language support

Greetings Vidsters!  Here is a quick development update for your favorite video sharing site myVidster!

myVidster PRO is back!
By popular demand I have brought back myVidster's PRO membership.  The membership gives you an Ad free experience, PRO badge and is a easy way of showing your love and support for myVidster :)
 

Language support in French and Spanish
If you look at the top right corner of myVidster you can change the language from English to either French or Spanish.  Currently the front end is translated and I am working on getting the user administration translated.  Hopefully I can have the entire site translated by the end of March.

Mobile App updates
I have made several updates to the Android and mobile app, mostly stability fixes.  I developed a native iPhone app, but was unsuccessful in getting it approved for the app store.  All I can say is that I tried, heck I even purchased a Mac Mini to develop the app.  Maybe in the future Apple will relax their guidelines so that great Apps like myVidster can be published.  For now iPhone users please use the mobile app, it works great you just lose the download to phone functionality.

On the bright side I can now say that I am a proud Mac owner ;)
Well that is all for now, keep collecting!

Tuesday, January 8, 2013

myVidster's 2012 year in review


Greetings Vidsters!  2012 was a great year,  myVidster experienced another year of rapid growth.  This growth being all organic, expect for our day of shameless promotion campaign ;).  I added more servers to handle the growth and to maintain an enjoyable user experience.  Here are some stats to give you and an idea of the size of our community.

Stats:
Register users: 314,748
Group membership: 21,807
Android user installs: 34,507
Monthly Unique Visitors:  5.1 Million (current)
Pageviews:  240 Million (current)
 
2012 highlights:
myVidster wins appeal in the 7th circuit count rejecting the claim that embedding is infringement.
myVidster Android and web app reloaded!
myVidster Group Pages.

While this list of accomplishments may appear small, I always focus on quality over quantity.  I spend most of my time improving new and legacy functionally on the site to ensure that users have the best experience.

What to expect for 2013:
The return of the PRO membership!
Localization of myVidster.com (beta launch will support French and Spanish)
myVidster store!

Well that is all for now, thanks for all the love and support and keep collecting!

Saturday, October 13, 2012

myVidster and personal update

Greetings Vidsters!  This is an update on whats been going on with myVidster and myself.  Most of my work on myVidster has been on the backend.  I recently retired a server and replaced it with a larger one.  This was needed to handle the site's growth.  To give you an idea of myVidster's growth here are some stats.

Pageviews (Google Analytics)
August: 162 million
September: 194 million

I have also spent a lot of time on mobile app development and manage to get a 4.0 rating on Google Play!  I know that iPhone users want a native app as well, but I am still undecided on if its worth my time developing a native app and take the risk of Apple rejecting it.  For now use the web app, its has all the same functionality that the native would have with the exception that you cannot download videos.

For personal, I decided to leave the boring Midwest and moved myVidster and myself to Austin TX.  Perfect timing because ACL is this weekend!  Expect to find me at local tech and start-up happy hours and events.

What to expect in the future for myVidster?  Currently I do not know, now that I have a stable mobile app and I have scaled out the site for future growth I now have the time and capacity to brainstorm on new and exciting ideas for myVidster.  If you have any suggestions feel free to contact me or post a comment.

Take care and keep collecting!

Wednesday, September 5, 2012

myVidster mobile app support reloaded!

Greetings Vidsters, I have spent the last two months improving mobile support for both the Android and iPhone/iOS devices.  I will admit that the first version of the mobile app had its laundry list of issues and user experience was OK at best.  Keep in mind that it was my first attempt at developing a mobile app and my goal was to get a 'working' version out just to see if I could do it.  Now that I have gained some experience, I decided to resume development with the goal of creating an app that you will want to use everyday.  Here are the goals I set for myself.

Only display mobile compatible videos
One of the biggest challenges was filtering out the video bookmarks that would not play on your mobile device.  To tackle this issue I had to create a MySQL memory table that keeps tracks of the video bookmarks that are mobile friendly (encoded in h.264).  This table is used to display only the mobile friendly videos on the homepage and in your subscriptions.  Please note that this filtering does not take place when running a search or when you navigate through a users video collection.  To enable filtering go to your setting screen in the app.


Improve the user experience
If you have been a active user of the mobile app then you already know that the user experience (UX) needed an overhaul.  With the help of my friend Ryan, we went though the interface of the app to make navigation more intuitive by adding left/right swipe navigation and redesigned the video display screen.  Features like video history was added and I did some changes to the css to make the app more attractive.

 
Improve performance and stability
Load times for displaying a video bookmark was around 3-10 seconds which is unacceptable for any web or mobile app.  With the used of smart caching and code optimizations load times have been reduce to 2-3 seconds.  Can I get loads times to under a second?  As I gain more experience with mobile development I should be able to reduce the loads times in future updates.  As for stability that is a no brainier, if the app crashes for any reason, I would track down the issue and fix it!

Where can I get this wonderful app?
For Android you can install it from Google Play or you can download APK file from us.

For iPhone please use our web app.  When Apple decides to relax their submission policies then I will submit the app to their app store.

That is all for now, take care and keep collecting!

Wednesday, July 18, 2012

Results from our day of shameless promotion

Vidsters, here are the results from our day of shameless promotion (Monday, July 16th).

Total Unique Visitors:  191,021 (net gain ~20k).
Pageviews:  4,055,575 (net gain ~ 300k).

All I can say is WOW!  My servers were working hard that day to handle the additional traffic.

Special thanks to my top referral sites that day (does not include Facebook or Twitter)!
http://bgclive.com/
http://www.lpsg.com/
http://www.machomoe.com/
http://pingalista.tumblr.com/
http://gayvenue.tumblr.com/
http://passivosdocaralho.blogspot.com.br/
http://theluckeystar.com/
http://blackcock.tumblr.com/
http://dick-down-nigg.tumblr.com/
http://marriedgaydad.tumblr.com/
http://gayxx.tumblr.com/

This campaign exceeded my exceptions.  In return for your support I been working overtime on providing new features and services to the myVidster community.  Please install the lastest version of the myVidster mobile app, new features like left/right swipe navigation have been added.

Android App (please rate with comment)
https://play.google.com/store/apps/details?id=com.phonegap.myvidster

iPhone Web App (weak video playback support, but it still rocks!)
http://m.myvidster.com/

Thanks and keep collecting!

Monday, July 2, 2012

July 16th, myVidster's Day of Shameless Promotion!

Greeting Vidsters!  myVidster has come a long way from its humble beginnings as a simple video bookmarking service to one of the largest social media networks on the web today.  myVidster reaches over 3 million unique visitors a month generating over 100 million page views!  The growth of the myVidster community was not due to a post on a popular blog or by the mainstream media.  Its success was from YOU.  You told your friends about myVidster, shared your favorite video bookmarks on Facebook and Twitter, provided feedback and help financially by upgrading to our PRO account.

I know you have given a lot and I am thankful for this, but I would like to ask for one small favor.  On Monday, July 16th I will be launching promotional campaign to inform the rest of the world of our wonderful service.  My issue is that myVidster's entire staff consist of one person who is myself.  I am asking you, the myVidster community to set aside of few mintues of your busy day to help in the promotions.

If you want to help this is what you can do.
  1. Follow us on Twitter @myvidster.
  2. Install and rate the Android myVidster App on Google Play.
  3. Share myVidster on your favorite social networks (Facebook, Twitter, Google+).
  4. Tell the world why you love myVidster on your Tumblr/Blogger/Wordpress.
  5. Add our video sidebar widget on your Tumblr/Blogger/Wordpress.
  6. Make a 60 second video about myVidster.
  7. Tell your friends about myVidster over beers.
  8. Be creative and have fun with it!
Some would ask, so what do I get in return for being your marketing rep for the day?  For one, I will be eternally grateful and if we was to cross paths I would offer to buy you a beer :).  If you are promoting myVidster to a large audience and you can provide proof of your work please contact me and I will upgrade your account to our PRO service for free.

So mark your calendars for this day, I will be post announcements on myVidster.com a few days in advance as a friendly reminder.

Thank for all the love and support.  Keep collecting!

Wednesday, May 30, 2012

myVidster Embraces NoSQL

If you are a hardcore web techie you have seen the word NoSQL toss around.  In a nutshell its an alternative database management system.  Most websites (including myVidster) are build with mySQL, a traditional relational database management system (RDBMS).  For the most part mySQL is one of the best database solutions out there and will meet most (if not all) of your data needs.

As myVidster user base grows so does its need for more and more data.  When your data gets into millions of stored rows and you are trying to insert 3000+ rows of data every 2 minutes, mySQL faults begin to show.

In my experience mySQL does everything well expect for inserting large amounts of data in a given batch job and your queries can take a performance hit when you are have to sort large amounts of user data.  Most developers will agree with my issue with inserts, but some will argue that proper use of indexes will solve your performance issues when sorting.  I beg to differ.

Lets say you want to sort all user notification by date and return the last 5.  You will put an index on both the user id and the post date.  If the users has 5000 notifications, mySQL will run a filesort on the post date index (all 5000).  Disk I/O starts to become an issue when you are auto refreshing user's notification every minute.  Now if mySQL provided sorted indexes, then fetching the last 5 rows by date would not require a filesort, but sadly mySQL does not provide this feature.

I knew I have reach the limits of what mySQL can do so I decided to look into MongoDB. MongoDB is a NoSQL document oriented storage database.  During my testing MongoDB could insert documents (there like rows in a table) at a rate of 1000+/sec.  That solved my first problem, what about querying large data sets?  MongoDB provides sorted indexes and as long as you define the sort order of your indexes correctly (ascending or descending) MongoDB will not need to perform an nscanned (its like mySQL filesort) on the user's data.  I am also using MongoDB for backing up and achieving data as well.

Am I planning on replacing mySQL with MongoDB?  For now my answer is no, MongoDB does not support table linking and the code rewrite would be massive and the performance gain might not be worth it.  I do see myself using MongoDB for new features that I have in the pipeline.

Well, I think that is enough geek talk for now, take care and keep collecting!