27 February, 2021

One particular movie breaks Lucas Reublock’s expectations about the coding life – a programmer hacking secret vaults and hiding in an elevator shaft. Lucas starts working as a Flash Developer, but after the sad end of the technology, he quickly realizes that he may not have correctly predicted the development of the Internet … Today he defines himself as a software craftsman who often uses Angular, even attending a love song on his favorite framework.

What’s your story: How did you start programming? What was the difference between your expectations versus reality about your work as a developer?

My first experience or my first exposure to programming was many – many – many years ago when I watched a hacker movie called “Sneakers,” and I thought that was the coolest possible thing that you could do with computers or anything high-tech. And as a result, I decided I wanted to go to electronics school because I imagined that I’d be in an elevator shaft fiddling with some circuit boards and doing something cool. So, I graduated when I was 19 with a degree in low voltage electronics, I moved back home and started in the airline industry, where I was surrounded by a bunch of middle-aged men that had pretty much topped out in their industry. They simply could not wait for the weekend to go out on their boat and drink beer. That was not the image or the dream that I had for my life. I  didn’t want to spend the rest of my life sitting with a soldering iron and attaching resistors onto these breadboards. So, I started to look at computers, more specifically, I went and passed some certifications, and I realized that hardware was not my thing and I decided that I wanted to try software. This was in 2001, and I moved to Phoenix, Arizona. I went to a technical college, and I discovered Macromedia Flash at the time. I remember the first time I did an incredibly simple animation, but it was like a beam of light came down from the ceiling, and I realized if I could create something like this in less than an hour, I can only imagine what I can do if I got serious about it. I think it was at that moment that I decided that I really wanted to to be a programmer; more specifically, I wanted to build things that people could touch and feel. So, that’s where I started programming with Macromedia Flash in 2001.

Now expectation versus reality is that I have certainly not been in an elevator shaft breaking into secret vaults. In fact, I think the most amazing thing about programming is really about your ability to sit in one place and do one thing for as long as it takes. So, in my opinion, that is what makes a great developer, their ability to sit and focus and solve a problem. There are times where I start at five in the morning, and I blink, and my day is gone by, and it’s five or six in the evening. But fortunately for me, I love it very much, and it’s almost like time stands still when I am in the zone.

On your website, “One Hungry Mind,” you share that you “had to go back to the drawing board and reevaluate what and who you are.” How do you define yourself and your purpose in the world right now?

Well, a little backstory on that is that for the longest time when somebody would ask me what I do, I would tell them I’m a Flash developer.

The problem is that I had based my entire identity around a single technology, once the Flash platform started to transition I realized that it had a very limited future and I had to stop and evaluate who and what I was.

I realized that I didn’t do Flash and I just happened to love building animations and 3D immersive websites in it. I didn’t love Flash because of those things. I loved doing animations and creating 3D animated websites, and Flash just happened to be the tool that I used. It was at that time that I realized I would never allow myself to have my identity baked into a single technology, especially one that was controlled by a single organization. I think that’s an excellent way to limit your career by placing it in the hands of another company.

So, even though I think I’m most known for my work in Angular,  I describe myself as somebody who is deeply committed to software craftsmanship, and to helping companies build the best possible software, and Angular is just a piece in the puzzle. More often than not,  I will go to an organization to help them with Angular, and I realize that they have challenges upstream and downstream. For example, when I ask them what their agile practices are, I realize those are not even in place, which then makes it very hard to deliver great software applications. Then I’ll ask them how they run their testing, and I realize that their quality control processes are deficient. So, a lot of times Angular is just a tool that fits into a bigger picture of how I help companies build the best possible software. And so, when somebody asks me what my purpose is and how I define myself, I now say that I am a software craftsman and am committed to helping companies build the best possible software, and Angular happens to be a tool that fits into that larger picture.

 

 

What projects are you working on right now, and what technologies are you using?

I’m doing a lot of enterprise development especially in the healthcare space. I’m also working on a lot of start-up projects, a lot of proof of concepts which is probably my favorite thing to do. My favorite stack right now is Angular and NestJS which are very similar. I believe that NestJS is a very well-thought-out framework. I’m also very fond of Graph QL, I love Docker, and I love the cloud. So, that is all part of a very typical stack, the common thread here is that I’m always betting on JavaScript. I think that there are other great technologies, but the surface area for JavaScript and Typescript is so large that you can build some really compelling applications and never have to leave that language. So, for me, I always bet on JavaScript, and it has worked out very well for me. So, that’s why I’m doing a lot of full-stack JavaScript using Angular Nest and putting it unto to the cloud.

What’s the best part of leading a workshop?

I have to say that workshops are probably one of my favorite things to do as a programmer since I have the opportunity to interact with people from all over the world. I’ve done a lot of in-person workshops, and I’ve done a lot of virtual workshops and had the opportunity meet a lot of brilliant people who we stay in contact to this day. And it’s amazing how many friendships have formed from being in a workshop and connecting with people who are just as smart and eager to learn and are committed and passionate about being the best programmers they can be. To me, that’s the absolute best, when you meet a fellow developer that’s really engaged with the technology, are very curious, and want to be the best.

