Let the Kids Play: A young DevFest speaker and a DevFest organizer talk tech
As over 400 community-led
DevFest
events continue to take place around the world, something is becoming clear: kids are taking
over. We’re not kidding. Many young students are taking the stage this season to speak on
topics ranging from machine learning to robotics, and people are loving it.
At the same time, these kids and the
GDG (Google Developers Groups)
community organizers of local DevFests are becoming great friends. We saw this recently at a
DevFest in San Francisco, where Vikram Tiwari, a GDG Lead, and 11-year-old Aaron Ma, the
youngest speaker at the event, had a great conversation on programming.
We wanted to let you in on their conversation, so we asked Vikram to answer a few questions on
coding, and then asked Aaron to respond to his answers. Check out their conversation
below!
What is your favorite language to code in?
Vikram: I would have to say JavaScript - it used to be the language no one
cared about, and then suddenly node.js changed the whole landscape. Nowadays, you can’t escape
js, it’s everywhere from browsers to IoT and now even Machine Learning. The best part about
using js is the flexibility it gives you. For example, it’s easy to make mistakes in js, but
then if you want to prototype quickly, it doesn’t hold you back. And of course, you can’t
forget about the vibrant node.js ecosystem, which is always striving for ease of use and
speed.
Aaron: Come on Vikram! JavaScript is cool, but there’s so much MORE out
there. Like Python - it's clearly superior! 🤓The language is SO easy to use, powerful,
versatile, and has excellent readability and runs everywhere. Tell me, what is there not to
like!? Personally, I love Python’s usability, which means you can use it everywhere, from
websites to machine learning
Do you use any special tricks when you’re programming?
Vikram: I have two favorite tricks. The first is to comment out as much
code as I can to isolate the problem to a specific part of the codebase. The other one is that
I always ask for help. Generally, it involves making a standalone proof-or-error code sample
and submitting it on GitHub or Stack Overflow. This way, I learn not only what was wrong in my
code, but also what was wrong with my intuition about that code/logic.
Aaron: I have two tricks of my own 😎 For me, read-ability is what it’s ALL
about. My first trick is that I like to format my code as much as possible, so everyone else
in my open-source project can read my codebase. Also, if you want to become a true beast at
debugging, comment out unnecessary functions to speed up the output time. This will make you
so much faster. 🏃
How do you practice and grow your
skills?
How do you practice and grow your skills?
Vikram: I like working on open-source
projects that are not mine. This helps me grow as a core developer but also as a communicator.
Often there are concepts and design choices that are common in other languages but don’t come
naturally if you’re frequently working in one language. With open-source, I get to work in
different languages while learning what to do from the best, and at times what not to do
from...well...those who are not the best.
Aaron: Open source is definitely the move! Especially open source
competitions because they’re super exciting, let me see where I need to improve, and let me
test if I’ve mastered a field of study. I also like to contribute or create my own open-source
projects so I can grow as an open-source minded developer. Right now, I am the youngest
contributor to Google’s TensorFlow, so to all the other kids out there reading this...come
join me!
Do you like jumping right into coding or thinking through every line before you
write?
Vikram: I do like to think about the problem beforehand. However, if the
problem has already been distilled down, then I like to get right to execution. In this case,
I generally start with writing a bunch of pseudo functions, mocking the inputs and outputs of
those functions, connecting them together, and then finally writing the actual logic. This
approach generally helps me with context switching in a sense that I can stop working on that
specific problem at any point and pick it back up from the same position when I get back to
it.
Aaron: I like how you think! 😝If someone has already implemented the
problem and packaged it, I would try to get right to the deployment process. But if no one has
implemented the problem, I would first start with writing some pseudocode, and then slowly
convert the pseudocode into actual code that works.
What is your favorite part of the DevFest community?
Vikram: That DevFest is a home for all developers, from all walks
of life, with all kinds of ideas. Yes, this family loves building your tech skills, but it
also loves helping you breakthrough any social barriers you may face. From feeling more
comfortable around people to feeling more confident with your code, this community wants to
help you do it all.
Aaron: We are a DevFamily! ❤️I couldn’t agree more. My favorite
part about DevFest is how this community can inspire. We, as DevFest developers, have the
chance to change how we all think about CS every time we get together. From students like
myself to long time experts, there is such an open and positive exchange of ideas taking place
here - it’s so exciting and always makes me smile. 😊
Want to join a conversation like this one? Respond to the questions yourself with
the #DevFest or find a DevFest near you, at devfest.withgoogle.com.