Apply for the next session

DFTW is a rigorous 9-month, cohort-based product design mentorship program. We cultivate UX engineers, creative technologists, interaction designers, design engineers, and good ol' full-stack web developers.

It's the “coding boot camp” for people who want a holistic tour of the entire design process — and not just the implementation steps. No false promises, no bullshit. Just exactly what you need to learn and practice, in the order of importance. You provide the energy, and we provide the structure and support. We're a force multiplier.

We're getting together our 2024 DFTW sessons, apply now.

Oh, the things we'll learn at Perpetual Education

The fact is, that you can't learn everything about a topic, and you can't learn all of the topics either. So, we introduce all of these concepts in order of importance and let the projects decide. The goals of the students determine how deep they want to dive into any given subject, but everyone who puts in the work leaves with a solid foundation in everything listed below.

If you are brand new to all of this, don't be afraid! It's a lot of new stuff for anyone. Please watch this Introduction to the field and get a feel for how you can be an important part of it.

  1. How our brains work

    Programming is hard!” Or so we sometimes think… but it’s modeled after our simple thought processes. You already think like a computer – and that’s really helpful to understand early on.

  2. Work life balance

    It doesn’t matter if you are the best programmer in the world if you burn out. To maintain a sustainable work-life balance and be an effective designer, you’ll need to manage your schedule and build healthy habits.

  3. How computers work

    Although this isn’t a Computer Science class, you’ll need a clear sense of how computers work – because they are the internet – and our primary tool.

  4. User experience

    You don’t need to go to UX school to learn User Experience. You are a user! Learn how to think about your experience.

  5. Systems

    Interact with the computer through the command line, Graphical User Interfaces, browsers, and learn about the OS and file system.

  6. Usability

    Test out ideas and prototypes with real users. Learn to spot common pitfalls and build interfaces that are enjoyable and intuitive based on real-world evidence.

  7. Effectively leverage your computer

    You’ve probably used a computer for a long time already – and you might think you’re an expert. Learn to optimize your workflows and save your time for what matters most.

  8. Goal-driven development

    It’s impossible to tell if a design is successful without a goal. Learn to leave the ego out of the process and guide yourself and the team with clear goal-driven decision-making.

  9. Teamwork tools

    Learn tools like Google Drive to stay organized and collaborate on ideas in real-time. No more emailing zip files and chasing down outdated PDF’s. Save your time for what matters.

  10. Research and strategy

    Just the right amount of research – can save you hundreds of hours or even millions of dollars. Fight the urge to start building and learn how to set the stage for successful projects.

  11. Content hierarchy

    Organize content and craft clear messages and stories. Learn how the browsers use this information for cataloging and how visual design plays its role.

  12. How The Web works

    It’s taken for granted. “The Internet,” right? You use it. But – how clearly understanding what is happening will open up that black box and save you from years of blurry mental models.

  13. Hypertext Markup Language

    It’s HTML! The primary tool for building web pages. Learn the what and how and why by revisiting its history. Build your first websites like it’s 1999!

  14. Expressive and accessible markup

    HTML has gone through many changes. It’s the best it’s ever been – and you can write wonderful markup to appease the computers and ensure everyone access to your site’s content.

  15. Typography for a fluid context

    Explore typography for print and how word processing and visual design programs describe text. Tell your story with class, and confront a world with no fixed paper size.

  16. Cascading Style Sheets

    Uncover the secret styles your browser is giving your HTML page. Learn the magic of the Cascade and how to bring your sites to life with CSS.

  17. SEO and how sites are crawled

    Dig into how your HTML is read by browsers and search engines. Learn how to write optimized pages from the start – instead of hiring an “SEO” person to come in and fix it later.

  18. Rich metadata for sharing

    You know those images and links and titles that show up when you share a site on social media or even in a text message? Take full advantage of rich sharing assets to stand out above the rest.

  19. Responsive layout techniques

    CSS was never meant for layout. It’s a hot-bed of frustration – but that time is over! We now have new tools like flexbox and grid that allow us supreme control over the fluid world of the web browser.

  20. User testing

    Get out there and test those prototypes. There’s no need to “guess” if it’s working. The users will tell you if you ask. Make it a core part of your design process even if you just ask your mom.

  21. Documenting your process

    Being able to talk about your thought process, goals, and the evidence that helped you make decisions is more than any given programming language. It’s also what will get you hired.

  22. Project management and leadership

    Get acquainted with tools like Trello and set up timelines to mark progress. Learn how to manage people and their expectations – while supporting your team instead of hounding them.

  23. Version control and staging

    Use Git to manage your code and work on collaborative teams. Learn how to ‘stage’ websites and build things locally and ship to the live site after sign-off.

  24. Server-side scripting

    Learn the basics of programming with PHP. This common language will directly relate to other Object Oriented languages and to JavaScript as well. Learn how server-side rendering works and explore component architecture.

  25. Understanding tech stacks

    Check back in with HTTPS and learn how the most common server software generates and delivers your website to the end-user. The less ‘stuff’ the better!

  26. Dynamic data and databases

    At some point, you’ll grow out of the core HTML features – and you’ll want to take the next step. Learn how user-generated data-driven sites work – and how pages are built from data in a database.

  27. Personal websites

    Take everything we learn and add it to your personal website. Learn about DNS, domain names, and hosting. Start building out your portfolio from our daily challenges.

  28. Building authority with a blog

    Build your own custom theme with the world’s most popular CMS. Learn all about CRUD and how to build out complex Content Management Systems for your clients.

  29. Libraries and frameworks

    A ‘library’ is just a collection of pre-written code you can use. A framework is a set of conventions and structures. Cut through the hype and learn how to choose your tools with confidence.

  30. Finding your role on the team

    We don’t think everyone should be striving to be a “full-stack” developer. It’s not that black and white. We’re here to help you find your passion and where you can provide the most value.

  31. Content management systems

    You may have heard of ‘front-end’ and ‘back-end,’ but what about the front of the back-end? Learn about building the interface that non-programmers will use to fill out site content.

  32. Visual design concepts

    We have major respect for great visual design, but it isn’t magic. It takes practice like everything else. We’ll give you the tricks to keep it fun and effective.

  33. Navigating group critiques

    It takes empathy and respect to communicate with your team members. Staying on track and focusing on the goal can help guide you through messy feelings and personal styles. Evidence is queen.

  34. Page speed and performance

    Keep your sites lean and mean by understanding the bottlenecks and how pages are delivered and rendered. Learn to weigh the cost of common and unfortunate design decisions.

  35. Client-side scripting and rendering

    Yes, yes, yes. JavaScript. We’ll be learning and using lots of JavaScript. You’ll learn how to learn from the official documentation. At a real job, no one is going to give you directions.

  36. User interface and animation

    Create fun and interactive experiences. Although we believe that content comes first, there’s no reason why it can’t also make you say “Whoa! that’s so cool!”

  37. Working with clients

    Whether you plan on getting a job at an established company/agency or you want to work freelance, you’ll need to understand how to work with stakeholders, explain your decisions, and build trust.

  38. Selling your work

    As a designer, it’s also your duty to sell your design to the client. You’ll need to explain the value of your decisions and instill confidence in your design.

  39. Pricing your work

    It’s easy to feel ‘new’ or ‘inexperienced’ and for that to reflect in your pricing, but the value you bring to the project is what really counts. Start out on the right foot with conviction in your worth.

