<![CDATA[Justin Noel]]>https://justinnoel.dev/https://justinnoel.dev/favicon.pngJustin Noelhttps://justinnoel.dev/Ghost 3.42Tue, 17 Mar 2026 07:15:24 GMT60<![CDATA[Disabling Split Console in Firefox Dev Tools]]>https://justinnoel.dev/2025/12/01/disabling-split-console-in-firefox-dev-tools/692cc3107ab1430543bed69fMon, 01 Dec 2025 13:09:09 GMT

When using the Inspector in browser developer tools, I like as much space as possible for displaying elements, styling, and layout. Unfortunately, I frequently accidentally hit the escape key while the dev tools are open. This toggles the console to display below the regular inspector section.

Disabling Split Console in Firefox Dev Tools

Depending on your settings, this may take a good portion of your inspector area. It frustrates me to no end. Sure, I can just press the escape key again to toggle it back off. However, I finally figured out a way to permanently stop this from happening.

  • At the top right corner of dev tools (near the close button), click the three dot menu (ellipsis)
  • Click "Settings"
  • Look for the "Web Console" section, ands disable "Enable Split Console"
Disabling Split Console in Firefox Dev Tools

Tada!  No more wasted space. Unfortunately, this only works in the Firefox-based browsers. I haven't been able to find a way to do this in Chromium-based browsers.

]]>
<![CDATA[Using AI to Research Available Domain Names]]>https://justinnoel.dev/2025/07/12/using-ai-to-research-available-domain-names/687285be7ab1430543bed618Sat, 12 Jul 2025 16:29:27 GMT

We've all been there. You had a great idea for a new service. Vibe coding helped you develop the front end and back end in a few days hours minutes 😜.  

Now you're stuck trying to choose a domain name for it. As we all know, all the good ones are taken, right?

How are you going to find some good domain names for your service? Tell AI all about your amazing idea. Then, let it generate a list of possible domain names for you and see if they're available. Rinse and repeat.

Next step? Fame, instant riches, private jets, and attending weddings with other gazillionaires!

Here's a demo of how to do that.

Transcript from video:

Here's an interesting use case for AI.

Say you're starting a website to help people remember to brush their teeth.

But as we all know, choosing a domain name is the hardest part of creating a new SaaS.

Well, use AI to do it for you.

Tell it what you're going to do and ask to suggest some domain names.

I'm using TypingMind to query OpenAI for this.

You get this nice list of domain names and a question mark next to each one of them.

When you move your mouse over the results, you can see that you can actually check if a domain name is already registered.

If I click here you'll see that BrushBuddy is already registered.

You could contact the broker to buy it or see the WHOIS information on it.

Let's see, mintireminders.com.

This is not taken, so you could register this domain name and use it for your great new service.

FYI, the domain name status is provided by https://instantdomainsearch.com.

There you go. Now you're well on your way to dot com riches!

Photo Credit: https://unsplash.com/photos/a-black-and-white-photo-of-the-word-comm-S7GcgdI7WjQ

]]>
<![CDATA[Quick and Easy Apps Are So Rewarding]]>https://justinnoel.dev/2024/10/18/quick-and-easy-apps/67127b307ab1430543bed4b0Fri, 18 Oct 2024 17:09:47 GMT

In a recent Virtual Coffee chat, I asked,  "What is the favorite software tool/site/thing you've ever created?" A key point to some responses was that sometimes little, quick apps are the most rewarding and impactful.  I shared that 2 of my best "apps" ever essentially only required the user to copy messy data/text from one source, paste it into the application, and then the data on their clipboard was automagically formatted the way they needed it.

tl;dr: Just watch the video below.

While working in the telecom industry, I created one of those apps. First, some background. Amazingly, even in 2006 (and still now), the telecom industry coordinated all activity across the global telecom network by all companies (Carriers) faxing and emailing files (spreadsheets, text, Word documents, etc) to every other company around the world 😳. In this example, Carrier A "owned" a bunch of different ranges of possible E164 mobile phone number ranges.  If you were a customer of Carrier Z that wanted to call or text a customer of Carrier A, Carrier Z had to get an "IR21" from Carrier A and input all these phone number ranges into their SS7 switches (fancy routers). Now, imagine all this occurring between all mobile phone companies across the world 🤯.

In my company, two poor souls had to track down and parse all the IR21 updates that every other mobile phone company distributed. These often changed once or twice per month. Even worse, just about every company had their own non-standard version of an IR21. Most of these were poorly documented and sometimes were received multiple times with no way to tell if one was different from another. It was a disaster. Our two employees were working 60 to 80 hour weeks trying to keep up with this.

One time, I was visiting the office in Florida and chatting with one of the people living this nightmare. He showed me all the hoops they had to go through to handle this diluge of data. I was in shock. As the department's dedicated nerd and hobby developre, I promised to make something for him to solve this by the end of the week.

