Once we get a helicopter view of the project, we start calculating the budget. Engineers are not really good at numbers and budget. Here are the list of items that should be taken into consideration.

To determine project costs, give a thought on the following categories

Personnel:  This is typically largest part of the budget. They can be current employees, contract employees.

Travel:  Its based on whether your employees are onsite or they have to be brought to location.

Training:  I would advice people to look at training as a investment and spend wisely. If training involves guest lectures or support, they also need to be calculated.

Supplies: In addition to pen, paper, Is there any special equipment that you need. It could be even computers.

Office Space: How much room is required and at what cost?

Research: Do you have to buy studies or data to support your project? Is your team capable of performing research. If yes at what cost.

Capital Expenditures: What is the expensive equipment or upgrades that would be necessary. It would be great if the capital expenditure can pay for themselves.

Overhead: It includes your projected overhead expense. So this would help you to fix Standard Overhead percentage.

Other Costs:

Maintenance, Insurance, Licensing, Legal, Accounting

Budget

A budget no matter how carefully planned is still your best guess.

Fully fund a project or do not start it

— Norman R Augustine

Advertisements

Some people in this world are blessed with money and others with time. The ones with time are students and enthusiasts who dream and build their dreams themselves.. hmm enough of philosophy and i will jump into the point..

I had been querying people with experience in web development and especially those who are heroes at social networking platform. Many people build a site either to test their luck or to showcase their talent. You can put it on your resume or a model to attract freelancing jobs.

The first question to ask yourselves is why do you want to build a social media site.. The answer may be anything that convinces you.

Based on your answer for the previous question, the features, budget and other factors matter. For example if you want to grow as a site with million users, then you undoubtedly need a huge budget or good skills with perseverance to start and grow in a lean way.

The technologies which i believe are very basic requirements and the developers need to know are

HTML,
CSS,
Javascript (Frameworks),
PHP,
MYSQL.

I remember me working on a project an year ago where we got one of the basics wrong. We chose a HTML + CSS template online but failed to use master page concept there. So every time to update a Hyperlink, we used to modify in around 80 webpages. So master page is mandatory. If possible a different header and footer page.

HTML + CSS can be managed well and take less effort if you can compromise on a template. There is an another javascript framework that can help you to get custom components etc. Its Jquery. The component could be a photo slideshow or frame etc.. But its very powerful. A lot of effort might be required in building components for first time. These days even front end development needs a lot of coding. So use MVC or similar pattern to prevent your code from code rot.

PHP is called language of the web and around 70% of the sites run on PHP. I dont have any experience on PHP projects. I had used J2EE servlets and JSP. It worked well. I advice you to follow design patterns if i am not wrong. A proper MVC architecture and good separation of code for maintainability, delegation among developers. For Development we used Eclipse and Apache Tomcat Server. If you are a beginner, get familiar with http error codes and make lot of mistakes.

The database choice would be mysql. Its easy to connect and it goes well with PHP. In J2EE  I had used JDBC concepts for connectivity. This code should be kept in a seperate layer and if possible store the query in a xml file and read it in runtime. So in java we can avoid compiling and .Class file generation. Get the primary, foreign key relationships correctly and avoid dropping and recreating tables unnecessarily. As you work in a project, you may need to have separate insert scripts to insert data into tables instead of manual entry. use the concepts of indexing to increase the performance.

The above concepts hold good for web application. In social sites, a lot of custom scripts are required. Example upload a photo, organize and edit them online etc. So a lot of hardcore coding is required.

Do you want the page to be rendered slowly or fastly on your client machine. The answer is always fastly. Use Server side Caching to avoid delay and reducing database calls. One of the popular caching is MemCache. I havent used it in real projects.

Its not over, you need to have a testing strategy. Follow micro optimization correctly so that you need to worry fixing bugs while integration. Once integrated you may have new bugs to fix. Once maintenance and enhancement phase starts regression testing is mandatory.

For a social site, growth is necessary but creates new problems. You may need to even buy dedicated hosting and huge server space to store users photos like “A pup eating dog biscuits” and whose size is 4.9Mb. Though its sounds simple.. there are 1000s of such photos that might get uploaded every minute. So you may even have to learn Big Data concepts, Data WareHousing etc..

But dont worry, once you site starts growing. You may either take VC money or your website generated money to hire good talented people and they will do it for you.

Happy prototyping and learning..

Advice you to share the good development practices in the comment threads..

3 wow features of Playbook tablet

Posted: November 10, 2012 in Uncategorized

Playbook is a 7 inch tablet from Blackberry.. As blackberry sounds professional and superior build.. the tablet too stands up in terms of quality and premium professional features.. on the down side its a bit bulky and thick..  wifi only adds to the problems..

 

the top notch features are

1) HDMI slot for display, but even Ipad has this. The professional feature is missing. the presentation can be seen on tv but the user can see notes in playbook.

2) Bluetooth transfer even when the tablet is in sleep mode. so u need not pull it out and display ur gadgets before others while transferring files. Other cool feature is that bluetooth can let u connect keyboard to playbook.

3) Sync and backup over the wifi. 

5Mp back camera and 3Mp front cam adds to professional quality. The build and rubber finish in the back also makes it unique.

Down side is that its for class and not mass people.. class means business class.. 

Google has been playing the game carefully and skeptically. The targetted audience is a wider group of people. Nexus 7 hardware came from ASUS who were the best in the android tablet manufacturing.

Nexus 7 is a tablet. A 7 inch one..

Nexus 4 is a smartphone. A 4 inch one..

 

nexus 4 hardware comes from LG. For the given features, the pricing strategy is similar to Nexus 7. Competitively priced.

 

Common question which we should ask. Are they subsidizing the price? are they kind towards customers?

The answer which was given by many was, in course of time the customers will pay some money back in the form of purchases from play store. These devices are oriented towards cloud. Some we may buy something and that will pay them back.

Image

Another cool feature, the unlocked versions are available at lesser price. Price likely to be around 299$

The best camera is one of the best features that anyone expects from a highend phone. A high quality pic from a high end phone gets more attention on facebook and social media. Camera sales remain healthy inspite of mobile penetration in this segment.

Iphone is the most used device for posting pics to social sites.

Some of the good shooters are

HTC ONE X

Samsung galaxy S3

Nokia Pureview 808 ** good one..

Sony Xperia S *12Mp cam

Appe Iphone 4S

 

we can use accessories like PhotoJOJO fisheye. its a magnetic ring to the phone photo cam.we can shoot subjects with in 10-23cm.. price is around 2.8K INR

Microsoft vs Apple

Posted: November 3, 2012 in Uncategorized

Most of the technologies which i mentioned below need no introduction. This is just a small list between the services these giants offer and how they rival at market.

Windows 8 vs Mountain Lion

Surface vs Ipad

Windows Phone 8 vs IOS 6

Smart Glass vs AirPlay

XBOX vs Apple TV

Ultrabooks vs MacBook AIR

 

 

Fashion Tips

Posted: November 3, 2012 in General non tech tips

For a formal setting like wedding, your watch should be elegant and simple.

A light moisturizer can keep you looking good without causing you to sweat because of heat or jitter.

Adding a pocket square is a classy way to inject a bit of  colour into a formal jacket.

A white vest under short sleeved shirt will make your outfit look more structured.

keep your beard trimmer in bag of choice so you can always refresh yourself before a big meeting.

If you are getting the drinks for clients, make sure you pronounce them correctly.