The Entrepreneur Forum | Startups | Entrepreneurship | Starting a Business | Motivation | Success

OFF-TOPIC Web Development, need answers from people who DO

Accelerate wealth. Build a business that pays freedom. Join more than 70,000 entrepreneurs and register for the Fastlane Entrepreneur forum. Remove ads? Join the INSIDERS.

Adir Barak

Contributor
Read Millionaire Fastlane!
Dec 20, 2020
60
52
110
Hi!

I really didn't expect asking this in this forum but I was almost depressed by answers I got from developers and enthusiasts in "techy" forums ( more at the end for bored readers :hilarious:).

A bit of background - I'm currently learning WebDev in order to launch an online business (mostly frontend up till now). Yesterday I stumbled upon @eliquid AMA SaaS thread, and I've been reading it since, about 30-40% through, very informative.

Let's cut to the chase - I wanted a "roadmap" for what technologies to learn in order to take a project public (functional, up and running website offering services, managing data and of course recieving payments).
*Knows html,css,js and minimal php and sql; and about to learn MERN Stack but knows nothing about how to actually deploy, manage update a website etc'. If anyone here experienced in those areas willing to win me at the right technologies / services to learn it will be amazing! Thanks!


~ about the answers I got in "techy" forums:
- "learn php, many companies work with wordpress and php"
- "you have to get very in depth in X in order to move on to Y"
- "you don't seem ready, take your time, learn more about Z"
- "take another udemy course"
- "work on algos"
Etc'.
I don't wanna work for a company, nor even freelance - I wanna code to make money! Create to provide value not to please my boss...

Thanks again!!
 
Don't like ads? Remove them while supporting the forum: Subscribe to Fastlane Insiders.
Last edited:

YouCanDoThis

Contributor
Read Millionaire Fastlane!
Read Unscripted!
Jan 2, 2021
21
20
17
The Netherlands
Hi!

I really didn't expect asking this in this forum but I was almost depressed by answers I got from developers and enthusiasts in "techy" forums ( more at the end for bored readers :hilarious:).

A bit of background - I'm currently learning WebDev in order to launch an online business (mostly frontend up till now). Yesterday I stumbled upon @eliquid AMA SaaS thread, and I've been reading it since, about 30-40% through, very informative.

Let's cut to the chase - I wanted a "roadmap" for what technologies to learn in order to take a project public (functional, up and running website offering services, managing data and of course recieving payments).
*Knows html,css,js and minimal php and sql; and about to learn MERN Stack but knows nothing about how to actually deploy, manage update a website etc'. If anyone here experienced in those areas willing to win me at the right technologies / services to learn it will be amazing! Thanks!


~ about the answers I got in "techy" forums:
- "learn php, many companies with with wordpress and php"
- "you have to get very in depth in X in order to move on to Y"
- "you don't seem ready, take your time, learn more about Z"
- "take another udemy course"
- "work on algos"
Etc'.
I don't wanna work for a company, nor even freelance - I wanna code to make money! Create to provide value not to please my boss...

Thanks again!!

Not a webdev by trade (I do desktop apps), but in the past I've used Stripe to handle payments. Easy, safe, can integrate with pretty much any language or platform you end up using, so I'd look into that. You really don't want to roll your own payment processing system.

Apart from that, there's about a gazillion different frameworks you could use to set up the website itself fast. We used Laravel, but I'm sure other members can give better advice on that front.

> Create to provide value not to please my boss...

Well said :D
 

Adir Barak

Contributor
Read Millionaire Fastlane!
Dec 20, 2020
60
52
110
Not a webdev by trade (I do desktop apps), but in the past I've used Stripe to handle payments. Easy, safe, can integrate with pretty much any language or platform you end up using, so I'd look into that. You really don't want to roll your own payment processing system.

Apart from that, there's about a gazillion different frameworks you could use to set up the website itself fast. We used Laravel, but I'm sure other members can give better advice on that front.

> Create to provide value not to please my boss...

Well said :D

I actually came across stripe recently and from what I understood it's way more flexible and easily implemented than PayPal for example, haven't done anything with it yet. Will definitely use a service like that in the beginning over creating a system of my own, I just wanna get going first.
Haven't thought about larval (it's php tho which I'm not sure about) will check it out.

Apart from that I still don't know how to, for example, deploy a website and then update/fix/improve on it? How does a database gets in the mess? Etc'

Thanks for your reply.
 

YouCanDoThis

Contributor
Read Millionaire Fastlane!
Read Unscripted!
Jan 2, 2021
21
20
17
The Netherlands
I actually came across stripe recently and from what I understood it's way more flexible and easily implemented than PayPal for example, haven't done anything with it yet. Will definitely use a service like that in the beginning over creating a system of my own, I just wanna get going first.
Haven't thought about larval (it's php tho which I'm not sure about) will check it out.

