#Borrowing Software Development
Explore tagged Tumblr posts
Text
Tumblr media
Hermit-a-Day May, day 17: EthosLab. Today's style/medium is the mobile game Crossy Road. I'm gonna be honest, this was my backup style and mostly a joke, but my first choice was not working out and I didn't have time to fiddle with it. Crossy Road is essentially just a modern Frogger, so it fits what Etho's been up to this season (at least, I think--I've never actually played the game). Details and references under the read more!
Materials/software: Blockbench for most of it; I exported the image to Krita to add a background and clean up the details.
References: I primarily based Etho's features on two of the developer insert characters from the Australian update, Ben Weatherall and Andy Sum. I borrowed the play button from a screenshot of the game and hand-wrote the font pixel by pixel, referencing several different screenshots.
Tumblr media Tumblr media
This was my first time using Blockbench and I went in completely blind, but it was actually pretty intuitive! I was pleasantly surprised. I'm realizing now that I made Etho's legs a bit too short but it's fiiiine. I think that's... about all I have to say, actually. This piece was mostly a "do it for the meme" kind of thing, but I am proud of how much it looks like the source material.
271 notes · View notes
askagamedev · 2 years ago
Text
About Unity these past few days
A lot of people have asked me about Unity and their strange new per-install charges policy that they rolled out on September 12th, 2023. I wanted to give them at least 24 hours before I posted my take on it - let the dust settle a bit so I could get a chance to read the new policy properly and all that. First, however, I think we need to take a step back and get a wider perspective. Unity Software Inc. is in some serious financial trouble. Here are their operating numbers from 2019 to 2023.
Tumblr media
The blue line here is how much money they take in and the red line is the amount of money they are spending each year. You may notice that they are spending significantly more money year over year than they earn. In fact, over the past 12 months alone (August 2022 to August 2023), Unity Software Inc. has lost almost $1 billion.
Tumblr media
In 2022, Unity spent four times as much money as they did in 2019. If they had managed to keep costs at double their spending in 2019, they still would have earned $243 million in profit. Instead, they lost $882 million in 2022.
Where does all of this cost come from? In any software company like Unity, the vast vast majority of costs comes from employee salaries. And we can directly see it in Unity's number of employees:
Tumblr media
Unity Software Inc. more than tripled its headcount from 2019 to 2022, and it did all of this hiring during the pandemic while competing with many many other developers all trying to hire from the same pool. I don't work for Unity, but I was in the market and I had lots of recruiters trying to recruit me during that time.
Tumblr media
In short, Unity is suffering from the same miscalculation that Embracer Group did, that EA did, that Activision-Blizzard did, that Square-Enix did, and just about everybody else in the tech industry - they misjudged the good times at the beginning of the pandemic, overspent hiring people thinking the good times would last, and are now scrambling to figure out how to survive. The difference is that Unity was getting all of their operating money from Venture Capitalists (VCs) hoping that they would eventually become profitable, but VC money has all but dried up because it's become much more expensive to borrow money over the past two years.
Tumblr media
As a result, the Unity executives are likely grasping at straws in hopes of saving a sinking ship. This wild and decidedly senseless pricing plan is their (seemingly-desperate) attempt to juice their revenues. It really makes very little sense from the developer perspective, which is what makes the whole thing reek of desperation. That isn't greed talking, it's survival. My guess is that Unity is currently desperately looking for a buyer to save them and doing whatever they can to buy themselves some more runway. They already announced layoffs back in May, but I suspect they'll probably have to announce some really big layoffs (e.g. 40-50%) soon. Unity Software Inc. is living on borrowed time and they know it.
[Join us on Discord] and/or [Support us on Patreon]
Got a burning question you want answered?
Short questions: Ask a Game Dev on Twitter
Long questions: Ask a Game Dev on Tumblr
Frequent Questions: The FAQ
460 notes · View notes
winterinhimring · 5 months ago
Note
So what exactly is it you do with computers?
About ninety percent of the time, to borrow an analogy from Statue, I am to software what a house inspector is to construction. Whenever a piece of software gets written, I (am supposed to) get the requirements and set up a test environment to make sure that it meets them, and that it handles obvious failure cases gracefully. Sometimes the requirements don't make it over (or there never were any) and then I get to play detective a bit to figure out what it's supposed to do.
The other ten percent of the time, the customer broke the software and my job is to figure out how they did it so the developers can fix it. I prefer this form of playing detective to the "why didn't you send me the requirements" form because instead of wanting to complain about my coworkers, now my coworkers and I get to be confused together and wonder why it is that customers do things like this. (Customers have magic software-breaking powers. They just do. A man once broke the software I was working on by trying to pay for two things with the same money. BY ACCIDENT. He insisted that he'd done everything exactly the way he normally had and the system had just Done That spontaneously. Hint: he had not and it had not. It took me a solid eight to sixteen hours to figure out what he HAD done and boy howdy was it weird.) (I complain most about this part of my job but it's actually what I enjoy most, because the eight hours you spend thinking you're insane and your computer is taunting you are MORE than made up for by the moment where all the pieces fall into place and you know what's broken and get to explain it in triumph.)
34 notes · View notes
layover-linux-official · 7 months ago
Text
Write One to Throw Away?
If you're in the software industry for long enough, you'll hear this advice eventually. There's an infamous Catch-22 to writing code:
You don't deeply understand the problem (or its solution space) until you've written a solution.
The first solution you write will have none of that hindsight to help you.
So it naturally shakes out that you have to write it at least one time before you can write it well, unless you're stricken with exceptional luck. And the minimum number of attempts you will need is two: one to throw away, and a second attempt to keep.
It's just math. It's just logic. Write one to throw away. It's got the world's easiest proof. You'd have to be some kind of idiot to argue with it!
Okay, hear me out...
As you work on bigger and older projects, you will continuously be confronted with a real-world reality: that requirements are an input that never stops changing. You can make the right tool for the job today, but the job will change tomorrow. Is your pride and joy still the right tool?
If you're like most developers, your first stage of grief will be denial. Surely, if we just anticipate all the futures that could possibly happen, we can write code that's ready to be extended in any possible direction later! We're basically wizards, after all - this feels like it should work.
So you try it. You briefly feel safe in the corrosive sandstorm of time. Your code feels future proof, right up until the future arrives with a demand you didn't anticipate, which is actually so much harder to write thanks to your premature abstractions. Welcome to the anger stage. The YAGNI acronym (you ain't gonna need it) finally registers in your brain for what it is - a bitter pill, hard-won but true.
But we're wizards! We bargain with our interpreters and parsers and borrow checkers. Surely we can make our software immortal with the right burnt offerings. We can use TDD! Oops, now our tests are their own giant maintenance burden locking us into inflexible implementation decisions. Static analysis and refactoring tooling! Huh, well that made life support easier, but couldn't fix fundamental problems of approach, architecture and design (many of which only came into existence when the requirements changed).
As the sun rises and sets on entire ISAs, the cold gloom eventually sets in. There is no such thing as immortal software. Even the software that appears immortal is usually a vortex of continuous human labor and editing. The Linux kernel is constantly dying by pieces and being reborn in equal or greater measure - it feels great to get a patch merged, but your name might not be in the git blame at all in 2 years time.
I want to talk about what happens when your head suddenly jumps up in astonished clarity and you finally accept and embrace that fact: holy shit, there is no immortal software!
Silicon is sand
... and we're in the mandala business, baby.
I advocate that you write every copy to be thrown away. Every single one. I'm not kidding.
Maybe it'll be good enough (read adequacy, not perfection) that you never end up needing to replace your code in practice. Maybe you'll replace it every couple years as your traffic scales. But the only sure thing in life is that your code will have an expiration date, and every choice you make in acknowledgement of that mortality will make your life better.
People are often hesitant to throw out working code because it represents years of accumulated knowledge in real-world use. You'd have to be a fool to waste that knowledge, right? Okay. Do your comments actually instruct the reader about these lessons? Does secondary documentation explain why decisions were made, not just what those decisions were? Are you linking to an issue tracker (that's still accessible to your team)? If you're not answering yes to these type of questions, you have no knowledge in your code. It is a black hole that consumed and irreparably transformed knowledge for ten years. It is one of the worst liabilities you could possibly have. Don't be proud of that ship! You'll have nowhere to go when it sinks, and you'll go down with it.
When you write code with the future rewriter - not merely maintainer - in mind, you'll find it doesn't need to be replaced as often. That sounds ironic, and it is, but it's also true. Your code will be educational enough for onboarding new people (who would rewrite what they don't understand anyways). It will document its own assumptions (so you can tell when you need a full rewrite, or just something partial that feels more like a modification). It will provide a more useful guiding light for component size than any "do one thing well" handwave. And when the day finally comes, when a rewrite is truly necessary, you'll have all the knowledge you need to do it. In the meantime, you've given yourself permission to shit out something sloppy that might never need replacing, but will teach you a lot about the problem domain.
This is independent of things like test suite methodology, but it does provide a useful seive for thinking about which tests you do and don't want. The right tests will improve your mobility! The wrong tests will set your feet in cement. "Does this make a rewrite easier?" is a very good, very concrete heuristic for telling the two apart.
Sorry for long-posting, btw. I used this space to work through some hazy ideas and sharpen them for myself, particularly because I'm looking at getting into language design and implementation in the near future. Maybe at some future date, I'll rewrite it shorter and clearer.
TL,DR:
Every LOC you write will probably eventually be disposed or replaced. Optimize for that, and achieve Zen.
17 notes · View notes
quirkyfries · 3 months ago
Text
“Quirky, why don’t you spend a little more time on your art? It’d look better rendered!”
y’see. last time I fully, completely rendered something it took me a week
Cont.
Nowadays, if I can’t be done with something in under three hours, I tend to lose interest. Which is something I want to work on by making animatics.
Also I don’t really make art for it to look nice? I have a totally different, easy-on-the-lineart-if-it’s-not-gone-entirely style for that. Wise Qwille once said to figure out what you like about a piece of art, and then reverse engineer it for yourself. That’s not exactly what they said but I digress.
I figured out that I like characters, their relationships and development. I like conveying information without words. I like making you think about something, but not making the message vague enough that you can’t come to a conclusion without help—I like making things that mean something. I really enjoy using my understanding of color theory, silhouette and gestures, symbolism, and shape language to accomplish this. You will find this present in almost all of my work period. Drawing, writing uses different tools but I write for the same “author’s purpose” above, etc. If I can get my point across efficiently with a shortcut—skipping out on backgrounds, half-assing lighting that doesn’t really matter to the meaning of the piece, leaving things uncolored—then usually I’m gonna take it, because otherwise things get cluttered and the meaning is lost on me. Sometimes I mess around with lighting for fun though.
It sounds really silly and unrelated but the reason why I couldn’t keep a style down was a combination of two things. I didn’t really draw consistently, which I’m better about now. I’d go days without drawing, and in between drawing I’d see other’s art and borrow the parts of it I liked, which I think is normal, but it made the changes not very subtle as they had no chance to bleed into the next. I also have a lot of procreate brushes, and I couldn’t figure out how to sort them so that I had easy access to the same ones I preferred until very recently. I’m not gonna go blaming my software but I promise I noticed I was trying out new brushes every week and drew things a bit differently each time as a result. Even the size of my brushes change how I draw, you’ll see this if you look at both of my Ruin Monty/Ruin pieces side by side.
My art style is STILL changing! It just has the chance to bleed into another now. If you look at my Clipsey doodle and then stuff I’ve posted in the past few days, you’ll notice that I gave the DCAs their crescent faceplate back, but I leave out the sharp nose that’s so characteristic of them. I haven’t figured out why I don’t draw the noses anymore but I’m pretty sure it’s for the same reason why I stopped giving them cheek marks—simple is better wherever applicable. Same with the eyes and not giving them complete eyeballs unless I feel like I have to. Stuff like that.
Idk where I was going with this. Those are my thoughts on the matter of rendering my art, why I make art in the first place and how it affects what my art looks like, and how I used to somehow craft a completely new art style every week
10 notes · View notes
autolenaphilia · 10 months ago
Text
Currently using Debian 12, with KDE Plasma, which i previously used. But i had problems running plasma last year, with repeated random plasmashell crashes. I could even repeatedly cause plasmashell to crash by removing a second panel/taskbar.
But i returned to plasma to check out running wayland, i've previously used x11-based desktops and even ran plasma on x11. And it turns out plasma is actually more stable on wayland, at least the 5.27 version debian 12 ships with. Which is not something i expected, because all the talk of wayland not being fully there yet, which iirc is why i defaulted to using x11 earlier despite plasma's wayland session. I can still cause plasmashell to crash on x11 by removing a panel, but not on wayland, and the random crashes don't happen either on wayland either. It's a smooth reasonably bugfree experience that lives up to debian's reputation for stability.
I'm running older versions of KDE Plasma and of most things on this OS, because that's the Debian way, but who cares. if the software works I don't care if it's old, and with Debian I don't have to worry about an update breaking my system, and don't have to worry about frequent updates in general, which is a plus in my book (don't judge me, I have Windows update trauma /j).
Tumblr media
my current desktop, the theme is Sweet KDE and the wallpaper is from this post by greekie-via-linux
So now finally KDE Plasma works good for me, without all the crashing. And I'm slowly becoming a fan. It's very customizable, KDE provides a traditional desktop layout by default (which i prefer) but so customizable that you can turn it into almost anything you like. It's defaults might borrow from the windows 95 to 7 desktop paradigm, but Windows never gave users this much control.
It's pretty looking, it has all the eye candy effects and animations you want, but not too heavy on the ram useage (the performance is actually comparable to xfce) , and you can turn the effects off thanks to the aforementioned customizability. And it provides all the programs you need for a fully featured desktop environment, everything from basic stuff like a terminal emulator and file browser to a GUI package manager that supports basically all packaging formats. Neither mate or xfce has the latter, for example, when I ran debian with xfce i had to manage my flatpaks through the terminal.
Maybe even too many programs. KDE makes a lot of programs, and i'll probably never switch from mozilla firefox and thunderbird to kmail, falkon or konqueror. Though to be fair, KDE does develop a lot of programs that are first-rate in the linux world, practically without competition. And i personally find KDE connect to be extremely useful. It syncs your android phone with your desktop or laptop computer and it's awesome. Once I learned how to allow it through my firewall, I can see my SMS messages on my computer and type them with an actual keyboard on my computer, it's great. And It works on other desktop environments and even on windows.
18 notes · View notes
brainbrowserhistory · 9 days ago
Text
Spoons. Spell Slots. RAM
(The title for this one reminds me so much of the Dodge Ram truck ads voiced by Sam Elliot. "GUTS. GLORY. RAM.")
So if anyone reading this is like me, you understand the idea of a "social battery." If you're not quite sure what that is, it's pretty self explanatory. Everyone, even extroverts, have a finite amount of energy to spend on social interaction. Much like a phone battery, this amount decreases as you go about your day. Those with social anxiety, introverts, or under numerous other circumstances, have much less of a capacity than your average person.
In my mind, since this amount tends to be so much less, going on a battery percentage doesn't really feel accurate. So one theory I've found that sounds very applicable and easier to understand is the Spoon Theory. This idea, coined by a writer named Christine Miserandino in 2003, is based on her experience with chronic illness using spoons to represent units of energy used for social interactions. Since then it has been applied to a wide range of issues from neurological disorders to fatigue-related physical issues, and beyond. Going to the store might be one or two spoons. Going to a party might be two or five. The number is very subjective but it helps many people manage their daily lives, and after you've used your spoons for the day you restock after you've rested.
Now, I'm a huge nerd. Video games, movies, sci-fi, superheroes, so many fandoms and so little brain space to fit them all in. With that in mind, spoons are kinda meh to me. I can't fathom carrying around spoons in my back pocket and handing them out every time I do something during the day. So a second theory I came across borrows from the wonderful past time of Dungeons & Dragons. In lieu of spoons, you have spell slots. Every character, no matter the class, has spells slots. You do a thing, you've used up a spell slot. Your slots then replenish after a long rest. Same idea, different presentation. I don't mind this idea, it's pretty applicable and a little easier to understand.
I'm also a very technical person. As in computers, software, phones, etc. I do my best to keep up on the latest tech advances across the board be it private use, military advances, or even medical tech milestones. This combined with my nerdier tendencies put me on a path to the discovery and love of the Cyberpunk genre. I never got to play the tabletop game that Cyberpunk 2077, developed by CDProjektRed, was based on but I read up on it to better understand the world that the game is set in. Blade Runner, Johnny Pneumonic, and RoboCop were early exposures into the dystopian worlds that these kinds of movies are set in. I also love The Ascent which is cyberpunk Diablo, in essence. If it's high tech and I get to shoot stuff, chances are I'll like it. So imagine my surprise when this genre inspired me to come up with a new idea. Maybe not so new, technically, but new to me in the least.
In Cyberpunk 2077, your character, called V, is able to stick all sorts of enhancements and upgrades in their body. The cornerstone of which is the cyberdeck. Like a modern computer, the cyberdeck is the processor of V's hacking programs. And much like a processor, the cyberdeck utilizes RAM (Random Access Memory), to operate. When you run a hack, it blocks out a set amount of RAM which goes into a cool down state, and after a time the RAM is available again. The better quality your cyberdeck, the more RAM you have available at the ready.
So, in the spirit of the Spoon/Spell Slot Theory, I'd like to throw in RAM Theory. Instead of handing out spoons or using up spell slots, you're using up your set gigabytes of RAM throughout your day, portrayed by RAM sticks that get filled up or colored red, however people would like to imagine it. One could take it a step further by quantifying the sticks to a set number of gigabytes. These days they can process 4, 8, and 16 GB per individual stick. High-end gaming computers can have 32 GB of RAM or more depending on how much one decides to invest in their equipment. I think keeping it simplified to a number of sticks used per activity feels better.
Would it work for everyone? Of course not, but if RAM makes more sense to someone than spoons or spell slots as it does for me, then I'm more than happy to send it into the world and see if it sticks. I'd like to see what other ideas people come up with. I feel like it's a universal enough concept that it can be applied to other things.
And who knows, maybe one day soon cybernetic modifications will be the norm, and then we can really see how much RAM your average person uses to do their day-to-day business. The future is limitless.
Laters!
2 notes · View notes
alln64games · 11 months ago
Text
Pokémon Stadium
Tumblr media
JP release: 30th April 1999
NA release: 6th March 2000
PAL release: 23rd March 2000 (AU), 7th April 2000 (EU)
Developer: Nintendo
Publisher: Nintendo
N64 Magazine Score: 90%
Tumblr media
One of my strangest gaming choices as a kid was picking Pokémon Stadium. I enjoyed the show, but I wasn’t a fan of the Game Boy games. The problem with Stadium is that it’s mainly a companion piece for Red, Blue and Yellow, so your experience is hampered by not having them. I did try using a save file I found online, but it didn’t have that many high level Pokémon (although it did have a surfing Raichu).
Tumblr media
One thing I did enjoy was the minigames. There are only nine (with a few duds), but you can have a lot of fun with friends. The Lickitung one especially is great, where you have to eat the most sushi. For the tournaments, you can borrow rental Pokémon from the game – choosing any of the first 149 Pokémon (Mewtwo and Mew can be unlocked, too). However, these aren’t as powerful as the ones trained by yourself, and you can’t modify their abilities.
Tumblr media
The battles themselves feature 3D models of all the Pokémon, and they’re all wonderfully animated, along with their moves (although the Pokémon don’t directly hit each other). It was a great way to see the Pokémon you trained on your TV, especially so if you and a friend both have the Game Boy games, as it provides an easy way to select your team. Stadium also allowed you to play the Game Boy games directly on your TV, too. I do find it odd that Nintendo never released a “Game Boy Player” to work with the Transfer Pak.
Tumblr media
As a companion piece to Pokémon Red, Blue and Yellow, Stadium is a wonderful bit of software. Without the Game Boy game, however, and the game is much more difficult due to the rental Pokémon not being as good.
But it’s not just seeing the Pokémon brought vividly to life that makes Pokémon Stadium such a joy – it’s watching them take part in the gut-tightening battles that unfold on screen. On the Game Boy, the various fighting moves looked as cute and harmless as the monsters themselves – in glorious 3D, they’re truly frightening. Giant balls of electricity sparkle, hissing beams of pure ice are thrown around the arena, fire roars across the screen, and eerie light shows play behind Pokémon as they execute hypnotic attacks.
- Mark Green, N64 Magazine #41
Remake or remaster?
With the Pokémon games now being on Switch, the features of this should be part of the main games.
Official Ways to get the game
There is no way to buy a new copy of Pokémon Stadium, the only official way to play is to rent it via the Nintendo Switch Online + Expansion Pak. It should also be noted that it has no Game Boy compatibility, so you’re stuck with the rental Pokémon.
10 notes · View notes
peskellence · 1 year ago
Text
Tumblr media
Pairing: RK900/Gavin Reed
Tags: Post Pacifist Ending, Enemies to Friends to Lovers, Slow Burn, Smut, Angst, Hurt/Comfort
Masterlist
Read on AO3 here:
Summary: A lot has changed since the revolution. Crimes against androids are now being treated with greater severity, with many being subject to the same penalties as crimes against humans. While anti-android attitudes are on the decline, transforming the mindset of an entire city is no simple task.
A reluctant Gavin Reed and his new partner RK900 have been assigned to investigate a string of disturbing murders. Despite the shift in Detroit's social climate, Gavin still holds reservations about whether or not androids are truly alive. Will his developing feelings for 'Nines' prompt a shift in perspective?
Warnings: Graphic Violence, Depression/Self Destructive Behaviour, Smut
Word Count: 3.8K
With the report of the events that had taken place received by the higher DPD officials, Nines' behaviour had been formally classified. Gavin caught a glimpse of it on Fowler’s monitor when he was called in to make his statement: 
Employee Classification: Android.
Model: RK900.
Incident Type: Software Malfunction - Moderate. 
Suggested Action(s): Performance Review.
Given the gravity of what had occurred, it seemed a massive understatement, and unfairly dismissive. A sign that the system had not fully reformed its treatment of android employees, with language that harkened back to pre-revolution days. 
At the very least, the captain seemed to agree that the official ruling was somewhat short-sighted, acting swiftly in ordering a welfare check. Had Nines been human, the situation would likely be received with a much greater degree of compassion. His actions in the lead-up to Gavin's assault comparable to a psychological breakdown. 
Gavin felt close to one himself, staring through his sleep-deprived haze at the vacant chair at the end of his desk. A gentle voice broke through to him as a hand rested reassuringly on his shoulder. "Gav, you shouldn't be here right now. I can see how tired you are."
Tina had graciously allowed him to spend the night at hers. The gesture had been appreciated, as the thought of going home alone after what had happened had proved unbearable. Despite the security her presence provided, he'd not been able to sleep. Closed eyes conjured nothing but images of Nines' face. A frantic, disordered sequence of disturbed mania, detached vacancy, and fearful anguish. Replaying endlessly in his mind like a twisted slideshow.
"Why don't you go and see Fowler? Get him to sign you off for the rest of the day," Tina thoughtfully suggested. "You were injured on duty, after all." 
As Gavin continued to ruminate, his head pulsed with the twin rhythms of a steady migraine and the wound carved into the back. He cupped it gently, and it burned at the contact—another nagging reminder of the previous day's events. Glancing up at the station clock, he glowered grimly at the time shown:
"Twenty-four hours. It's been twenty-four hours since we last saw him."
Tina seemed more than a little perturbed but persisted in her attempts to lift her friend's spirits. "Tell you what. I’ll give you my keys. Head back to mine, and you can borrow my slanket." She gave his shoulder a firm nudge but with no actual weight behind it. "I swear I won't even be mad if you eat the rest of my pizza. As long as you promise to get some rest." 
"I won't be able to rest" Gavin balled hands into his dishevelled hair, dangerously close to pulling out in large clumps. "Not until they find him."
"Hey, have some faith in your colleagues.You've got Detroit's Okayest Officers on this."
Gavin didn't laugh at the joke, causing Tina's smile to falter. With added severity, she leaned closer, hugging herself to the back of his chair but stopping shy of an actual embrace. The detective had never been the cuddly sort, of which she was acutely aware. "No one is going to stop looking, not until we've found him—but you torturing yourself like this won't change anything." 
"I can't fucking help it, I just keep thinking."
"Well, there's your problem."
"I keep thinking—" he persisted, shooting her an sour look. "What if he doesn't come back?"
Tina seemed to take a moment to consider the possibility before shaking her head in reassurance. "Nines doesn't seem like the reckless type. I doubt he's skipped town or anything." 
"He wasn't acting like himself. Who the Hell knows what he might do?" His head drooped limply over his desk as he lost all energy to hold it upright. "He said he'd been 'compromised'. What does that mean?"
"I don't know, that seems like an android-coded question." 
"But it can't be good, right?"
"I could ask Jasmine?" Tina suggested, in an apparent attempt to be constructive. "She's my friend at Reception. The ST300."
Gavin was less than amenable to the suggestion. "The one you hooked up with at the Christmas party? This is serious.”
"Hey, I never said that we hooked up. I said that I don't kiss and tell," Tina held up her hands defensively. "and I am being serious. All I'm saying is that maybe 'compromised' is not as bad as it sounds." 
"He rebooted, Ti. How is that not bad?"
"Could be quite normal for androids?" she suggested optimistically. "He'd just had a big emotional shock, what with the other RK900. Maybe it was just a blip." 
While Gavin knew the comment had been well-intentioned, he couldn't help but bristle at the wording. "It wasn't a blip. It had been going on for hours. It was like he was slowly breaking down from the moment he got that dispatch call."
Realising that her friend seemed determined to deflect any and all attempts at reassurance, Tina finally relented. She gave Gavin's shoulder one final, reassuring squeeze before slowly pulling away. 
"If you really don't want to rest, at the very least, let me get you a coffee." Turning towards the canteen, she gave him a parting glance over the shoulder, and gestured with her head towards his workstation. "Wait here, okay?"
In her absence, Gavin continued to rack his brains for any details that may prove significant in locating his partner. Consideration was made for every agonising word he'd uttered, trying to determine if they held any answers. 
Tina may have been correct in her suggestion that this was an android-specific issue. Consulting an android officer was likely his best bet, but it would need to be someone who knew Nines, at least on a rudimentary level. Enough to know where he might retreat in a time of psychological crisis. 
Wait. Gavin shot up, cursing his exhausted mind for not determining the answer sooner. Connor. That little rat.
His partner's predecessor clearly knew more than he was letting on, made evident by the warning he had imparted to Gavin just a couple of days prior:
"Nines mustn't experience any undue emotional stress. I ask that you not push him too much." 
Gavin stormed through the precinct, a newfound target in mind. Rage was building fast, coiling in his stomach like a hissing viper. He found the android by his usual station, at the desk conjoining Anderson's. He was pacing about aimlessly, head dipped and LED signalling a marked level of distress. The detective felt no empathy for this, proceeding undeterred in his heated march.
"You", he hissed viciously, levying a pointed finger at his coworker. 
Connor was startled from his dissociative state and looked up with panicked eyes to see who had addressed him. Locking onto the detective, his troubled expression became more frenzied. He dashed forward, grabbing the man firmly by the forearms. 
"Gavin, please tell me you've heard from him", he babbled. "I have tried to make contact several times, but he has blocked our communication channel. He has never done this before, I'm—" 
Gavin lunged forward, snarling, as he balled his hands into the front of his shirt. He shoved the android back, propelling him into a nearby wall and pinning him against it. The android made no attempt to break his hold, appearing too shocked to do so.
"You knew this would happen." He pulled Connor forward before slamming him back, watching as his head ricocheted against the sturdy surface. "And you fucked me around, letting me think it was jealousy. You didn't tell me that 'pushing' Nines would blow a fuse in his fucking brain."
Connor seemed to recover some of his lost composure in the wake of the heightened stakes. He tightened his grip on Gavin’s arms in a defensive gesture. "I am sorry. I wanted to say more, but he wouldn’t have liked me to." 
"Well, he isn't here." He pulled Connor back again before letting go, resulting in another slam. "So start talking. Right now. Or I swear I'll finish what we started in that Archive Room."
A flash of recollection crossed the android's eyes at the events the man was referring to. There was a subtle twitch of his lips, like the ghost of a smug smile, before it disappeared.
"I didn't think there would be another RK900. If I'd ever known there would ever be a situation where he would have—to be reminded of—" The android stalled, his mouth twitching unnaturally as he wrestled to get his words out. "He never wanted to be here, this job. I was the one who suggested he put himself forward. I thought it would be good for him."
The aimless ramblings rewarded him with a sharp smack across the face. The android's head snapped back with inhuman fluidity, bringing attention to how utterly pointless the action had been. There was no sense in striking someone who was incapable of feeling pain. Still, Gavin was willing to try, unable to see sense through the blinding mist of rage.
"Nines has seen plenty of mangled androids. I know it doesn’t make a difference to you, seeing your face. You don't think about it the same way we do. So what the fuck made this one so special?" 
Connor paused again, looking increasingly uncomfortable. His grip tightened further as he finally appeared ready to push Gavin away. "I need Hank. Let me find him." 
"Oh no, you're not calling on Anderson to come and bail you out." Gavin increased the pressure until their bodies were almost entirely flush. The pressure crushed against his chest, and his words came hissed through laboured breaths. "Did he know him? The RK900? Is that why he was so fucked up?"
"He didn't know him. He couldn't have." 
"How can you be so sure?" 
Connor stared fixedly ahead with a look that was both hollow and stricken. His voice, barely audible, trembled softly as he posed a chilling query. "Have you ever met another RK900? Had you ever even seen one before yesterday?" 
The question landed like a blow, leaving Gavin stunned. "No." 
"There's a reason for that." The gentle tremble in his voice persisted, his pale face blanketed by a flickering red. "Nines didn't know there were others, neither did I." 
"That doesn't make any sense. He's not a unique model; there will be thousands of others!" 
"Other models remain…intact…but they are dormant. Locked in warehouses across Detroit." 
The words ignited something in the recesses of Gavin's unfurling mind. Biting words that had been levied at Nines by the old man outside of Mikey’s Electronics. The comment he had made on his face. He had seen a warehouse on the news, filled with androids sharing that face. 
His simmering anger hastily spread into a raging inferno. The thought that Nines, his Nines, could have been abandoned in some warehouse. Left to remain forever dormant and ultimately forgotten. "So why don't they go and get them? Your friend, the one from the Revolution." 
"Markus."
"Yeah, him and the rest of his buddies. Why would they just leave them there?" The words were heavy with accusation as disgust curdled in his stomach. "Seems like they’ve saved every bastard else." 
"They can't, Gavin."
"Why not?"
"They tried before...once." There was a weighty pause that broke the sentence. One that did nothing to quell Gavin’s unfurling nerves. "They can't go back for the others. The risk is too high."
"What could be so bad that they're willing to leave them to rust?"
Connor fell silent again as though caught in the grip of some deep-repressed trauma. His haunted eyes told the story of some terrible, abhorrent reality that was entirely beyond articulation. 
"Jesus, what happened…?" The muttered question tapered off as his grip on the captive android slackened. 
With the freedom to move once more, Connor subtly readjusted his skewed tie. "We need to get through to Nines", he stressed. "Our connection permits me to track his movements, but with his channels closed off, it only allows for a limited range. He has gone somewhere he knows I can't see." 
“I shouldn't have gotten angry." Gavin cursed under his breath, too drained to suppress the forlorn lament. "I'm so fucking stupid."
There was no doubt that grabbing Nines had been the tipping point. The action that broke his partner’s resolve. If something terrible, potentially irreversible, had happened to him, it would be his own fault. 
There was no sense wallowing in hypotheticals, however. Gavin knew he needed to stay strong if he hoped to bring his partner back to him.
"This tracker: When you say 'limited range', how far does it spread?"
"Approximately 500 feet."
He snorted contemptuously at the underwhelming figure. "What fucking use is that? That doesn't even reach my—" His words trailed off abruptly as a rogue speculation ensnared his mind. "Oh shit. I think I know where he is."
Gavin charged forward, out of the station, and into the torrential downpour outside. His body felt weak with aches of exhaustion, but his mind remained focused. Arriving outside his apartment complex, he dashed past the broken elevator and towards a winding metal staircase, heading for the fourth floor.
Numb hands fumbled wildly inside his pockets until they found his keys. His grip was inhibited as he helplessly dithered to turn the lock, and when it finally clicked free, he slammed the door open with such ferocity that it dented the wall. 
Upon realisation that the action may have compromised his security deposit, he shut the door and made a note to assess the damage later. There were more pressing matters at hand.  
"Nines?"
He was greeted by silence, as his frantic eyes darted across the empty living room. Ignoring the now searing pain that permeated his legs, he took off for the bedroom and peered inside. Empty.
The bathroom was next, which really should have been the first point of call. If Nines was in the apartment, then there was only one place that he'd realistically want to be. Upon stepping into the room, he found it filled with its usual occupants. The kittens were snuggled against their mother, as gentle purrs echoed out. There was no one else that accompanied them.
Having lost the will to continue his search, Gavin conceded to the weight of his exhaustion, and sank weakly to his knees. Frustration stung his eyes, and he pushed it back with the heel of his palm. 
He's not here. 
Why would he be? 
Then he heard a noise—a distant shuffle, coming from his kitchen. As his hope rekindled, he pulled himself up and hurriedly marched toward the sound. 
The android stood at one of the counters, his back turned towards him:
"You keep a spare key under your mat", he said plainly. "That is hardly a secure practice. Had I realised sooner, I could have avoided my excursion up your fire escape." 
"Nines." The name was ripped from his lips as a pained gasp. “Holy shit, where have you been? Everyone's been worried sick."
"I have been here for quite some time." Nines continued to busy himself with some unseen task, not bothering to glance up. "I apologise if my presence is unwelcome. I could hear Tiffany crying from outside, and I was concerned for her wellbeing."
The android turned, revealing a replenished pet bowl in his hand. As he zoned in on his partner, a newfound concern etched his face. 
"You're drenched."
Gavin looked down at the damp material that clung uncomfortably to his body. "Well, yeah, I would be. It's a monsoon outside."
"Your body temperature is low, and your immune response at risk of becoming compromised." The worry was delivered with measured formality as he completed a scan of his partner's vitals. "I suggest you change immediately." 
"What happened yesterday?" Gavin demanded, swiftly deflecting the concerns. "Are you okay?"
Nines' lips tightened into a tense line. He looked to the bowl before placing it down in subdued resignation. "My systems have stabilised. For now. I believe this state is tenuous; I have no idea how long it will last."
"Oh my God, can you just give me a straight answer for once?" The detective's mouth pulled into a joyless sneer as he barked out a sharp laugh. "I don't know how much more I can take of this fucking mystery act."
"It is a matter that needn’t concern you. Now, or ever again. I am leaving the DPD." 
Gavin's laboured breathing stilled as he stared his partner down in cold accusation. "...Nines, this is a really shitty time to start cracking jokes." 
The android stared back, his grey eyes steady and resolute. Betraying no hint of hyperbole or exaggeration. 
"You can’t be serious." There was an uncomfortable feeling of tightness that gripped his neck. "They can't fire you. We're in the middle of an investigation. We're so close." 
"My departure would be by my own choice," Nines swiftly clarified. "I have realised that my presence at the precinct may be putting others at undue risk."
"Since when are you putting anyone at risk?"
The stern facade crumbled, revealing all the harboured sentiment hidden behind Nines' detached words. "I hurt you. I cannot allow something like that to happen again."
"So what? You're not the first person to fuck up like that. Just today, I roughed up Connor, thinking he'd know where you were."
Nines' crestfallen expression tapered, morphing into a look of surprise, followed shortly by exasperation. Gavin, becoming aware of his mistake, tried to mitigate. 
"I mean, not 'roughed up' roughed up. I pinned him to a wall and smacked him around a bit." Gavin winced at his own clumsy wording, realising the myriad of ways the statement could be misinterpreted. “He's fine. The point is, you lost your temper. I do that all the time. I'm not going to hold it against you."
"This is different", Nines explained, his voice filled with a palpable turmoil. "It is not simply a case of losing my temper. I am dangerous. Unstable." 
Gavin dismissed the notion with a harsh snort. "Oh, come on. You might make out like you're some big scary Terminator, but I've seen the other side of you. I know you're more than that." 
"Am I? How could you possibly know when I have no idea?"
The room echoed with the lingering boom of Nines' impassioned words before a tense hush settled.
"...You have no idea what I was designed to be. The sort of monster I am." 
"Who gives a shit what you were designed to be?" Gavin hissed back, "Remember what you said before? About self-improvement? Maybe you should apply some of that to yourself." 
"I cannot change. I am bound to my programme."
"Bullshit. We wouldn't be having this conversation if you were just a machine." 
"Can never be enough—A fool to think otherwise—" His sentences became clipped, echoing the previous day's pattern. 
Panic gripped Gavin as he felt a urgent need to snap Nines out of his volatile state. "Look, I don't know what's making you talk like that. God knows your brother wasn't willing to tell me—but I do know a thing or two about not feeling like you're enough."
He had succeeded in his attempt to break through. The android's eyes widened in alarm, as he seemed to realise the man's intentions. "You don't need to do this."
"Well, I want to. So shut up and listen." With a shaky breath through clenched teeth, Gavin steeled himself to continue. "My whole life, it always felt like my dad was the only person who ever believed in me, and after he died, I tried so fucking hard to change that." 
His voice was thick and strained. He paused, taking a moment to compose himself. 
"Just before we met, I was at the point of giving up. I don't know what finally did it, maybe it was my shithead boyfriend leaving. Or maybe I just realised that nothing I do will ever be good enough—because no matter what, I'll always be living in his shadow." 
"Elijah Kamski."
Gavin gaped back in surprise, wondering how long Nines had known—or if he'd always known.
"To feel so inferior, like a part of yourself is fundamentally lacking." Nines’ eyes gleamed with empathy as his lips pulled into a comforting smile. "I've only known such emotions for a couple of months. I can't imagine how torturous it must have been. To have felt that way for so long."
"It’s not been great, I'll tell you that," Gavin replied with an embittered chuckle. "I don't know what happened to you, Nines, and we don't have to talk about it. Just know I want to help." 
Tears welled in the corners of Nines' eyes, on the brink of overflowing. "You're a good man, Gavin. Much more than you give yourself credit for," A deft hand brushed away the traces as he quickly straightened his posture, "but I am beyond help." 
Gavin was engulfed by an overwhelming sense of defeat—like the walls were closing in, steadily crushing him. 
"I will contact Captain Fowler and request that RK800 and Lieutenant Anderson assist you with the remainder of our case. It is for the best if we have no further involvement."
"So that's it, then?" He spat out the words, feeling a sickening burn rise in his throat. "We're done? Back to being strangers like nothing happened?"
"I am sorry. Truly, I am. When we became partners, I never expected to be feeling the way I am now." 
In an instant, Gavin understood. The way Nines’ intense gaze softened in a way that seemed reserved entirely for him. As though he were something he treasured deeply, with nothing else in the world holding the same significance. 
"What do you feel?"
Nines averted his eyes, and it only confirmed what he already knew. The answer was clear, but he pressed nonetheless.
"Just say it. Don't be a fucking coward." 
"It's too much," Nines lamented, his voice trembling with ill-suppressed anguish. "All of it—more than I can bear."
"You can’t do this to me." 
"To know you, the real you, has been a privilege." There was no attempt to hide the tears this time as they cascaded down his face. "Take good care of the cats." 
"Don't—" Gavin grasped his arm, attempting to halt his departure, but Nines effortlessly broke free. As the android moved away, he considered grabbing him again, but he knew it would be pointless. However, this did not stop him from pursuing as he followed obstinately out of the kitchen. 
"You didn't give up on me, and I sure as Hell am not giving up on you." The promise fell on deaf ears, and his desperation escalated. 
"...I'll wait." 
The android halted, seemingly out of shock, casting a hesitant glance back.
"I mean shit, how can you expect me to go back now, knowing what I could have had?" His choked words broke into pained laughs, as he gently shook his head. "I don't have forever like you. I'll get old, and I'll die, and I'll still be waiting. You want that on your conscience?" 
"No. It would be a terrible waste of life. One that I implore you to reconsider" Nines opened the door and stepped through, appearing determined to move forward. Not willing to risk that he might change his mind. "Goodbye, Gavin." 
13 notes · View notes
cooganbegs-blog · 4 months ago
Text
Oh gawd, it’s all unravelling!! I’ve resorted to asking my ChatGPT for advice on how to handle this!! This is the context I put it:
work in a small startup with 7 other people
I have been brought on for a three month contract to assess the current product and make recommendations for product strategy, product roadmap, improved engineering and product processes with a view to rebuilding the platform with a new product and migrating existing vendors and borrowers across
There is one engineer and no-one else in the company has any product or technical experience
The engineer has worked on his own for 6 years on the product with no other engineering or product person
He does all coding, testing, development, devops tasks
He also helps with customer support enquires
He was not involved in the process of bringing me onboard and felt blindsided by my arrival
I have requested access to Github, and his response was:
As you can imagine access to the source code is pretty sensitive. Are you looking for something specifically? And do you plan on downloading the source code or sharing with anyone else?
He then advised they only pay for a single seat
I have spoken with the Chief Operations Officer who I report to in the contract and advised my business risk concerns around single point of failure
I have still not been granted access to Github so brought it up again today with the COO, who said he had requested 2 weeks ago
The COO then requested on Asana that the engineer add myself and himself as Github users
I received the following from the engineer:
Hey can you please send me your use cases for your access to GitHub? How exactly are you going to use your access to the source code?
My response:
Hey! My request isn’t about making changes to the codebase myself but ensuring that Steward isn’t reliant on a single person for access.
Here are the key reasons I need GitHub access:
1 Business Continuity & Risk Management – If anything happens to you (whether you’re on holiday, sick, or god forbid, get hit by a bus!!), we need someone else with access to ensure the platform remains operational. Right now, Steward has a single point of failure, which is a pretty big risk.
2 Product Oversight & Documentation – As Head of Product, I need visibility into the codebase to understand technical limitations, dependencies, and opportunities at a broad level. This DOESN'T mean I’ll be writing code, but I need to see how things are structured to better inform product decisions and prioritization.
3 Facilitating Future Hiring – If we bring in additional engineers or external contractors, we need a structured process for managing access. It shouldn't be on just one person to approve or manage this.
Super happy to discuss any concerns you have, but this is ultimately a business-level decision to ensure Steward isn’t putting itself at risk.
His response was:
1&3 Bridget has user management access for those reasons
2. no one told me you were Head of Product already, which isn’t surprising. But congrats! So will you be sharing the source code with other engineers for benchmarking?
The software engineer is an introvert and while not rude is helpful without volunteering inflation
He is also the single access for AWS, Sentry, Persona (which does our KYC checks).
I already had a conversation with him as I felt something was amiss in the first week. This was when he identified that he had been "blindsided" by my arrival, felt his code and work was being audited. I explained that it had been a really long process to get the contract (18 months), also that I have a rare mix of skills (agtech, fintech, product) that is unusually suited to Steward. I was not here to tell him what to do but to work with him, my role to setup the strategy and where we need to go with the product and why, and then work with him to come up with the best solution and he will build it. I stressed I am not an engineer and do not code.
I have raised some concerns with the COO and he seems to share some of the misgivings, I sense some personality differences, there seems like there are some undercurrents that were there before I started.
I have since messaged him with a gentler more collaborative approach:
Hey, I’ve been thinking about GitHub access and wanted to float an idea, would it make sense for us to do a working session where you just walk me through the repo first? That way, I can get a sense of the structure without us having to rush any access changes or security decisions right away. Then, we can figure out what makes sense together. What do you think?
I’m keen to understand your perspective a bit more, can we chat about it tomorrow when you're back online? Is 4pm your time still good? I know you’ve got a lot on, so happy to be flexible.
I think I’ve fucked it up, I’m paranoid the COO is going to think I’m stirring up trouble and I’m going to miss out on this job. How to be firm yet engage with someone that potentially I’ll have to work closely with(he’s a prickly, hard to engage Frenchie, who’s lived in Aus and the US for years).
5 notes · View notes
lboogie1906 · 4 months ago
Text
Tumblr media
Dr. Janet Emerson Bashen (February 12, 1957) is the founder and CEO of the Bashen Corporation, a private consulting group that investigates Equal Employment Opportunity complaints under Title VII of the 1964 Civil Rights Act. She is the first African American woman in the US to hold a software patent.
Born in Mansfield, Ohio, her family moved to Huntsville, where her father worked as a garbage collector and her mother was the city’s first African American woman emergency room nurse.
She attended Alabama A&M until she married. She finished her BA in Legal Studies and Government at the University of Houston and continued her education at Rice University. She attended Harvard University’s “Women and Power: Leadership in a New World.” She received a Ph.D. from USC’s Suzanne Dworak-Peck School of Social Work.
She called for the creation of third-party teams to investigate EEO claims as they arose in her company’s workplace. She argued that third-party investigators would be less subject to influence from either side in complaints. She borrowed $5,000 from her mother to start her EEO complaints management business.
The new Bashen Corporation specialized in investigating complaints made to the Equal Employment Opportunity Commission under Title VII of the Civil Rights Act of 1964. Within the first five years, she oversaw EEO investigations at Flagstar Corporation, Compaq Computers, Goodyear Tires, and General Motors. She faced a new problem: storing and retrieving information related to Equal Employment Opportunity cases. She worked with her cousin, Donny Moore, to develop software that could securely store information about her cases. She filed a patent for LinkLine, and that patent was approved.
She received the Pinnacle Award from the Houston Chamber of Commerce, the Crystal Award from the National Association of Negro Women in Business, and recognition from the Massachusetts Institute of Technology for LinkLine at the World Festival of Black Arts and Culture in Dakar. She was elected to the Women’s Leadership Board at Harvard’s Kennedy School. She is a member of the Black Inventor’s Hall of Fame. #africanhistory365 #africanexcellence
2 notes · View notes
this-week-in-rust · 8 months ago
Text
This Week in Rust 572
Hello and welcome to another issue of This Week in Rust! Rust is a programming language empowering everyone to build reliable and efficient software. This is a weekly summary of its progress and community. Want something mentioned? Tag us at @ThisWeekInRust on X (formerly Twitter) or @ThisWeekinRust on mastodon.social, or send us a pull request. Want to get involved? We love contributions.
This Week in Rust is openly developed on GitHub and archives can be viewed at this-week-in-rust.org. If you find any errors in this week's issue, please submit a PR.
Want TWIR in your inbox? Subscribe here.
Updates from Rust Community
Official
October project goals update
Next Steps on the Rust Trademark Policy
This Development-cycle in Cargo: 1.83
Re-organising the compiler team and recognising our team members
This Month in Our Test Infra: October 2024
Call for proposals: Rust 2025h1 project goals
Foundation
Q3 2024 Recap from Rebecca Rumbul
Rust Foundation Member Announcement: CodeDay, OpenSource Science(OS-Sci), & PROMOTIC
Newsletters
The Embedded Rustacean Issue #31
Project/Tooling Updates
Announcing Intentrace, an alternative strace for everyone
Ractor Quickstart
Announcing Sycamore v0.9.0
CXX-Qt 0.7 Release
An 'Educational' Platformer for Kids to Learn Math and Reading—and Bevy for the Devs
[ZH][EN] Select HTML Components in Declarative Rust
Observations/Thoughts
Safety in an unsafe world
MinPin: yet another pin proposal
Reached the recursion limit... at build time?
Building Trustworthy Software: The Power of Testing in Rust
Async Rust is not safe with io_uring
Macros, Safety, and SOA
how big is your future?
A comparison of Rust’s borrow checker to the one in C#
Streaming Audio APIs in Rust pt. 3: Audio Decoding
[audio] InfinyOn with Deb Roy Chowdhury
Rust Walkthroughs
Difference Between iter() and into_iter() in Rust
Rust's Sneaky Deadlock With if let Blocks
Why I love Rust for tokenising and parsing
"German string" optimizations in Spellbook
Rust's Most Subtle Syntax
Parsing arguments in Rust with no dependencies
Simple way to make i18n support in Rust with with examples and tests
How to shallow clone a Cow
Beginner Rust ESP32 development - Snake
[video] Rust Collections & Iterators Demystified 🪄
Research
Charon: An Analysis Framework for Rust
Crux, a Precise Verifier for Rust and Other Languages
Miscellaneous
Feds: Critical Software Must Drop C/C++ by 2026 or Face Risk
[audio] Let's talk about Rust with John Arundel
[audio] Exploring Rust for Embedded Systems with Philip Markgraf
Crate of the Week
This week's crate is wtransport, an implementation of the WebTransport specification, a successor to WebSockets with many additional features.
Thanks to Josh Triplett for the suggestion!
Please submit your suggestions and votes for next week!
Calls for Testing
An important step for RFC implementation is for people to experiment with the implementation and give feedback, especially before stabilization. The following RFCs would benefit from user testing before moving forward:
RFCs
No calls for testing were issued this week.
Rust
No calls for testing were issued this week.
Rustup
No calls for testing were issued this week.
If you are a feature implementer and would like your RFC to appear on the above list, add the new call-for-testing label to your RFC along with a comment providing testing instructions and/or guidance on which aspect(s) of the feature need testing.
Call for Participation; projects and speakers
CFP - Projects
Always wanted to contribute to open-source projects but did not know where to start? Every week we highlight some tasks from the Rust community for you to pick and get started!
Some of these tasks may also have mentors available, visit the task page for more information.
If you are a Rust project owner and are looking for contributors, please submit tasks here or through a PR to TWiR or by reaching out on X (formerly Twitter) or Mastodon!
CFP - Events
Are you a new or experienced speaker looking for a place to share something cool? This section highlights events that are being planned and are accepting submissions to join their event as a speaker.
If you are an event organizer hoping to expand the reach of your event, please submit a link to the website through a PR to TWiR or by reaching out on X (formerly Twitter) or Mastodon!
Updates from the Rust Project
473 pull requests were merged in the last week
account for late-bound depth when capturing all opaque lifetimes
add --print host-tuple to print host target tuple
add f16 and f128 to invalid_nan_comparison
add lp64e RISC-V ABI
also treat impl definition parent as transparent regarding modules
cleanup attributes around unchecked shifts and unchecked negation in const
cleanup op lookup in HIR typeck
collect item bounds for RPITITs from trait where clauses just like associated types
do not enforce ~const constness effects in typeck if rustc_do_not_const_check
don't lint irrefutable_let_patterns on leading patterns if else if let-chains
double-check conditional constness in MIR
ensure that resume arg outlives region bound for coroutines
find the generic container rather than simply looking up for the assoc with const arg
fix compiler panic with a large number of threads
fix suggestion for diagnostic error E0027
fix validation when lowering ? trait bounds
implement suggestion for never type fallback lints
improve missing_abi lint
improve duplicate derive Copy/Clone diagnostics
llvm: match new LLVM 128-bit integer alignment on sparc
make codegen help output more consistent
make sure type_param_predicates resolves correctly for RPITIT
pass RUSTC_HOST_FLAGS at once without the for loop
port most of --print=target-cpus to Rust
register ~const preds for Deref adjustments in HIR typeck
reject generic self types
remap impl-trait lifetimes on HIR instead of AST lowering
remove "" case from RISC-V llvm_abiname match statement
remove do_not_const_check from Iterator methods
remove region from adjustments
remove support for -Zprofile (gcov-style coverage instrumentation)
replace manual time convertions with std ones, comptime time format parsing
suggest creating unary tuples when types don't match a trait
support clobber_abi and vector registers (clobber-only) in PowerPC inline assembly
try to point out when edition 2024 lifetime capture rules cause borrowck issues
typingMode: merge intercrate, reveal, and defining_opaque_types
miri: change futex_wait errno from Scalar to IoError
stabilize const_arguments_as_str
stabilize if_let_rescope
mark str::is_char_boundary and str::split_at* unstably const
remove const-support for align_offset and is_aligned
unstably add ptr::byte_sub_ptr
implement From<&mut {slice}> for Box/Rc/Arc<{slice}>
rc/Arc: don't leak the allocation if drop panics
add LowerExp and UpperExp implementations to NonZero
use Hacker's Delight impl in i64::midpoint instead of wide i128 impl
xous: sync: remove rustc_const_stable attribute on Condvar and Mutex new()
add const_panic macro to make it easier to fall back to non-formatting panic in const
cargo: downgrade version-exists error to warning on dry-run
cargo: add more metadata to rustc_fingerprint
cargo: add transactional semantics to rustfix
cargo: add unstable -Zroot-dir flag to configure the path from which rustc should be invoked
cargo: allow build scripts to report error messages through cargo::error
cargo: change config paths to only check CARGO_HOME for cargo-script
cargo: download targeted transitive deps of with artifact deps' target platform
cargo fix: track version in fingerprint dep-info files
cargo: remove requirement for --target when invoking Cargo with -Zbuild-std
rustdoc: Fix --show-coverage when JSON output format is used
rustdoc: Unify variant struct fields margins with struct fields
rustdoc: make doctest span tweak a 2024 edition change
rustdoc: skip stability inheritance for some item kinds
mdbook: improve theme support when JS is disabled
mdbook: load the sidebar toc from a shared JS file or iframe
clippy: infinite_loops: fix incorrect suggestions on async functions/closures
clippy: needless_continue: check labels consistency before warning
clippy: no_mangle attribute requires unsafe in Rust 2024
clippy: add new trivial_map_over_range lint
clippy: cleanup code suggestion for into_iter_without_iter
clippy: do not use gen as a variable name
clippy: don't lint unnamed consts and nested items within functions in missing_docs_in_private_items
clippy: extend large_include_file lint to also work on attributes
clippy: fix allow_attributes when expanded from some macros
clippy: improve display of clippy lints page when JS is disabled
clippy: new lint map_all_any_identity
clippy: new lint needless_as_bytes
clippy: new lint source_item_ordering
clippy: return iterator must not capture lifetimes in Rust 2024
clippy: use match ergonomics compatible with editions 2021 and 2024
rust-analyzer: allow interpreting consts and statics with interpret function command
rust-analyzer: avoid interior mutability in TyLoweringContext
rust-analyzer: do not render meta info when hovering usages
rust-analyzer: add assist to generate a type alias for a function
rust-analyzer: render extern blocks in file_structure
rust-analyzer: show static values on hover
rust-analyzer: auto-complete import for aliased function and module
rust-analyzer: fix the server not honoring diagnostic refresh support
rust-analyzer: only parse safe as contextual kw in extern blocks
rust-analyzer: parse patterns with leading pipe properly in all places
rust-analyzer: support new #[rustc_intrinsic] attribute and fallback bodies
Rust Compiler Performance Triage
A week dominated by one large improvement and one large regression where luckily the improvement had a larger impact. The regression seems to have been caused by a newly introduced lint that might have performance issues. The improvement was in building rustc with protected visibility which reduces the number of dynamic relocations needed leading to some nice performance gains. Across a large swath of the perf suit, the compiler is on average 1% faster after this week compared to last week.
Triage done by @rylev. Revision range: c8a8c820..27e38f8f
Summary:
(instructions:u) mean range count Regressions ❌ (primary) 0.8% [0.1%, 2.0%] 80 Regressions ❌ (secondary) 1.9% [0.2%, 3.4%] 45 Improvements ✅ (primary) -1.9% [-31.6%, -0.1%] 148 Improvements ✅ (secondary) -5.1% [-27.8%, -0.1%] 180 All ❌✅ (primary) -1.0% [-31.6%, 2.0%] 228
1 Regression, 1 Improvement, 5 Mixed; 3 of them in rollups 46 artifact comparisons made in total
Full report here
Approved RFCs
Changes to Rust follow the Rust RFC (request for comments) process. These are the RFCs that were approved for implementation this week:
[RFC] Default field values
RFC: Give users control over feature unification
Final Comment Period
Every week, the team announces the 'final comment period' for RFCs and key PRs which are reaching a decision. Express your opinions now.
RFCs
[disposition: merge] Add support for use Trait::func
Tracking Issues & PRs
Rust
[disposition: merge] Stabilize Arm64EC inline assembly
[disposition: merge] Stabilize s390x inline assembly
[disposition: merge] rustdoc-search: simplify rules for generics and type params
[disposition: merge] Fix ICE when passing DefId-creating args to legacy_const_generics.
[disposition: merge] Tracking Issue for const_option_ext
[disposition: merge] Tracking Issue for const_unicode_case_lookup
[disposition: merge] Reject raw lifetime followed by ', like regular lifetimes do
[disposition: merge] Enforce that raw lifetimes must be valid raw identifiers
[disposition: merge] Stabilize WebAssembly multivalue, reference-types, and tail-call target features
Cargo
No Cargo Tracking Issues or PRs entered Final Comment Period this week.
Language Team
No Language Team Proposals entered Final Comment Period this week.
Language Reference
No Language Reference RFCs entered Final Comment Period this week.
Unsafe Code Guidelines
No Unsafe Code Guideline Tracking Issues or PRs entered Final Comment Period this week.
New and Updated RFCs
[new] Implement The Update Framework for Project Signing
[new] [RFC] Static Function Argument Unpacking
[new] [RFC] Explicit ABI in extern
[new] Add homogeneous_try_blocks RFC
Upcoming Events
Rusty Events between 2024-11-06 - 2024-12-04 🦀
Virtual
2024-11-06 | Virtual (Indianapolis, IN, US) | Indy Rust
Indy.rs - with Social Distancing
2024-11-07 | Virtual (Berlin, DE) | OpenTechSchool Berlin + Rust Berlin
Rust Hack and Learn | Mirror: Rust Hack n Learn Meetup
2024-11-08 | Virtual (Jersey City, NJ, US) | Jersey City Classy and Curious Coders Club Cooperative
Rust Coding / Game Dev Fridays Open Mob Session!
2024-11-12 | Virtual (Dallas, TX, US) | Dallas Rust
Second Tuesday
2024-11-14 | Virtual (Charlottesville, NC, US) | Charlottesville Rust Meetup
Crafting Interpreters in Rust Collaboratively
2024-11-14 | Virtual and In-Person (Lehi, UT, US) | Utah Rust
Green Thumb: Building a Bluetooth-Enabled Plant Waterer with Rust and Microbit
2024-11-14 | Virtual and In-Person (Seattle, WA, US) | Seattle Rust User Group
November Meetup
2024-11-15 | Virtual (Jersey City, NJ, US) | Jersey City Classy and Curious Coders Club Cooperative
Rust Coding / Game Dev Fridays Open Mob Session!
2024-11-19 | Virtual (Los Angeles, CA, US) | DevTalk LA
Discussion - Topic: Rust for UI
2024-11-19 | Virtual (Washington, DC, US) | Rust DC
Mid-month Rustful
2024-11-20 | Virtual and In-Person (Vancouver, BC, CA) | Vancouver Rust
Embedded Rust Workshop
2024-11-21 | Virtual (Berlin, DE) | OpenTechSchool Berlin + Rust Berlin
Rust Hack and Learn | Mirror: Rust Hack n Learn Meetup
2024-11-21 | Virtual (Charlottesville, NC, US) | Charlottesville Rust Meetup
Trustworthy IoT with Rust--and passwords!
2024-11-21 | Virtual (Rotterdam, NL) | Bevy Game Development
Bevy Meetup #7
2024-11-25 | Bratislava, SK | Bratislava Rust Meetup Group
ONLINE Talk, sponsored by Sonalake - Bratislava Rust Meetup
2024-11-26 | Virtual (Dallas, TX, US) | Dallas Rust
Last Tuesday
2024-11-28 | Virtual (Charlottesville, NC, US) | Charlottesville Rust Meetup
Crafting Interpreters in Rust Collaboratively
2024-12-03 | Virtual (Buffalo, NY, US) | Buffalo Rust Meetup
Buffalo Rust User Group
Asia
2024-11-28 | Bangalore/Bengaluru, IN | Rust Bangalore
RustTechX Summit 2024 BOSCH
2024-11-30 | Tokyo, JP | Rust Tokyo
Rust.Tokyo 2024
Europe
2024-11-06 | Oxford, UK | Oxford Rust Meetup Group
Oxford Rust and C++ social
2024-11-06 | Paris, FR | Paris Rustaceans
Rust Meetup in Paris
2024-11-09 - 2024-11-11 | Florence, IT | Rust Lab
Rust Lab 2024: The International Conference on Rust in Florence
2024-11-12 | Zurich, CH | Rust Zurich
Encrypted/distributed filesystems, wasm-bindgen
2024-11-13 | Reading, UK | Reading Rust Workshop
Reading Rust Meetup
2024-11-14 | Stockholm, SE | Stockholm Rust
Rust Meetup @UXStream
2024-11-19 | Leipzig, DE | Rust - Modern Systems Programming in Leipzig
Daten sichern mit ZFS (und Rust)
2024-11-21 | Edinburgh, UK | Rust and Friends
Rust and Friends (pub)
2024-11-21 | Oslo, NO | Rust Oslo
Rust Hack'n'Learn at Kampen Bistro
2024-11-23 | Basel, CH | Rust Basel
Rust + HTMX - Workshop #3
2024-11-27 | Dortmund, DE | Rust Dortmund
Rust Dortmund
2024-11-28 | Aarhus, DK | Rust Aarhus
Talk Night at Lind Capital
2024-11-28 | Augsburg, DE | Rust Meetup Augsburg
Augsburg Rust Meetup #10
2024-11-28 | Berlin, DE | OpenTechSchool Berlin + Rust Berlin
Rust and Tell - Title
North America
2024-11-07 | Chicago, IL, US | Chicago Rust Meetup
Chicago Rust Meetup
2024-11-07 | Montréal, QC, CA | Rust Montréal
November Monthly Social
2024-11-07 | St. Louis, MO, US | STL Rust
Game development with Rust and the Bevy engine
2024-11-12 | Ann Arbor, MI, US | Detroit Rust
Rust Community Meetup - Ann Arbor
2024-11-14 | Mountain View, CA, US | Hacker Dojo
Rust Meetup at Hacker Dojo
2024-11-15 | Mexico City, DF, MX | Rust MX
Multi threading y Async en Rust parte 2 - Smart Pointes y Closures
2024-11-15 | Somerville, MA, US | Boston Rust Meetup
Ball Square Rust Lunch, Nov 15
2024-11-19 | San Francisco, CA, US | San Francisco Rust Study Group
Rust Hacking in Person
2024-11-23 | Boston, MA, US | Boston Rust Meetup
Boston Common Rust Lunch, Nov 23
2024-11-25 | Ferndale, MI, US | Detroit Rust
Rust Community Meetup - Ferndale
2024-11-27 | Austin, TX, US | Rust ATX
Rust Lunch - Fareground
Oceania
2024-11-12 | Christchurch, NZ | Christchurch Rust Meetup Group
Christchurch Rust Meetup
If you are running a Rust event please add it to the calendar to get it mentioned here. Please remember to add a link to the event too. Email the Rust Community Team for access.
Jobs
Please see the latest Who's Hiring thread on r/rust
Quote of the Week
Any sufficiently complicated C project contains an adhoc, informally specified, bug ridden, slow implementation of half of cargo.
– Folkert de Vries at RustNL 2024 (youtube recording)
Thanks to Collin Richards for the suggestion!
Please submit quotes and vote for next week!
This Week in Rust is edited by: nellshamrell, llogiq, cdmistman, ericseppanen, extrawurst, andrewpollack, U007D, kolharsam, joelmarcey, mariannegoldin, bennyvasquez.
Email list hosting is sponsored by The Rust Foundation
Discuss on r/rust
3 notes · View notes
pauloga · 5 months ago
Text
First Week, First Workload
Paul Oga
We had our first meet on the Software Designing and Engineering course under Sir Yu. Although I arrived late on his class (which was kind of embarrassing), still I'm glad I didn't decide to miss it as it was a very important session for the course.
Sir Yu held a class orientation where he discussed all the relevant things to note for the course — such as the grading system, class rules, expected topics to be encountered, and the project innovative task.
For our first task, we were instructed to form a group of four members. I teamed up with my "OG" blockmates which are Eucel, Lance, and Seth. We had to present two titles for our project proposals.
It was a nerve-wracking moment as I only had an hour sleep on that first meet and I couldn't think of ideas that would satisfy the given criteria of the project proposal.
Thankfully, Lance saved that night by providing us his insights which later became a huge help upon developing our titles and advocacy for the project.
Within a couple of hour, we finally submitted our titles to Sir Yu, and fortunately he approved it.
These are our proposed titles:
URentify: Book Rental Services for USTP Students
We came up for this title as there's no existing centralized book rental services in the university. Altho the library offers book borrowing, you compromise with "worst case scenarios" that would be a pain in the head to resolve.
What makes this relevant is that some instructors in the university only use specific books for their lectures and for most cases they aren't available in the library— and if they do they are often unavailable as you compete with bunch of students that also fall in line to use it.
This project will not only offers convenience but also a platform for students to share their educational materials and any sort of books that they no longer use.
TutoServ: USTP Students Tutorial Services
This project proposal does not only aims to provide a platform for USTP students to share their knowledge, but also to monetize from it. We observed that a lot of students struggle with the fast-phased approach of lecturing in the university, especially those that belongs to highly demanding programs. This results to information overload and poor learning retention which impacts the academic performance of the students.
This project would be very beneficial for students that also learns the best through one-on-one discussion.
Prior the class dismissal, Sir Yu tasked us to prepare a survey form that will serves as a tool to know the feedback of the respondents on our project proposals. We immediately brainstormed for the possible questions we needed to add on our survey forms. Luckily we were able to finish it within five hours.
Time flies, on our online class, Sir Yu utilized it as our online consultation. We consulted our survey forms and he approved it a day after.
We finished everything and now we're all set up for the title defense which will happen on Monday, January 20.
2 notes · View notes
obanicrypto · 6 months ago
Text
STON.fi: The Future of Decentralized Trading on TON Blockchain
Tumblr media
In a world where control over your finances is more important than ever, STON.fi steps up as the leading decentralized exchange (DEX) on The Open Network (TON) blockchain. It’s not just about trading; it’s about empowering you to take full control of your digital assets. Let’s break it down into simple, relatable terms.
What Makes STON.fi Special
Have you ever traded crypto and worried about losing access to your funds? Or felt frustrated by slow, costly transactions? STON.fi solves these problems by letting you trade directly without intermediaries. You control your private keys, ensuring your funds are always safe.
With advanced tech like Request for Quote (RFQ) protocols and Hashed Timelock Contracts (HTLC), STON.fi guarantees quick, transparent, and secure transactions. You’re either getting exactly what you agreed on, or the trade doesn’t happen. No middlemen, no surprises.
Trade Made Simple: Swapping TON-Based Tokens
Imagine swapping one crypto for another without the hassle of converting to fiat first. That’s what STON.fi offers. You can trade $TON for other TON-based tokens with ease, all while enjoying low fees (just 0.3% per trade).
Here’s the kicker: when you trade, part of the fee goes back to liquidity providers, meaning the community benefits as a whole.
Earning Opportunities on STON.fi
Who doesn’t love making their money work for them? STON.fi offers several ways to earn:
1. Provide Liquidity: By adding your tokens to liquidity pools, you earn rewards based on your contribution.
2. Farming: Stake LP tokens to get even more rewards from specific pools.
3. STONbassador Program: Promote STON.fi and earn for helping the platform grow.
Meet the $STON Token
Think of $STON as the backbone of the STON.fi ecosystem. It’s used for governance, gas fees, and transactions. Plus, it has a limited supply of 100 million, making it a valuable asset over time.
STON.fi takes community seriously. That’s why half of all $STON tokens are reserved for the DAO (Decentralized Autonomous Organization). This means you get a say in how the platform evolves, from deciding new features to choosing supported assets.
For Builders: The STON.fi SDK & Grants
Are you a developer? STON.fi has something for you too. Their SDK (Software Development Kit) makes it easy to integrate wallets, exchanges, and games into the platform. And if you have a great idea, the STON.fi grant program can fund you with up to $10,000 USDT.
The Future: STON.fi V2
STON.fi isn’t just about today; it’s building for tomorrow. Here’s what’s coming:
Multi-Chain Integration: Trade across networks like Polygon and EVM-compatible chains.
Telegram Bot for Cross-Chain Swaps: Trade assets directly from your Telegram app.
Margin Trading: Use borrowed funds to amplify your trades.
STON.fi is committed to staying ahead of the curve, making it the go-to platform for traders, developers, and crypto enthusiasts alike.
Why STON.fi
STON.fi isn’t just a DEX; it’s a complete ecosystem designed to make trading simple, secure, and rewarding. Whether you’re looking to trade, earn, or build, STON.fi has the tools and opportunities you need to thrive in the decentralized world.
Ready to take control of your crypto journey? Explore STON.fi today and see the difference.
#Crypto #DeFi #STONfi #TONBlockchain
2 notes · View notes
binary-stars-if · 8 months ago
Note
What about languages? Did English remain a dominant language on Earth? And the inhabitants of Mars and Sol Station, did they develop their own languages?
Love this question! In Binary Stars, there is widely available and accessible universal VI (virtual intelligence) translation software for most languages, even for some dead languages like Latin, and for preservation purposes, a lot of indigenous languages, as well. This had two consequences on Earth:
Multilingual people are less common, as many school systems abolished mandatory foreign language courses in favor of focusing on other topics. Grammar and language arts courses are still mandatory and funded and developed at smaller local levels -- think communities instead of school districts. This, of course, has mixed results.
English, French, and Spanish are less commonly people's first languages in Binary Stars than they are in our world today, as nationalist movements in countries with a history of European colonization took advantage of the tech to push for embracing their cultural identities and returning to language roots. Of those three languages, Spanish is arguably the most common first language due to the unique experiences of immigrants from Latin America to the U.S. and Canada -- in other words, there are layers here.
A lot of this translation software was still new/in development as Mars was being colonized, so English was still a pretty dominant language at the time. As a result, a lot of people on Mars speak a pidgin dialect that borrows a lot from English. You will sometimes hear similar dialects on ISS-3 or (less commonly) Sol Station, but they're much more common on Mars. In addition, some Martian megacorporations developed their own dialects, whether as a way to speak in code and protect company secrets or as a way to foster a kind of unique cultural identity for their employees citizens.
That being said, there is value in being multilingual. AI never took off quite the way you might expect, due to its lack of reliability with translation software in particular. There was a crisis and controversy in the early days, and now translation VI is maintained and developed by linguists who are fluent in the necessary languages. Many multilingual people are such specifically for employment in this sector, and it's a job that pays well -- especially the more languages you learn. But nothing pays as well as translating for your first language, so the U.N. supports programs and initiatives that foster linguistic diversity on Earth and ISS-3.
This story is written in English, but I'm fine with readers headcanoning whatever language they want for each of the characters. In fact, I welcome it. I would honestly LOVE to see people's headcanons here and have decided there's no right or wrong answer. For this reason, I won't be developing any dialects, pidgin or otherwise, for the story.
Thank you for the message!
2 notes · View notes
wordsbyparker · 1 year ago
Note
Any advice for someone practicing scripts for voice acting and still stumbling and stuttering after a good amount of run throughs?
I want to get clearer and be able to easily run scripts but I have a lot of anxiety even when I’m not trying to record or post it.
-💛
First of all, here's a hug. 🤗
Second of all, this is tough. I think there is some element of anxiety for every creative artist out there. No matter how long they've been doing it or how brilliant their work is. There is something that makes us anxious and we have to learn how to deal with it. Sometimes it's multiple things.
In this case, I think the trick is figuring out what makes you anxious about voice acting. What is it you're worried about?
(please don't let any of this make you anxious - I'm trying to bring up some of the more common things, and things I myself have dealt with)
Is it a fear that others won't like your voice? Or the script?
That you're going to mispronounce something? Or have an accent?
Do you have a natural stutter or stammer? (a friend of mine is an excellent actor, and he's stuttered his whole life; he found ways to work with it, so this doesn't have to be a deal breaker)
That you aren't good enough? (and OH BOY - that one gets all of us tripped up at some point, and often more than once.)
Is there a concern about recording in general?
A worry about your space and how it sounds?
That your set up could be better? Different mic, different software, etc.? (I know VAs who record on phones, tablets, and computers. You can figure it out and make it work.)
Is it a general fear of putting our voice work out there?
Is this something new to you and you've wanted to try it, but now you're not sure about it?
Are you putting pressure on yourself to be letter perfect, or perfect in general?
It could also be general performance anxiety, which can be difficult to push through sometimes. I still deal with that, especially with characters that aren't my own.
Remember that you as the actor are playing a character. Try to find the character first, then run the lines. Let the character speak through you, basically.
One thing that my college theater professor told me was that you're letting the character borrow your body for a while. For example: the audience isn't laughing at *you*, they are laughing at the character. When you walk out on stage, they see the character you're playing, not you.
(for context: I was struggling with playing a very comedic character, because I'd been bullied and teased since grade school; so people laughing at me was my normal. But it wasn't me they saw on stage. They saw the character I was playing. That's one of the best pieces of advice I've received in my career, and thinking in those terms has served me well - even for dramatic roles.)
I think you may be overthinking something, or more than one thing. As a professional overthinker, I get it. 🤓 Try to figure out *what* makes you anxious, and go from there.
And remember that every single voice actor out there started at the same place - zero. We have to learn and grow and develop our skills - and learn how to deal with our anxieties and other stumbling blocks that get in the way. No one started off being amazing at what they do. Not even your favorite VAs and ASMRists. (I know, "sacrilege!" I'm pretty sure they would agree, though. 🙂)
I hope this is helpful, at least a little. Be patient with yourself and the process, and give yourself grace when you need it. Figure out what makes you anxious, and then figure out how to punch it in the face. 😎
11 notes · View notes