Readit News logoReadit News
mikestew · 7 years ago
Because though there might be building trades conferences, there are no hammer conferences. Oh, there will be tool vendors at the building trades conferences, there might be sessions on "Efficient Hammering Techniques Using Machine Learning", but there are no conferences about hammers. Don't forget about the blacksmith conference next week, they'll have hammer vendors, too.

I dunno, a Ruby conference kinda makes sense because one will mostly build web sites with it, so it's really going to be a "Building $FOO with $TOOL" kind of thing. But C is so widely used, it's like having that HammerFest 2019 with everyone from people splitting wood with a sledghammer to jewelers with their teensy little tapping tools. I just don't see the diamond workers drinking with the lumberjacks at the hotel bar after hours. :-) I jest, but it's mostly about networking anyway, otherwise just watch the videos online.

SiVal · 7 years ago
To find the answer, I would ask, Why are there conferences for other technologies? What are they for?

And I think the answer is probably 1) get useful news about recent and upcoming changes and 2) to socialize. I'm going to guess--possibly just projecting--that most C developers are older and not terribly interested in meeting new "C friends" or jumping into some hot, new "C startup".

That leaves #1. Web/AI-ML/cloud/mobile tech conferences feature speakers from the big tech companies that might reveal, in a talk or a hallway chat, info about which of your problems they are about to solve or to cause. Independent speakers serve a sort of journalist role of gathering intel from the big companies, organizing it, and revealing their findings. It's all about "tell me what I need to know so I can decide what to do".

But there isn't much news about C that most C programmers will want to know in order to make decisions. It's almost like news about algebra or, yes, hammers: mature, slow-changing technologies whose changes seldom impact more than a small percentage of users.

So without reasons 1 or 2, the answer to why aren't there C conferences is basic and boring: what important purpose would they serve?

lscotte · 7 years ago
I think there's a third one: To generate hype. C is already established - it's been around long enough that it doesn't need advertising.
Oreb · 7 years ago
> It’s almost like news about algebra

There are plenty of algebra conferences, though. I’ve been to several. :-)

I agree with your general point, but algebra isn’t quite as slow-moving as you seem to believe.

kazinator · 7 years ago
> I'm going to guess--possibly just projecting--that most C developers are older and not terribly interested in meeting new "C friends" or jumping into some hot, new "C startup".

Unfortunately that doesn't explain why there are not only aren't C conferences today, but there weren't C conferences 15, 20, 30 years ago.

pjmlp · 7 years ago
> what important purpose would they serve?

To spread the knowledge how to actually write C code that meets a certain quality level regarding security and safety.

And not that writing C89 without any sort of static analyzers is still acceptable practice.

prasanthmj · 7 years ago
There should be one more reason: businesses that want to sell to that specific category.

There will be Hammer conferences if there are companies that make "handle grips" or "hand hammer protectors" who are willing to sponsor such events.

billrobertson42 · 7 years ago
The reason that there is a conference for X is because somebody makes money running a conference for X. Be it directly or indirectly.
maxxxxx · 7 years ago
Exactly. C programmers don't define themselves as C programmers mainly. They are firmware developers, game developers or something else. That's where their real interest is.
criddell · 7 years ago
I've been to C++ conferences. If Scott Meyers, Herb Sutter, or Andrei Alexandrescu were on the ticket, I know it would easily be worth it.
DonHopkins · 7 years ago
It's like how they have hamburger restaurants, where you can ask for a hamburger without the pickle, instead of having hamburger without pickle restaurants. C is the burger, bacon, bun, lettuce, tomato, onions and sauces, and ++ is the pickle.
fishtoaster · 7 years ago
I dunno- I just got back from rubyconf where I both gave and watched talks on metaprogramming with no web focus at all. There was a great illustrated talk featuring lemurs that was just a walkthrough of rebuilding various enumerable methods with reduce. Other ones that I went to:

- a "how ruby's GC works" talk

- A deep dive into how a core dev found + fixed memory usage in ruby

- The unexpected pitfalls of sublassing certain std lib classes