Apart from that I still don't know how to, for example, deploy a website and then update/fix/improve on it? How does a database gets in the mess? Etc'

Thanks for your reply.

Yes, PayPal is a nuisance in comparison to Stripe, for sure!

Gotta admit I'm not a big fan of PHP either, but Laravel took so much out of my hands I ended with using that over learning a whole new language. I'm sure there might be better alternatives.

Afraid I can't help you much with deployment and updating – I just uploaded files myself manually over FTP. I think that's a bit error-prone for any serious website. Hope someone comes along that can tell you more.
 

Adir Barak

Contributor
Read Millionaire Fastlane!
Dec 20, 2020
60
52
110
Yes, PayPal is a nuisance in comparison to Stripe, for sure!

Gotta admit I'm not a big fan of PHP either, but Laravel took so much out of my hands I ended with using that over learning a whole new language. I'm sure there might be better alternatives.

Afraid I can't help you much with deployment and updating – I just uploaded files myself manually over FTP. I think that's a bit error-prone for any serious website. Hope someone comes along that can tell you more.
Well I'm not competent in php so larval might not be a solution yet, but I will check it out and if it makes things that much easier I might go with it, thanks.
 

eliquid

( Jason Brown )
EPIC CONTRIBUTOR
Read Millionaire Fastlane!
Read Unscripted!
Summit Attendee
Speedway Pass
May 29, 2013
1,722
8,714
1,946
Louisville - Kentucky
Just a quick tip.

No one cares about your stack, or your code, or your dev setup. No one.

Just use what's easiest for you and makes most sense to get up and started.

Once you are making so much money you can hire devs to do the work for you, start worrying about your dev stack.
 

Jon L

Platinum Contributor
Read Millionaire Fastlane!
Speedway Pass
Aug 22, 2015
1,634
4,313
1,016
Bellevue, WA
eliquid beat me to it with the 'no one cares about your stack' point. I'll add this, though: each project doesn't care about another project's stack.

Most of the apps my company builds for clients are very low volume: tens or hundreds of users at a company. A recent client is still pretty low volume, but with him, we have to think about things a little differently. A few hundred thousand records per day in a database still isn't a lot, but it can add up and make some things unwieldy if you don't plan for it.

