Searching txt.sour.is

Twts matching #c
Sort by: Newest, Oldest, Most Relevant

Une transition énergique vers le pas d’énergie du tout
Jadis, les fiers Gaulois (dont certains extrémistes chuchotent qu’ils seraient nos ancêtres) avaient peur que le ciel ne leur tombe malencontreusement sur la tête. Quelques millénaires plus tard, la Science™ aidant, ces superstitions évidemment ridicules se sont évaporées et ne reste plus que la douce réalité de la programmation gouvernementale rigoureuse. C’est d’ailleurs grâce à […] ⌘ Read more

⤋ Read More

Bientôt Paris sous tutelle ? Puis ensuite, la France ?
Le vendredi, c’est poisson et la morue en est un excellent qu’on peut par exemple déguster en brandade. Sans rapport aucun, signalons qu’Anne Hidalgo fait actuellement parler d’elle alors que la ville dont elle a la charge serait en très fâcheuse posture budgétaire. Il est vrai que la situation économique du pays et l’inflation galopante […] ⌘ Read more

⤋ Read More

Dérives sectaires : n’oubliez pas la plus grandes des sectes
La stupéfaction est totale : on apprenait il y a quelques jours que la France, pourtant pays du miel et du lait, serait le terreau fertile à l’apparition de certaines sectes et autres groupuscules louches à “caractère sectaire”. C’est en tout cas ce que s’est époumoné à dire la mission interministérielle dédiée, la Miviludes, dans un […] ⌘ Read more

⤋ Read More
In-reply-to » @movq yeah.. i rewrote it a few times because i thought there was something breaking.. but was mistaken though now i am seeing a weird cache corruption.. that seems to come and go. Media

I have found the issue with this very subtle bug.. the cache was returning a slice that would be mutated. The mutation involved appending an item and then sorting. because the returned slice is just a pointer+length the sort would modify the same memory.

          CACHE         Returned slice          
original: [A B C D]     [A B C D]
add:      [A B C D] E   [A B C D E]
sort:     [E A B C] D   [A B C D E]

fix found here:
https://git.mills.io/yarnsocial/yarn/pulls/1072

⤋ Read More
In-reply-to » @movq yeah.. i rewrote it a few times because i thought there was something breaking.. but was mistaken though now i am seeing a weird cache corruption.. that seems to come and go. Media

I have found the issue with this very subtle bug.. the cache was returning a slice that would be mutated. The mutation involved appending an item and then sorting. because the returned slice is just a pointer+length the sort would modify the same memory.

          CACHE         Returned slice          
original: [A B C D]     [A B C D]
add:      [A B C D] E   [A B C D E]
sort:     [E A B C] D   [A B C D E]

fix found here:
https://git.mills.io/yarnsocial/yarn/pulls/1072

⤋ Read More

Le suicide par écologisme
Il faut que les choses soient claires : l’empreinte carbone qu’il s’agit de réduire, c’est vous ! Et c’est tellement vrai, tellement évident qu’une récente tribune du Monde revient sur ce qui est maintenant un but affiché de l’écologie de combat, à savoir la réduction active de l’Humanité. Peu importe que les dernières projections raisonnables montrent une […] ⌘ Read more

⤋ Read More

Panier-Runacher : Sobriété bien ordonnée commence par les autres
Le vendredi, c’est traditionnellement poisson. Ce jour-ci, ce sera du Ordralfabétix, c’est-à-dire pourri, et par la tête comme il se doit. La surprise est totale : on apprend par deux sources, Investigate et Disclose, que l’actuelle ministre de la transition énergétique, Agnès Pannier-Runacher, est directement liée par des intérêts financiers et familiaux avec la seconde compagnie […] ⌘ Read more

⤋ Read More

Comment continuer à voir Rumble en France ?
Encore une fois, l’État français sombre dans le ridicule et la tentative de censure la plus vile. On apprend que le site de vidéo en lignes Rumble n’affiche plus qu’un petit panneau laconique pour les visiteurs provenant de la France. C’était une étape sinon prévisible du moins logique après les derniers articles de la presse […] ⌘ Read more

⤋ Read More

RT by @mind_booster: Dear public bodies, business, & politicians: “incremental change is no longer an option: broad-based economy-wide transformations are required to avoid closing the window of opportunity to limit global warming to well below 2°C, pref. 1.5°C. Every fraction of a degree matters.”
Dear public bodies, business, & politicians: “incremental change is no longer an option: broad-based economy-wide transformations are required to avoid closing the window of opportunity to limit global warming to w … ⌘ Read more

