SitePoint Sponsor

User Tag List

Page 1 of 2 12 LastLast
Results 1 to 25 of 30
  1. #1
    SitePoint Member
    Join Date
    Feb 2013
    Posts
    9
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Lightbulb How to make a site like Amazon - ebay

    Hey Guys
    I am a web designer on a hard(very, very hard) quest to make a similar site to Amazon/ebay.

    I have been looking it up and i realise how hard it is going to be, but one way or another i have to do it.
    I will be making it using PHP, MySQL. I am pretty good with HTML and CSS. I have little experience with PHP.

    Right now i am reading and applying methods from - Build Your Own Database Driven Web Site Using PHP & MySQL
    I aim to make an ecommerce site first and then carry on with that.

    I am not expecting all of my answers from one source.
    However, i am willing to bring all the bits and pieces together and make this happen.

    I need all the help i can get! Thanks!!

  2. #2
    Non-Member
    Join Date
    Oct 2007
    Posts
    363
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)
    I'd learn to walk before you can run.

    The biggest issue with a site the size of Amazon/ebay is just that - the sheer size of the things. Writing a website that can scale to the number of users who are simultaneously connecting to the site is a major technical challenge in its own right. On top of that you'll need to know how to write code that can scale in terms of being able to add new features without breaking stuff etc...

    To do something on the scale of Amazon would take a large team of very skilled and very experienced programmers a long time and a lot of money to make.

    In terms of the basic functionality and not taking scaling into account, some of the functionality itself could be mirrored to an extent, but realistically if you're just starting out you want to be setting your target far lower to learn the basics first.
    Quote Originally Posted by CowMan View Post
    Hey Guys
    I am a web designer on a hard(very, very hard) quest to make a similar site to Amazon/ebay.

    I have been looking it up and i realise how hard it is going to be, but one way or another i have to do it.
    I will be making it using PHP, MySQL. I am pretty good with HTML and CSS. I have little experience with PHP.

    Right now i am reading and applying methods from - Build Your Own Database Driven Web Site Using PHP & MySQL
    I aim to make an ecommerce site first and then carry on with that.

    I am not expecting all of my answers from one source.
    However, i am willing to bring all the bits and pieces together and make this happen.

    I need all the help i can get! Thanks!!

  3. #3
    SitePoint Member
    Join Date
    Feb 2013
    Posts
    9
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Ok, makes sense.

    What would you recommend i start with?

  4. #4
    Non-Member
    Join Date
    Oct 2007
    Posts
    363
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)
    In terms of a project to work with? Hard to say - perhaps think of something you're interested in and make something around that?

    I started by making a site (no longer online as this was 6/7 years ago now) that allowed people to play leagues on an online football game. It required user registration, user login, and automatically updated the football tables depending on the scores people posted. I did that because I enjoyed the game. Is there anything you can think of in a similar vein that might be interesting for you?

    If not then I'd suggest at least making a site that has user registration + user login, as that'd teach you about sessions and stuff like that. Then I dunno, think about stuff you find interesting. Perhaps do a to-do list that allows you to login, set dates for things and will email you to remind you about upcoming things or something like that?

    Don't do anything massively complicated as you're just learning for now. The stuff I've mentioned above will teach you plenty to get going

    Quote Originally Posted by CowMan View Post
    Ok, makes sense.

    What would you recommend i start with?

  5. #5
    SitePoint Member
    Join Date
    Feb 2013
    Posts
    9
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I really want to be able to make an ecommerce site. Where i sell items, and users log in, i can save their details if they like.
    Basically a fully functioning ecommerce site.

    May seem like something really complicated but this is where i would like to start off.

  6. #6
    Non-Member
    Join Date
    Oct 2007
    Posts
    363
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)
    Perhaps start here: http://net.tutsplus.com/tutorials/to...-cards-online/


    Quote Originally Posted by CowMan View Post
    I really want to be able to make an ecommerce site. Where i sell items, and users log in, i can save their details if they like.
    Basically a fully functioning ecommerce site.

    May seem like something really complicated but this is where i would like to start off.

  7. #7
    SitePoint Member
    Join Date
    Feb 2013
    Posts
    9
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I am not just gonna jump in and try to master an ecommerce site.
    I would just like to know what i need to learn and which languages i will be using

  8. #8
    Non-Member
    Join Date
    Oct 2007
    Posts
    363
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)
    The above link provides you with a means to actually handle money - you definitely won't be writing code that will actually process money yourself (you'll always be using a third party service of some variety for that).

    You can do this all in php and html/css/javascript. You'll need to know how to do things like sessions in php and how to read/write to and from a database.

    I would actually recommend creating a user login area that restricts what users who are logged in can and can't see first, and then take it from there. That will teach you about sessions and stuff like that.

    In terms of learning php itself, there's loads of resources online. Nettuts is good.

    Here's a couple of good articles on there:
    http://net.tutsplus.com/tutorials/ph...-to-learn-php/
    http://net.tutsplus.com/articles/web...-from-scratch/

    Avoid w3schools btw. People keep recommending it on here, and it's crap.

  9. #9
    SitePoint Addict bronze trophy vectorialpx's Avatar
    Join Date
    Dec 2012
    Location
    Bucharest
    Posts
    219
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)
    So, basically you want to learn to create a website starting with the Amazon website.
    I have to say it: you're doing it wrong!

    First question: how did you get this "quest to make a similar site to Amazon/ebay"?
    Why do you need this? Is it a personal challenge, a company test or what?
    (I doubt a serious company could give you such a task, without mocking you)

    Second Q: You say you're a web-designer. Why do you want to change your path?
    First, being a programmer is way different than being a designer.
    Second, you cannot do both. You have to focus on something.

    Update // The signature of aaarrrggh - http://www.phptherightway.com - is a great resource to check what you should learn.

  10. #10
    SitePoint Member
    Join Date
    Feb 2013
    Posts
    9
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks aarghh i will be checking them out!

    @vectorialpx. I have some really good ideas for business and i need to put them into practice.

    I really want to learn developing as well.
    I realise that i may have to do a few websites during the proccess however i am willing to do so.

    During my research i was recommended a few different "paths"

    1.from scratch
    2. Php framework
    3. Php scripts

    I have some idea of what these are.
    However i am not too sure of the advantages and disadvantages of them. Especially for what i am aiming to do..
    Any help?

    Thanks a lot for the answers guys!

  11. #11
    SitePoint Member
    Join Date
    Feb 2013
    Posts
    9
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Ow yes i have used w3schools before. Weren't too happy with them.
    But why would you say they are "crap" ?

  12. #12
    Non-Member
    Join Date
    Oct 2007
    Posts
    363
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by CowMan View Post
    Thanks aarghh i will be checking them out!

    @vectorialpx. I have some really good ideas for business and i need to put them into practice.

    I really want to learn developing as well.
    I realise that i may have to do a few websites during the proccess however i am willing to do so.

    During my research i was recommended a few different "paths"

    1.from scratch
    2. Php framework
    3. Php scripts

    I have some idea of what these are.
    However i am not too sure of the advantages and disadvantages of them. Especially for what i am aiming to do..
    Any help?

    Thanks a lot for the answers guys!
    Php scripts will be entire libraries or even blocks of functionality that you can (in theory) use. I wouldn't recommend going down this route unless you know what you're doing, because there are far more poorly written scripts out there than good ones. You'll end up with an incoherent mess quite quickly if you just attempt to stick a bunch of scripts together.

    From scratch is obvious - just write stuff yourself from the ground up.

    Frameworks are a different thing altogether - there are many frameworks, but generally the principle is the same - they tend to have lots of (usually well written) code that helps you from having to re-write stuff that happens a lot in general web applications, and leave you to write only the code that is unique to your application. So for example, you may use some of their code to deal with user permissions and user authentication, without having to re-invent the wheel and write it all from scratch yourself.

    However, with Frameworks comes a learning difficulty (all frameworks are different, although most generally follow what is called the MVC (model view controller) pattern. You will also generally need to know how to write Object Oriented code before you really start working with a framework.

    So generally, I'd recommend starting by writing from scratch to get the hang of the language. You will make mistakes. You will find your code becomes hard to change over time and stuff may stop working. You'll find sometimes you'll change something somewhere and it'll break something somewhere else that you hadn't anticipated. All this stuff is good for you though because you'll start to learn what things work well and what don't, and over time I'd recommend THEN moving to a modern framework such as the Zend Framework or Symfony 2.

    Don't expect to get rich by making your first website. You'll make mistakes on your first site and you'll almost certainly scrap it in the future when you start to get better (if you persevere).

    As Victorialpx mentioned above, a good resource is http://www.phptherightway.com take a look at that for some good advice and starting points too.

  13. #13
    Non-Member
    Join Date
    Oct 2007
    Posts
    363
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by CowMan View Post
    Ow yes i have used w3schools before. Weren't too happy with them.
    But why would you say they are "crap" ?
    Easier to just send you here: http://w3fools.com/

  14. #14
    SitePoint Zealot wh33t's Avatar
    Join Date
    Aug 2011
    Posts
    154
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by CowMan View Post
    Hey Guys
    I am a web designer on a hard(very, very hard) quest to make a similar site to Amazon/ebay.

    I have been looking it up and i realise how hard it is going to be, but one way or another i have to do it.
    I will be making it using PHP, MySQL. I am pretty good with HTML and CSS. I have little experience with PHP.

    Right now i am reading and applying methods from - Build Your Own Database Driven Web Site Using PHP & MySQL
    I aim to make an ecommerce site first and then carry on with that.

    I am not expecting all of my answers from one source.
    However, i am willing to bring all the bits and pieces together and make this happen.

    I need all the help i can get! Thanks!!
    It's easily possible for one person to create all of the code required to run a site like Amazon. That's the beauty of dynamic web content. In essence you're just writing a set of rules and tools that connect to data in a database which is managed by the user base. This is very common place on web forums such as Sitepoint. Make no mistake about the amount of work that it is, but it's definitely doable and don't let anyone out there tell you that it can't be done. However one valid point is that when a site gets as big as Amazon or Facebook cheap and easy web hosting solutions simply can't keep up. But if you ever make a website that is so big and busy that you can't power it on a $100/month hosting package chances are that you are making enough money to pay server experts to manage the server/hardware/cloud aspect of it for you.

    I suggest you write your own PHP based forum software. That will teach you how to let users create their own accounts and the kind of issues that arise from allowing the public to access your database. Plus if you ever make it to the point where you are doing Ecommerce then you will need some kind of ticket support based system anyways, in which case you'll already have your own custom support forums already built.

    I've actually built a website very similar to Facebook in functionality a few years ago, it took me about 6 months but it had all of the same features minus the "app" system. With enough determination and time I'm confident you could pull it off.

  15. #15
    Non-Member
    Join Date
    Oct 2007
    Posts
    363
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by wh33t View Post
    It's easily possible for one person to create all of the code required to run a site like Amazon. That's the beauty of dynamic web content. In essence you're just writing a set of rules and tools that connect to data in a database which is managed by the user base. This is very common place on web forums such as Sitepoint. Make no mistake about the amount of work that it is, but it's definitely doable and don't let anyone out there tell you that it can't be done.
    It can't be done. You don't know what you're talking about.

  16. #16
    SitePoint Addict bronze trophy vectorialpx's Avatar
    Join Date
    Dec 2012
    Location
    Bucharest
    Posts
    219
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by wh33t View Post
    It's easily possible for one person to create all of the code required to run a site like Amazon.
    Easy? No!
    Posible? Yes... by your own, assuming you are a good programmer, in 1 or 2 years.
    It's not about the code, it's about the concept, specifications, details.
    Some teams take one month or more to talk about a single feature.
    Assuming that you will copy the entire concept, by then, Amazon will change so much you will not even know what you're doing

    Quote Originally Posted by CowMan
    I have some really good ideas for business and i need to put them into practice.
    Well, I don't want to discourage you but, being a designer, you could handle the design and take a coder friend to help you with the PHP part. You don't have to learn PHP just to accomplish one project.

    Now, if you insist to change your path, noone can stop you just do it.
    Install a WAMP server and start typing code.

    1. create something from scratch (a simple website, a simple database connection) to understand the code.
    2. read about OOP (read the manual and examples) and start your own class
    3. read about MySql and create some JOINS
    4. create your own framework - you will understand concepts
    5. use a framework (like Zend or CodeIgniter) and play with a simple project
    6. Start your main project.

    Good luck!

  17. #17
    SitePoint Zealot wh33t's Avatar
    Join Date
    Aug 2011
    Posts
    154
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by aaarrrggh View Post
    It can't be done. You don't know what you're talking about.
    Please, go on. Why couldn't it be done?

  18. #18
    SitePoint Zealot wh33t's Avatar
    Join Date
    Aug 2011
    Posts
    154
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by vectorialpx View Post
    Easy? No!
    Posible? Yes... by your own, assuming you are a good programmer, in 1 or 2 years.
    It's not about the code, it's about the concept, specifications, details.
    Some teams take one month or more to talk about a single feature.
    Assuming that you will copy the entire concept, by then, Amazon will change so much you will not even know what you're doing
    !
    Well just to clarify, I'm assuming the OP doesn't want to copy Amazon verbatim. But he wants a site similar to it. Obviously there will be challenges both on the coding front as well on the design and layout of how all the components work but it is "EASY" in the sense that it's not like he's inventing anything new. Creating a site that is "like" another site is just re-inventing the wheel. It's just about time and follow through.

  19. #19
    Mouse catcher silver trophy
    Stevie D's Avatar
    Join Date
    Mar 2006
    Location
    Yorkshire, UK
    Posts
    5,829
    Mentioned
    110 Post(s)
    Tagged
    1 Thread(s)
    Quote Originally Posted by wh33t View Post
    Well just to clarify, I'm assuming the OP doesn't want to copy Amazon verbatim. But he wants a site similar to it.
    Sorry to inject a note of sanity in here, but don't forget that for Amazon, their website accounts for probably less than 1% of their workload. Setting up and running the website is trivially easy in comparison with sourcing the products for sale and distributing them!

    If what you're looking for is more along the Amazon Marketplace model, that's going to be quite a different proposition, and is a whole lot more technically and legally challenging, although obviously you won't have the same infrastructure needs.

  20. #20
    SitePoint Zealot wh33t's Avatar
    Join Date
    Aug 2011
    Posts
    154
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by Stevie D View Post
    Sorry to inject a note of sanity in here, but don't forget that for Amazon, their website accounts for probably less than 1% of their workload. Setting up and running the website is trivially easy in comparison with sourcing the products for sale and distributing them!

    If what you're looking for is more along the Amazon Marketplace model, that's going to be quite a different proposition, and is a whole lot more technically and legally challenging, although obviously you won't have the same infrastructure needs.
    Amazon, as far as I understand is a lot like ebay in the sense that Amazon doesn't source much if any products at all. Instead they permit people like you or I to list products of our own in their database, and they act as the big digital market middle man, just like Ebay minus the auctioning. But if that's not how Amazon works, then you would be quite correct that the real work load of Amazon is the inventory management, but that's not what the user is asking about, he's just asking about creating a website that functions similar to Amazon, which I personally don't believe is a "massive" challenge, it's a lot of work, I'm not denying that, but it's certainly doable by one person who is determined.

  21. #21
    SitePoint Addict bronze trophy vectorialpx's Avatar
    Join Date
    Dec 2012
    Location
    Bucharest
    Posts
    219
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by wh33t View Post
    Instead they permit people like you or I to list products of our own in their database, and they act as the big digital market middle man, just like Ebay minus the auctioning.
    Exactly! You need APIs, affiliates, advertising module and others.

    he's just asking about creating a website that functions similar to Amazon, which I personally don't believe is a "massive" challenge, it's a lot of work, I'm not denying that, but it's certainly doable by one person who is determined.
    When you say "similar to Amazon" is not just a product listing and a cart. I'm thinking about reproducing all features. After a simple click to My Account you'll see some features (like Gift cards, reviews) that may take you more than one month (by your own, without a testing or UX department). After few clicks I discovered "Wedding Registry" (I had no idea about this) and there are lots of other hidden features besides the product listing and a cart. Now, I have to remind that everything you see it's almost double-work because of the Administration area (for every small detail)

    So, to stick to the topic, he should not be scared (if determined to do this!) and should just start with a simple eCommerce from scratch (user login, product listing, add to cart, submit a shopping cart to some email, admin area for those)

  22. #22
    Non-Member
    Join Date
    Oct 2007
    Posts
    363
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)
    You do realise that Amazon probably have to pay millions of dollars each month just to keep their site running?

    I think you are vastly under appreciating the sheer complexity of their system. Even something like their recommendation engine is basically a genius tool - that one feature alone will have been designed by a team of extremely strong engineers, and will have taken a long time for them to code up.

    You could make something that had a far reduced functionality set compared to amazon, but that looked similar on the surface, but actually coding up something on the scale of Amazon is 100% impossible for a single person to do. I would estimate you'd need a few million dollars and a team of around 100 extremely gifted engineers.

    Quote Originally Posted by wh33t View Post
    Amazon, as far as I understand is a lot like ebay in the sense that Amazon doesn't source much if any products at all. Instead they permit people like you or I to list products of our own in their database, and they act as the big digital market middle man, just like Ebay minus the auctioning. But if that's not how Amazon works, then you would be quite correct that the real work load of Amazon is the inventory management, but that's not what the user is asking about, he's just asking about creating a website that functions similar to Amazon, which I personally don't believe is a "massive" challenge, it's a lot of work, I'm not denying that, but it's certainly doable by one person who is determined.

  23. #23
    SitePoint Zealot wh33t's Avatar
    Join Date
    Aug 2011
    Posts
    154
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    For my daily job I program an Ecommerce site. I am the only programmer that works on the site, but I do work with a designer as well. I create everything from scratch based upon what my clients needs are of the site. It's been a 2 years in the making so far, but I rarely work on the site more than 20 hours a month. We have a wish list system, infinitely deep categorical system, an automated order form system, and lots of other php driven goodies on there. I'm not saying that what I have built compares or competes with Amazon, but after building what I have I don't see the programming of a site like Amazon as an impossible feat for one person to do. Keep in mind I'm just talking about the programming, I'm not referring to customer service, advertising, server maintenance etc.

    I don't often use Amazon, so I'll admit perhaps I'm off my rocker here, but what is it about Amazon's programming that seems too complex or vast for one person to code themselves? How does it differ from other etail like websites?

    According to this: http://www.amazon.ca/gp/help/custome...odeId=10194731 , this makes it seem like it's very similar to posting something on Craigslist. A bit more involved as you have to fill out more information obviously but it doesn't even seem like it requires an API, just like Ebay.

  24. #24
    Non-Member
    Join Date
    Oct 2007
    Posts
    363
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)
    The main issue is scalability. Could you scale your application over multiple servers worldwide? Can you deal with localisation of all different countries in the world + deal with the posting for each individual country, different laws, different currency conversions and the logistics involved in selling products on this kind of scale? Can your code handle millions of simultaneous users? Can you handle allowing other companies to sell products through your site, and handle the logistics of all of that? Can you analyse your users habits to the extent that you can recommend them products they are actually interested in, on a global scale? Can you deal with special offers, can you deal with thousands of employees adding products to the system at any one time?

    The main issue is sheer scale and the size of it all. It's 100% impossible for a single person to do something like this. The problem is that scaling projects to a massive size actually DOES have a big impact on your code, and if your code base can't handle it, it simply won't work. For example, I could code something that may look similar to facebook in terms of functionality, but in reality it'll be nothing like it, because it wouldn't be able to scale. Look at facebook chat for example - I could code something using Ajax polling that would look SIMILAR to the functionality of facebook chat on a small enough scale, but scale this out to thousands or millions of users and it'd fall on it's ****.

    There's a reason Amazon employees so many great people and pays them so much money. A single developer could make a drastically reduced size project that emulates SOME of the functionality of Amazon on a much smaller scale, but to do it properly to the size, scale and ambition of amazon is 100% impossible for an individual developer. As I said before, you're probably looking at more like 100 full time, very talented developers and a cost of millions - easily.

    Quote Originally Posted by wh33t View Post
    For my daily job I program an Ecommerce site. I am the only programmer that works on the site, but I do work with a designer as well. I create everything from scratch based upon what my clients needs are of the site. It's been a 2 years in the making so far, but I rarely work on the site more than 20 hours a month. We have a wish list system, infinitely deep categorical system, an automated order form system, and lots of other php driven goodies on there. I'm not saying that what I have built compares or competes with Amazon, but after building what I have I don't see the programming of a site like Amazon as an impossible feat for one person to do. Keep in mind I'm just talking about the programming, I'm not referring to customer service, advertising, server maintenance etc.

    I don't often use Amazon, so I'll admit perhaps I'm off my rocker here, but what is it about Amazon's programming that seems too complex or vast for one person to code themselves? How does it differ from other etail like websites?

    According to this: http://www.amazon.ca/gp/help/custome...odeId=10194731 , this makes it seem like it's very similar to posting something on Craigslist. A bit more involved as you have to fill out more information obviously but it doesn't even seem like it requires an API, just like Ebay.

  25. #25
    SitePoint Member
    Join Date
    Feb 2013
    Posts
    9
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks for all the replies guys!

    1. Finding the products to sell is not my issue. Neither is all the bits and bobs like currency conversion etc
    2. I am looking to make a uk site SIMILAR to Amazon. Doesn't need to be AS complex as Amazon. Ps I always use Amazon and realise how complex it is. The recommendation tool alone!!! That's why i'm looking to make something SIMILAR to it.
    Something which is very difficult, but is DOABLE by an individual, then i can learn and build on it, in time.

    The scale is major issue. I'm with hostgator, however i'm not too sure how much they can handle.
    Any recommendations and explanations?

    Thanks!!


Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •