Missed the AMA? You can still connect with Todd Motto and ask questions on their Hashnode profile
Thanks for the great questions and your time everyone! :)
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?
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 :)
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.
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
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
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.
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?
"Invent Angular 2 before Google does!"
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)!
Who are some developers on the Internet you admire? Who was your first DEV hero?
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.
What's next after Ultimate Angular? What are some of the projects you are currently working on?
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?
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:
2. Don’t yet
3. Profile before optimizing
What do you think about these?
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.
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?
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.
can you also write awesome java/python/other-common-language or mostly js/html/css?
Do you have a favourite hosting platform and why?
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?
How big of an initial bundle payload is too big for an application in your opinion?
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?
Hi Todd, what is your opinion on micro Frontends, considering microservices pattern at services side
Hi Todd, Can you answer my question about angular modules and Webpack bundles please here? https://stackoverflow.com/questions/44843509/angular-cli-webpack-lazy-loading-of-dynamically-created-routes
Your tutorials, blog posts, courses are all great. Why stop with Angular. if you produce contents on Node js , that would be awesome.
Can you detail your current stack that runs the Ultimate Angular training platform?
Would you rather fight one horse-sized duck, or a hundred duck-sized horses?
What's your favourite feature in Angular? And do you miss anything from AngularJS not present in Angular?
When using node, do you go for LTS version or new features version and why?
Hey again, Todd,
what was your biggest failure and how did you deal with it ?
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
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?.
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.
What was your first pull request? (as a software developer, not teenager!)
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?
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
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?
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.
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?
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.
What's your opinion on using frameworks like angular material for angular components?
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?
what kinda programmable architecture, language etc. is ultimateangular.com made with?
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?
Favourite Pizza, what restaurant, what toppings?
Hello again, how you make your self updated with latest and greatest projects ?
If you came across an interesting topic that was not angular based or related, but useful, would you be willing to make video tutorials for it? if so, would they go on ultimate angular or somewhere else? And have you had any ideas about this sort of stuff that you've considered?
hi Todd, what you think about typescript ? i mean one day .js will completely replaced by .ts
What wakes you up in the morning, coffee, red bull or cocaine?
What do you do for fun (away from the computer)?
Were you nervous starting your own company? What were the main bumps along the road in getting from idea to where you are now?
favourite toothpaste brand?
Do you ever work on new apps and ideas just for fun? Or do you have a social life?
Hey Todd, huge thanks for UA platform ! Q: what are your thoughts about Web Components ? Is it worth to bet on them ?
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?
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
What do most people not know about you, but you wish they did?
what is the most important thing to learn js
Please rank your top 5 breakfast cereals
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?
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?
Hi Todd, Do you think that Polymer can be one of the front end technologies next to the frameworks like Angular, Vue ...?
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 😜?
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".
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? :)
Hi Tod, as a beginner, I find myself stuck in the tutorial hell. I know the advice is to 'just build something already!' but how exactly do I do that if I don't know how to build it? I tried to learn React recently and while I understand the structure and know how to define components, etc, I do not know how to actually build a React app because I don't know what needs to be done first, second, etc. And since I don't know what to do, I don't know what to search for on google. Do you have an advice for me?
One of the more recent additions to my "I need to work this out" workflow is searching GitHub for packages/APIs I'm using, and see how others are fitting the jigsaw puzzle together :) you can then start to see the architecture patterns and usage. Just take it slow, don't get frustrated (which is a hard part for me), and remember: at some point you will know this, so you're just working towards that goal always. GitHub's been really valuable for searching for inspiration or answers, I'd highly recommend it.
Hey Todd. As a developer who lacks design experience, I tend to use the bootstrap framework to quick-start projects. What would advice would you give to be able to rely less on designers to make custom assets? What tools or concepts would you recommend learning to get started?
For me, I've always tried to rebuild things that others also make. This gives you a whole new skillset and problem solving (with things like the DOM specifically rather than general JS programming). Try it, you'll learn a ton! Start with something really simple, like a dropdown menu. Then grow to an upload drag/drop tool. There are common patterns in each!
What are 3-5 things you like about the Angular framework (from both: the new and/or the previous versions)?
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?
Do you still struggle with errors most days? Or is it easy for you to build whatever you want first time?
Hi Todd Motto, What is the different between Designing and Coding a Design from the front-End developers perspective?
Hi Todd, What was your first Git commit? Please share the experience. 🙂
Do you get involved with DevOps stuff much, like using docker and setting up servers etc? is this something a Full stack developer should be able to do in your opinion?