@david@feddit.uk
link
fedilink
16
edit-2
1Y

Elm (for frontend). https://elm-lang.org/

Nothing is as easy to refactor, maintain, add new features to, work with after a gap, nothing else is as crashless and rock solid.

No compiler is a fast, friendly, helpful and insightful. Seriously. You don’t wait for the compiler. It’s instant even on huge code bases. And the resulting output outperforms other major frameworks.

Its syntax is weird at first (even stranger than python) and the autoformatter is mad keen on blank lines but after a while it’s just so clear and easy to follow.

You have to let go of your object oriented mindset and stop trying to turn everything into objects and components but everything I hated about maintaining old code evaporated once I did. I used to believe that objects detangled code, I don’t know why I continued to believe that despite the evidence, because apart from pretty small and simple things, OO code gets extremely tangled. Elm is absurdly easy to refractor, so you just do.

It’s genuinely nice to add new features to old code, something I’ve never experienced before in a few decades of programming.

The elm slack is also a very helpful place indeed and you usually get a lot of support pretty quickly.

Adding the link to their front page, I see they call it “A delightful language for reliable web applications” and the first claim is “no runtime exceptions”. I remember thinking that was marketing BS but being intrigued by the bold claim. A few years later and I can honestly say that that accurately describes my experience.

These last few years I’ve rediscovered the joy of coding.

@christophski@feddit.uk
link
fedilink
English
61Y

I’ve literally never heard of this before. Are there any major projects which use this?

https://github.com/jah2488/elm-companies Vendr use it too (didn’t spot them in the list) https://www.vendr.com/

Mr. Satan
link
fedilink
81Y

Whatever gets the job done 🤷‍♂️

huntrss
link
fedilink
121Y

Rust and Zig are currently my favorite languages.

debounced
link
fedilink
21Y

Zig is really starting to grow on me, it’s basically an unfucked C (screw you, macros) and you can translate C into Zig code…and it has comptime, very nice! I don’t have the patience for Rust in my hobby projects and the standalone-ness of Zig is perfect for embedded/systems programming. it definitely needs to mature more before the masses start taking it seriously, but goddamn it’s nice to code in.

JS/TS cause it’s my job and easy quite fast to write code in it, so it’s good for quick prototypes (or when I want to go dirty). Rust for when I want to write something actually good. It has a better ecosystem, building tools, and the DX is much better compared to C++ which is just an eldritch clusterfuck where dreams die

Postscript. RPN plus LIFO stack makes it easy to understand

Swift. Mostly because it’s by far what I’m most familiar with. Two things come to mind for what I most like about it. 1. Progressive disclosure: I found learning Swift to be simple since I didn’t have to directly concern myself with advanced features, but as I learned more I could take advantage of these more advanced features. 2. Clarity: I find Swift far more readable than most other languages. I think this is a combination of language features (argument labels for example) and consistency across the standard library and popular third party libraries. I think Swift finds a good middle ground between brevity and expressiveness; there’s never too much boilerplate to write, but the code is usually fairly self documenting.

🐍🩶🐢
link
fedilink
English
101Y

C# is my happy place. Started doing python more over bash scripts for complicated stuff and I like it. I mostly use Java for work and my opinion of it depends on the how much extra effort I had to spend doing something I could have done in C# in a few minutes. Otherwise it has some nice features and project Panama has been a game changer.

For me it’s the exact opposite: Java is my happy place, especially since v17. Due to my job I got started with C# a few months ago and it has been a pleasent experience to say the least. I need to do a hobby project to explore things I can’t do at work and then I might be able to let go of some Java-isms that still creep into it.

C++, I am a library developer with some embedded experience. I can easily interface with c libs and expose my lib with a c interface. With clang, static analysis catches most bugs before runtime. Everything I write can be compiled nearly anywhere with very little dependencies required. Excellent IDE and LSP support with a ton of documentation on the language features available (admittedly, there are a lot). The standard library is gigantic, useful, and well documented. It is used everywhere, so resources and example source code in C++ are very easy to come by. Project configuration (via CMake) is extremely powerful and expressive (though not technically C++).

Some languages have some of the elements I listed, but no other language has them all.

z3rOR0ne
link
fedilink
11Y

If you don’t mind throwing your two cents my way, what’s a good intro to C±± book for those who already have a basic understanding of C?

A tour of C++ by Stroustrup, the latest edition. It’s short but good.

I would also mention support for third-party compiler cache systems. Install something like ccache, set a couple of flags in the CMake project, and your whole project can now reuse build artifacts with barely no CPU load.

Paranoid Factoid
link
fedilink
English
11Y

deleted by creator

Python! Although I’ve been recently working on a bigger frontend project in TypeScript and I’ve grown to like it… Wouldn’t use them for all the same purposes though. Right tool for the job and so on…

I’m a tech and not a serious programmer but I really like scripting with bash. It’s an easy way to automate and program tasks while also manipulating data.

For example, I’ve automated reports for my work and made lots of screen scraping scripts.

It’s my go to for anything. I’ve recently started to learn python but often catch myself thinking it would be easier to accomplish most of what I want with a bash script.

And my least favorite has to be Tcl. It’s one of the first serious languages I “learned”, because eggdrops in the 90ies, and I still don’t like it.

It used to be C++ but I got tired of being a language lawyer over time. Rust is my current favorite since it does the language lawyering for me, but it’s not a strong favorite. I’m waiting for Zig to hit 1.0 (which will be a while) since it hits a sweet spot for me.

For getting actual stuff done: Rust For playing around: Uiua or BQN

Cyclohexane
link
fedilink
01Y

Never heard of the last two. Can you tell us more?

BQN is a newer array based language (similar to APL) where you manipulate arrays with different functions and modifiers and compose the modifiers with more modifiers (combinators). Uiua is the same but instead of combinatorics you have a stack that you can manipulate, so it’s a stack based, array oriented language. Here is a nice video about Uiua, and here is a video comparing the two.

I love Pharo :) All the power of a Smalltalk for the 21 century, a small but very nice community, decent library support (but not huge), and a good FFI interface when this is not enough.

Cyclohexane
link
fedilink
11Y

What would be the appeal of small talk, or a smalltalk-like language?

@0x0@programming.dev
link
fedilink
English
21Y

Short answer: C.

Long answer: depends on the task.

Longer answer: bash for scripting in general, kotlin for android, C++ 'cos i have to maintain it but it’s far from favorite, PHP if i were to do web backends. My to-learn list includes COBOL, Ada and maybe Rust (waiting for all the hype and evangelists to die down a bit). Something functional like Erland or Scala would be interesting just to fuck around with the brain a bit.

Any particular goals with Ada? Had an academic curiosity for a few years but never used it in earnest.

That’s pretty much it: academic curiosity.

Create a post

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person’s post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you’re posting long videos try to add in some form of tldr for those who don’t want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



  • 1 user online
  • 1 user / day
  • 1 user / week
  • 1 user / month
  • 1 user / 6 months
  • 1 subscriber
  • 1.21K Posts
  • 17.8K Comments
  • Modlog