SINDRE

1.2K posts

SINDRE banner
SINDRE

SINDRE

@ctrl_

Software Dev, .NET and zig. My wife’s YT: https://t.co/xh3PTBpt0w

Norway Tham gia Nisan 2009
914 Đang theo dõi159 Người theo dõi
Tweet ghim
SINDRE
SINDRE@ctrl_·
Simulering av stortingsvalget 2025. Med en meningsmåling med data for hvert valgdistrikt så blir det likere andre prognoser. Men med en del mer vekting for venstre blokken. Regner med det har med utgjevningsmandater, da jeg henter sperregrense fra en nasjonal måling, og ikke som en sum av alle stemmer fra hvert valgdistrikt.
SINDRE tweet media
Norsk
1
0
0
120
SINDRE
SINDRE@ctrl_·
@mr_fjert Er enig med deg, men det er faktisk ingen som har et dummere navn en Sandefjordsfjorden
Norsk
2
0
5
697
Sandefjord
Sandefjord@mr_fjert·
Folk som er født og oppvokst i Oslo ekke klar over hvor mongo stedene her høres ut "Jeg gikk på Klumpestrømpa videregående borte ved Lavvokranen" bro jeg er fra Sandefjord og jeg gikk på Sandefjord videregående
Norsk
9
14
389
23.1K
Jakub Janovsky
Jakub Janovsky@Rebel44CZ·
@Peter_Bucci It seems more practical to me to just accept that the opponent will have a satellite internet.
English
1
0
7
215
Jakub Janovsky
Jakub Janovsky@Rebel44CZ·
A good Chinese summary of just how incredibly difficult it is to jam a large satellite megaconstellation like Starlink
Byron Wan@Byron_Wan

A simulation study by Chinese scientists shows how 🇨🇳 PLA could attempt to block Starlink across Taiwan. Their findings — published on Nov 5 in the Chinese peer-reviewed journal Systems Engineering and Electronics — suggest that jamming Starlink across a region as large as Taiwan is technically feasible, but only at an immense scale that would require 1,000 to 2,000 electronic warfare drones. The paper, titled “Simulation research of distributed jammers against mega-constellation downlink communication transmissions”, was written by a team from Zhejiang University and Beijing Institute of Technology (BIT) — the latter a top player in China’s defense research. “The orbital planes of Starlink are not fixed, and the movement trajectories of the constellation are highly complex, with the number of satellites entering the visible area constantly changing.” “This spatiotemporal uncertainty poses a significant challenge for any third party attempting to monitor or counter the Starlink constellation.” Traditional satellite communication relies on a handful of large, geostationary satellites fixed above the equator. To block them, the Chinese military just needs to overpower their signal from the ground. But Starlink is different. Its satellites are low, fast and numerous. A single user terminal does not connect to one satellite — it rapidly hops between multiple ones, creating a mesh network in the sky. Even if you manage to block one signal, the connection jumps to another within seconds. Moreover, Starlink uses advanced phased-array antennas and frequency-hopping techniques that adapt in real time, much of which is controlled remotely by SpaceX engineers in the US. Starlink could be countered by a distributed jamming strategy. Hundreds or thousands of small, synchronized jammers would need to be deployed across the sky — on drones, balloons or aircraft — forming an electromagnetic shield over the battlefield. Using actual Starlink satellite data, the team simulated the dynamic positioning of satellites over a 12-hour period above eastern China. They modelled the downlink signal strength from Starlink satellites, reception pattern of user terminals, propagation of interference from ground to sky and sky to ground, and the cumulative effect of multiple jammers hitting the same terminal from different angles. Then they introduced a grid of virtual jammers, flying at 20km altitude, spaced between 5 and 9km apart like a chessboard in the sky.  Each jammer emitted noise at various power levels, mimicking realistic electronic warfare payloads. Two types of antennas were tested — one with a wide beam which covered more area but spread energy thinly, and a narrow-beam one that was focused and powerful, but required precision. The simulation calculated, for every point on the ground, whether a Starlink terminal could maintain a usable signal. Under optimal conditions — using a powerful but costly 26 decibel-watt (dBW) jamming power (400 watt) source, a narrow-beam antenna and 7km spacing — each jammer node suppressed Starlink reception across an average area of 38.5 sq km. Taiwan covers around 36,000 sq km. To blanket the island with reliable Starlink suppression would require at least 935 coordinated interference nodes, and this number does not include redundancy for failures, compensating for terrain such as mountains that block signals and countering Starlink’s future anti-jamming upgrades. Using a weaker but more affordable 23 dBW power source with 5km spacing would double the drone deployment scale to around 2,000 units. The results were preliminary because Starlink kept some key technology confidential. “If it becomes possible in the future to obtain actual measurements of the radiation pattern data of Starlink user terminals, and to acquire empirically measured values of the suppression coefficients for these terminals, it would help achieve more accurate assessment results.” amp.scmp.com/news/china/sci…

