Simple tumblr layout code

gfycats

2013.12.30 08:02 ManWithoutModem gfycats

[link]


2012.10.02 08:30 nfstest The Denpa Men

This is the subreddit for The Denpa Men franchise. Discuss about the game here!
[link]


2013.02.07 22:27 MBArceus Any Fandom is possible in the Twilight Zone

Like a thing? A lot? That thing is now personified. Yes, and they're all in Homestuck form, yes. Also called Fandombound.
[link]


2024.05.21 23:58 SUBLOLLIPOP [Request] More streamlined process for starting your Godot journey

Godot has always been a bit of an underdog in the game dev community, but it's obviously found its niche here, with us. Godot is a great engine with its friendliness towards beginners, its capability to make high-end games, its flexibility in terms of what graphics engine you want to use, if you want to use touch etc., and of course, it being open source, which means that games made with it can't, for instance, cost you ten cents per download, even if that game is free. Godot is great, but one thing is really keeping the door to the mainstream shut - the jankiness of making a new project.
Unity has a concise menu, where you either choose which project you want to work on or if you want to create a new one. There is a clear layer of abstraction keeping files and project separated. In Godot, you have to find the right file path, then click "create folder", and then get on with your day. And here's why that's a problem.
The "select path" thing is only really necessary the first time you make a project, but first time impressions last - especially on a complete programming beginner, who will very likely be bewildered and confused by the process - file explorer lingo (AKA slashes and "C: ") is not common knowledge.
The project has to be created in an empty folder; the create folder button adds a mostly unnecessary step to the process of making a project. This does not feel intuitive for most beginners, and although we as fairly experienced users of Godot have gotten used to it, and most programmers know how computers work and why it is set up in this way, for a beginner it will feel like Godot putting a stick to the wheel of their learning process by making the process more complicated than it needs to be.
Don't remember that installing the program involves unzipping a folder; an easy task, but one that intimidates many beginners (more than a simple setup wizard). Starting your programming journey by being expected to know how to unzip a folder (or even know to unzip it in the first place) could make a beginner feel like they're not fit for programming. (Also, you have to create a desktop shortcut or do something of the like to be able to launch Godot like you would any other program).
These are all small things, but they add up to a larger uncomfortable setup process that filters out 10% of beginner programmers and let 70% in with a larger doubt in their ability to program and smaller trust in Godot as a piece of software than before they even considered coding. This is far from an unsolvable problem; I think these two simple steps could massively help Godot reach a wider audience:

Setup Wizard

Not necessarily removing the zip option, let the default installation option be a .msi or .exe file that sets up Godot in your Program Files like most other applications and gives you the option to make a desktop shortcut.

Project Manager

Make Godot projects "projects" instead of files. Hide all the file manager jibber-jabber and just show the user the file names and maybe a thumbnail and which graphics engine that project uses. This would once again abstract the file structure type of things and make it much less intimidating for a beginner to launch something new. Also, no "create folder" button. You just make a project, simple as that.
The options to change your default Godot folder or go back to the old folder-creating system should of course exist.
Please let me know your thoughts on this in the comments, my ears are open and I'm excited to hear everyone's thoughts
submitted by SUBLOLLIPOP to godot [link] [comments]


2024.05.21 23:56 dawheee Random website on my domain?

hello, I need some help with a website i created. i made a site that was going to be a place to display my photography. the website domain is daithijphotography/.com (without the slash of course). i bought this domain at the start of february and i was finally ready to start displaying my work on the domain, unfortunately i ran into a problem. i searched my name on my phone purely out of boredom to see what comes up on google, and i seen the domain i bought that had nothing on it yet at the top of the search results. curious, i clicked on it and i’m met with the landing page for a company i’ve never heard of.
Symrise, i guess they’re a cosmetics brand, was appearing on my URL. it wasn’t redirecting to their website, it was just a copy of what they had on their landing page on my website, under my URL name. So i went to my laptop and searched it up there thinking maybe it was just a mistake and safari had loaded incorrectly, but it was the exact same page on my mac. i inspected the page in developer mode and there was nothing suspicious at all in the code, just a very simple HTML of the companies landing webpage. the only odd thing was text at the top of the code that read, downloaded with SingleFile, time updated 13:00 moscow, russia. other than that there were no threats and i scanned the site for malware and found none. i immediately logged into my hosting provider and my domain provider and disconnected the name servers back to defaults and that seemed to fix it. it was originally hostingers name servers and i changed it back to godaddy’s default ones. that seemed to do the trick. i rang godaddy and explained the situation and they said they couldn’t find anything suspicious and nobody had logged into my account and there was no activity other than me logging in at home. when they visited the website it just showed a parking page for godaddy.
i can’t include a screenshot, but it was this companies website showing on a site as a static version with my url at the top of it and i’m wondering how on earth could that of happened? for background the website was going to be made with wordpress so i had one blank wordpress page on my domain but nothing on it. i received a few random emails saying i had new comments on my photography site but i just ignored them as i thought it was nothing serious and was spam as i has nothing on the page to comment on.
godaddy said everything is fine and when i type the url into my search bar nothing comes up anymore, just a page that says the connection can’t be secured. i’m just curious on how this could’ve happened and would really appreciate some answers! thank you!
submitted by dawheee to webhosting [link] [comments]


2024.05.21 23:49 Lanzen_Jars A job for a deathworlder [Chapter 168]

[Chapter 1] ; [Previous Chapter] ; [Discord + Wiki] ; [Patreon]


Chapter 168 – The moment to live and the moment to die

„Jumping!“ an Ensign announced loudly as the Sun's view-windows very briefly flickered into a dark black only to go back to a full view of the ongoing battle basically instantly, having barely shifted the ship's position at incomprehensible speed. „Shot clear of allied ships.“
Vice-Admiral Kazadi tapped his finger on one of the armrests of the Commander's seat that still felt anything but comfortable for him to sit in as the tight grid of flashing lights reflected in his eyes within the twilight of the bridge.
“Fire,” he then ordered. Not even a blink later, a burst of colorful light broke into his view from the side of his very own ship, lighting up the entirety of the bridge even through the automatically tinting windows that absorbed a lot of the harmful light so the crew wouldn't flashbang themselves with each shot.
The relativity canon fire tore through the enemy ship at an almost literal instant with any travel time barely being conceivable to a mortal mind. In a large unload of energy that left almost the entire stern-side of the zodiatos ship as a molten mass of dispersing slag, the main propulsion was taken out. Simultaneously, the two accompanying cruisers had also taken their shots; with the 'Civil' taking out the engine of one more enemy vessel while the 'of the roses' had instead used its shot to disperse one of the enemy projectiles in order to buy their own hunter ships more freedom of movement. Those huge ones didn't go down easy from one of the hunters' smaller shots, so using one of the large canons to dispatch it took some of the heat off them.
Meanwhile, smaller targets on the enemy vessels, such as their own canons, were gradually taken out by said hunters, whose own fire – while able to be quite destructive if intended no doubt – could be used in a far more precise manner. With more and more of their canons failing, the protective volleys the coreworld terrorists could fire to hide themselves away also became less and less effective.
“Send the fallback-beacon,” Kazadi then ordered, since close quarter attacks became less and less necessary.
It seemed that the zodiatos had a hard time adjusting to the combat style of the human unkindnesses, however that didn't mean they should take any unnecessary risks. Even if a pilot could've been able to avoid all enemy attacks in a perfect world, he knew that his pilots were only human.
Casualties of their own had been comparatively minimal so far, however as if to prove him right about his thoughts, he could see on his surveillance screen how, just in that moment, one of their ships was taken out by an enemy craft.
He grimaced to himself and let out a mild sigh. One more family who would never see one of their own again...
It took a moment before all the ships were reached by the beacon. Due to the nature of their own combat strategies, as well as the particular nature of hyperspace, it was entirely impossible to effectively contact any of their ships directly while they were out in the battle. Therefore, the order to fall back had to be broadcast as a general signal, that each of the pilots could individually pick up as soon as they would keep still for long enough so that it could reach them.
By now, the battle was already won. None of the zodiatos' weapons were able to match the relativity canons in effective range and without the larger ships to back them up, their small hunters wouldn't be able to launch an offensive – shields or not. They could just stay back and fire until surrender now. As the signal was picked up, one of their ships after another disappeared in one last flash of hyperspace as they joined back up with the larger vessels in an enclosing formation.
“Prepare for the retrieval of some of those projectiles,” the Vice-Admiral then ordered as he hoped they would be able to track some of those spent shots their enemies had fired. They would have to figure out what kind of tech that was.
In such a small-scale conflict, it was more than manageable to face it. However, it could offer some difficulties in larger fleets – especially since they didn't know how far this kind of tech could possible be expanded and refined. It was quite possible this was just some form of prototype.
While that order was followed, one of his Lieutenants suddenly spoke up.
“Sir, we have an incoming transmission from the planet. Civilian. Not encrypted, but they seemingly had an access code,” they related quickly.
“Is the earlier interference cleared up?” he immediately asked back, to which the answer was positive. “Put it through then,” he immediately ordered as soon as he heard that.
He rubbed one of his tight braids between his fingers as he waited for contact to be established. Once the line was clear, things remained quiet for a moment.
“What are we best at?” he then asked the silent line, his chest tightening ever so slightly, even if he didn't have to wait long for a reply.
“Topping from the bottom,” a very familiar voice replied from the other end, sounding incredibly strained but most certainly alive.
The code phrase was an old in-joke about something that had been said back during humanity's first contact with the tonamstrosites due to a slightly choppy translation. However, it more than sufficed here to tell Kazadi that the person on the other side of the line was not only genuine, but also not in any immediate distress – at least none that was brought onto her by someone else.
“Good to hear your voice Ma'am,” he greeted the Admiral after taking a brief moment to allow his heart to settle.
“The pleasure is all mine, Celestin,” Admiral Krieger replied in between heavy breaths that sounded like a combination between being ready to collapse and absolutely willing to tear anyone's throat out at a moment's notice. “Excuse me for the unorthodox contact, my own means of communication have all been destroyed. Update me.”
A brief smile played on the Vice-Admiral's lips.
“No problem, Ma'am. Things are under control up here, but multiple allied coluyvoree ships were destroyed and we suffered some casualties of our own which I will take full responsibility for,” he quickly complied. “By now, the enemy crafts have been largely disabled and our fighters are falling back. What's the situation on your end?”
There was a bit of a grunt from the other side of the line that seemed unrelated to the ongoing conversation.
“I'm sure you did everything by the books,” Krieger then replied a moment later. “Down here the situation is precarious but momentarily under control. We have an unconfirmed number of casualties after an attack with an unknown weapon. All squads are either KIA or unresponsive. We took down six enemy combatants but can't confirm if there's more. I'm going to need clean up, rescue teams, as well as pickup for me and two large offworlders asap.”
Celestin nodded.
“We're in a stable position, so we'll jump teams down right away. Hold out just a minute more,” he assured her while already signing in the necessary order to the troops they had on standby. “How bad are your injuries?”
There was another groan of pain from Krieger's side.
“Crushed cranberries,” she replied after a long moment that sounded like she needed to catch her breath.
“Copy that,” Kazadi replied with a grimace. “Sending muti-team with the evac.”
“Copy that,” Krieger confirmed. “Krieger out.”
With that, the call was hung up. On his screen, Celestin could see how the preparations for dispatch of the requested teams was already well underway. Jumping towards a planet at FTL was generally discouraged by the Galactic Community. However, this was an emergency. They couldn't wait for normal re-entry.
After watching the reported progress for just a moment, his eyes returned to the ongoing battle. He watched the enemy ships as they hovered dead in space, unable to maneuver.
They seemed to have recalled their own fighters back in order to form some sort of protective wall around the 'mother ships' with their own small shields. Obviously it wouldn't be very effective, so it seemed like needless cruelty to make their own soldiers get in the way of the incoming fire. Something within Kazadi told the Vice-Admiral they weren't going to stand down.
“Sir, we're getting some strange hyperspace-readings,” his Lieutenant suddenly announced, making him look up.
“Weapon-grade?” he immediately asked, knowing they had less than a moment to react if it was. However, he also figured there would've been more urgency to their voice had it been so.
“No, Sir. Travel-grade,” the Lieutenant quickly replied. “However the readings are unusual. It seems like they are creating a stretch solely around themselves.”
Kazadi's lips shifted a bit as he took that in and he briefly ran a hand over his mouth in thought. “Prepare to collapse,” he ordered. “Maybe they will attempt some sort of running start. We can't let them get away.”
Right then, the light of what was happening had not yet caught up to the spacial distortion that their sensors were detecting, meaning the ships still looked perfectly normal – if damaged – when he looked at them. However, they were planning something. And that made them appear all the more ominous.
His mind quickly went through their own protocols. The U.H.S.D.F. employed hyperspace in nearly all its possible facets in their tactics. If it was even close to sensible, they would have something that was akin to the maneuver their foes were attempting to execute right now.
A bubble of hyperspace solely around their ships...a dodge? Hardly, there was nothing to dodge like that. An attempt to hide away? No, they knew human ships could collapse hyperspace from the outside easily.
Before him, the windows of the ship once again automatically dimmed, protecting the crew's eyes as the colorful light of the created hyperspace-bubble finally reached them.
“Hyperspace collapsed!” the Lieutenant then suddenly announced, causing Kazadi to blink in surprise as his eyes shot up to his screen. He hadn't given any order to collapse it yet. But indeed, it was gone. For a moment, he thought that the stress had caused his officer to use the wrong term in haste, however no, they had been completely right. It had not been dispersed in a controlled manner. It had collapsed.
In a mild 'thud', the Vice-Admiral's fist descended on the armrest, hand firmly clenched into a fist.
“Those cowardly ba-” he began to growl but then bit his tongue and released a low, almost grunting exhale while his fist quivered from momentarily clenching tighter. “Prepare to search for survivors,” he instead said in a much more controlled manner a moment later. “Preserve lives.”
“Yessir,” multiple of his officers echoed back as he looked out of the window, where he could still see the ghostly afterimage of the hyperspace bubble linger for a bit longer. It was always a strange feeling, seeing someone in the distance who was already dead...

