Bryan Susanto

Bryan Susanto

Software Engineer and Designer

Bachelor of Design, Computing and Software Systems from University of Melbourne (top 100 international university)

Hey! I’m a bachelor’s graduate from the University of Melbourne who studied computer science, UI/UX design, and mathematics. Since high school, I’ve enjoyed front-end web development and, more generally, the technical and human side of computing. To me, there’s just a thing about being able to create something that anyone with internet and a web browser can access anywhere. I also find joy in seeing the delight on people’s faces when they use good software and when we can help solve their problems and achieve what they need to. Over the course of my studies, I’ve come to believe that good software is not just clean code and good architecture, but also good design thinking, hence I studied both and continue to strive to pull from both disciplines in my craft. Other than web development, I’m interested in tutoring/teaching and computer graphics, and I play video games in my free time, primarily Minecraft!

Recent Posts on Kilobites

See Bryan’s latest posts on Kilobites, a Sanico Software blog.

Profile photo of Bryan Susanto

An SEO non-fan reads Google's SEO Docs

An SEO non-fan reads Google's SEO Docs cover image

SEO is one of the topics that I’ve always procrastinated on delayed learning in favour of other topics because I personally find it to be quite a dry topic. But just because I don’t like it doesn’t mean it isn’t important. In fact, it is one of the most important things contributing to a website’s success, since search engines are one of the most common ways potential users find a website, and poor performance and accessibility (which is part of SEO) can significantly degrade the user experience. And when you’re working on client websites and not just your hobby websites, well, that’s quite important.

Besides being forced assigned to read the Google SEO docs, one thing that helped me looked past the dryness of SEO is when Dom, one of the co-founders of Sanico Software, told me how learning SEO is “actually learning how to make the internet world a better place” since it helps me contribute to “an online world that is more optimised, performant[,] and accessible to all users online” (gotta add the Oxford comma lol). I personally have a pet-peeve with having everything properly labelled and organised in a semantic way, e.g. with having proper headings in websites and documents instead of having large text, and so this reasoning appeals to a part of me a lot. Indeed this is much more complicated than e.g. semantic …

Keep Reading...

Profile photo of Bryan Susanto

Cross-browser user permissions in Phoenix LiveView

You know those times when you’re on this rollercoaster of emotions when debugging something, thinking that you’ve solved it but then another problem comes up? Yeah, this was one of those times.

Context was, I was working on a Phoenix LiveView app called BESTguestbookEVER for one of our clients. It’s an upcoming custom web app for a new startup based in Adelaide, where wedding guests record a video message instead of writing in a traditional guestbook. If you’ve read my previous blog post you would know the story, but a summarised version is that I was working on the video recording feature which required obtaining video and audio permissions. Unfortunately, it wasn’t as simple as just asking for the permissions and the user granting it through browser prompts. There were some additional things I had to do to get it working.

The big part of it was getting HTTPS working locally, since browsers would not let you grant video and audio permissions to websites accessed through insecure connections. If you want more details on that, check out my previous blog post “My journey in getting HTTPS working locally for a Phoenix LiveView app”. But today I’ll be covering the other smaller, but arguably equally important part of getting this to work.

I thought it worked everywhere…

See after getting HTTPS working, I thought it was finally …

Keep Reading...

Profile photo of Bryan Susanto

Configuring local HTTPS for web app development

Recently, I was working on a Phoenix LiveView app called BESTguestbookEVER for one of our clients, which is an app where wedding guests record a video message instead of writing in a traditional guestbook. Thus, one of the key features of this web app is the video recording functionality. While implementing the recording functionality itself using web APIs was a relatively time-consuming task, what turned out to unexpectedly be a bigger headache was dealing with browser permissions, especially across different browsers. I thought it’s as simple as just asking the users for permission and then the user granting it through the browser prompts, but uh… no. As they say, the devil is in the details.

Finding out I needed HTTPS locally

The details for everything I needed to do to get video and audio permissions working is a story for another time, but one of the things I had to do was to set up HTTPS on the local development environment. After doing a quick search and reading through forum posts, I found out that web browsers generally prohibit giving video and audio permissions to websites accessed through insecure connections. This makes sense for security reasons, but it’s very annoying when you’re developing locally, since you typically don’t have a TLS certificate and thus no HTTPS connection (but HTTP instead).

What’s even more annoying was …

Keep Reading...

View all posts on Kilobites

About Sanico

We are a team of computer programmers based in Australia and founded by Dom and Sav Tripodi. We build custom business software apps, websites, and ecommerce stores for small to mid-sized businesses in Australia and around the globe.

More about us
Sav and Dom on a skyscraper with the city in the background

Dom

Sav

Contact Dom or Sav about your project

No sales managers here. Tell us about your project and one of our founders, Dom or Sav Tripodi, will get back to you.

Free 30 minute consult