- A new desktop graphics library

- Using ruby to operate an automatic wafflemaker

And these are just the ones I attended. I imagine railsconf is more web focused, but rubyconf doesn't seem like that at all.

klenwell · 7 years ago
A couple members of my team attended and we made a friendly wager before they attended: how many conference attendees would be primarily Rails developers?

We guessed respectively 25%, 50%, 75% (my guess).

Based on some very, very, very fuzzy sampling, they estimated it was somewhere around 50%.

Any guess yourself? Are you a Rails dev?

voltagex_ · 7 years ago
Offtopic: The waffle talk is listed at https://rubyconf.org/program#session-697 and it may have been recorded. These are my favourite kinds of talks at conferences.
wikwocket · 7 years ago
I get your analogy, but I think there are tons of hammer conferences.

There are conferences for most any language with wide adoption. There's also a Slack conference (not "TeamChatConf," but a "Slack Frontiers"). There's a GitHub conf (not "OpenSourceDevCon," but "GitHub Universe"). There is a Datadog conference, and so on and so on.

Maybe C just doesn't have one big company, or an ecosystem of smaller ones, that stand to benefit from gathering a bunch of C devs in one place.

sephware · 7 years ago
I think the core distinction is business-centric conferences vs developer-centric conferences. You've entirely named the former. Those are geared towards using platforms, and while developers are welcome, they aren't the entirety of the target audience, business professionals (eg MBAs) are just as first-class at those. But Ruby and Python and Swift conferences are going to entirely be geared towards developers.

I think the hammer analogy works better as conferences for building houses (business conferences) vs power tools (developer conferences) vs hand tools (no conferences), the distinction being how quickly can you get to a finished house. A power tool is something that can make houses quickly. A hand tool can be used quickly and efficiently by someone very experienced with them, but power tools can be used by almost anyone.

lolikoisuru · 7 years ago
C is not a product unlike everything you mentioned. Even most programming languages are products these days.
spydum · 7 years ago
I agree with your point but HammerFest 2019 sounds like a freaking blast. I think there is an underserved market there.
DonHopkins · 7 years ago
Sëë yä thërë düdë!

http://www.hammerfest.co.uk/

1morethrowaway2 · 7 years ago
There's http://www.hamerfest.nl/

It was a blast! And C actually came up in one conversation...

simias · 7 years ago
I agree. I'm mostly a C coder but I've been on the Rust train since pretty early and I remember being pretty confused when they started putting emphasis on the Rust branding with logos, the whole "rustacean" thing, conferences, forums etc... In hindsight I get it but originally there was a bit of a culture shock. I mean I don't wear C T-shirts and as far as I can tell there's not really a standard C logo either.

Maybe we should find a cool demonym like "c-lions" or "c-weeds" or whatever. Then we'll be able to ask the real questions like "is C webscale?".

Now I'm being a bit snarky but I genuinely understand why newer languages need branding nowadays, but in the case of C that ship has sailed long ago, you don't really need to introduce it, it's just C.

bitwize · 7 years ago
In order to avoid becoming a niche language nobody uses due to the network effects of C's ubiquity, and to achieve its goal of completely replacing C as much as is practically feasible, Rust needs buy-in and what economists call pre-committing. That is to say, it needs thought leaders to accept that Rust is the future and commit to building things in Rust, even when it doesn't make sense to do so in the current climate. Hence the heavy emphasis on marketing and RESF psyops.

> "c-lions"

C-lioning - n. Derailing a discussion by "politely" demanding evidence that obviously unsafe programming practices are unsafe and should never be used. E.g., "Can you tell me, exactly, why aliased pointers are bad?"

glitchc · 7 years ago
mjlee · 7 years ago
JetBrains got there already! https://www.jetbrains.com/clion/
dTal · 7 years ago
"C-monkey"
rumcajz · 7 years ago
I want a C t-shirt.
sbov · 7 years ago
I wish people would stop comparing programming languages to Hammers. It's a meaningless meme. Yes, they are tools, but comparing them to Hammers is 100% ridiculous.