I spent 2 days with him to learn all the crazy data formats that each Carrier used. Then, I created a relatively simple HTML, CSS, and vanilla JavaScript single file web page that just required them to paste data in, click a few radio options, click some buttons, and get the data in the right format.

At first, I simply emailed the file to the two employees so they could run it locally on their own computer. Later (see below), I added it to our department's server for easier and permanent access. This new tool virtually automated this ridiculously manual process for them. Within a week, they were both only working 40 hour weeks and had time for more important work.

At this time, I was NOT a "professional" developer. My real job at this company was as an "SS7 Translations Engineer". I spent my days adding phone numbers and routes to our company's STPs. I was just a guy that hated tedious, manual tasks and created little apps to automate some of these for myself and others. Once my boss saw all the benefits of thes little tools, I was hired again later after a 9 month sabbatical to do nothing but create automation tools for our department. If you are looking to get your first developer job, maybe try "becoming" a developer in your current role. I've written an article about just converting your existing job into a developer role. See if you can "break into tech via the side door".

Finally, here is the video that demonstrates the original process and the new process.

Photo by Firosnv. Photography on Unsplash

]]>
<![CDATA["Blendposting" Kitchen Scraps]]>https://justinnoel.dev/2024/01/22/blendposting-kitchen-scraps/65aeaa6c7ab1430543bed33eMon, 22 Jan 2024 20:27:34 GMT

UPDATE (November 2025): My blender kept getting worse and worse. I now use a meat grinder to process my kitchen scraps. See below.

Do you get frustrated when you have to throw out fruits and vegetables that have gone bad?

Have lots of kitchen scraps but can't be bothered to compost them due to possible smell, rodents, HOA rules, or time commitments?

Welcome to "blendposting". That's my made up name for a technique I "invented" for handling kitchen scraps or wasted fruits and vegetables.

It's really easy to do, will help your garden or flowerbed immensely, and reduce waste/smell at the local landfill.

Step 1: Freeze Your Scraps

We have a plastic tub in our kitchen freezer. While preparing every meal, we toss scraps (potato and onion skins, carrot heads, orange peels, avocado skins and seeds, wilted lettuce, etc.) into the tub. We even toss coffee grounds, tea bags, and leftover cooked vegetables into the tub.

If you discover you've let some fruits or veggies go bad, toss them in there too.

Freezing isn't required but I can't bothered to blend my scraps every few days.

IMPORTANT: Pull the strings off tea bags before tossing the bags in the bucket. Throw the strings away. The strings tend to catch on the spool the blades are attached to. They're a real pain to remove.

IMPORTANT: I only collect fruits and vegetables. You could do this with meats as well. However, there is the risk of smells or attracting vermin. Perhaps if you lay chicken wire or netting over the ground, you'll prevent any unwanted digging or rooting.

BONUS POINTS: We save paper towels as well.

Step 2: Blend Away

Once your bucket is full or you're ready to do some gardening, fill your blender about half way with water. Top it off with some frozen scraps and fire it up. You'll have a beautiful looking "smoothie" in seconds. Just make sure you don't leave the room. Your housemates might decide to taste a sample.

Experiment with the amount of water that works best for you. I prefer to have it pretty runny for easier pouring. You might even try to use a meat grinder if you don't want/like to use so much water.

I wish I'd done some "latte art" for this photo 😉.

Step 2: Pour It On and Cover It up

I like to just scrape away my leaf mulch and pour the smoothie onto the bare soil. Then, I use a sprayer on my water hose to dilute/distribute the mix across a wider area. This also helps it flow down into cracks in the soil. My goal is to make it harder for any possible pests to get an easy meal. Next, I cover it up again with leaf mulch.

Step 3: Marvel at the Biological Activity

The worms, ants, and other bugs really love this stuff. My suburban flowerbeds were very inactive before. Now, after one year of "blendposting", I see much better soil structure and biologic activity. All this blended matter "disappears" in less than two weeks.

Step 4: Stock Up over Winter

I really don't enjoy the cold. I'm certainly not going to garden in it. So, my one bucket became several plus a few bags over the last few months. They had begun to take up too much of my big freezer. So, I spent almost two hours* "blendposting" everything. I got it all back down to two buckets. I've frozen these again. In the spring, I'll thaw them out and pamper my flowerbeds with them.

* PRO TIP: With this massive amount of scraps to blend, my Vitamix blender kept overheating. It would take about 10 minutes to cool down before I could work again. I solved this by placing a box fan right next to the blender. Afterwards, I was able to blend for longer before overheating and had shorter cooldown periods.

Pro Tip: Don't Forget Cut Flowers!

I always sort of regretted when we received delivered flowers. Yes, they are beautiful but also incredibly wasteful (fuel, emissions, waste, etc). While I can't avoid all of the downsides to fresh flowers, at least they don't go to waste now!

I blend them up into a refreshing, minty looking smoothie and add them to the flowerbeds.

Bye Bye Blender. Hello Meat Grinder

