I am Todd Motto. Ask me anything.

Todd is a 26 year old front-end engineer from England, UK. He runs Ultimate Angular (which just won "Best Angular product for Education" award!), teaching developers and teams how to become Angular experts through online courses.

He's also a Developer Expert at Google, conference speaker and open source lover.

Ask Todd Motto about:

  • Angular
  • JavaScript
  • Speaking at conferences
  • Getting started with programming
  • Contributing to OSS

Thanks for the great questions and your time everyone! :)

Comments (121)

Anant Kumar's photo

Hi Todd, Thanks for doing this AMA. :)

What's your opinion on ReactJS and VueJS? When would you recommend a developer to use Angular over React and Vue?

Todd Motto's photo

Founder, Ultimate Angular.

Hey Anant! Thanks for the great question. I’ve a bit more experience with React than I do Vue (having said that, I do pay a lot of attention to both communities and their direction). I really really like JSX, I kinda miss it over in the Angularsphere - but there are plenty of shiny features for me to play with over there :D

As for recommendations, I rather give folks some details where they’re able to make their own mind up on the technology they’d rather work with - I don’t think pushing people in a direction will make them “like” something more. If you’re considering a project, and have the time/capability - I’d highly suggest prototyping a few ideas with different options (React / Angular / Vue) to see what your team’s consensus is, as well as thinking about project longevity.

I think we've also come to a consensus on the web that components are the way forward - I think nowadays it's picking the right lib/framework that's the right flavour for you :)

Jay Wilson Jr.'s photo

Hey Todd, Thanks for this!

How do you level up and keep your skills relevant? Tutorials, side projects or something else? What the best way you have found to become proficient working with new languages/frameworks/etc.

Todd Motto's photo

Founder, Ultimate Angular.

Howdy Jay! This is honestly the toughest part of what I do. Some days I think about giving up for a week or so, and other days I wonder why I have those thoughts at times :D

With anything, it's all about persistence. Persistence mixed with context switching. I couldn't build X Project for 300 days straight. However, I could build X Project for 3 days, 2 days Z Project and so forth. Keeps the mind sharp, and when you "relax" a little from a project (for me at least) I can come back to what I was working on with a fresher perspective to tackle what I need to do.

For me, I gather a lot of information online, run through docs, open source projects, look at best practices, architectural patterns and how APIs fit into the equation. I guess the best way to sum it up:

Instead of just "using an API", find out why it exists and it's purpose in the big picture. That helps answer most questions, and the coding can begin :D

Anant Kumar's photo

What advice would you give to 16 yrs old Todd Motto today? What are a few things you wished you knew when you started programming?

Todd Motto's photo

Founder, Ultimate Angular.

"Invent Angular 2 before Google does!"

On a serious note, one of the biggest things for me learning JavaScript was lack of knowing what was really out there. So many different roles, jobs, directions you could take on the web. I've always been really passionate about design and web, so knowing what was possible back then would've helped fast forward a few years I think :)

Things I wish I knew... I think the most important one that's taken my skills to new levels is understanding and implementing design patterns. We can all write a "for" loop, but again writing it as part of a bigger program that does more powerful things is something that is tough when you're brand new to patterns and best practice ways to attempt things.

Thanks for the great question (was a tough one)!

Gasten Sauzande's photo

Hey Todd. What are some of the habits you think have helped you tremendously to become a better developer? Was it a few big things or a combination of small ones? Thanks

Todd Motto's photo

Founder, Ultimate Angular.

I think sleeping about 3-5 hours a night for the first few years helped learn things fast, well and enabled me to jump a few jobs to higher up positions quite fast. Not that I recommend staying up til 6am everynight... Just Monday-Saturday ;)... Sleep is important, and knowing when to switch off is also important. And you don't need to lose sleep to get better at something. A few hours dedicated to something a day goes a very long way. Some days I don't even code of an evening, but sit reading source code, documentation and stack overflow posts to compose ideas/images in my head of what the tools I'm using do - and how I can use them in more powerful ways. I've learned that you can't paint the Mona Lisa in a day, even though sometimes we think we can xD take it slow, steady and one step at a time. Just be persistent, reach out to others that you trust and can help you! A great circle of friends/contacts is really valuable.

