No One Should Have To Use Proprietary Software To Communicate With Their Government (fsf.org) 154
Donald Robertson, writing for Free Software Foundation: Proprietary JavaScript is a threat to all users on the Web. When minified, the code can hide all sorts of nasty items, like spyware and other security risks. [...] On March 1st, 2016, the Copyright Office announced a call for comments on an update to their technology infrastructure. We submitted a comment urging them to institute a policy that requires all software they develop and distribute to be free software. Further, we also urged them to not require people to run proprietary software in order to communicate or submit comments to them. Unfortunately, once again, the Copyright Office requires the use of proprietary JavaScript in order to submit the comment and they are only accepting comments online unless a person lacks computer or Internet access. [...] The most absurd part of all this is that other government agencies, while still using Regulations.gov, are perfectly capable of offering alternatives to submission.
Misplaced priorities... (Score:5, Insightful)
Re:Misplaced priorities... (Score:4, Interesting)
Re:Misplaced priorities... (Score:5, Insightful)
This seems to be a case of completely misplaced priorities.
Yes... and... no.
The root of the issue appears to be that its 'minified', which if it wasn't other people would rightly complain about wasted bandwidth over metered connections. Minified isn't deliberately obfuscated per se, although minification does tend to obfuscate functionality.
That said, the FSFs request actually isn't unreasonable when you get right down to it. They suggest we establish a standard way link back to the original un-minified source.
This is very easy to do, and honestly it is a perfectly reasonable thing to demand of a government.
Is it my top priority? No. Is it worthy of a march in protest? Not to me.
But I am actually in favor of this being standard practice for the government. At the end of the day they are running software on my computer, and they could easily provide the source for it. Its not a major burden, and it represents value to the people -- its a good faith demonstration of transparency. So that we can inspect for ourselves what they are running on our computers. Why not?!
Re: Misplaced priorities... (Score:5, Interesting)
Re: (Score:2)
You got the priorities wrong, too. (Score:2, Interesting)
One should not be required to use electronic anything, ever. Pen and paper, yes, handwritten notes, ought to suffice. For everyone, on their choice, not the government's. (Should I mention that noted late computer scientist E.W. Dijkstra reverted to fountain pen when everyone else went to typewriter? His choice.)
I'm not saying you shouldn't use electronic anything, I'm saying you shouldn't be required to use electronic anything. Beyond that, yes, when governmental agencies offer electronic whatnots, they'd
Re: (Score:1)
Of course you do not have that right, not with javascript not with any other language wether you develop closed source or open source code for the government or a private instance. If you have a contract to deliver software, just as any other product, there is a basic level of quality that can be expected and not a single court will say you have the right to pack this kind of malware with the product you're delivering.
At least with minified JavaScript we can look at the code and see if it's mining bitcoins.
Next up: NO PROPRIETARY HTML! (Score:3, Funny)
Oh yeah, and brink back the BLINK Tag as well!
Re: (Score:2)
Re: (Score:2)
IE6's error was that the same dialog box was displayed for ActiveX you want and ActiveX that had a bad payload. Code signatures just weren't ready yet.
Cultural works != computer programs (Score:2)
HTML is considered a cultural work, not computer program. Free Software Foundation is not as adamant about cultural works being free as it is about computer programs and their manuals being free. For example, its own license list [gnu.org] recommends publication of opinion works under CC BY-ND, a license that is non-free because it prohibits derivative works.
Re: (Score:2)
Lighten Up FSF... (Score:2)
But effectively.
"if line 17 line 17, a singularity opens" (Score:2)
No One Should Have To Use Proprietary Software To Communicate With Their Government
You mean TurboTax?
Re: (Score:2)
No One Should Have To Use Proprietary Software To Communicate With Their Government
You mean TurboTax?
I'd argue it is not normal either. Though in that case, you still can file manually.
I am not too happy about them making the case that the javascript library is proprietary. There are bigger fight to pick about software freedom without picking the ones that look borderline to many people.
Treasury 'Foreign Accounts' form (Score:5, Informative)
Last year (2014), I had to download Adobe Acrobat to submit a form to the US Treasury dept. The only way you could do this was Acrobat, it used PDF and Adobe proprietary form submission. (I couldn't use Apple Preview.app to fill out the form.)
This year (2015), Treasury added the obvious alternative, a fully on-line Web form. I guess that's progress.
Re: (Score:3)
Re: (Score:2)
The problem with that was there is no mechanism to -submit- the resulting PDF except through Adobe Acrobat. That's the real flaw!
(And if that did work, one could just grab the form via screen capture.)
Re: (Score:2)
Real hackers use emacs.
Re: (Score:2)
Re:Treasury 'Foreign Accounts' form (Score:4, Insightful)
Re: (Score:2)
And then what? You cannot snail-mail the file. It had to be electronically submitted.
Re: (Score:3)
printed it to pdf...
Still electronic
Free = without charge or user-improvable? (Score:2)
As for 'having to use Acrobat' - do you mean the FREE Adobe Reader that Adobe has spent their own money on to help make it work for folks like you? You could also have gone with FoxIT, tools from Global Graphics (who developed Microsoft's ill fated XPS system), or any one of a number of other free PDF tools that would allow you to fill out and save a PDF based form.
By "free", do you mean merely "without charge", or do you mean "giving users the right and ability to make and share improvements"? FSF is fighting for the latter. Which PDF tool under a free software license offers form filling?
Re: (Score:2)
By "free", do you mean merely "without charge", or do you mean "giving users the right and ability to make and share improvements"?
It is obvious in context that he meant "free as in beer", not "libre". Are you really that obtuse or is it deliberate?
Which PDF tool under a free software license offers form filling?
Evince version 3.18.2 and Okular: 0.24.2 apparently, just tested them with the following sample form:
http://foersom.com/net/HowTo/d... [foersom.com]
With evince I was able to fill the forms (except for the checkboxes), save a copy, open it up in acroread and see my saved form fills.
With okular I was able to fill the forms, INCLUDING the checkboxes, save a copy, open it up in acroread and see my saved info
Re: (Score:2)
By "free", do you mean merely "without charge", or do you mean "giving users the right and ability to make and share improvements"?
It is obvious in context that he meant "free as in beer", not "libre". Are you really that obtuse or is it deliberate?
I assumed it would be obvious in context that this was a rhetorical question.
Evince version 3.18.2 and Okular: 0.24.2 [...] I was able to fill the forms
That's a start; thank you for the tip. But I have read some complaints that some of these cases require the user not only to fill in the form but also submit the form through the PDF reader. I wonder whether there's a way to test submission.
Re: (Score:2)
But I have read some complaints that some of these cases require the user not only to fill in the form but also submit the form through the PDF reader. I wonder whether there's a way to test submission.
I've been trying to figure that out too, but haven't been able to find a PDF that uses an action button in that way.
I almost spilt my drink (Score:1)
Propriety JavaScript... REALLY?!
Runs completely in the browser, you download and interpret the plain source code. But because it's minified it's suddenly proprietary? ("we could call Obfuscript because it has no comments and hardly any whitespace, and the method names are one letter long")? I think I can find hundreds of 'free' programs that are not commented and are equally readable as a minified javascript file.
Thanks to JavaScript we actually do download the source code. I don't know what the web would l
Re: (Score:3)
Minifying is like compiling... taking the longer source code variable names and turning them into cryptic symbols.
Re: (Score:2)
I used to work with a guy who would cut out the middle man and write everything pre-minified.
Re: (Score:2)
How'd you work with him? He keeps everything to himself.
We at one company had a face-off between French and Spanish immigrants. The Spanish guy worked well with me, the French guy kept to himself. then tried to claim credit for my work which nobody believed and then he was out.
Re: (Score:2)
Then there was the guy who used to write in p-code instead of C, and created a wonderfully fast SpinRite as a result. He was Steve Gibson.
Free software is also about sharing improvements (Score:2)
Even if it weren't minified, is the script licensed in a way that permits you to make and share your improvements?
Re: (Score:2)
Re: (Score:3)
I find this summary difficult to reply to.
On one hand, everyone is right in that this is not completely closed source.
On the other hand, this doesn't follow any open source rules/guidelines.
For example, the GPL requires source code that is made available to be, "The source code for a work means the preferred form of the work for making modifications to it." That would not permit distribution of just the minified / obfuscated version, though they could simply include a comment pointing to the original versio
Re: (Score:2)
Minified is close to compiled code...
Re: (Score:2)
A layman is capable of learning JavaScript (Score:2)
But to the layman, is any javascript, minified or not, any less "proprietary"?
If the source code for a minified JavaScript program is available under a free software license, a layman can in theory learn JavaScript and then make and share improvements to the program. If not, the layman will instead die waiting for the copyright to expire.
What exactly would be the [...] approved alternative?
A minified script with a comment at the top linking to the source code and stating which free software license applies.
Re: (Score:2)
Who says the link at the top of the code is what produced the minified code?
Who says the minifier used didn't add "all sorts of nasty items, like spyware and other security risks" to the code?
The problem Donald Robertson described has nothing to do with copyright.
What good does being able to legally share and modify the code that runs a government website?
The problem is a regular human can't understand the intent of obfuscated code, proprietary or not.
Substitute an improved source file (Score:2)
Who says the minifier used didn't add "all sorts of nasty items, like spyware and other security risks" to the code?
Someone paranoid about that could choose to download and execute the source file instead of the minified file, just as someone paranoid about a particular GNU/Linux distribution's binary packaging could bootstrap everything from source. (And if you name drop Ken Thompson, I'll name drop David A. Wheeler.)
What good does being able to legally share and modify the code that runs a government website?
The point is that you can modify the copy of the code that runs on your computer while retaining compatibility with the server-side back-end, and then you can can share the improvement with other users of t
Re: (Score:2)
Sounds like a great idea, share modified code to run with the access rights of the victim, I mean, user.
Re: (Score:2)
The user would choose to run the modified source code. Or do you claim that a user cannot be trusted to evaluate source code that will run on his machine?
JavaScript is antisocial (Score:1)
That's not a stretch. Informational sites can do without it fine. Prove me otherwise.
Wait, what? (Score:2)
"The Copyright Office requires the use of proprietary JavaScript in order to submit the comment and they are only accepting comments online unless a person lacks computer or Internet access."
I'm sorry, but that collection of words makes no sense. If I lack "computer or Internet access" how the hell am I supposed to send comments online?
Re: (Score:2)
You mail an angry letter. I guess they type it in and submit it as if you had typed it into the web form. Can you imagine how youtube comments would be if people had to pay a stamp to make them and wait 6 weeks?
Re: (Score:2)
Youtube should implement that.
Re: (Score:1)
It makes perfect sense. Did you miss the word UNLESS?
You can ONLY do it online, UNLESS you don't own a computer. In which case, if you don't own a computer, then you do NOT have to do it online.
It seems perfectly clear to me.
Re: (Score:2)
rule: they are only accepting comments online
exception: unless a person lacks computer or Internet access
What part of that is in any way unclear?
Re: (Score:2)
>What part of that is in any way unclear?
The part with the words.
Tax forms? (Score:2)
Tax forms used to be found at every post office and library in the 80s... now with TurboTax so cheap (and free to some users) there isn't much need for that anymore. Obscure forms exist, and are downloaded by TurboTax when you indicate you're in that kind of situation.
Yep, you need Windows or Mac to run TurboTax's download... how does a Linux-only user fill out their taxes?
Re: (Score:2)
I did my taxes on the web this year. The online app had everything I needed, and TaxAct charged me less than if I had downloaded the application.
Re: (Score:2)
I used the online fillable-forms from linux again this year, no problem. Still exists, still works.
Forms are still available at my public library. If yours doesn't carry them, complain to the library, don't blame the IRS.
You can also go to your local IRS office and collect the forms. Rural folks should really have an in-person conversation with their librarian before complaining that it is a hassle to drive to the nearest office; the forms might simply not be on the shelves, they might have them in the back
Re: (Score:2)
Been using the online version of Turbo Tax for 6 or 7 years from my Linux machines, first with Firefox and then the past 2 years with Chromium. No issues at all, even though TT alerts me to the fact that they haven't tested my particular OS/Browser combination
The US Patent Office still requires Java (Score:2)
Proprietary? (Score:2)
nothing is absolutely free (Score:3)
We might as well take the truly principled stand and object that interacting with the government requires having telephone service (!), paying for postage stamps (!), or paying for the bus to get to city hall (!).
Proprietary software is a barrier (Score:2)
When something becomes so common that everyone has relatively barrier-free and low-cost access to it, you've got to give in...
When jumping off a bridge becomes so common that everyone has relatively barrier-free and low-cost access to it, you've got to give in...
FSF would argue that lacking the right to make and share improvements is a "barrier", and thus a minified script with no suitable license isn't "relatively barrier-free".
We might as well take the truly principled stand and object that interacting with the government requires having telephone service
This is part of why the United States subsidizes telephone service for low-income citizens in a program officially called Lifeline and nicknamed Reaganphone.
Re: (Score:2)
At least the first two, telephone service and postage, have cost/rates set by a government entity. And for at least one of those, phone service, some can get free (to you) access.
When the government sets the cost and license terms for the proprietary software necessary to interact with them, then I will accept the analogy.
What else is new? (Score:2)
Do you still need to go through commercial services to get text of legal decisions?
Here's another: I have a handgun, and would like to practice without going and dropping $50 at a range. I live in a rural county (where it's perfectly legal to shoot guns on your own property as long as you're outside a town limit), but in a town. I am 90% sure that shooting in the public river bottoms WCA is legal, so I called my county sheriff's office to confirm. I was passed to a "Sergeant (something or other)" and lef
Re: (Score:2)
Check your local National Forrest. The two closest to me - Osceola and Ocala - both have open to the public no use fee ranges. The Osceola one (Lake City, Fl - Lewis D Whittaker Range) is nicer and has a higher class of user. I've seen and heard of some rather scary situations at the Ocala range ... these ranges are funded in part by the Pittman Robertson Act, which is an excise tax on guns, ammo, some archery and camping equipment.
Re: (Score:2)
- law officers won't even answer a direct question about "is this legal or no?"
If they could answer those kinds of questions, wouldn't they have become lawyers instead? Seems like it would pay a lot more and keep them a lot safer.
wut? (Score:2)
"Proprietary JavaScript is a threat to all users on the Web."
This is just sensationalist bullshit of the highest order. Trashdot strikes again.
Minification is just striping out everything that isn't strictly needed to make the code run and shrinking it so it takes less time to transport. The only way this is a threat is if you have a fear of text editors.
minify is evil? (Score:2)
Do Donald Robertson is saying we should ban JS minification from government websites?
The problem he says exists has nothing to do with proprietary code, it's the obfuscation that is the problem.
Headline too long (Score:2)
You had me at "no one should have to use proprietary software".
"Proprietary?" (Score:3)
I find this use of the term "proprietary" to be significantly different from the usual intended meaning of the term.
Usually, "proprietary" means intellectual property belonging to a private organization, with a harsh hand taken to prevent reverse engineering and the stated assertion (either in EULAs or otherwise) that no use can be made in any way of reverse engineered output without being subject to legal action.
Here, "proprietary" apparently means "hard to understand" since everything else does not apply—not a private organization, no need to reverse engineer since it's an interpreted language, etc. By this standard, all of the perl and assembly code in the universe is "proprietary" since it's not written with forty character variable names.
Seems a stretch.
Re: (Score:2)
FSF has some wishy washy definition that code is proprietary if you can't easily modify it. (so most first year CS student code?)
Seems like my old hand assembled Z80 code is "proprietary", I lost the note book with the source a long time ago. It's not a big loss though because assembler "source" wasn't terribly accurate as the binary has been patched a few times.
What exactly is proprietary JavaScript? (Score:3)
JavaScript is loaded client-side and can be downloaded and viewed as plain text, so it's certainly not closed source. Minified JavaScript is just JS code that's harder to understand due to function/variable substitution and whitespace stripping and again it's not closed source.
I don't know if you can actually buy commercial JavaScript libraries, but if you did, all the source code would be sent to the public every time a page was loaded with the JS loaded from it, so again it isn't closed source, but technically could be proprietary (i.e. it can only be used on authorised sites and anyone putting it on another unauthorised site is breaking the licence terms).
What's the difference, though, between custom HTML/CSS and custom JS in terms of licencing? All of them could be developed in-house and have the same "proprietary" licencing (i.e. can't be copied and used on other sites) - after all it's illegal to clone someone's site and host it elsewhere without permission surely?
I think the FSF have got this one wrong - if there was a way to make JS closed source, then they might have a point, but claiming JS can be "proprietary" just because it's minified or developed in-house (and not usable on other sites - after all, a lot of money could have been spent developing - or purchasing - the JS) is barking up the wrong tree. As long as the JS works cross-platform on the major browsers, I see no issue myself.
Unfair (Score:2)
That's unfair. Why single out the proprietary stuff?
Not an Agency (Score:2)
Re: (Score:2)
Or is it a client side application written in JavaScript requiring the Microsoft scripting engine?
Things are getting more weird by the day.
Just send the comments to the copyright office using certified mail. It costs a bit but annoys them, and if you get the name of the director then maybe you can require a personal sign-off by the director for the certified mail.
Just let the system work for you.
Re: (Score:2)
It's a client-side application written in JavaScript using your web browser's scripting engine. But though the scripting engine in IceCat/Firefox and Chromium is free, the client-side application running inside that engine is proprietary, and the LibreJS extension [gnu.org] blocks it from running because it is proprietary.
Re:ECMAScript? (Score:5, Insightful)
Uninstall or disable LibreJs then.
Not everyone wants to compute like they were a member of the "bearded computer priesthood" at the MIT AI lab in 1972.
Stallmans axes...well his philosophies actually take choices AWAY from the users in favor of supposed freedoms they can really only take advantage of IF they are also members of "the bearded priesthood"
And I say that as someone who DOES use Linux.
Re:ECMAScript? (Score:5, Funny)
Uninstall or disable LibreJs then.
Not everyone wants to compute like they were a member of the "bearded computer priesthood" at the MIT AI lab in 1972.
Stallmans axes...well his philosophies actually take choices AWAY from the users in favor of supposed freedoms they can really only take advantage of IF they are also members of "the bearded priesthood"
And I say that as someone who DOES use Linux.
GNU/Linux
Re: (Score:3)
GNU/Linux :^)
Touche, Anonymous Coward, touche.
However shouldn't that be :^)==>
To represent his beard?
Re: (Score:3)
Not a dickhead. Sure I think some of his "zealotry" isn't practical for most people or at times productive, but I don't think he's a dickhead. He means well, but he is still to some extent living in computings past...and his "Bearded priesthoodness" is what allows him to do that because he doesn't use computers the way the masses do.
Re: (Score:2)
and throws a childish tantrum if his lectures don't go as smoothly as he would like.
Oh? While I know about his tour/lecture rider:
https://groups.google.com/a/my... [google.com]
I hadn't heard about any tantrums. I'm not saying he doesn't have tantrums, but only that I hadn't heard of them. I know a bit about autistic spectrum folks so it would not surprise me if he does have a tantrum now and then.
The problem with posting as a registered user, which you seem oddly proud of, is that you can't just come out and say it for fear of negative moderation.
While I am fairly proud of posting logged in and standing by what I say, I'm not afraid of negative moderation. I've been negative-modded for saying things about Stallman. Including my first comment in th
Re: (Score:3)
Uninstall or disable LibreJs then.
Not everyone wants to compute like they were a member of the "bearded computer priesthood" at the MIT AI lab in 1972.
Stallmans axes...well his philosophies actually take choices AWAY from the users in favor of supposed freedoms they can really only take advantage of IF they are also members of "the bearded priesthood"
And I say that as someone who DOES use Linux.
GNU/Linux
I what if I run a plan9 userland you insensitive clod.
Re: (Score:2)
You don't understand. People want to do what THEY want to do with computers and sometimes non-libre software or walled garden hardware is what lets them do it.
You may argue that we shouldn't have such things, but we don't live in the ivory tower of the 1972 MIT AI Lab, where computing was controlled by a bearded priesthood who "shared". In fact the FSF exists because some of that bearded priesthood decided they wanted to make some money and believed that not-sharing was in their companies best interests.
S
Re: (Score:2)
It is copyright law which takes AWAY the choices.
It is copyright law that allows the GPL to EXIST in the first place. Stallman himself says this.
Re: (Score:2)
Which company owns JavaScript?
That is not what this is about. The problem is requiring proprietary programs written in JavaScript. When minimized, JavaScript is about as indecipherable as binary, so these proprietary programs are basically closed source.
Nobody owns C either. But it can certainly be used to write proprietary closed source programs.
Re: (Score:2, Informative)
Open in Chrome. Hit F12. Choose Sources. Click the JS file you want to inspect. Click { } for "Pretty Print". Done.
What was the issue again? Oh wait, there isn't one.
Re: (Score:3)
Even though it is a textual encoding of a program in JavaScript, it still isn't necessarily free software for two reasons:
Re: (Score:3)
Hold on a second... Let's suppose I take some code that's licensed under the GPL (any language) and I'm creating a derivative work. Of course, I must make the source code freely available, but consider the following set of hypotheticals.
(1) During the creation of my derivative work, I embed comments into the source file at various locations.
(2) During the creation of my derivative work, I make a branch for debugging/exploration and embed various comments and perhaps insert debugging traces such as printf("
If you don't distribute binaries (Score:2)
I never distribute the binaries derived from this branch to anyone.
Under the GPL, if you never distribute object code,* you never trigger the obligation to distribute complete corresponding source code to the public. If you do distribute object code of your modified version, a judge will determine whether your added comments make up an essential part of "the preferred form of the work for making modifications".
* One exception involves server-side code under the AGPL, which treats publicly performing a modified version over a network the same way as distributing object code
Re: (Score:3)
Click the JS file you want to inspect. Click { } for "Pretty Print". Done.
Sure, and you can use a hexdump or disassembler to get the "source" to a binary program. That doesn't mean that you can understand what it is doing, or see security holes, or modify it, or fix bugs.
Re: (Score:1)
Oh come on. Assembly I would accept, but minified javascript as indecipherable as binary? What a far stretch
Re: (Score:2)
JavaScript is open source at this point... it's kept by the browser makers, Microsoft, Mozilla, Google, and Apple. They say what's next.
That page's script is free (Score:3)
JavaScript is not the problem; proprietary JavaScript is. The JavaScript fragment in the cited document is distributed under GPLv3, a free software license. It loads Piwik [fsf.org], which is distributed under a 3-clause BSD license, which is also a free software license.
Re: (Score:2)
The problem they're complaining about is
When minified, the code can hide all sorts of nasty items, like spyware and other security risks
They blog post they made references http://piwik.fsf.org/piwik.js [fsf.org] which is minified. Just because it's got a BSD license clause in the file doesn't mean it's not hiding "all sorts of nasty items".
Re: (Score:2)
They blog post they made references http://piwik.fsf.org/piwik.js [fsf.org] which is minified
A comment at the top of the minified file links to the source file:
Re: (Score:2)
The source file or A source file?
Re: (Score:2)
Technically, a source file. Legally, the source file, because the person who applies LibreJS markup makes a representation that the program behind the given URL is corresponding source code. This representation may be weaker or stronger depending on the program's license. It's strongest for a script under a copyleft license such as GPLv3, or example, but even permissive licenses such as the zlib license require all alterations to be disclosed. A misrepresentation in this respect is evidence against license
Minified + source code link is OK (Score:2)
They're complaining about minified JavaScript. Please shut up.
That's not the complaint. A minified script is an "executable", and FSF has no problem with a minified script that has a comment at the top linking to its source code and stating a free software license. The complaint is about a minified script that offers no source code or prohibits users from sharing improvements to it.
Or ask everyone to also host their debug symbols for the minified code
If debug symbols let the user derive source code (defined in GPLv2 and v3 as "the preferred form of a program for making modifications to it") from a minified script, and users know that th
Re: (Score:2)
A minified script is an "executable"
A minified script is an executable in the same way that a copyright violation is theft.
Re: (Score:2)
My bad. By "executable", I meant what the GPL calls "object code", which is a computer program in any form other than "the preferred form of the work for making modifications to it". My comment should have used the term "object code" instead of "executable", and I should have checked what term the GPL actually uses instead of relying on my imperfect memory.
Re: (Score:1)
Is someone using an automated script or something to post these? I can't believe someone would be so bored as to manually write this comment in every single article.
Copr Office bans mail from Internet users (Score:2)
The problem, as I understand the summary, is that only people without a computer and Internet access are allowed to use mail for this.
Re: (Score:2)
only people without a computer and Internet access
Gee, I wish I had a computer and Internet access. Mine is tied up downloading Windows 10.
Re:"their" (Score:4, Funny)
I reject your government, and substitute my own ... "strange women lyin' in ponds distributin' swords"
Re: (Score:2)
it would just be cheaper to send laptops to everyone without modern browsers
So you get a hand-written letter back from deep in the Appalachians:
Dear Sir,
Thanks for the fancy, new-fangled typewriter. Where does the ribbon go?