After about a year of doing this, my llender pretty much died. It would start to overheat with one single batch. It still works for typical cooking tasks, but it's just not up to handling this much bulk processing of hard, frozen food. So I was just filling up my freezer month after month with more and more scraps that needed to be processed.

After researching other options, I decided to get a high-quality meat grinder. It does an excellent job of processing these scraps without using all the water that the blender did. I've found that I enjoy using the meat grinder much more than the blender. I have to make fewer trips outside to dump my bucket due to all the water I used with the blender.

There are some caveats, though. A meat grinder cannot handle anything with strings or paper. I used to grind up my plain paper towels with the scraps. These will clog the meat grinder. So) tea bags are a no-no because they have paper and strings. Another very paper-like thing is the outer wrappings of onions. I'm talking about that completely thin, dry stuff that has no moisture content. Those are effectively paper and will block the discharge chute. The grinder also doesn't like frozen avocado seeds. Actually, the food processor didn't do a very good job with them either. However, the grinder will lock up because it blocks the discharge. With these few items, I just throw them in my processed bucket and decompose just find.

Here are some photos of the whole process.

Frozen scraps ready to be ground next to a clean meat grinder and bucket.
If you have large items, cut them into smaller pieces.
Avoid grinding stringy things like celery and papery like the dry, outer layer of onions.
The final output.
Scrape mulch or leaves away to expose bare soil.
Spread out the ground vegetables.
Cover it all up with leaves. In a few weeks, it will all be incorporated into the soil.

]]>
<![CDATA[A Story of In-Patient Mental Health Treatment]]>https://justinnoel.dev/2024/01/17/a-story-of-in-patient-mental-health-treatment/65a814ae7ab1430543bed2e7Wed, 17 Jan 2024 18:09:59 GMT

Last Wednesday, I checked myself into a mental health facility. Three years of not being able to work, burning through savings, financial strain, and feeling useless and a burden had become overwhelming. I was on the verge of suicide and didn’t see any other options.  I went to the VA clinic to see a psychiatrist for help. She wanted me to go to an ER immediately, which I was willing to do. However, she thought I was too unsafe to be allowed to leave the building. So, they had the police come get me. I had to go through the shame of being frisked, handcuffed, and put in a police car. Then, the officer had to sit with me in the emergency room until they were ready to receive me.

IMPORTANT: If you're struggling with depression and need help, call the National Suicide Prevention Lifeline at 800-273-TALK (8255). If you're more comfortable texting, message the Crisis Text Line at 741741.

IMPORTANT: Almost every veteran qualifies for free mental healthcare including in-patient treatment. If you are contemplating suicide or are in crisis, go to an Emergency Room right now! VA provides free emergency suicide prevention care to nearly 50,000 Veterans and former service members in first year of new policy.

It could’ve been a terrible experience. However, the officer and I got talking. He’s a Marine veteran, and I am a Navy veteran. I was a nuclear reactor operator on submarines, and his brother is a nuclear reactor operator on submarines - stationed in Connecticut. We had a lot of funny stories to share.

By the time I was taken back to be admitted, we had gotten to know each other quite well. Once he was finally able to leave, he said, "It was really nice to meet you!" I replied, "I wish I’d never met you, but I'm glad I did!"

I was finally put in a ward late that evening. I mainly spent that night by myself reading a book.

Over the next four days. I worked hard to get to know the other patients in the clinic. We kind of formed a little team. It was a bit bittersweet when a person was released. It was kind of nice when somebody new would come in. I made a great effort to make sure everybody new felt welcomed.

I even celebrated my 55th birthday in a psych ward. Not once, did I ever imagine something like that happening. In some ways, it was quite sweet to have a birthday surrounded by complete strangers. Some of the patients could barely remember their names, let alone the fact they had already told me, "Happy Birthday!" So, they might’ve told me "Happy Birthday!" dozens of times 🤣.

It was quite a complex environment.  There was a mixture of true “crazy”, disruption, fear, violence, and average people like myself that just needed help.

Being in there was really a wake up call for me.  My psychiatrist has been asking me to join group sessions for many years, but I have blown her off. I learned that I really do need to spend more time working on my mental health and that group sessions are not as bad as I expected.

I also learned that I am much better at social situations than I thought.  I’ve always been very introverted, but I’ve been able to hold conversations in social situations for a few years now. However, I’ve never felt included or part of the "cool kids". When I entered this facility, I was faced with a group of people that were not interacting at all. I saw right away that I didn’t want to be there completely by myself. That would have destroyed me. So, I created my own little group of people. I joined two ladies working on a puzzle. By day two, we had pulled three tables together and had anywhere from 5 to 9 people around it at a time, playing cards, building puzzles, joking around, and laughing hysterically. One of the ladies made me her table guardian. Anytime we sat in groups, she would protect a seat next to her for me so she didn't have to sit next to some of the other patients that scared/stressed her. I may not fit in with all the pretty, perfect people, but I sure did manage to band together a bunch of misfits.