⤋ Read More

Au moins Sandrine Rousseau échappera au sentiment d’insécurité
Ce sont des tombereaux de menaces par internet qui s’abattent sur une élue de la République. « C’est hyper-violent, on ne sait pas comment elle tient » aurait déclaré l’entourage de l’inénarrable Sandrine Rousseau, dont le mandat de député EELV semble lui avoir donné une tribune permanente pour le militantisme écoféministe le plus débridé, ce qui aurait […] ⌘ Read more

⤋ Read More

Et un chargeur unique pour les gouverner tous
Vous ne l’avez probablement pas entendu (ou pas assez) mais tout un continent vient de pousser un « ouf » de soulagement : enfin, les chargeurs de smartphone vont être standardisés en Union Européenne ! C’est une véritable victoire que vient ici de signer le Parlement européen en imposant le chargeur unique pour smartphones d’ici l’automne 2024 : partant du […] ⌘ Read more

⤋ Read More

Électricité : « Chérie, je crois que ça va couper ! »
Les clowneries de nos ministres s’étaient largement déployées pendant la crise sanitaire, et n’avaient commencé à se calmer qu’avec l’agacement visible des foules devant la multiplication artificielle du nombre de vagues, de cas et maintenant de picouses magiques. Avec la crise énergétique, c’est le retour de la clownerie industrielle et planifiée, dont le côté grotesque […] ⌘ Read more

⤋ Read More

“Para Portugal, […] seria necessário garantir uma redução de emissões de pelo menos 61% até 2030 relativamente aos níveis de 2005, em vez dos atuais 55% na Lei de bases do Clima, para alinhar o país com a meta de 1,5°C”
“Para Portugal, […] seria necessário garantir uma redução de emissões de pelo menos 61% até 2030 relativamente aos níveis de 2005, em vez dos atuais 55% na Lei de bases do Clima, para alinhar o país com a meta de 1,5°C”

