Project

General

Profile

Support #68 » preview.tex

jahoti, 07/31/2021 11:19 PM

 
1
\documentclass{article}
2

    
3
\usepackage{graphicx}
4
\usepackage{geometry}
5
\usepackage{hyperref}
6
\newgeometry{vmargin={15mm}, hmargin={17mm,17mm}}
7

    
8
\begin{document}
9

    
10
\setlength{\parskip}{5pt}
11
\setlength{\parindent}{0cm}
12

    
13
At the beginning we are concentrating on making websites usable without the need
14
to execute arbitrary javascript served by them, as this is the basis for being
15
able to control one's browsing. Some fixes we wrote and used  with Hachette,
16
all freely licensed and
17
\href{https://git.koszko.org/hachette_fixes_tmp}{publicly available},
18
are shown here. A site browsing attempt with scripts blocked is always
19
presented for comparison. Various browsers (Parabola Iceweasel,
20
(Ungoogled) Chromium, LibreWolf, Tor Browser) have been used in these examples.
21

    
22
\section{OpenCores}
23

    
24
On OpenCores' site it used to be impossible to view a list of projects.
25
The following screenshot illustrates what the website looks like with js
26
disabled.
27
\nopagebreak
28

    
29
\includegraphics[width=\linewidth]{opencores_broken.png}
30

    
31
A quick and simple snippet of freely-licensed, user-controlled code injected by
32
Hachette solves the problem.
33
\nopagebreak
34

    
35
\includegraphics[width=\linewidth]{opencores_fixed_0.png}
36

    
37
\mbox{}
38

    
39
\includegraphics[width=\linewidth]{opencores_fixed_1.png}
40

    
41
\section{Google Sheets}
42

    
43
While Google Sheets can be downloaded as .xlsx files and viewed without
44
surrendering to Google's spyware that runs in the browser, many people don't
45
know how to do this. Here's a sample unusable spreadsheet on Google:
46
\nopagebreak
47

    
48
\includegraphics[width=\linewidth]{gdoc_example-sheet_broken.png}
49

    
50
\pagebreak
51

    
52
The following is a version fixed by Hachette. Scrolling through the initial part
53
of the table is now possible and a download button for an .xlsx version is
54
available. Unused UI elements are removed.
55
\nopagebreak
56

    
57
\includegraphics[width=\linewidth]{gdoc_example-sheet_fixed.png}
58

    
59
Here is an example of a more complex spreadsheet with a few dozen individual
60
sheets in it - all made easily downloadable by Hachette.
61
\nopagebreak
62

    
63
\includegraphics[width=\linewidth]{gdoc_complex-sheet_fixed.png}
64

    
65
\section{Google Drive}
66

    
67
An attempt to view a Google Drive file ends with a blank page.
68
\nopagebreak
69

    
70
\includegraphics[width=\linewidth]{gdrive_broken.png}
71

    
72
A Hachette fix replaces it with one that presents the name of the file and
73
features a download button.
74
\nopagebreak
75

    
76
\includegraphics[width=\linewidth]{gdrive_fixed.png}
77

    
78
A preview image can also be displayed, if available.
79
\nopagebreak
80

    
81
\includegraphics[width=\linewidth]{gdrive_fixed_image.png}
82

    
83
\pagebreak
84

    
85
\section{Phoronix benchmarks}
86

    
87
Phoronix relies on some third-party scripts to display benchmarks that
88
constitute part of an article. Any user who decides to block all scripts
89
either over software freedom or after seeing Google Analytics being used on
90
phoronix.com will only see a short text.
91
\nopagebreak
92

    
93
\includegraphics[width=\linewidth]{phoronix_benchmarks_broken.png}
94

    
95
A simple, few-line Hachette fix re-adds the benchmark images.
96
\nopagebreak
97

    
98
\includegraphics[width=\linewidth]{phoronix_benchmarks_fixed.png}
99

    
100
% \section{Bandcamp}
101
%
102
% Bandcamp's play button is normally only functional with scripts enabled.
103
% \nopagebreak
104
%
105
% \includegraphics[width=\linewidth]{bandcamp_broken.png}
106
%
107
% Here, again, Hachette comes to the rescue.
108
% \nopagebreak
109
%
110
% \includegraphics[width=\linewidth]{bandcamp_fixed.png}
111

    
112
\section{Stack Exchange}
113

    
114
There are many sites that are basically viewable without intrusive javascript
115
but have some inconveniences like cookie notices that can't be closed.
116
\nopagebreak
117

    
118
\includegraphics[width=\linewidth]{losedowsexchange_broken.png}
119

    
120
The following shows a fixed version. It is worth noting that we are committed
121
not to hide important information from users. In cases like this we make sites
122
operable by making a dialog closable, not by hiding it entirely.
123
\nopagebreak
124

    
125
\includegraphics[width=\linewidth]{losedowsexchange_fixed.png}
126

    
127
\pagebreak
128

    
129
Thanks to Hachette's customizability (see example 8 %11
130
), the same fix can be
131
easily be applied to different domains with the same problem.
132

    
133
\includegraphics[width=\linewidth]{stackexchange_fixed.png}
134

    
135
\pagebreak
136

    
137
% \section{SumOfUs}
138
%
139
% The next screenshot shows a petition page on SumOfUs with signing
140
% non-functional.
141
% \nopagebreak
142
%
143
% \includegraphics[width=\linewidth]{sumofus_broken.png}
144
%
145
% Now, a Hachette-fixed version.
146
% \nopagebreak
147
%
148
% \includegraphics[width=\linewidth]{sumofus_fixed.png}
149
%
150
% \section{WorldCat}
151
%
152
% Finding physical copies in libraries didn't use to work.
153
% \nopagebreak
154
%
155
% \includegraphics[width=\linewidth]{worldcat_broken.png}
156
%
157
% With fix applied:
158
% \nopagebreak
159
%
160
% \includegraphics[width=\linewidth]{worldcat_fixed.png}
161
%
162
% \pagebreak
163

    
164
\section{ABC News}
165

    
166
Someone who thinks Hachette is only useful for making sites work without
167
proprietary javascript is definitely wrong. Why not make a custom interface
168
for a website that (to some extent) worked even before? Consider the ABC News
169
site.
170
\nopagebreak
171

    
172
\includegraphics[width=\linewidth]{abc_original_0.png}
173
\includegraphics[width=\linewidth]{abc_original_1.png}
174

    
175
And now a version for minimalists. Let your fingers take a break from scrolling!
176
\nopagebreak
177

    
178
\includegraphics[width=\linewidth]{abc_minimal.png}
179

    
180
\pagebreak
181

    
182
\section{stallman.org}
183

    
184
In particular, alternative site interfaces can help make the Internet more
185
accessible. The following site misuses heading tags and lacks semantic markup:
186
\nopagebreak
187

    
188
\includegraphics[width=\linewidth]{stallman_original.png}
189

    
190
With some adjustment:
191
\nopagebreak
192

    
193
\includegraphics[width=\linewidth]{stallman_alt.png}
194

    
195
\section{Controlling the browsing}
196
Replacing site content would give no improvement over the initial state of
197
affairs if the user was not in control. But in the case of Hachette this is not
198
an issue. The (still provisional) interface of the settings page allows easy
199
editing of payloads to inject.
200
\nopagebreak
201

    
202
\includegraphics[width=\linewidth]{settings_editing.png}
203

    
204
\end{document}
(2-2/2)