favicon here hometagsblogmicrobio cvtech cvgpg keys

My experience with Julia

Soc Virnyl Estela | 2022-12-12 | reading time: ~5min

Julia code that renders a Julia logo glyph which can only work perfectly with JuliaMono. Thanks cormullion! JuliaMono looks amazing!


using REPL
REPL.REPLCompletions.latex_symbols["\\julialogo"] = "\ue800"

println("Welcome to ")

For nearly 2 years, I have used Julia as my main hobby language of choice. I am not an expert nor a magician of this language but it really is a fun language to play with.

As a past Python user, Julia gave me a new perspective of languages I didn't know since highschool. Features such as multiple dispatch, abstract types and composite types, I recently learned it in this language. I know there are a lot of blogs about Julia so how is this post any different? Let's dive in.

Community§

As a person with no formal CS knowledge nor any in-depth understanding of CS theories at all, I am surprised that the Julia community welcomes any people from different backgrounds.

I was very shy at first, but I was readily welcomed and with such a warm welcome, I was very enthusiastic to learn more about the language during my free time.

Thanks to aru, the Discord admin/dictator of Humans of Julia, I became a Community Lead/Moderator there. Mark, Tom Kwong, Scott Jones, Ricardo Rosa, Franku, Aazare and Aaron where very active during the early days of HoJ. Unfortunately, due to work and personal stuff, most of these people are not as active as before. I do hope the energy to do so comes back but alas, I as well succumbed to that because of the same reason. Nonetheless, there are other Julia communities too, and the one I lurk the most is in Julia Zulip.

So much to learn§

Every now and then when I lurk both in HoJ or in Julia Zulip, I met a lot of people who are more knowledgeable than me. Clemapfel, also known as Clementine, was very helpful in the ask-for-help channels in HoJ. Clemapfel is the author of jluna, a Julia-C++ wrapper. There is another person too that I noticed that are actually so helpful, Yuuhi. I know there are others but every time I lurk, these are the two people I usually notice.

These people gave me more motivation to learn more about Julia even as to poke around the internals. But my lack of C knowledge is the only thing that is holding me back. But I am not discouraged. I can learn Julia without knowing those and those gaps of knowledge, I can just ask around people the why's, what's, and how's of the language.

An ambitious project§

I really want to learn Julia, that's why I plan to contribute as much as I can for the community and the language even if it's just small issues on GitHub[1] or just helping newcomers in HoJ.

I also as much as possible increase Julia's visibility on my favorite distribution, openSUSE, by becoming a packager for Juliaup.

But one thing I still lack is a project I can call my own and proudly say I learned Julia the best way possible - and that's where SBOL3.jl comes in.

I have not started anything yet on the project but I plan to do it around the March 2023. If you want to know what SBOL is you can go to https://sbolstandard.org/

So far, there is nothing much I can say here since there is nothing significant progress on the project yet.

Planning to join a GSoC/JSoC to improve my Julia§

I am planning to join GSoC/JSoC next year as a student. But the only issue is I get easily intimidated because I am not very bright and smart nor I have the necessary knowledge to tackle the projects.

But a friend of mine, William encouraged me to join even if I lacked some of the necessary knowledge because mentors exist for a reason. So yes, I decided to join GSoC/JSoC even if I don't have a very good base because I want to learn and I want to learn more.

Thanks again Firstyear for encouraging me and teaching me a lot of things in openSUSE 🥰

Conclusion§

Now to end this in a positive note, I am really glad that I discovered this language. But it's not actually the language that hooked me in, it was the helpful and knowledgeable people around me that taught me a lot about being in a community and being a contributor. And that being passionate means there is so much more to learn and to love.


  1. I mainly use codeberg now but I still use my github account to contribute and star some projects.

Articles from blogs I follow around the net

Status update, November 2024

Hi all! This month I’ve spent a lot of time triaging Sway and wlroots issues following the Sway 1.10 release. There are a few regressions, some of which are already fixed (thanks to all contributors for sending patches!). Kenny has added support for softwa…

via emersionNovember 21, 2024

Key Transparency and the Right to be Forgotten

This post is the first in a new series covering some of the reasoning behind decisions made in my project to build end-to-end encryption for direct messages on the Fediverse. (Collectively, Fedi-E2EE.) Although the reasons for specific design decisions sho…

via Dhole MomentsNovember 21, 2024

The Ethereum MEV Bots are a scam

Several months ago, I wrote this article: The Fascinating Ethereum MEV Bot Scam, where I dived deep into the technical aspects of a scam that has been circulating for years on platforms like X.com and YouTube. These scams revolve around deploying smart…

via Christian Visintin BlogNovember 19, 2024

hyper in curl Needs a Champion

tl;dr - hyper in curl is nearly complete, but it needs a champion. Without a partner actively engaged that wants to enable and ship, it’s now on the path for being deprecated and removed. It needs a champion, a backing vendor or distro. Will that be you? …

via seanmonstarNovember 19, 2024

Swift observations from a reluctant Rustacean

Recently I've been thinking about Swift in terms of Rust, & have appreciated anew some of the choices made. In Rust. There's been a proliferation of X vs Y posts on the web, especially since the advent of LLM AI, so I try to resist the format. It's often e…

via Mike KreuzerNovember 16, 2024

Go Concurrency Patterns

Goroutines Channels Select Statement Wait Groups Mutex Conditions Atomic Operations Once Context Map Real Examples Goroutines The go keyword is used to start a goroutine. A goroutine is a lightweight, managed thread used by the Go runtime to run functions …

via Posts on integralistNovember 15, 2024

Generated by openring-rs

favicon here hometagsblogmicrobio cvtech cvgpg keys