Extragram is the kind of web product that a lot of us out here are trying or so wanting to build, which would attract huge number of users from around the globe within a few days after release. So we thought of getting few lessons for you from the team that actually created this slick web app, yes here we have Karthikeyan, Co-founder ByteAlly sharing his team’s experience building their kickarse product extragram.
For those who haven’t heard of it, Extragram is a web client of the popular photo sharing Iphone app,Instagram. Instagram is a fast and beautiful photo sharing app for the iPhone with over 3million+ users within six months of launch. The company has no presence on the web currently but has released a public real-time API to developers to innovate. Extragram provides a clean web viewer for your Instagram photos. Extragram is Instagram at its best!!
Q) Karthik, Give us a brief info about extragr.am in your words
I will keep it short. Extragram is a kickass way to view your Instagram photos on the web and its for all the Instagramers out there. We built it because we felt that there were no good easy to use web interfaces for Instagram. Some of the features that we provide helps the user to discover more stuff. Something that is not offered by Instagram’s API either.
Q) Give us a small insight about the developers/founders of byteally who built extragram
ByteAlly is a team of 5. Me (Karthikeyan Mani) and my college buddy Ilayabasu founded ByteAlly after graduation in 2007. Back then it was a solely owned business. We became a private limited firm in february, 2010. Its been a great journey so far.
Talking about Extragram, itâ€™s a collaboration between us and EffectWorks. I took care of the coding and Ila did the front-end part. Sonaal from EffectWorks designed the interface. So itâ€™s a technical team of 3 and we had Kevin William David and Narayanan Hariharan, founder at EffectWorks to take care of marketing and PR related stuff. Itâ€™s a wonderful team to be in.
Q) Who came up with that idea? and how did that happen?
Sonaal did. Its his baby. Its his vision and that is evident in the user interface. We have let him take the director’s chair.
Q) What was the first thing that you did after validating the idea?
We immediately started the work and had the first version of Extragram in 2-3 weeks time. So we did well I guess.
Q) What are the technologies used?
Server side is done with Ruby (Rails framework) and MySQL. To answer the why part, well I worked with PHP for almost 3 years before I moved to Ruby on Rails and I feel that with RoR we can do things quicker without compromising efficiency and quality. It ticks with us. I would prefer RoR over PHP anyday and the reason is highly subjective. I am aware of the “RoR v PHP” debate and in most cases both sides fail to present pragmatic differentiators.
Q) What are the Operating Systems that you guys at byteally prefer especially for development.
Itâ€™s a mix of Windows and Linux. But all our servers except one run on Linux (Ubuntu, CentOS, SuSE). It would be tough to list all that we use because we work with all sorts of technologies from .NET to Android . Perhaps we can have a separate discussion on the tools we use .But if there is one tool I cannot live with its Firebug.
Q) Name some of the tools that you use for extragr.am’s development/testing.
for Ruby we used Aptana editor. JS, HTML, CSS -- Notepad ++ ( My UI partner, Ilayabasu always prefer Notepad ++ ) Performance tool - Curl Loader. TDD - Rails framework. Project Management - Pivotal tracker. Source control - SVN.
Q) Why did you choose SQL and why not No-SQL?
Why not SQL smiles Extragram is not all that data intensive. It doesnâ€™t have intensive amount of database read and writes. Most of the data you see on the site is from the API feeds. If you compare the performance of MySQL and NoSQL in an eviroinment where there is low amounts of read and write the difference is not much. Its is a matter of keeping things simple. I am completely open to all sort of technologies and thatâ€™s why our next product will be using NoSQL (Mongo) because I feel its best suited for what we are building.
Q) Where did you deploy extragram for the first time and why did you move it to AWS later?
We went with RailsPlayGround when we launched it,which eventually got crashed as soon as Robert Scoble tweeted about us. Ironically I was happy. But the server had no swap space at all so I decided to go for the best, AWS. I read somewhere recently “Amazon has the best engineers in the world. If they cant do it, nobody can”.
Q) How did you handle the server crashes during the initial stages, thats when you got huge number of hits from around the world. And did you expect that?
Donâ€™t sleep at night, That is the best strategy. I barely slept for few days post launch. It was a nervy time. Important thing that I learned from this experience is to take regular backups and always plan for the absolute worst. If you have a good PR team like we had then good for you. They communicated well with our users during our down time. Its important to explain things to your users. If you make an error you got to accept it.
And talking about the reaction on the product, we were happy but we are in no way pleased. We want to do more. And I kind of knew people will like it but it was amazing to read some of the reactions on Twitter.and it made us terribly happy! Its been a good ride so far and i think we still have a long way to go.
Q) How long did it take to build the complete app including designs n testing?
In 3 weeks we had the first version and we spent 4-5 hours per day during that time.
Q) What was the most challenging part that you guys came across while developing this product?
To be honest we didnâ€™t face any technical hurdles. It was an easy product to build.
Q) How do you go about learning stuffs while developing a product? what do you do when something doesn’t work (maybe a part of your code)?
When i started to learn PHP some 4 yearks back i didnt know anyone who knew PHP to get me started or help me around and i am not the kind who can read an entire book either. I just start playing around with the code and learn.
To answer the second question regarding errors in code, the important thing is to understand the problem. Sometimes even when its working i try to dig and understand things. I hate to be in the dark. You need to have the patience to go through exception stacktrace. I am not saying anything new but i have noticed that most coders that i have observed dont do that. They start googling as soon as they hit an exception. All you need to know is right there in the stacktrace.
Q) How did extragram get so much publicity all of a sudden? got featured in all the top blogs like mashable, tnw and many others. How did that happen?
Even before we wrote the first line of code we knew we were going to make it. We did discuss about getting published on these magazines. We knew we were building something really cool and I was absolutely sure once I saw the initial draft of UI. Kevs and NH targeted the right authors. Authors who were extensive users of Instagram. That was a pretty good move and the credit should go to Kevs and Narayanan.
Q) Is extragr.am generating any revenues right now?
We are not generating any revenues right now. The first thing we wanted to do was build a fan base. We have been pretty successful at that. Now its time for our business model to play its role. I am not sure we are ready to discuss it here. But there is one coming your way pretty soon.
Q) What are the future plans that you have for extragr.am?
We are integrating more services to Extagram. We have already planned two major updates and the first of the two should be out anytime now.
Q) Will ByteAlly be building more products in the coming days or will it just remain as a service/consulting firm?
Absolutely yes. But having said that its not like we have a dull time while we are in the service stream. Most of the projects we work on are pretty challenging and amazing and we love that. We work with some really cool clients. All in all ByteAlly is a happy bunch in love with the web.
Guys now its your turn, what do you think about Extragram and the team Byteally? Feel free to share your comments below.