Above is the human-readable overview of the topics and concepts. For a detailed week-by-week breakdown of the technical content, refer to our 2024 syllabus. Let us know if you have any questions.

What we will not learn at Perpetual Education

We have opinions. We've also got opinions about having too many opinions. It's tricky. As you mature as a person, and as a designer, you go through many stages. Many of these are imperative for your growth, but some of them are just yucky and are better avoided. We will teach you how to stay focused and choose what tools work for you.

  1. How to be a Ninja

    We won’t be teaching you how to be a ‘rock-star’ or a ‘Ninja.’ While ninjas historically excelled in stealth, and rock stars are known for their musical talents, our emphasis is on the art of designing things.

  2. Brogramming

    As fun as programming is, it’s just a tool – and the outcome is what we’re excited about. You can’t “win” programming. We won’t be creating a culture for ‘bros’ – unless you’re talking about Mario.

  3. Bad habits

    No bad habits allowed. Your team will cross-reference everything – and together, we’ll decide what that means. We’ll be fighting the urge to connect to random rituals and OCD feelings.

  4. Android and iOS

    We prefer Progressive Web Applications over proprietary tools where possible, and it wouldn’t make sense to teach Java and Swift in the same course. But everything we learn will directly apply to those things as well.

  5. CSS frameworks

    We will be going super in-depth with CSS and during that time you’ll create your own CSS ‘framework.’ We’ll explain the design decisions behind Bootstrap and Tailwind – and then you’ll be able to decide for yourself.

  6. Bitcoin and blockchain

    Yeah. We’re not teaching that. But you can learn to build a really great website for your blockchain company!

  7. Artificial intelligence

    During the course, we’ll certainly be talking about the impact of AI and how to leverage all the new tools in your workflow. You can build your own world-destroying robots after the course if you want.

  8. Enterprise level applications

    Online classes and tutorials make it seem like one person can build out their ultra-complex web application all by themselves. You can’t. No one goes to school to learn to build “Buildings” all by themselves, right?

  9. Paid advertising

    There are plenty of ways to market things and cross-promote. We’ll teach some of that – but these ugly ads tracking us around the internet have got to go. We’re not going to be adding to the trash heap.

  10. Computer Science

    We work hard to keep everything universal and connected to the core concepts, but if you want to learn Computer Science, you’ll need to take some additional steps. We can help you – when it’s time.

  11. Classic video game development

    As cool as this is, we’re not going to be doing anything like this in the core curriculum. We will have lots of game-like interaction opportunities though.

What the future holds! for Perpetual Education

Instead of buying a tiny yacht, we're going to keep making this course better and better perpetually! Not only will we constantly update the DFTW course curriculum, but now that everyone is on the same page, we'll be able to teach advanced topics with a level of control and shared knowledge that few other schools are able to achieve. As a DFTW alumni you'll have free access to all future elective courses as they are created:

  1. Advanced JS frameworks

    In the core course, you learned a lot about JavaScript and worked with a few frameworks. Now that we’re all on the same page, we can dig deeper and explore larger projects.

  2. Advanced visual design

    Get a personal look into the processes of 10 different visual designers. Learn about other mediums and how our branding and message carries over into product design and packaging in real life.

  3. Advanced API design

    As you’ll learn, most web applications are making requests for data and then using that data to build out the front-end. But what about when things get much more interesting and complex?

  4. Real time applications

    We’re having fun with this real-time web game version of Codenames. We want to dig into more collaborative games and sharing ideas. Maybe Node, maybe Go. We’ll see.

  5. Progressive web applications

    We’ll be learning about PWA’s in the core curriculum, but we’d love to dig deeper into this and get some hard-core applications built outside of the walled gardens.

  6. You tell us!

    Your experience will help shape where we go next.

Did you just read all that information up there?

There are more than 50 little paragraphs! If you did – then you might be serious about this stuff. Let’s talk about it.

Apply for the next session