community.maddatascientist.io is a new Discourse site aimed at new users, primarily those who do not intend to move far into intermediate stage and do not plan on using Julia’s advanced mathematical capacities. It aims to complement this site by appealing to a less technical audience.
To help the site gain traction, for February I am offering a free* subscription for the life of the new board to anyone on this board who wishes to contribute to expanding the Julia base.
To the extent that most people have heard of the Julia language at all, it can have a somewhat daunting visage—“it’s for MIT rocket scientists.” That perception overlooks the ergonomics of the language. I switched from R a year ago and I continue to wince whenever I have to go back for something (call it a lack of comprehension). Basic data science tasks seem much more fluid, especially compared to the syntax-heavy tidyverse flavor.
If you are interested, please DM me.
*At some point I’m going to have to charge for posting privileges to defray hosting.
It’s not that I don’t think this site isn’t welcoming to new users, it’s just that I don’t see many, and I think the reason is intimidation for those who don’t have the math-heavy interest that I’ve seen here. My hope is that a training wheels site would allow new users to “graduate” to the official site. I really don’t think that I will be drawing much traffic away.
If this is the case (and I am not convinced it is), shouldn’t we focus on improving the existing forum instead of creating a new one?
Of course, anyone is free to start a new forum. I’m just wondering whether it benefits the Julia community.
New users get the best advice from experienced users, and this forum already hosts many experienced users who are kind enough to provide high-quality answers to all questions, including those from newcomers. Why divide the community knowledge and attention between two places?
While I do agree there is still a self-selection bias in the Julia community - and it’s a pity because you don’t need to work on problems on diff equations systems or moment based optimization models to find Julia useful - I disagree on creating another separate forum as the best way to reduce this bias.
@barucden : the dimension of the issue I see (and for which creating a new forum is not the solution) is not much on newcomers vs experienced Julia users but rather on the over-rappresenation of high math sophistication of Julia usages
I’m all for improving the site here. I’ve just set up and I haven’t yet gotten signups. What do you think of this: It will be free to view but paywalled to post, and there will be a prominent banner encouraging and directing users to the deeper resources and community resources here with a recommendation to tag with “new to Julia.” Is it possible to create that as a user category to flag status pending traction? That way, I will be able to provide newborn handholding without detracting from the long-term health of the official board.
You can’t be serious. You can’t talk about improving about accessibility and then paywall your forum. If the hosting cost is really that high, get an old laptop or a mini pc and self host it.
To be clear, it would be free to read for everyone. It would be paywalled for people who expect to get help that they aren’t [yet] getting here. (And can I interest you in a pair of used moccasins for your next walk? I’ve done self-hosting since 1996 and it’s a time sink, although today’s broadband is much more affordable than the fractional T1 then.)
Well, yeah, but that would be counter to the idea that the principal support should be from the community here. As some say, I’m not trying to poop in the punchbowl. (Not to mention setting up the infrastructure to do this, not the least of which is 1099s for US taxpayers and I have no idea what obligations might arise under EU law. Shoot me, I’m a lawyer.)
[laughing] 30 years ago I tried to invent Slack when people who understood the technology thought it should be free and people who have since been happy to pay for it didn’t understand the technology. My baby dotcom crashed and burned before it was fashionable. After looking over the past several months of “New to Julia” tags, I feel rather more than less convinced that this forum is well above the level of sophistication that the people I have in mind can cope with. I spent 5 years on the posit discourse for R and that is more what I have in mind. As far as AI goes, it’s a matter of knowing which buttons to push.
And for the people that aim to help there – they also have to pay to post? So to do something with the community (like I at least try when answering here) – one has to pay as well?
I think I am too much used to free forums (I think I never used one that costs money since my school time several several years back), that I seem to not get how that should work as a payment model.
But sure, if you find your audience and paying users – good luck!
No, I’m making myself misunderstood. Badly, it appears. julialang has organizational resources that I don’t. Paywalling for posting has the additional advantage of encouraging people who come across the new site to come here and if they find the help they need I’m all for it. I’m more than happy to have all the regulars here who want to help very tender newbies who might be more willing to engage if it’s not all eigenvectors to have posting privileges. I came to Julia a year ago from R which, frankly, is a crappy procedural language saved only by the richness of its statistical packages. I was pleasantly surprised not by Julia’s power (it’s reputation preceded it) but by its ergonomics. There’s a whole “tidyverse” of R packages with the aim of making R more user friendly. I grew very, very weary of the syntax proliferation. I had a cheatsheet to find my cheatsheets. I don’t need those with Julia. I’m just a boy looking at a girl (I know, I know) …
People are understanding you perfectly, and that’s why they disagree. I can’t justify the entire software economy, but it makes sense to lower costs as much as possible for simple public messages among peers. A “new user” should not have to pay for random people to give possibly wrong answers, and people shouldn’t have to pay to give right answers. If payment is involved, it’d be more reasonable to pay the latter for adding value to your forum, though I believe that earlier suggestion was a joke. Free online communication predated the web, and people only expect to pay for services or upgrades that aren’t already offered in a free tier elsewhere. Frankly, if I wasn’t aware of your activity and decent reputation on this forum, I would have perceived this inappropriate paywall as predatory, not just poor assumptions and finances, and it doesn’t help that the welcome post promotes your new Julia-based business instead of mentioning the other free forums or justifying a new paid one.
In very different and often private contexts, expert advice can be justified as a paid service. That could range from teaching beginners to highly technical consultations, but that has its own financing challenges. It’s also not feasible for every kind of question and is much more limited by scheduling, which is why free forums and LLMs exist.
A screenshot to save people some clicks to find out the current pricing and offers in addition to the limited discount mentioned here:
I’m going to withdraw the proposal because I don’t want to get culturally crosswise with the community here. I did, however, want better to explain my user is someone who is graduating from Excel and who is not stupid, just totally unsophisticated in terms of basic data science. What I see under “New to Julia” is a different class of user altogether.
High Proficiency in Scientific Computing and Mathematics The user base is overwhelmingly composed of domain experts dealing with complex mathematical problems rather than simple scripting. Even “new” users immediately engage with advanced mathematical libraries and concepts.
• Domain Complexity: Users are asking about “Poincare section for Henon Helies system”, “Fractional differential equations”, “QuantumClifford.jl”, and “Stokes Flow”.
• Scientific Migration: There is a clear pattern of users translating high-level scientific workflows from other languages, evidenced by topics comparing Julia directly to NumPy arrays, MATLAB loops, and R code translation.
Early Engagement with Performance Engineering Unlike typical novice programmer forums where the focus is merely on “getting code to run,” this user base is obsessively focused on how the code runs. They exhibit a sophistication regarding hardware interaction and memory management that is rare for a “newbie” category.
• Compiler Awareness: Users ask about compiler behavior, such as whether the compiler can “hoist constant structure out of the loop” or how static compilation works.
• Memory Management: There are frequent inquiries regarding “Allocations vs # of Alloc Unintuitive behavior”, reducing allocations in dot products, and understanding the results of @allocated.
• Type System Depth: Users quickly grapple with “Type instability”, “Primitive and Composite Types”, and abstract type data, indicating an understanding that performance in Julia is tied to type strictness.
Friction with General Software Engineering Tooling While mathematically sophisticated, a significant portion of the user base struggles with “IT” and standard software development tooling. This suggests many are academic or scientific researchers who may lack a background in systems programming or DevOps.
• Environment Management: There are recurrent struggles with installation and paths, such as configuring PyCall/Conda, issues with juliaup on Windows, and managing environment variables like PATH or WSL access.
• Workflow Integration: Users frequently encounter issues integrating Julia with standard editors, evidenced by troubleshooting requests for VS Code, and configuring Language Servers (LSP) in Neovim.
Advanced Computer Science Curiosity A subset of the user base demonstrates high sophistication by attempting to leverage Julia’s metaprogramming and parallel computing capabilities very early on.
• Metaprogramming: Users are experimenting with macros to avoid code repetition, asking how to reference function arguments as lists, and exploring the “interaction of val and dispatch”.
• Concurrency & Parallelism: Topics include data races, multi-threading nested loops, and GPU kernel programming,.
• Interoperability: Users are not working in isolation; they are sophisticated enough to require bridging Julia with C, Python/JAX, and shared libraries.
Summary The user base is best characterized as technical professionals crossing the chasm from interpreted scientific languages (Python/MATLAB/R) to a compiled, type-heavy language. They are sophisticated enough to ask about “hoisting constants” and “SIMD/Vectorization” but may still struggle with the basics of package installation or variable scope in loops
Not trying to be mean, but I really don’t understand what about this situation would be fixed by creating a new, less discoverable forum that people need to pay to post to.
Do you imagine that your ideal user who is graduating from Excel and is curious about the language but doesn’t know how to get their bearings will be willing to pay $10 or $25 a month for the privilege of posting on the forum?
Would there be any benefit to this new forum other than that your new user won’t see posts from someone who happens to know more than them about something related to the language?
Is it even desirable to shield people from others that they might learn from?
Hey! I took it down, ok? We run in different circles. The people I’m trying to reach aren’t laterals from other languages but people for who Julia would be their first. I don’t see many of those here, and the community should ask itself why that is and if that’s a concern.
Sorry, I could have phrased that more gently. What I’m really trying to get at is: is there something we could do here on this Discourse server to better serve the user you have in mind?
I suspect that given the hosting costs you’ve run into, and the potential barrier that a paywall would cause, we’d be better off just trying to figure out what could be done to make this place better for the user you’re targeting, rather than trying to split the community.
I’m not trying to shut you down or make you go away, I want to move the conversation to focus on the problem, and see if there’s another way to solve it without a paywall and a split community.
The thing about expanding a community to bring in new users is that no one wants to be the new kid in school where all the cool kids seem way above their head. Despite “there are no dumb questions,” when you see mainly questions you don’t understand there’s a natural tendency to shy away. If there are any uni users here who have first-language learners, encouragement might help. Otherwise, the only thing that comes to mind is “seeding” with a number of users with FAQ-type questions that might make it appear there is a lunch table where you can sit without feeling out-of-place.