When I found out I was leaving, I let my little group of misfits know. One young lady told me she was going to miss me making her laugh. Another young woman told me she was going to miss me being everyone’s dad. Another lady told me she was going to miss me keeping her safe from one of the violent people. Of the guys, there was an Android programmer. He was sad to see me go because we had a lot in common. I passed the "dad baton" on to another patient I'd brought into the group.

On one of our outside breaks, one very sweet, young woman, adopted a pet rock. Of course she couldn’t bring it inside, so she kept talking about how much she missed it. Unfortunately, due to the weather, all outside visits were stopped, so she couldn’t see her pet rock anymore. She was devastated. Before my discharge, I told her and our other friends that I was going to place her pet rock on a sign that was visible from our group room window. As my wife and I left the hospital, I went to the courtyard, and found her rock. We found the sign, and then I called the nurses station and got my group of friends to look out the window and wave to me while I put the rock on the sign. Now, she could look out the window and see her pet rock every day. I immediately began missing my little ragtag group of friends. I hope they are all well and getting released soon.

I got discharged early Monday afternoon.  Yesterday, I spent arranging more appointments with my psychiatrist and with the VA mental health department.

My psychiatrist wants me to look into getting either esketamine treatments or TMS treatments. I’ve got to work with the VA to get those approved.

Many times throughout the years, I’ve known I needed to go for inpatient treatment. However, I was just too ashamed to do something like that. This experience has taught me there is no shame in seeking help. Despite some problems with my visit, it was a great experience overall.

If any of you have been holding back from seeking the medical treatment you need, please don’t! You’re well-being and your family's well-being are more important than any stigma you or anyone else may place on you. Mental health is just like heart health or respiratory health. There is no shame in keeping your heart or your mind healthy.

Photo by Total Shape on Unsplash

]]>
<![CDATA[Codeium AI Plugin Can Help Disabled Developers]]>https://justinnoel.dev/2023/10/05/codeium-ai-plugin-can-help-disabled-developers/651eeede7ab1430543bed2b7Thu, 05 Oct 2023 17:40:04 GMT
Codeium AI Plugin Can Help Disabled Developers

Photo by Burst on Unsplash

]]>
<![CDATA[Quickly Adding Emojis in Slack and Discord]]>https://justinnoel.dev/2023/07/05/quickly-adding-emojis-in-slack-and-discord/64a590e37ab1430543bed289Wed, 05 Jul 2023 16:05:03 GMT

Here's the text from the video.

Quickly Adding Emojis in Slack and Discord

Today I learned a neat little trick that works in both Discord and Slack.

Say for example you want to add some emoji reactions to someone's post. Normally when you do that, if you need a different reaction you would click here then add a heart and then if you want another one you gotta click here and add another thing and it's kind of a pain in the rib.

Well you can actually hold down the shift key and you can click all the ones you like And it will stay up without you having to open it over and over and over again. And then, when you're done, you can just click the last one and it goes away. So it's a really fast way to add a lot of reactions in Slack and in Discord.


Photo by Apaha Spi on Unsplash

]]>
<![CDATA["Curing" Blindness with Apple Vision Pro and "Be My Eyes"]]>https://justinnoel.dev/2023/06/06/curing-blindness-with-apple-vision-pro-and-be-my-eyes/647fb68a4367160512505501Tue, 06 Jun 2023 23:15:23 GMT

At Apple's WWDC yesterday, they announced Apple Vision Pro - an augmented reality headset. Apple demonstrated many examples using the Vision Pro with games, movies, communications, and general business productivity apps.

When discussing the Vision Pro with family members and online friends, the main topic is how amazing the Vision Pro will be for entertainment. Not many people are mentioning the amazing industrial and business applications that would be well-suited for Vision Pro.

I immediately thought of the "Be My Eyes" app. I've written before about how "Be My Eyes" helps blind or vision impaired users get assistance from sighted users for minor tasks. I've been a volunteer for this app for several years. I've helped people find cat pee on their floor, choose a snack from their pantry, or find a can of regular green beans versus french string beans.

The current version of the "Be My Eyes" app is best suited for occasional small tasks. It's not meant to solve complex problems where the person is struggling to hold their phone while working on the task and keeping it focused or in view for the assistant. In most cases, "Be My Eyes" calls are completed in a few minutes.

Giving Sight to the Sightless

Now, imagine how a modified¹ Vision Pro could change how a "Be My Eyes" volunteer interacts with the vision impaired person.

  • A blind person needs assistance with setting up a new computer. The computer has been delivered in a giant box. They need to unpack the box, read the "Quick Start" manual, and then set up all the cables and peripherals. This is a daunting task even for a sighted person.

    For the vision impaired, it can be overwhelming. Using Vision Pro, the helper could walk the person through the entire set up process because the cameras let the assistant "see" what the vision impaired person cannot.

  • A blind person might have trouble making a complicated meal for the first time. While wearing the Vision Pro, they receive guidance from someone remotely. That person could walk them through selecting ingredients from the pantry, reading the recipe book, measuring out ingredients, walk them through mixing and preparation, and assisting them in putting the meal in the oven or on the stove.

    Later, the assistant could help them ensure the meal is properly cooked or that the bread has risen without opening the oven.

Simple to complex household scenarios are not the only times that the vision impaired need assistance. There are tasks so complicated that the vision impaired would normally need someone on site to assist them.

Imagine how uncomfortable you may feel when traveling to an unknown area of your city or even to another city. Now imagine how much scarier that is for someone with low to no vision.
With the Vision Pro, they could always have a helping hand available.

  • After putting on the device, they could get assistance with exiting a bus and walking several blocks to their new office building. Their assistant could help them identify street crossings, cracks in the sidewalk, benches, or any other obstacles that might be difficult to detect with a cane.

    The assistant might be able to help them identify a safer route to take versus one suggested by their map app. They might "see" a sidewalk in better condition or with fewer obstacles that the blind person would never discover.

    After a few days of getting to the new office with assistance, they may be comfortable enough to do so on their own.

  • Grocery shopping for the vision impaired could be transformed by having a virtual assistant with them throughout the process.

    Their assistant could help them choose the freshest vegetables, calculate the difference in price between different brands and sizes, find the right pain reliever in the pharmacy department, and choose their favorite chocolatey 🍫 treat.

Creating Jobs for the Immobilized or Homebound

"Be My Eyes" currently has over 500,000 customers that need vision assistance who are all served by over 6 1/2 million volunteers.

With the current version of the app, volunteering is the best way to assist those in need. However with more complicated tasks and with the increased functionality available with Vision Pro, volunteers might not be able to handle the workload or the long sessions.

"Be My Eyes" and Apple could collaborate to create a service like ride-sharing apps where qualified and vetted assistants are available 24/7 to help the blind.

The service could allow for specialization to meet specific needs of clients.

  • A female client might only want assistance from other females.
  • Doctors or nurses could be available for certain scenarios like guiding someone through cleaning and changing bandages.
  • People with extensive cooking skills could be available to help clients prepare meals.
  • Technically skilled assistants could help people with computer problems

This Service could be a great way for people who are homebound or immobilized to earn an income while at the same time helping others with different disabilities. These jobs would be available to anyone such as:

  • Stay at home parents
  • Semi-retired
  • Those with physical limitations or time constraints that prevent them from working outside the home

Wouldn't it be incredible to "solve" blindness in many scenarios while empowering others with employment suited to their own abilities?

I'm looking forward to seeing what Apple, "Be My Eyes", other industry leaders, clever individuals, and startups create to take advantage of the capabilities of Apple's Vision Pro.

¹ Vision pro is a powerhouse of a machine that is cost prohibitive for most people. It has a wide range of sensors and outputs that may not benefit the vision impaired at all, I'm sure Apple could work with the blind community to make a lower priced device suited for their needs. For example, the two 4K displays are useless to a blind person. Removing those displays would make the device much more affordable.

Photo by Ryoji Iwata on Unsplash

]]>
<![CDATA[Real Code is Better than "leet" Code]]>https://justinnoel.dev/2023/04/03/real-code-is-better-than-leet-code/6429822043671605125054aaMon, 03 Apr 2023 13:49:09 GMTReal Code is Better than

I'm a member of the amazing Virtual Coffee online community. For about 2 1/2 years, I've watched aspiring developers discuss their struggles, wins/losses, ask for help, learn, and grow into professional developers.

In our many video and Slack discussions, we talk about job hunting, interview preparation, and the struggles of live coding and take home assignments during interviews. Many of the aspiring developers go to great lengths to create portfolio apps from boot camps, maintain an active Github a profile, and participate in "leet" code, kata, or code war challenges. I'm always very impressed by their tenacity and dedication to their craft.


WARNING: Opinions below. Take them with a grain of salt. YMMV.


I often see these aspiring developers spend so much time "preparing" that they have never actually produced anything that solves a real problem. I have often given the advice that scratching your own itch and building a useful product might be better than all this preparation. This "product" doesn't have to be a money making thing. Otherwise you might actually not need a job! It could just be some tool you've created for yourself to solve a simple problem. It could be an amazing spreadsheet you created for your accountant friend. It could be something to help a local charity process new food intakes. Perhaps you've created a website for a local business. It can literally be anything that solves a problem or entertains someone.

As anecdotal evidence, I present this quote from Tony Dinh, the creator of BlackMagic and TypingMind.

My technical skills: I can write code very fast. Coding is the easy part for me. I’ve been writing code since 15. I have written code almost every day over the past 8 years. I can’t solve medium Leetcode problems and don’t write the best clean code out there, but I still love writing code and putting code together to make something useful.

Personally, I have never even attempted any of these "code war" problems before. I don't do any of those katas or other type challenges. I bet most of you "junior developers" would run circles around me at those challenges.

My point is that you can create profitable, useful, and/or innovative products without being a particularly good programmer as long as you find something you like to work on and solve a problem that you or someone you know has.

