Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Just another web startup - platform comparison

I'm looking to do a web startup which involves something along the lines of an ecommerce site, yet a little more in depth than that. While it's something that I would rather not go into detail with in terms of the initial idea, I can specify (on a basic level) what would be required of the website. If you have any observations or opinions derived from personal experience, which relate to what you see here, I'd appreciate it if you could share these.

  • Paypal's API interaction (definitely).

    • From what I've read about their API, integration with it into their website is VERY expensive, so I'd probably hold off on that until I've (hopefully) generated money and write my own simple credit-card interaction system.
  • SQL Backend (obviously)

    • PostgreSQL seems like a pretty good choice, as from what I've read, it's structure is a bit more "object-oriented" than, say, MySQL. Then again, I've used MySQL before and haven't had much problem with it whatsoever. Would it be worth learning PostgreSQL for this purpose?
  • Java or .Net implementation (Preferably Mono, so I can use .Net while hosting the website using Apache).

    • The reason for this is because, frankly, while I know PHP is a great platform to develop websites with, I hate developing with it. Before someone chimes in and flames me for saying that, note that I have nothing against the language, I just don't like it for my purposes.

    • While Mono may be good to go with, I'm aware that ASP.Net MVC 3 hasn't been released for Mono yet, which may be a pain to work with, without their Razor syntax. Ontop of that, it seems Java is completely FULL of class libraries which deal with web development, that can be downloaded from the web. If anyone has any experience with these, I'd appreciate if that were posted. From what I've read about Spring and Struts2, they seem to be the best out there - especially since they're (AFAIK) MVC.

    • I've considered Python and Django, which do seem REALLY nice, but I don't know much Python, and I'd rather start with something that I already know (language-wise; not framework-wise) than dive into learning a language AND a new framework.

    • I'd REALLY like to be able to host my website via Apache, rather than using Windows Server or anything like that, as, frankly, I hate their setup. I'm not dissing it in any way, shape, or form, I'm just saying I dislike it. <3 terminal config. If there is a good reason to with Windows Server, however, I'd be willing to learn it.

    • C# has a lot of things that Java appears not to have, including Delegates, unsigned types, and LINQ. Is there anything that Java has which can counter these?

like image 956
zeboidlund Avatar asked Jan 17 '23 03:01

zeboidlund


1 Answers

If you're going with Java, you can't host with apache. You'll run Tomcat or some other servlet container, or a full Java EE application server such as Glassfish. You can have apache act as a front end for the requests with a more efficient protocol (ajp protocol) than just making an http call.

Never used Mono, haven't done a ton of reading, but if you want to use ASP.NET, I'd just go with Windows. Save the hassle.

Frankly, you can easily just make the backend a set of APIs and the UI very ajaxian based to interact with the backend in a way that will let you switch between backend languages easily. So, if you're very comfortable in ASP.NET, do it up in that so you can get it running, and then later on when you want to switch hosting re-implement (with lots of lessons learned I'm sure) in Java or Django or whatever.

like image 76
Drizzt321 Avatar answered Jan 31 '23 08:01

Drizzt321