A language is not a hammer. It is a tool. You know what else are tools? Chainsaws, databases, lasers, and tunnel boring machines that cost tens of millions of dollars.

There are plenty of conferences about tools.

smnplk · 7 years ago
You need to go further and accept that programming languages are also not tools.
kayoone · 7 years ago
i don't know, there are Golang, Python, Javascript, Ruby, PHP conferences and probably a lot more, so not sure if that argument is valid.
mikestew · 7 years ago
Of the ones you list, only one has a wide focus, IMO. Three of those will essentially be web development conferences, and I don't know what the hell people do with Go these days, but I'll bet it's mostly a handful of things. Python probably has broad enough usage and scope to counter what I said. The exception proves the rule. :-)
DonHopkins · 7 years ago
Hammer conferences typically get rolled up with Discuss conferences.

http://www.european-athletics.org/athletics-community/coache...

mar77i · 7 years ago
I C what you did there very well.
pluma · 7 years ago
I've been to JSConf EU a couple of times and it's certainly not a JavaScript conference "about building web sites".

Aside from the non-technical talks there were talks like

* how concurrency works in modern JS engines

* a talk about the upcoming BigInt type

* how fingerprinting attacks can circumvent privacy measures

* HTTP/2 Push

* a look at upcoming language proposals

* a retrospective on the JS build tool for React Native

* a talk about versioning

* experimental time travel debugging support in Firefox

* a talk about error handling

* a talk about module systems in JS

Etc etc.

Sure, many talks are either about general web technologies or about new APIs of the web platform, but there is usually also significantly overlap with backend or native mobile and IOT.

When I worked with Python I also went to meetups and followed conferences which always had a wide range of talks from web frameworks to automation, data science and system administration.

Likewise at a Ruby conference I'd also expect talks about tools like Chef or Puppet, which are only tangentially related to web development specifically.

So I don't think your portrayal of conferences is fair at all. "Why aren't there ${language} conferences?" seems like a very sound question, even if ${language} is used in a wide range of industries for very different purposes.

g4nt1 · 7 years ago
I very much like your answer. And I now realize why disliked PyCon that much. There are so much things that can be done in python that I don't necessarily care about. Language is not the most important thing, what I do with it is.

I much more prefer going to a conference about let's say, web dev or machine learning. Once at the conference, I might prefer going to a talk that use python because I know this language better.

hyperpallium · 7 years ago
C also isn't new. Did there used to be C conferences?

Deleted Comment

plg · 7 years ago
I tried going to one once but the address I had for the conference center pointed past the end of the street ?!?!?
aerovistae · 7 years ago
This is honestly a really, really good joke, I have to say.
ndesaulniers · 7 years ago
Not undefined behavior unless more than 1 element past end of the array. ;)
MaxBarraclough · 7 years ago
Unless dereferenced, of course.

The address is legal, just don't try to go there.

rickycook · 7 years ago
and off a bridge? sounds like a JS conference
Felz · 7 years ago
I can't resist.

C conference: Address is past the end of the street.

C++ conference: Reading the address requires working out an elaborate series of compile-time templates that finally resolves to the actual address. You go there to find that it's past the end of the street.

JS conference: The address is "the last place we held it". You attempt to figure out what that means, but you didn't attend last year. After some research, you find a copy of last year's invitation. Its address reads "the place where we always hold the conference". After more research and a bit of guess work, you finally arrive, but nobody else is there. You have a sinking feeling the conference wasn't in Uzbekistan after all.

TS conference: As JS, but the invitation includes a helpful explanation of how to find where "the last place we held the conference" is. Unfortunately, one of the explanations is wrong, and you arrive in Uzbekistan.

Java conference: To calculate this year's address, you must first go to a JavaConferenceFactory on the outskirts of town. Talk to the JavaConferenceFactoryManagerSingleton, and give him your JavaConferenceConfiguration. He can give you a JavaConference, which you can cast to a JavaConferenceImpl. The JavaConferenceImpl contains a JavaConferenceAddressLocator, which when passed a WorldMappingSystem can give you a JavaConferenceAddress.