If you enjoy doing these code challenges, that's great. I'm sure they can be very educational. Enjoy! However, if you're just doing them to "level up", I think you'd be better off just solving a real problem with code. Then in interviews, you'd have a real code base to demonstrate your skills to potential employers. They will see that you have the ability to solve actual problems. Your code base can demonstrate to them you have the technical skills, the initiative, and the tenacity to solve problems just like they will need you to do in their work environment.

Please understand, that I'm not discounting your struggles. Breaking into the tech industry is very hard to do. There are way too many hurdles and ridiculous hiring practices in this industry. However I believe a real product that you have created yourself and can demonstrate during interviews may do more to help you get the job you desire than some scorecard on a "coding wars" website. In the long run, you have to do what is best for you to get a job in the tech industry. Maybe the best thing is what you're already doing or maybe it's a combination of what you're doing now and what I'm suggesting.

But!!: Sometimes, I've suggested this approach and heard back from people that you shouldn't have to be a programmer in your spare time. Your hobby shouldn't have to be programming. You should be able to have a life outside of work! That is all 100% true. However, if you're trying to get your first developer job, you have the choice of either spending your spare time on code challenges that may not help you at all or spending that same time building something useful. I know which I would choose.

To Hiring Managers: Please stop using coding challenges, white boarding, and take home assignments as your default way of evaluating a candidate. Instead, find out if they have a project that they've created themselves from scratch. Get permission to access their git repo, review the code, evaluate there coding style, and see their growth over an extended period of time. In the interview have them walk through the code to make sure they truly understand it. Also ask them for an explanation of why they wrote a function a particular way and how they may change it now that they're more experienced. You're much more likely to find out how well somebody can code this way than from some random coding challenge or whiteboard problem.

Photo Credit: Nubelson Fernandes

]]>
<![CDATA[Using Cloudflare Workers to Manage an S3 Compatible R2 Bucket]]>Wondering how to use Cloudflare Workers to manage access to an R2 Bucket?

I've put together a tutorial video that takes the official Cloudflare sample, converts it to JavaScript from TypeScript, and makes it more secure.

https://cf-workers-r2.codedemos.dev/

]]>
https://justinnoel.dev/2023/03/02/using-cloudflare-workers-to-manage-an-s3-compatible-r2-bucket/6400b105436716051250549fThu, 02 Mar 2023 14:23:00 GMTWondering how to use Cloudflare Workers to manage access to an R2 Bucket?

I've put together a tutorial video that takes the official Cloudflare sample, converts it to JavaScript from TypeScript, and makes it more secure.

https://cf-workers-r2.codedemos.dev/

]]>
<![CDATA[My Developer Origin Story]]>Many years ago, I had my "origin story" on the now sunsetted Stack Overflow Careers page.  Since it's gone now, I'm posting it here for posterity. Keep in mind this is outdated since 2013.

I've been dabbling in programming since I was a kid. I remember typing code directly from
]]>
https://justinnoel.dev/2023/01/31/developer-origin-story/63d94d66436716051250545dTue, 31 Jan 2023 17:27:56 GMTMany years ago, I had my "origin story" on the now sunsetted Stack Overflow Careers page.  Since it's gone now, I'm posting it here for posterity. Keep in mind this is outdated since 2013.

I've been dabbling in programming since I was a kid. I remember typing code directly from Byte! magazine into my TI-994A way back in the 80s. I wasn't a very good typist and never got the code correct! So frustrating!

My first big success in programming was for my World History class in high school. Say what? I wrote a program that charted the paths of the major European explorers to the "New World". My history teacher was amazed. My classmates thought, "dork!" I didn't show off my mad programming skills much after that.

Since then, I've continued my self-training with Visual Basic, VBA, Perl, PHP, MySQL, JavaScript, ExtJS, jQuery, etc. I used my skills throughout my telecom career to automate my own manual processes. Eventually, everyone realized I did great work, faster than anyone else. I was soon stripped of my mundane tasks and told to make tools for everyone else in the department.

I'm now an application developer for a major SS7 hub provider. I develop automation systems that help users be more efficient and accurate. My systems range from automated network research tools, charts and network metrics, to full-blown network routing and administration activities. I strive to make applications that empower my users instead of replace them.
]]>
<![CDATA[Without Us]]>https://justinnoel.dev/2022/11/30/without-us/638767094367160512505420Wed, 30 Nov 2022 14:58:20 GMT

Backstory

Without Us

Mid December, 2020

My wife received news that her father, Brendan, was in hospital and about to pass away from a very aggressive type of cancer. He would soon be sent home for palliative care. My mother-in-law, Carmel, was not in the best of health either and was not able to take care for herself, let alone Brendan. So, we rushed to England with our boys to take care of them both.