English
11
48
624
74.7K
SINDRE
SINDRE@ctrl_·
@jsneedles We did this once, and I think it is something you can consider under the right circumstances. The application dealt with a lot of very sensitive personal data, so the isolation was a big factor. Also made data takeout easy, as you just dumped the DB. But had lots of challenges
English
2
0
1
365
Samuel Cardillo
Samuel Cardillo@CardilloSamuel·
not necessarily. you are partially right that, because obviously, faking the CA/stripping SSL would trigger something but you still have risks (e.g. blackhat.com/presentations/…). personally, out of complete safety, i just use public wifis with devices that have nothing important on them & don't connect to anything while browsing on a public wifi. i always try to stay on my own hotspot.
English
8
0
11
3.3K
@levelsio
@levelsio@levelsio·
Your email wasn't hacked because of an unsafe WiFi HTTPS is fully encrypted You were hacked for some other reason like no 2FA or having some malware running on your device Nothing to do with whatever WiFi you were on
English
109
41
1.7K
262.8K
piq and 69 others
piq and 69 others@piq9117·
wait what. you dont start with adding a cache when you think your queries are slowing you down. you start by doing `explain ` and make sure your queries are using the proper scans. i also dont understand the concern about the data being gone from a cache. its going to be either a readthrough or writethrough cache. data will be in there one way or another. is the concern the cold start?
Harsh@harshsinghsv

Your app is slow. Your users are waiting 3, 4, maybe 5 seconds for a page to load. You check your logs. The problem isn't your code. It's your database. It's on fire. It's spending all its time running the same complex 'SELECT' queries with 'JOINs' and 'ORDER BY' clauses, over and over, just to fetch a user's profile and their 10 most recent posts from a slow, spinning disk. You've heard of Redis. You think 'cache'. You also think, 'it's in-memory, so if my server reboots, all my data is gone'. You think it's just a temporary, volatile speed boost, a fragile layer you can't really depend on for anything important. That's not the full story. I was digging into it, I was expecting a simple cache. What I got was a Swiss Army Knife for my data. Here was my journey from slow app to superpower. Step 1: The 'Hello World' (The Obvious Cache) This is what everyone does, and it's brilliant. - My Problem: That slow 3-second SQL query. - My New Workflow: I fetch the data 'once', 'SET' it in Redis (which lives in blazing-fast RAM), and set an expiration of 5 minutes. - For the next 5 minutes, 10,000 requests for that profile are served in 'sub-milliseconds'. - My database load just dropped 99%. My app is fast. But the real magic begins when you stop treating it like a dumb string store. Step 2: The Click Moment (Data Structures) The real power is that Redis is a high-speed data 'structure' server. - My Problem: I need a real-time leaderboard. My 'ORDER BY score' query is killing my 10-million-row 'users' table. - My New Workflow: I use a Redis 'Sorted Set'. When a user's score changes, I 'ZADD leaderboard-main 19850 'user:123''. Redis handles the sorting 'instantly' on insertion. Fetching the top 10 is near-instant. Step 3: The 'Wait, what?' Features - My Problem: I need a list of recent notifications. 'SELECT ... LIMIT 20' is still a waste. - My New Workflow: I use a Redis 'List'. When a new notification comes in, I 'LPUSH' it. Then I 'LTRIM' the list to keep it at 20 items. It's a perfect, high-speed stack. - My Problem: I need a background job queue to send welcome emails. - My New Workflow: I don't install RabbitMQ. I just 'LPUSH' a job to a 'List', and my worker 'BRPOP's (blocking pop) to wait for the next job. It's simple and reliable. - My Problem: I need a real-time chat app. - My New Workflow: I don't build a complex WebSocket server. I just use 'Pub/Sub'. It's a high-speed, lightweight message broker built-in. Step 4: The "Pro Escape Hatch" (Debunking the Myth) This is what sold me. - My Fear: 'But if it reboots, my data is gone!' - The Reality: Redis has 'persistence'. It's not on by default (for speed), but it's there. - It can take 'snapshots' (RDB) of your dataset. Or, it can keep an 'Append-Only File' (AOF) log of every single write command. - It's not a replacement for Postgres as your 'source of truth', but it's far from a 'throwaway' cache. It's your cache, your message queue, your session store, your leaderboard, and your real-time engine, all in one. I thought Redis was a 'nice-to-have' performance boost. It's not. It's the high-speed multi-tool for your entire application.