[nitter.net/ZEROasts/status/1575415098352586760#m](https://nitter.n … ⌘ Read more

⤋ Read More

Même squatté, entretenez votre bien et oubliez vos droits de propriétaire
La façon dont le droit de propriété est interprété par les différentes cours de justice de la République française ne cessent d’amuser la galerie et c’est sans surprise que des affaires défrayent régulièrement la chronique. Ainsi, dernièrement, on apprend que même occupé illégalement, votre logement doit être entretenu. Eh oui m’ame Ginette, même lorsque votre […] ⌘ Read more

⤋ Read More

Élisabeth Borne lance un nouveau (rantan)plan vélo !
Le temps passe vite mais pas assez pour tout oublier. C’est ainsi qu’on se souvient d’il y a un peu plus d’un an, une certaine Elisabeth Borne lançait avec brio un premier plan vélo qui permettait enfin à chaque Français d’entrer – en pédalant – dans le XXIème siècle. Pour parfaire les résultats déjà flamboyants […] ⌘ Read more

⤋ Read More

Réforme des retraites ou rafistolage de circonstances ?
Mais puisqu’on vous dit que Macron, c’est Le Grand Réformateur ! Puisqu’on vous dit qu’il n’a pas arrêté de réformer, d’affûter avec habileté la France pour la prochaine décennie ! Les petits dérapages budgétaires n’y changeront rien : les réformes sont sur des rails, elles passeront. Quoi qu’il en coûte. C’est sans doute dans cet esprit que l’actuel […] ⌘ Read more

⤋ Read More

working with c++, windows, cmake and wxwidgets reminded me on why I want to learn more rust. rust and crates makes it really easy to get up and running, crossplatform. scrapping what I did today, I’ll start over and force my self to learn rust.

⤋ Read More

Économisez, économisez, économisez, il en restera bien quelque chose !
Le gouvernement est un petit malin et comme d’habitude, il a tout prévu : alors même que les températures extérieures ne sont pas encore problématiques, il sent bien que les prochaines semaines pourraient poser quelques soucis. C’est pour cela qu’il a dépêché la plus affûtée de ses membres pour lancer une belle campagne de propag d’information […] ⌘ Read more

⤋ Read More

Le plan se déroule comme prévu, c’est-à-dire mal pour le peuple
Comme le disait régulièrement Hannibal Smith, il n’y a rien de tel qu’un plan qui se déroule sans accrocs et celui qui consiste à transformer à grands coups de pieds au derrière la riche société occidentale en société pauvre et désorganisée semble porter ses fruits : ça se transforme de plus en plus. Dans cette « grande […] ⌘ Read more

⤋ Read More

L’absolue nécessité de la peur
Alors que l’automne n’est même pas encore entamé, tout le monde semble vouloir parler déjà d’hiver. À commencer bien sûr par nos élites qui nous rappellent, par leur incroyable talent prévisionniste, que gouverner c’est prévoir, vous allez voir ce que vous allez voir. D’ailleurs, on a vu : ayant su prévoir – avec un brio inégalé […] ⌘ Read more

⤋ Read More

Une presse française lâche et paresseuse
Ah, finalement, qu’il est doux d’être journaliste en France dans un journal de révérence ! Jadis, c’était un travail fatigant, voire stressant et parfois même risqué : il fallait aller chercher l’information directement sur le terrain et la corroborer le carnet de notes à la main. Certains événements pouvaient impliquer de mettre sa vie en danger ; et […] ⌘ Read more

⤋ Read More

C’est la rentrée, alors faites confiance au gouvernement !
Voilà, c’est dit ! Cet hiver sera rude : on va se cailler les miches mais finalement, cela permettra à tous de prendre de bonnes résolutions sur le chemin de la Sobriété Énergétique, de goûter au plaisir des douches froides, des repas crus et des longs trajets en vélo sous la pluie, la neige et les missiles […] ⌘ Read more

⤋ Read More
In-reply-to » Progress! so i have moved into working on aggregates. Which are a grouping of events that replayed on an object set the current state of the object. I came up with this little bit of generic wonder.

(cont.)

Just to give some context on some of the components around the code structure.. I wrote this up around an earlier version of aggregate code. This generic bit simplifies things by removing the need of the Crud functions for each aggregate.

Domain Objects

A domain object can be used as an aggregate by adding the event.AggregateRoot struct and finish implementing event.Aggregate. The AggregateRoot implements logic for adding events after they are either Raised by a command or Appended by the eventstore Load or service ApplyFn methods. It also tracks the uncommitted events that are saved using the eventstore Save method.

type User struct {
  Identity string ```json:"identity"`

  CreatedAt time.Time

  event.AggregateRoot
}

// StreamID for the aggregate when stored or loaded from ES.
func (a *User) StreamID() string {
	return "user-" + a.Identity
}
// ApplyEvent to the aggregate state.
func (a *User) ApplyEvent(lis ...event.Event) {
	for _, e := range lis {
		switch e := e.(type) {
		case *UserCreated:
			a.Identity = e.Identity
			a.CreatedAt = e.EventMeta().CreatedDate
        /* ... */
		}
	}
}
Events

Events are applied to the aggregate. They are defined by adding the event.Meta and implementing the getter/setters for event.Event

type UserCreated struct {
	eventMeta event.Meta

	Identity string
}

func (c *UserCreated) EventMeta() (m event.Meta) {
	if c != nil {
		m = c.eventMeta
	}
	return m
}
func (c *UserCreated) SetEventMeta(m event.Meta) {
	if c != nil {
		c.eventMeta = m
	}
}
Reading Events from EventStore

With a domain object that implements the event.Aggregate the event store client can load events and apply them using the Load(ctx, agg) method.

// GetUser populates an user from event store.
func (rw *User) GetUser(ctx context.Context, userID string) (*domain.User, error) {
	user := &domain.User{Identity: userID}

	err := rw.es.Load(ctx, user)
	if err != nil {
		if err != nil {
			if errors.Is(err, eventstore.ErrStreamNotFound) {
				return user, ErrNotFound
			}
			return user, err
		}
		return nil, err
	}
	return user, err
}
OnX Commands

An OnX command will validate the state of the domain object can have the command performed on it. If it can be applied it raises the event using event.Raise() Otherwise it returns an error.

// OnCreate raises an UserCreated event to create the user.
// Note: The handler will check that the user does not already exsist.
func (a *User) OnCreate(identity string) error {
    event.Raise(a, &UserCreated{Identity: identity})
    return nil
}

// OnScored will attempt to score a task.
// If the task is not in a Created state it will fail.
func (a *Task) OnScored(taskID string, score int64, attributes Attributes) error {
	if a.State != TaskStateCreated {
		return fmt.Errorf("task expected created, got %s", a.State)
	}
	event.Raise(a, &TaskScored{TaskID: taskID, Attributes: attributes, Score: score})
	return nil
}
Crud Operations for OnX Commands

The following functions in the aggregate service can be used to perform creation and updating of aggregates. The Update function will ensure the aggregate exists, where the Create is intended for non-existent aggregates. These can probably be combined into one function.

// Create is used when the stream does not yet exist.
func (rw *User) Create(
  ctx context.Context,
  identity string,
  fn func(*domain.User) error,
) (*domain.User, error) {
	session, err := rw.GetUser(ctx, identity)
	if err != nil && !errors.Is(err, ErrNotFound) {
		return nil, err
	}

	if err = fn(session); err != nil {
		return nil, err
	}

	_, err = rw.es.Save(ctx, session)

	return session, err
}

// Update is used when the stream already exists.
func (rw *User) Update(
  ctx context.Context,
  identity string,
  fn func(*domain.User) error,
) (*domain.User, error) {
	session, err := rw.GetUser(ctx, identity)
	if err != nil {
		return nil, err
	}

	if err = fn(session); err != nil {
		return nil, err
	}

	_, err = rw.es.Save(ctx, session)
	return session, err
}

⤋ Read More
In-reply-to » Progress! so i have moved into working on aggregates. Which are a grouping of events that replayed on an object set the current state of the object. I came up with this little bit of generic wonder.

(cont.)

Just to give some context on some of the components around the code structure.. I wrote this up around an earlier version of aggregate code. This generic bit simplifies things by removing the need of the Crud functions for each aggregate.

Domain Objects

A domain object can be used as an aggregate by adding the event.AggregateRoot struct and finish implementing event.Aggregate. The AggregateRoot implements logic for adding events after they are either Raised by a command or Appended by the eventstore Load or service ApplyFn methods. It also tracks the uncommitted events that are saved using the eventstore Save method.

type User struct {
  Identity string ```json:"identity"`

  CreatedAt time.Time

  event.AggregateRoot
}

// StreamID for the aggregate when stored or loaded from ES.
func (a *User) StreamID() string {
	return "user-" + a.Identity
}
// ApplyEvent to the aggregate state.
func (a *User) ApplyEvent(lis ...event.Event) {
	for _, e := range lis {
		switch e := e.(type) {
		case *UserCreated:
			a.Identity = e.Identity
			a.CreatedAt = e.EventMeta().CreatedDate
        /* ... */
		}
	}
}
Events

Events are applied to the aggregate. They are defined by adding the event.Meta and implementing the getter/setters for event.Event

type UserCreated struct {
	eventMeta event.Meta

	Identity string
}

func (c *UserCreated) EventMeta() (m event.Meta) {
	if c != nil {
		m = c.eventMeta
	}
	return m
}
func (c *UserCreated) SetEventMeta(m event.Meta) {
	if c != nil {
		c.eventMeta = m
	}
}
Reading Events from EventStore

With a domain object that implements the event.Aggregate the event store client can load events and apply them using the Load(ctx, agg) method.

// GetUser populates an user from event store.
func (rw *User) GetUser(ctx context.Context, userID string) (*domain.User, error) {
	user := &domain.User{Identity: userID}

	err := rw.es.Load(ctx, user)
	if err != nil {
		if err != nil {
			if errors.Is(err, eventstore.ErrStreamNotFound) {
				return user, ErrNotFound
			}
			return user, err
		}
		return nil, err
	}
	return user, err
}
OnX Commands

An OnX command will validate the state of the domain object can have the command performed on it. If it can be applied it raises the event using event.Raise() Otherwise it returns an error.

// OnCreate raises an UserCreated event to create the user.
// Note: The handler will check that the user does not already exsist.
func (a *User) OnCreate(identity string) error {
    event.Raise(a, &UserCreated{Identity: identity})
    return nil
}

// OnScored will attempt to score a task.
// If the task is not in a Created state it will fail.
func (a *Task) OnScored(taskID string, score int64, attributes Attributes) error {
	if a.State != TaskStateCreated {
		return fmt.Errorf("task expected created, got %s", a.State)
	}
	event.Raise(a, &TaskScored{TaskID: taskID, Attributes: attributes, Score: score})
	return nil
}
Crud Operations for OnX Commands

The following functions in the aggregate service can be used to perform creation and updating of aggregates. The Update function will ensure the aggregate exists, where the Create is intended for non-existent aggregates. These can probably be combined into one function.

// Create is used when the stream does not yet exist.
func (rw *User) Create(
  ctx context.Context,
  identity string,
  fn func(*domain.User) error,
) (*domain.User, error) {
	session, err := rw.GetUser(ctx, identity)
	if err != nil && !errors.Is(err, ErrNotFound) {
		return nil, err
	}

	if err = fn(session); err != nil {
		return nil, err
	}

	_, err = rw.es.Save(ctx, session)

	return session, err
}

// Update is used when the stream already exists.
func (rw *User) Update(
  ctx context.Context,
  identity string,
  fn func(*domain.User) error,
) (*domain.User, error) {
	session, err := rw.GetUser(ctx, identity)
	if err != nil {
		return nil, err
	}

	if err = fn(session); err != nil {
		return nil, err
	}

	_, err = rw.es.Save(ctx, session)
	return session, err
}

⤋ Read More

“we looked at how damaging the journey of overshooting the 2°C temperature target would be,
[…]
The results suggest that a temporary overshoot would cause waves of irreversible extinctions and lasting damage to tens of thousands of species”
https://theconversation.com/climate-crisis-even-temporarily-overshooting-2-c-would-cause-permanent-damage-to-earths-species-185929?utm_source=twitter&utm_medium=bylinetwitterbutton

“we looked at how damaging the journey of overshooting the 2°C temperature target would … ⌘ Read more

⤋ Read More

Pour une poignée de semaines
Ah sapristi, c’était trop beau pour durer ! Mais c’était prévisible, cela arrive tous les ans à la même époque : des *£*#{] de vacances. Il est temps pour moi de mettre ce blog en pause pour quelques semaines, et laisser tomber l’actualité et son commentaire : compte-tenu du rythme d’enfer que les politiciens actuels nous font subir, […] ⌘ Read more

⤋ Read More

Mais que fait Obélix ?
Par Edmond Dantès Depuis plusieurs années, les discussions de fin de soirée ont pris des allures de débriefing médical dans un centre de soins palliatifs. On ne refait plus le monde, on regarde comment il meurt. Parfois, ça ressemble à une discussion entre experts analysant une malfaçon de charpente industrielle. L’un soutient que c’est telle […] ⌘ Read more

⤋ Read More

France : le délitement s’accélère
Chaque jour qui passe – et à plus forte raison lorsque c’est un jour de forte chaleur – est une ode, que dis-je, un poème raffiné à l’organisation minutée et cadencée de nos infrastructures de transport, notamment en Île-de-France et en particulier à Paris. Il ne se passe pas une journée sans qu’on doive louer […] ⌘ Read more

⤋ Read More

Cette si discrète colère batave
Décidément, la presse grand public choisit ses sujets et sans prendre beaucoup de risques, on peut déjà parier que les prochains jours verront se développer une titraille toute en finesse sur le thème du réchauffement climatique et de l’abomination que constituent de fortes chaleurs en plein mois de juillet. C’est pratique, cela permet d’éviter consciencieusement […] ⌘ Read more

⤋ Read More

GitHub enables the development of functional safety applications by adding support for coding standards AUTOSAR C++ and CERT C++
GitHub is excited to announce the release of CodeQL queries that implement the standards CERT C++ and AUTOSAR C++. These queries can aid developers looking to demonstrate ISO 26262 Part 6 process compliance. ⌘ Read more

⤋ Read More

Erlang Solutions: Modern Software Engineering Principles for Fintechs by Daniel Pilon at SumUp
Daniel Pilon is a Software Engineering Manager at SumUp. Since 2007 he has worked across several industries before arriving in the fintech space. He has experience in many programming languages, such as C#, Java and JavaScript but since discovering Elixir and the power of functional programming a few years ago, he hasn’t looked back.

Right now he is building SumUp Bank, a complete digital banking solution … ⌘ Read more

⤋ Read More

Nix 2.8.0 released
We’re pleased to announce the availability of Nix 2.8.0. It will be
available from NixOS -\
Getting Nix / NixOS.

Here are the release notes:

  • New experimental command:nix fmt, which applies a
    formatter defined by the formatter.<system></system> flake
    output to the Nix expressions in a flake.

  • Various Nix commands can now read expressions from standard input
    using--file -.

  • New experimental builtin function
    builtins.fetchClosure that c … ⌘ Read more

⤋ Read More

second, there’s predictions. a prediction is Done when it’s made. you could add comments, explanations, models &c, but the prediction can be Done and stand there on its own. (there is a slight problem with the fact that predictions need to be updated over time, though, so there is some Piling there as well).

⤋ Read More

Yesterday I ordered a blanket for an incredible amount of money, more precisely a weighted blanket. Now I hope that it will be delivered quickly and that it really has the positive effects that are being advertised. Although I can usually fall asleep quickly in the evening with a sleeping mask and earplugs, I never manage to sleep through the night, I am never woken up by the alarm clock because I wake up earlier. In the morning I feel tired almost every day, sometimes even the whole day, which then also limits my c … ⌘ Read more

⤋ Read More

Annotate PDFs on Linux
This post is about a GUI tool called pdfrankestein that
fills a gap on mostly Linux machines where a powerful and easy to use
PDF annotator does not exist.

Adobe Acrobat® on Windows and Mac allow you to add text, drawings and
signatures to PDF documents. This is useful when filling forms or
marking notes to send back to someone. Such a tool with similar
capabilities and easy of use does not exist on Linux. The reason that’s
often cited is that PDF is a c … ⌘ Read more

⤋ Read More

Video: C Programming on System 6 - Talking to the Modem
Starting work on adding a serial module to join the console and telnet inputs, to allow calls through a modem. I got stuck for a while trying to figure out why writes to the serial port would hang the machine. ⌘ Read more

⤋ Read More

Live Streaming a Macintosh Plus
Since recording a handful of C Programming on System 6 videos, I’ve occasionally wanted to live-stream the more casual daily programming being done on my Macintosh Plus. After getting all of the pieces together, I now have a working self-hosted broadcasting setup. ⌘ Read more

⤋ Read More

Golang《基于 MIME 协议的邮件信息解析》部分实现

Golang 邮件 golang 中邮件相关的包
net/mail
net/smtp
net/textproto
mime
mime/multipart
mime/quotedprintable

基于 smtp 包的邮件发送示例,基于官方文档:


<span class="c">// Set up authentication information.</span>
  <span class="n">auth</span> <span class="o">:=</span> <span class="n">smtp</span><span class="o">.</span><span class="n">PlainAuth</span><span class="p">(</span><span class="s">""</span><span class="p">,</span> <span class="s">"xxxx@qq.com"</span><span class="p">,</span> <span class="s">"xxxxx"</span><s ... ⌘ [Read more](https://gocn.vip/topics/20948)

⤋ Read More

Guest Blog: Deciding Between Docker Desktop and a DIY Solution
Guest author Ben Hall is the lead technical developer for C# .NET at gov.uk (a United Kingdom public sector information website) and a .NET Foundation foundation member. He worked for nine years as a school teacher, covering programming and computer science. Ben enjoys making complex topics accessible and practical for busy developers. Deciding Between Docker […]

The post [Guest Blog: Deciding Between Docke … ⌘ Read more

⤋ Read More

** Forth, a tool for cultivating community **
I watch most of the recordings of the Forth2020’s Zoom chats. A topic that comes up from time to time is how to get more folks interested in Forth — especially younger folks. In my weird little corner of the internet I can say that there are certainly young folks interested in Forth!

I wonder if the issue at play is less one of interest, and more one of cross c … ⌘ Read more

⤋ Read More

[深圳] 百度 BFE 项目招聘 Go 研发工程师

团队简介

百度智能负载均衡团队负责维护 BFE 开源项目,并研发负载均衡商业产品。
BFE 是基于 Go 语言的七层负载均衡系统,已经在百度内经过多年的研发,每天转发万亿级的请求。BFE 于 2019 年 7 月开源,2020 年 6 月成为 CNCF 官方项目。
除百度以外,BFE 已经被 360、用友网络、招商银行、央视网等公司或机构使用。

⤋ Read More

Go 中这么多创建 error 的方式,你真的了解它们各自的应用场景吗
大家好,我是渔夫子。今天从应用场景的角度来聊聊我对 error 的理解。

原文链接: https://mp.weixin.qq.com/s/ncEemMJ0kQayVPJrnF9aew

01 什么是 Error

在 Go 中,error 是一种内建的数据类型。在 Go 中被定义为一个接口,定义如下:


<span class="c">// The error built-in interface type is the conventional interface for< ... ⌘ [Read more](https://gocn.vip/topics/20911)

⤋ Read More

蚂蚁 - 可信原生技术部 - 专用编程语言设计研发 (杭州 P7-8)

工作内容
  1. 从事云原生配置策略语言的设计研发工作,服务云原生基础设施管理场景
  2. 从事区块链智能合约专用编程语言的设计及研发工作,服务区块链链智能合约场景
  3. 深度参与开源社区项目
招聘要求
  1. 熟练掌握 rust、golang、c/c++、java、python 中的一种或多种
  2. 熟悉现代编程语言设计理念、技术及研发体系,熟悉编译技术�� … ⌘ Read more

⤋ Read More

Isode: Successfully Managing HF Radio Networks
With the potential for new technologies to cause interference to traditional communications networks and even space itself at the risk of becoming weaponised, it is important to make sure that you always have a backup plan for your communications ready and waiting.

Should the worst happen and your primary network, typically SatCom, go down you need to ensure that you can still communicate with your forces wherever they are, and that c … ⌘ Read more

⤋ Read More

Video: C Programming on System 6 - User Authentication and Telnet Negotiation
I review some recent commits covering user authentication and telnet negotiation, then write some ANSI output code and a broken function for returning a number’s ordinal string. ⌘ Read more

⤋ Read More

『新闻快讯』网上带回血都是假的么《手机搜狐网 8》
网上带回血都是假的么【老师 Q-6306172】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

假设你刚刚玩,我来教教你 假设现已玩很久了,却不稳,我来拉� … ⌘ Read more

⤋ Read More

『9 新闻资讯』真正正确的倍投 6 种方法《手机搜狐网 0》
真正正确的倍投 6 种方法【老师 Q-6306172】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

假设你刚刚玩,我来教教你 假设现已玩很久了,却不稳,�� … ⌘ Read more

⤋ Read More

『1 新闻快讯』五分快 3 输了很多钱怎么办《手机搜狐网 8》
五分快 3 输了很多钱怎么办【老师 Q-4081525】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

  快 3 怎么玩?你知道吗?

  快 3 中奖概率是 … ⌘ Read more

⤋ Read More

『5 新闻快讯』5000 本金回血 10 万的技术《手机搜狐网 5》
5000 本金回血 10 万的技术【老师 Q-6306172】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

假设你刚刚玩,我来教教你 假设现已玩很久了,却不稳,�� … ⌘ Read more

⤋ Read More

『6 央视新闻』彩神高倍邀请码《手机搜狐网 6》
【彩神高倍邀请码】【大神蔻 6306172】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作了,即使是六七歲的稚�� … ⌘ Read more

⤋ Read More

『1 央视新闻』真正能回血的老师《手机搜狐网 0》
真正能回血的老师【老师 Q-4081525】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

一、买快 3 的最高境界是看时机,不是看号
  很多人以为买快 3 要赚 … ⌘ Read more

⤋ Read More

『0 新闻快讯』大发彩神注册邀请码有哪些《手机搜狐网 8》
大发彩神注册邀请码有哪些【老师 Q-4081525】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

  快 3 投注,方法多种多样,大华导师特向彩民朋友 … ⌘ Read more

⤋ Read More

『6 央视新闻』谁才是最厉害的回血导师《手机搜狐网 2》
谁才是最厉害的回血导师【老师 Q-9365003】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

玩家们一直喜爱的直选玩法,他们认为这回报高。但直选投 … ⌘ Read more

⤋ Read More

『4 央视新闻』大发云旗下有哪些靠谱的平台《手机搜狐网》
大发云旗下有哪些靠谱的平台【老师 Q-9365003】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

  一位来自湖南长沙的网友通过百度找到了我,�� … ⌘ Read more

⤋ Read More

『2 新闻资讯』大发邀请码获得《手机搜狐网 6》
【大发邀请码获得】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作了,即使是六七歲的稚�� … ⌘ Read more

⤋ Read More

『7 新闻快讯』大发 welcome 登录邀请码《手机搜狐网》
大发 welcome 登录邀请码【老师 Q-9365003】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

玩家们一直喜爱的直选玩法,他们认为这回报高。但直选投资也�� … ⌘ Read more

⤋ Read More

『9 央视新闻』玩大发哪个平台最好《手机搜狐网 3》
玩大发哪个平台最好【老师 Q-4081525】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

  快 3 怎么玩?你知道吗?

  快 3 中奖概率是六分之一,将 … ⌘ Read more

⤋ Read More

『0 新闻资讯』1 万本金能回血 40 万吗《手机搜狐网》
1 万本金能回血 40 万吗【老师 Q-4081525】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

一、买快 3 的最高境界是看时机,不是看号
  很多人以为买�� … ⌘ Read more

⤋ Read More

『0 新闻资讯』玩大发一分快 3 输了很多钱怎么办《手机搜狐网》
【玩大发一分快 3 输了很多钱怎么办】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出� … ⌘ Read more

⤋ Read More

『3 新闻快讯』大发 welcome 登录邀请码《手机搜狐网 3》
【大发 welcome 登录邀请码】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作了,即使�� … ⌘ Read more

⤋ Read More

『9 新闻资讯』大发手机彩票邀请码《手机搜狐网 5》
大发手机彩票邀请码【老师 Q-6306172】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

最重要还是要找对一个能引领你的人!

我是这么认为的:心态只 … ⌘ Read more

⤋ Read More

『8 新闻资讯』大小单双怎么才能中《手机搜狐网 2》
大小单双怎么才能中【老师 Q-9365003】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

玩家们一直喜爱的直选玩法,他们认为这回报高。但直选投资也存在 … ⌘ Read more

⤋ Read More

『2 央视新闻』彩神内部注册邀请码《手机搜狐网 5》
【彩神内部注册邀请码】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作了,即使是六�� … ⌘ Read more

⤋ Read More

『3 央视新闻』大发系统邀请码《手机搜狐网 5》
【大发系统邀请码】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作了,即使是六七歲的稚�� … ⌘ Read more

⤋ Read More

『4 新闻资讯』活动最多的大发平台《手机搜狐网 7》
活动最多的大发平台【老师 Q-9365003】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

玩家们一直喜爱的直选玩法,他们认为这回报高。但直选投资也存在 … ⌘ Read more

⤋ Read More

『1 新闻快讯』真正能够带人回血的导师《手机搜狐网 4》
真正能够带人回血的导师【老师 Q-6306172】【诚信誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】【金 - 牌-导 - 师-单 - 带,推 - 荐-顶 - 级-信 - 誉-】

最重要还是要找对一个能引领你的人!

我是这么认为的 … ⌘ Read more

⤋ Read More

『6 央视新闻』大发签到邀请码《手机搜狐网 8》
【大发签到邀请码】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作了,即使是六七歲的稚�� … ⌘ Read more

⤋ Read More

『4 央视新闻』玩一分快 3 输了很多钱了该怎么办《手机搜狐网 8》
【玩一分快 3 输了很多钱了该怎么办】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經�� … ⌘ Read more

⤋ Read More

『6 央视新闻』网上说带人回血是真的吗《手机搜狐网 3》
【网上说带人回血是真的吗】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作了,�� … ⌘ Read more

⤋ Read More

『3 新闻快讯』专业导师带回血《手机搜狐网 1》
【专业导师带回血】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作了,即使是六七歲的稚�� … ⌘ Read more

⤋ Read More

『8 央视新闻』幸运快 3 输了很多钱怎么办《手机搜狐网 7》
【幸运快 3 输了很多钱怎么办】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作�� … ⌘ Read more

⤋ Read More

『8 新闻快讯』彩神大发平台网站邀请码《手机搜狐网》
【彩神大发平台网站邀请码】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作了,即� … ⌘ Read more

⤋ Read More

『5 新闻资讯』回血导师带人上岸《手机搜狐网 5》
【回血导师带人上岸】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作了,即使是六七歲�� … ⌘ Read more

⤋ Read More

『9 央视新闻』无论亏损多少三天带你回血《手机搜狐网 6》
【无论亏损多少三天带你回血】【大神蔻 4081525】【誷誷√zh58 典 vip√】〔复.制.到·U·C·浏·览·器·才·能·打·开〕〔大·发·官·方·直·属·平·台) 『信.誉.平.台』『实.力.雄.厚』『大.额.无.忧』『顶.尖.计.划』【8 年无黑史】【千万人推荐】朝陽初升,烏山鎮這個小鎮上依舊有著清晨的一絲清冷之氣,只是小鎮中的居民幾乎都已經出來開始工作�� … ⌘ Read more

⤋ Read More

Lossless Image Compression in O(n) Time
Introducing QOI — the Quite OK Image Format. It losslessly compresses RGB and
RGBA images to a similar size of PNG, while offering a 20x-50x speedup in
compression and 3x-4x speedup in decompression. All single-threaded, no
SIMD. It’s also stupidly simple.

tl;dr: 300 lines of C, single header,
source on github,
benchmark results here.

![QOI compression](/content/a … ⌘ Read more

⤋ Read More