Brendan was brought home from hospital late Thursday, December 17th. For several days, many family members took turns caring for him while several hospice care nurses came in and out to monitor and assist. At some point, the hospital he'd been at called us with some bad news. The ward Brendan had been in for several weeks had a bad COVID outbreak. The doctors suspected Brendan had been infected as well. We were advised to take additional precautions. Sadly, Brendan died on December 19.

Within a few days, we realized that eight family members that had brought food or helped care for Brendan had COVID - including me, my wife, our two boys, and Carmel. The next few days were pretty miserable with us all sick and suffering with grief.


Christmas morning, 2020 at about 8:30 am.

My wife and I were asleep in bed, still sick with COVID. An unusual noise startled me from my sleep. Then, I heard it again. My phone was alerting me to something, but the sound was only vaguely familiar. I ignored it and waited to drift off to sleep again. As the sound repeated a third time, realization dawned on me that it was the ring tone for the Be My Eyes app. Someone with limited vision was using the app to ask for help.

I snatched up my phone and answered the call, "Hello. I'm Justin. Can I help you with something?" The caller explained she was trying to find a snack in her pantry. She was blind and unable to tell the difference between several different bags of chips (crisps if you're in England). She turned on her camera to let me see her pantry. I was able to tell her which bag had the flavor she wanted. When I confirmed she didn't need any more assistance, I told her I was happy to help and hoped she'd have a Merry Christmas. She told me it wasn't Christmas yet for her. She explained she was in Alaska where it was Christmas Eve and about 11:30 pm. She'd just finished wrapping presents for her little kids and wanted to relax a bit with a snack before going to bed. She asked where I was, and I answered, "London, Englad". We exchanged more pleasantries and then said goodbye.

Later in the day, our Christmas "celebrations" consisted of sitting on Carmel's bed while our boys each opened the one present I had brought with us. As we were all sick, we couldn't be bothered with a meal and spent most of the day in bed. Despite this being a less than cheerful scenario, I was actually elated that I'd helped someone earlier in the day with what to me was such a simple task.

NOTE: This next portion is written from the perspective of technology. However, don't stop reading if you're not in that sector. Everything I describe here applies to anyone in any job or home life position.

The Wonders of Technology

Over the next few days, with nothing much more to do, I started to really think about what had transpired that Christmas morning.

A blind person 4500 miles away had picked up a phone, placed a "call", was able to share video of her home, and get some assistance with such a "mundane" task from a complete stranger.

On previous Be My Eyes calls, I had helped a caller find the puke her cat had left on her carpet, helped a person select a can of green beans from their cabinet, and assisted someone with reading a portion of a letter.

I've only assisted with Be My Eyes about 4 or 5 times. However, there are 6 million volunteers and 500,000 blind and low vision people using the service - all for free.

Those of us in the technology industry probably have a good idea of the scope of people, job functions, tools, and material required to make this and many other near-miracles happen.

Without any one part of the chain, none of this could have happened. With no radio engineers, the phone couldn't connect to cellular networks or WiFi. With no software developers, the Be My Eyes app wouldn't exist nor would the databases nor servers that the app relies on. With no silicon, the computer chips would not exist for the phones or servers involved in this service. Literally hundreds of job functions and millions of workers were required for me to assist someone in picking a bag of Flaming Hot Cheetos rather than a bag of Doritos.

Thanks to millions of other people, I was able to help someone on Christmas Day Eve relax and just have a slightly more pleasant life.

Without (all of) Us

Over time, I thought about this more. Above, I only mentioned the technology aspects of that near magical call. Looking a little deeper, it's clear that hundreds of millions, actually billions, of people made that "simple" phone call possible.

  • Farmers produced the food that fed countless tech workers
  • Truckers and other transportation workers got the food to stores
  • Grocers provided a safe and sanitary place for people to buy the food
  • Chefs, parents, wait staff served that food to their customers or family
  • Sanitation workers collected all the refuse produced in this whole process

I could go on and on with the chain of workers that help us live everyday. If you look between the "Truckers" and "Grocers" section above, you could add hundreds of other sub functions. Then, you could split each of those dozens of ways.

The point is that it takes all of us to make the world work. There are no "Essential" or "Vital" workers. Without all of us, the world stops working. We all "make the magic happen".

Without YOU

Many times in my life, I've heard people say something like, "I'm just a ..." or "I only do ...". It's like they are ashamed of the work they do. These people have been friends, coworkers at multi-billion dollar companies, or casual acquaintances.

In the past, I've agreed with them and even said the same thing myself. It can be a bit humbling to have a less than glamorous role in a group of peers that seem to make "the magic" happen. Working as a bagger in a grocery store can seem less important than helping to launch a space ship.

"In the beginning", humans had only one job. They had to feed themselves. Anyone that didn't participate in the job of hunting or gathering, didn't eat and didn't survive long.

Over time, humans began to specialize. One group hunted, one group gathered, and another group cooked. Later came farmers, potters, ship builders, sailors, historians, teachers, engineers, and astronauts.

Despite these specializations, every person on earth still has one primary job - to feed themselves. However, now, they outsource it to billions of other people so they can focus on their specialty. No single role is more important than any other. We all play an essential role in ensuring goods, services, and health care are available worldwide.

If you're "just" the cashier, administrative assist, accountant, barista, sailor, homemaker, salesperson, cook, CTO, cotton picker, designer, planner, etc., you are a linchpin in the entire process of the world. If you stop doing your secondary job, each of those specialists will begin to slow down. If you walk away from your phlebotomists role, people start dying! Instead of having their clothes dry-cleaned, they'll need to wash them at home. House cleaners all start farming? That CEO has to start to vacuum themselves. Eventually, as more and more "secondary" jobs are abandoned, everyone has to revert to their primary job of feeding themselves. The world would devolve into chaos.

The world needs you in whatever capacity you provide. You are important. Your job is vital. Without you, that rocket doesn't get launched.

P.S. Now that we see how everyone is equally important, let's please start treating each other that way. There are no "peons". No job is worthless or meaningless. Please don't be condescending to the accountants, waiters, nurses, or bell boys you encounter each day. Don't yell at management because someone didn't do something "just so". Be pleasant to everyone you interact with. If possible, put a smile on their face. Your kindness will make it easier for them to deal with so many others that are less than pleasant.

Keep in mind that if your rudeness causes someone to get fired or to quit, you might soon regret it. Someday you may discover they are much better at hunting and gathering than you are.

Header Photo by Dillon Wanner on Unsplash

Without Us

Photo by Crawford Jolly on Unsplash

]]>
<![CDATA[Viewing Only Modifieds Settings in Visual Studio Code]]>https://justinnoel.dev/2022/10/17/view-all-modified-preferences-in-visual-studio-code/634d337743671605125053faMon, 17 Oct 2022 11:46:47 GMT