Richard Onsman's photo

Who are some developers on the Internet you admire? Who was your first DEV hero?

Todd Motto's photo

Founder, Ultimate Angular.

Who's first dev hero wasn't Mr Paul Irish? xD

Paul inspired me so much (and still does) when I first started and gave me the motivation to start working on open source things and blogging!

Other developers that inspire me, far too many to honestly list! I can't leave without mentioning the infamous Ken Wheeler though.

Richard Onsman's photo

What's next after Ultimate Angular? What are some of the projects you are currently working on?

Todd Motto's photo

Founder, Ultimate Angular.

I'm working on a small side project right now, soon to be announced publicly. It's not a deviation from Ultimate Angular, more an extension to my vision of things I want to provide for developers and teams. Excited to see how it goes :D

Kashish Grover's photo

Hi Todd, thanks for the AMA!

What are some guidelines you have followed through the years which helped you be a better developer?

Also, how often do you optimize and refactor code? I have come across some articles which point out the rules of optimization to be as follows:

1. Don’t

2. Don’t yet

3. Profile before optimizing

What do you think about these?

Todd Motto's photo

Founder, Ultimate Angular.

Keeping a great circle of folks on twitter in view, keeping up with prominently awesome companies, blog posts and much more!

As you learn to write better (faster, if you like) code, you begin to start to factor that into the daily dev tasks. Just don't go overboard with refactoring/reshaping all the time. After a while you're able to focus more on a bigger picture before diving into the code, and messing about with refactoring etc.

Mark's photo

Do you use webpack with angular? if yes, how do you enable modularity in your angular applications using webpack? If not how do you enable modularity in your angular applications?

Todd Motto's photo

Founder, Ultimate Angular.

Yep I use webpack (non-CLI) with Angular, it's a pretty small setup to be fair, a few funky features like the AoT loader to support lazy loading. I know you're on the Ultimate Angular platform, and my "real world" projects are built with a 95% similar setup to the courses :)

Mark McCracken's photo

Do you have a favourite hosting platform and why?

Todd Motto's photo

Founder, Ultimate Angular.

Google App Engine is cool, I also love Heroku.

Exequiel Ceasar Navarrete's photo

Todd, do you have any thoughts on how to implement a plugin architecture in Angular similar to Wordpress? The scenario is that you can upload a plugin and the angular will automatically add a functionality to the angular app similar to Wordpress does?

Todd Motto's photo

Founder, Ultimate Angular.

Packaged modules sounds like a good solution!

Mark McCracken's photo

Would you recommend other people get into teaching online tutorials? How does someone go about doing that, and how much knowledge & experience do you need to have before you're well enough qualified to make tutorials on a given matter?

Todd Motto's photo

Founder, Ultimate Angular.

Yes, yes and yes. The only knowledge you need is the things you already know. I always say to people something like: "For every thing you know, there's many more people out there that don't know". I use that as a little motivator to post different kinds of posts (aimed for beginners/med/advanced etc). Setting up a blog of any kind has never been easier, a few clicks and you're done. No one needs a qualification to have a voice.

Mark McCracken's photo

favourite database and why?

Stephen R. Smith's photo

How much of your social circle is made up of software devs? Is your lovely and talented interested in what you do and can you talk about it off hours, or do you turn off the code-mind when you're on social time? How important do you find real life interaction with coders in keeping you motivated and current, or can you get what you need online?

Todd Motto's photo

Founder, Ultimate Angular.

It's quite a tough one to be super focused during "the day", and then know I've still got at least (for example) 5 days more on the same challenge. When I go do other things, my brain tries to tick away thinking about the problems to solve in the background, which can lead to a vacant stare down the pub.

