monomon

joined 1 year ago
[–] monomon@programming.dev 7 points 6 months ago

Scary, there is a real danger for Bulgaria to go the same route, after brain drain rate at least reversed in the last years. Here's to hoping

[–] monomon@programming.dev 1 points 6 months ago

Just thought of an example. If you want to, you can open a file at macroexpansion time, and generate code based on its contents. There are no limits, pretty much.

[–] monomon@programming.dev 1 points 6 months ago (1 children)

Both languages you mentioned i highly recommend.

Lisp macros are another level, because they are part of the language - you can use all language primitives to transform forms however you like.

Haskell will give you a different view of programming. It's beautiful and concise, and implements all sorts of academic research in languages. Ocaml is similar in many respects.

[–] monomon@programming.dev 5 points 6 months ago (3 children)

Lisp macros.

But I'd be curious of the possibilities of generating code with tree sitter.

[–] monomon@programming.dev 2 points 6 months ago

Ditto. Pity that a "renaissance" education is not in very high regard nowadays (or I'm not aware). It's where a lot of innovation happens, too.

[–] monomon@programming.dev 1 points 6 months ago

Yeah all this free energy waiting to be harvested

[–] monomon@programming.dev 2 points 6 months ago (1 children)

Yes, it is. I find navigating s-exps way easier. Also it has some lispy features, and macros.

[–] monomon@programming.dev 2 points 6 months ago* (last edited 6 months ago) (3 children)

Nice. I am working on some improvements to parenscript, this might come in handy.

[–] monomon@programming.dev 3 points 6 months ago

Not exactly the question you were asking, but there are also SDKs for closed source software. You can get a library, or just an interface definition you adapt to. It can be frustrating when you cannot peek a layer deeper into the system, and takes head banging, but it's a thing. Often, if you are a significant enough client, you can get consulting or guidance from the devs at the other end.

Nowadays a lot more business software is open source (at least partially), because it increases adoption. People found that when you remove the stops, others will flock and build stuff around.

[–] monomon@programming.dev 1 points 7 months ago* (last edited 7 months ago)

I wanted to make something similar for my mom's garden, but yours look way better than what I had in mind. Thanks.

[–] monomon@programming.dev 5 points 7 months ago

Another reason to use libraries is communication. Would you prefer to receive a GitCommitResult in your code, or have to parse the stdout of the subprocess? If you need complex communication with the other program, then it needs to provide rpc or some other form of inter-process communication. A library avoids this issue.

[–] monomon@programming.dev 2 points 7 months ago

Great answer. I am also a fresh "lead" and am struggling with some aspects, but as you said, clarifying the direction and working together are the most important ones. Pairing also allows you to explain things in more depth, which aids understanding.

We don't do complex planning, usually have a few meetings and we start prototyping. So that's been a non-issue luckily as a lead. Detailed estimation can be really exhausting and takes a toll on the team.

view more: ‹ prev next ›