Sometimes you may discover a change in the way Visual Studio Code works for you. Maybe something that used to work no longer does. Perhaps you changed some setting but can't figure out which one it was.

With hundreds of settings in Code, it's nearly impossible to read through them all to find modifications you've made.

Fortunately, there's a way to filter out all preference settings except those that have been modified. Just follows these steps on macOS.  Windows settings access will use the appropriate keyboard / GUI steps:

Open the Settings/Preferences

  • Code menu -> Preferences -> Settings

or

  • Command ⌘ and Comma ,

A setting page will open with the cursor in the "Search Settings" field.

In the "Search Settings" field type "@modified".

Now, instead of seeing all available settings, only those that have been changed will be presented. This makes it much easier to see or undo any changes that had an undesired effect.

Here's a short video demonstrating the process:

]]>
<![CDATA[Apple Admits New iPhone Feature To Improve Censorship of Photos 😜]]>https://justinnoel.dev/2022/09/16/apple-admits-new-iphone-feature-to-improve-censorship-of-photos/6324a878436716051250539dFri, 16 Sep 2022 16:58:48 GMTIn Apple's recent "Far Out" event, it announced lots of new devices and software.

Tim Cook also mistakenly (?) admitted to Apple's involvement in censorship. Apparently the new iPhone 14 pro is going to be particularly good at censoring our photos‼️

Time to switch to Android⁉️

Turn on captions for the video to reveal the secret truth. Then SCROLL DOWN for more on this shocking story.


Well .... not really 😜. Tim Cook actually said:

... like sensor shift stabilization.

However, I had to listen to it several times and finally turn on closed captions to figure out the truth.

In fact, the audio to text tool I used for this video clip also translated it the way I heard it 🤣.

]]>
<![CDATA[Reliably Open the Emoji and Symbols Keyboard on macOS]]>https://justinnoel.dev/2022/01/29/reliably-open-macos-emoji-and-symbols-keyboard/61f57c394367160512505340Sat, 29 Jan 2022 17:59:52 GMTHave you ever wanted to insert an emoji, currency symbol, flag, macOS keyboard sequence or other special symbol in a document or message on macOS?

If you don't do this very often, it can be a bit of a pain to figure out how to do it. Without any other configuration, the "easiest" way is to use the keyboard shortcut ⌘⌃Space (Command + Control + Space). This will usually pop up the emoji keyboard and allow you to select one to insert. Sadly, it's .... not particularly reliable.

Quote tweet from @kadikraman says, "This is too accurate 😆 - and then when you finally give up and click the button for built-in emoji overlay e.g on Twitter, they both open 🥲".  She is responding to the original Tweet from @jkup that says, "Mac Protip: You can press Control + Command + Spacebar for a 1/25 chance at opening the emoji overlay!"

The best solution I've found to this problem is to replace this key sequence with the "fn" or "function" key. This seems to work 100% reliably for me on my 2017 MacBook Pro.

Making this change doesn't require any special apps or tools. It's literally built into the macOS System Preferences. Open System Preferences, choose Keyboard, and then find the "Press fn key to" section. In the select box, choose "Show Emoji and Symbols". Here's a screenshot to help:

Screenshot from the macOS System Preferences app in the keyboard settings.
]]>