With her view darkened and her goggles momentarily pulled off her eyes, Shida stared at the glowing bubble of impossible colors. Her sensors had already told her what was about to happen at any moment now, however her eyes still heavily constricted as they finally witnessed what unfolded themselves.
In what could be described as nothing else than a 'snap' , the light of the hyperspace-stretch instantly condensed down into its original size as the universe all at once remembered that the laws of physics were a thing that existed and brutally forced space to conform to them once again – no matter what may have been in between it and its original form.
Anything within the strange, round stretch was mercilessly ripped along with the convulsion, forcing all the injected warships and fighters into the single, small point that the stretch had been generated from. Though not even a faction of a second later, it all exploded outwards again as the megatons of mass realized that they could not all exist in the same place at once, since the energy of the event was not quite potent enough to press it all into a neutron star or singularity.
No longer recognizable blotches of undefined, white-hot matter were instantly scattered in all directions like some sort of micro-supernova that accentuated the sometimes still burning nano-stars that the earlier battle had created from the opposing fighters.
It was almost pretty...but still, Shida couldn't help but let her ears hang as she wondered how many of the enemy combatants had known about the decision to end things this way. Had any of them even been asked?
Even if it was the far more disturbing answer in a way, Shida almost hoped that this had actually been one mutual suicide-pact instead of the decision of one single commander to choose death over dishonor. Especially while sitting in a ship that was technically under the command of someone else herself, that was certainly the less immediately petrifying option – even if it would probably spell far worse things in the long run.
As she said there, the 'shockwave' of the collapsing hyperspace suddenly hit her, spreading out through space even without any medium to carry it and rocking her ship gently while also penetrating all throughout her body. Of course the earlier relativity fire had already caused similar ripples and she was therefore quite used to the feeling, however these ones sure felt a bit more severe than those of the U.H.S.D.F.'s own canons. It was like she felt her own body distort while also remaining perfectly in palace – almost like she was a stiff container full of water that someone had given a heavy smack from the side, riling up the liquid without it actually having any place to plash to.
According to everything they knew, this phenomenon felt incredibly odd but was entirely harmless to living beings – which was instinctively very hard to believe when one felt it on their own body.
However, her dwelling thoughts were, perhaps luckily, interrupted as she – or more precisely one of her scanners - picked up on a peculiar signature that one of the scattered debris pieces was sending out.
Well, it was 'peculiar' to her that there was a signal at all at first, however then she quickly realized what it actually was. This particular signal was hammered into any pilot's head six ways to Sunday, and so she reacted relatively quickly when she glanced at the grid and realized that she was the closest ship to it. Firing up her engines, she turned her ship on the spot in a slight drift before activating her generator and making a jump right behind the flying object.
Once there, she allowed her computer to take aim for a second before firing out a harpoon that quickly struck the flying debris and latched her ship onto it through a long cable, allowing her to pull the thing along with her after slowly using her backwards thrusters to disperse its speed little by little. Pressing the indicator of her communication, she then spoke up.
“Scratches to Sun,” she announced. “I just recovered a black box. Permission to return for inspection?”
The black boxes of modern ships truly were among the most ridiculous pieces of tech out there, in Shida's humble opinion. Built to withstand almost everything that would likely take a ship out through a combination of brilliant engineering and extremely flexible material that only worked in its indented manner on very small scales. Well, very small compared to the ships they were built into. The things were about half the size of Shida in the end. For many years, armies of scientists had attempted their very best to make this same sort of defense useful in ways that could maybe be used to protect actual people from catastrophic events – but to no avail so far. For now, the only thing those little marvels could allow to survive even something as ludicrous as hyperspace collapsing was information.
“Permission granted, Lieutenant-Commander,” the answer came almost immediately. “Return to hangar three.”
“Copy,” Shida replied. “Scratches out.”
With that, she moved her ship around and prepared for her jump back to the Sun. Hopefully this thing would give them some answers on what exactly this whole thing was meant to accomplish...

Far away in another part of the galaxy, a pair of mildly glowing red eyes was laser-focused on a large screen that was just one of many that had merged all over Nedstaniot-Station to broadcast the breaking news to anyone willing to lift their eyes at a slight angle to look at them.
An attack on a coreworld. And not just any coreworld. Gewelitten itself. Something like this hadn't happened in...well, Curi didn't even know how long.
Details seemed to still be incredibly fuzzy as the battle so close to the coluyvoree homeworld had either just happened or was still happening at the moment of the broadcast, however what few details were known were already repeated on end in an endless scroll of text that was meant to catch as many people up to speed as was at all possible through the medium of television. Obviously the same emerging details could already be looked up on the net as well to find them in a more digestible format than the endlessly moving text next to the not exactly top quality footage of the occurring conflict.
However, despite the speed with which it went by, Curi had no problem following the scroll as they stared at the screen intensely.
“Attack was unannounced. Multiple Gewelitten fleet ships destroyed. Official sources confirm: Humanity NOT the aggressor. Attacking ships presumed to be of zodiatos origin. Unknown weapon technology deployed during the attack. U.H.S.D.F. ships engaged in combat after aggression. Myiat delegation ship confirmed unharmed. Attack on government facility on planet simultaneous to spacial attack. Councilman-Candidate Aldwin confirmed unharmed. Status of U.H.S.D.F. General Krieger unknown. Status of Gewelitten Governor H. Cierrophai unknown. Status of Acting-Councilman Afuéhner unknown. Allied coreworld defense fleets activated and inbound. General alert level raised to 8. Hyperspace-travel shut down around the system.”
“Mother, oh no...” Mueen said with absolute shock in his eyes, both of his hands clasped over this mouth as his wide pupils quivered in fear from what they witnessed.
Curi could understand his worry. Though Moar had supposedly been with James, so she would probably be fine. The cyborg was certainly more than just a little relieved that James was already confirmed to be safe. Though the idea that Admiral Krieger's situation was unknown was more than just a little disconcerting.
Though despite the supposed lack of their commanding officer, it seemed like the humans had decisively won out in the battle outside of the coreworld's atmosphere; unknown technology or not.
Given the sub-par footage that some drone was likely recording from quite far away from the actual conflict, it was very hard to tell just what sort of weapon the unknown but presumed to be zodiatos attackers had unleashed there. It looked like some sort of emanating energy that destroyed what it came into contact with but also interacted with it as if it had a physical presence.
Curi had never seen anything remotely like it before – not even in their wildest theories – and their mind immediately wanted to go wild with speculations and ideas about how such a thing might work now that they knew for a fact that it was possible from seeing it with their own eyes.
However, the cyborg pulled themselves together and successfully forced the briefly almost overwhelming desire to focus on nothing else down as they shifted their gaze slightly away from the screen to look over at their other currently nearby company.
Then again, as much as they knew they couldn't let their guard down around him, Reprig's eyes were just as immovably attached to the large screen as Mueen's were as he witnessed the unfolding battle with quivering horror.
His trunk was wiggling wildly in his face and one of his hands nervously scratched over the plate of the table they were all sitting and standing at and on, right next to a piece of paper with a hastily drawn sketch of a spring-like mechanical leg that was inspired by what humans called 'running blades'. The Warrant Officer's weapon also laid on the table, pushed a but further away from his hand so he wouldn't be able to easily reach it.
Though despite his focus, Curi couldn't quite help but speak up after a moment of watching him. “A coreworld attacking another coreworld,” they said to the man, who they knew either had to know far more than they did about this – or would be far more invested in it unfolding. “This is unprecedented.”
Reprig seemed to notice that they were talking to him, however he still remained silent and stared a good few moments longer before finally pulling his gaze away from the screen.
As his eyes met theirs, he looked a bit sick. It almost reminded the cyborg of one of the first interactions they had with the man, back when they nudged him slightly to hand his spy-device back to him after he tried to hide it in James' cabin. Though this time, the cyborg was quite sure that they were not the reason why the man seemed like most of his blood was currently rushing into his stomach.
Could he actually be shocked about what was happening? Was this not part of the plan?
“Unprecedented doesn't even come close to describing it...” he mumbled and couldn't hold the cyborg's gaze for long, looking down to the table's plate instead. “And these aren't just any coreworlds. Osontjar and Gewelitten have been allied for an unimaginably long time. The thought that they would even think of attacking each other...what sort of madness could've caused something like this?”
Curi was the first to admit to themselves that they were far from the best at reading people. If someone with even a modicum of skill in acting wanted to make them believe something untrue about the person they were talking to, they would never deny that there was a good chance of that person succeeding.
Still, Reprig's reaction felt...genuine to them. As if he had actually never expected something like this to happen. Not in a million years.
Maybe it was just skillful acting. And Curi knew that they should have been suspicious like that. However, despite everything he had done, they couldn't quite bring themselves to suspect that he was lying at that moment.
“I know it is unlikely you will give me an honest answer, but-” Curi began to say, however Reprig was more than able to anticipate what they were going to ask and replied long before they were finished.
“No. No. Never,” the sipusserleng said, shaking his head heavily and standing his trunk up while making a denying gesture with his hand that was so brash that he actually knocked his crutch off the small outcrop in the table it had been laid down on. “This must be some absolutely deranged people, no two ways about it. To attack a coreword...”
Curi noticed Reprig's gaze briefly twitching down, his eyes jumping onto the personal assistant strapped to his lower arm as if he suddenly got the urge to use it for something.
Curi suspected he likely wanted to call someone; question them to make extra sure that they had, in fact, nothing to do with this. Though the sipusserleng suppressed the urge and pulled his eyes away, bringing them back up to the screen.
Just at that moment, the implosion of collapsing hyperspace suddenly lit up the footage moments before the glowing remnants of what once had been the zodiatos ships were scattered across the star-system.
Mueen mumbled something in his home's language as his eyes remained affixed to the screen. Curi couldn't even begin to guess what he was saying. However, his voice sounded pleading.
“Suicide instead of surrender?” Reprig meanwhile mouthed breathlessly as his nervous tick of excessively licking his trunk began to show.
Although he had often been otherwise employed in recent times, Curi could see it in the man's eyes that he was still, in a way, military at heart. He knew the general values and doctrines that were conveyed to the soldiers of the Communal Military, both inside and out. And the idea of someone choosing death like this...it seemed to rock him to his very core.
Slowly, he turned his gaze over to Curi. His eyes were almost pleading with the cyborg, even if they seemed to already know that his next question would be asked in vain.
“Could it maybe have been the humans and their-” he began, but this time, it was Curi's term to cut him off after anticipating what was coming.
“While humans very much employ the collapsing of hyperspace as a tactic in war, the process is not invisible – or even subtle. Had the human ships caused that collapse, it would've been noticeable,” they explained succinctly. “It could've still been a mere unexpected failure of the hyperspace generation, of course. However, with the rarity of such events, the timing seems...unlikely.”
“They weren't even trying to generate a real stretch...” Reprig concurred dejectedly and left his head hanging, his trunk also sinking down limply. “I can't even imagine- Well...I hope they will at least find peace now, away from the madness.”
Curi paused for a long moment, staring at the Warrant Officer some more. Admittedly, the cyborg was a bit confounded at something. They knew for a fact the man had put his own life on the line for his orders, with a very real chance that they would lead to his death, more than just once. And yet the idea of being ordered to die seemed to disturb him. They couldn't quite figure out the difference that led to the results in reaction being so incredibly different, however it was still very clear that there was one.
And it seemed to hit the man hard.
Self-admittedly, Curi didn't exactly pity the man. They didn't quite have the capacity to. They knew about so many horrible things he had done that simply seeing him distressed was far from enough to stir such deep empathy for him within them.
Yet still, they weren't left entirely cold by it either – and if it was only because he seemed to be affected by these events in the ways a, for a lack of a better term, 'normal person' would be. He was shocked at the sudden, seemingly senseless violence, and concerned about the people involved.
Granted, it was likely only because they were people he considered worth being concerned about, yet still, the reaction was so...'normal', in a way they didn't quite expect from someone with such a capability for unceremonious acts of cruelty and violence. Even this person who had tried to kill them, or at least had been entirely comfortable with them getting killed, was capable of such a reaction.
And Curi...wasn't sure if that made things better or worse, if they were being honest.
It felt better because there was the capability for empathy there, however...it felt worse because they felt how they had been and likely still were willingly denied said empathy.
He could have cared...he just didn't want to.
Curi shook their body heavily, causing mild sounds from the engines running their legs' movements from the sudden force as they tried to shoo away emotions that they really didn't want to be feeling at that exact moment.
The thing that mostly kept them from following up on some of their uncomfortably aggressive thoughts at that moment was the fact that Mueen was still with them, the worry for his mother written across his features like a deep engraving in a metal plaque. He did not need anything like that around him right now, that much was clear.
Slowly, they moved over to him and reached up one of their long legs to run it along his arm while he still covered parts of his large face with both hands.
“She will be alright,” Curi then assured the dark-furred rafulite, switching from their usual voice box to their more “melodic” one to put on a gentle, calming tone. “She is stronger than she seems.”
Inhaling deeply as his nostrils flared, Mueen closed his dark eyes and swallowed heavily, taking his gaze off the large screen for the first time in many minutes while slowly hanging his head down.
“Yeah,” he said, seeming to force hopefulness into his tone. “Yes, she'll be fine. She made it his far. This won't get to her.”
Curi nodded with their entire body and continued to run the tip of their leg along his arm.
“She will be,” they repeated, both to the man and themselves as their own eyes moved upwards, their gaze falling back on the battlefield riddled with burning remnants of matter. “I'm sure of it.”

