Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You seem right. Every metric I can check says it is going downhill. Too bad, I used to go to the Clojure meetups in my area, I even had a talk about Clojure + Emacs.


Many reasons. S-expressions would be the least of my worries. Java is dying, not on the whole, but certainly in mindset of people who are picking new languages. It’s integration with OSs, which Clojure depends on, is arcane by today standards. Second, it’s tightly controlled by one person, and they happen to hate types. Similar to CoffeeScript, couple years after the language inception people figure out that they miss types. Adding them back in is super tough.

And third, abstractions have costs. There is no wide-spread popular LISP, and people should really ask themselves why. We have lots of code generation, and depend on it more and more. But it’s “simple” (or “primitive”). It’s usually one step. You can read the input, and you can read the output.

I’m starting to get a sense that macros are like currying. Elegant, beautiful, powerful. But net negative if your concern is to get lots of people to create software together.


Re macros, I had a similar thought this morning. Except for code instrumentation and boilerplate generation I've actually never found macros to be useful.

ADT DSLs + free monads or similar abstractions give you everything you need, in a more principled way.


Yeah, dying on SV startups maybe, that end up rewriting on Java if they ever manage to go big.


> Java is dying, not on the whole, but certainly in mindset of people who are picking new languages

Even as a whole it's slowing down heavily now, even Android is switching to Kotlin. The language is already not that trendy but Oracle's aggressive lawsuits is making it even worse.



I did not say that it's still not used heavily, just that it's slowing down. And C is the second on that list so I'm not sure I would believe this ranking, I have not seen much C jobs for a while now.


That‘s because you‘re only thinking of desktop applications, mobile applications and web stuff.

Embedded software is a vast market, and it‘s mostly C with a rising share of C++.


> Embedded software is a vast market

Is it really? IoT still isn't taking off much and the more powerful the machines are getting (so every year), the less people are going to use C for that only tiny segment people are still using it for.

Where I've used C on a microcontroller 10 years ago, you would likely use a cheap Android board nowadays.


Are you kidding me?

Look around your home. Right now. How many things have software in them?

How many things don‘t you see in your home? Everything in your home that doesn‘t include software has been manufactured and packaged.

My employer makes components for industrial automation. Have you ever thought about it? Nobody does, unless he has direct contact.

Building automation? Special machinery (huge presses or packaging machines). Whatever.

And re: your Android board: come back when your bricolage conforms to all kinds of requirements. Extended temperature range. Vibration. Electromagnetic compatibility (it‘s easy to accidentally broadcast in the naval emergency band). Etc. etc.


> Look around your home. Right now. How many things have software in them?

Not much as much as you think, apart from the routers, computers and phone, the only other thing I can think of is the dishwasher because it's half-recent. And I suspect the new ones just include a cheap Android board.

> And re: your Android board: come back when your bricolage conforms to all kinds of requirements. Extended temperature range. Vibration. Electromagnetic compatibility (it‘s easy to accidentally broadcast in the naval emergency band). Etc. etc.

I've worked on a company which manufactured their own card, that is much harder to do by yourself than buying a board which has been produced at millions of units where they solved all those issues directly. You can't compete with that easily. We had at least 5 iterations to solve the magnetic and heat issues, all of that comes for free in a mass-produced board.


Not much as much as you think, apart from the routers, computers and phone, the only other thing I can think of is the dishwasher because it's half-recent. And I suspect the new ones just include a cheap Android board.

I suspect you’re thinking at the wrong level. Your washing machine definitely does have software even if it’s not “recent”. When you press the buttons or turn the dials and it does stuff, even if it doesn’t have pretty graphics on the display, that’s software.

If you have a microwave, that has software, if you have a car that has a ton of software. Your car keys and your credit cards probably have software.


Battery charger. Camera. Camera lenses. TV. Blu-Ray player. HiFi/audio system. Radio. Dimmable lamps (probably). Electric toothbrush. Shaver. Possibly electric kettle. Blender. KitchenAid. Telephone (the wired one). Possibly door opener. Rice cooker. Garage door opener. Coffee machine. Toaster.


No, it doesn‘t come for free, because it simply fails all those requirements.

A developer board simply doesn‘t care about most of that, and if it does, to a much lower degree.

But we‘re done here, you‘re clearly not discussing in good faith. Stay in your web bubble if you want to.


You post a lot of great submissions to HN, but if you continue to be uncivil in comments we're going to ban you. This is the second time I've had to warn you in as many days. Not cool!


> But we‘re done here, you‘re clearly not discussing in good faith. Stay in your web bubble if you want to.

Thanks for your well detailed argumentation, that was convincing.


Please don't respond to a bad comment with another bad comment and thereby make this place even worse.

https://news.ycombinator.com/newsguidelines.html


sorry about that


"I have not seen much C jobs for a while now."

Because your anecdotal evidence is more accurate than what this list (which describes its methodology) is showing you?


Yeah it is, because their methodology is shitty: https://www.tiobe.com/tiobe-index/programming-languages-defi..., they just use the google popularity of "[name] programing", it's not a mesure of anything.

C jobs are very rare, and it's certainly not 14% of the programming jobs. Putting Java and C on the exact same level is a good sign something is wrong with what they are doing.


C jobs are certainly much more than 14%. Believe it or not.

Most software developers don‘t hang out in internet forums, commit to GitHub or write blog posts about JavaScript frameworks. They just do their day job and go home to their family.


C jobs are not rare at all. I think you are failing to consider large chunks of the tech sector that operate outside of the web.


> that operate outside of the web.

Outside of the web, mobile, desktop apps and even gaming (mostly C++) you mean? C is used mainly in low level computing and embed nowadays.


Yes. That is correct. I fail to see your point since that is a large chunk of tech.


I would not use "large" for that, it's certainly a chuck yes but is it comparable to web, mobile, gaming and desktop? I'm not really sure.


It most definitely is large. It's not just about all of the recent IoT devices. Firmware for all of the controllers on your motherboard is written in C. Most device drivers are still written in C. Many operating systems (linux) are written in C. Then you have all of the controllers in the devices in your home (e.g. microwave, oven, digital clock, entertainment devices, etc.)


Feel free to show me a link to a site with a better methodology to support your claim. Otherwise I'm going to continue believing you lack evidence to support said claim and are therefore wrong.


> Every metric I can check says it is going downhill.

I've seen a fair number of metrics that show it's losing market share on a proportional basis, but holding steady on an absolute basis. Have you seen anything to contradict this?


Shouldn't the proportion be your concern (assuming you actually have a horse in the race)? Steady absolute numbers basically indicates that nobody new is choosing it, which is just the first step to a decline of those absolute numbers.


What do you mean by absolute metric?


A metric based on raw participation numbers rather than one that is inherently relative to other languages.

E.g. the number of commits on Github vs percent of total commits on Github.


Can you list some of these metrics?


See my comment above re the Indeed.com API.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: