hear two new tracks from Detroit duo Snow Strippers
My favorite record of 2022 that I didn’t find out about until 2023 was mysterious Detroit duo Snow Strippers’ stellar LP The Snow Strippers, a massive, relentlessly throbbing (and frankly a little unsettling) collection of haunted rave anthems that garnered the group comparisons to early Crystal Castles and SALEM… … ⌘ Read more
Hand Habits – Something Wrong
Hand Habits shares the opening track from their new collection of songs Sugar the Bruise, coming in June on Fat Possum. Listen to “ Something Wrong” via the visualizer by Ethan Skaates below… Continue reading… ⌘ Read more
JPEGMAFIA x Danny Brown – Scaring the Hoes
Peggy and Danny drop another unhinged banger with the title track from their collab LP Scaring the Hoes Vol. 1, coming this Friday… Continue reading… ⌘ Read more
Mega Bog – Love Is
Mega Bog drops my current favorite track – featuring backing vocals from the great Westerman! -- from her stellar new album End of Everything, coming in May on Mexican Summer… Continue reading… ⌘ Read more
**RT by @mind_booster: Highlights from IPCC report:
- The world’s on track to hit above 3°C of warming by 2100.
- Emissions must peak by 2025 and nearly halve by 2030 to keep warming to 1.5°C
- 3-bil people likely to suffer water scarcity at 2°C.
- No gov has a credible plan to keep warming in target.**
Highlights from IPCC report:
- The world’s on track to hit above 3°C of warming by 2100.
- Emissions must peak by 2025 and nearly halve by 2030 to keep warming to 1.5°C
- 3-bil people likely to suffer w … ⌘ Read more
RT by @mind_booster: ❗Breaking: Meta Tracking Tools unlawful
In a groundbreaking decision in one of noybs 101 complaints, the Austrian Data Protection Authority decided that the use of Facebook’s tracking pixel directly violates the GDPR: https://noyb.eu/en/austrian-dsb-meta-tracking-tools-illegal?mtc=tw
❗Breaking: Meta Tracking Tools unlawful
In a groundbreaking decision in one of noybs 101 complaints, the Austrian Data Protection Authority decided that the use of Facebook’s tracking pixel directly violates th … ⌘ Read more
bar italia – Nurse!
London group bar italia follow up one of last year’s best EPs with new track “ Nurse!”, out today on Matador. Video by simon mercer… Continue reading… ⌘ Read more
Buzzy Lee – Internal Affairs
Sasha Speilberg aka Buzzy Lee gets vulnerable on the lovesick title track from her Gabe Wax-produced new album Internal Affairs, coming March 31st. Video by Siena Zadro… Continue reading… ⌘ Read more
Olivia Kaplan – American Air
Olivia Kaplan shares a beautifully poignant new track that manages to break your heart and offer a tender beacon of hope, all at once. Video shot + directed by Ali Vanderkruyk… Continue reading… ⌘ Read more
dj lostboi – music for landings
Some profoundly calming sounds for your next plane ride, courtesy of Malibu aka Belmont Girl aka dj lostboi… Continue reading… ⌘ Read more
Tirzah + Mica Levi release new track as Taz & Meeks
A sparse, tender slow-burner from Tirzah + Mica Levi, for the new Síbín Vol. 1 charity compilation; profits will be split between the Black Curriculum and Blackfriars Settlement. Listen below + buy it here.
Síbín Vol. 1 by Síbín
… Continue reading… ⌘ Read more
Nourished By Time – Quantum Suicide
Fresh off supporting Dry Cleaning on their recent U.S. tour, and a feature on the highly anticipated Yaeji album, Baltimore’s Marcus Brown aka Nourished By Time shares new track “ Quantum Suicide” -- a song “ about fighting depression” -- taken from his new record Erotic Probiotic 2, out in April… [Continue reading…](https://www.gorillavsbear.net/nourishe … ⌘ Read more
Joanne Robertson – Blue Car
Wonderful UK folk singer + songwriter (and regular Dean Blunt collaborator) Joanne Robertson shares the haunting title track from her new album Blue Car, out next month on AD 93… Continue reading… ⌘ Read more
untitled (halo) – el prado freestyle
Check the hazy and gorgeously woozy debut single from young LA “ethereal grunge” band untitled (halo). Video directed by the group’s Jack Dione, watch below + buy the track here… Continue reading… ⌘ Read more
METTE – Mama’s Eyes
Nearly two years on from her stunning debut single, METTE drops a second track, and it’s another soaring, life-affirming pop banger. Continue reading… ⌘ Read more
Jonnine – Tea for Two (Boo)
Jonnine Standish of HTRK shares the self-directed video for her new track “ Tea for Two (Boo)”, a haunted and whimsical ghost story taken from Jonnine’s new album Maritz, out later this month… Continue reading… ⌘ Read more
Magdalena Bay share new video for the Spanish version of “Dominó”
Popstars and budding producers for famous rappers, LA’s Mag Bay put a bow on the Mercurial World era, as the duo shares a trippy VHS video for the Spanish version of “ Dominó”… [Continue reading…](https://www.gorillavsbear.net/magdalena-bay-sh … ⌘ Read more
“There is, however,
evidence to suggest that a proportion of advertising-related data collection and tracking could be unnecessary, fuelling ad fraud and ‘made for advertising’ websites that have limited value to society, as well as generating carbon emissions.” href=”https://we.loveprivacy.club/search?q=%23ClimateCrisis”>#ClimateCrisis**
“There is, however,
evidence to suggest that a proportion of advertising-related data collection and tracking could be unnecessary, fuelling ad fraud and ‘made for advertising’ websites that have limited value to society, as well as … ⌘ Read more
Dean Blunt shares new EP Give me a moment
5 hazy new Dean Blunt tracks, quietly dropped earlier today on his label World Music’s instagram… Continue reading… ⌘ Read more
Malibu shares new track “Lamb” + some new Belmont Girl edits
Malibu continues to create some of the most ethereal and transcendent ambient music in the world, as she follows up last year’s stunning Palaces of Pity EP by lending a proper new Malibu track to the epic new YEAR0001 compilation RIFT Two… [Continue reading…](https://www.go … ⌘ Read more
Maraschino – Angelface
We’ve been in the Piper Kaplan fan club since the earliest days, and this sweet new track she just dropped under her current moniker Maraschino might be one of my favorite things she’s ever done… Continue reading… ⌘ Read more
Magdalena Bay co-produced a new Lil Yachty track
Check Yachty’s “ Running Out of Time”, co-written and co-produced by Mica + Matt of Mag Bay, below… Continue reading… ⌘ Read more
Fever Ray – Kandy
Karin + Olof Dreijer drop one of their balmiest, most sensual tracks since the Deep Cuts (which just turned 20!) days. Listen to the haunting tropical goth anthem “ Kandy” -- an instant add to our Best Songs of 2023 playlist -- below… Continue reading… ⌘ Read more
patten announces the first ever text-to-audio AI album Mirage FM
A bit obsessed with and slightly shaken by this haunting new patten track, taken from his forthcoming LP Mirage FM, “the 1st album fully made from text-to-audio AI samples”… Continue reading… ⌘ Read more
Kedr Livanskiy’s band Kosaya Gora share new track “Motorcyclists Die”
Kosogor, the debut album from Kedr Livanskiy’s guitar-based folk/dream-pop band Kosaya Gora, is out in March on limited clear vinyl via 2MR… Continue reading… ⌘ Read more
Overmono – Is U
London duo Overmono announce their highly anticipated debut album GOOD LIES with lead single “ Is U”. Using a sample from a beloved Tirzah classic is a bit of a cheat code, but these guys do it justice… Continue reading… ⌘ Read more
Lisel – Immature
Lisel shares another otherworldly track from her stunning new album Patterns For Auto-tuned Voices and Delay, coming next month on Ba Da Bing… Continue reading… ⌘ Read more
❤️ 🎶: 가질 수 없는 너 (화생방실 클레오파트라) Bonus Track Version by Kim Yeon Woo
** I read some books in 2022, and have some thoughts about computer science writing **
At the start of this year I set out to revive my long dead reading habit. After having kids it fell by the wayside. I’ve read 41 books so far this year. Mostly a mix of science fiction and nonfiction computer science books. Here’s the complete list of everything I’ve read. I’ve got mixed feelings about keeping track and sharing cou … ⌘ Read more
Leaked a secret? Check your GitHub alerts…for free
GitHub now allows you to track any leaked secrets in your public repository, for free. With secret scanning alerts, you can track and action on leaked secrets directly within GitHub. ⌘ Read more
Erlang Solutions: Change data capture with Postgres & Elixir
CDC is the process of identifying and capturing data changes from the database.
With CDC, changes to data can be tracked in near real-time, and that information can be used to support a variety of use cases, including auditing, replication, and synchronisation.
A good example of a use case for CDC is to consider an application which inserts a record into the database and pushes an event to a message queue after the record has … ⌘ Read more
I use Firefox as my preferred web browser both on PCs and my phone. One extension is always installed: uBlock Origin. The web is so much nicer with all the ads and tracking removed. But today I also retried an extension that will probably join the “must install” list: DarkReader. Especially when I’m browsing the web on my phone in the early morning, I don’t like to be blinded by white websites. Since March DarkReader has finally an option to detect if a website already has a dark theme and only apply it’s color chan … ⌘ Read more
How to Monitor Container Memory and CPU Usage in Docker Desktop
Find out how to track the CPU, memory, network, and disk usage of docker containers and docker compose projects using the Resource Usage Docker Extension. ⌘ Read more
Octoverse 2022: 10 years of tracking open source
How is open source changing the world and impacting businesses? In this year’s Octoverse report, we identified three big trends to watch. ⌘ Read more
The journey of your work has never been clearer
In July, we launched the general availability of GitHub Projects, and now we are excited to bring you even more features designed to make it easier to plan and track in the same place you build! ⌘ Read more
**RT by @mind_booster: Who’d a thought. Golly gosh. Apple “privacy is a fundamental human right” .. but ….
“Apple Is Tracking You Even When Its Own Privacy Settings Say It’s Not, New Research Says”
https://gizmodo.com/apple-iphone-analytics-tracking-even-when-off-app-store-1849757558**
Who’d a thought. Golly gosh. Apple “privacy is a fundamental human right” .. but ….
“Apple Is Tracking You Even When Its Own Privacy Settings Say It’s Not, New Research Says”
[gizmodo.com/apple-iphone-ana…](https://gizm … ⌘ Read more
Tirzah collabs with Dean Blunt on new track “1471”
Tirzah lends her tender, glowing vocals to the new single from Babyfather aka Dean Blunt… Continue reading… ⌘ Read more
[…] UN framework convention on climate change said: “This does not go far enough, fast enough. This is nowhere near the scale of reductions required to put us on track to 1.5C. National governments must set new goals now and implement them in the next eight years.”
[…] UN framework convention on climate change said: “This does not go far enough, fast enough. This is nowhere near the scale of reductions required to put us on track to 1.5C. National governments must set new goals now and implement them in … ⌘ Read more
Voice Actor’s 109-track <i>Sent From My Telephone</i> is a surreal, fathomless dream
After spending countless late-night hours with mysterious artist Voice Actor’s massive, utterly hypnotic, 109-track, three-and-a-half-hour-long dark horse AOTY contender Sent From My Telephone since it dropped a couple weeks back, I’m now officially in love… [Continue reading…](https://www.gorillavsbear.net/voice-actors-sent-from-my-tele … ⌘ Read more
The GitHub Universe 2022 agenda is live
Explore 80+ content sessions delivered by over 120 different speakers, across two days and four content tracks, all designed to level up your skills. ⌘ Read more
One year ago, I started using AdGuard Home instead of Pi-Hole to filter DNS requests and block ads and tracking. Yesterday, I switched to NextDNS instead. NextDNS has mostly the same features, but is hosted in the “cloud” and I have one less self-hosted service to care about. AdGuard Home is awesome, but NextDNS seems to be working great as well and also integrates with Tailscale easily. ⌘ Read more
Carla Dal Forno – Side by Side
Carla Dal Forno shares another entrancing track from her forthcoming album Come Around, out next month on her own Kallista Records. Video by Ludovic Sauvage.
Continue reading… ⌘ Read more
september 2022 mix
Presenting the GvsB September 2022 mix, featuring our favorite new tracks from the past month+ by the likes of Jockstrap, Fred Again.., Men I Trust, Danny Brown, Panda Bear, Ruth Radelet & many more… Continue reading… ⌘ Read more
Born At Midnite – Y o Y
Montreal duo Amery Sandford + David Carriere aka Born at Midnite share the irresistible opening track from their new Alternity tape, coming in November on Arbutus. Vid by Amery Sandford.
Continue reading… ⌘ Read more
Announcing Docker Hub Export Members
Find out how Docker Business admins can export members to track their utilization of Docker and audit Docker usage. ⌘ Read more
The thing is I don’t know how to search the web logs on Codeberg or even if they are public. That is the issue with just regular text files. The thing with having the follower list in the twtxt file is that then it knows to track friends of friends like with yarn.
If not having www is an issue when I will add it in. Good to know its something I have to change
I’ve been time-tracking for 1900 days :D
Why Are Race Tracks Banked? | Neil deGrasse Tyson Explains… ⌘ Read more
Carla Dal Forno – Come Around
Carla Dal Forno shares the title track from her new album Come Around, out November 4th on Dal Forno’s own Kallista Records. Video edited by Ludovic Sauvage… Continue reading… ⌘ Read more
(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 ObjectsA 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
}