Another client from this last summer was completely different from anything we'd done in some respects. Usually, we do all the processing on our side - just to make things nice for our client and users. In this case, though, I'd joke with him that my job was to do as little as possible. And he loved the idea. (It meant that he wouldn't have to hire us to make changes every time he sold this application to a new customer.)

So ... pick a project, go build it, learn and do it again. If you're building a company, though, you'll probably want to stop writing code at some point and run the company.
 

lobo

Contributor
Feb 20, 2019
65
86
114
Agree with @eliquid & @Jon L... Don't worry about languages or anything at this point. Use anything you can to get to your desired product or MVP.

Mark Zuckerberg probably coded thousands of hours on FB, but probably hasn't written a line of code for FB in years. Once you're making $$$ you can always hire devs, change technologies, etc with ease.
 

Adir Barak

Contributor
Read Millionaire Fastlane!
Dec 20, 2020
60
52
110
Just a quick tip.

No one cares about your stack, or your code, or your dev setup. No one.

Just use what's easiest for you and makes most sense to get up and started.

Once you are making so much money you can hire devs to do the work for you, start worrying about your dev stack.
I'm not trying to make it about the stack, exactly the opposite, I don't care if I need to learn mySQL, mongodb or whatever, nor do I care about react angular or vue etc'. I want a general roadmap of technologies / steps to take in order to avoid engagement without results.
I simply never done it before and don't know how to efficiently go from 0 (learning from tutorials) to 100 ( having the product up and running with everything functional - of course minimally so to begin with)
Thanks!!

eliquid beat me to it with the 'no one cares about your stack' point. I'll add this, though: each project doesn't care about another project's stack.

Most of the apps my company builds for clients are very low volume: tens or hundreds of users at a company. A recent client is still pretty low volume, but with him, we have to think about things a little differently. A few hundred thousand records per day in a database still isn't a lot, but it can add up and make some things unwieldy if you don't plan for it.

Another client from this last summer was completely different from anything we'd done in some respects. Usually, we do all the processing on our side - just to make things nice for our client and users. In this case, though, I'd joke with him that my job was to do as little as possible. And he loved the idea. (It meant that he wouldn't have to hire us to make changes every time he sold this application to a new customer.)

So ... pick a project, go build it, learn and do it again. If you're building a company, though, you'll probably want to stop writing code at some point and run the company.
100% won't code forever, and really don't view the coding as "end" just the means to get the business going.
Thank you!

Agree with @eliquid & @Jon L... Don't worry about languages or anything at this point. Use anything you can to get to your desired product or MVP.

Mark Zuckerberg probably coded thousands of hours on FB, but probably hasn't written a line of code for FB in years. Once you're making $$$ you can always hire devs, change technologies, etc with ease.
For sure, MVP is just what I want, that's why I want to have a big picture vision and see my next steps instead of going too much in depth in any single step.
Thanks!
 

Tom H.

Silver Contributor
FASTLANE INSIDER
Read Millionaire Fastlane!
Read Unscripted!
Speedway Pass
Dec 13, 2019
257
503
240
Jaco, Costa Rica
  1. Learn how to buy a Linux VPS and how to login to it via SSH
  2. Pick a web development framework and do some tutorial level projects. Personally, I'd use Flask, but for a complete beginner, I'd recommend learning Django or Ruby on Rails (maybe hapi?)
  3. Learn to use Git
  4. Deployment via Git is not recommended, but since you are brand new, just login into your server via SSH and `git clone` your repository, now you can run your code on the server
  5. Figure out the most basic Nginx config for passing through requests to your app
  6. Run your app with an app server like Gunicorn (there is an equivalent in Ruby if you decide to go with RoR)
  7. Now Nginx is serving requests to Gunicorn which is running your app, anyone online can access your app via the IP address for your VPS
  8. Setup domain records to point to your VPS
RE: Database - you will learn to setup and use a database in step #2, e.g. if you work through the Django tutorials. Use SQLite for now, you will be fine for a long time, don't worry about PostgreSQL or MySQL, you will be good with SQLite well after you even have your first paying customer.

RE: React, Angular, Vue - I recommend just creating traditional web apps instead of single page apps. Unless you want to create an app where the interface IS the app (e.g. an image editor, arcade-style game, Trello, etc.) then don't worry about the browser loading new pages... just create a traditional web app and you'll finish your projects much faster, you can always come back to the UI later.
 

peterb0yd

Bronze Contributor
Read Millionaire Fastlane!
Speedway Pass
Dec 30, 2019
174
370
182
Meh, sorry @Tom H. but that's overkill for an MVP.

Others that are saying "stack doesnt matter" are correct. Stack does not matter. You want a product built fast, that's all.

Use any of the frameworks mentioned. Then deploy using Heroku.

Heroku is the simplest app hosting tool on the market. It's... amazing for MVPs.

- Build your MVP locally using any framework
- Deploy to Heroku
- Connect your domain
- Done

(background: 9 years doing development, 6 years full-stack web development professional, built several MVPs from scratch in this time)
 
Don't like ads? Remove them while supporting the forum: Subscribe to Fastlane Insiders.
Last edited:

Jon L

Platinum Contributor
Read Millionaire Fastlane!
Speedway Pass
Aug 22, 2015
1,634
4,313
1,016
Bellevue, WA
I'm not trying to make it about the stack, exactly the opposite, I don't care if I need to learn mySQL, mongodb or whatever, nor do I care about react angular or vue etc'. I want a general roadmap of technologies / steps to take in order to avoid engagement without results.
I simply never done it before and don't know how to efficiently go from 0 (learning from tutorials) to 100 ( having the product up and running with everything functional - of course minimally so to begin with)
Thanks!!


100% won't code forever, and really don't view the coding as "end" just the means to get the business going.
Thank you!


For sure, MVP is just what I want, that's why I want to have a big picture vision and see my next steps instead of going too much in depth in any single step.
Thanks!
There is NOTHING efficient about being a beginner and trying to spin up an app of any sort.

If you think of building software like building a house: Its not at all like building in a housing tract where the same principles apply time after time. Its more like building a house in the desert, then going to the Amazon, clearing a plot of land, and building a house there, followed by going to Dubai, dumping some sand, rocks and misc other stuff into the ocean and building a house on top of that, and then going to the central coast of California and building a house that doesn't run afoul of the Nazis running the California Coastal Commission.

Sure, some things carry over between projects. You need a foundation (database), a frame (your language/framework) and some paint (the U/I). But, beyond that, what kind of foundation do you need? Does it need to support thousands of tons, against 150 mph winds etc., or would a simple slab do just fine? How does the framework tie into that foundation? etc...

You can start to see how much of these decisions can only be addressed through experience. How do you gain that experience? By reading, trial and error, and a lot of effort. Sure, you can go to school for the stuff, but that only gets you so far. It gives you the basic building blocks. You still have to get creative and figure out how things should get stitched together. At each point, there are tradeoffs. Pick a certain style of database and it will make it easy to do one kind of action, but difficult to do another. If you need to do both actions an equal amount, you're screwed, unless you come up with another method of doing things.

So ... start. Pick a method you think works, and go for it. If you're building something relatively straightforward, you'll do pretty well. If its more complex, you will run into problems that you will have to fix later. The trick is to pick the right set of features that will allow you to start making money before you run out of required programming expertise. (Once you make enough money at it, you can hire a more experienced programmer and scale from there.)
 

jsk29

Silver Contributor
Read Millionaire Fastlane!
Read Unscripted!
Speedway Pass
Jul 30, 2014
229
710
290
US
Since you know basic HTML, CSS, JS, and SQL, I recommend continuing to build on those skills vs going wider.

You can use JS for front-end frameworks (eg. React, Next.js)
You can use JS for back-end APIs (eg. Express, Knex.js)

I'm not an advanced dev so I haven't run into an explicit need for NoSQL technologies or picking up frameworks in other languages (Eg. Python => Django, PHP => Laravel)

Other must-knows:
  • Some form of version control. Git (actual CLI tool) and Github (platform to host your repositories) are the most popular by far. Once you know your way around Git/Github, deployment is trivial using services like Netlify and Heroku (AWS is an entirely different beast)
  • Basic terminal skills. (Enough to navigate and run Git commands)
  • Familiarity with npm (npm is 1. A online repo that hosts JS packages 2. The CLI tool used to download and publish packages on the online repo). The npm ecosystem is vast and you can find open-source packages for nearly anything you can think of (avoid rebuilding wheels)
Edit:
Bonus - Some familiarity with the SDLC (Software Development Lifecycle) and Agile workflows may come in handy.
Broad overview of the SDLC:
1. Gather Requirements (eg. Conduct user/market research. What features are required to meet user needs?)
2. Plan (What tech/libraries will you use to meet those requirements)
3. Design (Front end design, Back end schemas, overall architecture)
4. Develop (Most straightforward - write the code)
5. Test (If you stick with JS technologies look into Jest/Cypress)
6. Deploy
7. Maintain

Sidenote: I would not recommend SQLite if you're planning on deploying your back-end to Heroku - the data won't persist (SQLite on Heroku | Heroku Dev Center)

Also if you want a paid resource with everything you need check out frontendmasters.com (they cover backend as well). Each workshop covers practical skills presented by industry professionals (Microsoft, Netlify, Twilio, Netflix, etc.).
 
Last edited:

Adir Barak

Contributor
Read Millionaire Fastlane!
Dec 20, 2020
60
52
110
  1. Learn how to buy a Linux VPS and how to login to it via SSH
  2. Pick a web development framework and do some tutorial level projects. Personally, I'd use Flask, but for a complete beginner, I'd recommend learning Django or Ruby on Rails (maybe hapi?)
  3. Learn to use Git
  4. Deployment via Git is not recommended, but since you are brand new, just login into your server via SSH and `git clone` your repository, now you can run your code on the server
  5. Figure out the most basic Nginx config for passing through requests to your app
  6. Run your app with an app server like Gunicorn (there is an equivalent in Ruby if you decide to go with RoR)
  7. Now Nginx is serving requests to Gunicorn which is running your app, anyone online can access your app via the IP address for your VPS
  8. Setup domain records to point to your VPS
RE: Database - you will learn to setup and use a database in step #2, e.g. if you work through the Django tutorials. Use SQLite for now, you will be fine for a long time, don't worry about PostgreSQL or MySQL, you will be good with SQLite well after you even have your first paying customer.

RE: React, Angular, Vue - I recommend just creating traditional web apps instead of single page apps. Unless you want to create an app where the interface IS the app (e.g. an image editor, arcade-style game, Trello, etc.) then don't worry about the browser loading new pages... just create a traditional web app and you'll finish your projects much faster, you can always come back to the UI later.
Pretty close to what I want to know in terms of "roadmap" but I don't know anything you wrote about, So either I'm extremely far off from a MVP or most of is way too much for a first step.
I will check out what those things are regardless :playful: thanks!
Meh, sorry @Tom H. but that's overkill for an MVP.

Others that are saying "stack doesnt matter" are correct. Stack does not matter. You want a product built fast, that's all.

Use any of the frameworks mentioned. Then deploy using Heroku.

Heroku is the simplest app hosting tool on the market. It's... amazing for MVPs.

- Build your MVP locally using any framework
- Deploy to Heroku
- Connect your domain
- Done

(background: 9 years doing development, 6 years full-stack web development professional, built several MVPs from scratch in this time)
I think you assume I already know the overall steps but looking for a specific service provider or stacks, I actually don't. I don't know how to maintain and proceed once it's deployed and how to even prepare for it.
Thank you

There is NOTHING efficient about being a beginner and trying to spin up an app of any sort.

If you think of building software like building a house: Its not at all like building in a housing tract where the same principles apply time after time. Its more like building a house in the desert, then going to the Amazon, clearing a plot of land, and building a house there, followed by going to Dubai, dumping some sand, rocks and misc other stuff into the ocean and building a house on top of that, and then going to the central coast of California and building a house that doesn't run afoul of the Nazis running the California Coastal Commission.

Sure, some things carry over between projects. You need a foundation (database), a frame (your language/framework) and some paint (the U/I). But, beyond that, what kind of foundation do you need? Does it need to support thousands of tons, against 150 mph winds etc., or would a simple slab do just fine? How does the framework tie into that foundation? etc...

You can start to see how much of these decisions can only be addressed through experience. How do you gain that experience? By reading, trial and error, and a lot of effort. Sure, you can go to school for the stuff, but that only gets you so far. It gives you the basic building blocks. You still have to get creative and figure out how things should get stitched together. At each point, there are tradeoffs. Pick a certain style of database and it will make it easy to do one kind of action, but difficult to do another. If you need to do both actions an equal amount, you're screwed, unless you come up with another method of doing things.

So ... start. Pick a method you think works, and go for it. If you're building something relatively straightforward, you'll do pretty well. If its more complex, you will run into problems that you will have to fix later. The trick is to pick the right set of features that will allow you to start making money before you run out of required programming expertise. (Once you make enough money at it, you can hire a more experienced programmer and scale from there.)
Again, not looking for someone to point at a certain stack or technology, I simply don't know what the steps are. Thanks.

Since you know basic HTML, CSS, JS, and SQL, I recommend continuing to build on those skills vs going wider.

You can use JS for front-end frameworks (eg. React, Next.js)
You can use JS for back-end APIs (eg. Express, Knex.js)

I'm not an advanced dev so I haven't run into an explicit need for NoSQL technologies or picking up frameworks in other languages (Eg. Python => Django, PHP => Laravel)

Other must-knows:
  • Some form of version control. Git (actual CLI tool) and Github (platform to host your repositories) are the most popular by far. Once you know your way around Git/Github, deployment is trivial using services like Netlify and Heroku (AWS is an entirely different beast)
  • Basic terminal skills. (Enough to navigate and run Git commands)
  • Familiarity with npm (npm is 1. A online repo that hosts JS packages 2. The CLI tool used to download and publish packages on the online repo). The npm ecosystem is vast and you can find open-source packages for nearly anything you can think of (avoid rebuilding wheels)
Edit:
Bonus - Some familiarity with the SDLC (Software Development Lifecycle) and Agile workflows may come in handy.
Broad overview of the SDLC:
1. Gather Requirements (eg. Conduct user/market research. What features are required to meet user needs?)
2. Plan (What tech/libraries will you use to meet those requirements)
3. Design (Front end design, Back end schemas, overall architecture)
4. Develop (Most straightforward - write the code)
5. Test (If you stick with JS technologies look into Jest/Cypress)
6. Deploy
7. Maintain

Sidenote: I would not recommend SQLite if you're planning on deploying your back-end to Heroku - the data won't persist (SQLite on Heroku | Heroku Dev Center)

Also if you want a paid resource with everything you need check out frontendmasters.com (they cover backend as well). Each workshop covers practical skills presented by industry professionals (Microsoft, Netlify, Twilio, Netflix, etc.).
So far that's the most straightforward practical answer I got, thank you!
I assume git and github + terminal are what allows me to control the server/code once it's deployed, which is crucial of course. Other than that I'm still kind of confused.

------------------------------------------------------
Maybe I'm that ignorant or maybe it's the language gap, but I think you guys know what I want to know, you just didn't understand me yet-
Trying to clarify:
I'm not asking for a detailed cake recipe (even tho it could be great), I'm at the point where I've never made one, I'm clueless!
I can code but I don't know how to practically apply it, I know I need some kind of hosting but I don't know what do I do before or after it, I don't know which is step 2 and which is 12, which is crucial at the moment and which I can postpone for another 2 months.
Hope I didn't made matters worse :/
 

jsk29

Silver Contributor
Read Millionaire Fastlane!
Read Unscripted!
Speedway Pass
Jul 30, 2014
229
710
290
US
Pretty close to what I want to know in terms of "roadmap" but I don't know anything you wrote about, So either I'm extremely far off from a MVP or most of is way too much for a first step.
I will check out what those things are regardless :playful: thanks!

I think you assume I already know the overall steps but looking for a specific service provider or stacks, I actually don't. I don't know how to maintain and proceed once it's deployed and how to even prepare for it.
Thank you


Again, not looking for someone to point at a certain stack or technology, I simply don't know what the steps are. Thanks.


So far that's the most straightforward practical answer I got, thank you!
I assume git and github + terminal are what allows me to control the server/code once it's deployed, which is crucial of course. Other than that I'm still kind of confused.

------------------------------------------------------
Maybe I'm that ignorant or maybe it's the language gap, but I think you guys know what I want to know, you just didn't understand me yet-
Trying to clarify:
I'm not asking for a detailed cake recipe (even tho it could be great), I'm at the point where I've never made one, I'm clueless!
I can code but I don't know how to practically apply it, I know I need some kind of hosting but I don't know what do I do before or after it, I don't know which is step 2 and which is 12, which is crucial at the moment and which I can postpone for another 2 months.
Hope I didn't made matters worse :/
Follow the broad SDLC process I mentioned above.

Step 1 - Gather Requirements - is the most important. Doing this incorrectly is what kills most startups.
- What is the target market/user you're trying to serve?
- Who are your existing competitors?
- What features/benefits will your app offer that solves your users' needs that they can't get from existing apps?

Step 1 is essentially validating MJ's Commandment of Need. You want to reduce the risk of investing months into an app that no one will use. You can try validating your idea by making a simple landing page with a pre-sign up offer to collect a list of emails and see if anyone is interested.

Step 2 - Planning
Highly simplified view: every app can essentially be considered a CRUD app. (Ignoring machine learning, and other fancy features)

C - Create
R - Read
U - Update
D - Delete

The simplest example would be a TODO list app.

The front end provides an interface to add, view, edit, and delete todos. (React.js is the most popular front end JS library. Once you host your code on Github, deploying a React app on a platform like Netlify literally takes a few minutes).

However, what's the point of having an interface if none of the data persists when the user closes the page/app? That's where the backend comes in.

The backend can be thought of as your server code + your SQL database which is deployed as an API. Again this is highly simplified and I'm leaving out things like caching and load balancers.

Think of an API as a menu at a restaurant. You have a list of available options, and when you place your order, it's brought to the kitchen (your backend) and after some preparation, your order is fulfilled (or you're notified that it's not available).

So when the user of our TODO list performs CRUD operations, the React app would make corresponding requests to your API endpoints, which trigger corresponding queries on your database.

You can build your backend with Express.js and use Knex.js as the query builder (essentially allows you to use JS to make SQL queries to your database). For the actual database management system, I recommend PostgreSQL.

There are other considerations like how to handle user identity (authentication/authorization), scaling, complying with user data laws, etc.

Honestly, there's a ton to learn if you're just starting out, and 2 months is likely not enough time to get comfortable with all of this. Just React.js itself has a fairly steep learning curve.

If you have the capital, I recommend focusing on Step 1 and 2, learning enough to speak 'dev-talk' and hire a dev team once you've validated your idea.
 

beswaax

Contributor
Nov 26, 2019
58
78
112
Hi!

I really didn't expect asking this in this forum but I was almost depressed by answers I got from developers and enthusiasts in "techy" forums ( more at the end for bored readers :hilarious:).

A bit of background - I'm currently learning WebDev in order to launch an online business (mostly frontend up till now). Yesterday I stumbled upon @eliquid AMA SaaS thread, and I've been reading it since, about 30-40% through, very informative.

Let's cut to the chase - I wanted a "roadmap" for what technologies to learn in order to take a project public (functional, up and running website offering services, managing data and of course recieving payments).
*Knows html,css,js and minimal php and sql; and about to learn MERN Stack but knows nothing about how to actually deploy, manage update a website etc'. If anyone here experienced in those areas willing to win me at the right technologies / services to learn it will be amazing! Thanks!


~ about the answers I got in "techy" forums:
- "learn php, many companies work with wordpress and php"
- "you have to get very in depth in X in order to move on to Y"
- "you don't seem ready, take your time, learn more about Z"
- "take another udemy course"
- "work on algos"
Etc'.
I don't wanna work for a company, nor even freelance - I wanna code to make money! Create to provide value not to please my boss...

Thanks again!!
This course will teach you everything you want to know, its by the University of Helsinki and its solid. MERN stack + deployment. If you want to do web design just use wordpress, I guess its easier.
 

Adir Barak

Contributor
Read Millionaire Fastlane!
Dec 20, 2020
60
52
110
You can try validating your idea by making a simple landing page with a pre-sign up offer to collect a list of emails and see if anyone is interested.
Exactly what I want to do. I assume I'll get to it pretty soon.

Step 2 - Planning
Highly simplified view: every app can essentially be considered a CRUD app. (Ignoring machine learning, and other fancy features)

C - Create
R - Read
U - Update
D - Delete

The simplest example would be a TODO list app.

The front end provides an interface to add, view, edit, and delete todos. (React.js is the most popular front end JS library. Once you host your code on Github, deploying a React app on a platform like Netlify literally takes a few minutes).

However, what's the point of having an interface if none of the data persists when the user closes the page/app? That's where the backend comes in.

The backend can be thought of as your server code + your SQL database which is deployed as an API. Again this is highly simplified and I'm leaving out things like caching and load balancers.

Think of an API as a menu at a restaurant. You have a list of available options, and when you place your order, it's brought to the kitchen (your backend) and after some preparation, your order is fulfilled (or you're notified that it's not available).

So when the user of our TODO list performs CRUD operations, the React app would make corresponding requests to your API endpoints, which trigger corresponding queries on your database.

You can build your backend with Express.js and use Knex.js as the query builder (essentially allows you to use JS to make SQL queries to your database). For the actual database management system, I recommend PostgreSQL.

There are other considerations like how to handle user identity (authentication/authorization), scaling, complying with user data laws, etc.
Thank you! that's pretty helpful. a bit overwhelming towards the end tho :playful:. I can manage the programming pretty well, but anything with terminals, servers etc' is still like a foreign language to me, I better get to it soon.
Honestly, there's a ton to learn if you're just starting out, and 2 months is likely not enough time to get comfortable with all of this. Just React.js itself has a fairly steep learning curve.

If you have the capital, I recommend focusing on Step 1 and 2, learning enough to speak 'dev-talk' and hire a dev team once you've validated your idea.
Unfortunately I don't have the capital and besides, for the short-range I don't need anything too complicated so I would rather learn and have as much control as I can (over outsourcing stuff and staying clueless).

This course will teach you everything you want to know, its by the University of Helsinki and its solid. MERN stack + deployment. If you want to do web design just use wordpress, I guess its easier.
Thank you Iroh :fist:
 

Frinys

Bronze Contributor
Read Millionaire Fastlane!
Read Unscripted!
Speedway Pass
Oct 28, 2019
105
278
168
1. Learn Frontend Skills
First, take a look at the frontend roadmap below. Start at the top. You must be familiar with everything down to "CSS Frameworks". You may skip "CSS Architecture" and "CSS Preprocessors". This is the absolute minimum requirement.

After you have done this, you will be able to create simple web applications. However, you will have to rely on other service's APIs and backend services.

After this step, you will be able to build your first landing page! Create a landing page for your service, host it on a free hosting service. I recommend Heroku but use whatever you want, it doesn't matter much what you pick.

frontend.png
(source: Learn to become a modern frontend developer)


2. Learn Basic Backend Skills
This is the next step if you want to create more complex services. You will have to learn everything down to "Learn about APIs". This is the minimum of knowledge necessary to create your own backend.

If you have the time, I recommend learning everything down to (including) "Design and Development Principles". This is not necessary to provide value, but it will increase your productivity a lot.

After this step, you will know enough to build almost any backend by yourself. And since you already should know frontend by now, any service you can think of building is within reach.

backend.png
(source: Learn to become a modern backend developer)

3. Google when necessary
From this point and onwards, you should work on your product. Google is your friend when you get stuck. Googling will be much easier once you have a basic understanding of both frontend and backend.

Note
All of this will take a lot of time. But it's worth it as long as you enjoy programming. If you don't enjoy programming, then it's better to find a way to earn some extra cash and outsource the programming to somebody else.
 

GoodluckChuck

Platinum Contributor
FASTLANE INSIDER
Read Millionaire Fastlane!
Read Unscripted!
Summit Attendee
Speedway Pass
Feb 2, 2017
659
2,581
660
my house
There a bunch of us around that created successful web design businesses with minimal to zero coding experience. Sure, the websites we build aren't incredibly advanced but they make money for our clients and for that they are willing to pay us.

Honestly, I would spend more time learning about how websites and apps add value and less time on how to build them. There are literally sh*tloads of people that can code, but only 1/1000 of them understand how to build a site that delivers massive value to the end-user. If you get really good at that part then the rest is just a matter of figuring out how to get it built.

This is an entrepreneur forum so we aren't focused on building a skill set to work a job for ever. The currency of the world is value and creating value is what makes you rich.
 

Adir Barak

Contributor
Read Millionaire Fastlane!
Dec 20, 2020
60
52
110
1. Learn Frontend Skills
First, take a look at the frontend roadmap below. Start at the top. You must be familiar with everything down to "CSS Frameworks". You may skip "CSS Architecture" and "CSS Preprocessors". This is the absolute minimum requirement.

After you have done this, you will be able to create simple web applications. However, you will have to rely on other service's APIs and backend services.

After this step, you will be able to build your first landing page! Create a landing page for your service, host it on a free hosting service. I recommend Heroku but use whatever you want, it doesn't matter much what you pick.

View attachment 36352
(source: Learn to become a modern frontend developer)


2. Learn Basic Backend Skills
This is the next step if you want to create more complex services. You will have to learn everything down to "Learn about APIs". This is the minimum of knowledge necessary to create your own backend.

If you have the time, I recommend learning everything down to (including) "Design and Development Principles". This is not necessary to provide value, but it will increase your productivity a lot.

After this step, you will know enough to build almost any backend by yourself. And since you already should know frontend by now, any service you can think of building is within reach.

View attachment 36353
(source: Learn to become a modern backend developer)

3. Google when necessary
From this point and onwards, you should work on your product. Google is your friend when you get stuck. Googling will be much easier once you have a basic understanding of both frontend and backend.

Note
All of this will take a lot of time. But it's worth it as long as you enjoy programming. If you don't enjoy programming, then it's better to find a way to earn some extra cash and outsource the programming to somebody else.
Wow - pretty much what I had in mind (a literal roadmap) - Thank you!!!
The only problem is that it's technology oriented and not "project" oriented and thus some of it is overkill for just getting a product to market, but it is way better than nothing there is no question about that!

There a bunch of us around that created successful web design businesses with minimal to zero coding experience. Sure, the websites we build aren't incredibly advanced but they make money for our clients and for that they are willing to pay us.

Honestly, I would spend more time learning about how websites and apps add value and less time on how to build them. There are literally sh*tloads of people that can code, but only 1/1000 of them understand how to build a site that delivers massive value to the end-user. If you get really good at that part then the rest is just a matter of figuring out how to get it built.

This is an entrepreneur forum so we aren't focused on building a skill set to work a job for ever.
Yea I'm not in it for the beatiful code and the best practices and 100% deep knowledge of the tool, but I do need a minimal knowledge on how to apply the tool in order to provide value. I've got my buisness idea and I know I'm not 1% of the entrepreneur I will be, I've got tons to learn and do but I got to start somewhere don't I?
P.S - I mean that I dont expect people to get any value from me having the skill but me providing value with the skill.
The currency of the world is value and creating value is what makes you rich.
Well put. great.
 

nowap

Contributor
Jan 24, 2020
28
59
17
My 2cents .. keep it simple. Forget about git, deployment flows, and all that stuff... that will set you back a month.

I'm old fashioned ..made my first website in 1996... things were simpler then. Even 10 years ago, things were simpler and it was much easier to get started without get lost right at the start.

My 'keep it simple' advice:

- Don't build separate frontend and backend - that's the direction that's 'assumed' so often .. what's your frontend stack? And your backend? etc. .. it is more than twice the work + you will probably need to learn/use two languages (or use JS at both frontend and backend). (separate front- and backend, IMHO, is great for larger firms that can then hire separate frontend and backend devleopers who can than work completely separate from eachother).
- Try to avoid frontend build processes like npm build - (at least keep it simple).
- Don't use git if you're working alone

There.. you can cross out 80% of those roadmaps that were posed before. It will save you months of productivity.

Nothing wrong with a plain server-rendered site! Unless maybe you want to build something highly reactive.

My heavily biased beginners advice: go with PHP + MySql. Simple server rendered HTML. For CSS you can use SASS/SCSS as it will speed things up - but you can even use a local compiler for that (inside your IDE), and don't even need to use npm or other build tools!

Get a copy of PhpStorm. Setup your server details (ftp). Install Laravel... start and learn as you go.
 
Don't like ads? Remove them while supporting the forum: Subscribe to Fastlane Insiders.

Sponsored Offers

  • Sticky
MARKETPLACE  NEW: The Best School for Going Fastlane (50% Off Deal Now On)
Hi Rob, I've sent you a PM as I’m trying to join since midweek. Cheers
  • Sticky
MARKETPLACE  Freelance University: Solve Every Freelance Problem (Especially on Upwork)
FU. 4 DAYS. 50% OFF BLACK FRIDAY SALE! If you're an Upwork freelancer, you'd be a fool not to...
  • Sticky
MARKETPLACE  You Are One Call Away From Living Your Dream Life - LightHouse’s Accountability Program ⚡
One year ago, I was just your average software developer who always consumed content about...
  • Sticky
MARKETPLACE  For Sale: Food Brand with 4 Years of Happy Customers in a Fast-Growing Niche
So to get certified, it cost a fortune? How much exactly? That sucks that these "health...
MARKETPLACE  Fox Web School "Legend" Group Coaching Program 2021
Fox's Web School helps you learn a specialized skill which you can use to get to Fastlane. It's...
MARKETPLACE  Not sure how to start? This free book will teach you how to build a successful web design business
Hi Fox. Starting the book and got through the introduction. Had a conversation with Andy Black...


Don't like ads? Remove them while supporting the forum. Subscribe.

New Topics

Fastlane Insiders

View the forum AD FREE.
Private, unindexed content
Detailed process/execution threads
Ideas needing execution, more!

Join Fastlane Insiders.

Top Bottom