How to Build the Right Software (and Choose the Right Stack)
What you'll learn
- Learn the AI-proof dev skill of choosing what to build and in what tech stack
- Learn how to define clear requirements by asking "why" to dig deep into the real needs behind every request, moving from solution to the underlying problem..
- Gain skills to prevent and control scope creep while encouraging creative solutions by embracing constraints.
- Learn to choose a tech stack, from JavaScript frameworks to Low Code solutions, and understand the strengths of each approach to make smart technology choices.
- Harness the power of user research to uncover real user needs, test usability, and express requirements as problem statements that guide development.
- Approach feature requests as clues to underlying problems, not requirements. Learn techniques to uncover the real issues and make impactful additions.
- Make the most of legacy software, recognize missed opportunities in direct rewrites, and practice building lean, purposeful solutions.
Requirements
- No programming or design experience needed.
Description
Master an AI-Proof Developer Skill!
UPDATE: Practice this skill with live AI conversations using Udemy's new Role Play feature in 7 investigative scenarios with AI stakeholders!
It's one challenge to build software, it's another to know what software to build and what stack to build it in.
AI is letting us build the WRONG software FASTER. With this course, learn how to build the RIGHT software in the RIGHT technical stack.
How can you solve the real problems of your users, stakeholders and clients? How can you prevent and control scope creep while deciding what to build? How can you arrive at the most effective MVP? How can you decide on the most effective technology stack for your project? How can you manage feature requests properly? Where do you begin when rewriting legacy software?
All these questions and more are answered in this course. I bring to this course 25 years as a software developer, manager, and user experience designer in small, medium, and large organizations, and I'll cover real world examples, let you practice with quizzes, and provide a PDF worksheet to use in your work.
Who is this course for?
Developers, designers, team leads, project managers, and requirements engineers. Anyone who has anything to do with deciding what software will actually be built and deployed.
What we will I learn?
Techniques to reverse engineer requirements, feature requests, and existing software into problem statements that can be used to determine the best software solutions to actually create.
How to overcome the weaknesses of the concept of Minimum Viable Products (MVPs) to make the best decisions on what features are truly needed for the software to be successful.
Decide on your software stack, looking at JavaScript frameworks, static site generators, content-driven frameworks, Low-Code and No-Code solutions, content management systems and more, analyzing the purpose of each kind of tool to determine which is best for your project.
Build the best software by embracing user research (user interviews, user observation, usability testing, and more) as a fundamental aspect of your software development process.
Handle feature requests the proper way, viewing them as clues to problems yet to be solved rather than requirements to be estimated.
Learn how to view legacy software as a treasure trove of existing user research, and avoid making the mistake of rewriting software screen for screen.
This course will give you concrete tools to immediately implement in your software development process. Save time, money, and stress by learning to build the right software in the right stack.
Who this course is for:
- Developers, designers, team leads, project managers, and requirements engineers.
Instructor
Born and raised in Cleveland Ohio, now married and living in upstate New York, Tony is primarily focused these days on trying to be a good husband. While inexperienced at that, he's quite experienced in all things web.
Tony has been programming since he was 12 years old, and got into web sites and web application development at 16. After graduating with a Computer Science degree from Case Western Reserve University, Tony continued with that interest as a software application developer and architect, database designer, and user interface designer.
His 25 years of experience has ranged across technologies such as modern semantic HTML, CSS, JavaScript, React, Angular, Vue, Node.js, SQL as well as user experience design, usability testing and more.
He believes strongly that deeply understanding any topic allows you to properly learn it and, even more importantly in a real-world environment, quickly overcome problems.
He also has a deep interest in human nature and behavior, and how that impacts human-computer interaction. This interest translated into extending his career into user experience design and usability research.
Another link in the chain is his 25 years of experience in public speaking and teaching, both in front of large groups and as a one-on-one private instructor.
Putting all these pieces together, he has spent his career listening to a client need, designing a database and software to meet that need, building it, testing it, teaching others how to use it, then improving user experience by watching people actually use it and adjusting accordingly.
Tony loves teaching every aspect of what he does, and even more loves teaching in a way that imparts understanding, as opposed to just examples intended to be parroted. He loves that moment when a student 'gets it', and that's what he wants for you when you take one of his courses.
He has found that those that learn purely by example, and not by understanding, end up much more limited than they need to be.
"Examples need to be built on top of context, and once you have context, you can not only copy the examples you find, but adjust and improve upon them."
He firmly believes that everyone has the ability to develop software, if they are just taught properly. Including you.
"It is my pleasure and privilege to teach you. I hope you'll come away knowing something you didn't before, understanding at a level deeper than before, and feeling positive that you can accomplish what you've set out to accomplish. Thank you!" - Tony Alicea
Ask Tony a question, read a post, or follow him around internet.