Never in his life had James felt so drunk and so sober at the same time. His mind was entirely clear, running a light-year a minute as it desperately tried to simultaneously process all the admittedly little information that he had in his current situation AND to not absolutely freak out while doing so somehow – a task he was ludicrously failing at. And it did NOT help that his body could barely keep itself on his own two feet.
He had avoided completely fainting by a hair earlier after reminding himself that, instead of being terrified for Shida's life, it would be much more fair towards her to simply focus on trusting in her skills to carry her through. However, that was barely a little patch on an enormous crack in his facade as he couldn't help but go over and over and over the fact of how much worse the situation that she needed to jump into here had been for her simply because it was his damn birthday and they wanted to indulge over it. He should've stopped that, but noooo, he just had to go and let himself be swayed so damn easily, as if he was still that little boy following Koko around whenever she visited the compound to try and get some attention.
Of course, a quiet voice in the back of his head tried to politely remind him that Shida had, in fact, not only taken part in the festivities as well but also encouraged him to do so, however it was easily overpowered by the screaming rest of his mind.
He briefly glanced over at the only somewhat conscious Commander. When she said that they should match each other's drinks, that should've been the moment he stopped. She was like half his weight, what the hell was he thinking?
His mechanical hand shot up, heavily gripping a fist full of hair as he tried to force himself to focus. What's done is done. There's no changing it. He should focus on anything else right now.
Though as he painfully pulled on his hair like that, his eyes suddenly went wide as he noticed something. Or, more precisely, didn't notice something.
When had the alarm stopped? Just now? Or had it been out and he just hadn't noticed?
Letting go of his hair, he lifted his face and looked around. If the alarm was over, then that meant...
The uncoordinated movement of soldiers reaching for their phones and radios with different speeds went through the room, and after brief confirmation, the uniformed forces began to move, having seemingly gotten new orders other than guarding the safe-rooms. Apparently, the threat was over.
James quickly fumbled for his own phone, his barely coordinated hands struggling extremely with the simple task of trying to call one of his contacts – much to the frustration of his already cleared mind. His finger trembled as he swiped it across the screen, trying to get it to the right damn place to make a simple god-damn call.
However, he froze in the motion at a quiet sound that was immediately followed by a sudden stir behind him as multiple people seemed to move quickly. And after just a second, James was among them as well.
Nearly tripping over his feet, he damn near threw himself onto the sickbed that didn't stand too far away from him, his phone momentarily forgotten and eyes wide open as they stared over at an endlessly familiar dark face, that however had life in it for the first time in what felt like an eternity at that moment.
Slowly and twitchy, Nia's eyes fluttered open as she let out quiet groans while mildly stirring in place while her doctors and nurses hurried around her and quickly began to take her vitals.
After flinching heavily as a flashlight was quite suddenly shone into her eyes to test her photopupillary reflex, she began to move even more. Meanwhile, James and Tuya were basically pressed shoulder to shoulder close to the foot of her bed, the only thing keeping them from dashing right up to her face being just enough awareness to not get in the doctor's way.
Still, although her movements were very slow, stiff, and groggy, Nia eventually lifted up her head, looking around with still somewhat hazy and half-closed eyes. But that didn't stop her from smiling when her gaze fell onto the two who so nervously stood at her bedside there.
“Hey,” she said in a quiet, croaky, but still very much cheerful voice as her unkempt hair fell down both sides of her face.
Though James didn't see much more than that, because just about at that moment, his vision was entirely taking away by welling-up waters sweeping him along.
submitted by Lanzen_Jars to HFY [link] [comments]


2024.05.21 23:48 marc_ds Help me understand this coroutine behaviour

