user/bmallred/data/2023-05-18-06-05-10.fit: 2.51 miles, 00:09:04 average pace, 00:22:46 duration
According to the RedMonk programming language rankings from Jan 2023, Go and Scala are tied at 14th place 😏
1 JavaScript
2 Python
3 Java
4 PHP
5 C#
6 CSS
7 TypeScript
7 C++
9 Ruby
10 C
11 Swift
12 Shell
12 R
14 Go
14 Scala
16 Objective-C
17 Kotlin
18 PowerShell
19 Rust
19 Dart
user/bmallred/data/2023-05-11-05-31-54.fit: 2.27 miles, 00:10:10 average pace, 00:23:02 duration
user/bmallred/data/2023-05-10-06-12-46.fit: 2.01 miles, 00:09:33 average pace, 00:19:12 duration
Metaverse Could Contribute Up To 2.4% of US GDP By 2035, Study Shows
A study commissioned by Meta has found that the metaverse could contribute around 2.4% to U.S. annual GDP by 2035, equating to as much as $760 billion. Reuters reports: The concept of the metaverse includes augmented and virtual reality technologies that allow users to immerse themselves in a virtual world or overlay information digitally on … ⌘ Read more
user/bmallred/data/2023-04-26-06-36-29.fit: 2.18 miles, 00:08:33 average pace, 00:18:39 duration
@prologic@twtxt.net @carsten@yarn.zn80.net
(1) You go to the store and buy a microwave pizza. You go home, put it in the microwave, heat it up. Maybe it’s not quite the way you like it, so you put some red pepper on it, maybe some oregano.
Are you a pizza chef? No. Do we know what your cooking is like? Also no.
(2) You create a prompt for StableDiffusion to make a picture of an elephant. What pops out isn’t quite to your liking. You adjust the prompt, tweak it a bunch, till the elephant looks pretty cool.
Are you an artist? No. Do we know what your art is like? Also no.
The elephant is “fake art” in a similar sense to how a microwave pizza is “fake pizza”. That’s what I meant by that word. The microwave pizza is a sort of “simulation of pizza”, in this sense. The generated elephant picture is a simulation of art, in a similar sense, though it’s even worse than that and is probably more of a simulacrum of art since you can’t “consume” an AI-generated image the way you “consume” art.
Started with
a concept sketch of a full body end-time factory worker on a distant planet, cyberpunk light brown suite, (badass), looking up at the viewer, 2d, line drawing, (pencil sketch:0.3), (caricature:0.2), watercolor city sketch,
Negative prompt: EasyNegativ, bad-hands-5, 3d, photo, naked, sexy, disproportionate, ugly
Steps: 20, Sampler: Euler a, CFG scale: 7, Seed: 2479087078, Face restoration: GFPGAN, Size: 512x768, Model hash: 2ee2a2bf90, Model: mimic_v10, Denoising strength: 0.7, Hires upscale: 1.5, Hires upscaler: Latent
On LinkedIn I see a lot of posts aimed at software developers along the lines of “If you’re not using these AI tools (X,Y,Z) you’re going to be left behind.”
Two things about that:
- No you’re not. If you have good soft skills (good communication, show up on time, general time management) then you’re already in excellent shape. No AI can do that stuff, and for that alone no AI can replace people
- This rhetoric is coming directly from the billionaires who are laying off tech people by the 100s of thousands as part of the class war they’ve been conducting against all working people since the 1940s. They want you to believe that you have to scramble and claw over one another to learn the “AI” that they’re forcing onto the world, so that you stop honing the skills that matter (see #1) and are easier to obsolete later. Don’t fall for it. It’s far from clear how this will shake out once governments get off their asses and start regulating this stuff, by the way–most of these “AI” tools are blatantly breaking copyright and other IP laws, and some day that’ll catch up with them.
That said, it is helpful to know thy enemy.
go mills()
😅
So. Some bits.
i := fIndex(xs, 5.6)
Can also be
i := Index(xs, 5.6)
The compiler can infer the type automatically. Looks like you mention that later.
Also the infer is super smart.. You can define functions that take functions with generic types in the arguments. This can be useful for a generic value mapper for a repository
func Map[U,V any](rows []U, fn func(U) V) []V {
out := make([]V, len(rows))
for i := range rows { out = fn(rows[i]) }
return out
}
rows := []int{1,2,3}
out := Map(rows, func(v int) uint64 { return uint64(v) })
I am pretty sure the type parameters goes the other way with the type name first and constraint second.
func Foo[comparable T](xs T, s T) int
Should be
func Foo[T comparable](xs T, s T) int
user/bmallred/data/2023-03-14-07-56-49.fit: 2.01 miles, 00:08:41 average pace, 00:17:28 duration
Radians Are Cursed
⌘ Read more
user/bmallred/data/2023-03-06-10-55-05.fit: 2.35 miles, 00:08:57 average pace, 00:21:04 duration
user/bmallred/data/2023-03-02-09-23-06.fit: 2.26 miles, 00:08:50 average pace, 00:20:01 duration
user/bmallred/data/2023-02-16-09-10-23.fit: 2.70 miles, 00:09:50 average pace, 00:26:33 duration
St Petersburg Distance Classic: Halfathon: 13.27 miles, 00:08:31 average pace, 01:52:59 duration
Great weather this morning and finally broke 2 hours in the HM! Didn’t catch the runner’s name but thanks to whoever ran miles 8 to 10 with me. Kept me in a good space and hopefully their marathon went well, too.
#running #race
user/bmallred/data/2023-02-09-09-35-27.fit: 2.00 miles, 00:10:43 average pace, 00:21:28 duration
user/bmallred/data/2023-02-07-08-55-02.fit: 2.77 miles, 00:10:00 average pace, 00:27:40 duration
user/bmallred/data/2023-01-30-09-07-44.fit: 2.00 miles, 00:11:07 average pace, 00:22:16 duration
user/bmallred/data/2023-01-25-16-24-10.fit: 2.17 miles, 00:06:30 average pace, 00:14:06 duration
user/bmallred/data/2023-01-23-08-56-11.fit: 2.99 miles, 00:09:54 average pace, 00:29:33 duration
Basecamp Details ‘Obscene’ $3.2 Million Bill That Prompted It To Quit the Cloud
An anonymous reader shares a report: David Heinemeier Hansson, CTO of 37Signals – which operates project management platform Basecamp and other products – has detailed the colossal cloud bills that saw the outfit quit the cloud in October 2022. The CTO and creator of Ruby On Rails did all the sums and came up with an e … ⌘ Read more
Anyone know what this might be about?
[1134036.271114] ata1.00: exception Emask 0x0 SAct 0x4 SErr 0x880000 action 0x6 frozen
[1134036.271478] ata1: SError: { 10B8B LinkSeq }
[1134036.271829] ata1.00: failed command: WRITE FPDMA QUEUED
[1134036.272182] ata1.00: cmd 61/20:10:e0:75:6e/00:00:11:00:00/40 tag 2 ncq 16384 out
res 40/00:01:00:4f:c2/00:00:00:00:00/00 Emask 0x4 (timeout)
[1134036.272895] ata1.00: status: { DRDY }
[1134036.273245] ata1: hard resetting link
[1134037.447033] ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[1134038.747174] ata1.00: configured for UDMA/133
[1134038.747179] ata1.00: device reported invalid CHS sector 0
[1134038.747185] ata1: EH complete
I started reading the proposal to introduce operator overloading in Go version 2 that I like to see: https://github.com/golang/go/issues/27605 Now a few hours later I ended up at this gem. Write a program that makes 2+2=5: https://codegolf.stackexchange.com/questions/28786/write-a-program-that-makes-2-2-5 There are some awesone solutions. :-)
how install gomodot? also.. @prologic@twtxt.net your domain has some pretty strong SEO mojo searching for install "gomodot"
puts you on the google first page.
@prologic@twtxt.net ¯\_(ツ)_/¯
@prologic@twtxt.net “_foo_”
@eaplmx@twtxt.net This exact thing happened to me last night. I happened to be watching some random Youtube video, then this Ad came on, normally they are short 3-5s ads and I just tolerate them (sometimes) – But this particular ad was 20+ mins long! Somehow I kept listening to it too, despite my daughter telling me I could hit that “Skip Ad” button.
What was it you ask?! 😅 It was one of those testimonial-style, hyped up marketing videos of some product called “Gemini 2” (a currency trading app, allegedly), I kept watching all the way through, it was fantastic! 🤣
Then I went and read up on it! …
Short answer: TOTAL FUCKING SCAM 🤣
What If 2 Gift Guide
⌘ Read more
Ha sido una semana con demasiadas clases. Hoy fueron 5 horas, lo que me dejó poca energía para otras actividades.
No me urge, aunque si estaría bien la pausa del 2 de diciembre para enfocarme en otros pendientes, tomar fuerza y seguir con otros oroyectos.
user/bmallred/data/2022-10-21-09-45-18.fit: 2.97 miles, 00:13:09 average pace, 00:39:01 duration
FIDO 2 isn’t too difficult. modern-ish browsers will support it natively now so the JS required is quite minimal.
user/bmallred/data/2022-10-10-19-46-29.fit: 2.56 miles, 00:11:42 average pace, 00:29:57 duration
user/bmallred/data/2022-09-26-12-20-44.fit: 2.40 miles, 00:12:24 average pace, 00:29:46 duration
user/bmallred/data/2022-09-16-13-43-53.fit: 2.78 miles, 00:11:07 average pace, 00:30:53 duration
Cursed mRNA Cocktail
⌘ Read more
What If? 2 Flowchart
⌘ Read more
user/bmallred/data/2022-09-06-10-45-22.fit: 2.93 miles, 00:10:34 average pace, 00:30:55 duration
user/bmallred/data/2022-09-02-13-58-43.fit: 2.79 miles, 00:10:44 average pace, 00:29:59 duration
for some reason its showing the twt from 2 days ago instead of the current value
user/bmallred/data/2022-08-30-09-36-28.fit: 2.91 miles, 00:10:37 average pace, 00:30:54 duration
@abucci@anthony.buc.ci Its not better than a Cat5e. I have had two versions of the device. The old ones were only 200Mbps i didn’t have the MAC issue but its like using an old 10baseT. The newer model can support 1Gbps on each port for a total bandwidth of 2Gbps.. i typically would see 400-500Mbps from my Wifi6 router. I am not sure if it was some type of internal timeout or being confused by switching between different wifi access points and seeing the mac on different sides.
Right now I have my wifi connected directly with a cat6e this gets me just under my providers 1.3G downlink. the only thing faster is plugging in directly.
MoCA is a good option, they have 2.5G models in the same price range as the 1G Powerline models BUT, only if you have the coax in wall already.. which puts you in the same spot if you don’t. You are for sure going to have an outlet in every room of the house by code.
user/bmallred/data/2022-08-26-15-38-16.fit: 2.84 miles, 00:11:13 average pace, 00:31:49 duration
user/bmallred/data/2022-08-23-14-09-21.fit: 2.07 miles, 00:12:08 average pace, 00:25:05 duration
Huh… Nope.
HTTP/1.1 200 OK
Content-Length: 407
Content-Type: text/calendar
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: ETag
Permissions-Policy: interest-cohort=()
Content-Security-Policy: default-src 'none'; sandbox
Referrer-Policy: same-origin
Vary: Authorization
BEGIN:VCALENDAR
VERSION:2.0;2.0
PRODID:SandCal
CALSCALE:GREGORIAN
BEGIN:VEVENT
DTSTAMP:20220822T180903Z
UID:bb63bfbd-623e-4805-b11b-3181d96375e6
DTSTART;TZID=America/Chicago:20220827T000000
CREATED:20220822T180903Z
LAST-MODIFIED:20220822T180903Z
LOCATION:https://meet.jit.si/Yarn.social
SUMMARY:Yarn Call
RRULE:FREQ=WEEKLY
DTEND;TZID=America/Chicago:20220827T010000
END:VEVENT
END:VCALENDAR
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.
type PA[T any] interface {
event.Aggregate
*T
}
// Create uses fn to create a new aggregate and store in db.
func Create[A any, T PA[A]](ctx context.Context, es *EventStore, streamID string, fn func(context.Context, T) error) (agg T, err error) {
ctx, span := logz.Span(ctx)
defer span.End()
agg = new(A)
agg.SetStreamID(streamID)
if err = es.Load(ctx, agg); err != nil {
return
}
if err = event.NotExists(agg); err != nil {
return
}
if err = fn(ctx, agg); err != nil {
return
}
var i uint64
if i, err = es.Save(ctx, agg); err != nil {
return
}
span.AddEvent(fmt.Sprint("wrote events = ", i))
return
}
This lets me do something like this:
a, err := es.Create(ctx, r.es, streamID, func(ctx context.Context, agg *domain.SaltyUser) error {
return agg.OnUserRegister(nick, key)
})
I can tell the function the type being modified and returned using the function argument that is passed in. pretty cray cray.
user/bmallred/data/2022-08-12-12-15-20.fit: 2.82 miles, 00:11:40 average pace, 00:32:51 duration
user/bmallred/data/2022-08-09-14-44-31.fit: 2.73 miles, 00:11:22 average pace, 00:31:03 duration
Scientific Field Prefixes
⌘ Read more