Following my previous question, I think learning at least the fundamental basics of how to build software would be invaluable. I'm based in London, but any tips from the community on the best place to begin my learning would be more than welcome.
Most developers don't have a clue how to build something either, so you're not alone.
Bare with me here, I'm gonna get to the programming bit, but first before we write 10,000 lines of code, as a newbie programmer their are some things you need to know...
If you have an idea for a tech product. You probably have some outlines on what the Minimun Viable Product (MVP) is. And then what your Dream Goals are should you manage to get users. If you have an idea. if you're at the development stage, ideally acording to many mentors you would of wanted to have pitched this idea to some "freinds, associates, email contacts, social contacts" to see if any body is willing to pay a fee to use "the idea" in it's MVP form. This will get you to a place where you can say "I have 10 users willing to pay me $50 to use the MVP" totalling 500 bucks a month. If you can't get those 10 users you are probably on the wrong track. (trust me its hard).
If you can, you now have a small business plan with an income. Whilst none of this has anything to do with programming, What I am outlining here is a stark reality of tech products and business's.
"Its easy to sit and think if only I could build this I would have a dream business.." and that's not a naive, we have all been their.
The reality is that in order to get this idea up and running what you really need, is customers, a market and a sales funnel. And all of that is a heck of a lot of work. If you can get users, you will need support, security, GDPR, maintanance and 24 hour server management. You will need to sleep with your phone going "buzz" buzz..cloud server error". I'm not kidding.
Building a software product is one game, running it another, maintaing it another, pushing feature updates another, security another and so on... your going to need help.
So here is my advice:
Validate the idea. get some users willing to pay from drawings and wireframes. Decide your strengths in the business, what do you want to be doing. If you have partners do the same for them. Then figure out if realistically you are the man to be the programmer.
If you want to still build your product, rather than partner up - and i can understand why, then your best bet is:
1. Work on your product, not being a programmer (screw classes).
2. Figure out, break down what the modules are (login, sign up, store item)
5. Decide on a STACK (What tools, server, language)
6. Learn on-line via google how to build each module you need.
7. Ask for help on sites like stackoverflow.com - be warned they can be harsh.
8. Find the simplest way to acheive the MVP
9. Worry about 11users to 1Million users if and when your lucky enough to reach that far.
10. Good luck!
I took a course on line, many options, I used Lynda.com and discovered what HTML, CSS & Java script is. I cannot program, but I know what is happening when someone programs.
Terrible answers so far.
You should not learn to build software yourself.
You get a developer to do it and you concentrate on the business side of it.
To those on this thread who said it's a mistake to learn how to build software, I will humbly disagree. If you have interest in learning how to build software, then take that motivation and do it.
When I was 2 years out of college, I started my first startup with my more technical college buddy. We kicked off the project, me acting as business coordinator, Business Analyst, Project Manager and him writing code on our off hours.
2 months later one of his former employers offered him $400/hour to maintain his old code. The value of his time rose significantly and our project died. Afterwards I committed to build upon my technical skillset. I can now build whatever idea I have and I've built and launched 3 applications.
Several successful founders have done the same thing, including kevin systrom (watchi his startup school interview).
Learning to program:
It depends on what you need for your software however I would recommend you start with this free introductory python course by professor Severance. Python is a great intro language due to its expressive syntax. https://www.pythonlearn.com
You will learn all the programming fundamentals, the. The course then follows up with more advanced topics like building a database and writing data into it using python libraries, scraping websites, apis etc. he also has interviews posted with the creator of python, php, one of the original sql committee members which gives you an appreciation for why the software was built the way it was. He also has a web development course which I can’t comment on.
I took this course on Coursera when it was free, but university of Michigan is hoping to make some revenue on the course. The content on that website is the same content offered for this course in coursera, only it's free and licensed under creative commons.
Infrastructure (building your environment in the cloud):
I recommend acloud.guru I can offer others if I know what architecture you plan on building.
Really depends on the industry and product/service. Some will require much more technical experience than others. For basic web sites, anyone can learn to make them pretty quickly here https://dash.generalassemb.ly
I believe youtube.com is the best place to learn software development. It has all the information you need, no matter what programming/script language you want to learn. It has ranging from beginning to advance level. the 2nd best is www.w3schools.com
The best way is through a mentor guiding You through problems. If you want, contact me and I can help with your questions.
It definitely depends upon your current skill set in this area and the technology you are interested.
Try https://www.w3schools.com/ for learning the web development skills. It comes with learning, tutorials and examples. There is also https://www.sitepoint.com/learning-hubs/. I found these sites very helpful.
You may want to try to google to find the free and paid sites and use the one that you find helpful. Good luck.
They can teach you for free, even paying many of your living expenses, and then they get paid back when you get a job paying more than a certain amount.