My fiance Rachael is always sooo supportive, she loves what I do. Some days I make her sit in front of my whiteboard and I draw architecture diagrams xD she's a personal trainer so isn't into tech as much as me. But she could probably give a good conference talk on components and observables now!!

With regards to other developers, I mainly see them at conferences. I've only a few friends locally that code, and when we meet we don't really talk code at all. I think that's a good thing though. I live in the middle of nowhere in the south west of England... So devs aren't densely populating the area xD all of my knowledge I've worked out for myself, and online.

Mark McCracken's photo

can you also write awesome java/python/other-common-language or mostly js/html/css?

Todd Motto's photo

Founder, Ultimate Angular.

I used to write PHP but you'll never find it on my resume. Seriously though, with Node it's made it far easier to adopt backend technologies without diving into other languages. For some reason I've always wanted to learn Python, it just looks cool.

Mark McCracken's photo

Do you think you'll ever go back to working for companies or consulting? Or will you keep teaching for the foreseeable future? Do you worry that you might become out of touch, or are you just a boss?

Todd Motto's photo

Founder, Ultimate Angular.

Hopefully keep following the dream I have to bring the best training to every developer ! :D I worry about too many things, however I'm slowly learning not to worry about those things as in reality they're not even on the horizon.

Mark McCracken's photo

Are there any areas of javascript that you avoid because you find them complicated or easy to make mistakes with?

Todd Motto's photo

Founder, Ultimate Angular.

Not that I know of, but I also know there's still always a lot to learn.

Mark McCracken's photo

When using node, do you go for LTS version or new features version and why?

Todd Motto's photo

Founder, Ultimate Angular.

I run on the stable version yep :) I'd rather the bugs be my code not theirs :D!

Shaffiullah G's photo

Your tutorials, blog posts, courses are all great. Why stop with Angular. if you produce contents on Node js , that would be awesome.

Todd Motto's photo

Founder, Ultimate Angular.

Thanks for the kind words ! :) It's something I've been thinking about for 2018 - bring back the MEAN stack!

Sami Ali Delgado's photo

After your courses in angularjs and angular, could I consider myself ready to consider myself a junior angular developer, to face projects that includes angularjs/angular?.

Do I need long months to start being an angular developer?.

Thanks mate

Todd Motto's photo

Founder, Ultimate Angular.

The courses I build for Ultimate Angular are intended to get you into a job, but also way past it. If you're new to the development landscape then a few years of experience under your belt goes a long way, but it's up to you how fast you climb the ladder :) I'm confident that the UA course curriculum can get you to the top.

Remco Zwartepoorte's photo

Can you detail your current stack that runs the Ultimate Angular training platform?

Todd Motto's photo

Founder, Ultimate Angular.

Copied from a similar comment:

We recently moved the frontend over to a static site generator with a few hooks.

At the minute I'm building out the platform with Node + TypeScript + MongoDB, Angular and ngrx.

Mark McCracken's photo

How big of an initial bundle payload is too big for an application in your opinion?

Todd Motto's photo

Founder, Ultimate Angular.

800kb might be creeping. Depends on caching/CDN/other strategies for delivery you have.

Alex's photo

Hey again, Todd,

what was your biggest failure and how did you deal with it ?

Todd Motto's photo

Founder, Ultimate Angular.

When I was about 20 I had a job interview for a front-end dev position, I started taking their test and they asked me to write out an HTML form with some inputs/buttons and form actions on.

I had no idea how to write a form.

How I dealt with it: The interviewer left the room, I googled "HTML forms" on my phone and miserably failed the interview.

What happened next: I mastered HTML forms :D

Mark McCracken's photo

Do you ever contribute directly to angular? How would you recommend someone to get started if they were interested? How much do they need to know?

Todd Motto's photo

Founder, Ultimate Angular.

I haven't beyond one PR I did about 2 years ago, it was never merged xD I'd recommend tweeting/speaking to a core team member on getting setup and some good guidelines on contributing :)