English
38
32
1K
162.8K
SINDRE
SINDRE@ctrl_·
@Enotshtraeh_ @kiheger @4lexEllefsen Begrepet white er mye bredere i dag enn det var før, noe som blant annet gjør at en italiener og en engelskmann i USA på 1800-tallet har forskjellige opplevelser og kultur. Så det blir et veldig bredt begrep som er vanskelig identifisere seg med.
Norsk
1
0
0
13
Alexander Ellefsen⚡️
Alexander Ellefsen⚡️@4lexEllefsen·
Det er ikke lenger «lov» å være stolt av å være hvit, selv om vi er en minoritet med bare 13-15% av verdens befolkning. Glem at vi utviklet moderne vitenskap, teknologi, demokrati, rettsstaten og kapitalismen. Du skal skamme deg. Jeg er stolt av å være hvit, og av vår historie. Det gjør meg ikke til en nazist. Det var mange som var verre enn Hitler, hvite var ikke de eneste som drev slavehandel og arabisk/islamsk slavehandel var i omfang større enn hva hvite bedrev med noen gang. Kan vi begynne å forholde oss til virkeligheten? Kan vi begynne å flytte Overton-vinduet og slutte med godhetsposering, du får ikke en medalje.
Wall Street Mav@WallStreetMav

According to far left Wikipedia, pride is bad only for White people.

Norsk
19
16
158
17.6K
SINDRE
SINDRE@ctrl_·
@vyrotek @RyanRodemoyer2 I feel performance is important for myself too, usually the dev is the ones who spend the most time in the application I am making. If I can make it trivially 1% faster or lighter by a small tweak, that benefits me who spends a lot time starting, stopping and debugging the app
English
0
0
1
27
Ryan Rodemoyer
Ryan Rodemoyer@RyanRodemoyer2·
In .NET it's a best practice to properly size every List when created. And I have a benchmark to back it up. Over 10 million adds to a list, declaring with a capacity performs ~60% better compared to the default constructor! The problem is simple on the surface - List is backed by an array - List defaults to Capacity=0 Meaning, a new List instance always starts at 0. What happens when the list is full? An entirely new array gets created! So when items are added AND the underlying array is full a) a new array is created (leading to a memory spike) b) the existing values are copied to the new array (extra processing) It's a brutal cycle. You can avoid some of this saga by creating new List instances with a capacity that approximates how many items you expect to get. The benchmark is "adding 10 million items to a list". In the screenshot, there are three options. First, create a list with Capacity=10 million. Second, create a list with the Capacity=half expected. Third, create a list with the default values (Capacity=0). If the baseline is Capacity=0... 48% faster when Capacity=50% of expected 53% faster when Capacity=100% of expected
Ryan Rodemoyer tweet media
English
18
25
220
13.3K
JSONB
JSONB@vyrotek·
@RyanRodemoyer2 I have never once in my 20 year .NET career sized a list before using it. can't recall seeing it in other code either. not saying you're wrong. but there are usually bigger perf gains to chase elsewhere. 😅
English
4
0
25
1.1K
SINDRE
SINDRE@ctrl_·
@mkristensen I love the word wrap thing in Rider that uses the ctrl + W. That would be cool to have in VS. I always forget my self in vs code and close a tab when I really want to word wrap
English
0
0
0
9
Mads Kristensen
Mads Kristensen@mkristensen·
Should we map Ctrl+W to close the current tab in Visual Studio 2026?
English
88
5
273
24.4K
FairAndBalanced
FairAndBalanced@KSteigen·
Det er må være toppen av hykleri å klage over tonen i debatten, samtidig som man har har heiet fram Trump og MAGA-bevegelsen. Uttrykket fei først for egen dør har sjelden vært sannere.
Norsk
23
5
147
8.6K
@levelsio
@levelsio@levelsio·
Bali and Thailand can't seem to fix air quality which long-term makes them not a serious place to live Unless you're okay with the probability of spending your final years dying in a hospital from lung-related issues
RobertK@Robert_Builds

@levelsio I loved Bangkok and Bali, but man I just cant stay there for more than a vacation because of the air quality Sitting on a scooter behind cars feels like downing a pack of cigarettes every ride 🚬🚬🚬

English
89
12
421
111.4K
SINDRE
SINDRE@ctrl_·
@davidfowl Slow startups for things. Nothing breaks my flow more often than when starting an application and then I have to wait 30 seconds before I can do the thing I want to do. They are small interruptions compared to say a status meeting, but happens much more frequently
English
0
0
1
206
David Fowler
David Fowler@davidfowl·
“What is your biggest productivity killer as a developer” reddit.com/r/AskProgrammi… I love thinking about this in the context of AI and how little it does to help with these problems today (maybe it can help with analysis paralysis 😅).
English
19
2
31
9.2K
SINDRE
SINDRE@ctrl_·
@levelsio Web sockets can scale badly for a VPS due to hard limits on ports. If you use it it’s probably the first thing that doesn’t scale well on a VPS of the tech mentioned. But still easily fixable with extra IP addresses
English
0
0
0
26