unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: catonano@gmail.com
To: Blake Shaw <blake@sweatshoppe.org>, Ricardo Wurmus <rekado@elephly.net>
Cc: Andrew Tropin <andrew@trop.in>, Josselin Poiret <dev@jpoiret.xyz>,
	Guix Devel <guix-devel@gnu.org>,
	GNU Guix maintainers <guix-maintainers@gnu.org>
Subject: Re: how to write services (was: Re: Teams)
Date: Thu, 16 Jun 2022 07:14:22 +0200	[thread overview]
Message-ID: <d63c9978ce200645c8ceb3e661fa6637bd905852.camel@gmail.com> (raw)
In-Reply-To: <CAKjmbcA+PNVCZRnp3oY+P4iAeu4pTvtwUMuVRYk_mFoJpO=jUQ@mail.gmail.com>

Il giorno mer, 15/06/2022 alle 17.01 +0000, Blake Shaw ha scritto:
> 
> Catonano:
> I think writing a home-service is much easier given that you don't
> need to do produce an entire system generation before you find out
> what you did wrong; 

I suspected something like this

This is why I hypotized that a gradual passage with a Home service
could be convenient

Ricardo, the general map of the concepts involved in conceiving a
service is useful

But in my toot I asked for something different

I asked for indications about the process (what magic to use in the
REPL)

if you prefer, I asked for something more menial

Which buttons do I have to push (metaforically) ?

As for the semantics involved in thinking a service, I feel I can work
them out myself (to some extent)

This should be covered in the cookbook

I see there's a package for Tryton (that's a relative of Odoo) and the
package definition for Tryton is quite sought after

In fact Tryton modules are not python modules and there's a patch
modifying how Tryton retrieves its modules in Guix

Yet there's no service for Tryton

