d2jsp
Log InRegister
d2jsp Forums > Off-Topic > Computers & IT > Programming & Development > Designing A Website From Scratch > Any Seasoned Vets Out There?
Add Reply New Topic New Poll
Member
Posts: 2,187
Joined: Mar 3 2013
Gold: 0.00
Apr 10 2017 11:10pm
I am currently designing a website from scratch and i'm looking for some guidance. I understand PHP7, OOD, Database architecture, and some software designs like MVC, HMVC, and PAC. I am struggling with how to exactly to implement the entire idea into one of these systems, and if MVC, HMVC, or PAC is a "right" way to go about it.

Let me explain further. Basically the whole idea is to make a website from the ground-up. There is a registration, a login, forum category views, forum boards view, and a forum topic view. I will be adding more features in later on down the road like some extra features for the website that make the entire website unique and all of this will be integrated together. So for example ?page=MyNewContent and then that will bring up an interactive page where users can change things.

I first thought HMVC would be perfect, but my initial designs are proving this to be a little bit of a challenge in the given the situation. I also want to account for scalability at the same time. (I know, totally violating KISS) ; Basically I want it so that If a specific "MVC instance" is hosted remotely rather than locally it'll still work flawlessly. So, initially I thought an API with JSON response and proper caching would be great. Then I started thinking about the issues along with that; like how many database requests and the latency behind all that. I don't think it would be viable, would it?

I am not using a framework by-the-way. Maybe someone has a reference for a good HMVC framework? I initially thought Codeignitor with HMVC would work, but i'm seeing there are some issues tagged along with that. Symfony2 isn't really MVC, and I don't believe it handles managing Controllers very well without an ORM library. (back to square-one)

Oh, this project is using PHP7 and a RDBMS.

Has anyone encountered these issues before? How did you overcome them? What do you prefer and why?

Also, thanks for your time. :)
Member
Posts: 1,039
Joined: Jul 8 2008
Gold: 1,939.50
Apr 11 2017 08:50pm
I don't think you'll have to worry about latency unless you're tunneling all of the requests through your main server (which would not be the right way to do it). There is little to no latency added in the new distributed/micro-service world, but I'm more familiar with those technologies in JS/Java.

I think you should just give yourself a little bit of time to think then start with what you think is best. No one gets it right the first time around and you're going to make mistakes, but you're not going to get anything done unless you start making mistakes.

Edit: Also, this : 'make a website from the ground-up.' isn't always necessary. With Java/JS/.net I could point you to some good projects which give you 'starters' like authentication, chat messaging, messaging, email, forums, etc. You may want to look for a similar thing in PHP.

This post was edited by waraholic on Apr 11 2017 09:02pm
Member
Posts: 2,187
Joined: Mar 3 2013
Gold: 0.00
Apr 12 2017 01:22am
I completely agree with the mistakes :) I've done alot of the free libraries and scripts. however it's to the point that I'm not learning much anymore. Additionally, the forum scripts and such that i have checked out are very bloated in order to support many different (and old) technologies. The biggest example is being able to use classes in my scripts with OOP in PHP vs not being able to with other free scripts because of.. as I mentioned previously... compatibility. This isn't very ideal for true innovation. (And of course loses the benefits of OOP in general)

I know my servers will be running on php7/etc.. and that won't change until new versions. I certainly have alot more design to think about. in addition to learning by my mistakes I can also observe why other software does what it does, and learn from those designs also. The main problem is how unique of a situation I have and the fact that there are no free scripts that cover the same thing (as far as I am aware)