Haskell conference: There is no conference. Holding one could cause side effects.

Go conference: The address is given in a simple, predictable format: interface{}.

Waterluvian · 7 years ago
Wasn't that the Apple conference?
ggreer · 7 years ago
Apparently there's not enough interest among those who write C. Back in 2012, Brandon Philips (CoreOS CTO & kernel contributor) tried valiantly to organize a C conference, but there weren't enough speakers and presentations.[1]

1. https://web.archive.org/web/20160304013703/http://www.cconf....

ndesaulniers · 7 years ago
Good question, but a majority of this post is links to cppcon videos. (I do appreciate the shoutout to LLVM).

I think the C community:

* Should have a C conference.

* Actually be more aggressive in adding features to the language. For example, there are some really great GNU C extensions that are long overdue be added to the standard. Compiler vendors should work with the standards bodies more, rather than shipping language extensions, compiler builtins, and various compiler plugins in isolation outside of standards bodies (because then codebases become tightly coupled to the compiler; ie. the Linux kernel).

ddevault · 7 years ago
I strongly disagree. C should is adding langauge features at a pace other languages could stand to emulate. C is stable, trusted, and supported everywhere for this very reason. Codebases should not be using extensions, and Linux is wrong to do so.
news_to_me · 7 years ago
> Codebases should not be using extensions, and Linux is wrong to do so.

Poppycock. Codebases should use any and all tools available to them to accomplish their goals, given the tradeoffs. Using non-standard language extensions is a tradeoff, and if it suits the Linux community and their goals, there's nothing wrong with that.

Conan_Kudo · 7 years ago
The problem with not allowing language extensions to be used is that it promotes the staleness of the language.

Just as human languages evolve as people use and adjust it, programming languages evolve as people start trying to change it to better suit their needs.

The difference with human languages and programming ones is that there's a relatively easy process to get everyone in sync on how it changes for programming languages. :)

I also agree with the grandparent comment that more features should be specified and incorporated into the C standard. The fact they exist and are in wide use says a lot all by itself.

ndesaulniers · 7 years ago
> C should is adding langauge features at a pace other languages could stand to emulate.

Remember the Vasa! ;)

> C is stable, trusted, and supported everywhere for this very reason.

See the sibling comment about C not being fully supported everywhere. As long as people continue to make proprietary compilers, there will be implementation deficiencies. That's orthogonal to the language itself.

> Codebases should not be using extensions,

Agree and disagree. Maybe "codebases should only use extensions when it's feasible to provide fallbacks" or something.

> and Linux is wrong to do so.

I'm not sure I agree. There are some worthwhile extensions IMO, which is why I made the point earlier that I think it's time to standardize them.

module0000 · 7 years ago
>> Codebases should not be using extensions, and Linux is wrong to do so.

Why? If you can improve the performance/security/stability of Linux by re-writing functionality without extensions, by all means do so(and send in a patch). Why is Linux "wrong" for this?

oneplane · 7 years ago
The main problem with that is there is no single C community.

Imagine trying to get ANSI C, Win32 C, GNU C and every flavor of embedded C together.

rickycook · 7 years ago
Early 2000s:

The main problem with that is there is no single JavaScript/HTML community.

Imagine trying to get IE, Netscape, Opera and every flavor of embedded HTML viewer together.

monocasa · 7 years ago
Seriously, check out TI's C++ support for their DSPs. Last time I checked they were so behind the curve they didn't even support templates.
type0 · 7 years ago
Even the functional language communities arrange joined conferences to learn and exchange ideas, so why can't C?
ndesaulniers · 7 years ago
Nonsense, that is the C community. They need to be put in a room together to sort out their differences. The differences exist due to communication breakdown which leads to divergence over time.

Deleted Comment

Narishma · 7 years ago
Why does C++ not have that problem? It too has many communities but they manage to go to the same conferences without any issues.
haberman · 7 years ago
C is effectively frozen in time, thanks largely to Microsoft's decision to deprioritize C support in favor of C++.