Noah Rodenbeek's photo

Sup, Todd. Huge fan, thanks for doing this and for all the contributions to the ngCommunity. Seriously, devs like you that throw free knowledge out into the universe are the reason most of us are able to fake our way into this career in the first place, so thank you.

Question: How do you stay so driven and focused? In JS framework land, the upgrades are constant and coming faster than ever, keeping up is a constant source of fatigue and burnout Medium articles, but you're always on the ball with updated content and lessons and projects. Do you ever have a hard time getting geared up? Are there certain things you research or projects you dive into to get motivated?

Todd Motto's photo

Founder, Ultimate Angular.

Sup man! Thanks for dropping by :)! And for the kind words. Honestly, I just love sharing things I know and writing about them also puts me in the hot seat to make sure I actually know something (to an extent) before publishing a blog post. I only started blogging to stop my old-old-old team where I used to work asking me questions all the time xD I'd just send them a link instead and answer any further q's. Focus and drive: for me this one is like the ocean. One day it's rough, the next it's smooth sailing. I don't think it's good to "force it" and spend a lot of time on non-code tasks when I'm not feeling focused or driven. I think the main thing for any lack of focus/drive is not knowing something, and I'm a horrible learner at times. But I persist, things click, and I keep paddling through the seas ! :D I started my career as a designer, so thankfully I have some design skills for when I'm feeling gloomy about code at times, so I take a break, design some cool UI, and then come back and code it :D Another thing I do is not really pay a huge amount of attention to all the new things flying around the twittersphere, you could sit for days wondering what you're even doing. Stay focused on your stuff, branch out where needed.

Kelvin's photo

What's your favourite feature in Angular? And do you miss anything from AngularJS not present in Angular?

Todd Motto's photo

Founder, Ultimate Angular.

Oh man, tough one. Anything with Observables! I'm kinda obsessed with the reactive forms lib, let's go with that. As for features, who doesn't miss $scope?

jalpesh vadgama's photo

HI Todd,

I like Angular 4 and used in a couple of projects. The only concern I was having is the size of the bundle. In my project, it's around 5 Mb including vendor script and custom scripts.

Compare it with other frameworks like react and vue it's not even half of it. Don't you think bundling will create a problem in countries like India where in some parts still high-speed internet is not there?

Todd Motto's photo

Founder, Ultimate Angular.

It sounds like you could be running non-AoT code? Typical dev builds are 2MB+, and stripped to about 70KB once AoT'd (excluding your code). Code splitting and lazy loading will go a long way: https://toddmotto.com/lazy-loading-angular-code-splitting-webpack

Mark McCracken's photo

What's your opinion on using frameworks like angular material for angular components?

Bindu Priya's photo

Hi Todd, what is your opinion on micro Frontends, considering microservices pattern at services side

Dave's photo

Would you rather fight one horse-sized duck, or a hundred duck-sized horses?

Todd Motto's photo

Founder, Ultimate Angular.

Gotta be the horse sized duck...

Mark McCracken's photo

What was your first pull request? (as a software developer, not teenager!)

Todd Motto's photo

Founder, Ultimate Angular.

Honestly can't remember, I haven't done a whole heap of contributions to other projects besides my own that I release - was probably a "fix: readme typo"

Chris Bernat's photo

Hello there, Todd!

I hope it's not late to ask a question and so... How do you prepare yourself for a talk at a conference? Are you using a script or just some core pinpoints you want to cover?

Also, what are the very best ways to gain some publicity these days in your opinion?

Thanks!

Mark McCracken's photo

You seem pretty hard working and a little inspirational to other mere mortals who struggle with angular day to day. Is there someone you look up to who is even more awesome?

Todd Motto's photo

Founder, Ultimate Angular.

I look up to all the folks that support and inspire what I'm doing :) !

Mark McCracken's photo

Do you ever work on new apps and ideas just for fun? Or do you have a social life?

Todd Motto's photo