I asked Hartmut (I remembered they were involved in this) and they
declared their surrender in writing services
(Here https://nerdculture.de/@kirschwipfel/108477739857485544 )

Maybe there's some cognitive friction about how to produce services ?

This reminds me of an argument about Haskell I read

Some "expert" haskellers are deeply involved in "plug ins" to the
compiler that actually change the language and many haskellers with a
lower level of proficiency are confused by this

And this hampers the Haskell field as a whole

Too bad I can't provide a pointer to this

My point being that I think this is a case of curse of knowledge
(mentioned here https://www.hillelwayne.com/post/learning-a-language/ )

I think the friction on how to write a service is not in the semantics
involved

It's more menial

As an blueprint for what I mean, you can think of Smalltalk, the
programming language

There a famous implementation of Smalltalk called Squeak

I played with Squeak myself, many years ago

That's how I learned object orientation ,really

The experience Squeak offers is NOT Posix based (thank God)

A GNU implementation of Smalltalk also exists and it's totally Posix
based (because of the unfortunate "GNU System" delusion)

Do you think the GNU Smalltalk would have been as effective in teaching
me object orientation ?

I honestly doubt it

yet the language is exactly the same

because the problem is not the language, that is something people CAN
work out themselves (roughly)

The problem is the experience

As I'm writing this, I noticed someone replied to my toot
(here
https://tines.spork.org/objects/a2ff7376-c9a2-4bbd-9307-a5374571edb4 )

as you can see, they also noticed a difference in the experience
between creating home services and system services

While you somewhat downplayed that

Now I want to be clear, here

In the past I have misunderstood some of your contributions about
macros in Guile (that I had asked about)

I came to terms with the fact that you're doing your best and in total
good faith, so I hope it's clear that's not what's happening today

But I also hope you can see why I could get a bit frustrated with your
reply

Guix is being successful, these days but that's an exception in the
free software world and more so in the GNU world

Guile is less exceptional in that it's suffering from its marginality
and it has been doing so for several years now

and I believe these cultural issues are part of why and they are
threatening the whole user freedom movement

Sorry if I went off on a tangent, I just feel a bit about this

> it just depends on if you need your service initialized at startup
> (system-services, globally defined and available prior to login)
> rather than at login (home-services, per-user/locally defined).
> 
> I'm not on Mastodon but feel free to send your service my way for
> some help, I'm still a beginner but a second pair of eyes is always
> nice to have.

That's very kind of you, thank you

I don't know if I'll ever attempt to write a service for Odoo

Or for Tryton

I have a job now (and it has to do with Odoo), I also train in a gym, I
like to spend the free time I have on the beach (as it's evident from
my presence on the fediverse)  so I don't know it's not like I have any
slots to assign to attempt this

It's just that if the _process_ to write a service (home or system) was
made explicit, I could have played with it in the few moments of grace



  parent reply	other threads:[~2022-06-16  5:17 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-04 12:07 Teams Ricardo Wurmus
2022-06-04 13:00 ` Teams Maxime Devos
2022-06-04 13:19 ` Teams Ekaitz Zarraga
2022-06-04 14:50 ` Teams Tobias Geerinckx-Rice
2022-06-04 15:52   ` Teams Maxime Devos
2022-06-04 15:56   ` Teams david larsson
2022-06-05  9:10   ` Teams pelzflorian (Florian Pelz)
2022-06-07  4:11     ` Teams Thiago Jung Bauermann
2022-06-05  8:19 ` Teams Josselin Poiret
2022-06-06 21:21   ` Teams Ludovic Courtès
2022-06-14 11:31   ` Teams Andrew Tropin
2022-06-14 18:52     ` Teams Blake Shaw
2022-06-15  6:19       ` how to write services (was: Re: Teams) catonano
2022-06-15 13:53         ` Ricardo Wurmus
2022-06-15 17:01           ` Blake Shaw
2022-06-15 17:32             ` Maxime Devos
     [not found]               ` <CAKjmbcA56WL8ude232fz_5_G9U2RfoNNf4gqMHu5tft5kMbjFQ@mail.gmail.com>
2022-06-15 22:04                 ` Maxime Devos
2022-06-15 22:13                 ` Maxime Devos
2022-06-15 22:28                 ` Maxime Devos
2022-06-15 23:20                   ` Blake Shaw
2022-06-16  8:27                     ` Maxime Devos
2022-06-16  5:14             ` catonano [this message]
2022-06-16  6:46               ` Ricardo Wurmus
2022-06-16 13:09               ` Brian Cully via Development of GNU Guix and the GNU System distribution.
2022-06-18 11:53                 ` how to write services indieterminacy
2022-06-18 12:23                   ` Maxime Devos
2022-06-18 13:33                     ` indieterminacy
2022-06-15 10:53       ` How to write a service (was: Re: Teams) catonano
2022-06-05  9:31 ` Teams Lars-Dominik Braun
2022-06-05  9:51 ` Teams zimoun
2022-06-05 10:00   ` Teams Julien Lepiller
2022-06-07 17:49   ` Teams Efraim Flashner
2022-06-05  9:51 ` Teams Andreas Enge
2022-06-09  4:39   ` Teams Eric Bavier
2022-06-05 10:30 ` Teams indieterminacy
2022-06-05 17:59 ` Teams Mathieu Othacehe
2022-06-06 21:26   ` Teams Ludovic Courtès
2022-06-06 14:12 ` Teams Maxim Cournoyer
2022-06-07  0:28 ` Teams Ryan Prior
2022-06-07 19:06 ` Teams Vagrant Cascadian
2022-06-08 21:30   ` Teams Ludovic Courtès
2022-06-09  2:21     ` Teams Thiago Jung Bauermann
2022-06-09 19:28 ` Teams Arun Isaac
2022-06-13 13:38   ` Teams Blake Shaw
2022-06-13 22:33     ` Teams raingloom
2022-06-21 15:21 ` Teams: first draft list zimoun
2022-06-21 17:28   ` bokr
2022-06-21 22:21     ` zimoun
2022-06-22  6:56       ` Efraim Flashner
2022-06-22 16:19         ` bokr
2022-06-22  7:59   ` Ricardo Wurmus
2022-06-22  9:19     ` zimoun
2022-06-22 12:30       ` Josselin Poiret
2022-06-22 13:10         ` Maxime Devos
2022-06-22 13:49     ` Ludovic Courtès
2022-06-22 14:18       ` Blake Shaw
2022-07-01 10:28       ` Ricardo Wurmus
2022-07-01 17:36         ` Liliana Marie Prikler
2022-07-01 19:08           ` Ricardo Wurmus
2022-07-03 13:04             ` Teams: please add yourself to etc/teams.scm.in Ricardo Wurmus
2022-07-03 14:51               ` Andreas Enge
2022-07-01 20:53   ` Teams: first draft list Leo Famulari

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d63c9978ce200645c8ceb3e661fa6637bd905852.camel@gmail.com \
    --to=catonano@gmail.com \
    --cc=andrew@trop.in \
    --cc=blake@sweatshoppe.org \
    --cc=dev@jpoiret.xyz \
    --cc=guix-devel@gnu.org \
    --cc=guix-maintainers@gnu.org \
    --cc=rekado@elephly.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).