Creating a web app

Gezza

Expert Member
Joined
Aug 18, 2009
Messages
2,094
Hi fellow devs. I've been scouring around the net trying to find the best way to create my first web app.

I've almost completed my workflow document, just need to add a couple more things before I start development.

My question is, what would be the best way for a beginner to write his first database driven web app?

My experience.

7 years Front end: HTML CSS JS jQuery

What I've read up and what I think will be the best way is to use jQuery mobile for the front end side and Laravel (PHP) as a backend framework. PHP because from all the other languages, this seems to be the easiest to set up for beginners.

I've dabbled in back end code but haven't done a big project like this before.

What is your opinion?

Thanks in advance.

EDIT (CONCLUSION):

After all the suggestions in this thread I've decided on Angular and Node. I like that you don't need hectic back end knowledge to work with these two frameworks.

There was a lot of other good suggestions but that would be a much larger learning curve for me. It's not that I don't have time to learn other languages, I just don't want to at this moment. I've got enough information now to continue planning and then developing my project.

Thanks all! You've been extremely friendly and helpful!
 
Last edited:

Thor

Honorary Master
Joined
Jun 5, 2014
Messages
44,236
Probably not the best or correct way, but that's what I would do too, just differently.

Laravel/lumen to create the API on the backend that the app needs to talk too.

Then AngularjS/Ionic for the actual app so that you can wrap it with Cordova
 

Gezza

Expert Member
Joined
Aug 18, 2009
Messages
2,094
Probably not the best or correct way, but that's what I would do too, just differently.

Laravel/lumen to create the API on the backend that the app needs to talk too.

Then AngularjS/Ionic for the actual app so that you can wrap it with Cordova

As a front end developer I feel embarrassed that I haven't even touched Angular or similar frameworks yet. Have you seen what jQuery mobile can do? It's quite easy to use too. Seems like exactly what I need to accomplish my goals.
 

stricken

Expert Member
Joined
Sep 5, 2010
Messages
2,265
As a front end developer I feel embarrassed that I haven't even touched Angular or similar frameworks yet. Have you seen what jQuery mobile can do? It's quite easy to use too. Seems like exactly what I need to accomplish my goals.

Problem with JQuery is that its only a DOM manipulator, and not a binding framework. it works for small projects, but when you have lots of json data (models) in a complex web app, it falls short.

LAMP is the old paradigm.. the new paradigm is something like the MEAN stack, where the server simply sends data structures and the client uses and formats and lays it out as required (i.e. no html generated on server)... this also enables clear seperation with a server API, meaning you can develop new clients without having to change the backend.

jQuery can end up in spaghetti code very quickly - if you are going to go through the effort, i suggest you learn angular or react or vuejs to name a few.

Ultimately, jQuery was good at a time when the web had major differences in browser implementations (before HTML5) but is now quickly becoming a relic of the "old" web.

/my 2c
 

Gezza

Expert Member
Joined
Aug 18, 2009
Messages
2,094
Problem with JQuery is that its only a DOM manipulator, and not a binding framework. it works for small projects, but when you have lots of json data (models) in a complex web app, it falls short.

LAMP is the old paradigm.. the new paradigm is something like the MEAN stack, where the server simply sends data structures and the client uses and formats and lays it out as required (i.e. no html generated on server)... this also enables clear seperation with a server API, meaning you can develop new clients without having to change the backend.

jQuery can end up in spaghetti code very quickly - if you are going to go through the effort, i suggest you learn angular or react or vuejs to name a few.

Ultimately, jQuery was good at a time when the web had major differences in browser implementations (before HTML5) but is now quickly becoming a relic of the "old" web.

/my 2c

Thank you. So that's two votes for Angular. I'll take a course on that.

Which of the following would you suggest first.

I'm doing my flowchart first.
After completing this (or during write up) I will be creating wireframes of my project. To get a look and feel for it.
I will then use the framework and dev it so that everything front end wise is working with dummy content.
After completing this I will use the PHP framework and plug in the database and entries I need. Is PHP the right approach?

I'll also need to add login privileges so certain users can only see certain content.

I'm mostly worried about PHP and security. From what I gather you only need to update your PHP version (When new ones come out) to be up to date with security? I know that w3schools has outdated PHP code that shouldn't be used so I'll rather take a recent course than copy pasting every line of code.
 

Solitude

Executive Member
Joined
Jul 23, 2008
Messages
7,312
I'll give another vote for Angular.

Since you have javascript experience I'd go with Node.js for the backend.
 

gkm

Expert Member
Joined
May 10, 2005
Messages
1,519
Thanks for the suggestion. Will you tell me why Ruby on Rails? Is it more future proof, better security or just better for my career/knowledge?

I think better security and better for your career, at least in my personal opinion. The fact that you want a database driven app is the main reason why I suggested Rails, since I think Rails is very good for that class of applications and can easily be used with Angular.
 

Gezza

Expert Member
Joined
Aug 18, 2009
Messages
2,094
I'll give another vote for Angular.

Since you have javascript experience I'd go with Node.js for the backend.

So Node.js can access and print database entries? I know there is some C(#, ++ ??) running in the back.

I'll give another vote for Angular.
Since you have javascript experience I'd go with Node.js for the backend.

So with those two I should be able to dev a robust web app that can access a database? I've started learning node and it's pretty cool so far. I'm all for finishing the node course I'm on. Seems like most companies look for people with node. Not that I would want to work for anyone else but myself if my app kicks off.

I think better security and better for your career, at least in my personal opinion. The fact that you want a database driven app is the main reason why I suggested Rails, since I think Rails is very good for that class of applications and can easily be used with Angular.

Thanks for the explanation!

The two courses I'm doing is
Angular:
https://www.udemy.com/angularjs-for-beginners-udemy

and

Node.js
https://www.udemy.com/understand-nodejs

(I am in no way affiliated with udemy.com, just enjoy the easy to follow videos.)
 

Solitude

Executive Member
Joined
Jul 23, 2008
Messages
7,312
Yep, you'll be fine with Angular and Nodejs. And you should be able to access the database. What kind of database is it?
 

Gezza

Expert Member
Joined
Aug 18, 2009
Messages
2,094
Yep, you'll be fine with Angular and Nodejs. And you should be able to access the database. What kind of database is it?

Some SQL database. Might be MySQL but I've heard that it can't handle huge amounts of requests.

This is going to be the biggest learning curve I've ever faced.
 

Solitude

Executive Member
Joined
Jul 23, 2008
Messages
7,312
Some SQL database. Might be MySQL but I've heard that it can't handle huge amounts of requests.

This is going to be the biggest learning curve I've ever faced.

You'll be fine.. Hopefully. :p

I see you are here in Honeydew. Unfortunately I've never worked with Node.js or I could have helped you.

If you go with Asp.net Core then I can help you if you have any questions.
 

Gezza

Expert Member
Joined
Aug 18, 2009
Messages
2,094
You'll be fine.. Hopefully. :p

I see you are here in Honeydew. Unfortunately I've never worked with Node.js or I could have helped you.

If you go with Asp.net Core then I can help you if you have any questions.

I am indeed in Honeydew. Thanks for the offer (that you can't really help with node :p). When I'm finished with my project I'll have time to look in to other languages and applications. I have enough now to get me started in the right direction.


Thank you everyone for your input. I appreciate it immensely!
 
Top