Now Loading ...
-
The End of March, Looking Forward to April
In my last post, I talked about maybe trying out tutorial video production—and honestly, I’m having a nice time with it. Like anything new, though, there have been plenty of challenges.
What’s Been Happening
It’s the end of March, and while I didn’t land that sales job, I did pick up a temporary gig canvassing for a local political activism group. I’m actually looking forward to it—it pays well, and I think it’ll be a good experience overall. Definitely going to need some sunscreen and decent clothes, though. Talking to strangers and getting signatures is the game plan, with a target of 60 signatures and a 65% validity rate. From what I hear, success just depends on being in the right places and talking to as many people as possible.
I joked with my barber recently about it—how I’ve definitely told signature collectors to “buzz off” before, and now I’m the one who might get told to buzz off. Karma, huh? We laughed about it, but it’s a good reminder to stay humble and give it my best.
Video Production Adventures
On top of canvassing, I’ve started spinning up the ol’ video production machine again. You’d think I’d be more seasoned by now, given how often I’ve kept my setup ready “just in case.” But getting back into it reminded me just how tricky the whole pipeline can be—especially on Linux.
I’m using OBS (pretty much the go-to for screen recording), but on Linux it didn’t come bundled with some of the plugins I needed. And while Kdenlive is available for editing, it’s not very GPU-friendly or particularly robust. DaVinci Resolve, on the other hand, is a powerhouse—but getting it to run on Linux is a whole journey on its own.
OBS, Plugins, and File Types
One lesson learned: Advanced Scene Switcher. It’s an OBS plugin that automatically switches scenes based on the window you’re focused on. Super useful when you’re bouncing between your code editor and browser mid-recording. I didn’t have it for my Quantum Russian Roulette GenServer video and without it, it made editing harder than it needed to be.
Installing it wasn’t super straightforward—there aren’t great Linux-specific guides for OBS plugins. But the short version: find your OBS plugins folder, drag the .so file in, and boom.
Now, let’s talk file types—because DaVinci Resolve is very particular. The file extension (like .mp4 or .mov) is just a container; the real concern is the codec. Resolve on Linux doesn’t play well with h264/h265. Instead, I had to use ffmpeg to re-encode files into something Resolve would accept—specifically, .mov files using MPEG-4 part 2 video and PCM 24-bit audio. A weird combo, but it worked.
Installing DaVinci Resolve on Linux
Okay. This one was wild.
First off, I’m on Ubuntu—which is oddly not officially supported by DaVinci Resolve. They support RedHat and RockyLinux instead. So right out of the gate, it was a challenge.
I’m also using an AMD GPU, and Resolve heavily favors Nvidia. I had to dig through logs and tinker with environment variables before I finally figured out the magic incantation:
RUSTICL_ENABLE=1 /opt/resolve/bin/resolve
That RUSTICL_ENABLE variable got Resolve to use a better OpenCL implementation (apparently it works better than AMD’s native one on Linux). No guide mentioned this—I just pieced it together through experimentation and log-surfing.
Once I did get it running, editing worked decently. But rendering? Ugh. It barely used the GPU. Rendering at 14 FPS on Linux vs. up to 240 FPS on Windows. My solution: do everything in Linux—record, edit, prep—then boot into Windows just to render. Frustrating, but it works.
Making the Video Happen
This was the hardest part. All the tech challenges led up to finally producing the GenServer video. And when I realized I was at risk of never finishing it, I told myself: “It’s better to submit any homework than none at all.”
Was it perfect? No. Could I have polished it more? Probably. But when a video’s an hour long, reviewing it gets time-consuming, and you can only speed it up so much before the speech becomes unintelligible.
There were also editing quirks—like DaVinci’s “ripple editing,” which sometimes caused weird duplicates or jump cuts. Plus, scripting and recording code explanations live? That’s hard. No wonder so many people split tutorials into parts. I eventually shifted to chunking: code a part, record a part, repeat.
That approach really helped. Having a working project already made it easier to stay on track during the tutorial. It also gave me more chances to internalize what I was teaching—kind of like learning through repetition. I now firmly believe: pause the recorder when you’re unsure, figure things out, then come back when you’re ready.
Looking Ahead to April
In April, my goals are pretty simple:
Make it through the canvassing gig—hopefully in one piece.
Keep iterating on this video production pipeline.
Build consistency and quality over time.
Big takeaways from March:
Setting up a Linux-to-Windows workflow is tricky, but doable.
Talking through code is a skill. The more I practice, the better I get at communicating what I’m doing.
Ship something. Done is better than perfect—especially early on.
And honestly? I’m excited. People have told me they see value in these tutorials, and I believe that too. I’d hate to let all this knowledge go to waste. Sure, I might explore other paths—but I need to share what I’ve learned before I move on.
Also, a highlight from today:
I had an interview with Kuali! It went really well, and there was a live coding section I actually felt confident in. I credit that to the practice I’ve gotten recording videos and explaining code aloud. Fingers crossed I move to the next round—but if not, I’m still in a good spot. I took the canvassing job because I wanted to, not because I had to.
I got to also mention, the interviewer had told me at the end not to give up. He can see that I am an engineer and maybe my skill might not be at a particular place, but it’s there. This fills me with determination and inspiration. Thank you interviewer! You know who you are if you’re reading this. Thank you!
If things don’t pan out, I’m open to exploring trades like HVAC. Sales sounded interesting, but I’m not sure it’s for me. Canvassing is a great, low-stakes way to test the waters.
The weather’s been beautiful—green grass, blue skies, warm sun. Feels like the start of something. And speaking of starts—I owe a big shoutout to Jason Brown from the UK. He helped me polish my resume, and I’m certain his advice helped land me the Kuali interview. Jason knows the Elixir hiring space cold. If this leads to a job, he’s getting a big thank-you.
I know I might be punching above my weight right now. But hey—no risk, no reward. You miss 100% of the shots you don’t take. Let’s see what April brings.
-
Looking Forward on 2025
I think there are things to hopeful about for 2025
Elixir and Gaming
Well, although I have entered into 2025 being unemployed again, there is definitely some stuff to be looking forward to.
For one thing, I’m kind of a free agent at the moment. I’ve been able to spend my time however I see fit which has been great. This has given me an opportunity to be able to spend some time studying up on game development more and to work on a presentation featuring a Poker application I had been working on in Elixir.
I spent all of this time learning Elixir and I’m coming out of my last job feeling like switching gears into something different. Hence, been looking into game development. Not to completely abandon Elixir, I’ve been looking into PhoenixSharp which looks like it would be interesting because it provides a client to Phoenix Channels from Unity.
This is interesting because I believe with it I could be able to send information about a Unity game to Elixir and possibly use Elixir as a game server. Where I could use it to hold information about players moving around a world and be able to distribute that information back to all of the other players. It’s worth a shot to see if it’s even feasible.
Community Building
I’ve recently began helping someone in the Elixir community with an ERP project they’re working on. This person is an amazing programmer and can program incredibly quickly. They’ve been writing since they were 11 or 12 and at that age for me, I was still copying and pasting HTML.
I don’t think I’m too much of a help to them. Although I want to be helpful and perhaps at times I’ve been helpful, I’ve not been as helpful as I wonder I could be. I’ve had a difficult time with this because I don’t mind talking with this person about their project, but I’m not sure about putting time writing code into it myself because I don’t understand it well. This guy would get through something much faster than myself.
But I think I can find other ways to be helpful.
Life and Living
I think there is much more to life than practing leetcode all day for a programming job. I think what I would like for myself is to get some kind of job where I’m happy, I’m making money consistently, I can be there for a couple of years, and pay off my student loan debt.
However, it’s possible that a job alone is not the answer and I’m going to need to find other ways of getting income for myself. I had watched a video today from a woman who had talked about how she had got herself 7 income streams but it took time for her to do this. She had done some of this by putting together videos for her YouTube channel talking about language learning and over time, developed an audience, put together courses, and makes some extra money. I wonder if I’d be capable of doing the same.
I’m the type of person who jumps around from idea to idea and don’t tend to stick to anything long so whatever I decide, I really need to just dedicate myself to it wholely. However, there is nothing that I find so enjoyable that I would want to devote myself wholely too it, which might be part of my problem.
Well, I’m going to take advantage of my ability to go into anything and see if I might do well in sales. I might do well in all kinds of other things and speccing into IT and computers, probably just was not the right decision for me. At this point, all I can do is share what I have learned and that’s one way I can keep what I learned from going to waste.
-
Looking Back on my 2024 Job
Just some thoughts on the start of this year and reviewing the last year.
The Year So Far
Well, today I am unemployed again. I’ve been unemployed again since January of 2025. This time I had done a lot better because I had managed to save a little bit of money and I had learned so much about being an engineer while at my last employer.
For the most part, I had always done development by myself. Which honestly, being the solo developer with no one reviewing your code really sucks. You’re unable to address bad habits that other more senior developers would notice quite quickly. While I was at my last job, I found myself submitting PRs that usually went through tons of revisions before it was finally accepted and merged. Each PR required tests and my contemporaries were great at helping define tests. Overall, I think learning testing and this kind of code review was good.
I had also learned some other things about running a system well. There was telemetry built into the application that would send back to another system metrics about how the system was behaving. We could define in a module a span function that would create a span log in the system with whatever metadata we could think to put into it. I appreciated this a ton when debugging something.
I think where I struggled most while working here was understanding fine details for a PR. It feels like writing English but people having different ways of constructing those same English sentences. For example, where I might have piped a few |> Map.get I had learned from my then boss that I could use a get_in and use much less pipes.
I remember one of my last tasks was to put together something that would delete the child records of a parent record in our database. I had implemented this using a transaction which would rollback the database deletions if something went wrong. However, my boss was disappointed that I had not implemented it where it would just delete things and the transaction was not necessary. The one thing that was important was that the parent object be deleted last.
I think it was carrying out small details like this where I had struggled. The boss had thought of one thing when he defined the tickets he wanted. Sometimes they were quite short, but that’s fine. I’d just ask for more detail later. But when getting the final implementation down, the way I had did things just never seemed to be quite right. I only had a few PRs where there were not much needed to be changed.
I’m not entirely sure if this is normal for the industry. I guess if it is, this makes for what I feel like is kind of a shitty industry. Inb4 people tell me to get good, I know.
As I see it though, it is hard to get good without a community and people around you who actually care about your growth. In my life, I’ve only known maybe 1 or 2 people who are actually concerned with seeing my growth and they aren’t family. At work, coworkers are okay with you growing as long as it’s within the same priorities of the business too. I think if you’re growing slow, you’ll get kicked to the curb.
So, since it’s hard to have a community as a lone developer on their own, I’ve kind of been thinking about putting some serious work into building out a YouTube channel. I’ve been doing all kinds of different things through my life and could teach people all kinds of different things. As it would turn out too, I had put together a video a while ago teaching how to use the GitHub API with Elixir. Since 2021, it’s gained 1000 views which is meager but certainly alright.
I’ll bet I could put together more videos teaching topics on Elixir. I’ll bet they could do decently well. I could probably spent plenty of time talking about other technology topics and have a good time of it. We’ll see. The point though is that I could build some community around videos where I share the value of my knowledge with others and maybe others would share the value of their knowledge with me.
Thoughts On The Elixir Job Market and Software Job Market
This job market sucks.
There are not many jobs in the market and I’ve started to conclude that in order for there to be more jobs in this space, someone must create jobs in the space. I think I should be someone who is making jobs for others to work but I have no capital and nothing that’s solving a problem for anyone.
Because of how bad this market is though, it has me thinking about taking up work in other languages. However, I’ve had one hell of a time interviewing with my next best language, JavaScript.
It feels like the software engineering industry and IT as a whole feels like the most “Dark Souls” of all of the job fields. You need to test into every job. In software engineering the tests are much more straightforward, although one might get some assignment with vague requirements; so a hiring team can reject it later, I’m sure. But even for IT jobs, I’ve been asked a bizzare question about, “I’m asking you to cut a pizza, how would you cut the pizza?” and what this interviewer was looking for was if I’d be wondering if the pizza is for a party or not.
It feels like the requirements for any particular job just aren’t clear and I have started to feel like this field just is not something for me. Despite all of the effort I’ve put in, I don’t think I’m great at recalling information with the accuracy required of passing interviews and surviving in the workplace.
With how the market place has a lack of junior positions and it doesn’t seem there are companies looking to hire people and help them learn and grow, I think I might just try something else. However it’s leaving me feeling like if I were an online game character, I’m maxing into being a super novice.
Lately I’ve been wondering if I’ll do okay with sales. I like talking to people and if I’m selling a product I really believe in, I think I can do well talking about it.
Well anyways, thanks for reading.
Touch background to close