The Money Mustache Community

Learning, Sharing, and Teaching => Do it Yourself Discussion! => Topic started by: Stagleton on November 27, 2013, 07:56:29 AM

Title: Building a website and getting help from elance
Post by: Stagleton on November 27, 2013, 07:56:29 AM
Hi,

First off, please let me know if this post is better suited for another section.

I am building an Android app/website. It has become too much for me to do by myself so I would like to contract out some of the work. I am trying to find developers using elance and I have hired one firm to build a feature for me for what I thought was a really cheap price, but so far it's been pretty bad work. Another development company is encouraging me to first hire them to change the internet site over to Symfony2 PHP web frame work. I am tempted to go with this option, but the cost is $1200. Does anyone have any experience with either Symfony2, using elance and if a Symfony framework is necessary for scalability?
Title: Re: Building a website and getting help from elance
Post by: aglassman on November 27, 2013, 10:05:14 AM
You'd probably get much better advice from a mobile development forum.
Title: Re: Building a website and getting help from elance
Post by: fragglebock on November 29, 2013, 08:55:56 AM
Shop around some more, and not just on elance.  Stay away from committing to anything you do not understand.  Consider paying a consultant to help you finalize your project requirements before you pay for development.  It's an additional cost up front, but it sounds like you are letting the programmers manage the project (by suggesting a framework they know how to use) instead of hiring developers who have the skills you require.  Although I work on elance, I am skeptical that a non-technical person could get good results from it because programmers cut corners, and if you cannot understand what they are doing you have no way to know where those holes are and what problems they can create.  You get what you pay for, after all.
Title: Re: Building a website and getting help from elance
Post by: bradleylsmith on December 11, 2013, 10:56:16 PM
^ this.

elance is great for programmers that are just starting out or for those that can't keep a long standing relationship going with their clients. Either because they are hard to work with, they don't produce a quality product or some other reason that's causing them to reach out to job boards for more work. Every once in awhile you can find good quality workers there but they are an anomaly. If you don't have the ability to tell the difference between good code and bad you need to stay away from elance, odesk and the like.

Not things you want in a complex job that requires a php framework. I think it's very important you understand the differences between the frameworks. Sign up for lynda.com and watch a few videos on the various frameworks to start with. I would also throw in node.js as a potential candidate....the thing is they all have their pros and cons and you need to align the pros with your job. Once you find your framework of choice then you want to find a firm or freelancer that specializes in that framework.

- freelance programmer by trade.
Title: Re: Building a website and getting help from elance
Post by: oldtoyota on December 12, 2013, 05:34:36 PM
Shop around some more, and not just on elance.  Stay away from committing to anything you do not understand.  Consider paying a consultant to help you finalize your project requirements before you pay for development.  It's an additional cost up front, but it sounds like you are letting the programmers manage the project (by suggesting a framework they know how to use) instead of hiring developers who have the skills you require.  Although I work on elance, I am skeptical that a non-technical person could get good results from it because programmers cut corners, and if you cannot understand what they are doing you have no way to know where those holes are and what problems they can create.  You get what you pay for, after all.

This raises a good point. I think you need an impartial party to tell you what platform you need and not a development company that works on platform X and so will tell you X is best.
Title: Re: Building a website and getting help from elance
Post by: Insanity on December 13, 2013, 12:52:53 PM
Elance is notorious for underbidding projects.  I have an account on it and submitted zero bids because of that.  You just can't compete with it if you know what you are doing.

I have been doing software engineering for 15-20 years (depending on whether you count my co-ops or not ;) ) and have been in the application security space for the last 9 (wow). 

Here's some tips:
If the contractor is suggesting you change to a different framework and their reason is: because we know it.  Then you are probably getting screwed over.  It is just a hunch.  If they can offer some solid performance reasons (either site performance or lower development costs than continuing down the current path), they will provide that in detail. 