I've decided against Java EE because I don't see much of a future in it. (For example some business still use it but it seems to be only out of necessity. I.e. noone wants to pay $$ to upgrade because it's not actually broken) while PHP on the other hand seems to be gaining more traction, much like some others primarily used in silicon valley... I am no expert but this is what I'm personally piecing together.


Anyways, the original point to the topic is to figure out what kind of design principles and architecture are primarily used in new websites today. This information will help me decide how to further proceed. In the mean time I'm just continuing with what works and what I've found to be proven methods and principles. I'm discovering that updating base code over and over is a regular thing for me as I proceed ahead with this new adventure, it's actually pretty fun. I can say that experience like this is so far the best I've had compared to simply doing things the right way the first time. (Also helps identify old security bugs and such that will help if I should improve on a script in the future) these kinds of things simply aren't taught at local colleges or on-the-job in some areas. I highly recommend anyone reading and new to this industry to do the same. Also, forums like these, and other resources help tremendously.

Really I think it's all down to just giving in and actually working towards some solid certs and degrees in the industry.

Enough with my jabber....

@waraholic thanks for your time and consideration I will PM you to pursue these projects! Your input is super appreciated! Hopefully to those reading as well.

This post was edited by Glyph89 on Apr 12 2017 01:39am
Member
Posts: 3,197
Joined: May 4 2013
Gold: 1,457.00
Apr 12 2017 03:28am
>while PHP on the other hand seems to be gaining more traction

no one in their right mind starts business with php. Php is very much obsolete trash technology no one wants to touch with 10 yard stick ^_^

try golang, ruby, python, scala, node. Those are gaining traction.

I think you're focusing too much on technology, design techniques and such and too little on actually thinking through how you want it to work.
Member
Posts: 2,187
Joined: Mar 3 2013
Gold: 0.00
Apr 12 2017 10:03pm
Quote (nuvo @ Apr 12 2017 05:28am)
>while PHP on the other hand seems to be gaining more traction

no one in their right mind starts business with php. Php is very much obsolete trash technology no one wants to touch with 10 yard stick ^_^

try golang, ruby, python, scala, node. Those are gaining traction.

I think you're focusing too much on technology, design techniques and such and too little on actually thinking through how you want it to work.



ummm. Facebook, Zynga, Lyft, BitTorrent, Udemy,Yahoo, (parts of google), Rediff, (some intel), Digg, Wikimedia, Flickr, YouTube, etc. etc... just take a look around lol. (d2jsp)

regardless, i see your point.

This post was edited by Glyph89 on Apr 12 2017 10:16pm
Member
Posts: 5,167
Joined: Nov 23 2006
Gold: 11.01
Apr 13 2017 11:49am
Quote (nuvo @ Apr 12 2017 04:28am)
>while PHP on the other hand seems to be gaining more traction

no one in their right mind starts business with php. Php is very much obsolete trash technology no one wants to touch with 10 yard stick ^_^

try golang, ruby, python, scala, node. Those are gaining traction.

I think you're focusing too much on technology, design techniques and such and too little on actually thinking through how you want it to work.


HEY not true! Our brand new app is written with PHP7 using YII2 framework.

Ultimately it doesn't really matter what language you go with. Write your code in a way that it can be easily translated/ported to any other backend. Better yet, create containerized microservices so that you can write it in multiple languages that best support your feature's goal (pipe dream right there).
Retired Moderator
Posts: 15,410
Joined: Jun 2 2005
Gold: 9,504.66
Trader: Trusted
Apr 15 2017 11:30am
Quote (nuvo @ 12 Apr 2017 03:28)
>while PHP on the other hand seems to be gaining more traction

no one in their right mind starts business with php. Php is very much obsolete trash technology no one wants to touch with 10 yard stick ^_^

try golang, ruby, python, scala, node. Those are gaining traction.

I think you're focusing too much on technology, design techniques and such and too little on actually thinking through how you want it to work.


couldn't be further from the truth, but then again broad generalizations like this tend to effective... :rolleyes:

This post was edited by Markro on Apr 15 2017 11:43am
Member
Posts: 3,476
Joined: Jul 20 2015
Gold: 651.00
Apr 16 2017 09:22am
Is there a reason you want to use php?

I'd recommend node or django

e/ and I have over 3 years experience with php. Less than 6 months of Django and about a year of node.

Both are more superior than php in my opinion.

This post was edited by spt_94 on Apr 16 2017 09:23am
Member
Posts: 10,801
Joined: Apr 5 2010
Gold: 20.00
Apr 16 2017 03:14pm
id suggest wordpress. our adv php unstructors going over wordpress the rest of the semester.
Member
Posts: 5,167
Joined: Nov 23 2006
Gold: 11.01
Apr 17 2017 07:16am
Quote (jsbb @ Apr 16 2017 04:14pm)
id suggest wordpress. our adv php unstructors going over wordpress the rest of the semester.


You'll never use WP again in your life unless you're making a blog for your mom.
Go Back To Programming & Development Topic List
Add Reply New Topic New Poll