In political science, the conventional view is that polarization observed in the US is not a product of the two camps drifting further apart (in the sense of having more extreme views), it's the product of issue divisions aligning more closely to partisan camps.
Consider Kim Davis. Kim Davis was a county clerk who went to jail after illegally refusing to issue a same-sex marriage certificate after the court system ruled she must. Davis, like most southerners until recently, was a registered Democrat. Until about the year 2000, virtually every southern government was majority Democratic, in some cases supermajority Democratic. The people in those parties often voted for Republican presidential candidates and were as conservative as the Republican Party, but due to inertia, they registered as Democrats. This has largely been eroded over the last 20 years. The result is that even if no one switches their opinions on anything, conservative Democrats now identify as Republicans. There are a number of inertial reasons to stick with a party that has left you behind, or to cynically join a party for a meal ticket. So, some of the apparent "era of good feelings" -- confluence between parties -- actually occurred because a big part of today's Republicans were "mistakenly" registered as Democrats. If any other region becomes one-party dominated for a long time, you'll see the reverse. The reverse is true in Hawai'i, where many erstwhile Republicans would today be simply more conservative Democrats, because the Republican party is extinct there.
There is also a belief that voters are better able to attach positions to parties. For example, if I told you that one party in the US generally favors higher taxes and higher services, and one party generally favors lower taxes and lower services, could you match the party labels to the descriptions, imperfect as they are? There is a general belief that people are better at this than they once were.
Finally, the increase in correlations between issues positions. For example, today we largely view Republicans as a rural party and Democrats as an urban party. That was not true 30 years ago. Prior to the politicization of abortion, there were constituencies that were pro-life and voted for the Democrats (Catholics being a huge such group). Now abortion is neatly aligned across party lines: there are almost no pro-choice Republicans and almost no pro-life Democrats. Ditto immigration -- which used to be cross-cutting when the union left viewed it as a threat to working conditions but now is primarily conceived along the dimension of racial conservatism. If I tell you someone loves guns, you have a pretty good chance of guessing their position on immigration, healthcare, and school prayer, even though outwardly those four issues do not need to be attached to one another.
Finally, within congress, two institutional reforms have contributed to across-party polarization: first, banning earmarks. It used to be that if I wanted corn subsidies and you did not, I would add an amendment to my bill to fund the navy base in your district. We then both vote yes. Killing earmarks may have reduced waste and corruption, but it also reduced a procedural tool used to secure inter-party agreement on contentious bills by offering concessions to the other party. It's like "suing for peace". Second, the "Hastert Rule", a rule that the Republican party adopted to never advance any bill that does not have majority Republican support. It used to be that, say, Republican leadership might advance a bill that had 40% Republican support and 80% Democratic support when those totals add up to more than 50% of the overall congress. By committing not to "roll" their own party, the Hastert rule virtually guarantees that votes that would internally divide parties and thus reveal ideological heterogeneity within the party are less likely to happen in favour of votes that divide across parties.
Why am I mentioning these trends? They contribute to a phenomenon that many political scientists (here I am thinking Tausanovitch and Warshaw, but others as well) have noted: you can perceive polarization (increasing distances between the two parties) without anyone adopting more extreme views. Rather, polarization can emerge from how party labels map to issues and how institutions surface issues to vote on. This doesn't mean no views are changing or become more extreme, but it does mean we should resist estimators that have a simplistic appeal to our gut feeling that things have become more extreme.
Some of this is discussed in the linked article, obliquely, but I think the article suffers from being written by non-political scientists trying to think about a political science problem from first principles rather than engaging with the existing literature. Reinventing the wheel can sometimes be helpful and sometimes is not.
I've been using GitHub since 2008. My default browser has JavaScript disabled for various reasons. It was not long after Microsoft acquired GitHub that the UI changed for the worse, but it was minor and still very functional. Now, it's terrible: the dates and commit information is missing, for example. I expect soon it will reach GitLab "quality": unable to view source code without JavaScript enabled. I'm still on the fence on whether to act on it now, for my own projects, or wait for the fatal blow. Since much of the programming world is on GitHub, this looks pretty bad for me.
- Insert toggles between shifting characters after the cursor to the right and deleting the character to the right of the cursor, replacing it with the new character you typed, but not replacing a newline character. While eg. Caps Lock is global, Insert mode is local to the text input that currently has focus - tab or mouse over to a new window and you've lost Insert mode, tab back to the one where you previously set it and you're back to Insert mode.
- Delete is like Backspace, but deletes stuff to the right of the cursor.
- Home, as you discovered, moves browsers to the top of the page. When composing text, it moves the cursor to the start of the line (and vice versa with "End"), CTRL+Home moves to the start of the text entry box.
- Page Up and Page Down shift the cursor by screenfulls of text, typically leaving a couple lines at the top and bottom for context. Note to web developers who are unfamiliar with keyboards: Make sure your fixed/sticky header/footer banners don't hide content when using "Page Up" and "Page Down". Also of note, CTRL+Page Up/Down and CTRL+Tab/CTRL+Shift+Tab shift the window or tab focus within an application, for example to go to the next tab in Chrome or the next file in your IDE.
- Print Screen creates a screenshot. Depending on your setup, this may either go to your Pictures folder, or may go to the clipboard (open an image editor eg. Win+R, mspaint, and CTRL+V to paste). It shares a key with SysRq, which can be accessed with Alt+SysRq+(magic letter), and used to recover from various crash conditions - be careful, if you start hitting letters at random, you'll invoke the bad kind of magic that will shut down your computer.
- Scroll lock was used to stop auto-scrolling an input buffer that was running too fast. Largely neutered in modern OSes, it's still useful in the BIOS when all the hardware initialization messages are scrolling by too fast to read. Sometimes it's also used to toggle keyboard backlighting because it had an LED attached and doesn't have a real function anymore, but depending on the manner in which your OS/hardware neuters this key your keyboard backlighting may not work.
- Pause/Break kills a process like CTRL+C, but sometimes has different specific modes of operation in various debuggers. Access the "break" alternate function with CTRL+Pause.
- Super/Windows key opens the Start menu or search tool. On Macs, it's the Command key and used for lots of keyboard shortcuts. Hyper useful for window management, Super+arrow keys move screens to the left or right half of the monitor, maximize, resize, or minimize them, and Shift+Super+arrow moves them between multiple monitors.
- Num lock toggles between entering numbers with the 10-key section of the keyboard and that section's alternate navigation functions, where 7 is home, 1 is end, 9 is page up, 3 is page down, and 4/8/6/2 are left/up/right/down respectively. Not really important if you've got an inverted-T arrow cluster and Super useful on some dumb 17" laptops that cram in a 10-key section but relegate all these normal navigation keys to arcane random Function invocations on tiny distant buttons crammed into the top of the keyboard if they're present at all. Uniquely, Num Lock is typically remembered across reboots.
>I found having a little notebook + pen to be much faster
I actually took a cue from the disability world for this and use a neonotes notebook and smart pen. You get the little notebook for immediate writing, but you can digitize it later and transcribe it into text for editing.
Immensely helpful tool. Just a god-send for those long technical conferences as well as day-to-day program meetings.
Words can't describe how normal that is. Exploit tools are require local systems to be super open in order to be frictionless.
Even in the consumer industry; anyone remember all those very silly people who installed backtrack2 (precursor to kali, based on slackware not debian) to their main drive and then went to defcon and got rekt because their OS was insecure (and couldn't be updated!)
Exploit development is a glass cannon, remove all friction to modify the system and craft packets, invoke monitoring modes for hardware and frictionless tracing... that's going to have a security cost.
This echo's a wider issue in the industry "Development" vs "Sysadmin" mindsets, where sysadmins are stifling and developers are all about removing barriers to progress faster and iterate more.
Consider Kim Davis. Kim Davis was a county clerk who went to jail after illegally refusing to issue a same-sex marriage certificate after the court system ruled she must. Davis, like most southerners until recently, was a registered Democrat. Until about the year 2000, virtually every southern government was majority Democratic, in some cases supermajority Democratic. The people in those parties often voted for Republican presidential candidates and were as conservative as the Republican Party, but due to inertia, they registered as Democrats. This has largely been eroded over the last 20 years. The result is that even if no one switches their opinions on anything, conservative Democrats now identify as Republicans. There are a number of inertial reasons to stick with a party that has left you behind, or to cynically join a party for a meal ticket. So, some of the apparent "era of good feelings" -- confluence between parties -- actually occurred because a big part of today's Republicans were "mistakenly" registered as Democrats. If any other region becomes one-party dominated for a long time, you'll see the reverse. The reverse is true in Hawai'i, where many erstwhile Republicans would today be simply more conservative Democrats, because the Republican party is extinct there.
There is also a belief that voters are better able to attach positions to parties. For example, if I told you that one party in the US generally favors higher taxes and higher services, and one party generally favors lower taxes and lower services, could you match the party labels to the descriptions, imperfect as they are? There is a general belief that people are better at this than they once were.
Finally, the increase in correlations between issues positions. For example, today we largely view Republicans as a rural party and Democrats as an urban party. That was not true 30 years ago. Prior to the politicization of abortion, there were constituencies that were pro-life and voted for the Democrats (Catholics being a huge such group). Now abortion is neatly aligned across party lines: there are almost no pro-choice Republicans and almost no pro-life Democrats. Ditto immigration -- which used to be cross-cutting when the union left viewed it as a threat to working conditions but now is primarily conceived along the dimension of racial conservatism. If I tell you someone loves guns, you have a pretty good chance of guessing their position on immigration, healthcare, and school prayer, even though outwardly those four issues do not need to be attached to one another.
Finally, within congress, two institutional reforms have contributed to across-party polarization: first, banning earmarks. It used to be that if I wanted corn subsidies and you did not, I would add an amendment to my bill to fund the navy base in your district. We then both vote yes. Killing earmarks may have reduced waste and corruption, but it also reduced a procedural tool used to secure inter-party agreement on contentious bills by offering concessions to the other party. It's like "suing for peace". Second, the "Hastert Rule", a rule that the Republican party adopted to never advance any bill that does not have majority Republican support. It used to be that, say, Republican leadership might advance a bill that had 40% Republican support and 80% Democratic support when those totals add up to more than 50% of the overall congress. By committing not to "roll" their own party, the Hastert rule virtually guarantees that votes that would internally divide parties and thus reveal ideological heterogeneity within the party are less likely to happen in favour of votes that divide across parties.
Why am I mentioning these trends? They contribute to a phenomenon that many political scientists (here I am thinking Tausanovitch and Warshaw, but others as well) have noted: you can perceive polarization (increasing distances between the two parties) without anyone adopting more extreme views. Rather, polarization can emerge from how party labels map to issues and how institutions surface issues to vote on. This doesn't mean no views are changing or become more extreme, but it does mean we should resist estimators that have a simplistic appeal to our gut feeling that things have become more extreme.
Some of this is discussed in the linked article, obliquely, but I think the article suffers from being written by non-political scientists trying to think about a political science problem from first principles rather than engaging with the existing literature. Reinventing the wheel can sometimes be helpful and sometimes is not.