Hello! I'm currently trying my best to develop my coroutines understanding and I came across an issue - how to run blocking code without blocking? Well, the answer in every resource I've read was simple - use the IO dispatcher. This doesn't seem to work though.
fun main() { GlobalScope.launch { val start = System.currentTimeMillis() withContext(Dispatchers.IO) { launch() { runBlocking { delay(1000) } } } println("${System.currentTimeMillis() - start}") } Thread.sleep(2000) } 
This will print ~1000, meaning that the last print statement has waited for the blocking coroutine to complete.
However, if I launch the blocking coroutine with some more context - a Job, it is indeed the expected behaviour.
fun main() { GlobalScope.launch { val start = System.currentTimeMillis() withContext(Dispatchers.IO) { launch(Job()) { // <- this makes the code work as expected runBlocking { delay(1000) } } } println("${System.currentTimeMillis() - start}") } Thread.sleep(2000) } 
This prints just a couple miliseconds.
Why exactly does this happen? The same threads are used in both examples - the blocking code is run on a different thread. And do you have any books, courses, series that have helped you understand the underlying concepts of coroutines? Thank you!
EDIT. Fixed the code formatting
submitted by marc_ds to Kotlin [link] [comments]


2024.05.21 23:45 _MysteriousStrangr_ [FNV] Can anyone tell me why this basic script doesn't work?

BEGIN OnEquip player
player.DisableControl 6
END
This is something extraordinarily simple but for some reason, the script doesn't run. I've got code after it that works fine, but this opening part (and the following OnUnequip) just doesn't work on my gun for some reason
submitted by _MysteriousStrangr_ to FalloutMods [link] [comments]


2024.05.21 23:42 UtahTeapots [C++] Logging: Macros vs. Functions

I'm writing a simple logger for my game engine and it seems that most people use macros for this over functions for two reasons:
  1. It gives access to helpful macros like __FILE__ and __LINE__
  2. They are easily able to be stripped away from the source code in distribution builds
However, for reason #1, C++20 now provides std::source_location which solves this issue and for reason #2 it seems like this is possible by just #ifdef'ing the body of the log function with a DEBUG parameter. It's commonly advised to avoid macros unless you really need them or maybe if they simplify the code greatly, but I don't feel like that either of those apply here as logging can be achieved without them and the code is still very elegant.
I ran two examples in Godbolt to test this and noticed that the assembly output was longer when using the function method over macros and that this scales with the number of calls to log(...) in the function version (note that 1. this is just a simple example that logs a string and 2. I've modified the inclusion of iostream to make the output a little less verbose).
Log with macros:
#ifdef DEBUG #include  #define LOG(x) std::cout << x << std::endl #else #define LOG(x) #endif int main() { LOG("Hello, World!"); return 0; } 
Output with DEBUG enabled (prints: "Hello, World!"):
.LC0: .string "Hello, World!" main: push rbp mov rbp, rsp mov esi, OFFSET FLAT:.LC0 mov edi, OFFSET FLAT:std::cout call std::basic_ostream >& std::operator<<  >(std::basic_ostream >&, char const*) mov esi, OFFSET FLAT:std::basic_ostream >& std::endl >(std::basic_ostream >&) mov rdi, rax call std::basic_ostream >::operator<<(std::basic_ostream >& (*)(std::basic_ostream >&)) mov eax, 0 pop rbp ret __static_initialization_and_destruction_0(int, int): push rbp mov rbp, rsp sub rsp, 16 mov DWORD PTR [rbp-4], edi mov DWORD PTR [rbp-8], esi cmp DWORD PTR [rbp-4], 1 jne .L5 cmp DWORD PTR [rbp-8], 65535 jne .L5 mov edi, OFFSET FLAT:std::__ioinit call std::ios_base::Init::Init() [complete object constructor] mov edx, OFFSET FLAT:__dso_handle mov esi, OFFSET FLAT:std::__ioinit mov edi, OFFSET FLAT:std::ios_base::Init::~Init() [complete object destructor] call __cxa_atexit .L5: nop leave ret _GLOBAL__sub_I_main: push rbp mov rbp, rsp mov esi, 65535 mov edi, 1 call __static_initialization_and_destruction_0(int, int) pop rbp ret 
Output with DEBUG disabled (prints: nothing):
main: push rbp mov rbp, rsp mov eax, 0 pop rbp ret 
Log with functions:
#include  void log(const char* s) { #ifdef DEBUG std::cout << s << std::endl; #endif } int main() { log("Hello, World!"); return 0; } 
Output with DEBUG enabled (prints: "Hello, World!"):
log(char const*): push rbp mov rbp, rsp sub rsp, 16 mov QWORD PTR [rbp-8], rdi mov rax, QWORD PTR [rbp-8] mov rsi, rax mov edi, OFFSET FLAT:std::cout call std::basic_ostream >& std::operator<<  >(std::basic_ostream >&, char const*) mov esi, OFFSET FLAT:std::basic_ostream >& std::endl >(std::basic_ostream >&) mov rdi, rax call std::basic_ostream >::operator<<(std::basic_ostream >& (*)(std::basic_ostream >&)) nop leave ret .LC0: .string "Hello, World!" main: push rbp mov rbp, rsp mov edi, OFFSET FLAT:.LC0 call log(char const*) mov eax, 0 pop rbp ret __static_initialization_and_destruction_0(int, int): push rbp mov rbp, rsp sub rsp, 16 mov DWORD PTR [rbp-4], edi mov DWORD PTR [rbp-8], esi cmp DWORD PTR [rbp-4], 1 jne .L6 cmp DWORD PTR [rbp-8], 65535 jne .L6 mov edi, OFFSET FLAT:std::__ioinit call std::ios_base::Init::Init() [complete object constructor] mov edx, OFFSET FLAT:__dso_handle mov esi, OFFSET FLAT:std::__ioinit mov edi, OFFSET FLAT:std::ios_base::Init::~Init() [complete object destructor] call __cxa_atexit .L6: nop leave ret _GLOBAL__sub_I_log(char const*): push rbp mov rbp, rsp mov esi, 65535 mov edi, 1 call __static_initialization_and_destruction_0(int, int) pop rbp ret 
Output with DEBUG disabled and #include removed (prints: nothing):
log(char const*): push rbp mov rbp, rsp mov QWORD PTR [rbp-8], rdi nop pop rbp ret .LC0: .string "Hello, World!" main: push rbp mov rbp, rsp mov edi, OFFSET FLAT:.LC0 call log(char const*) mov eax, 0 pop rbp ret 
As you can see, the code works correctly in both cases as it outputs the message when in debug mode and strips it to print nothing if debug mode is not specified. However, the assembly for the function version is quite a bit longer and increases with every call to log(...). If I #ifdef the log(...) call itself, rather than the body of the function, then the assembly output is quite small and does not change no matter how many calls to log(...) I make (when DEBUG is disabled). However, that would require me to #ifdef every single call to log(...) I make which just doesn't seem reasonable.
I'm wondering if there is a method to use functions rather than macros and keep the assembly small and not scale with the number of calls to log(...), similar to how the macro version works. Is there a way to do this, or should I just be using macros for this logging functionality?
submitted by UtahTeapots to learnprogramming [link] [comments]


2024.05.21 23:40 Originahl Gmod Chat Addon: The Advanced Chat Multi-channel Customizable

Gmod Chat Addon: The Advanced Chat Multi-channel Customizable: https://osgmod.com/gmod-scripts/3917/gmod-advanced-chat-customizable
Gmod Advanced Chat Customizable is a complete chat system coded from scratch. Present a clear, simple and organized chat to your users. This system works on all of Garry's Gamemodes and includes RP commands and the ability to make your chat private for your staff or VIP members. I give more details on the multiple features below.

gmod #garrysmod #lua #programming #production #STEAM #osgmod #ORIGINAHL #Gmodstore #physgun

submitted by Originahl to osgmod [link] [comments]


2024.05.21 23:40 UtahTeapots Logging: Macros vs. Functions

I'm writing a simple logger for my game engine and it seems that most people use macros for this over functions for two reasons:
  1. It gives access to helpful macros like __FILE__ and __LINE__
  2. They are easily able to be stripped away from the source code in distribution builds
However, for reason #1, C++20 now provides std::source_location which solves this issue and for reason #2 it seems like this is possible by just #ifdef'ing the body of the log function with a DEBUG parameter. It's commonly advised to avoid macros unless you really need them or maybe if they simplify the code greatly, but I don't feel like that either of those apply here as logging can be achieved without them and the code is still very elegant.
I ran two examples in Godbolt to test this and noticed that the assembly output was longer when using the function method over macros and that this scales with the number of calls to log(...) in the function version (note that 1. this is just a simple example that logs a string and 2. I've modified the inclusion of iostream to make the output a little less verbose).
Log with macros:
#ifdef DEBUG #include  #define LOG(x) std::cout << x << std::endl #else #define LOG(x) #endif int main() { LOG("Hello, World!"); return 0; } 
Output with DEBUG enabled (prints: "Hello, World!"):
.LC0: .string "Hello, World!" main: push rbp mov rbp, rsp mov esi, OFFSET FLAT:.LC0 mov edi, OFFSET FLAT:std::cout call std::basic_ostream >& std::operator<<  >(std::basic_ostream >&, char const*) mov esi, OFFSET FLAT:std::basic_ostream >& std::endl >(std::basic_ostream >&) mov rdi, rax call std::basic_ostream >::operator<<(std::basic_ostream >& (*)(std::basic_ostream >&)) mov eax, 0 pop rbp ret __static_initialization_and_destruction_0(int, int): push rbp mov rbp, rsp sub rsp, 16 mov DWORD PTR [rbp-4], edi mov DWORD PTR [rbp-8], esi cmp DWORD PTR [rbp-4], 1 jne .L5 cmp DWORD PTR [rbp-8], 65535 jne .L5 mov edi, OFFSET FLAT:std::__ioinit call std::ios_base::Init::Init() [complete object constructor] mov edx, OFFSET FLAT:__dso_handle mov esi, OFFSET FLAT:std::__ioinit mov edi, OFFSET FLAT:std::ios_base::Init::~Init() [complete object destructor] call __cxa_atexit .L5: nop leave ret _GLOBAL__sub_I_main: push rbp mov rbp, rsp mov esi, 65535 mov edi, 1 call __static_initialization_and_destruction_0(int, int) pop rbp ret 
Output with DEBUG disabled (prints: nothing):
main: push rbp mov rbp, rsp mov eax, 0 pop rbp ret 
Log with functions:
#include  void log(const char* s) { #ifdef DEBUG std::cout << s << std::endl; #endif } int main() { log("Hello, World!"); return 0; } 
Output with DEBUG enabled (prints: "Hello, World!"):
log(char const*): push rbp mov rbp, rsp sub rsp, 16 mov QWORD PTR [rbp-8], rdi mov rax, QWORD PTR [rbp-8] mov rsi, rax mov edi, OFFSET FLAT:std::cout call std::basic_ostream >& std::operator<<  >(std::basic_ostream >&, char const*) mov esi, OFFSET FLAT:std::basic_ostream >& std::endl >(std::basic_ostream >&) mov rdi, rax call std::basic_ostream >::operator<<(std::basic_ostream >& (*)(std::basic_ostream >&)) nop leave ret .LC0: .string "Hello, World!" main: push rbp mov rbp, rsp mov edi, OFFSET FLAT:.LC0 call log(char const*) mov eax, 0 pop rbp ret __static_initialization_and_destruction_0(int, int): push rbp mov rbp, rsp sub rsp, 16 mov DWORD PTR [rbp-4], edi mov DWORD PTR [rbp-8], esi cmp DWORD PTR [rbp-4], 1 jne .L6 cmp DWORD PTR [rbp-8], 65535 jne .L6 mov edi, OFFSET FLAT:std::__ioinit call std::ios_base::Init::Init() [complete object constructor] mov edx, OFFSET FLAT:__dso_handle mov esi, OFFSET FLAT:std::__ioinit mov edi, OFFSET FLAT:std::ios_base::Init::~Init() [complete object destructor] call __cxa_atexit .L6: nop leave ret _GLOBAL__sub_I_log(char const*): push rbp mov rbp, rsp mov esi, 65535 mov edi, 1 call __static_initialization_and_destruction_0(int, int) pop rbp ret 
Output with DEBUG disabled and #include removed (prints: nothing):
log(char const*): push rbp mov rbp, rsp mov QWORD PTR [rbp-8], rdi nop pop rbp ret .LC0: .string "Hello, World!" main: push rbp mov rbp, rsp mov edi, OFFSET FLAT:.LC0 call log(char const*) mov eax, 0 pop rbp ret 
As you can see, the code works correctly in both cases as it outputs the message when in debug mode and strips it to print nothing if debug mode is not specified. However, the assembly for the function version is quite a bit longer and increases with every call to log(...). If I #ifdef the log(...) call itself, rather than the body of the function, then the assembly output is quite small and does not change no matter how many calls to log(...) I make (when DEBUG is disabled). However, that would require me to #ifdef every single call to log(...) I make which just doesn't seem reasonable.
I'm wondering if there is a method to use functions rather than macros and keep the assembly small and not scale with the number of calls to log(...), similar to how the macro version works. Is there a way to do this, or should I just be using macros for this logging functionality?
submitted by UtahTeapots to gameenginedevs [link] [comments]


2024.05.21 23:39 UtahTeapots Logging: Macros vs. Functions

I'm writing a simple logger for my game engine and it seems that most people use macros for this over functions for two reasons:
  1. It gives access to helpful macros like __FILE__ and __LINE__
  2. They are easily able to be stripped away from the source code in distribution builds
However, for reason #1, C++20 now provides std::source_location which solves this issue and for reason #2 it seems like this is possible by just #ifdef'ing the body of the log function with a DEBUG parameter. It's commonly advised to avoid macros unless you really need them or maybe if they simplify the code greatly, but I don't feel like that either of those apply here as logging can be achieved without them and the code is still very elegant.
I ran two examples in Godbolt to test this and noticed that the assembly output was longer when using the function method over macros and that this scales with the number of calls to log(...) in the function version (note that 1. this is just a simple example that logs a string and 2. I've modified the inclusion of iostream to make the output a little less verbose).
Log with macros:
#ifdef DEBUG #include  #define LOG(x) std::cout << x << std::endl #else #define LOG(x) #endif int main() { LOG("Hello, World!"); return 0; } 
Output with DEBUG enabled (prints: "Hello, World!"):
.LC0: .string "Hello, World!" main: push rbp mov rbp, rsp mov esi, OFFSET FLAT:.LC0 mov edi, OFFSET FLAT:std::cout call std::basic_ostream >& std::operator<<  >(std::basic_ostream >&, char const*) mov esi, OFFSET FLAT:std::basic_ostream >& std::endl >(std::basic_ostream >&) mov rdi, rax call std::basic_ostream >::operator<<(std::basic_ostream >& (*)(std::basic_ostream >&)) mov eax, 0 pop rbp ret __static_initialization_and_destruction_0(int, int): push rbp mov rbp, rsp sub rsp, 16 mov DWORD PTR [rbp-4], edi mov DWORD PTR [rbp-8], esi cmp DWORD PTR [rbp-4], 1 jne .L5 cmp DWORD PTR [rbp-8], 65535 jne .L5 mov edi, OFFSET FLAT:std::__ioinit call std::ios_base::Init::Init() [complete object constructor] mov edx, OFFSET FLAT:__dso_handle mov esi, OFFSET FLAT:std::__ioinit mov edi, OFFSET FLAT:std::ios_base::Init::~Init() [complete object destructor] call __cxa_atexit .L5: nop leave ret _GLOBAL__sub_I_main: push rbp mov rbp, rsp mov esi, 65535 mov edi, 1 call __static_initialization_and_destruction_0(int, int) pop rbp ret 
Output with DEBUG disabled (prints: nothing):
main: push rbp mov rbp, rsp mov eax, 0 pop rbp ret 
Log with functions:
#include  void log(const char* s) { #ifdef DEBUG std::cout << s << std::endl; #endif } int main() { log("Hello, World!"); return 0; } 
Output with DEBUG enabled (prints: "Hello, World!"):
log(char const*): push rbp mov rbp, rsp sub rsp, 16 mov QWORD PTR [rbp-8], rdi mov rax, QWORD PTR [rbp-8] mov rsi, rax mov edi, OFFSET FLAT:std::cout call std::basic_ostream >& std::operator<<  >(std::basic_ostream >&, char const*) mov esi, OFFSET FLAT:std::basic_ostream >& std::endl >(std::basic_ostream >&) mov rdi, rax call std::basic_ostream >::operator<<(std::basic_ostream >& (*)(std::basic_ostream >&)) nop leave ret .LC0: .string "Hello, World!" main: push rbp mov rbp, rsp mov edi, OFFSET FLAT:.LC0 call log(char const*) mov eax, 0 pop rbp ret __static_initialization_and_destruction_0(int, int): push rbp mov rbp, rsp sub rsp, 16 mov DWORD PTR [rbp-4], edi mov DWORD PTR [rbp-8], esi cmp DWORD PTR [rbp-4], 1 jne .L6 cmp DWORD PTR [rbp-8], 65535 jne .L6 mov edi, OFFSET FLAT:std::__ioinit call std::ios_base::Init::Init() [complete object constructor] mov edx, OFFSET FLAT:__dso_handle mov esi, OFFSET FLAT:std::__ioinit mov edi, OFFSET FLAT:std::ios_base::Init::~Init() [complete object destructor] call __cxa_atexit .L6: nop leave ret _GLOBAL__sub_I_log(char const*): push rbp mov rbp, rsp mov esi, 65535 mov edi, 1 call __static_initialization_and_destruction_0(int, int) pop rbp ret 
Output with DEBUG disabled and #include removed (prints: nothing):
log(char const*): push rbp mov rbp, rsp mov QWORD PTR [rbp-8], rdi nop pop rbp ret .LC0: .string "Hello, World!" main: push rbp mov rbp, rsp mov edi, OFFSET FLAT:.LC0 call log(char const*) mov eax, 0 pop rbp ret 
As you can see, the code works correctly in both cases as it outputs the message when in debug mode and strips it to print nothing if debug mode is not specified. However, the assembly for the function version is quite a bit longer and increases with every call to log(...). If I #ifdef the log(...) call itself, rather than the body of the function, then the assembly output is quite small and does not change no matter how many calls to log(...) I make (when DEBUG is disabled). However, that would require me to #ifdef every single call to log(...) I make which just doesn't seem reasonable.
I'm wondering if there is a method to use functions rather than macros and keep the assembly small and not scale with the number of calls to log(...), similar to how the macro version works. Is there a way to do this, or should I just be using macros for this logging functionality?
submitted by UtahTeapots to cpp_questions [link] [comments]


2024.05.21 23:33 Farzaa How r/leagueoflegends changed my life -- my story struggling as a CS major, to building League apps for 1M+ ppl.

Hi, I’m Farza. Today, I’m 28.
Below is a story that's a bit longer then perhaps what is usually post here.
But, I truly think it could perhaps help someone out there.
It's simply a story of a kid figuring it out.
Today I’m the founder of a tech company. We got a bunch of fancy investors, millions of people checking us out every week, stuff like that. It's pretty cool! But, journey there was all thanks to this place.
Everything started for me on this subreddit when I was 19leagueoflegends
This subreddit taught me how to code at 19.
This subreddit brought me over 1,000,000 users for my apps at 20.
This subreddit got my first real job as a Deep Learning Engineer at 22.
This subreddit gave me a reason to keep going.
I want to tell you my story because I know a lot of people here are in college or into tech/programing stuff, and it can be a long-winding road. I hope my story helps.
And, if you're someone that has a questions or are struggling with something right now, drop a comment/question! Happy to help.

"FML. I hate this major..."

In 2014 I was just another 18 year-old computer science student.
I picked computer science kinda randomly. I wasn’t sure if I’d be into it. I wasn’t that 12 year-old programming prodigy. Or that kid that had been making Minecraft servers since 14.
But, I truly loved making stuff on computers — editing videos on After Effects, making beats on Audacity, messing around with Unreal Engine, selling stuff on eBay, stuff like that.
So, I picked CS as my major.
Reality was tough though. I sucked at all aspects of programming. If you asked me to make a “for loop” I would have to literally google it every time. Everyone around me felt like a natural. I could barely do the most simple things.
I was lost, depressed, unsure of everything.

"League is cool though..."

But I knew one thing — I loved playing League. I even started the League club at my school and I was that kid that was literally always wearing League merch. My love for the the game was almost irrational.
Here I am repping my League merch back in the day.
So, I thought...
“Hey. Let me combine my two interests — computers/making stuff and League”.
So, I started thinking about making stuff for League players.

"I got an idea".

When playing League me and my friends would always listen to music.
So i got fired up about my first idea to build.
A website that would let League players listen to playlists built for specific champions. I was already doing this with my friends as a meme.
Ex. if I was playing Fiddlesticks — I would have a special playlist that “felt” like Fiddlestick’s energy with spooky halloween music, dark techno, stuff like that.
There were people who were already doing this with Spotify playlists, but, a lot of my friends didn’t have Spotify at the time so I wanted it as a stand-alone website.
I got obsessed with making the idea, and a miracle happened — I got obsessed with programming. I learned Javascript, learned how to make my first website, learned to use an API, learned to deploy a website — all in a few months.
I had support for about 30 champions on the site.
I thought okay, “that’s good enough!”

"Holy shit I have over 1M users"

I released it on this subreddit and got over 2800 upvotes.
I was so excited. I had hundreds of people hitting the site. Butttt, the site kept crashing. So, the post ended up dying.
But I was fired up — “Holy shit! I made a custom web app. All by myself. And, I had hundreds of people from around the world using it!!” I was over the moon.
I went back to the drawing board, redesigned the site/architecture, got two of my buddies to help me making playlists for the rest of the champions and launched it again.
I post it here, it blows up to 19,000 upvotes.
Over the year, it ends up getting over 1M users.
And over 100,000 people would continue using the site regularly. This massively improves my programming skills because I was getting stuff to people at scale! It wasn’t on localhost anymore.
After this, I continue making stuff + posting it on this subreddit.

"I'm getting the hang of this..."

Things continue spiraling as I build cool shit related to League of Legends.
I wanted to tell this story for two reasons:
One — because I want to help people that want to work on their own ideas. And if you’re someone out there reading this with a dream, comment below and lmk! Could be anything. And if you got a quesation lmk. Happy to help. Can also go to buildspace at link above!
Two — because, this subreddit has helped me out so much in the last 10-years. Always supporting my random projects. Always giving me the fire to keep going. So for that I wanna say thank you. And, if you’re someone in a dark place unsure about it all, I hope this story helped.
Keep following your passions.
You will figure it out. In your own way. Promise.
Thanks again, leagueoflegends :)
p.s: feel free to connect with me on Twitter!
submitted by Farzaa to leagueoflegends [link] [comments]


2024.05.21 23:33 Inig039 Can I call the Seam API through Javascript in my Flutter Application?

I am building a flutter application, which has the functionality of unlocking a smart lock whenever a certain button is pressed. I am trying to use the Seam API to accomplish this. Unfortunately, Seam does not have an SDK for Dart/Flutter. Originally, I had flutter make an HTTP request to a python script I had running with flask, and though this worked it was tedious. Then I discovered flutter_js which allows me to run Javascript code from inside my flutter application. So I thought I could use the Seam Javascript SDK to make the Seam API call, but I am running into some difficulties. When I run a simple javascript function like:
function addition(n1, n2) { return n1 + n2; } 
It works fine. But, when I run the javascript code which does the Seam API call, it doesn't work.
Below are the relevant code snippets:
The button press which calls the function to run Javascript:
ElevatedButton( onPressed: () async { final result = await unlockLock(jsRuntime); print(result); } 
The function to run javascript:
Future unlockLock(JavascriptRuntime jsRuntime) async { // Load the JavaScript code final blocJs = await rootBundle.loadString('assets/seam_api.js'); // Inject the JavaScript code into the runtime // Evaluate the function call JsEvalResult jsResult = jsRuntime.evaluate("""${blocJs}unlockApartment()"""); // Return the result return jsResult.stringResult; } 
The javascript code
import { Seam } from 'seam'; function unlockApartment(){ const seam = new Seam() const lock = await seam.locks.get({ name: 'Front Door' }) await seam.locks.unlockDoor({ device_id: lock.device_id }) return 'success'; } 
For this I get the error: "Unexpected token '{'. import call expects one or two arguments. at undefined"
I then discovered this answer from the creator of flutter_js who said that flutter_js "allows to evaluate pure javascript code inside mobile and desktop flutter apps. By pure, I mean the package is not a browser engine, so no web API , localstorage or another browser api are available."
Does this mean that flutter_js won't work with Seam? Or is there just a bug that I am not seeing?
submitted by Inig039 to flutterhelp [link] [comments]


2024.05.21 23:31 Impossible-role7328 Email and image confusion

I'm kinda confused and don't know exactly where to look for info. It seems like all the no code dev suites are unable to take an image an paste it into an email. The handful I looked into, and the one I built my app in, all require the use of a web API. My end user will not have internet access outside of the firewall, and I can't host the images inside the firewall, so I need the email to carry the image. Something I thought would be simple and standard. Anybody have any info on the barrier I am hitting? We send emails with pics all the time. Why can't I build a simple app to automate the process? Unfortunately I don't know what limitation I'm battling. Is it the no code blocks can't do it, or would I face the same thing if I was coding the app?
submitted by Impossible-role7328 to nocode [link] [comments]


2024.05.21 23:14 doedobrd How to fix my CustomTkinter YT downloader .exe file

I made a small project using CustomTkinter and Pytube to download YouTube videos with a simple GUI.
the program has zero errors when run as a .py file in the IDE and Windows if I double-click or use the terminal.
I then proceeded to use auto-py-to-exe to convert the file into a .exe file. I followed the instructions on the CustomTkinter website and although I had some trouble I managed to get through the process.
the final .exe file, however, does run but only for a moment before closing itself again. By running the .exe from a cmd terminal based in the directory of the file I was able to get an error message:
Traceback (most recent call last):
File "PyInstaller\hooks\rthooks\pyi_rth_pkgres.py", line 158, in
File "PyInstaller\hooks\rthooks\pyi_rth_pkgres.py", line 36, in _pyi_rthook
File "PyInstaller\loader\pyimod02_importers.py", line 419, in exec_module
File "pkg_resources\__init__.py", line 77, in
ModuleNotFoundError: No module named 'pkg_resources.extern'
[55288] Failed to execute script 'pyi_rth_pkgres' due to unhandled exception!
I was unable to find a solution to this and so I have ended up here.
Do you know what could be causing this error? or if indeed this is the reason the program does not properly function?
Full code:
import tkinter
import customtkinter
#from pytubefix import YouTube
from tkinter import filedialog
from moviepy.editor import *
from pathvalidate import sanitize_filename
#from pytubefix import Playlist
#from pytubefix.cli import on_progress\
from pytube import *
app = customtkinter.CTk(fg_color="black")
app.geometry("700x550")
app.title("YouTube Download")
app.after(201, lambda :app.iconbitmap("normally this is the path to the file but i have removed it for privacy"))
font = customtkinter.CTkFont(family='Trade Gothic LT Bold Condensed No. 20', size=30)
font2 = customtkinter.CTkFont(family='Trade Gothic LT Bold Condensed No. 20', size=20)
menu = ''
currenttype = ''
def MainMenuGUI():
menu = 'main'
title.grid_forget()
finishLabel.grid_forget()
Vprogbar.grid_forget()
link.grid_forget()
download.grid_forget()
backbutton.grid_forget()
pPercent.grid_forget()
app.grid_rowconfigure(0, weight=1)
app.grid_rowconfigure(1, weight=1)
app.grid_rowconfigure(2, weight=1)
app.grid_columnconfigure(0, weight=1)
app.grid_columnconfigure(1, weight=1)
WhatLabel.grid(row=0, column=0, columnspan=2, padx=100, pady=50)
Videobutton.grid(row=1, column=1, sticky=customtkinter.W, padx=50)
AudioButton.grid(row=1, column=0, sticky=customtkinter.E, padx=50)
PVideobutton.grid(row=2, column=1, sticky=customtkinter.W, padx=50, pady=50)
PAudioButton.grid(row=2, column=0, sticky=customtkinter.E, padx=50, pady=50)
def mp4_to_mp3(mp4, mp3):
mp4_without_frames = AudioFileClip(mp4)
mp4_without_frames.write_audiofile(mp3)
mp4_without_frames.close() # function call mp4_to_mp3("my_mp4_path.mp4", "audio.mp3")
def DownloadGUI(dtype):
global menu
menu = dtype
global currenttype
currenttype = dtype
WhatLabel.grid_forget()
Videobutton.grid_forget()
AudioButton.grid_forget()
PVideobutton.grid_forget()
PAudioButton.grid_forget()
Vprogbar.grid_forget()
pPercent.grid_forget()
Pprogbar.grid_forget()
app.grid_rowconfigure(0, weight=100)
app.grid_rowconfigure(1, weight=10)
app.grid_rowconfigure(2, weight=1)
app.grid_rowconfigure(3, weight=100)
title.grid(row=0, column=0, columnspan=2, sticky=customtkinter.S)
link.grid(row=1, column=0, columnspan=2)
download.grid(row=2, column=0, columnspan=2, sticky=customtkinter.N)
finishLabel.grid(row=3, column=0, columnspan=2, sticky=customtkinter.N)
backbutton.grid(row=3, column=1, columnspan=1)
finishLabel.configure(text='')
if currenttype == "Video" or currenttype == "Audio":
title.configure(text="Insert a YouTube link")
download.configure(command=lambda: startdownload(dtype=currenttype))
else:
title.configure(text="Insert a playlist link")
download.configure(command=lambda: startdownloadP(dtype=currenttype))
link.delete(0, customtkinter.END)
def startdownload(dtype):
try:
ytlink = link.get()
ytobject = YouTube(ytlink, on_progress_callback=Vprog)
title.configure(text=ytobject.title)
finishLabel.configure(text="")
global menu
menu = str(dtype) + 'Download'
path = tkinter.filedialog.askdirectory(initialdir="/", mustexist=True, parent=app)
pPercent.grid(row=1, column=0, columnspan=2, sticky=customtkinter.S)
link.grid_forget()
download.grid_forget()
Vprogbar.grid(row=2, column=0, columnspan=2, sticky=customtkinter.N)
if dtype == "Video":
video = ytobject.streams.get_highest_resolution()
video.download(output_path=str(path))
elif dtype == "Audio":
audio = ytobject.streams.get_audio_only()
if os.path.exists(str(path) + "/" + sanitize_filename(audio.title) + ".mp4"):
audio.download(output_path=str(path), filename=sanitize_filename(audio.title) + "1" + ".mp4")
clip = AudioFileClip(str(path) + "/" + sanitize_filename(audio.title) + "1" + ".mp4")
clip.write_audiofile(str(path) + "/" + sanitize_filename(audio.title) + ".mp4"[:-4] + ".mp3")
clip.close()
if os.path.exists(str(path)+"/"+sanitize_filename(audio.title) + "1" + ".mp4"):
os.remove(str(path)+"/"+sanitize_filename(audio.title) + "1" + ".mp4")
else:
audio.download(output_path=str(path), filename=sanitize_filename(audio.title)+".mp4")
clip = AudioFileClip(str(path)+"/"+sanitize_filename(audio.title)+".mp4")
clip.write_audiofile(str(path)+"/"+sanitize_filename(audio.title)+".mp4"[:-4] + ".mp3")
clip.close()
if os.path.exists(str(path)+"/"+sanitize_filename(audio.title)+".mp4"):
os.remove(str(path)+"/"+sanitize_filename(audio.title)+".mp4")
finishLabel.configure(text="downloaded", text_color="white")
except:
finishLabel.configure(text="Download has failed", text_color="red")
title.configure(text="Insert a YouTube link")
Vprogbar.grid_forget()
link.grid(row=1, column=0, columnspan=2)
def startdownloadP(dtype):
vcount = 0
vccount = 0
playlink = Playlist(link.get())
path = tkinter.filedialog.askdirectory(initialdir="/", mustexist=True, parent=app)
pPercent.grid(row=1, column=0, columnspan=2, sticky=customtkinter.S)
ppPercent.grid(row=3, column=0, columnspan=2, sticky=customtkinter.N, pady=20)
link.grid_forget()
download.grid_forget()
Vprogbar.grid(row=2, column=0, columnspan=2, sticky=customtkinter.N)
Pprogbar.grid(row=3, column=0, columnspan=2, sticky=customtkinter.N, pady=10)
for _ in playlink.videos:
vcount += 1
Pprog(vcount, 0)
for vid in playlink.videos:
vccount += 1
Pprog(vcount, vccount)
vid.register_on_progress_callback(Vprog)
title.configure(text=vid.title)
global menu
menu = str(dtype) + 'Download'
if dtype == "VideoPlaylist":
video = vid.streams.get_highest_resolution()
video.download(output_path=str(path))
elif dtype == "AudioPlaylist":
audio = vid.streams.get_audio_only()
if os.path.exists(str(path) + "/" + sanitize_filename(audio.title) + ".mp4"):
audio.download(output_path=str(path), filename=sanitize_filename(audio.title) + "1" + ".mp4")
clip = AudioFileClip(str(path) + "/" + sanitize_filename(audio.title) + "1" + ".mp4")
clip.write_audiofile(str(path) + "/" + sanitize_filename(audio.title) + ".mp4"[:-4] + ".mp3")
clip.close()
if os.path.exists(str(path) + "/" + sanitize_filename(audio.title) + "1" + ".mp4"):
os.remove(str(path) + "/" + sanitize_filename(audio.title) + "1" + ".mp4")
else:
audio.download(output_path=str(path), filename=sanitize_filename(audio.title) + ".mp4")
clip = AudioFileClip(str(path) + "/" + sanitize_filename(audio.title) + ".mp4")
clip.write_audiofile(str(path) + "/" + sanitize_filename(audio.title) + ".mp4"[:-4] + ".mp3")
clip.close()
if os.path.exists(str(path) + "/" + sanitize_filename(audio.title) + ".mp4"):
os.remove(str(path) + "/" + sanitize_filename(audio.title) + ".mp4")
pPercent.grid_forget()
ppPercent.grid_forget()
Vprogbar.grid_forget()
Pprogbar.grid_forget()
finishLabel.grid(row=2, column=0, columnspan=2, sticky=customtkinter.N)
finishLabel.configure(text="All videos downloaded", text_color="white")
def Vprog(stream, chunk, bytes_remaining):
total_size = stream.filesize
bytes_downloaded = total_size - bytes_remaining
percentage_complete = bytes_downloaded / total_size * 100
per = str(int(percentage_complete))
pPercent.configure(text=per + "%")
pPercent.update()
Vprogbar.set(float(percentage_complete / 100))
pPercent.update()
Vprogbar.update()
def Pprog(total, current):
percentage_done = current / total * 100
per = str(int(percentage_done))
ppPercent.configure(text=per + "%")
Pprogbar.set(float(percentage_done / 100))
Pprogbar.update()
def Back():
if 'Download' in menu:
DownloadGUI(menu[:-8])
else:
MainMenuGUI()
urlvar = tkinter.StringVar()
title = customtkinter.CTkLabel(app, text="Insert a YouTube link", fg_color='White',corner_radius=10, padx=50, font=font)
link = customtkinter.CTkEntry(app, width=350, height=40, textvariable=urlvar)
finishLabel = customtkinter.CTkLabel(app, text="", text_color="white")
pPercent = customtkinter.CTkLabel(app, text="0%", text_color="white")
ppPercent = customtkinter.CTkLabel(app, text="0%", text_color="white")
Vprogbar = customtkinter.CTkProgressBar(app, width=400, progress_color="red")
Pprogbar = customtkinter.CTkProgressBar(app, width=400, progress_color="red")
download = customtkinter.CTkButton(app, text="Download", command=lambda: startdownload(dtype=currenttype), fg_color="#e8e6e6", text_color="black", hover_color='#c0c0c0')
Vprogbar.set(0)
Pprogbar.set(0)
backbutton = customtkinter.CTkButton(app, text_color='black', text="back", width=50, height=50, fg_color='#333333', hover_color='#c0c0c0', command=Back)
WhatLabel = customtkinter.CTkLabel(app, text="What would you like to download?", fg_color='White',corner_radius=10, padx=50, font=font)
Videobutton = customtkinter.CTkButton(app, text='Video', width=250, height=150, font=font2, fg_color='#b01214', hover_color='#590404', command=lambda: DownloadGUI(dtype='Video'))
AudioButton = customtkinter.CTkButton(app, text='Audio', width=250, height=150, font=font2, fg_color='#b01214', hover_color='#590404', command=lambda: DownloadGUI(dtype='Audio'))
PVideobutton = customtkinter.CTkButton(app, text='Video Playlist', width=250, height=150, font=font2, fg_color='#b01214', hover_color='#590404', command=lambda: DownloadGUI(dtype='VideoPlaylist'))
PAudioButton = customtkinter.CTkButton(app, text='Audio Playlist', width=250, height=150, font=font2, fg_color='#b01214', hover_color='#590404', command=lambda: DownloadGUI(dtype='AudioPlaylist'))
#https://www.youtube.com/watch?v=cPAlmXHMktA
#https://www.youtube.com/playlist?list=PLpi4n5vOXXFkJxTSD8VRuZ9phHmojXaP1
#https://www.youtube.com/watch?v=Ga2PA-vEiFk
#https://www.youtube.com/watch?v=QU8pe3dhz8s&list=PLpi4n5vOXXFkJxTSD8VRuZ9phHmojXaP1&index=10
MainMenuGUI()
app.mainloop()
submitted by doedobrd to learnpython [link] [comments]


2024.05.21 23:01 waynebradysmailbox Looking to compare two excel sheets and remove new items on one

Here's the thing I'm trying to do, I'm newer to excel so I may just be overlooking something simple.
We are converting over from Shopify POS/website to another POS/website. Before I came in with the company they had imported the products they had at the time via xlsx file but it didn't keep the quantity of products. The new POS won't accept certain SKUs and product names set by Shopify, so it made it's own. So now I have 2 excel files, simply with Product Name, SKU, Product Code and quantity on hand. The SKUs/names are different and they keep adding products into shopify which is making this more difficult.
Shopify has over 2000 products now and the new system only has 1700. I need a way to delete the new products on the Shopify xlsx file, essentially only keeping the same products so I can just copy and paste quantity between the two.
If more info is needed, please ask. I am brain dead after trying to figure this out for hours on end and may have missed a few things someone may need.
submitted by waynebradysmailbox to excel [link] [comments]


2024.05.21 22:55 The-Side-Note I asked chat gpt to create me code for a app where you can find boxing opponents sadly i know nothing aha im wondering if anyone can tell me if this actually works

Frontend: HTML, CSS, JavaScript • Backend: Node.js with Express • Database: SQLite for simplicity
Step-by-Step Plan
1. Initialize the Project: • Set up a Node.js project. • Install necessary dependencies (Express, SQLite). 2. Create the Database Schema: • Design a table to store user information and boxing weight records. 3. Build the Backend: • Create routes for adding, retrieving, and searching user records. • Connect to the SQLite database. 4. Build the Frontend: • Create a simple form for users to input their boxing records. • Display the list of records. • Implement a search feature to find potential opponents. 
Pseudocode
1. Initialize Project: 
mkdir boxing-app cd boxing-app npm init -y npm install express sqlite3 body-parser
2. Create Database Schema: • database.js: 
const sqlite3 = require('sqlite3').verbose(); const db = new sqlite3.Database(':memory:');
db.serialize(() => { db.run("CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, weight REAL, record TEXT)"); });
module.exports = db;
3. Build the Backend: • server.js: 
const express = require('express'); const bodyParser = require('body-parser'); const db = require('./database');
const app = express(); app.use(bodyParser.json());
// Add user app.post('/users', (req, res) => { const { name, weight, record } = req.body; db.run("INSERT INTO users (name, weight, record) VALUES (?, ?, ?)", [name, weight, record], function(err) { if (err) { return res.status(500).send(err.message); } res.status(201).send({ id: this.lastID }); }); });
// Get users app.get('/users', (req, res) => { db.all("SELECT * FROM users", [], (err, rows) => { if (err) { return res.status(500).send(err.message); } res.status(200).send(rows); }); });
// Search for opponents app.get('/opponents', (req, res) => { const { weight } = req.query; db.all("SELECT * FROM users WHERE ABS(weight - ?) <= 5", [weight], (err, rows) => { if (err) { return res.status(500).send(err.message); } res.status(200).send(rows); }); });
const PORT = process.env.PORT 3000; app.listen(PORT, () => { console.log(Server is running on port ${PORT}); });
4. Build the Frontend: • index.html: 
Boxing Records

Boxing Records

All Records

Find Opponents


4. • styles.css: 
body { font-family: Arial, sans-serif; margin: 20px; } form, div { margin-bottom: 20px; } input, button { margin: 5px 0; padding: 10px; width: 100%; } button { cursor: pointer; }
4. • scripts.js: 
document.getElementById('record-form').addEventListener('submit', function(e) { e.preventDefault(); const name = document.getElementById('name').value; const weight = document.getElementById('weight').value; const record = document.getElementById('record').value;
fetch('/users', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ name, weight, record }) }).then(response => response.json()) .then(data => { alert('Record added!'); loadRecords(); }); });
function loadRecords() { fetch('/users') .then(response => response.json()) .then(data => { const recordsDiv = document.getElementById('records'); recordsDiv.innerHTML = ''; data.forEach(user => { const div = document.createElement('div'); div.textContent = ${user.name} - ${user.weight} kg - ${user.record}; recordsDiv.appendChild(div); }); }); }
document.getElementById('search-btn').addEventListener('click', function() { const weight = document.getElementById('search-weight').value; fetch(/opponents?weight=${weight}) .then(response => response.json()) .then(data => { const opponentsDiv = document.getElementById('opponents'); opponentsDiv.innerHTML = ''; data.forEach(user => { const div = document.createElement('div'); div.textContent = ${user.name} - ${user.weight} kg - ${user.record}; opponentsDiv.appendChild(div); }); }); });
loadRecords();
Full Code
// Step 1: Initialize the project mkdir boxing-app cd boxing-app npm init -y npm install express sqlite3 body-parser
// Step 2: Create database.js
// database.js const sqlite3 = require('sqlite3').verbose(); const db = new sqlite3.Database(':memory:');
db.serialize(() => { db.run("CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, weight REAL, record TEXT)"); });
module.exports = db;
// Step 3: Build the backend
// server.js const express = require('express'); const bodyParser = require('body-parser'); const db = require('./database');
const app = express(); app.use(bodyParser.json());
app.post('/users', (req, res) => { const { name, weight, record } = req.body; db.run("INSERT INTO users (name, weight, record) VALUES (?, ?, ?)", [name, weight, record], function(err) { if (err) { return res.status(500).send(err.message); } res.status(201).send({ id: this.lastID }); }); });
app.get('/users', (req, res) => { db.all("SELECT * FROM users", [], (err, rows) => { if (err) { return res.status(500).send(err.message); } res.status(200).send(rows); }); });
app.get('/opponents', (req, res) => { const { weight } = req.query; db.all("SELECT * FROM users WHERE ABS(weight - ?) <= 5", [weight], (err, rows) => { if (err) { return res.status(500).send(err.message); } res.status(200).send(rows); }); });
const PORT = process.env.PORT 3000; app.listen(PORT, () => { console.log(Server is running on port ${PORT}); });
Step 4: Build the frontend
index.html Boxing Records

Boxing Records

All Records

Find Opponents

The-Side-Note to appdev [link] [comments]


2024.05.21 22:51 birneee [Gnome] It's time to make tabs a wm primitive 🔥

[Gnome] It's time to make tabs a wm primitive 🔥 submitted by birneee to unixporn [link] [comments]


2024.05.21 22:50 madferitNYC Anybody have any experience navigating Summit Health? Or work in the coding/billing dept?

Let me just start off by saying that I know I've lost and there's nothing I can do to change the past. I want to know about how to avoid muggings like this in the future.
That being said here's the story:
Every year I go to my GI for my yearly check in. I have a mild case of Ulcerative colitis. I take lialda which is prescribed by this doctor. Every year the visit includes me getting vitals from the nurse, waiting for 10 minutes for the doc, he asks "how have you been feeling this year? Are the drugs still treating you okay?" I say "pretty good, one or two flair ups but nothing debilitating. Drugs still feel good, no side effects." .... He writes me another prescription, feels my stomach a bit, checks my chest and back with a stethoscope, answers a simple question of mine if I have one, writes me an order for a stool sample and blood work and then we're gone. 10 minutes absolute tops.
I got a bill this year for $100 more with a different billing code than the previous years' checkup. So I inquire and at first the clueless customer service billing department person says it's because I was there for 30 minutes rather than 0-29 minutes. Which I say is horse fucking shit and tell them to recode it. Then I get a call today saying that it's because it was a "MORE complex visit". This lady on the phone wasn't there the day of service but she's saying it's because I got my blood work done ahead of time this year.
My bloodwork every year is fine. When I get it done AFTER the visit all I get is a message from him in the "patient portal" online saying "looks good, see you next year." Since I got it done BEFORE, he charged me for the "analysis" which was the same as every other year except he said "looks good, see you next year" in person. So if I had waited to get the bloodwork done AFTER the visit I would've gotten the same analysis except it would've been for $100 less because he would've sent it via the online portal.
Now if those words are $100 more coming out of his golden lips then so be it. It's fucking highway robbery but welcome to American healthcare. You win this round you fucking prick.
TLDR: What I'm asking is does anybody have experience navigating Summit Medical and avoiding their little unforeseeable ass fuckings like this? How was I to know any of this ahead of time? That's my problem with it. Bonus if you work at Summit and hate them as much as me and want to share some of the insider info.
submitted by madferitNYC to newjersey [link] [comments]


2024.05.21 22:40 Diligent-Permit8777 Any good book recommendations for understanding and improving skill on these topics?

Any good books that you could recommend to help with understanding or to help with skill for the following topics?
Binomial estimation Trigonometric ratios The cosine rule The sine rule Differentiating functions with two or more terms Gradients, tangents and normal Increasing and decreasing functions Second order derivatives Stationary points Areas of triangles Sketching gradient functions Solving triangle problems Graphs of sine, cosine and tangent Modelling with differentiation Transforming trigonometric graphs Integration Trigonometric identities and Integrating Indefinite integrals equations Finding functions Angles in all four quadrants Definite integrals Exact values of trigonometric ratios Areas under curves Trigonometric identities Areas under the x-axis Simple trigonometric equations Areas between curves and lines Harder trigonometric equations Equations and identities Exponentials and logarithms Vectors Logarithms Representing vectors Magnitude and direction Position vectors Solving geometric problems Exponential functions y = ex Exponential modelling Laws of logarithms Solving equations using logarithms Working with natural logarithms Logarithms and non-linear data Modelling with vectors Differentiation Gradients of curves Finding the derivative Differentiating x Differentiating quadratics
Radians Algebraic methods Radian measure Proof by contradiction Arc length Algebraic fractions Partial fractions Repeated factors Algebraic division Areas of sectors and segments Solving trigonometric equations Small angle approximations Functions and graphs The modulus function Functions and mappings Composite functions Inverse functions y= f(x) and y = f(x) Combining transformations Trigonometric functions Secant, cosecant and cotangent Graphs of secx, cosecx and cotx Using secx, cosecx and cotx Trigonometric identities Inverse trigonometric functions Solving modulus problems Trigonometry and modelling Addition formulae Using the angle addition formulae Sequences and series Double-angle formulae Arithmetic sequences Solving trigonometric equations Arithmetic series Simplifying a cos x + b sin x Geometric sequences Proving trigonometric identities Geometric series Sum to infinity Modelling with trigonometric functions Sigma notation Recurrence relations Modelling with series Parametric equations Using trigonometric identities Binomial expansion Expanding (1 + x)" Expanding (a + bx)" Using partial fractions Curve sketching Points of intersection Modelling with parametric equations
Stretching graphs Transforming functions Algebraic expressions Index laws Expanding brackets Factorising Negative and fractional indices Surds Rationalising denominators y = mx + c Straight line graphs Equations of straight lines Parallel and perpendicular lines Length and area Modelling with straight lines Quadratics Solving quadratic equations Completing the square Circles Functions Quadratic graphs Midpoints and perpendicular bisectors The discriminant Modelling with quadratics Equation of a circle Intersections of straight lines and circles Use tangent and chord properties Equations and inequalities Circles and triangles Linear simultaneous equations Quadratic simultaneous equations Simultaneous equations on graphs Algebraic methods Linear inequalities Algebraic fractions Quadratic inequalities Dividing polynomials Inequalities on graphs The factor theorem Regions Mathematical proof Graphs and transformations Cubic graphs The binomial expansion Quartic graphs Reciprocal graphs Pascal's triangle Factorial notation Points of intersection The binomial expansion Translating graphs Solving binomial problems Using trigonometric identities Reverse chain rule Differentiation Integration by substitution Differentiating sin x and cos x Integration by parts Differentiating exponentials and Partial fractions logarithms Finding areas The chain rule The product rule The quotient rule Differentiating trigonometric functions Parametric differentiation Implicit differentiation Using second derivatives The trapezium rule Solving differential equations Modelling with differential equations Integration as the limit of a sum Vectors Rates of change 3D coordinates Vectors in 3D Solving geometric problems Application to mechanics Numerical methods Locating roots Iteration The Newton-Raphson method Applications to modelling Integration Integrating standard functions Integrating f(ax+b)
STATISTICS Data collection Populations and samples Sampling Non-random sampling Types of data The large data set Mutually exclusive and independent events Tree diagrams Statistical distributions Probability distributions The binomial distribution Cumulative probability’s Hypothesis testing 2 Measures of location and spread Hypothesis testing Measures of central tendency Finding critical values Other measures of location One-tailed tests Measures of spread Two-tailed tests Variance and standard deviation Coding Representations of data Outliers Box plots Cumulative frequency Histograms Comparing data MECHANICS Modelling in mechanics Constructing a model Modelling assumptions Quantities and units Working with vectors Correlation Linear regression Constant acceleration Probability Calculating probabilities Venn diagrams Displacement-time graphs Velocity-time graphs Constant acceleration formulae 1 Constant acceleration formulae 2 Vertical motion under gravity
Forces and motion Force diagrams Forces as vectors Using integration Constant acceleration formulae Forces and acceleration Motion in 2 dimensions Connected particles Pulleys Variable acceleration Functions of time Using differentiation Maxima and minima problems
MECHANICS Moments STATISTICS Resultant moments Regression, correlation Equilibrium and hypothesis testing Centres of mass Exponential models Tilting Measuring correlation Hypothesis testing for zero correlation Forces and friction Resolving forces Conditional probability Inclined planes Set notation Friction Conditional probability Conditional probabilities in Venn diagrams Projectiles Probability formulae Horizontal projection Tree diagrams Horizontal and vertical components Projection at any angle Projectile motion formulae The normal distribution The normal distribution Finding probabilities for Applications of forces normal distributions Static particles The inverse normal distribution Modelling with statics function The standard normal distribution Finding μ and σ Approximating a binomial distribution Hypothesis testing with the normal distribution Friction and static particles Static rigid bodies Dynamics and inclined planes Connected particles Further kinematics Vectors in kinematics Vector methods with projectiles Variable acceleration in one dimension Differentiating vectors Integrating vectors
submitted by Diligent-Permit8777 to learnmath [link] [comments]


2024.05.21 22:37 madferitNYC Anybody have any experience with Summit Health?

Let me just start off by saying that I know I've lost and there's nothing I can do to change the past. I want to know about how to avoid muggings like this in the future.
That being said here's the story:
Every year I go to my GI for my yearly check in. I have a mild case of Ulcerative colitis. I take lialda which is prescribed by this doctor. Every year the visit includes me getting vitals from the nurse, waiting for 10 minutes for the doc, he asks "how have you been feeling this year? Are the drugs still treating you okay?" I say "pretty good, one or two flair ups but nothing debilitating. Drugs still feel good, no side effects." .... He writes me another prescription, feels my stomach a bit, checks my chest and back with a stethoscope, answers a simple question of mine if I have one, writes me an order for a stool sample and blood work and then we're gone. 10 minutes absolute tops.
I got a bill this year for $100 more with a different billing code than the previous years' checkup. So I inquire and at first the clueless customer service billing department person says it's because I was there for 30 minutes rather than 0-29 minutes. Which I say is horse fucking shit and tell them to recode it. Then I get a call today saying that it's because it was a "MORE complex visit". This lady on the phone wasn't there the day of service but she's saying it's because I got my blood work done ahead of time this year.
My bloodwork every year is fine. When I get it done AFTER the visit all I get is a message from him in the "patient portal" online saying "looks good, see you next year." Since I got it done BEFORE, he charged me for the "analysis" which was the same as every other year except he said "looks good, see you next year" in person. So if I had waited to get the bloodwork done AFTER the visit I would've gotten the same analysis except it would've been for $100 less because he would've sent it via the online portal.
Now if those words are $100 more coming out of his golden lips then so be it. It's fucking highway robbery but welcome to American healthcare. You win this round you fucking prick.
TLDR: What I'm asking is does anybody have experience navigating Summit Medical and avoiding their little unforeseeable ass fuckings like this? How was I to know any of this ahead of time? That's my problem with it. Bonus if you work at Summit and hate them as much as me and want to share some of the insider info.
submitted by madferitNYC to MedicalBill [link] [comments]


2024.05.21 22:32 Grouchy_Carpenter489 What you need to know about spreadsheet-driven transactions in Oracle Fusion

What you need to know about spreadsheet-driven transactions in Oracle Fusion
https://preview.redd.it/aik22sj2bu1d1.png?width=2240&format=png&auto=webp&s=6981b98e54cd0fd5a520cd217e6fe85335d0ca1c

What you need to know about spreadsheet-driven transactions in Oracle Fusion

There is a growing need to access accurate information quickly and in real time to facilitate decision-making in organizations worldwide. This calls for a more integrated system that offers reliable data for all departments within an organization. Teams need access to accurate data when needed to boost productivity. The Oracle Fusion system enables different departments to collaborate as they all work with information from the same data set.
The application of advanced Excel in Oracle Fusion makes data manipulation and analytics easier through automation and integration. A good data management tool should allow you to harness the power of Excel, which most of your staff already uses, facilitating inter-departmental collaboration.

Excel-based transaction: How it works

Simplified Loader provides one of the best Excel-based mechanisms for uploading or downloading data from Oracle Fusion. Simplified Loader’s Excel templates connect seamlessly with Oracle Fusion to create, upload, download, or delete transactions from Oracle Fusion Cloud. The templates are easy to use and come with a toolbar that contains operations specific to the template.

How does it work?

Simplified Loader Excel templates are digitally signed. The simplified Loader digital certificate is stored on your computer. It is a simple process that you only need to do one time.
Simplified Loader leverages Oracle's approved APIs to facilitate seamless data exchange with Oracle systems. Here’s how it works: data from your spreadsheet is transformed into the appropriate API format, sent to Oracle, and the response is then displayed back in your spreadsheet. Using these APIs ensures that all standard validations are executed according to Oracle's configured rules, guaranteeing data integrity and compliance with Oracle's stringent standards.

Simplified Loader templates vs File-based templates

Comparison in functionality
Functionality File-based template. (FBDI)Simplified Loader template Layout-Columns sequence is rigid -rigid date format -An additional Macro is needed to format data because you are required to organize data in separate sheets means - You can change the column layout to suit your needs(add, hide, or delete columns). -Flexible date format Support for data input by end-users-Too Technical to share with end-users -Needs macro to convert data -No Lookups- Supports offline lookups - Supports offline validation Data download-Not supported-Template support can be downloaded from Oracle Fusion using SQL queries. -SQL queries can be customized. Single Sign-On-Not applicable-Supported Custom Validation-Not possible-Possible. Admin can turn the validation on or off at the template level or user level Selective uploadNot supportedSupported Error Reporting and Resolution-Time-consuming -Errors must be fixed in the source CSV file. -After fixing an error, you need to complete the entire upload process again to confirm if the error has been resolved -The error message is part of the actual transaction. - Error is fixed within the same file Steps involved in upload -It is an extended process involving seven steps -Single-click upload Processing-Batch-processing -Real-time

Benefits of Excel templates over file-based templates.

  1. Excel templates are easy to use. It is not code-intensive and, therefore, suitable for the end-user responsible for data entry. File-based templates are designed to suit technical users.
  2. Excel templates process data in real-time, allowing you to maintain a single source of truth. File-based templates process data in batches.
  3. In Excel templates, error messages appear as part of the transaction and can be resolved on the spot while in file-based templates, the feedback mechanism is difficult and resolution is time-consuming.
  4. Excel templates: - Eliminate the need for customized tools
  • It enables self-service across departments
  • End-users find it easy to use
  • Flexible as adding, deleting, hiding, or moving columns as needed.

Conclusion

Spreadsheet-driven transactions in Oracle Fusion allow organizations to harness the power of data by creating a reliable, accurate, real-time, single source of truth for all players at all times. Simplified Loader, one of the best Excel-based tools, provides varied functionalities. It is user-friendly, flexible, and provides excellent support.
submitted by Grouchy_Carpenter489 to u/Grouchy_Carpenter489 [link] [comments]


2024.05.21 22:20 Goldentesla69420ape Cheat Sheet for abbreviations: CompTIA Security+ (Plus) Certification

Here are all of the relevant keywords/abbreviations for the CompTIA sec+ exam.
Comment below if you have any questions, if I made a mistake, or if I missed something!
AAA: Authentication, Authorization, and Accounting ABAC: Attribute-Based Access Control ACL: Access Control List AD: Active Directory AES: Advanced Encryption Standard AES256: Advanced Encryption Standard with a key size of 256 bits AH: Authentication Header AI: Artificial Intelligence AIS: Automated Information System ALE: Annual Loss Expectancy AP: Access Point API: Application Programming Interface APT: Advanced Persistent Threat ARO: Annualized Rate of Occurrence ARP: Address Resolution Protocol ASLR: Address Space Layout Randomization ASP: Application Service Provider ATT&CK: Adversarial Tactics, Techniques, and Common Knowledge AUP: Acceptable Use Policy AV: Antivirus BASH: Bourne Again Shell BCP: Business Continuity Plan BGP: Border Gateway Protocol BIA: Business Impact Analysis BIOS: Basic Input/Output System BPA: Business Process Automation BPDU: Bridge Protocol Data Unit BSSID: Basic Service Set Identifier BYOD: Bring Your Own Device CA: Certificate Authority CAPTCHA: Completely Automated Public Turing test to tell Computers and Humans Apart CAR: Corrective Action Report CASB: Cloud Access Security Broker CBC: Cipher Block Chaining CBT: Computer-Based Training CCMP: Counter Mode with Cipher Block Chaining Message Authentication Code Protocol CCTV: Closed-Circuit Television CERT: Computer Emergency Response Team CFB: Cipher Feedback CHAP: Challenge-Handshake Authentication Protocol CIO: Chief Information Officer CIRT: Computer Incident Response Team CIS: Center for Internet Security CMS: Content Management System CN: Common Name COOP: Continuity of Operations COPE: Corporate-Owned, Personally-Enabled CP: Control Plane CRC: Cyclic Redundancy Check CRL: Certificate Revocation List CSA: Cloud Security Alliance CSIRT: Computer Security Incident Response Team CSO: Chief Security Officer CSP: Cloud Service Provider CSR: Certificate Signing Request CSRF: Cross-Site Request Forgery CSU: Central Service Unit CTM: Content Threat Management CTO: Chief Technology Officer CVE: Common Vulnerabilities and Exposures CVSS: Common Vulnerability Scoring System CYOD: Choose Your Own Device DAC: Discretionary Access Control DBA: Database Administrator DDoS: Distributed Denial of Service DEP: Data Execution Prevention DER: Distinguished Encoding Rules DES: Data Encryption Standard DHCP: Dynamic Host Configuration Protocol DHE: Diffie-Hellman Ephemeral DKIM: DomainKeys Identified Mail DLL: Dynamic Link Library DLP: Data Loss Prevention DMARC: Domain-based Message Authentication, Reporting, and Conformance DNT: Do Not Track DNS: Domain Name System DNSSEC: Domain Name System Security Extensions DoS: Denial of Service DPO: Data Protection Officer DRP: Disaster Recovery Plan DSA: Digital Signature Algorithm DSL: Digital Subscriber Line EAP: Extensible Authentication Protocol ECB: Electronic Codebook ECC: Elliptic Curve Cryptography ECDHE: Elliptic Curve Diffie-Hellman Ephemeral ECDSA: Elliptic Curve Digital Signature Algorithm EDR: Endpoint Detection and Response EFS: Encrypting File System EIP: Enterprise Information Portal EOL: End of Life EOS: End of Support ERP: Enterprise Resource Planning ESN: Electronic Serial Number ESP: Encapsulating Security Payload ESSID: Extended Service Set Identifier FACL: File Access Control List FDE: Full Disk Encryption FIM: File Integrity Monitoring FPGA: Field-Programmable Gate Array FRR: Fast Reroute FTP: File Transfer Protocol FTPS: FTP Secure GCM: Galois/Counter Mode GDPR: General Data Protection Regulation GPG: GNU Privacy Guard GPO: Group Policy Object GPS: Global Positioning System GPU: Graphics Processing Unit GRE: Generic Routing Encapsulation HA: High Availability HDD: Hard Disk Drive HIDS: Host-based Intrusion Detection System HIPS: Host-based Intrusion Prevention System HMAC: Keyed-Hash Message Authentication Code HOTP: HMAC-based One-Time Password HSM: Hardware Security Module HSMaaS: Hardware Security Module as a Service HTML: Hypertext Markup Language HTTP: Hypertext Transfer Protocol HTTPS: Hypertext Transfer Protocol Secure HVAC: Heating, Ventilation, and Air Conditioning IaaS: Infrastructure as a Service IAM: Identity and Access Management ICMP: Internet Control Message Protocol ICS: Industrial Control System IDEA: International Data Encryption Algorithm IDF: Intermediate Distribution Frame IdP: Identity Provider IDS: Intrusion Detection System IPS: Intrusion Prevention System IEEE: Institute of Electrical and Electronics Engineers IKE: Internet Key Exchange IM: Instant Messaging IMAP4: Internet Message Access Protocol version 4 IoC: Indicator of Compromise IoT: Internet of Things IP: Internet Protocol IPSec: Internet Protocol Security IR: Incident Response IRC: Internet Relay Chat IRP: Incident Response Plan ISA: Interconnection Security Agreement ISFW: Integrated Security and Firewalls ISO: International Organization for Standardization ISP: Internet Service Provider ISSO: Information Systems Security Officer ITCP: Information Technology Contingency Plan IV: Initialization Vector KDC: Key Distribution Center KEK: Key Encryption Key L2TP: Layer 2 Tunneling Protocol LAN: Local Area Network LDAP: Lightweight Directory Access Protocol LEAP: Lightweight Extensible Authentication Protocol MaaS: Monitoring as a Service MAC: Media Access Control MAM: Mobile Application Management MAN: Metropolitan Area Network MBR: Master Boot Record MD5: Message Digest Algorithm 5 MDF: Main Distribution Frame MDM: Mobile Device Management MFA: Multi-Factor Authentication MFD: Multi-Function Device MFP: Multi-Function Printer ML: Machine Learning MMS: Multimedia Messaging Service MOA: Memorandum of Agreement MOU: Memorandum of Understanding MPLS: Multiprotocol Label Switching MSA: Master Service Agreement MSP: Managed Service Provider MSSP: Managed Security Service Provider MTBF: Mean Time Between Failures MTTF: Mean Time To Failure MTTR: Mean Time To Repair MTU: Maximum Transmission Unit NAC: Network Access Control NAT: Network Address Translation NDA: Non-Disclosure Agreement NFC: Near Field Communication NFV: Network Functions Virtualization NGFW: Next-Generation Firewall NG-SWG: Next-Generation Secure Web Gateway NIC: Network Interface Card NIDS: Network Intrusion Detection System NIPS: Network Intrusion Prevention System NIST: National Institute of Standards and Technology NOC: Network Operations Center NTFS: New Technology File System NTLM: New Technology LAN Manager NTP: Network Time Protocol OCSP: Online Certificate Status Protocol OID: Object Identifier OS: Operating System OAI: OpenID Authentication OSINT: Open Source Intelligence OSPF: Open Shortest Path First OT: Operational Technology OTA: Over-the-Air OTG: On-The-Go OVAL: Open Vulnerability and Assessment Language OWASP: Open Web Application Security Project P12: Personal Information Exchange Format P2P: Peer-to-Peer PaaS: Platform as a Service PAC: Proxy Auto-Configuration PAM: Privileged Access Management PAP: Password Authentication Protocol PAT: Port Address Translation PBKDF2: Password-Based Key Derivation Function 2 PBX: Private Branch Exchange PCAP: Packet Capture PCI DSS: Payment Card Industry Data Security Standard PDU: Protocol Data Unit PE: Protected Extensible Authentication Protocol PEAP: Protected Extensible Authentication Protocol PED: Portable Electronic Device PEM: Privacy Enhanced Mail PFS: Perfect Forward Secrecy PGP: Pretty Good Privacy PHI: Protected Health Information PII: Personally Identifiable Information PIN: Personal Identification Number PIV: Personal Identity Verification PKCS: Public Key Cryptography Standards PKI: Public Key Infrastructure PoC: Proof of Concept POP: Post Office Protocol POTS: Plain Old Telephone Service PPP: Point-to-Point Protocol PPTP: Point-to-Point Tunneling Protocol PSK: Pre-Shared Key PTZ: Pan-Tilt-Zoom PUP: Potentially Unwanted Program QA: Quality Assurance QoS: Quality of Service RA: Recovery Agent RAD: Rapid Application Development RADIUS: Remote Authentication Dial-In User Service RAID: Redundant Array of Independent Disks RAM: Random Access Memory RAS: Remote Access Service RAT: Remote Access Trojan RC4: Rivest Cipher 4 RCS: Remote Control System RFC: Request for Comments RFID: Radio-Frequency Identification RIPEMD: RACE Integrity Primitives Evaluation Message Digest ROI: Return on Investment RPO: Recovery Point Objective RSA: Rivest-Shamir-Adleman RTBH: Remote Triggered Black Hole RTO: Recovery Time Objective RTOS: Real-Time Operating System RTP: Real-Time Transport Protocol S/MIME: Secure/Multipurpose Internet Mail Extensions SaaS: Software as a Service SAE: Simultaneous Authentication of Equals SAML: Security Assertion Markup Language SCADA: Supervisory Control and Data Acquisition SCAP: Security Content Automation Protocol SCEP: Simple Certificate Enrollment Protocol SDK: Software Development Kit SDLC: Software Development Life Cycle SDLM: Software Development Lifecycle Management SDN: Software-Defined Networking SDP: Session Description Protocol SDV: Software-Defined Vehicle SED: Self-Encrypting Drive SEH: Structured Exception Handler SFTP: Secure File Transfer Protocol SHA: Secure Hash Algorithm SIEM: Security Information and Event Management SIM: Subscriber Identity Module SIP: Session Initiation Protocol SLA: Service Level Agreement SLE: Single Loss Expectancy SMB: Server Message Block SMS: Short Message Service SMTP/S: Simple Mail Transfer Protocol/Secure SNMP: Simple Network Management Protocol SOAP: Simple Object Access Protocol SOAR: Security Orchestration, Automation, and Response SoC: Security Operations Center SOC: System-On-Chip SPF: Sender Policy Framework SPIM: Spam Over Instant Messaging SQL: Structured Query Language SQLi: SQL Injection SRTP: Secure Real-Time Transport Protocol SSD: Solid-State Drive SSH: Secure Shell SSID: Service Set Identifier SSL: Secure Sockets Layer SSO: Single Sign-On STIX: Structured Threat Information eXpression STP: Spanning Tree Protocol SWG: Secure Web Gateway TACACS+: Terminal Access Controller Access-Control System Plus TGT: Ticket Granting Ticket TKIP: Temporal Key Integrity Protocol TLS: Transport Layer Security TOTP: Time-Based One-Time Password TPM: Trusted Platform Module TSIG: Transaction Signature TTP: Tactics, Techniques, and Procedures UAT: User Acceptance Testing UDP: User Datagram Protocol UEBA: User and Entity Behavior Analytics UEFI: Unified Extensible Firmware Interface UEM: Unified Endpoint Management UPS: Uninterruptible Power Supply URI: Uniform Resource Identifier URL: Uniform Resource Locator USB: Universal Serial Bus USB OTG: USB On-The-Go UTM: Unified Threat Management UTP: Unshielded Twisted Pair VBA: Visual Basic for Applications VDE: Virtual Desktop Environment VDI: Virtual Desktop Infrastructure VLAN: Virtual Local Area Network VLSM: Variable Length Subnet Masking VM: Virtual Machine VoIP: Voice over Internet Protocol VPC: Virtual Private Cloud VPN: Virtual Private Network VTC: Video Teleconferencing WAF: Web Application Firewall WAP: Wireless Access Point WEP: Wired Equivalent Privacy WIDS: Wireless Intrusion Detection System WIPS: Wireless Intrusion Prevention System WORM: Write Once, Read Many WPA: Wi-Fi Protected Access WPS: Wi-Fi Protected Setup XaaS: Anything as a Service XSRF: Cross-Site Request Forgery
submitted by Goldentesla69420ape to CompTIA [link] [comments]


2024.05.21 22:14 Celes_Monterres127 New Algorand App

Hey fellow Algorand users and developers,
Allow me to intro myself. My name is Celestino, been around the blockchain space from 2017. Started by building on NEAR, went to Celo, Polkadot, and Ethereum for sometime, but finally committed to Algorand in late 2021.
So, my team and I came up with an Algorand-based platform called Jasiri.
Jasiri is a simple-to-use platform that allows anyone to tokenize their most valuable purchases, and experience their full economic value as fungible digital assets and unique legal property titles.
Think of how you can own NVIDIA stock or partial real estate stock(e.g through Lofty AI). It's the same with Jasiri, only that you get to unlock, own, and do De-Fi with the 'stock' in your recently purchased smartphone, laptop, smartwatch, and more! We have a name for these types of new assets we are enabling on Algorand — ‘dead capital’. They are 'dead capital' because they are unrecognized assets by modern financial institutions in the real world, making it hard for you to experience their full value, even though they have so much utility in our daily lives, and are built off of valuable minerals(Gold, Cobalt etc.).
Jasiri's property titles are NFTs, but of a different kind, we built them so you can actually own and protect your assets in the real-world as well. In some jurisdictions(e.g Kenya, US), it helps us use existing legal frameworks to do so.
In order for you to start tokenizing your purchases, we built an e-commerce add-on here , that you can easily add to your browser as you go shopping on Amazon.com , Alibaba.com , Aliexpress.com , with more stores still on our waitlist.
It doesn't stop there. To lock your assets for maintenance(like locking your assets on Folks Finance), and trade your ownership rights(like how you trade NFDs using NFDomain, or property tokens using Lofty AI) , we built a web console here , you can also track asset prices in real-time on the console.
Lastly, to safe-keep your assets, you can use:
  1. Jasiri wallet(currently available for Android) - best if you are a non-technical person, or you would just love to support us ;) .
  2. Pera wallet
  3. Defly wallet
  4. Daffi wallet
All wallets connect using a single QR Code, instead of multiple QR Codes, on the extension and on the console. I had a rough experience during my early days building Jasiri trying to get wallet support in the ecosystem, and so I made it so.
We've been using Whatsapp, email, and X to onboard, and engage with our community(currently small).
We share product updates on our X account here. we are going to be launching on Product Hunt very soon(Will share on our X account as well) .
Jasiri was developed with the support of the Algorand Foundation Grant Program(back in 2021-2022), under its 'Access' category.
Thank you!
submitted by Celes_Monterres127 to AlgorandOfficial [link] [comments]


http://activeproperty.pl/