Founder, Ultimate Angular.

All the time :D yes to both.

Mark McCracken's photo

Please rank your top 5 breakfast cereals

Todd Motto's photo

Founder, Ultimate Angular.

I don't eat breakfast, ever.

Mark McCracken's photo

What sites/blogs/articles do you check at least once a week?

Mark's photo

what kinda programmable architecture, language etc. is ultimateangular.com made with?

Todd Motto's photo

Founder, Ultimate Angular.

We recently moved the frontend over to a static site generator with a few hooks.

At the minute I'm building out the platform with Node + TypeScript + MongoDB, Angular and ngrx.

Ashwin D Kini's photo

What are 3-5 things you like about the Angular framework (from both: the new and/or the previous versions)?

Priya Ranjan Dubey's photo

First of all, thank you for Hashnode AMA🙂

my question, what you do when your code doesn't work😐? How much time you invested when you're just started to code?🤔 also on weekends, do you chill out with friends and family or began coding as usual 😜?

Todd Motto's photo

Founder, Ultimate Angular.

Google error messages and pray someone's written a Stack Overflow post about it haha :D I spent hundreds of hours a month coding/learning when I first started out. When you learn more things, you have to sometimes retrace steps for other things to click, and you can keep growing from there. Weekends are sometimes a mix of coding, keeping the business ticking and some "long walks on the beach".

Mark McCracken's photo

What is the latest you've ever stayed up on a programming session and night, and what were you working on that was so interesting?

Vishal Isharani's photo

hi Todd, what you think about typescript ? i mean one day .js will completely replaced by .ts

Todd Motto's photo

Founder, Ultimate Angular.

I love TypeScript, and after a few weeks of using it really wondered how I worked without it. I think there's some development around "types" in JS, who knows when they'll be here.

Rafał Brzoska's photo

Hi Todd! Thank to Your courses(all of them) , your talks and motivation i am now Angular Trainer in my company (about 500 devs). During learning other people and helping them with their problems in angular I've learned more than evr. Could you confirm that you had the same experience? :)

Mark McCracken's photo

Do you ever get in an argument with someone stubborn and just end it with "Well I'm a google developer expert so I win"? If so, have you tried it with your Fiance?

Todd Motto's photo

Founder, Ultimate Angular.

I avoid digital confrontation ;) But I wouldn't say that either ha.

Simon Jaffey's photo

Hi Todd, What was your first Git commit? Please share the experience. 🙂

Todd Motto's photo

Founder, Ultimate Angular.

It was for my old "HTML5 Blank" WordPress project. It was basically a blank boilerplate with HTML5 setup for Wordpress projects, a few days after Adobe tweeted it, followed by Smashing Magazine and many others - it got me wanting to do much more! :)

Mark McCracken's photo

A lot of people think of angular versions 2, 4, 5 ... as the second generation of the angular platform. Do you think in 5/6 years we might have a 3rd generation, where the platform gets another major re-write? If so, where would you speculate the web might be heading towards?

Mark McCracken's photo

Are you ever going to change that image of you with the TWF background? It seems like you've been 'a 26 year old front-end engineer' for about 3 years now

Todd Motto's photo

Founder, Ultimate Angular.

Maybe, I've been debating it recently, but I've not got a decent up to date pic. was only last year! I was still 26 ;)... 27 in a few weeks...

Mark McCracken's photo

Do you know how to do a git rebase? Or do you just delete the repo and start again?

Mark McCracken's photo

Some people when comparing vue/react/angular have said that angular is over-engineered and complicated, and lacks clear documentation comparatively. Do you agree with this at all? Is this shortcoming keeping you in a job?

Todd Motto's photo

Founder, Ultimate Angular.

Taking a car apart is complicated if you don't know how!

CHOUAIAR Mohamed larbi's photo

Hi Todd, Do you think that Polymer can be one of the front end technologies next to the frameworks like Angular, Vue ...?

Mark's photo

what kinda build tools do you use?