I am continually learning new things as I’m doing workshops maybe someone will ask me a question in a certain way and I’m able to articulate it in a way that I had never thought of before. When I don’t know the answer, I’m not afraid to say that. I believe it is crucial to lead a workshop with humility and say “hey, I hadn’t thought about that” or “I don’t know the answer” and then being able to go and look for the answer. So, a lot of times I’ll get a question that I don’t know the answer to, and I’ll say, “hey let’s press pause on that and then maybe during the break, or over lunch, we’ll look it up and get the answer.”

So, it’s always really cool to hang out with people that are just as passionate about technology and to learn new things together.

You are a Google developer expert for Angular and Firebase what are the benefits, and how has your work changed since becoming a GDE?

So, on the one hand, I think Google is looking for people that are already doing Google Developer Expert type activities. So, it’s just a very natural transition for me to become a Google Developer Expert because I didn’t have to change anything as I was already doing the things that they were looking for. The benefits are that it certainly helps when you’re talking to a client and then you can say that you’re a Google Developer Expert. For me, the most significant benefit is being able to go and spend time with other GDEs, and it’s that network of the highest caliber of developers that’s really – really compelling.

You love doing CrossFit, and you also love creativity: What activities help you stay creative, and how has all of this helped you against burnout?

So, I believe that everything and every activity is related in the sense of Cross-Domain Pollination where you can take lessons from one domain, let’s say CrossFit or piano or art, and find these timeless principles and then apply it to something else. So, a lot of times you can get so close to the code, and physically, you can become fatigued, and it’s challenging to be your absolute best mentally. So, I believe the best thing you can do is to take a break from deep, intense analytical activities and do something creative instead.

Fortunately for me, my CrossFit gym is across the street so many times I’ll get up, walk across the street and work out. I also have an electric piano at the office, and I’ll sit and spend 25-30 minutes playing something to decompress. I’m also quite fond of Legos, especially the Lego Architecture set, and so sometimes I’ll get out Legos, and I’ll play with Legos and try to turn my mind off. What’s interesting is that the problems I’m struggling with never quite go away; instead, they sit in the background. It’s not uncommon at all for me to be working out or playing with Legos and all of a sudden, the answer comes to me. So, I think it’s essential to be able to disengage yourself, let your brain figure it out and at the same time give your mind a break and allow yourself to engage in another activity physically.

I think exercise is incredibly important against burnout and there’s a lot of science around the biological effects that exercise has on you. So, if you’re an engineer, and you’re programming long hours, I highly recommend that you find a way to get a 5/20-minute workout in every day.

Can you tell us more about the story on the “Angular love song”?

So, this was probably one of the most fun talks that I ever did. It took an incredibly long time to do it though. Getting a slot on the main stage at ngConf  is very-very-very difficult, but I have a good relationship with the organizers, and I pitched this idea of writing a song around Angular. So, I had my best friend Roger, who also was on the talk, do a quick demo, and I submitted the demo with my talk idea [the mischief-maker you can Google it] . So after we got secured a spot on the main stage, Roger and I sat down, wrote it, recorded it, and practiced it. And at the same time, I demonstrated the ability to hook into a MIDI controller and visualize what was happening based entirely on observable streams. Not only that, the entire slide deck was built in Electron. It was quite possibly the most technical talk that I have ever done.

So, I think people that were really paying attention even though it was incredibly entertaining, Roger is a fantastic performer, realized that it was a really technical talk that we packaged into this eight-minute presentation. So, what’s funny is that it was an eight-minute talk and between Roger and I, it took us well over a hundred and forty hours to put that together. So, it was a considerable investment. I was incredibly proud of it. I have spoken since then, but that was, in my opinion, the pinnacle of me pursuing opportunities to talk on the main stage because it was just such a monumental task to bring that all together.

What’s the best cheat you use and recommend when writing code?

The best cheat that I recommend is that you leverage the collective intelligence of the development community, that community is incredibly generous. When you engage with the development community, you find that there are so many problems that have been solved outside of your immediate question that if you can pull that information in it’s very easy to leverage the hard work of other developers. For instance, Angular, NGRAQs, and all this open-source software, hours and hours went into these frameworks, and we get to use them for free. What I recommend is one leverage the community, be a friend of the community, and be helpful.

I’ve never donated my time to the community to help other developers and not have had that come back to me in a big way.

So, I would say there’s a very technical aspect to writing code, but I believe the biggest thing that you can do is start to build your network and focus on your soft skills and surround yourself with the best possible developers. So, this goes back to even being a GDE, by being a GDE and hanging out with other GDE’s it has elevated my ability to be the best possible programmer I can be. So, I would say if we are the aggregate of the five to seven people that we surround ourselves with, let’s surround ourselves with the best possible people, and it’s incredible how good you will become through the company that you keep.

Tags: , , , , , , , , , , , , , , , , , ,