Depending on the site, please make sure that you develop it (or your contractor/consultant) build security in (as I said, I'm in application security).  I would be more than happy to discuss anything with you over PM if you have specific questions.  I'm familiar with PHP, Python, Java, Perl, Ruby (very lightly).  Feel free to reach out.
Title: Re: Building a website and getting help from elance
Post by: Stagleton on February 22, 2014, 03:09:36 PM
Yup! Pretty sure the framework was a bad idea. Well that was a painful pill to swallow.
Title: Re: Building a website and getting help from elance
Post by: warfreak2 on February 22, 2014, 03:12:57 PM
Mind if I ask what the app/website is?
Title: Re: Building a website and getting help from elance
Post by: strider3700 on February 22, 2014, 03:55:32 PM
My company tried some elance bids.  They were amazingly inexpensive fixed price jobs. The resulting code worked but was amazingly bad.   When a bug was later found and handed to an inhouse programmer to fix we scrapped the entire program and recreated it.  We won't be going back to elance for programmers any time soon.  We do use them for artists though.   An image is obviously correct or not...
Title: Re: Building a website and getting help from elance
Post by: warfreak2 on February 22, 2014, 04:05:20 PM
We occasionally find (computer science, etc.) students asking on similar sites, trying to pay somebody to do their coursework/projects for them. I'm under the impression that even if we don't actually catch them in the act, the code they submit generally isn't good enough to pass anyway.
Title: Re: Building a website and getting help from elance
Post by: the fixer on February 22, 2014, 07:29:37 PM
As someone who works on oDesk, I can say that yes, a lot of these people aren't that good. But I believe you can get good help on these sites if you look for help the right way. For one thing, don't accept the lowest bid and avoid dev shops. Look closer for the individual people who bid $30+/hour, and find someone who can act as a technical manager. This person should be able to translate your requirement of "make the button bigger" to figuring out the ramifications of that change (is there enough space in all the places buttons appear to make them bigger?) and task people accordingly with getting the work done. You don't want to give a vague requirement like that directly to someone who's only worth $15/hour, but if your manager is comfortable working with such a person you can still save some money with them.

This is the direction I'm trying to move myself in with my freelancing BTW, but I'm not sure I'm there yet.

I think I'm a pretty good developer, so here's some tips on what jobs I will not consider. If you do these things, you won't hire me and perhaps that means you also won't hire anyone else who's good:
Title: Re: Building a website and getting help from elance
Post by: Stagleton on February 26, 2014, 09:30:55 AM
I think this is a good example. I am trying a couple of people out; the fixed price job I ordered through an Indian company was a disaster. I have tried going through a firm that seems to be based in Russia but has a satellite office in Kyrgyzstan; they seem good but they wanted me to use Symfony (and they were 30$/hour, which is fine but I can't seem to get help from anyone else who is unfamiliar with Symfony). I am trying out another guy, but again he wants me to move the app to a different framework. He doesn't understand Symfony so I can't reuse the code that was written for that.

I have the code written, I need it cleaned up, to run faster and to improve security. I am paying the guy hourly and this worked well for the accompanying Android app; the guy cleaned up most of the bugs and it runs much smoother now. Are frameworks really that great? How secure can proper configuration of the .htaccess file be?
Title: Re: Building a website and getting help from elance
Post by: Insanity on February 26, 2014, 11:51:42 AM
I think this is a good example. I am trying a couple of people out; the fixed price job I ordered through an Indian company was a disaster. I have tried going through a firm that seems to be based in Russia but has a satellite office in Kyrgyzstan; they seem good but they wanted me to use Symfony (and they were 30$/hour, which is fine but I can't seem to get help from anyone else who is unfamiliar with Symfony). I am trying out another guy, but again he wants me to move the app to a different framework. He doesn't understand Symfony so I can't reuse the code that was written for that.

I have the code written, I need it cleaned up, to run faster and to improve security. I am paying the guy hourly and this worked well for the accompanying Android app; the guy cleaned up most of the bugs and it runs much smoother now. Are frameworks really that great? How secure can proper configuration of the .htaccess file be?

.htaccess is just a boundary security point, it doesn't provide any in app security (yes, it does have user/password capabilities but it is pretty worthless for that).  Real security comes from the app itself and deploying the web server under a user id that has no other rights but to execute the web server.  If you need user access, something like OAuth or using Facebook/Google logins is better than implementing your own -- but if you are going to implement your own, please talk to me or a security person that can help you do it right -- so you aren't one of the ones who gets used a bot for a larger attack :)

As far as the frameworks - if someone isn't talking to you about why you chose Symfony (I have not used it) or why you continue to use and and mentioned the pros and cons then they are doing you a disservice already.  Frameworks can be very useful in deploying things quickly - but some of them have their own underlying security deficiencies. 

If you are solely using Symfony because the site was originally built that way, then you may still be using the wrong framework for what you are trying to accomplish.
Title: Re: Building a website and getting help from elance
Post by: the fixer on February 26, 2014, 12:04:19 PM
Are frameworks really that great?
Frameworks can be amazing if they are appropriately chosen for the task at hand. Some of the biggest advantages they provide are solving common developer problems (for instance, do you really want to pay someone to write an account and login/logout system from scratch every time there's a new project?) and convention over configuration (https://en.wikipedia.org/wiki/Convention_over_configuration).

There are downsides to the lesser-known frameworks, and from what I understand PHP has become heavily fragmented regarding them. If you pick a framework no one else uses, it's not providing any advantages and just locking you in. Just taking a look at http://www.phpframeworks.com/ boggles my mind.
Title: Re: Building a website and getting help from elance
Post by: Stagleton on February 28, 2014, 01:10:15 PM

If you are solely using Symfony because the site was originally built that way, then you may still be using the wrong framework for what you are trying to accomplish.

Well, I am not using Symfony. I wanted to make my website better, so I hired a firm to improve performance and make the code safer. The company convinced me switching to Symfony was a good idea (maybe it was?), but I feel like the app is pretty much done, but needs to be combed over. I learned to program at the same time I was making the site/android app (cheap/free education :-) and going back to school to get a second bs or ms seemed stupid and a high opportunity cost/got to stash now, so I can spend retirement learning and making things). Anyway, I am trying out a different developer and hopefully he will have some good suggestions and improve the structure of my code.

After watching this: http://www.youtube.com/watch?v=anr7DQnMMs0 (http://www.youtube.com/watch?v=anr7DQnMMs0), especially the questions at the end, I feel like I want to stay away from a framework; it's not clear to me which one to get and I don't want to get stuck with one yet.

When I get a little further, I will definitely send you guys a message if you're interested to check it out (and show me the security flaws)!