Goddamn, it took like an hour of manually extracting and rejiggering the JSON to get Jinja to accept it. Kind of defeats the point of automating this shit.
And it's only like 450 rows (partial) rows out of the DB. 100KB.
Goddamn, it took like an hour of manually extracting and rejiggering the JSON to get Jinja to accept it. Kind of defeats the point of automating this shit.
And it's only like 450 rows (partial) rows out of the DB. 100KB.
It used to be that when I ran a SQL query in Visual Studio (2017), and the query had a for json path
clause in it, I'd get a single result contained in a "grid". That single result was a fragment of the JSON, and I could click it to see the whole thing.
Recently, Visual Studio 2017 started throwing OUT OF MEMORY errors for no good reason. And now the magic link to my full JSON is missing. I mean, the link is "there" but clicking it does nothing. Literally nothing but waste my finger tendons.
@Arantor mentioned the incredible machine. That game was kind of fun when I tried it a few months ago. But, at the time, I was actually looking for a different game with the same premise I had played in like 2003. It was a Mac game, with somewhat realistic physics. I think Ambrosia Software made it but I can't find any mention of it on their old website (on the Wayback Machine, now).
That is a sad ending.
Edit: it was Enigmo (or Enigmo 2). Hurrah!
I started playing Cities Skylines a few weeks ago. It's not really story driven, but the multiple endings I've seen have been pretty good.
@sockpuppet7 I have a general goal of keeping at least one small flashlight per drawer near where people sit or are. (So one in the bathroom near the toilet, a couple in the kitchen, a couple in the living room, etc) I used to get like a 5 pack of "Kootek" mini led flashlights for that but they got a little expensive and I ended up spending more per unit for a two pack of Eveready tactical leds. I figured it would be an upgrade for not much more.
They are bigger and have more battery capacity and are brighter. Otherwise the build quality is approximately the same.
I know this probably isn't exactly what you mean by brand name, but unless you have some pretty specific needs I think a 2 for $8 pack of Eveready flashlights does a great job.
Also, depending on what you want them for, it might makes sense to get a few different form factors, like a "lantern" or two to "fill a room" with weak light (as opposed to having a spotlight in your hand).
XBox Wireless Controller arrived today. I got the "Core" model, I think, in Carbon black. Build quality is nice enough -- there's probably better out there but this is pretty premium feeling. Turned it on and it wanted to sync to my laptop. Everything just worked right.
I guess I'm a little surprised it came with two double AA batteries. I thought it was a rechargeable thing, since I see charging stations for sale. But I guess they all come with their own battery packs and battery covers. Hm, okay then.
So far so good, happy I got it.
Seems like the consensus is to go with Microsoft. Makes sense, I put one in my cart.
Out of curiosity, what is the experience like with a name brand PS4 or PS5 controller, or Nintendo a controller?
One of the things I really liked about the Steelseries POS is the layout, which had PS style control sticks and XBox style buttons. "Theoretically" it would have been great for, for example, Katamari, which I bought recently.
A few years ago, I wanted to set up a cheap little PC to use for old schoolish gaming. Games from 2000 to 2010, more or less. Civ, Rollercoaster Tycoon, Rayman. Maybe some indie games.
I read some reviews and ended up picking up a pair of Steel Series Stratus XL bluetooth controllers for my little rig, and a sweet German keyboard with built in trackpad, etc.
My rig never actually worked right. I would get these "phantom inputs", mostly going "up", which made it impossible to control any application with a scrollbar (or most games). I did some light troubleshooting and thought it was the keyboard (since, "obviously", it couldn't be BOTH controllers)
I tried using my much newer laptop for some light gaming the other day, and I connected the Steel Series controller and mother fucker it did it again. So clearly the problem is the controllers. That pair of controllers was a birthday present from my wife like four years ago, which I used barely for 4 furiously frustrating hours. $60 each. I did some light reading about the symptom and there is no conclusion except that Steel Series sucks and I should never buy that shit again.
OK, so fuck that.
What should I buy today to replace those pieces of shit. Help me figure out what to buy.
So far, I am looking at official Xbox controllers; the Amazon Luna controller; and maybe like a Logitech thing. Kind of interested in 8bitdo brand. Are there any good generic controllers? What are pros/cons of these choices? Talk to me about controllers today.
@BernieTheBernie said in From Pure Windows 7 to Linux Dual Boot:
apt install mono ... E: Unable to locate package mono
And now?
Did you do an apt update
?
@BernieTheBernie said in From Pure Windows 7 to Linux Dual Boot:
Me in love? No, not me, but .
That machine just works: "real" Windows (i.e. 7), all the programs I (usually) need, just click and go. Worx.
Only occasional shit as mentioned in the starting post make things sometimes uneasy.
No, I do not want to setup a new machine, which likely comes with Windows 11 , won't let me install my Home&Student MS Office from 2008 (?), will likely barf at some external hardware (good old audio device, with "loopback"), won't accept the docking station, browsers need to be tuned to not autoplay every shitty video and to fuck those animated images, ..., etc.
NO.
I hate all that shit too. Which is why I standardized on Debian stable and use configuration management to configure all my machines.
Basically, once you have set up your configuration manager (I use saltstack), every time you manually configure something, you copy the configuration file to your configuration manager's git repo and write a little bit of JSON to let your configuration manager know it has more stuff to do.
Then, next time you install that feature on a machine it ends up getting configured by the manager.
Yes, there is a cluster of fucks that can happen and they have happened to me. I still see configuration management as a net win though.
Out of curiousity, why are you so in love with your laptop? It's more than 10 years old and from the sound of it it isn't anything special.
I mean, I have a desktop from 2008 I still use as my primary workstation/virtualization machine. To be fair, it has 8 Xeon cores and 16 GB of memory. And it's my home's plex server and virtualization machine and has like 8 hard drives attached.
(My newer, nicer workstation has like 96GB of memory and like 32 cores, but... I haven't had time to do the things I planned with it since my kids were born).
Your laptop isn't even a nice MacBook or anything special like that.
Debian just released a new stable. I'd start on maybe Buster and do a dist-upgrade or two. I bet Buster would boot up how you want.
This might be a little bit of an X-Y question, since I have thought about how I'd do it in a "straight forward" way but have questions about how to do it in T-SQL specifically.
So I've been working on this project where we have to delete a bunch of data according to GDPR style rules. That includes going into our temporal tables and deleting data out of them, which isn't allowed unless you turn the temporality feature off.
OK.
But altering a table's temporality isn't "transactional". If something in the rest of the transaction fails, the alter statement doesn't get rolled back, leaving the temporality feature turned off.
This seems like a job for a wrapper, maybe called spModifyTemporalTable
, that accepts the name of the base table, the temporal table, and a lambda that acts on the tables but can fail. Theoretically, we would run the lambda in a try block and make sure that even if the transaction fails, we clean up the mess and turn temporality back on so the system can run as usual in the morning.
But how do I cleanly express "a lambda" in T-SQL? I guess I can do exec
and pass in a string containing the DML. I find this objectionable but maybe it's my only good option.
I know exec
would work if I pass the name of a stored procedure in, but I don't necessarily want to name and register all the blocks I need to write, especially since the only difference between them in which table I'm deleting from (i.e., maybe some join structure, but it's hardly logic).
Or maybe there's just a better pattern? My driver stored procedure already just calls one stored procedure after doing some setup logic. Maybe I should just set up a list and a loop in that outer one that goes and checks if the temporal tables are all turned on after the inner sproc fails. This is my least preferred option, since it forces me to maintain a list of temporal tables. (Granted, I'd be "implementing" the same list if I used a more localized wrapper around each temporal table modification, but I think errors in the code would be a bit more obvious).
What do ya'll think?
@izzion said in Bizarre SQL Server Errror:
@Captain said in Bizarre SQL Server Errror:
@izzion said in Bizarre SQL Server Errror:
@Captain said in Bizarre SQL Server Errror:
@izzion I'm kind of stuck with the function because of cranberries like my team lead really really wanting it. And it kind of makes sense, I have to do this stupid formatting thing in a bunch of data sets in this report and others.
I suppose I could change the parameters to the actual address parts I want to concatenate instead of doing a lookup by the table's composite key and then doing the concat.
But it really does seem like this isn't the code's fault, right? Like there's some kind of environment issue breaking the code's semantics.
Maybe the reparametrization idea would get around whatever is breaking the semantics. (I.e., if I find the latest address in the outer sproc and pass the address parts into the function)
I would put 100% of the blame for this on the code. The code is trying to get the latest effective address as of the specified date, but it's not actually ensuring it gets exactly zero or one address (like the SORT & TOP 1 approach would guarantee). And as a result of the poor design for trying to figure out which address is the right one, it's doing an unnecessary self join which is destroying the query optimizer's ability to figure out how to get the data (as evidenced by the double NOLOCK in the query, which is the SQL equivalent of "ON ERROR CONTINUE NEXT" in terms of rank code smell).
Sure, it might work as long as the data is immaculate. But immaculate data only exists in local development.
The bosses want the nolocks.
And they made me switch from using top 1 to the self-join on max value thing to avoid a really costly sort.
This query is really really simple to be destroying the optimizer...
Self joins are usually instant query plan explosions (especially on SQL 2016+). And that risk is much higher with the two overlapping WHERE clauses in the two pieces of this query. I'd expect to see a function like this causing 1-2 full scans of the address table per row in the original query and then result in the NOLOCK becoming necessary in order to prevent the query from causing massive blocking on the Address table.
Obviously, my psychic troubleshooting might be wrong. But in my experience, the self join is a massive code smell, and the NOLOCK is a much worse code smell. And if the sort is causing a performance problem, the better solution would be to add an index on DT_EFCT_START,DT_EFCT_END
Sorry, I'm not even trying to argue with you. I really appreciate your help.
I just find it so confusing and frustrating that the "same" query throws an error in one context and not another. (And that is way more interesting to me than actually fixing this POS )
And I don't see why a slow and shitty query plan would do that unless it was actually triggering buggy behavior in the server. If the dt_efct_starts are unique then the runtime should be able to pick a single maximum one and then the self-join on that composite PK should just do its thing, slow as it may be.
I got rid of the nolocks and the function worked correctly, with no error.
I agree changing to a more robust approach is reasonable.
@izzion said in Bizarre SQL Server Errror:
@Captain said in Bizarre SQL Server Errror:
@izzion I'm kind of stuck with the function because of cranberries like my team lead really really wanting it. And it kind of makes sense, I have to do this stupid formatting thing in a bunch of data sets in this report and others.
I suppose I could change the parameters to the actual address parts I want to concatenate instead of doing a lookup by the table's composite key and then doing the concat.
But it really does seem like this isn't the code's fault, right? Like there's some kind of environment issue breaking the code's semantics.
Maybe the reparametrization idea would get around whatever is breaking the semantics. (I.e., if I find the latest address in the outer sproc and pass the address parts into the function)
I would put 100% of the blame for this on the code. The code is trying to get the latest effective address as of the specified date, but it's not actually ensuring it gets exactly zero or one address (like the SORT & TOP 1 approach would guarantee). And as a result of the poor design for trying to figure out which address is the right one, it's doing an unnecessary self join which is destroying the query optimizer's ability to figure out how to get the data (as evidenced by the double NOLOCK in the query, which is the SQL equivalent of "ON ERROR CONTINUE NEXT" in terms of rank code smell).
Sure, it might work as long as the data is immaculate. But immaculate data only exists in local development.
The bosses want the nolocks. (on every table in every lookup...)
And they made me switch from using top 1 to the self-join on max value thing to avoid a really costly sort.
This query is really really simple to be destroying the optimizer...
@izzion I'm kind of stuck with the function because of cranberries like my team lead really really wanting it. And it kind of makes sense, I have to do this stupid formatting thing in a bunch of data sets in this report and others.
I suppose I could change the parameters to the actual address parts I want to concatenate instead of doing a lookup by the table's composite key and then doing the concat.
But it really does seem like this isn't the code's fault, right? Like there's some kind of environment issue breaking the code's semantics.
Maybe the reparametrization idea would get around whatever is breaking the semantics. (I.e., if I find the latest address in the outer sproc and pass the address parts into the function)
OK let the bitching commence.
All the goddamn DT_EFCT_STARTs in the data that are triggering this BS are unique.
So one thing I do know is that there were overlapping dates in the address data.
@izzion said in Bizarre SQL Server Errror:
Are you sure the AsOfDate you tested with is the one that's actually getting passed into the function for all possible rows that can be calling the subquery?
Yes. It's actually a variable in the outer sproc so I threw it into the outer sproc's select when I started dissecting the function.
Depending on how fugly the Normalize function call is
I did a good job on writing it, but it handles a lot more cases than your example (there can be "any" number (usually 5) of blank spaces in the field because of craisins).
@boomzilla said:
I'd look for duplicate DT_EFCT_STARTs by:
Yes, that is my thinking too. But then I don't understand why the function version of it breaks and the raw select just returns one row with one field with a properly formatted address line.
I can't exactly normalize all the address data -- the fix "has to" happen in the stored procedure or function.
I am aware that there "were" overlapping dates in this data that's throwing the error, but at the same time, setting an end date resolved the stupid error. (I still need to fix the function -- there are other addresses out there with overlapping dates and this needs to work).
The top 1 idea makes a lot of sense. Or maybe trying the subselect with another join field.
I'll mess around with this a while this morning and probably have more bitching to do later. Thanks everybody.
Oh yeah, of course stackoverflow closed my question.
Lightly anonymized function definition:
CREATE FUNCTION dbo.fnFormattedAddressLine (@GroupCode int, @PrimacyCode int, @AddressGroupId int, @AsOfDate datetime)
RETURNS varchar(100)
AS
BEGIN
RETURN
( select trim( concat( dbo.fnNormalizeBlankOrEmptyString( a.AD_STRT_NBR )
, case
when dbo.fnNormalizeBlankOrEmptyString(a.AD_STRT_NBR) = '' then ''
else ' '
end
, Anon.fnNormalizeBlankOrEmptyString(a.AD_STRT_NME)
, case
when dbo.fnNormalizeBlankOrEmptyString(a.AD_STRT_NME) = '' then ''
else ' '
end
, case
when dbo.fnNormalizeBlankOrEmptyString(a.AD_APT) = '' then ''
else ' Apt ' + dbo.fnNormalizeBlankOrEmptyString(a.AD_APT)
end
)
) as AddressLine
from dbo.ADDRESS a with (nolock) inner join ( select max([address].DT_EFCT_START) as DT_EFCT_START
, [address].ID_ADRSS_GRP
, [address].CD_GRP
, [address].CD_GRP_TYPE
from [address] with (nolock)
where DT_EFCT_START <= @AsOfDate
and ( @AsOfDate <= DT_EFCT_END or DT_EFCT_END is null )
group by [address].ID_ADRSS_GRP, [address].CD_GRP, [address].CD_GRP_TYPE
) as LatestAddress on LatestAddress.ID_ADRSS_GRP = a.ID_ADRSS_GRP
and LatestAddress.DT_EFCT_START = a.DT_EFCT_START
and LatestAddress.CD_GRP = a.CD_GRP
and LatestAddress.CD_GRP_TYPE = a.CD_GRP_TYPE
where a.CD_GRP = @GroupCode
and a.CD_GRP_TYPE = @PrimacyCode
and a.ID_ADRSS_GRP = @AddressGroupId
and a.DT_EFCT_START <= @AsOfDate
and ( @AsOfDate <= a.DT_EFCT_END or a.DT_EFCT_END is null )
)
END
Hey all,
I'm running into a really really weird error with SQL Server. I can provide details about the SQL server if necessary but I'd rather jump right into the description of the problem.
So, I have a stored procedure that is the code-behind for a report. A user reported that the report didn't work, and so I ran the report in Visual Studio with the same parameters, and I got the error:
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.
OK, that's a shitty error. It doesn't even tell me a line number (at least, not a relevant line number).
So I checked every single subselect in the stored procedure and couldn't find one that produced more than one value.
OK.
The point of the stored procedure is to do a select
at the end, so I basically copied all of the code out of the sproc and commented out all the fields and tested and tested until it threw the error again.
It finally did, which told me that a specific function was doing the error.
OK.
So I verified that this function was throwing the error by calling
select MyFunction( @MyId, @Etc )
and it threw the error.
OK.
So then I went to the function definition and copied THAT code out. I ran that query and WTF it's fucking working. It's giving me a single row.
OK WTF.
To summarize, I have a function dbo.MyFunction that throws an error when I call it but whose underlying query does not.
Has anybody run into this before? Any idea how to solve it?
@boomzilla There's basically two; and under the law you're supposed to stop (i.e., not kill) if you can do so safely.
@Gribnit said in Help Bites:
our N here is going to devolve handily to n rather smaller M as you need only exhaust connections within a shared road name. You will need maps of collections for an initial collection under names.
Resolving within a name won't fall down to box-based approaches since duplicated roads could run in diagonal parallel. You can, however, make the link-up more efficient by placing the ends in a quadtree or octtree.
The case of a road that has a name at point A until B, another name from B to C, then resumes the original name, would be seen as a duplicate - if you hate that a lot, you will need to instead do linkup first, in which case you will need a quadtree.
And, since my initial read ignored the presence of unnamed nodes, you will definitely need a spatial tree structure off the bat. You get N log N, (roughly)
Yeah, this is an index problem for the discrete topology on a disconnected graph.
Status another Tuvix meme on star trek shit posting. These people act like they have never watched "The Measure of a Man".
@hungrier said in Why the MCU is succeeding where the DCU is failing:
They also snatched defeat form the jaws of victory by shoehorning Captain Marvel in at the last minute, including her own movie. What would've been good and made narrative sense:
She was wasted, for sure. I mean, she was "crucial" to the plot insofar as she singlehandedly destroyed Thanos' fleet. But I wanted more from her. And she was even wasted in her own movie.
The problem is that she's basically a cosmic-level Superman. She's strong and flies around.
What we got instead:
Captain Marvel: apparently she's been around since the 90s but nobody in the MCU ever heard of her before
She was on the other side of the galaxy for like 15 years.
I'm really enjoying phase 4. Loki and WandaVision were great. The Spiderman multiverse movies are awesome. Doctor Strange and the Multiverse of Madness was Doctor Strange (that is, awesome if you like doctor strange but maybe not everyone's cup of tea)
Haven't seen Morbius yet.
Ms Marvel was a good low stakes origin story. (And it confirmed that there are mutants in the MCU, opening the door the the new Deadpool and Wolverine movie) So was Hawkeye, and She-Hulk for that matter. And even Moon Knight, I guess. A lot of people liked that one but I ended up not finishing it.
Not sure why people are complaining about phase 4. They can't all be the end of a saga. I guess it could be like @MrL said; Endgame was the end of a ride, and people don't want to get on it again.
Fair enough, but I'm still having fun.
@Gribnit said in Some movie, maybe Japanese? Or not.:
So, this one, it has a scene which was not very relevant, where a disaffected Japanese woman in adult adolescence is walking through a mall food court. At least, I think it was a food court. Pretty sure it isn't in the
Ichi
... series, but pretty sure I saw it within a month ofIchi 1
, if that helps.There are also other people in the movie, who are also Japanese. It seemed to have something to do with an attempt to adapt to ambivalent cultural norms, too.
If you have seen this movie, you know why I'm looking for it. I apologize that this is the most helpful piece of information I have.
It sounds vaguely like https://en.wikipedia.org/wiki/Eden_of_the_East.
@jinpa said in Random Question of the Day:
What online hardware supply sites have you had good luck with?
build.com has lots of hard to find parts, like sugatsune stuff for sliding doors and architectural panels.
Ubiquiti does make nice routers. Their network gear can do everything you're asking about.
But some of the routers are hot garbage. I've had so much trouble with US-Gs I will never use one again.
Don't use a Ubiquiti Unifi US-G.
In the $50-$100 range, a Ubiquiti ER-X is hard to beat. The better Unifi routers are probably better than US-G and fit in with Unifi gear, which is nice.
(So what is Unifi? It's basically Ubiquiti's software defined network system. Unifi routers, wifi access points, and similar all get configured using an app on your phone or desktop. It's pretty good but not perfect. I'd say it's worth it)
I haven't used any of their new routers. I like their switches and have two rackmount switches at home.
They make good access points. I am planning on getting a couple of UAC-IW ("in-wall" access points with 4 port switch). They can use POE, so consider how you will power them (i wish I had spent the extra $150 on a POE switch, for example)
The ER-X I mentioned above isn't Unifi. There's another software defined network product you can use to manage an ER-X remotely but I don't do that for the home.
Oh and you will need "usually" need a Unifi controller. I use a raspberry pi for mine. Some Unifi routers come with it built in. I don't like the virtualization for it. It's a big pain in the ass to have to bootstrap your network to get docker/libvirt running to configure the network. (This mostly applies in segmented networks, like the one you want to build, so I want to mention it).
If your pihole is running network infrastructure, I'd keep it on the raspberry pi and install the unifi controller on it.
@dkf said in Am I doing non-UI threading right?:
@Zenith said in Am I doing non-UI threading right?:
So no I don't want their grubby mitts anywhere near code too brillant for their microbrains.
I remember a friend complaining about that. His solution was to make the code even more brilliant, such that you'd need an advanced degree in mathematics to understand what it did and why it was so screaming fast. I know it involved moving something to do with non-standard fourier transforms onto a GPU so that they could be used to do automatic image registration in real time despite the distortions in the equipment acquiring the images, but it definitely was above my knowledge level...
The upshot was his code caused everyone who interacted with it to go "How the hell does that even work?!"
Wavelets man
In my first development job, I started off as a "maintenance" developer but I was doing features or new reports in 3 months.
It worked better than it seems to for you, but that shop was a full on agile place, with pair programming and everything. By the third month I didn't need the hand holding and could do it "all" myself.
I'd suggest something "like that". Have a senior (or even the team lead) buddy up with each of the new guys for an hour or two a day and give them enough guidance to be successful and complete.
Heck, depending on how big the team is, you can maybe rotate all the seniors so they all meet and work with all the juniors.
@Bulb said in Network access from WSL with ZScaler:
@remi Your options are basically:
- Get the Exceed TurboX working.
- Mobaxterm (free for commercial use if you install it yourself, license needed if installed centrally)
- XPra (I used it on Linux with containers when directly exposing the main X server resulted in some glitches and I've been meaning to try it on Windows now but didn't get a round toit yet)
- VcXsrv
I am running Debian in WSL. As far as I know, an X server will not work because modern X's rely on systemd, which doesn't work on WSL.
So I use mobaxterm to run an X11 server. And Xpra to provide session management with remote VMs.
Xpra is nice.
@slapout1 said in Ubuntu and settings and WiFi:
That's nothing. Back in the dial-up days, I installed Ubuntu on a computer using a CD. Then I tried to get online. But the driver/program I needed to get online via dial-up wasn't included on the CD. To get it, you had to go online.
I did that one last month with Debian 11.
It wasn't their fault, but I had to bootstrap a network driver without a network driver to help.
@Parody Yeah Defunctland is cool.
That reminds me that I like Technology Connections, too.
PBS Eons
PBS Storied
3 blue 1 brown
MIT Open Courseware
Steve Mould
Electroboom
eevblog
Bedtime Stories
Shrouded Hand
Lazy Masquerade (new to me)
Formula 1
Behind the Drive
Driver 61
Formula World
Chain Bear
Best Ever Food Review Show
Emmymade
Adam Ragusea
@HardwareGeek there is definitely evidence that they are 'almost constant' (i.e., imperceptibly different from constant) even on large time scales. But the "inflation" of the early universe isn't easily explained if it's constant.
So the idea is that there was a "phase transition" in the early universe which "changed the laws of physics themselves". (Or rather, if we think of the universe today as being "like a gas", the universe was like some "exotic" state of matter like Einstein-Bose condensate with different properties. I do not claim that the early universe was E-B condensate, but just suggesting a parallel) The phase transition is what caused the changes, and they aren't going to change by themselves, aside from random quantum fluctuation.
There is evidence of a few phase transitions, such as the electroweak symmetry break which turned electromagnetism and the weak nuclear force into separate forces.
@lolwhat scientists aren't panicking. They're creaming their pants at new data.
For example, scientists are now proposing a new quantum field called the "Quintescense" which seems to be defined on a projective space of the space-time manifold to explain dark matter and gravitation. This is based on... observations like how the cosmological constant probably isn't constant.
@Bulb said in Fun with maps:
Cheese is a base ingredient. You normally start with Marghareta, that is sugo and mozarella, and then add toppings. The cream-based options have greater variation of which cheese is included, but it is very rare that there isn't any.
Base ingredients are flour, water, and yeast.
@boomzilla said in WTF Bites:
gui and just use it that way instead of switching between the slightly different ways of the at least five different IDEs I've touched recently.
I have avoided using any graphical source control programs for years and the only regret I have is that it makes moving files around a bit more inconvenient but it's still been a huge net positive in my life.
Now that Windows has multiple workspaces, I keep a workspace open for each of my projects, and then a couple for common tasks like "Git & ADOS"
I actually use Visual Studio's Git client for my main workflows and drop down to Git Bash for "complicated" things like when I make a mistake and need to stash.
Can confirm florida loves pepperoni. So glad I moved away.
Cannot confirm olives in Oregon. Maybe it is, but I have insufficient data to judge.
King of toppings is cheese. /thread
Runner ups: sausage and jalapeno; cheese and onion; pesto and onion; bbq chicken pizza toppings; buffalo chicken pizza toppings;
If you think something is generating key presses, maybe something is. I've had some bad luck with USB dongles that randomly spammed mouse clicks. It appears it was related to my motherboard's PCI system and maybe the linux drivers for it. Finding and removing the dongle ended the problem (Firefox choosing to zoom out if I pressed Ctrl).
Both times. This has happened to me with two different USB mice.
None of what is listed in your xev log appears to be key presses, though. But I'm not familiar with what can trigger all the events.
Maybe watch your /var/log/daemon log. Maybe a systemd service for the home folder is in a restart loop or something.
@Parody fukk I use it too. I even paid for the full version. I like being able to use the same configuration on all my android devices.
But I'll quit that shit.