C99 is almost 20 years old and MSVC still doesn't fully support it. Forget about C11. If you're a C programmer who cares about portability, you stick with C89.

There's not a lot of point to having a conference about something that is stuck on a 30 year old standard.

gnulinux · 7 years ago
I think this is a very debatable claim. MSVC is an insignificant compiler in a lot of industries. In something like scientific computing, everything is written with gcc, clang and Intel on mind. Sure, you'll find some companies still using MSVC, but it's not industry standard any more and it's very unclear how an insignificant, outdated compiler can stop the progress of world's most fundamental programming language.
haberman · 7 years ago
C's strength is being the lingua franca of the bottom of the stack. I can believe that there are some applications that know a priori that they will never need to be portable to MSVC. But for any foundational open-source library, closing the door to MSVC is a high price to pay. Someone, sooner or later, will want to use the code on Windows. If you are zlib, ffmpeg, freetype, Lua, LuaJIT, sqlite, libpng, c-ares, OpenSSL, PostgreSQL, glib, gtk, or anything that aspires to be as widely used as these, you stay C89-compatible to support MSVC.
kevin_thibedeau · 7 years ago
MSVC is becoming less and less relevant. People are writing C99 and C11 and MSVC's insistence on breaking portability with modern codebases is incrementally marginalizing it as people switch to compilers that understand their standard compliant code.
pjmlp · 7 years ago
Another one that doesn't code on Windows.

It is called MSVC++ for a reason.

marssaxman · 7 years ago
Do people still care about MSVC outside whatever is left of the traditionalist Microsoft ecosystem?
vmsp · 7 years ago
But don't people, who compile C on Windows, usually compile it as C++? That means you in fact get access to some (most?) of C99.

Deleted Comment

varjag · 7 years ago
Noone cares about Microsoft except a dozen guys caught in the reservation^Wecosystem there who still haven't moved to .NET.
pantalaimon · 7 years ago
Why would you want to write windows applications in C to begin with?

Heck, if you have a C app and want to port it to windows, you are probably better of just using WSL.

mrpippy · 7 years ago
Related tweet from last week: https://twitter.com/krzyzanowskim/status/1062740353533513728

Observation: Before 2014, iOS conferences were iOS conferences and was mostly about how to use the frameworks. After 2014, iOS conferences renamed to Swift conferences and everyone tries to figure out how to use Swift - like this is the main pain point or what?

deminature · 7 years ago
In my experience, they're still about frameworks mostly, they just brand themselves as Swift conferences to indicate there isn't going to be any Objective-C oriented content presented, so people don't attend with the wrong expectation.

Swift-oriented content at a conference is also going to be popular, as unlike frameworks, it affects every developer, as compared to frameworks where only a percentage may use each one.

Apocryphon · 7 years ago
I wonder if there might still be new Objective-C content that could be presented for iOS development, or if everything is just Swift now.
saagarjha · 7 years ago
Swift is a complex language, and this allows for a lot more people to talk about how their programming paradigm is the best way to write Swift. It’s the same reason we often see articles like “extending Optionals” or “AutoLayout with a DSL” on Hacker News: Swift is so overwhelmingly used for iOS development that people seem to find it useful to specialize it in places where it designed to be general, and they love to tell other people about it.
zhobbs · 7 years ago
Probably useful for justifying costs to managers if your company is currently migrating to Swift, which is pretty common in iOS shops at the time (and now?)
svat · 7 years ago
It's interesting that many of the comments here (7 of 9 top-level comments currently) answer the question in the title, rather than respond to the blog post (which has some interesting points and a great list of relevant talks from conferences... starting to watch some of them right away).
brynet · 7 years ago
I believe it's mentioned, but BSD conferences are often a great place to find presentations that typically gravitate towards low level systems C programming.

OpenBSD has an events page with a list of past talks given by developers, along with slides, and if it exists, any video.

https://www.openbsd.org/events.html